/* Launch — Coming Soon Page. */
:root{--bg:#070712;--fg:#fff;--muted:rgba(255,255,255,.7);--a:#7c3aed;--b:#06b6d4;--c:#f43f5e;--font:"Sora",system-ui,sans-serif}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);color:var(--fg);font-family:var(--font);overflow-x:hidden;padding:24px}
a{color:inherit}
.blobs{position:fixed;inset:0;z-index:-1;filter:blur(80px);opacity:.75}
.blobs i{position:absolute;border-radius:50%;animation:move 18s ease-in-out infinite alternate}
.b1{width:520px;height:520px;background:var(--a);left:-120px;top:-120px}
.b2{width:460px;height:460px;background:var(--b);right:-140px;top:20%;animation-delay:-6s}
.b3{width:420px;height:420px;background:var(--c);left:30%;bottom:-200px;animation-delay:-12s}
@keyframes move{to{transform:translate(120px,80px) scale(1.15)}}
.card{width:min(760px,100%);text-align:center;padding:48px 32px;border-radius:36px;background:rgba(255,255,255,.06);backdrop-filter:blur(24px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:1.4rem;text-decoration:none}
.logo span{width:30px;height:30px;border-radius:10px;background:conic-gradient(var(--a),var(--b),var(--c),var(--a))}
.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:34px 0 0;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.08);font-size:.85rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.eyebrow i{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.25)}
h1{font-size:clamp(2.4rem,1.2rem + 5vw,4.6rem);line-height:1.02;letter-spacing:-.04em;margin:20px 0}
h1 em{font-style:normal;background:linear-gradient(90deg,#c4b5fd,#67e8f9,#fda4af);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--muted);font-size:1.1rem;max-width:560px;margin:0 auto 34px;line-height:1.6}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:520px;margin:0 auto 34px}
.countdown div{padding:18px 8px;border-radius:22px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.countdown strong{display:block;font-size:clamp(1.8rem,1rem + 3vw,2.8rem);font-weight:800;font-variant-numeric:tabular-nums}
.countdown span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.notify{display:flex;gap:8px;max-width:480px;margin:0 auto;padding:6px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.notify input{flex:1;min-width:0;border:0;background:transparent;color:#fff;font:500 1rem var(--font);padding:0 18px;outline:0}
.notify input::placeholder{color:rgba(255,255,255,.6)}
.notify button{height:50px;padding:0 24px;border:0;border-radius:999px;background:#fff;color:#111;font:700 1rem var(--font);cursor:pointer;transition:transform .2s}
.notify button:hover{transform:scale(1.04)}
.small{color:var(--muted);font-size:.85rem;margin-top:14px}
.social{display:flex;justify-content:center;gap:10px;margin-top:26px}
.social a{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.08);transition:background .2s}
.social a:hover{background:rgba(255,255,255,.18)}.social svg{width:20px;height:20px;fill:#fff}
.foot{margin-top:24px;color:var(--muted);font-size:.85rem}
@media (max-width:520px){.countdown{gap:8px}.card{padding:36px 18px}}
@media (prefers-reduced-motion:reduce){.blobs i{animation:none}}
