/* Landing page: night blue with drifting blue smoke. Fonts are self-hosted. */
@font-face{font-family:"Unbounded";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/unbounded-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Unbounded";font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/unbounded-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Manrope";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/manrope-latin-700-normal.woff2) format("woff2")}
:root{color-scheme:dark;--night:#0A0F24;--text:#EEF0FB;--muted:#98A2CF;--amber:#FFA23A;--line:#2A3566;--display:"Unbounded","Arial Black",system-ui,sans-serif;--body:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html{background:var(--night)}
body.land{margin:0;min-height:100vh;min-height:100svh;background:var(--night);color:var(--text);font:400 15px/1.5 var(--body);display:flex;flex-direction:column;position:relative;overflow-x:hidden;padding:env(safe-area-inset-top,0px) 16px env(safe-area-inset-bottom,0px)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.smoke{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.smoke i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.95;will-change:transform}
.smoke .s1{width:70vmax;height:70vmax;left:-25vmax;top:-20vmax;background:radial-gradient(circle,rgba(70,110,255,.8),transparent 65%);animation:d1 26s ease-in-out infinite alternate}
.smoke .s2{width:60vmax;height:60vmax;right:-22vmax;top:5vmax;background:radial-gradient(circle,rgba(125,155,255,.7),transparent 65%);animation:d2 32s ease-in-out infinite alternate}
.smoke .s3{width:80vmax;height:50vmax;left:5vmax;bottom:-28vmax;background:radial-gradient(circle,rgba(50,85,230,.8),transparent 65%);animation:d3 29s ease-in-out infinite alternate}
.smoke .s4{width:40vmax;height:40vmax;left:30vmax;top:20vmax;background:radial-gradient(circle,rgba(150,175,255,.45),transparent 65%);animation:d4 38s ease-in-out infinite alternate}
@keyframes d1{to{transform:translate(18vmax,12vmax) scale(1.12)}}
@keyframes d2{to{transform:translate(-16vmax,10vmax) scale(.92)}}
@keyframes d3{to{transform:translate(-14vmax,-8vmax) scale(1.1)}}
@keyframes d4{to{transform:translate(-10vmax,14vmax) scale(1.2)}}
@media(prefers-reduced-motion:reduce){.smoke i{animation:none}}
.hero{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(22px,5vh,40px);text-align:center;padding-block:40px}
.logo{width:min(380px,78vw);height:auto;display:block;filter:drop-shadow(0 6px 30px rgba(70,110,255,.35))}
.pillars{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 0;font:800 clamp(12px,3.4vw,17px)/1 var(--display);letter-spacing:.22em;text-transform:uppercase}
.pillars li{padding-inline:clamp(10px,3vw,22px)}
.pillars li+li{border-left:1px solid var(--line)}
.cta{display:inline-flex;align-items:center;gap:10px;font:800 13px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;color:#0A0F24;background:var(--amber);border-radius:999px;padding:18px 28px;min-height:52px;text-decoration:none;box-shadow:0 10px 40px rgba(255,162,58,.25);transition:transform .15s,box-shadow .2s}
.cta:hover{box-shadow:0 12px 48px rgba(255,162,58,.4)}
.cta:active{transform:scale(.98)}
.cta:focus-visible{outline:2px solid var(--text);outline-offset:4px}
.foot{position:relative;z-index:1;text-align:center;color:var(--muted);font:700 10.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;padding:0 0 22px}
@media(max-width:420px){.pillars{flex-direction:column;gap:12px}.pillars li+li{border-left:0}}
