﻿:root{
    --bg-950:#060b13;
    --bg-900:#0a1424;
    --bg-850:#0d1a2e;
    --panel-800:#0f1d33;
    --panel-700:#152841;
    --border:#213655;
    --border-soft:#1a2c47;
    --blue-500:#3b82f6;
    --blue-400:#6fa2fb;
    --gold-400:#dcab52;
    --gold-300:#e9c274;
    --green-500:#28c76a;
    --green-400:#4ade80;
    --purple-500:#8a6bff;
    --text-100:#eef3fb;
    --text-300:#c3d0e4;
    --text-400:#93a6c4;
    --text-600:#5f7495;
    --radius-lg:18px;
    --radius-md:12px;
    --radius-sm:8px;
    --maxw:1180px;
  }

  *,*::before,*::after{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--bg-900);
    color:var(--text-100);
    font-family:'Inter',system-ui,sans-serif;
    -webkit-font-smoothing:antialiased;
    line-height:1.5;
    overflow-x:hidden;
  }
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  ul{margin:0;padding:0;list-style:none;}
  h1,h2,h3,h4{margin:0;font-family:'Chakra Petch',sans-serif;font-weight:700;letter-spacing:0.01em;}
  p{margin:0;}
  .mono{font-family:'JetBrains Mono',monospace;}

  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}

  /* subtle background texture: pitch-line grid */
  body::before{
    content:"";
    position:fixed;inset:0;
    background-image:
      radial-gradient(ellipse 900px 500px at 50% -10%, rgba(59,130,246,0.10), transparent 60%),
      radial-gradient(ellipse 700px 500px at 100% 20%, rgba(138,107,255,0.07), transparent 60%);
    pointer-events:none;
    z-index:0;
  }

  /* ---------- NAV ---------- */
  .nav{
    position:sticky;top:0;z-index:100;
    background:rgba(6,11,19,0.82);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border-soft);
  }
  .nav__inner{
    max-width:var(--maxw);margin:0 auto;padding:14px 28px;
    display:flex;align-items:center;justify-content:space-between;gap:24px;
  }
  .brand{display:flex;align-items:center;gap:10px;}
  .brand img{width:34px;height:34px;border-radius:8px;}
  .brand__text{display:flex;flex-direction:column;line-height:1.1;}
  .brand__text strong{font-family:'Chakra Petch',sans-serif;font-size:15px;letter-spacing:0.04em;}
  .brand__text span{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text-600);letter-spacing:0.06em;}
  .nav__links{display:flex;align-items:center;gap:26px;}
  .nav__links a{
    font-size:13.5px;color:var(--text-300);font-weight:500;
    transition:color .15s ease;
  }
  .nav__links a:hover{color:var(--text-100);}
  .nav__cta{display:flex;align-items:center;gap:10px;}
  .navlinks-mobile-hide{display:flex;}

  /* ---------- BUTTONS ---------- */
  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:11px 20px;border-radius:999px;
    font-family:'Chakra Petch',sans-serif;font-weight:600;font-size:13.5px;
    letter-spacing:0.03em;
    border:1px solid transparent;
    cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-1px);}
  .btn--primary{
    background:linear-gradient(135deg, var(--green-500), #1ea855);
    color:#04150a;
    box-shadow:0 8px 24px -8px rgba(40,199,106,0.55);
  }
  .btn--primary:hover{box-shadow:0 10px 28px -6px rgba(40,199,106,0.7);}
  .btn--ghost{
    background:rgba(255,255,255,0.03);
    border-color:var(--border);
    color:var(--text-100);
  }
  .btn--ghost:hover{border-color:var(--blue-400);background:rgba(59,130,246,0.08);}
  .btn--sm{padding:9px 16px;font-size:12.5px;}
  .btn svg{width:14px;height:14px;}

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    padding:64px 0 0;
    overflow:hidden;
  }
  .hero__bg{
    position:absolute;inset:0;
    background:url('../atmosphere.webp') center 30%/cover no-repeat;
    filter:saturate(0.9);
  }
  .hero__bg::after{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(180deg, rgba(6,11,19,0.55) 0%, rgba(6,11,19,0.72) 45%, var(--bg-900) 92%),
      linear-gradient(90deg, rgba(6,11,19,0.75) 0%, rgba(6,11,19,0.15) 45%, rgba(6,11,19,0.6) 100%);
  }
  .hero__inner{
    position:relative;z-index:2;
    max-width:var(--maxw);margin:0 auto;padding:0 28px;
    display:flex;flex-direction:column;align-items:flex-start;
    min-height:520px;justify-content:center;
    padding-bottom:60px;
  }
  .eyebrow{
    display:inline-flex;align-items:center;gap:8px;
    font-family:'JetBrains Mono',monospace;font-size:11.5px;
    color:var(--gold-300);letter-spacing:0.12em;text-transform:uppercase;
    background:rgba(220,171,82,0.08);
    border:1px solid rgba(220,171,82,0.3);
    padding:6px 14px;border-radius:999px;
    margin-bottom:22px;
  }
  .eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green-400);box-shadow:0 0 8px var(--green-400);}
  .hero h1{
    font-size:clamp(38px,5.6vw,68px);
    line-height:1.02;
    max-width:820px;
    color:var(--text-100);
  }
  .hero h1 em{
    font-style:normal;
    background:linear-gradient(100deg, var(--blue-400), var(--purple-500) 55%, var(--gold-300));
    -webkit-background-clip:text;background-clip:text;color:transparent;
  }
  .hero__sub{
    margin-top:20px;font-size:17px;color:var(--text-300);max-width:560px;font-weight:400;
  }
  .hero__ctas{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap;}
  .hero__badges{
    display:flex;gap:10px;flex-wrap:wrap;margin-top:38px;
  }
  .badge{
    display:flex;flex-direction:column;gap:2px;
    padding:10px 16px;border-radius:var(--radius-sm);
    background:rgba(15,29,51,0.7);border:1px solid var(--border-soft);
    min-width:104px;
  }
  .badge b{font-family:'Chakra Petch',sans-serif;font-size:17px;color:var(--text-100);}
  .badge span{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--text-600);letter-spacing:0.05em;text-transform:uppercase;}

  /* ---------- TICKER (ML WIRE) ---------- */
  .ticker{
    position:relative;z-index:2;
    border-top:1px solid var(--border-soft);
    border-bottom:1px solid var(--border-soft);
    background:linear-gradient(90deg, var(--bg-950), var(--panel-800) 50%, var(--bg-950));
    overflow:hidden;
    display:flex;align-items:stretch;
  }
  .ticker__label{
    flex:0 0 auto;
    display:flex;align-items:center;gap:8px;
    padding:11px 18px;
    background:var(--bg-950);
    border-right:1px solid var(--border-soft);
    font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600;
    color:var(--green-400);letter-spacing:0.1em;
    z-index:2;
  }
  .ticker__label .dot{width:6px;height:6px;border-radius:50%;background:var(--green-400);animation:pulse 1.6s infinite;}
  @keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.25;}}
  .ticker__track{
    display:flex;align-items:center;
    white-space:nowrap;
    animation:scroll-left 42s linear infinite;
  }
  .ticker:hover .ticker__track{animation-play-state:paused;}
  @keyframes scroll-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}
  .ticker__item{
    font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--text-300);
    padding:11px 28px;display:flex;align-items:center;gap:10px;
  }
  .ticker__item b{color:var(--text-100);font-weight:600;}
  .ticker__item .tag{color:var(--blue-400);}
  .ticker__item .sep{color:var(--border);}

  /* ---------- SECTION SHELL ---------- */
  section{position:relative;z-index:1;padding:96px 0;}
  .section--tight{padding:72px 0;}
  .section-head{max-width:640px;margin-bottom:52px;}
  .kicker{
    font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--gold-300);
    letter-spacing:0.14em;text-transform:uppercase;display:block;margin-bottom:14px;
  }
  .section-head h2{font-size:clamp(28px,3.4vw,40px);color:var(--text-100);line-height:1.12;}
  .section-head p{margin-top:16px;color:var(--text-400);font-size:16px;max-width:560px;}
  .section-head.center{margin-left:auto;margin-right:auto;text-align:center;}

  .reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease, transform .6s ease;}
  .reveal.is-visible{opacity:1;transform:translateY(0);}

  /* ---------- CHI SIAMO ---------- */
  .about{
    display:grid;grid-template-columns:1.1fr 0.9fr;gap:64px;align-items:center;
  }
  .about__text p{color:var(--text-300);font-size:16px;margin-bottom:16px;}
  .about__text p:last-child{margin-bottom:0;}
  .about__stats{display:flex;gap:32px;margin-top:32px;flex-wrap:wrap;}
  .stat b{display:block;font-family:'Chakra Petch',sans-serif;font-size:30px;color:var(--text-100);}
  .stat span{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text-600);letter-spacing:0.05em;text-transform:uppercase;}

  .camilla-card{
    position:relative;
    background:linear-gradient(160deg, var(--panel-800), var(--bg-950));
    border:1px solid var(--border-soft);
    border-radius:var(--radius-lg);
    padding:28px;
    display:flex;align-items:flex-end;gap:20px;
    overflow:hidden;
  }
  .camilla-card::before{
    content:"";position:absolute;top:-40px;right:-40px;width:180px;height:180px;
    background:radial-gradient(circle, rgba(138,107,255,0.35), transparent 70%);
  }
  .camilla-card img{width:118px;flex:0 0 auto;position:relative;z-index:1;filter:drop-shadow(0 12px 20px rgba(0,0,0,0.5));}
  .camilla-bubble{
    position:relative;z-index:1;
    background:var(--panel-700);border:1px solid var(--border-soft);
    border-radius:14px;padding:16px 18px;font-size:13.5px;color:var(--text-200,var(--text-300));
  }
  .camilla-bubble b{
    display:flex;align-items:center;gap:6px;
    font-family:'Chakra Petch',sans-serif;color:var(--gold-300);font-size:12.5px;
    letter-spacing:0.04em;margin-bottom:6px;text-transform:uppercase;
  }
  .camilla-bubble b::before{content:"●";font-size:8px;color:var(--green-400);}

  /* ---------- TIMELINE ---------- */
  .timeline{
    display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative;
  }
  .timeline::before{
    content:"";position:absolute;top:17px;left:8%;right:8%;height:2px;
    background:linear-gradient(90deg, var(--border), var(--blue-500), var(--gold-400), var(--green-500));
    opacity:0.5;
  }
  .timeline__item{position:relative;padding-top:44px;}
  .timeline__dot{
    position:absolute;top:0;left:0;width:36px;height:36px;border-radius:50%;
    background:var(--panel-800);border:2px solid var(--blue-500);
    display:flex;align-items:center;justify-content:center;
    font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--blue-400);
    z-index:1;
  }
  .timeline__item:nth-child(2) .timeline__dot{border-color:var(--gold-400);color:var(--gold-300);}
  .timeline__item:nth-child(3) .timeline__dot{border-color:var(--green-500);color:var(--green-400);}
  .timeline__year{font-family:'Chakra Petch',sans-serif;font-size:26px;color:var(--text-100);margin-bottom:8px;display:block;}
  .timeline__item h4{font-size:15px;color:var(--text-100);margin-bottom:8px;}
  .timeline__item p{font-size:14px;color:var(--text-400);line-height:1.55;padding-right:20px;}

  /* ---------- STRUTTURA LEGA (24 squadre) ---------- */
  .league-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;
  }
  .league-table{
    background:var(--panel-800);border:1px solid var(--border-soft);
    border-radius:var(--radius-lg);overflow:hidden;
  }
  .league-table__row{
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 22px;border-bottom:1px solid var(--border-soft);
  }
  .league-table__row:last-child{border-bottom:none;}
  .league-table__row .name{display:flex;align-items:center;gap:12px;font-family:'Chakra Petch',sans-serif;font-size:15px;}
  .league-table__row .chip{
    width:8px;height:8px;border-radius:2px;
  }
  .league-table__row:nth-child(1) .chip{background:var(--gold-400);}
  .league-table__row:nth-child(2) .chip{background:var(--blue-500);}
  .league-table__row:nth-child(3) .chip{background:var(--purple-500);}
  .league-table__row .count{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--text-400);}
  .league-table__foot{
    padding:16px 22px;background:var(--bg-950);
    font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--text-600);
    display:flex;justify-content:space-between;
  }
  .comp-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
  .pill{
    font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--text-300);
    border:1px solid var(--border);padding:8px 14px;border-radius:999px;
    background:rgba(255,255,255,0.02);
  }

  /* ---------- COME SI GIOCA (fasi stagione) ---------- */
  .phases{
    display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
    background:var(--border-soft);border:1px solid var(--border-soft);border-radius:var(--radius-lg);
    overflow:hidden;
  }
  .phase{
    background:var(--panel-800);padding:28px 24px;min-height:168px;
    display:flex;flex-direction:column;gap:10px;
  }
  .phase__num{
    font-family:'Chakra Petch',sans-serif;font-size:13px;color:var(--bg-950);
    background:var(--blue-400);width:26px;height:26px;border-radius:6px;
    display:flex;align-items:center;justify-content:center;font-weight:700;
  }
  .phase h4{font-size:15.5px;color:var(--text-100);margin-top:4px;}
  .phase p{font-size:13.5px;color:var(--text-400);line-height:1.5;}

  .match-rules{
    margin-top:40px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
  }
  .rule-card{
    background:var(--panel-800);border:1px solid var(--border-soft);border-radius:var(--radius-md);
    padding:18px;
  }
  .rule-card b{display:block;font-family:'Chakra Petch',sans-serif;font-size:19px;color:var(--gold-300);}
  .rule-card span{font-size:12.5px;color:var(--text-400);}

  /* ---------- GESTIONALE PREVIEW ---------- */
  .gestionale{
    display:grid;grid-template-columns:0.95fr 1.05fr;gap:60px;align-items:center;
  }
  .browser-stack{position:relative;}
  .browser{
    background:var(--panel-800);border:1px solid var(--border-soft);border-radius:14px;
    overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,0.6);
  }
  .browser__bar{
    display:flex;align-items:center;gap:6px;padding:10px 12px;background:var(--bg-950);
    border-bottom:1px solid var(--border-soft);
  }
  .browser__bar span{width:9px;height:9px;border-radius:50%;background:var(--border);}
  .browser__bar .url{
    margin-left:10px;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--text-600);
    background:var(--panel-700);padding:3px 10px;border-radius:5px;
  }
  .browser img{display:block;width:100%;height:auto;object-fit:contain;}
  .browser--front{position:relative;z-index:2;}
  .browser--front img{aspect-ratio:1500 / 790;}
  .browser--back img{aspect-ratio:1500 / 788;}
  .browser--back{
    position:absolute;right:-8%;bottom:-9%;width:78%;z-index:1;
    opacity:0.85;filter:brightness(0.75) saturate(0.9);
  }
  .feature-list{display:flex;flex-direction:column;gap:22px;margin-top:28px;}
  .feature-list li{display:flex;gap:14px;}
  .feature-list .num{
    flex:0 0 auto;width:30px;height:30px;border-radius:8px;
    background:rgba(59,130,246,0.12);border:1px solid rgba(59,130,246,0.35);
    color:var(--blue-400);font-family:'JetBrains Mono',monospace;font-size:11.5px;font-weight:600;
    display:flex;align-items:center;justify-content:center;
  }
  .feature-list h4{font-size:15px;color:var(--text-100);margin-bottom:4px;}
  .feature-list p{font-size:13.5px;color:var(--text-400);}

  /* ---------- MERCATO ---------- */
  .market-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  }
  .market-card{
    background:var(--panel-800);border:1px solid var(--border-soft);border-radius:var(--radius-lg);
    padding:26px;position:relative;overflow:hidden;
  }
  .market-card__icon{
    width:40px;height:40px;border-radius:10px;
    display:flex;align-items:center;justify-content:center;margin-bottom:18px;
    font-family:'Chakra Petch',sans-serif;font-size:16px;font-weight:700;
  }
  .market-card:nth-child(1) .market-card__icon{background:rgba(220,171,82,0.14);color:var(--gold-300);}
  .market-card:nth-child(2) .market-card__icon{background:rgba(59,130,246,0.14);color:var(--blue-400);}
  .market-card:nth-child(3) .market-card__icon{background:rgba(40,199,106,0.14);color:var(--green-400);}
  .market-card h4{font-size:16.5px;color:var(--text-100);margin-bottom:10px;}
  .market-card p{font-size:13.5px;color:var(--text-400);line-height:1.6;}
  .market-card p + p{margin-top:10px;}

  .wage-visual{
    margin-top:24px;
    background:var(--panel-800);border:1px solid var(--border-soft);border-radius:var(--radius-lg);
    padding:28px 30px;display:flex;align-items:center;gap:40px;flex-wrap:wrap;
  }
  .wage-visual__cap{flex:0 0 auto;text-align:center;}
  .wage-visual__cap b{font-family:'Chakra Petch',sans-serif;font-size:38px;color:var(--text-100);display:block;}
  .wage-visual__cap span{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text-600);letter-spacing:0.05em;text-transform:uppercase;}
  .wage-bar-row{flex:1 1 260px;display:flex;flex-direction:column;gap:14px;min-width:240px;}
  .wage-bar{display:flex;align-items:center;gap:12px;}
  .wage-bar__label{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--text-400);width:96px;flex:0 0 auto;}
  .wage-bar__track{flex:1;height:8px;background:var(--bg-950);border-radius:4px;overflow:hidden;}
  .wage-bar__fill{height:100%;border-radius:4px;}
  .wage-bar__val{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--text-300);width:52px;text-align:right;}

  /* ---------- STRUTTURE ---------- */
  .struct-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:20px;
  }
  .struct-card{
    background:var(--panel-800);border:1px solid var(--border-soft);border-radius:var(--radius-lg);
    overflow:hidden;display:flex;flex-direction:column;
    transition:transform .2s ease, border-color .2s ease;
  }
  .struct-card:hover{transform:translateY(-4px);border-color:var(--border);}
  .struct-card__img{height:120px;overflow:hidden;position:relative;}
  .struct-card__img img{width:100%;height:100%;object-fit:cover;}
  .struct-card__img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 40%, var(--panel-800) 100%);}
  .struct-card--noimg .struct-card__img{
    height:120px;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(160deg, var(--panel-700), var(--panel-800));
  }
  .struct-card--noimg .struct-card__img span{
    font-family:'Chakra Petch',sans-serif;font-size:13px;color:var(--text-600);letter-spacing:0.08em;
  }
  .struct-card__body{padding:18px 18px 22px;}
  .struct-card__body h4{font-size:14.5px;color:var(--text-100);margin-bottom:6px;letter-spacing:0.02em;}
  .struct-card__body p{font-size:12.5px;color:var(--text-400);line-height:1.55;}

  /* ---------- CTA FINALE ---------- */
  .cta-final{
    background:
      radial-gradient(ellipse 600px 300px at 20% 0%, rgba(40,199,106,0.14), transparent 70%),
      radial-gradient(ellipse 600px 300px at 90% 100%, rgba(59,130,246,0.14), transparent 70%),
      var(--bg-950);
    border-top:1px solid var(--border-soft);
    border-bottom:1px solid var(--border-soft);
    text-align:center;
    padding:96px 0;
  }
  .cta-final h2{font-size:clamp(30px,4vw,46px);max-width:700px;margin:0 auto;line-height:1.12;}
  .cta-final p{color:var(--text-400);font-size:16px;margin-top:18px;}
  .cta-final .hero__ctas{justify-content:center;margin-top:34px;}

  /* ---------- FOOTER ---------- */
  footer{padding:48px 0 40px;border-top:1px solid var(--border-soft);}
  .footer__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;}
  .footer__links{display:flex;gap:24px;flex-wrap:wrap;}
  .footer__links a{font-size:13px;color:var(--text-400);}
  .footer__links a:hover{color:var(--text-100);}
  .footer__meta{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--text-600);}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width: 980px){
    .nav__links{display:none;}
    .about,.league-grid,.gestionale{grid-template-columns:1fr;gap:40px;}
    .timeline{grid-template-columns:1fr;gap:36px;}
    .timeline::before{display:none;}
    .phases{grid-template-columns:1fr;}
    .match-rules{grid-template-columns:1fr 1fr;}
    .market-grid{grid-template-columns:1fr;}
    .struct-grid{grid-template-columns:1fr 1fr;}
    .browser--back{display:none;}
  }
  @media (max-width: 560px){
    .wrap,.nav__inner,.hero__inner{padding-left:18px;padding-right:18px;}
    section{padding:64px 0;}
    .match-rules{grid-template-columns:1fr;}
    .struct-grid{grid-template-columns:1fr;}
    .about__stats{gap:22px;}
    .camilla-card{flex-direction:column;align-items:center;text-align:center;}
    .camilla-card img{width:96px;}
  }

  @media (prefers-reduced-motion: reduce){
    .ticker__track{animation:none;}
    .reveal{opacity:1;transform:none;transition:none;}
    html{scroll-behavior:auto;}
  }

/* --- Landing v2: acquisizione manager --- */
:root{
  --discord-500:#5865f2;
  --discord-400:#7289da;
}
a:focus-visible, button:focus-visible, summary:focus-visible{
  outline:2px solid var(--blue-400);
  outline-offset:3px;
}
.nav__login{
  font-size:13px;color:var(--text-600);font-weight:500;padding:6px 4px;
}
.nav__login:hover{color:var(--text-100);}
.btn--discord{
  background:transparent;
  border-color:rgba(88,101,242,0.55);
  color:#c7d2fe;
}
.btn--discord:hover{
  border-color:var(--discord-400);
  background:rgba(88,101,242,0.12);
}
.text-link{
  display:inline-flex;align-items:center;gap:8px;
  margin-top:18px;font-size:14px;font-weight:600;color:var(--blue-400);
}
.text-link:hover{color:var(--text-100);text-decoration:underline;}
.text-link svg{width:14px;height:14px;}
.hero h1{font-size:clamp(34px,5.2vw,62px);}
.hero__ctas{align-items:center;}
.hero__ctas .text-link{margin-top:0;margin-left:4px;}
#slots-badge[data-state="waitlist"]{border-color:rgba(138,107,255,0.45);color:#c4b5fd;}
#slots-badge[data-state="fallback"]{border-color:var(--border);color:var(--text-400);}
#slots-badge[data-state="fallback"]::before{background:var(--text-600);box-shadow:none;}
.why-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
.why-card{
  background:var(--panel-800);border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);padding:22px 20px;
}
.why-card h3{font-size:15px;margin-bottom:8px;color:var(--text-100);}
.why-card p{font-size:13.5px;color:var(--text-400);line-height:1.55;}
.steps-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
}
.step-card{
  background:var(--panel-800);border:1px solid var(--border-soft);
  border-radius:var(--radius-md);padding:20px 18px;
}
.step-card__n{
  font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--gold-300);
  letter-spacing:0.1em;margin-bottom:10px;display:block;
}
.step-card h3{font-size:14.5px;margin-bottom:8px;}
.step-card p{font-size:13px;color:var(--text-400);line-height:1.5;}
.step-card a{font-size:12.5px;color:var(--blue-400);font-weight:600;margin-top:10px;display:inline-block;}
.req-list{
  display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;
}
.req-list span{
  font-size:12px;padding:6px 12px;border-radius:999px;
  border:1px solid var(--border-soft);color:var(--text-400);
  background:rgba(15,29,51,0.6);
}
.eco-tabs{
  display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;
}
.eco-tabs button{
  appearance:none;border:1px solid var(--border-soft);
  background:var(--panel-800);color:var(--text-400);
  font-family:'Chakra Petch',sans-serif;font-size:13px;font-weight:600;
  padding:10px 16px;border-radius:999px;cursor:pointer;
}
.eco-tabs button[aria-selected="true"]{
  color:var(--text-100);border-color:var(--blue-500);
  background:rgba(59,130,246,0.12);
}
.eco-panel{display:none;}
.eco-panel.is-active{display:block;}
.eco-panel h3{font-size:18px;margin-bottom:12px;}
.comm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.comm-card{
  background:var(--panel-800);border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);padding:22px;
  display:flex;flex-direction:column;gap:10px;min-height:180px;
}
.comm-card h3{font-size:15px;}
.comm-card p{font-size:13.5px;color:var(--text-400);line-height:1.55;flex:1;}
.comm-card a{font-size:13px;font-weight:600;color:var(--blue-400);}
.timeline--compact .timeline__item p{padding-right:0;}
.footer__grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
  width:100%;margin-top:28px;
}
.footer__col h4{
  font-size:11px;letter-spacing:0.12em;text-transform:uppercase;
  color:var(--text-600);margin-bottom:12px;
}
.footer__col a{
  display:block;font-size:13px;color:var(--text-400);padding:4px 0;
}
.footer__col a:hover{color:var(--text-100);}
.footer__inner{flex-direction:column;align-items:flex-start;}
.mobile-sticky{
  display:none;position:fixed;left:0;right:0;bottom:0;z-index:120;
  padding:12px 18px calc(12px + env(safe-area-inset-bottom,0px));
  background:rgba(6,11,19,0.94);border-top:1px solid var(--border-soft);
  backdrop-filter:blur(10px);
}
.mobile-sticky.is-visible{display:flex;gap:10px;align-items:center;}
.mobile-sticky .btn{flex:1;justify-content:center;}
.mobile-sticky__close{
  appearance:none;border:0;background:transparent;color:var(--text-600);
  font-size:22px;line-height:1;padding:8px;cursor:pointer;min-width:44px;min-height:44px;
}
body.has-mobile-sticky{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));}
.nav__drawer{display:none;}
.nav__toggle{
  display:none;appearance:none;border:1px solid var(--border-soft);
  background:var(--panel-800);color:var(--text-100);border-radius:8px;
  padding:8px 12px;font-size:13px;cursor:pointer;
}
.phases-accordion{display:none;}
.phases-accordion details{
  background:var(--panel-800);border:1px solid var(--border-soft);
  border-radius:var(--radius-sm);margin-bottom:8px;
}
.phases-accordion summary{
  cursor:pointer;padding:14px 16px;font-weight:600;list-style:none;
}
.phases-accordion summary::-webkit-details-marker{display:none;}
.phases-accordion details p{padding:0 16px 14px;color:var(--text-400);font-size:13.5px;}
.anchor-alias{
  display:block;position:relative;top:-76px;height:0;visibility:hidden;pointer-events:none;
}
[id]{scroll-margin-top:76px;}
@media (max-width: 900px){
  .why-grid,.steps-grid,.comm-grid{grid-template-columns:1fr;}
  .footer__grid{grid-template-columns:1fr 1fr;}
  .phases{display:none;}
  .phases-accordion{display:block;}
  .nav__toggle{display:inline-flex;}
  .nav__drawer{
    display:none;position:absolute;left:0;right:0;top:100%;
    background:rgba(6,11,19,0.98);border-bottom:1px solid var(--border-soft);
    padding:16px 18px 20px;flex-direction:column;gap:12px;
  }
  .nav.is-open .nav__drawer{display:flex;}
  .nav__drawer a{font-size:15px;color:var(--text-300);padding:8px 0;}
  .nav__cta{flex-wrap:wrap;justify-content:flex-end;}
}
@media (max-width: 560px){
  .footer__grid{grid-template-columns:1fr;}
  .hero__inner{min-height:460px;}
  .hero__ctas{flex-direction:column;align-items:stretch;width:100%;}
  .hero__ctas .btn,.hero__ctas .text-link{width:100%;justify-content:center;}
  .hero__ctas .text-link{margin-left:0;margin-top:4px;}
  .navlinks-desktop-hide{display:none;}
  .eco-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px;}
  .eco-tabs button{flex-shrink:0;}
}
@media (min-width: 901px){
  .mobile-sticky{display:none !important;}
}
