:root{--bg-1:#0f2027;--bg-2:#203a43;--bg-3:#2c5364;--fg:#e5e7eb;--muted:#94a3b8;--accent:#7dd3fc;--accent-2:#a78bfa;--glass:rgba(255,255,255,.06);--shadow:0 10px 30px rgba(0,0,0,.35)}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--fg);
  background:radial-gradient(1200px 800px at 70% -10%,rgba(167,139,250,.15),transparent 60%),linear-gradient(135deg,var(--bg-1),var(--bg-2) 50%,var(--bg-3));
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-size:140% 140%;animation:gradientMove 18s ease-in-out infinite alternate}
.site{position:relative;min-height:100%;isolation:isolate;display:grid;grid-template-rows:auto 1fr auto}
.vignette{position:fixed;inset:0;background:radial-gradient(60% 60% at 50% 40%,transparent,rgba(0,0,0,.55));pointer-events:none;z-index:-1}
.noise{position:fixed;inset:0;opacity:.05;mix-blend-mode:overlay;background-image:url('/assets/noise.png');background-size:300px 300px;pointer-events:none;z-index:-1}
.nav{display:flex;justify-content:flex-end;padding:clamp(12px,2vw,24px)}
.brand{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(160deg,var(--glass),rgba(255,255,255,.1));border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);font-weight:700;letter-spacing:.5px;color:#fff}
.hero{margin-inline:auto;max-width:min(900px,92vw);padding:clamp(16px,4vw,32px) clamp(16px,5vw,40px);padding-top:clamp(20px,7vh,120px);padding-bottom:clamp(20px,8vh,160px);text-align:center}
.hero__title{font-size:clamp(38px,7vw,92px);line-height:.95;margin:0;letter-spacing:-.02em;text-shadow:0 1px 0 rgba(255,255,255,.04)}
.hero__kicker{margin:.75rem auto .5rem;color:var(--accent);font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:clamp(11px,1.5vw,13px)}
.hero__tag{margin:.35rem auto 1rem;font-size:clamp(18px,3.2vw,32px);font-weight:600;color:#fff}
.hero__tag span{background:linear-gradient(90deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero__sub{margin:0 auto .6rem;color:var(--muted);font-size:clamp(15px,2.2vw,18px);line-height:1.7;max-width:68ch}
.hero__note{margin:.2rem auto 1.6rem;color:#dbeafe;font-size:.98rem}
.form{display:flex;gap:.5rem;justify-content:center;align-items:center;flex-wrap:wrap}
.form input[type="email"]{width:min(460px,86vw);padding:.9rem 1rem;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(17,24,39,.65);color:#fff;font-size:1rem;outline:none;box-shadow:var(--shadow);transition:border-color .2s ease,box-shadow .2s ease}
.form input[type="email"]:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(125,211,252,.2)}
.btn{padding:.9rem 1.1rem;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.14));color:#fff;font-weight:700;letter-spacing:.3px;cursor:pointer;box-shadow:var(--shadow);transition:transform .12s ease,background .25s ease,border-color .25s ease}
.btn:hover{transform:translateY(-1px);background:linear-gradient(160deg,rgba(255,255,255,.12),rgba(255,255,255,.18));border-color:rgba(255,255,255,.2)}
.btn:active{transform:translateY(0) scale(.99)}
.form__note{width:100%;text-align:center;margin:.5rem 0 0;color:var(--muted);font-size:.9rem}
.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.footer{display:grid;place-items:center;padding:28px;color:var(--muted);font-size:.9rem}
@keyframes gradientMove{from{background-position:0% 50%}to{background-position:100% 50%}}
