@font-face{font-family:"Geist";src:url("/app/fonts/Geist-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("/app/fonts/GeistMono-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{
  --ink:#0B0E13; --s1:#12161E; --s2:#1B212C;
  --line:#232A36; --line-2:#2F3846; --field:#5B6577;
  --text:#ECEEF2; --muted:#9AA3B2; --amber:#F2A93B; --amber-hi:#F6B958;
  --on-amber:#0B0E13; --amber-text:#F2A93B; --focus:#F2A93B;
  --ph:#7C8697; --err:#F0A8A0; --err-line:#E5857B;
  --panel-shadow:0 -1px 0 rgba(255,255,255,.04) inset,0 40px 80px -30px rgba(0,0,0,.7);
  color-scheme:dark;
  --ease:cubic-bezier(.16,1,.3,1);
  --gutter:clamp(20px,5vw,48px);
}
@media (prefers-color-scheme:light){:root:not([data-theme]){
  --ink:#F6F5F1; --s1:#FFFFFF; --s2:#FFFFFF;
  --line:#E2DFD7; --line-2:#D4D0C5; --field:#8791A1;
  --text:#0B0E13; --muted:#5A6375; --amber:#F2A93B; --amber-hi:#F6B958;
  --on-amber:#0B0E13; --amber-text:#8F5700; --focus:#B26A00;
  --ph:#6B7384; --err:#B3261E; --err-line:#C6362D;
  --panel-shadow:0 -1px 0 rgba(255,255,255,.9) inset,0 40px 80px -36px rgba(11,14,19,.28);
  color-scheme:light;
}}
:root[data-theme=light]{
  --ink:#F6F5F1; --s1:#FFFFFF; --s2:#FFFFFF;
  --line:#E2DFD7; --line-2:#D4D0C5; --field:#8791A1;
  --text:#0B0E13; --muted:#5A6375; --amber:#F2A93B; --amber-hi:#F6B958;
  --on-amber:#0B0E13; --amber-text:#8F5700; --focus:#B26A00;
  --ph:#6B7384; --err:#B3261E; --err-line:#C6362D;
  --panel-shadow:0 -1px 0 rgba(255,255,255,.9) inset,0 40px 80px -36px rgba(11,14,19,.28);
  color-scheme:light;
}
:root[data-theme=dark]{
  --ink:#0B0E13; --s1:#12161E; --s2:#1B212C;
  --line:#232A36; --line-2:#2F3846; --field:#5B6577;
  --text:#ECEEF2; --muted:#9AA3B2; --amber:#F2A93B; --amber-hi:#F6B958;
  --on-amber:#0B0E13; --amber-text:#F2A93B; --focus:#F2A93B;
  --ph:#7C8697; --err:#F0A8A0; --err-line:#E5857B;
  --panel-shadow:0 -1px 0 rgba(255,255,255,.04) inset,0 40px 80px -30px rgba(0,0,0,.7);
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0}
html{background:var(--ink);scrollbar-color:var(--line-2) var(--ink);scroll-behavior:smooth}
body{background:var(--ink);color:var(--text);font-family:"Geist",ui-sans-serif,system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:var(--amber);color:var(--on-amber)}
::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--ink)}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:8px;border:3px solid var(--ink)}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--gutter)}
h1,h2,h3{text-wrap:balance;font-weight:600}
p{text-wrap:pretty}

/* top bar */
.bar{display:flex;align-items:center;justify-content:space-between;height:76px}
.bar>a svg{height:36px;width:auto;display:block}
.bar nav svg{display:block;flex:none}
.bar nav{display:flex;align-items:center;gap:6px;font-size:14px}
/* language menu (#304): <details>, any number of languages */
.lang{position:relative}
.lang summary{display:flex;align-items:center;gap:6px;height:36px;padding:0 10px;border-radius:8px;color:var(--muted);font-weight:500;letter-spacing:.02em;list-style:none;cursor:pointer;user-select:none;transition:background .2s,color .2s}
.lang summary::-webkit-details-marker{display:none}
.lang summary:hover,.lang[open] summary{color:var(--text);background:color-mix(in srgb,var(--text) 7%,transparent)}
.lang .chev{transition:transform .2s var(--ease)}
.lang[open] .chev{transform:rotate(180deg)}
.lang ul{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:176px;padding:6px;list-style:none;background:var(--s1);border:1px solid var(--line-2);border-radius:10px;box-shadow:0 18px 40px -18px rgba(0,0,0,.45)}
.lang li a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:6px;color:var(--text);text-decoration:none;transition:background .15s}
.lang li a:hover{background:color-mix(in srgb,var(--text) 7%,transparent)}
.lang li a[aria-current]{font-weight:500}
.lang li a[aria-current] svg{color:var(--amber-text)}
.theme{display:none;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:8px;background:none;color:var(--muted);cursor:pointer;transition:background .2s,color .2s}
.theme:hover{background:color-mix(in srgb,var(--text) 7%,transparent);color:var(--text)}
html[data-theme] .theme{display:grid}
:root[data-theme=dark] .i-moon,:root[data-theme=light] .i-sun{display:none}
.lk-w{fill:var(--text)}.lk-m{fill:var(--muted)}
.signin{display:inline-flex;align-items:center;height:34px;margin-left:6px;padding:0 14px;border:1px solid var(--line-2);border-radius:8px;font-weight:500;text-decoration:none;transition:border-color .2s,background .2s}
.signin:hover{border-color:var(--muted);background:color-mix(in srgb,var(--text) 5%,transparent)}

/* hero */
.hero{padding-top:clamp(56px,9vw,112px);text-align:center}
.hero h1{font-size:clamp(2.6rem,7.2vw,5.5rem);line-height:1;letter-spacing:-.04em;font-weight:600;max-width:12ch;margin:0 auto}
.lede{max-width:56ch;margin:28px auto 0;color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.55}
.join{max-width:540px;margin:40px auto 0;text-align:left}
.row{display:flex;gap:10px}
.row .field{flex:1;min-width:0}
label.lbl{display:block;font-size:14px;color:var(--muted);margin-bottom:8px}
input[type=email]{width:100%;height:52px;padding:0 16px;background:var(--s1);color:var(--text);border:1px solid var(--field);border-radius:10px;font:inherit;font-size:16px;caret-color:var(--focus);transition:border-color .2s}
input[type=email]::placeholder{color:var(--ph)}
input[type=email]:hover{border-color:var(--muted)}
input[type=email]:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.btn{height:52px;padding:0 24px;border:0;border-radius:10px;background:var(--amber);color:var(--on-amber);font:inherit;font-weight:600;font-size:16px;cursor:pointer;white-space:nowrap;align-self:flex-end;transition:background .2s,transform .2s var(--ease)}
.btn:hover{background:var(--amber-hi)}
.btn:active{transform:translateY(1px)}
.btn:disabled{opacity:.55;cursor:wait}
.consent{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:14px;line-height:1.5;color:var(--muted)}
.consent input{appearance:none;flex:none;width:20px;height:20px;margin-top:1px;border:1px solid var(--field);border-radius:5px;background:var(--s1);cursor:pointer;display:grid;place-content:center;transition:background .15s,border-color .15s}
.consent input:checked{background:var(--amber);border-color:var(--amber)}
.consent input:checked::after{content:"";width:10px;height:5px;border-left:2px solid var(--on-amber);border-bottom:2px solid var(--on-amber);transform:rotate(-45deg) translate(1px,-1px)}
.consent input:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.consent a{color:var(--text)}
.err{font-size:14px;color:var(--err);line-height:1.5}
.err.on{margin-top:14px}
.join.bad input[type=email].is-bad{border-color:var(--err-line)}
.ok{display:none;padding:22px 24px;border:1px solid var(--line-2);border-radius:12px;background:var(--s1)}
.ok strong{display:block;font-size:18px;font-weight:600;margin-bottom:4px}
.ok span{color:var(--muted);font-size:15px}
.join.done .ok{display:block}
.join.done form{display:none}
.early{margin-top:20px;text-align:center;color:var(--muted);font-size:14px}

/* panel */
.panel-wrap{margin-top:clamp(56px,8vw,96px)}
.panel{position:relative;max-width:1040px;margin:0 auto;padding:10px;border:1px solid var(--line-2);border-bottom:0;border-radius:18px 18px 0 0;background:var(--s1);box-shadow:var(--panel-shadow)}
.shot{position:relative;overflow:hidden;border-radius:10px 10px 0 0;aspect-ratio:1200/640;background:var(--ink);-webkit-mask-image:linear-gradient(#000 78%,transparent);mask-image:linear-gradient(#000 78%,transparent)}
.shot img{display:block;width:100%;height:auto}
.shot-light{display:none!important}
:root[data-theme=light] .shot-light{display:block!important}
:root[data-theme=light] .shot-dark{display:none!important}
@media (prefers-color-scheme:light){:root:not([data-theme]) .shot-light{display:block!important}:root:not([data-theme]) .shot-dark{display:none!important}}
.panel-cap{max-width:1040px;margin:18px auto 0;color:var(--muted);font-size:14px;text-align:center}

/* sections */
section{padding:clamp(72px,11vw,144px) 0 0}
.h2{font-size:clamp(1.9rem,4vw,3.1rem);line-height:1.08;letter-spacing:-.03em;font-weight:600}
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,8vw,120px);align-items:start}
.prose p{color:var(--muted);font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.65;max-width:62ch}
.prose p+p{margin-top:1.1em}
.prose p strong{color:var(--text);font-weight:500}

/* flight sequence */
.how .h2{max-width:16ch}
.flight{list-style:none;padding:0;margin:clamp(48px,6vw,72px) 0 0;position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.flight::before,.flight::after{content:"";position:absolute;left:6px;right:calc(20% - 6px);top:5px;height:2px;background:var(--line-2)}
.flight::after{background:var(--text);transform-origin:left;transform:scaleX(1)}
.flight li{position:relative;padding-top:40px}
.flight li::before{content:"";position:absolute;left:0;top:0;width:12px;height:12px;border-radius:50%;background:var(--ink);border:2px solid var(--text);box-sizing:border-box}
.flight li:last-child::before{background:var(--amber);border-color:var(--amber)}
.flight h3{font-size:1.15rem;letter-spacing:-.015em;line-height:1.25}
.flight p{margin-top:10px;color:var(--muted);font-size:15px;line-height:1.55}
.tag{display:inline-block;margin-top:14px;font-family:"Geist Mono",ui-monospace,monospace;font-size:12px;color:var(--muted);letter-spacing:.02em}
.flight li:last-child .tag{color:var(--amber-text)}
.flight li:nth-child(n+2):nth-child(-n+4) .tag{color:var(--text)}
.armed .flight::after{transform:scaleX(0)}
.armed .flight li::before{background:var(--ink);border-color:var(--line-2)}
.armed .flight li:last-child::before{background:var(--ink);border-color:var(--line-2)}
.go .flight::after{transform:scaleX(1);transition:transform 2.4s var(--ease) .1s}
.go .flight li::before{transition:background .3s,border-color .3s;transition-delay:calc(var(--i)*.48s);border-color:var(--text)}
.go .flight li:last-child::before{background:var(--amber);border-color:var(--amber)}
.armed.go .flight li::before{border-color:var(--text);background:var(--ink)}
.armed.go .flight li:last-child::before{background:var(--amber);border-color:var(--amber)}

/* inside */
.feats{list-style:none;padding:0;margin:clamp(40px,5vw,64px) 0 0;display:grid;grid-template-columns:repeat(3,1fr);column-gap:clamp(24px,4vw,56px)}
.feats li{border-top:1px solid var(--line-2);padding:24px 0 44px}
.feats h3{font-size:1.2rem;letter-spacing:-.015em}
.feats p{margin-top:8px;color:var(--muted);font-size:15.5px;max-width:34ch}

/* safety */
.safe{list-style:none;padding:0}
.safe li{padding:22px 0;border-top:1px solid var(--line-2);display:grid;grid-template-columns:minmax(0,1fr);gap:4px}
.safe li:last-child{border-bottom:1px solid var(--line-2)}
.safe h3{font-size:1.1rem;letter-spacing:-.01em}
.safe p{color:var(--muted);font-size:16px;max-width:58ch}

/* closing */
.close{padding-bottom:clamp(72px,10vw,128px)}
.close .box{border:1px solid var(--line-2);border-radius:20px;background:var(--s1);padding:clamp(36px,7vw,88px) var(--gutter);text-align:center}
.close h2{max-width:18ch;margin:0 auto}
.close .join{margin-top:36px}

footer{border-top:1px solid var(--line);padding:32px 0 48px;color:var(--muted);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center}
footer .links{display:flex;gap:24px;flex-wrap:wrap}
footer a{color:var(--muted)}footer a:hover{color:var(--text)}
#privacy{scroll-margin-top:24px}
.privacy{padding-bottom:clamp(72px,10vw,128px)}

@media (max-width:900px){
  .split{grid-template-columns:1fr}
  .feats{grid-template-columns:1fr 1fr}
  .flight{grid-template-columns:1fr;gap:0}
  .flight::before,.flight::after{left:5px;right:auto;top:6px;bottom:calc(20% - 6px);width:2px;height:auto}
  .flight::after{transform-origin:top}
  .armed .flight::after{transform:scaleY(0)}
  .go .flight::after,.flight::after{transform:scaleY(1)}
  .armed:not(.go) .flight::after{transform:scaleY(0)}
  .flight li{padding:0 0 34px 40px}
  .flight li:last-child{padding-bottom:0}
  .flight li::before{top:4px}
}
@media (max-width:600px){
  body{font-size:16px}
  .row{flex-direction:column}
  .btn{align-self:stretch;width:100%}
  .feats{grid-template-columns:1fr}
  .feats li{padding-bottom:28px}
  .bar nav{gap:2px}
  .bar>a svg{height:30px}
  .lang .chev{display:none}
  .lang summary{padding:0 8px}
  .panel{padding:6px;border-radius:14px 14px 0 0}
  .shot{aspect-ratio:358/330;border-radius:8px 8px 0 0}
  .shot img{width:640px;max-width:none;margin:-52px 0 0 -126px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
  .armed .flight::after{transform:scaleX(1)}
}
