:root{--bg:#050b1a;--bg2:#0a1630;--ice:#5eead4;--blue:#38bdf8;--vio:#a78bfa;--txt:#e8f1ff;--mut:#93a4c3;--card:rgba(255,255,255,.06);--bd:rgba(255,255,255,.12)}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--txt);line-height:1.6;overflow-x:hidden}
h1,h2,h3{font-family:'Space Grotesk',sans-serif;line-height:1.05;letter-spacing:-.02em}
a{color:inherit}
.wrap{width:min(1120px,92%);margin:auto}
.grad{background:linear-gradient(90deg,var(--ice),var(--blue),var(--vio));-webkit-background-clip:text;background-clip:text;color:transparent}
header{position:fixed;inset:0 0 auto;z-index:20;backdrop-filter:blur(14px);background:rgba(5,11,26,.6);border-bottom:1px solid var(--bd)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:62px}
.logo{display:flex;gap:.5rem;align-items:center;font-family:'Space Grotesk';font-weight:700;font-size:1.2rem;text-decoration:none}
nav{display:none;gap:1.6rem;font-size:.95rem;color:var(--mut)}
nav a{text-decoration:none}nav a:hover{color:#fff}
.btn{display:inline-block;border:0;cursor:pointer;font:600 1rem 'Inter';padding:.9rem 1.5rem;border-radius:999px;color:#021018;background:linear-gradient(90deg,var(--ice),var(--blue));text-decoration:none;box-shadow:0 0 30px rgba(56,189,248,.4);transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 0 50px rgba(94,234,212,.6)}
.btn.ghost{background:transparent;color:#fff;border:1px solid var(--bd);box-shadow:none}
.btn.sm{padding:.55rem 1.1rem;font-size:.9rem}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:110px 0 60px;overflow:hidden}
.hero:before{content:"";position:absolute;width:700px;height:700px;right:-250px;top:-100px;background:radial-gradient(circle,rgba(56,189,248,.35),transparent 65%);filter:blur(20px)}
.hero:after{content:"";position:absolute;width:600px;height:600px;left:-250px;bottom:-200px;background:radial-gradient(circle,rgba(167,139,250,.3),transparent 65%)}
.hero .wrap{position:relative;z-index:2;display:grid;gap:2.5rem}
.pill{display:inline-block;padding:.4rem .9rem;border:1px solid var(--bd);border-radius:999px;background:var(--card);font-size:.85rem;color:var(--ice);margin-bottom:1.2rem}
h1{font-size:clamp(2.6rem,9vw,5.6rem);font-weight:700}
.lead{font-size:1.15rem;color:var(--mut);max-width:34em;margin:1.3rem 0 1.8rem}
.cta{display:flex;gap:.8rem;flex-wrap:wrap}
.stats{display:flex;gap:2rem;margin-top:2.2rem;flex-wrap:wrap}
.stats b{display:block;font:700 2rem 'Space Grotesk'}
.stats span{color:var(--mut);font-size:.85rem}
.flakes{position:absolute;inset:0;z-index:1;pointer-events:none}
.flakes i{position:absolute;top:-20px;width:var(--s);height:var(--s);border-radius:50%;background:#cfefff;opacity:.6;animation:fall var(--d) linear infinite;animation-delay:var(--l)}
@keyframes fall{to{transform:translateY(110vh) translateX(40px)}}
.unit{display:none}
.card{background:var(--card);border:1px solid var(--bd);border-radius:24px;padding:1.6rem;backdrop-filter:blur(10px)}
section{padding:80px 0;position:relative}
.sec h2{font-size:clamp(2rem,6vw,3.4rem);margin-bottom:.8rem}
.sec>.wrap>p{color:var(--mut);max-width:40em}
.grid{display:grid;gap:1rem;margin-top:2.5rem}
.grid .card{transition:transform .3s,border-color .3s}
.grid .card:hover{transform:translateY(-6px);border-color:var(--ice)}
.grid svg{width:44px;height:44px;margin-bottom:1rem}
.grid h3{font-size:1.3rem;margin-bottom:.4rem}
.grid p{color:var(--mut);font-size:.95rem}
.steps{counter-reset:s}
.steps .card:before{counter-increment:s;content:"0" counter(s);font:700 2.6rem 'Space Grotesk';display:block;background:linear-gradient(90deg,var(--ice),var(--vio));-webkit-background-clip:text;background-clip:text;color:transparent}
.band{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.quote{font-size:1.05rem}.quote small{display:block;color:var(--mut);margin-top:.8rem}
/* forms */
.formsec .wrap{display:grid;gap:2rem}
form .card{padding:1.6rem}
fieldset{border:0;padding:0;min-width:0}
legend{font-weight:600;margin-bottom:.6rem;padding:0}
.f{display:grid;gap:1rem}
.row{display:grid;gap:1rem}
label{display:block;font-size:.9rem;color:var(--mut)}
input:not([type=radio]):not([type=checkbox]),select,textarea{display:block;width:100%;margin-top:.3rem;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--bd);background:rgba(255,255,255,.05);color:#fff;font:1rem 'Inter'}
select option{color:#000}
input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);border-color:transparent}
.opts{display:grid;gap:.6rem;grid-template-columns:1fr 1fr}
.opts label{display:flex;gap:.5rem;align-items:center;padding:.8rem;border:1px solid var(--bd);border-radius:12px;color:var(--txt);cursor:pointer}
.opts label:has(input:checked){border-color:var(--ice);background:rgba(94,234,212,.1)}
.consent{display:flex!important;gap:.6rem;align-items:flex-start;font-size:.82rem}
.consent input{margin-top:.25rem;flex:none}
.step{display:none}.step.on{display:grid;gap:1rem}
.prog{height:6px;border-radius:9px;background:var(--bd);margin-bottom:1.2rem;overflow:hidden}
.prog i{display:block;height:100%;width:33%;background:linear-gradient(90deg,var(--ice),var(--vio));transition:width .4s}
.nav{display:flex;gap:.6rem;justify-content:space-between}
.mini{background:linear-gradient(135deg,rgba(94,234,212,.12),rgba(167,139,250,.12))}
footer{padding:40px 0;border-top:1px solid var(--bd);color:var(--mut);font-size:.85rem;text-align:center}
.thanks{min-height:100svh;display:grid;place-items:center;text-align:center;padding:2rem}
.rv{opacity:0;transform:translateY(24px);transition:.7s}.rv.in{opacity:1;transform:none}
@media(min-width:760px){
nav{display:flex}
.grid{grid-template-columns:repeat(3,1fr)}
.grid.two{grid-template-columns:repeat(2,1fr)}
.row{grid-template-columns:1fr 1fr}
.hero .wrap{grid-template-columns:1.2fr .8fr;align-items:center}
.unit{display:block;animation:float 5s ease-in-out infinite}
.formsec .wrap{grid-template-columns:1.3fr .8fr;align-items:start}
}
@keyframes float{50%{transform:translateY(-16px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
