@import url("/css/fonts.css");
:root{--navy:#29354d;--ink:#0d1526;--night:#0a1226;--dusk:#1d2a4d;--glow:#f2a65a;--ember:#e8774a;--paper:#f6f1e9;--mist:#c9d3e6;--r:14px}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font:400 1.0625rem/1.65 Figtree,system-ui,sans-serif;color:var(--paper);background:var(--night)}
h1,h2,h3{font-family:Outfit,system-ui,sans-serif;font-weight:600;line-height:1.05;letter-spacing:-.02em}
a{color:inherit}
.wrap{width:min(1080px,100% - 2.5rem);margin-inline:auto}
.bar{position:fixed;inset:0 0 auto;z-index:20;padding:.9rem 0;transition:background .3s}
.bar.on{background:rgba(10,18,38,.88);backdrop-filter:blur(8px)}
.bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font:600 1.25rem Outfit,sans-serif;letter-spacing:-.01em}
.brand svg{width:2.4rem;height:2.4rem;color:var(--paper)}
.btn{display:inline-flex;align-items:center;white-space:nowrap;padding:.75rem 1.35rem;border-radius:999px;background:var(--glow);color:var(--ink);font:600 1rem Figtree,sans-serif;text-decoration:none;border:0;cursor:pointer;transition:transform .2s,background .2s}
.btn:hover{background:#ffc07a;transform:translateY(-2px)}
.btn[disabled]{opacity:.6;cursor:wait}
.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;background:linear-gradient(180deg,#070d1d 0%,#142149 38%,#4a3a63 62%,#d9774f 88%,#f2a65a 100%)}
.stars{position:absolute;inset:0 0 40%;background-image:radial-gradient(1.5px 1.5px at 12% 20%,#fff,transparent),radial-gradient(1px 1px at 28% 44%,#fff,transparent),radial-gradient(1.5px 1.5px at 47% 14%,#fff,transparent),radial-gradient(1px 1px at 63% 36%,#fff,transparent),radial-gradient(1.5px 1.5px at 78% 18%,#fff,transparent),radial-gradient(1px 1px at 90% 48%,#fff,transparent),radial-gradient(1px 1px at 8% 58%,#fff,transparent),radial-gradient(1px 1px at 55% 62%,#fff,transparent);opacity:.8;animation:tw 6s ease-in-out infinite alternate}
@keyframes tw{to{opacity:.35}}
.hero .wrap{position:relative;z-index:3;padding:6.5rem 0 clamp(9rem,26vw,15rem)}
.eyebrow{font:600 .8rem Figtree,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--glow);margin-bottom:1.2rem}
.hero h1{font-size:clamp(3rem,8vw,6.2rem);max-width:11ch}
.hero h1 em{font-style:normal;color:var(--glow)}
.hero p.lede{max-width:34rem;margin:1.6rem 0 2rem;font-size:1.25rem;color:var(--mist)}
.cta-row{display:flex;gap:1.4rem;align-items:center;flex-wrap:nowrap}
.cta-row a.link{white-space:nowrap}
.sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:clamp(180px,34vw,380px);z-index:2}
.heli{position:absolute;z-index:2;top:56%;left:0;width:clamp(110px,16vw,210px);color:#0a1226;offset-path:none;will-change:transform;animation:fly 38s linear infinite}
@keyframes fly{0%{transform:translate(-25vw,10px)}50%{transform:translate(55vw,-30px)}100%{transform:translate(125vw,10px)}}
.heli .nav{animation:bl 1.2s steps(2) infinite}@keyframes bl{50%{opacity:0}}
.heli .rotor{transform-origin:86px 18px;animation:spin .14s linear infinite alternate}
@keyframes spin{to{transform:scaleX(.12)}}
section{padding:clamp(4rem,10vw,8rem) 0}
.story{background:var(--paper);color:var(--ink)}
.story .wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.story h2{font-size:clamp(2.2rem,5vw,3.8rem)}
.story p+p{margin-top:1.1rem}
.story .big{font-size:1.25rem}
.steps{background:var(--dusk)}
.steps h2{font-size:clamp(2rem,4.5vw,3.2rem);margin-bottom:2.5rem;max-width:18ch}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{padding:1.8rem;border-radius:var(--r);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.card h3{font-size:1.5rem;margin-bottom:.6rem}
.card p{color:var(--mist)}
.card .n{display:block;font:600 .85rem Outfit;color:var(--glow);letter-spacing:.14em;margin-bottom:1rem}
.join{background:linear-gradient(180deg,var(--dusk),var(--night))}
.join .wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.join h2{font-size:clamp(2.2rem,5vw,3.8rem);margin-bottom:1rem}
.join p{color:var(--mist)}
form{display:grid;gap:1rem}
label{display:grid;gap:.35rem;font-size:.92rem;color:var(--mist)}
input,textarea{font:inherit;color:var(--ink);background:var(--paper);border:2px solid transparent;border-radius:10px;padding:.8rem .9rem;width:100%}
input:focus,textarea:focus{outline:0;border-color:var(--glow)}
[aria-invalid]{border-color:#ff7a6b}
textarea{min-height:6.5rem;resize:vertical}
.hp{position:absolute;left:-9999px}
.form-status{min-height:1.5rem;font-size:.95rem}
.is-ok{color:#9be3b0}.is-err{color:#ffb3a8}
.fine{font-size:.82rem;color:#9fb0cf}
footer{background:var(--night);padding:2.5rem 0;font-size:.9rem;color:#9fb0cf;border-top:1px solid rgba(255,255,255,.08)}
footer .wrap{display:flex;gap:1rem 2rem;justify-content:space-between;flex-wrap:wrap}
footer a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25)}
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}
.js .rv.in{opacity:1;transform:none}
.legal{background:var(--paper);color:var(--ink);padding:8rem 0 5rem}
.legal h1{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:1.5rem}.legal h2{font-size:1.4rem;margin:1.8rem 0 .5rem}
:focus-visible{outline:3px solid var(--glow);outline-offset:3px}
@media(max-width:820px){.story .wrap,.join .wrap{grid-template-columns:1fr}.cards{grid-template-columns:none;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding-bottom:.6rem}.card{flex:0 0 78%;scroll-snap-align:start}}
@media(max-width:420px){.btn{padding:.7rem 1rem;font-size:.95rem}.brand{font-size:1.1rem}.cta-row{gap:.9rem}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.js .rv{opacity:1;transform:none}.heli{transform:translate(60vw,0)}html{scroll-behavior:auto}}
