  :root{
    --bg:#0b0e13;
    --bg-2:#0d1219;
    --panel:#10161f;
    --panel-2:#131b28;
    --panel-3:#0f141d;
    --line:#1e2a3c;
    --line-soft:#182232;
    --line-strong:#2b3c57;
    --text:#eef2f7;
    --text-2:#c3cedd;
    --muted:#93a2b7;
    --muted-2:#68778e;
    --cyan:#22d3ee;
    --cyan-strong:#38dcf5;
    --cyan-dim:rgba(34,211,238,.10);
    --cyan-dim-2:rgba(34,211,238,.16);
    --red:#f87171;
    --red-dim:rgba(248,113,113,.10);
    --amber:#fbbf24;
    --radius:14px;
    --radius-sm:10px;
    --font:"Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
    --mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{animation-duration:.01ms !important; transition-duration:.01ms !important}
  }
  body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:var(--font);
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  ::selection{background:var(--cyan); color:#04141a}
  a{color:inherit}
  button,[role="button"],summary{ min-height:2.75rem }
  :focus-visible{ outline:2px solid var(--cyan); outline-offset:3px; border-radius:6px }

  .wrap{ max-width:1240px; margin:0 auto; padding:0 28px }
  @media (max-width:640px){ .wrap{padding:0 18px} }

  /* ============ TOP BAR ============ */
  .topbar{
    position:sticky; top:0; z-index:60;
    background:rgba(11,14,19,.88);
    backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line-soft);
    transition:border-color .25s ease, background .25s ease;
  }
  .topbar.scrolled{ border-bottom-color:var(--line-strong); background:rgba(11,14,19,.96) }
  .topbar-in{ display:flex; align-items:center; gap:28px; min-height:68px }
  .wordmark{
    display:flex; align-items:center; gap:11px; text-decoration:none; flex:none;
    padding:10px 0; min-height:44px;
  }
  .wordmark .mark{
    width:30px; height:30px; flex:none; border:1.5px solid var(--cyan); border-radius:8px;
    display:grid; place-items:center; background:var(--cyan-dim);
  }
  .wordmark .mark svg{ display:block }
  .wordmark .name{ font-weight:900; letter-spacing:.04em; font-size:16.5px; line-height:1.05; white-space:nowrap }
  .wordmark .name em{ font-style:normal; color:var(--cyan) }
  .wordmark .tag{ display:block; font-family:var(--mono); font-size:9.5px; letter-spacing:.24em; color:var(--muted-2); font-weight:500; margin-top:3px }
  .nav{ display:flex; align-items:center; gap:4px; margin-left:auto }
  .nav a{
    text-decoration:none; color:var(--text-2); font-size:14.5px; font-weight:600;
    padding:10px 13px; min-height:44px; display:inline-flex; align-items:center; border-radius:8px;
    transition:color .15s ease, background .15s ease;
  }
  .nav a:hover{ color:#fff; background:rgba(255,255,255,.05) }
  .nav a.active{ color:var(--cyan) }
  .top-cta{
    flex:none; text-decoration:none; margin-left:14px;
    background:var(--cyan); color:#03181f !important; font-weight:800; font-size:14.5px;
    padding:11px 18px; min-height:44px; display:inline-flex; align-items:center; gap:8px; border-radius:9px;
    box-shadow:0 0 0 1px rgba(34,211,238,.35), 0 8px 28px -10px rgba(34,211,238,.55);
    transition:transform .15s ease, background .15s ease;
  }
  .top-cta:hover{ background:var(--cyan-strong); transform:translateY(-1px) }
  .top-cta .price{ font-family:var(--mono); font-weight:700; font-size:13.5px; opacity:.75 }
  @media (max-width:900px){
    .nav a{ padding:10px 8px; font-size:13.5px }
    .wordmark .tag{ display:none }
  }
  @media (max-width:680px){
    .topbar-in{ gap:10px; flex-wrap:wrap; padding-top:6px; padding-bottom:6px; min-height:0 }
    .nav{ order:3; width:100%; margin-left:0; overflow-x:auto; scrollbar-width:none; padding-bottom:2px }
    .nav::-webkit-scrollbar{ display:none }
    .nav a{ white-space:nowrap; min-height:40px }
    .top-cta{ margin-left:auto }
    .wordmark .name{ font-size:15px }
  }

  /* ============ HERO ============ */
  .hero{
    position:relative;
    padding:58px 0 0;
    background:
      radial-gradient(900px 480px at 18% -10%, rgba(34,211,238,.07), transparent 60%),
      radial-gradient(700px 420px at 95% 0%, rgba(34,211,238,.045), transparent 55%),
      var(--bg);
  }
  .hero-grid{
    display:grid; grid-template-columns:minmax(0,1fr) 392px; gap:48px; align-items:start;
  }
  .hero-kicker{
    display:inline-flex; align-items:center; gap:10px;
    font-family:var(--mono); font-size:12px; letter-spacing:.18em; font-weight:600; color:var(--cyan);
    border:1px solid rgba(34,211,238,.32); background:var(--cyan-dim);
    padding:8px 14px; border-radius:999px; margin-bottom:26px;
  }
  .hero-kicker .dot{ width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 10px var(--cyan); animation:pulse 2.4s ease-in-out infinite }
  @keyframes pulse{ 0%,100%{opacity:1} 50%{opacity:.35} }
  h1{
    font-size:clamp(38px, 4.6vw, 58px); line-height:1.04; letter-spacing:-.022em; font-weight:800;
    margin:0 0 22px; max-width:15.5em; text-wrap:balance;
  }
  h1 .hl{ color:var(--cyan) }
  .hero-sub{
    font-size:clamp(17px,1.6vw,20px); line-height:1.55; color:var(--text-2); font-style:italic;
    margin:0 0 18px; max-width:36em;
    border-left:3px solid var(--cyan); padding-left:18px;
  }
  .hero-lede{ color:var(--muted); font-size:16.5px; max-width:37em; margin:0 0 34px }
  .hero-lede strong{ color:var(--text-2); font-weight:700 }

  /* Cover art */
  .cover{
    border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;
    background:linear-gradient(180deg,#0d1420 0%, #0a0f16 100%);
    box-shadow:0 30px 70px -30px rgba(0,0,0,.8);
  }
  .cover-head{
    display:flex; align-items:center; gap:10px; flex-wrap:wrap;
    padding:13px 18px; border-bottom:1px solid var(--line-soft);
    font-family:var(--mono); font-size:11.5px; letter-spacing:.14em; color:var(--muted);
  }
  .cover-head .live-dot{ width:8px; height:8px; border-radius:50%; background:var(--red); box-shadow:0 0 8px var(--red) }
  .cover-head .sep{ color:var(--muted-2) }
  .cover-head .right{ margin-left:auto; color:var(--muted-2); letter-spacing:.08em }
  .cover svg{ display:block; width:100%; height:auto }
  .cover-foot{
    display:flex; gap:22px; flex-wrap:wrap; padding:13px 18px; border-top:1px solid var(--line-soft);
    font-family:var(--mono); font-size:11.5px; color:var(--muted); letter-spacing:.04em;
  }
  .cover-foot .lg{ display:inline-flex; align-items:center; gap:8px }
  .swatch{ width:18px; height:3px; border-radius:2px; display:inline-block }
  .swatch.c{ background:var(--cyan); box-shadow:0 0 8px rgba(34,211,238,.8) }
  .swatch.d{ background:repeating-linear-gradient(90deg,#8b98ac 0 5px, transparent 5px 9px); height:2px }
  .swatch.r{ background:var(--red) }

  /* Purchase card — Gumroad pattern, sticky */
  .buy-card{
    position:sticky; top:92px;
    background:var(--panel); border:1px solid var(--line-strong); border-radius:var(--radius);
    overflow:hidden;
    box-shadow:0 24px 60px -24px rgba(0,0,0,.75), 0 0 0 1px rgba(34,211,238,.05), 0 18px 50px -30px rgba(34,211,238,.35);
  }
  .buy-card-top{ padding:24px 24px 0 }
  .buy-flag{
    display:inline-flex; align-items:center; gap:7px;
    font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.16em;
    color:#04141a; background:var(--cyan); border-radius:6px; padding:5px 10px; margin-bottom:16px;
  }
  .buy-name{ font-size:20.5px; font-weight:800; line-height:1.28; letter-spacing:-.01em; margin:0 0 6px }
  .buy-desc{ color:var(--muted); font-size:14.5px; line-height:1.55; margin:0 0 20px }
  .price-row{ display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; padding-bottom:20px; border-bottom:1px solid var(--line-soft) }
  .price{ font-size:46px; font-weight:900; letter-spacing:-.03em; line-height:1; font-family:var(--font) }
  .price-note{ font-family:var(--mono); font-size:12px; color:var(--cyan); line-height:1.5; max-width:15em }
  .buy-includes{ list-style:none; margin:0; padding:18px 24px 6px; display:grid; gap:11px }
  .buy-includes li{ display:flex; gap:11px; font-size:14.5px; color:var(--text-2); line-height:1.45 }
  .buy-includes .tick{ color:var(--cyan); font-family:var(--mono); font-weight:700; flex:none }
  .buy-actions{ padding:16px 24px 8px }
  .btn-primary{
    display:flex; align-items:center; justify-content:center; gap:10px; width:100%;
    background:var(--cyan); color:#03181f; text-decoration:none;
    font-weight:800; font-size:16.5px; padding:15px 20px; min-height:54px; border-radius:10px;
    box-shadow:0 12px 32px -12px rgba(34,211,238,.65);
    transition:transform .15s ease, background .15s ease;
  }
  .btn-primary:hover{ background:var(--cyan-strong); transform:translateY(-1px) }
  .btn-free{
    display:flex; align-items:center; justify-content:center; width:100%; margin-top:10px;
    color:var(--text); text-decoration:none; font-weight:700; font-size:15px;
    padding:13px 20px; min-height:50px; border-radius:10px; border:1px solid var(--line-strong);
    background:rgba(255,255,255,.02); transition:border-color .15s ease, background .15s ease;
  }
  .btn-free:hover{ border-color:var(--cyan); background:var(--cyan-dim) }
  .buy-meta{ padding:10px 24px 22px; display:grid; gap:7px }
  .buy-meta p{ margin:0; font-size:13px; color:var(--muted); display:flex; gap:9px; line-height:1.5 }
  .buy-meta .ic{ flex:none; font-family:var(--mono); color:var(--muted-2) }
  .buy-meta strong{ color:var(--text-2) }

  @media (max-width:1020px){
    .hero-grid{ grid-template-columns:1fr; gap:36px }
    .buy-card{ position:static; max-width:560px }
    .hero{ padding-top:40px }
  }

  /* ============ STAT STRIP ============ */
  .stats{
    margin-top:56px; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
    background:var(--bg-2);
  }
  .stats-grid{ display:grid; grid-template-columns:repeat(4,1fr) }
  .stat{ padding:28px 26px 26px; border-left:1px solid var(--line-soft) }
  .stat:first-child{ border-left:none; padding-left:0 }
  .stat .num{ font-family:var(--mono); font-size:clamp(26px,2.6vw,34px); font-weight:700; letter-spacing:-.02em; color:#fff; line-height:1.1 }
  .stat .num.cyan{ color:var(--cyan) }
  .stat .num.red{ color:var(--red) }
  .stat .lbl{ margin-top:8px; font-size:13.5px; color:var(--muted); line-height:1.5; max-width:16em }
  @media (max-width:900px){
    .stats-grid{ grid-template-columns:1fr 1fr }
    .stat{ padding:22px 18px; border-top:1px solid var(--line-soft) }
    .stat:nth-child(-n+2){ border-top:none }
    .stat:nth-child(odd){ border-left:none; padding-left:0 }
  }
  @media (max-width:460px){
    .stats-grid{ grid-template-columns:1fr }
    .stat{ border-left:none; padding-left:0; border-top:1px solid var(--line-soft) }
    .stat:first-child{ border-top:none }
  }

  /* ============ SECTIONS ============ */
  .section{ padding:84px 0 0 }
  .section-head{ display:flex; gap:22px; align-items:flex-start; margin-bottom:38px; max-width:820px }
  .section-no{
    font-family:var(--mono); font-size:13px; font-weight:700; color:var(--cyan);
    border:1px solid rgba(34,211,238,.35); background:var(--cyan-dim); border-radius:8px;
    padding:7px 11px; flex:none; margin-top:6px; letter-spacing:.06em;
  }
  h2{ font-size:clamp(28px,3.2vw,40px); font-weight:800; letter-spacing:-.02em; line-height:1.12; margin:0 0 12px; text-wrap:balance }
  .section-intro{ color:var(--muted); font-size:16.5px; margin:0; max-width:44em }
  .section-intro strong{ color:var(--text-2) }

  /* Sample findings */
  .findings{ border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--panel-3) }
  .finding{ display:grid; grid-template-columns:76px 250px 1fr; gap:26px; padding:28px 30px; border-top:1px solid var(--line-soft); align-items:start }
  .finding:first-child{ border-top:none }
  .finding:hover{ background:rgba(34,211,238,.025) }
  .finding .f-no{ font-family:var(--mono); font-size:22px; font-weight:700; color:var(--cyan); line-height:1.2 }
  .finding .f-no.red{ color:var(--red) }
  .finding h3{ margin:0; font-size:17.5px; font-weight:800; line-height:1.35; letter-spacing:-.01em }
  .finding .f-tag{ display:block; margin-top:7px; font-family:var(--mono); font-size:11px; letter-spacing:.12em; color:var(--muted-2); font-weight:600 }
  .finding p{ margin:0; color:var(--text-2); font-size:15.5px; line-height:1.65 }
  .finding p .big{ font-family:var(--mono); font-weight:700; color:#fff }
  .finding p .neg{ font-family:var(--mono); font-weight:700; color:var(--red) }
  @media (max-width:860px){
    .finding{ grid-template-columns:52px 1fr; gap:16px; padding:24px 20px }
    .finding p{ grid-column:2 }
  }
  .verdict-line{
    margin-top:22px; display:flex; gap:16px; align-items:flex-start;
    border:1px solid rgba(248,113,113,.28); background:var(--red-dim); border-radius:var(--radius);
    padding:22px 26px;
  }
  .verdict-line .v-mark{ font-family:var(--mono); font-weight:700; color:var(--red); font-size:13px; letter-spacing:.14em; flex:none; padding-top:3px }
  .verdict-line p{ margin:0; font-size:16px; color:var(--text-2); line-height:1.6 }
  .verdict-line strong{ color:#fff }

  /* What you get */
  .deliverables{ display:grid; grid-template-columns:1fr 1fr; gap:16px }
  .deliv{
    background:var(--panel); border:1px solid var(--line); border-radius:var(--radius);
    padding:26px 26px 24px; position:relative; transition:border-color .15s ease;
  }
  .deliv:hover{ border-color:var(--line-strong) }
  .deliv .d-no{ font-family:var(--mono); font-size:12.5px; font-weight:700; color:var(--cyan); letter-spacing:.1em }
  .deliv h3{ margin:10px 0 8px; font-size:18.5px; font-weight:800; letter-spacing:-.01em; line-height:1.3 }
  .deliv p{ margin:0; color:var(--muted); font-size:15px; line-height:1.6 }
  .deliv.verdict{ background:linear-gradient(180deg, rgba(34,211,238,.09), rgba(34,211,238,.03)); border-color:rgba(34,211,238,.4) }
  .deliv.verdict .pills{ display:flex; gap:8px; margin-top:14px; flex-wrap:wrap }
  .pill{ font-family:var(--mono); font-size:12px; font-weight:700; letter-spacing:.08em; padding:6px 12px; border-radius:999px; border:1px solid var(--line-strong); color:var(--text-2) }
  .pill.pass{ border-color:rgba(34,211,238,.55); color:var(--cyan) }
  .pill.kill{ border-color:rgba(248,113,113,.5); color:var(--red) }
  @media (max-width:760px){ .deliverables{ grid-template-columns:1fr } }

  /* How it works */
  .steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px }
  .step{ background:var(--panel-3); border:1px solid var(--line); border-radius:var(--radius); padding:28px 26px }
  .step .s-no{
    width:40px; height:40px; border-radius:50%; display:grid; place-items:center;
    font-family:var(--mono); font-weight:700; font-size:16px; color:#04141a; background:var(--cyan);
    margin-bottom:18px;
  }
  .step h3{ margin:0 0 9px; font-size:17.5px; font-weight:800 }
  .step p{ margin:0; color:var(--muted); font-size:15px; line-height:1.6 }
  .step p strong{ color:var(--text-2) }
  @media (max-width:860px){ .steps{ grid-template-columns:1fr } }
  .slots-note{
    margin-top:16px; display:flex; gap:14px; align-items:center; flex-wrap:wrap;
    border:1px dashed rgba(34,211,238,.4); border-radius:var(--radius); padding:18px 24px;
    background:var(--cyan-dim); font-size:15.5px; color:var(--text-2);
  }
  .slots-note .slots{ display:flex; gap:6px; flex:none }
  .slots-note .slot{ width:34px; height:10px; border-radius:3px; border:1.5px solid var(--cyan) }
  .slots-note strong{ color:#fff }

  /* Founding cohort */
  .cohort{
    border:1px solid rgba(34,211,238,.38); border-radius:var(--radius);
    background:
      radial-gradient(560px 260px at 85% -30%, rgba(34,211,238,.13), transparent 65%),
      var(--panel);
    padding:38px 40px; display:grid; grid-template-columns:1fr auto; gap:36px; align-items:center;
  }
  .cohort h2{ margin-bottom:14px }
  .cohort p{ color:var(--muted); margin:0 0 12px; font-size:16px; max-width:42em }
  .cohort p strong{ color:var(--text-2) }
  .cohort p:last-child{ margin-bottom:0 }
  .cohort-price{ text-align:center; flex:none }
  .cohort-price .was{ font-family:var(--mono); color:var(--muted-2); font-size:14px; text-decoration:line-through; letter-spacing:.02em }
  .cohort-price .now{ font-size:64px; font-weight:900; letter-spacing:-.04em; line-height:1.05 }
  .cohort-price .per{ font-family:var(--mono); font-size:12px; color:var(--cyan); letter-spacing:.1em; margin-top:6px }
  .cohort-price a{
    display:inline-flex; margin-top:20px; background:var(--cyan); color:#03181f; text-decoration:none;
    font-weight:800; font-size:15px; padding:13px 22px; min-height:50px; align-items:center; border-radius:10px;
    transition:background .15s ease, transform .15s ease;
  }
  .cohort-price a:hover{ background:var(--cyan-strong); transform:translateY(-1px) }
  @media (max-width:860px){
    .cohort{ grid-template-columns:1fr; padding:30px 24px }
    .cohort-price{ text-align:left }
  }

  /* Ladder */
  .ladder{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:stretch }
  .rung{
    display:flex; flex-direction:column;
    background:var(--panel-3); border:1px solid var(--line); border-radius:var(--radius); padding:28px 26px;
  }
  .rung .r-tier{ font-family:var(--mono); font-size:11.5px; font-weight:700; letter-spacing:.16em; color:var(--muted-2) }
  .rung h3{ margin:12px 0 4px; font-size:20px; font-weight:800; line-height:1.3; letter-spacing:-.01em }
  .rung .r-price{ font-size:34px; font-weight:900; letter-spacing:-.03em; margin:8px 0 4px }
  .rung .r-price small{ font-size:14px; font-family:var(--mono); font-weight:500; color:var(--muted); letter-spacing:0 }
  .rung .r-sub{ font-family:var(--mono); font-size:12px; color:var(--muted); margin-bottom:16px }
  .rung p{ color:var(--muted); font-size:14.5px; line-height:1.6; margin:0 0 14px }
  .rung ul{ list-style:none; margin:0 0 22px; padding:14px 0 0; border-top:1px solid var(--line-soft); display:grid; gap:9px }
  .rung ul li{ font-size:14px; color:var(--text-2); display:flex; gap:10px; line-height:1.5 }
  .rung ul li::before{ content:"—"; color:var(--cyan); font-family:var(--mono); flex:none }
  .rung .r-btn{
    margin-top:auto; display:flex; align-items:center; justify-content:center; text-decoration:none;
    font-weight:800; font-size:15px; padding:13px 18px; min-height:50px; border-radius:10px;
    border:1px solid var(--line-strong); color:var(--text); transition:border-color .15s ease, background .15s ease;
  }
  .rung .r-btn:hover{ border-color:var(--cyan); background:var(--cyan-dim) }
  .rung.flagship{
    background:linear-gradient(180deg, rgba(34,211,238,.08), rgba(34,211,238,.015) 55%), var(--panel);
    border-color:rgba(34,211,238,.55);
    box-shadow:0 22px 55px -26px rgba(34,211,238,.4);
    position:relative;
  }
  .rung.flagship .r-tier{ color:var(--cyan) }
  .rung.flagship .r-btn{ background:var(--cyan); color:#03181f; border-color:var(--cyan) }
  .rung.flagship .r-btn:hover{ background:var(--cyan-strong) }
  .flag-tag{
    position:absolute; top:-13px; right:22px; background:var(--cyan); color:#04141a;
    font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.14em;
    padding:5px 11px; border-radius:6px;
  }
  @media (max-width:900px){ .ladder{ grid-template-columns:1fr } .rung.flagship{ margin-top:12px } }

  /* Is / is not */
  .isin{ border:1px solid var(--line); border-radius:var(--radius); overflow:hidden }
  .isin-row{ display:grid; grid-template-columns:64px 190px 1fr; gap:22px; padding:24px 28px; background:var(--panel-3); border-top:1px solid var(--line-soft); align-items:start }
  .isin-row:first-child{ border-top:none }
  .isin-row .mark{ font-size:24px; line-height:1.3 }
  .isin-row h3{ margin:0; font-size:16px; font-weight:800; padding-top:5px }
  .isin-row p{ margin:0; color:var(--muted); font-size:15.5px; line-height:1.6; padding-top:4px }
  .isin-row p strong{ color:var(--text-2) }
  @media (max-width:760px){
    .isin-row{ grid-template-columns:44px 1fr; gap:14px; padding:20px }
    .isin-row p{ grid-column:2 }
  }

  /* FAQ */
  .faq-list{ border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--panel-3) }
  details.faq{ border-top:1px solid var(--line-soft) }
  details.faq:first-child{ border-top:none }
  details.faq summary{
    list-style:none; cursor:pointer; display:flex; align-items:center; gap:16px;
    padding:22px 28px; font-size:17px; font-weight:700; line-height:1.4; min-height:56px;
    transition:background .15s ease;
  }
  details.faq summary::-webkit-details-marker{ display:none }
  details.faq summary:hover{ background:rgba(255,255,255,.025) }
  details.faq summary .chev{
    margin-left:auto; flex:none; width:30px; height:30px; border-radius:50%;
    border:1px solid var(--line-strong); display:grid; place-items:center;
    font-family:var(--mono); color:var(--cyan); font-size:16px; transition:transform .2s ease;
  }
  details.faq[open ] summary .chev{ transform:rotate(45deg) }
  details.faq .a{ padding:0 28px 24px; color:var(--muted); font-size:15.5px; line-height:1.65; max-width:52em }
  details.faq .a strong{ color:var(--text-2) }
  @media (max-width:640px){
    details.faq summary{ padding:18px 20px; font-size:16px }
    details.faq .a{ padding:0 20px 20px }
  }

  /* Final CTA */
  .final{
    margin-top:84px; border-radius:var(--radius); border:1px solid var(--line-strong);
    background:
      radial-gradient(700px 300px at 50% -40%, rgba(34,211,238,.12), transparent 65%),
      var(--panel);
    padding:52px 40px; text-align:center;
  }
  .final h2{ max-width:22em; margin-left:auto; margin-right:auto }
  .final p{ color:var(--muted); max-width:38em; margin:0 auto 30px; font-size:16.5px }
  .final-actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap }
  .final-actions .btn-primary{ width:auto; padding:15px 30px }
  .final-actions .btn-free{ width:auto; margin-top:0; padding:13px 26px }
  @media (max-width:640px){
    .final{ padding:38px 22px }
    .final-actions .btn-primary,.final-actions .btn-free{ width:100% }
  }

  /* Footer */
  footer{ margin-top:84px; border-top:1px solid var(--line); background:var(--bg-2) }
  .footer-in{ padding:40px 0 46px; display:flex; gap:28px; flex-wrap:wrap; align-items:flex-start }
  .footer-brand{ max-width:30em }
  .footer-brand .name{ font-weight:900; letter-spacing:.04em; font-size:16px }
  .footer-brand .name em{ font-style:normal; color:var(--cyan) }
  .footer-brand p{ color:var(--muted); font-size:14.5px; margin:10px 0 0; line-height:1.6 }
  .footer-links{ margin-left:auto; display:flex; gap:8px; flex-wrap:wrap }
  .footer-links a{
    text-decoration:none; color:var(--text-2); font-size:14px; font-weight:600;
    padding:10px 14px; min-height:44px; display:inline-flex; align-items:center;
    border:1px solid var(--line); border-radius:9px; transition:border-color .15s ease, color .15s ease;
  }
  .footer-links a:hover{ border-color:var(--cyan); color:#fff }
  .footer-links a.store{ border-color:rgba(34,211,238,.45); color:var(--cyan) }

  /* Reveal — content is visible by default; JS adds a gentle entrance
     animation only as sections scroll into view, so nothing can ever be
     stranded invisible (print, full-page capture, no-JS). */
  .reveal{ opacity:1 }
  @keyframes riseIn{ from{ opacity:0; transform:translateY(14px) } to{ opacity:1; transform:none } }
  .reveal.in{ animation:riseIn .55s ease both }
  @media (prefers-reduced-motion: reduce){ .reveal.in{ animation:none } }
