/* ─────────────────────────────────────────────
   TOKENS
───────────────────────────────────────────── */
:root {
    --black:  #03010A;
    --navy:   #07041A;
    --card:   #0D0925;
    --spotCard:#110D2E;
    --purple: #7C3AED;
    --purpleL:#A78BFA;
    --purpleX:#C084FC;
    --white:  #F1EFFE;
    --muted:  rgba(241,239,254,.45);
    --border: rgba(124,58,237,.18);
    --borderH:rgba(124,58,237,.48);
    --green:  #10B981;
    --amber:  #F59E0B;
    --amberL: #FCD34D;
    /* accent beam colors — decorative only, never on buttons */
    --beam-fan:   #F59E0B;
    --beam-artist:#7C3AED;
    --beam-venue: #10B981;
  }
  
  /* ─────────────────────────────────────────────
     RESET + BASE
  ───────────────────────────────────────────── */
  *, *::before, *::after { box-sizing:border-box; margin:0; padding:0 }
  html { scroll-behavior:smooth }
  body {
    font-family:'DM Sans',sans-serif;
    background:var(--black);
    color:var(--white);
    overflow-x:hidden;
    line-height:1.5;
  }
  /* Film-grain overlay */
  body::after {
    content:'';
    position:fixed; inset:0; z-index:9999; pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    opacity:.03;
    background-size:256px 256px;
  }
  
  /* ─────────────────────────────────────────────
     BUTTON SYSTEM — purple-only, no amber/green
  ───────────────────────────────────────────── */
  .btn-primary {
    background:var(--purple);
    color:var(--white);
    border:none;
    border-radius:8px;
    font-family:'DM Sans',sans-serif;
    font-size:14px;
    font-weight:600;
    padding:13px 26px;
    cursor:pointer;
    transition:all .25s;
    display:inline-block;
    white-space:nowrap;
  }
  .btn-primary:hover {
    background:#6D28D9;
    box-shadow:0 0 22px rgba(124,58,237,.42);
    transform:translateY(-1px);
  }
  
  /* White solid — secondary action. Contrast without new color family. */
  .btn-white {
    background:var(--white);
    color:var(--black);
    border:none;
    border-radius:8px;
    font-family:'DM Sans',sans-serif;
    font-size:14px;
    font-weight:700;
    padding:13px 26px;
    cursor:pointer;
    transition:all .25s;
    display:inline-block;
    white-space:nowrap;
  }
  .btn-white:hover {
    background:#fff;
    box-shadow:0 0 22px rgba(241,239,254,.22);
    transform:translateY(-1px);
  }
  
  /* Ghost — tertiary/inline usage */
  .btn-ghost {
    background:transparent;
    color:var(--purpleL);
    border:1px solid var(--border);
    border-radius:8px;
    font-family:'DM Sans',sans-serif;
    font-size:14px;
    font-weight:600;
    padding:12px 24px;
    cursor:pointer;
    transition:all .25s;
    display:inline-block;
    white-space:nowrap;
  }
  .btn-ghost:hover {
    border-color:var(--borderH);
    color:var(--white);
    background:rgba(124,58,237,.06);
  }
  
  /* ─────────────────────────────────────────────
     NAV
  ───────────────────────────────────────────── */
  nav {
    position:sticky;
    top:0;
    z-index:800;
    height:62px;
    display:flex;
    align-items:center;
    padding:0 48px;
    gap:32px;
    background:rgba(3,1,10,.88);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    border-bottom:1px solid var(--border);
    transition:background .3s, border-color .3s;
    justify-content: space-between;
  }
  nav.scrolled {
    background:rgba(3,1,10,.97);
    border-bottom-color:rgba(124,58,237,.3);
  }
  .nav-logo { flex-shrink:0; cursor:pointer; margin-right:20px }
  .nav-logo img { height:28px; display:block }
  .nav-links { display:flex; align-items:center; gap:2px; flex:1 }
  .nl {
    font-size:13.5px;
    font-weight:500;
    color:var(--muted);
    padding:7px 14px;
    border-radius:7px;
    cursor:pointer;
    transition:all .2s;
    text-decoration:none;
    letter-spacing:.01em;
  }
  .nl:hover { color:var(--white); background:rgba(124,58,237,.1) }
  .nl-spotlight {
    display:flex;
    align-items:center;
    gap:7px;
    color:var(--purpleL);
    background:rgba(124,58,237,.1);
    border:1px solid rgba(124,58,237,.25);
    padding:7px 14px;
    border-radius:7px;
    font-size:13.5px;
    font-weight:600;
    letter-spacing:.01em;
    cursor:pointer;
    transition:all .25s;
  }
  .nl-spotlight:hover { background:rgba(124,58,237,.22); border-color:rgba(124,58,237,.5); color:var(--white) }
  .spot-dot {
    width:7px; height:7px; border-radius:50%;
    background:var(--purple);
    box-shadow:0 0 6px var(--purple);
    animation:spotNavPulse 2s ease-in-out infinite;
    flex-shrink:0;
  }
  @keyframes spotNavPulse {
    0%,100% { box-shadow:0 0 6px var(--purple); opacity:1 }
    50%      { box-shadow:0 0 14px var(--purpleX),0 0 24px rgba(192,132,252,.3); opacity:.75 }
  }
  .nav-right { display:flex; align-items:center; gap:10px; flex-shrink:0; margin-left:auto }
  .nav-signin {
    font-size:13.5px; font-weight:500; color:var(--muted);
    cursor:pointer; padding:8px 12px; transition:color .2s;
  }
  .nav-signin:hover { color:var(--white) }
  .nav-cta {
    background:var(--purple);
    color:var(--white);
    border:none;
    border-radius:8px;
    font-family:'DM Sans',sans-serif;
    font-size:13.5px;
    font-weight:600;
    padding:9px 20px;
    cursor:pointer;
    transition:all .25s;
  }
  .nav-cta:hover { background:#6D28D9; box-shadow:0 0 20px rgba(124,58,237,.4); transform:translateY(-1px) }
  .nav-hamburger {
    display:none;
    background:none;
    border:none;
    cursor:pointer;
    padding:8px;
    color:var(--white);
  }
  .mobile-menu {
    display:none;
    position:fixed;
    inset:62px 0 0;
    background:rgba(3,1,10,.98);
    z-index:799;
    padding:24px;
    flex-direction:column;
    gap:4px;
  }
  .mobile-menu.open { display:flex }
  .mm-item {
    padding:14px 16px;
    border-radius:8px;
    font-size:15px;
    font-weight:500;
    color:var(--muted);
    cursor:pointer;
    transition:all .2s;
  }
  .mm-item:hover { background:rgba(124,58,237,.1); color:var(--white) }
  .mm-spot {
    color:var(--purpleL);
    background:rgba(124,58,237,.08);
    border:1px solid rgba(124,58,237,.2);
  }
  .mm-cta {
    margin-top:12px;
    background:var(--purple);
    color:var(--white);
    text-align:center;
    padding:14px;
    border-radius:8px;
    font-size:15px;
    font-weight:600;
    cursor:pointer;
  }
  
  /* ─────────────────────────────────────────────
     HERO — CONCEPT D: THREE SPOTLIGHTS
  ───────────────────────────────────────────── */
  .hero {
    min-height:92vh;
    position:relative;
    overflow:hidden;
    background:#020109;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
  }
  
  /* Deep atmospheric top */
  .hero-bg {
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      radial-gradient(ellipse 90% 60% at 50% -10%, rgba(7,4,26,.9) 0%, #020109 65%);
  }
  
  /* ── Spotlight beam wrappers ── */
  .hero-beams {
    position:absolute;
    top:0; left:0; right:0;
    height:72%;
    pointer-events:none;
    z-index:0;
    display:flex;
    justify-content:space-between;
    padding:0 8%;
  }
  .beam-slot {
    width:33.33%;
    position:relative;
    display:flex;
    justify-content:center;
  }
  
  /* The cone shape for each beam */
  .beam-cone {
    position:absolute;
    top:0;
    width:100%;
    height:100%;
  }
  .beam-fill {
    position:absolute;
    top:0;
    left:50%;
    transform:translateX(-50%);
    width:260px;
    height:100%;
    clip-path:polygon(50% 0%, 0% 100%, 100% 100%);
    filter:blur(3px);
  }
  .beam-fan .beam-fill {
    background:linear-gradient(180deg,
      rgba(245,158,11,.22) 0%,
      rgba(245,158,11,.07) 55%,
      transparent 100%
    );
  }
  .beam-artist .beam-fill {
    background:linear-gradient(180deg,
      rgba(124,58,237,.32) 0%,
      rgba(124,58,237,.09) 55%,
      transparent 100%
    );
  }
  .beam-venue .beam-fill {
    background:linear-gradient(180deg,
      rgba(16,185,129,.22) 0%,
      rgba(16,185,129,.06) 55%,
      transparent 100%
    );
  }
  
  /* Source dot at the top of each beam */
  .beam-source {
    position:absolute;
    top:-1px;
    left:50%;
    transform:translateX(-50%);
    width:12px;
    height:12px;
    border-radius:50%;
    z-index:2;
  }
  .beam-fan    .beam-source { background:var(--beam-fan);    box-shadow:0 0 16px 4px rgba(245,158,11,.5);    animation:srcGlow .4s .0s ease-in-out alternate infinite }
  .beam-artist .beam-source { background:var(--beam-artist); box-shadow:0 0 16px 4px rgba(124,58,237,.6);    animation:srcGlow .4s .15s ease-in-out alternate infinite }
  .beam-venue  .beam-source { background:var(--beam-venue);  box-shadow:0 0 16px 4px rgba(16,185,129,.5);   animation:srcGlow .4s .3s  ease-in-out alternate infinite }
  @keyframes srcGlow {
    from { opacity:.7; transform:translateX(-50%) scale(.95) }
    to   { opacity:1;  transform:translateX(-50%) scale(1.1) }
  }
  
  /* ── Audience label pills — above beams ── */
  .hero-beam-labels {
    position:absolute;
    top:24px;
    left:0; right:0;
    display:flex;
    justify-content:space-between;
    padding:0 8%;
    z-index:4;
  }
  .bml-slot {
    width:33.33%;
    display:flex;
    justify-content:center;
  }
  .bml-pill {
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:5px 14px;
    border-radius:20px;
    border:1px solid;
    font-family:'Space Mono',monospace;
    font-size:9.5px;
    letter-spacing:.14em;
    text-transform:uppercase;
    cursor:default;
    backdrop-filter:blur(8px);
    animation:pillFadeIn .8s ease both;
  }
  .bml-pill-fan    { color:rgba(252,211,77,.9); border-color:rgba(245,158,11,.3); background:rgba(245,158,11,.07);   animation-delay:.2s }
  .bml-pill-artist { color:var(--purpleL);      border-color:rgba(124,58,237,.35);background:rgba(124,58,237,.1);   animation-delay:.35s }
  .bml-pill-venue  { color:rgba(110,231,183,.9);border-color:rgba(16,185,129,.3); background:rgba(16,185,129,.07);  animation-delay:.5s }
  @keyframes pillFadeIn { from { opacity:0; transform:translateY(-8px) } to { opacity:1; transform:translateY(0) } }
  .bml-dot { width:6px; height:6px; border-radius:50%; flex-shrink:0 }
  .bml-pill-fan    .bml-dot { background:var(--amber) }
  .bml-pill-artist .bml-dot { background:var(--purple);   box-shadow:0 0 6px var(--purple) }
  .bml-pill-venue  .bml-dot { background:var(--green) }
  
  /* ── Stage floor — where beams converge ── */
  .hero-stage-floor {
    position:relative;
    z-index:5;
    padding:0 56px 72px;
    background:linear-gradient(
      0deg,
      rgba(2,1,9,1) 0%,
      rgba(2,1,9,.97) 45%,
      transparent 100%
    );
  }
  
  /* Tri-color convergence line — DECORATIVE, not a button */
  .hero-stage-rule {
    width:100%;
    height:2px;
    margin-bottom:52px;
    border-radius:1px;
    background:linear-gradient(
      90deg,
      transparent              0%,
      rgba(245,158,11,.5)     18%,
      rgba(245,158,11,.2)     28%,
      rgba(124,58,237,.6)     45%,
      rgba(124,58,237,.6)     55%,
      rgba(16,185,129,.2)     72%,
      rgba(16,185,129,.5)     82%,
      transparent            100%
    );
    animation:ruleAppear 1s .6s ease both;
  }
  @keyframes ruleAppear { from { opacity:0; transform:scaleX(.6) } to { opacity:1; transform:scaleX(1) } }
  
  /* ── Hero content ── */
  .hero-content {
    text-align:center;
    max-width:760px;
    margin:0 auto;
    animation:contentRise .9s .4s ease both;
  }
  @keyframes contentRise { from { opacity:0; transform:translateY(24px) } to { opacity:1; transform:translateY(0) } }
  
  .hero-kicker {
    font-family:'Space Mono',monospace;
    font-size:10px;
    letter-spacing:.25em;
    text-transform:uppercase;
    color:var(--muted);
    margin-bottom:22px;
  }
  
  .hero-h1 {
    font-family:'Bebas Neue',cursive;
    font-size:clamp(52px, 8vw, 100px);
    letter-spacing:.03em;
    line-height:.93;
    margin-bottom:22px;
  }
  .hero-h1 .hl-fan    { color:rgba(252,211,77,.95) }
  .hero-h1 .hl-artist { color:var(--purpleL) }
  .hero-h1 .hl-venue  { color:rgba(110,231,183,.95) }
  
  .hero-sub {
    font-size:16px;
    color:var(--muted);
    line-height:1.7;
    max-width:520px;
    margin:0 auto 36px;
  }
  
  /* Hero CTAs — purple primary + white secondary */
  .hero-actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap }
  
  /* ─────────────────────────────────────────────
     SECTION UTILITIES
  ───────────────────────────────────────────── */
  .section-kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-family:'Space Mono',monospace;
    font-size:10px;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:var(--purpleL);
    margin-bottom:10px;
  }
  .section-title {
    font-family:'Bebas Neue',cursive;
    font-size:clamp(32px,5vw,52px);
    letter-spacing:.04em;
    color:var(--white);
    line-height:1;
    margin-bottom:10px;
  }
  .section-sub {
    font-size:15px;
    color:var(--muted);
    max-width:520px;
    line-height:1.65;
    margin-bottom:48px;
  }
  
  /* Reveal animation */
  .reveal { opacity:0; transform:translateY(22px); transition:opacity .55s ease, transform .55s ease }
  .reveal.in { opacity:1; transform:translateY(0) }
  .d1 { transition-delay:.08s }
  .d2 { transition-delay:.16s }
  .d3 { transition-delay:.24s }
  
  /* ─────────────────────────────────────────────
     S02 — USER TYPE CARDS
  ───────────────────────────────────────────── */
  .about-section {
    padding:88px 48px;
    background:var(--black);
  }
  .cards-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-bottom:20px;
  }
  .about-card {
    background:var(--card);
    border:1px solid rgba(124,58,237,.2);
    border-radius:14px;
    padding:28px;
    display:flex;
    flex-direction:column;
    transition:all .25s;
    cursor:default;
  }
  .about-card:hover {
    border-color:var(--borderH);
    transform:translateY(-4px);
    box-shadow:0 10px 36px rgba(124,58,237,.12);
  }
  .ac-icon { font-size:30px; margin-bottom:16px }
  .ac-badge {
    display:inline-flex;
    align-items:center;
    padding:3px 10px;
    border-radius:4px;
    margin-bottom:16px;
    background:rgba(124,58,237,.12);
    border:1px solid rgba(124,58,237,.25);
    font-family:'Space Mono',monospace;
    font-size:9px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--purpleL);
    width:fit-content;
  }
  .ac-title {
    font-family:'Bebas Neue',cursive;
    font-size:26px;
    letter-spacing:.04em;
    color:var(--white);
    margin-bottom:12px;
    line-height:1.05;
  }
  .ac-body {
    font-size:14px;
    color:var(--muted);
    line-height:1.7;
    flex:1;
  }
  .ac-footer {
    padding-top:20px;
    margin-top:16px;
    border-top:1px solid rgba(124,58,237,.1);
  }
  /* Card link — purple text, never amber */
  .ac-link {
    font-size:13px;
    font-weight:600;
    color:var(--purpleL);
    cursor:pointer;
    transition:color .2s;
    float:right;
  }
  .ac-link:hover { color:var(--white) }
  
  /* Services strip */
  .services-strip {
    background:var(--card);
    border:1px solid rgba(124,58,237,.2);
    border-radius:14px;
    padding:24px 28px;
    display:flex;
    align-items:center;
    gap:24px;
    transition:all .25s;
    cursor:default;
  }
  .services-strip:hover {
    border-color:var(--borderH);
    box-shadow:0 8px 32px rgba(124,58,237,.1);
  }
  .ss-icon { font-size:28px; flex-shrink:0 }
  .ss-info { flex:1 }
  .ss-badge {
    display:inline-flex;
    align-items:center;
    padding:3px 10px;
    border-radius:4px;
    margin-bottom:8px;
    background:rgba(124,58,237,.12);
    border:1px solid rgba(124,58,237,.25);
    font-family:'Space Mono',monospace;
    font-size:9px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--purpleL);
    width:fit-content;
  }
  .ss-title {
    font-family:'Bebas Neue',cursive;
    font-size:22px;
    letter-spacing:.04em;
    color:var(--white);
    margin-bottom:4px;
    line-height:1;
  }
  .ss-body { font-size:14px; color:var(--muted); line-height:1.6 }
  .ss-link {
    font-size:13px;
    font-weight:600;
    color:var(--purpleL);
    cursor:pointer;
    transition:color .2s;
    flex-shrink:0;
    white-space:nowrap;
  }
  .ss-link:hover { color:var(--white) }
  
  /* ─────────────────────────────────────────────
     S03 — NUTSHELL
  ───────────────────────────────────────────── */
  .nutshell-section {
    padding:88px 48px;
    background:var(--navy);
    position:relative;
    overflow:hidden;
  }
  .nutshell-section::before {
    content:'';
    position:absolute;
    top:-80px; left:50%; transform:translateX(-50%);
    width:900px; height:500px;
    pointer-events:none;
    background:radial-gradient(ellipse 70% 60% at 50% 0%, rgba(124,58,237,.09) 0%, transparent 70%);
  }
  .nutshell-header { margin-bottom:52px }
  .nutshell-row {
    display:grid;
    grid-template-columns:1fr 60px 1fr;
    align-items:center;
    padding:28px 0;
    border-bottom:1px solid rgba(124,58,237,.1);
  }
  .nutshell-row:last-child { border-bottom:none }
  .nr-label {
    font-family:'Bebas Neue',cursive;
    font-size:clamp(40px,5.5vw,68px);
    letter-spacing:.04em;
    color:var(--white);
    line-height:1;
  }
  .nr-arrow {
    font-family:'Space Mono',monospace;
    font-size:18px;
    color:rgba(124,58,237,.35);
    text-align:center;
  }
  .nr-desc {
    font-size:15.5px;
    color:var(--muted);
    line-height:1.7;
    max-width:420px;
  }
  
  /* ─────────────────────────────────────────────
     S04 — FOUNDING MEMBERS
  ───────────────────────────────────────────── */
  .founding-section {
    padding:60px 48px;
    background:var(--black);
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
    position:relative;
    overflow:hidden;
  }
  /* Subtle ambient glow */
  .founding-section::after {
    content:'';
    position:absolute;
    right:-100px; top:50%; transform:translateY(-50%);
    width:400px; height:400px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(124,58,237,.06) 0%, transparent 70%);
    pointer-events:none;
  }
  .founding-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px;
    position:relative;
    z-index:2;
  }
  .founding-left {}
  .fl-kicker {
    display:inline-flex;
    align-items:center;
    gap:9px;
    font-family:'Space Mono',monospace;
    font-size:10px;
    letter-spacing:.2em;
    text-transform:uppercase;
    color:var(--purpleL);
    margin-bottom:14px;
  }
  .fl-ring {
    width:14px; height:14px;
    border-radius:50%;
    border:2px solid var(--purple);
    display:flex;
    align-items:center;
    justify-content:center;
    animation:ringPulse 2s ease-in-out infinite;
    flex-shrink:0;
  }
  .fl-ring::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--purple) }
  @keyframes ringPulse {
    0%,100% { box-shadow:0 0 0 0 rgba(124,58,237,.5); border-color:var(--purple) }
    50%      { box-shadow:0 0 0 6px rgba(124,58,237,0); border-color:var(--purpleX) }
  }
  .fl-title {
    font-family:'Bebas Neue',cursive;
    font-size:clamp(30px,4vw,44px);
    letter-spacing:.04em;
    color:var(--white);
    line-height:1;
    margin-bottom:10px;
  }
  .fl-sub {
    font-size:14px;
    color:var(--muted);
    line-height:1.7;
    max-width:480px;
  }
  
  /* ─────────────────────────────────────────────
     S05 — DUAL CTA
  ───────────────────────────────────────────── */
  .dual-cta-section {
    padding:88px 48px;
    background:var(--navy);
    position:relative;
    overflow:hidden;
  }
  .dual-cta-section::before {
    content:'';
    position:absolute; inset:0; pointer-events:none;
    background:radial-gradient(ellipse 55% 50% at 50% 50%, rgba(124,58,237,.07) 0%, transparent 70%);
  }
  .dc-grid {
    display:grid;
    grid-template-columns:1fr 1px 1fr;
    border:1px solid var(--border);
    border-radius:16px;
    overflow:hidden;
    background:var(--card);
    position:relative;
    z-index:2;
  }
  .dc-divider { background:var(--border) }
  .dc-panel {
    padding:52px 48px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }
  .dc-panel:first-child { border-right:none }
  .dc-icon { font-size:34px; margin-bottom:20px }
  .dc-title {
    font-family:'Bebas Neue',cursive;
    font-size:34px;
    letter-spacing:.04em;
    color:var(--white);
    margin-bottom:10px;
    line-height:1;
  }
  .dc-sub {
    font-size:14px;
    color:var(--muted);
    line-height:1.7;
    margin-bottom:28px;
    flex:1;
  }
  
  /* ─────────────────────────────────────────────
     FOOTER
  ───────────────────────────────────────────── */
  footer {
    background:var(--navy);
    border-top:1px solid var(--border);
    padding:60px 48px 28px;
  }
  .footer-grid {
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:48px;
    margin-bottom:48px;
  }
  .fg-brand img { height:26px; margin-bottom:16px; display:block }
  .fg-brand p { font-size:13.5px; color:var(--muted); line-height:1.75; max-width:260px }
  .fg-social { display:flex; gap:10px; margin-top:20px }
  .fg-sicon {
    width:34px; height:34px;
    border-radius:7px;
    border:1px solid var(--border);
    display:flex; align-items:center; justify-content:center;
    font-size:14px;
    cursor:pointer;
    color:var(--muted);
    transition:all .2s;
  }
  .fg-sicon:hover { border-color:rgba(124,58,237,.4); background:rgba(124,58,237,.1); color:var(--white) }
  .fg-col h5 {
    font-family:'Space Mono',monospace;
    font-size:10px;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--purpleL);
    margin-bottom:16px;
  }
  .fg-col a {
    display:block;
    font-size:13.5px;
    color:var(--muted);
    text-decoration:none;
    margin-bottom:10px;
    cursor:pointer;
    transition:color .2s;
  }
  .fg-col a:hover { color:var(--white) }
  .footer-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:24px;
    border-top:1px solid var(--border);
  }
  .fb-copy {
    font-family:'Space Mono',monospace;
    font-size:10px;
    letter-spacing:.08em;
    color:rgba(241,239,254,.25);
  }
  .fb-links { display:flex; gap:20px }
  .fb-links a {
    font-size:11.5px;
    color:rgba(241,239,254,.3);
    text-decoration:none;
    cursor:pointer;
    transition:color .2s;
  }
  .fb-links a:hover { color:rgba(241,239,254,.6) }
  
  /* ─────────────────────────────────────────────
     RESPONSIVE
  ───────────────────────────────────────────── */
  @media(max-width:1024px) {
    .cards-grid { grid-template-columns:1fr 1fr }
    .nutshell-row { grid-template-columns:1fr; gap:8px }
    .nr-arrow { display:none }
    .dc-grid { grid-template-columns:1fr; grid-template-rows:auto }
    .dc-divider { height:1px; width:100% }
    .dc-panel:first-child { border-right:none; border-bottom:1px solid var(--border) }
    .hero-beams { padding:0 4% }
    .hero-beam-labels { padding:0 4% }
  }
  @media(max-width:768px) {
    nav { padding:0 20px }
    .nav-links, .nav-right { display:none }
    .nav-hamburger { display:flex }
    .hero { min-height:80vh }
    .hero-stage-floor { padding:0 20px 60px }
    .hero-beams { padding:0 0% }
    .hero-beam-labels { padding:0 0% }
    .bml-pill { font-size:8.5px; padding:4px 10px }
    .hero-h1 { font-size:clamp(44px, 11vw, 80px) }
    .about-section { padding:20px 20px }
    .cards-grid { grid-template-columns:1fr }
    .services-strip { flex-direction:column; align-items:flex-start }
    .nutshell-section { padding:60px 20px }
    .founding-section { padding:48px 20px }
    .founding-inner { flex-direction:column; align-items:flex-start }
    .founding-inner .btn-primary { width:100%; text-align:center; justify-content:center }
    .dual-cta-section { padding:60px 20px }
    .dc-panel { padding:36px 24px }
    .footer-grid { grid-template-columns:1fr 1fr }
    footer { padding:48px 20px 24px }
  }
  @media(max-width:480px) {
    .hero-h1 { font-size:44px }
    .footer-grid { grid-template-columns:1fr }
    .hero-actions { flex-direction:column; align-items:center }
    .hero-actions button { width:100%; max-width:320px }
    .bml-pill span:not(.bml-dot) { display:none }
  }
  .tier-premium{background:rgba(245,158,11,.25);border:1px solid rgba(245,158,11,.5);color:#FCD34D}