:root{
  --bg:#050505; --card:#0e0e0e; --line:#1f1f1f;
  --text:#f2f2f2; --muted:#8a8a8a;
  --chrome:linear-gradient(180deg,#ffffff 0%,#cfcfcf 45%,#7d7d7d 55%,#e9e9e9 100%);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
body{min-height:100vh;min-height:100dvh;overflow-x:hidden;display:flex;flex-direction:column}
.glow{position:fixed;inset:-20% -20% auto;height:70vh;background:radial-gradient(ellipse at 50% 0%,rgba(255,255,255,.08),transparent 60%);pointer-events:none;animation:breathe 8s ease-in-out infinite}
@keyframes breathe{50%{opacity:.55}}

/* ---------- header + menu ---------- */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;
     padding:12px 16px;background:rgba(5,5,5,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
     border-bottom:1px solid transparent;transition:border-color .3s}
.top.scrolled{border-bottom-color:var(--line)}
.top .mark{height:28px;display:block;mix-blend-mode:screen}
.menu-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--card);
          display:grid;place-items:center;cursor:pointer;transition:transform .2s var(--ease)}
.menu-btn:active{transform:scale(.9)}
.menu-btn i{display:block;width:16px;height:2px;background:var(--text);border-radius:2px;position:relative;transition:background .25s}
.menu-btn i::before,.menu-btn i::after{content:"";position:absolute;left:0;width:16px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s var(--ease)}
.menu-btn i::before{transform:translateY(-5px)}
.menu-btn i::after{transform:translateY(5px)}
.menu-open .menu-btn i{background:transparent}
.menu-open .menu-btn i::before{transform:rotate(45deg)}
.menu-open .menu-btn i::after{transform:rotate(-45deg)}
.sheet{position:fixed;inset:0;z-index:15;background:rgba(5,5,5,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
       display:flex;flex-direction:column;justify-content:center;padding:80px 28px 40px;gap:6px;
       opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.menu-open .sheet{opacity:1;visibility:visible}
.sheet a{font-size:34px;font-weight:800;letter-spacing:-.03em;color:var(--text);text-decoration:none;padding:6px 0;
         opacity:0;transform:translateY(16px);transition:opacity .4s var(--ease),transform .4s var(--ease)}
.sheet a.here{background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.menu-open .sheet a{opacity:1;transform:none}
.menu-open .sheet a:nth-child(2){transition-delay:.04s}
.menu-open .sheet a:nth-child(3){transition-delay:.08s}
.menu-open .sheet a:nth-child(4){transition-delay:.12s}
.menu-open .sheet a:nth-child(5){transition-delay:.16s}
.menu-open .sheet a:nth-child(6){transition-delay:.2s}
.menu-open{overflow:hidden}

/* ---------- layout ---------- */
main{position:relative;flex:1;width:100%;max-width:560px;margin:0 auto;padding:24px 16px 48px;text-align:center}
.logo{width:min(92%,420px);display:block;margin:8px auto 0;mix-blend-mode:screen;animation:logoIn 1.1s var(--ease) both}
@keyframes logoIn{from{opacity:0;transform:scale(.94);filter:blur(6px)}}
h1,.h1{margin-top:28px;font-size:clamp(34px,9vw,52px);font-weight:800;letter-spacing:-.03em;line-height:1.02;
   background:var(--chrome);background-size:100% 200%;-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:32px 0 10px}
.sub{margin:14px auto 0;max-width:400px;color:var(--muted);font-size:16px;line-height:1.5}
.sub b{color:var(--text);font-weight:600}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:28px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 6px}
.stat .n{font-size:clamp(20px,6vw,26px);font-weight:800;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}
.stat .l{margin-top:4px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}

/* ---------- buttons ---------- */
.btn{position:relative;overflow:hidden;display:block;width:100%;margin-top:24px;padding:19px 20px;border:0;border-radius:999px;cursor:pointer;
     text-decoration:none;text-align:center;font:inherit;
     background:var(--chrome);color:#0a0a0a;font-weight:800;font-size:18px;letter-spacing:-.01em;
     box-shadow:0 0 0 1px rgba(255,255,255,.25) inset,0 10px 40px rgba(255,255,255,.12);
     transition:transform .18s var(--ease),box-shadow .3s;animation:pulse 3.2s ease-in-out infinite}
.btn::before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;
             background:linear-gradient(100deg,transparent,rgba(255,255,255,.9),transparent);transform:skewX(-20deg);
             animation:shine 3.2s ease-in-out infinite}
.btn:hover{box-shadow:0 0 0 1px rgba(255,255,255,.4) inset,0 14px 50px rgba(255,255,255,.22)}
.btn:active{transform:scale(.97)}
.btn.loading{pointer-events:none}
.btn.loading .label{opacity:0}
.btn.loading::after{content:"";position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;
                    border:2.5px solid rgba(0,0,0,.2);border-top-color:#0a0a0a;border-radius:50%;animation:spin .7s linear infinite}
.btn .label{position:relative;z-index:1;transition:opacity .2s}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line);box-shadow:none;animation:none}
.btn.ghost::before{display:none}
.ripple{position:absolute;border-radius:50%;background:rgba(0,0,0,.18);transform:scale(0);animation:ripple .6s ease-out forwards;pointer-events:none}
.btn.ghost .ripple{background:rgba(255,255,255,.18)}
@keyframes shine{0%,55%{left:-60%}100%{left:130%}}
@keyframes pulse{50%{box-shadow:0 0 0 1px rgba(255,255,255,.25) inset,0 10px 56px rgba(255,255,255,.22)}}
@keyframes ripple{to{transform:scale(4);opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}
.secure{margin-top:10px;font-size:12px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:6px}
.secure svg{width:12px;height:12px}

.divider{display:flex;align-items:center;gap:12px;margin:44px 0 22px;color:#cfcfcf}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#8a8a8a)}
.divider::after{background:linear-gradient(270deg,transparent,#8a8a8a)}
.divider svg{width:16px;height:16px;animation:twinkle 4s ease-in-out infinite}
@keyframes twinkle{50%{transform:rotate(90deg) scale(1.25);opacity:.6}}

.steps{display:grid;gap:10px;text-align:left}
.step{display:flex;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}
.step .num{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#0a0a0a;background:var(--chrome)}
.step b{display:block;font-size:15px}
.step span{font-size:13px;color:var(--muted)}
.btn2{margin-top:28px}

/* ---------- launch offer ---------- */
.launch{position:relative;overflow:hidden;margin-top:24px;padding:20px 16px 16px;border-radius:18px;
        background:var(--card);border:1px solid #3a3a3a}
.launch[hidden]{display:none}
.launch::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;pointer-events:none;
                background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.7) 50%,transparent 70%) 0 0/250% 100%;
                -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;
                animation:edge 3.5s linear infinite}
@keyframes edge{to{background-position:-250% 0}}
.badge{display:inline-block;padding:6px 12px;border-radius:999px;background:var(--chrome);color:#0a0a0a;
       font-size:11px;font-weight:800;letter-spacing:.1em;animation:pulse 3.2s ease-in-out infinite}
.launch-price{margin-top:12px;display:flex;align-items:baseline;justify-content:center;gap:12px}
.launch-price s{color:var(--muted);font-size:22px;font-weight:700;text-decoration-thickness:2px}
.launch-price b{font-size:44px;font-weight:800;letter-spacing:-.03em;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px}
.countdown div{background:#050505;border:1px solid var(--line);border-radius:12px;padding:10px 0 8px}
.countdown b{display:block;font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}
.countdown b.flip{animation:flip .35s var(--ease)}
.countdown span{display:block;margin-top:2px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
@keyframes flip{from{opacity:.2;transform:translateY(-6px)}}
.launch-note{margin-top:12px;font-size:12px;color:var(--muted)}

/* ---------- FAQ ---------- */
.faq{display:grid;gap:10px;text-align:left;margin-top:28px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .3s}
.faq details[open]{border-color:#3a3a3a}
.faq summary{list-style:none;cursor:pointer;padding:18px 48px 18px 16px;font-weight:700;font-size:15px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:50%;font-size:22px;font-weight:400;color:var(--muted);transform:translateY(-50%);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq .a{padding:0 16px 18px;color:var(--muted);font-size:14px;line-height:1.6}
.faq .a a,.prose a{color:var(--text)}

/* ---------- text pages ---------- */
.prose{text-align:left;color:#cfcfcf;font-size:15px;line-height:1.65}
.prose h1{text-align:center;margin-bottom:6px}
.prose .updated{text-align:center;color:var(--muted);font-size:13px;margin-bottom:8px}
.prose h2{color:var(--text);font-size:18px}
.prose p,.prose ul{margin-top:10px}
.prose ul{padding-left:20px}
.prose li{margin-top:6px}

.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 18px;margin-top:24px;text-align:left}
.card p{color:var(--muted);font-size:14px;line-height:1.6}
.card .big{display:block;margin-top:6px;font-size:18px;font-weight:700;color:var(--text);text-decoration:none;word-break:break-all}

.check{width:84px;height:84px;margin:24px auto 0;border-radius:50%;background:var(--chrome);display:grid;place-items:center;animation:pop .6s var(--ease) both}
.check svg{width:40px;height:40px}
.check path{stroke-dasharray:40;stroke-dashoffset:40;animation:draw .5s .45s var(--ease) forwards}
@keyframes pop{from{transform:scale(0)}70%{transform:scale(1.1)}}
@keyframes draw{to{stroke-dashoffset:0}}

/* ---------- footer ---------- */
footer{margin-top:36px;font-size:13px;color:var(--muted)}
footer a{color:var(--text);text-decoration:none;font-weight:600}
.legal{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin-top:16px;font-size:12px}
.legal a{color:var(--muted);font-weight:500}

/* ---------- scroll reveal ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.in{opacity:1;transform:none}

/* ---------- toast ---------- */
.toast{position:fixed;left:50%;bottom:24px;z-index:30;max-width:calc(100% - 32px);padding:12px 18px;border-radius:999px;
       background:#f2f2f2;color:#0a0a0a;font-size:14px;font-weight:600;transform:translate(-50%,120px);transition:transform .4s var(--ease)}
.toast.show{transform:translate(-50%,0)}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
