*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:#05070d;color:#dfe6f5;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Inter,sans-serif}
a{color:#ffd84a}h1,h2,h3{font-family:inherit;letter-spacing:-.02em;line-height:1.1}
.wrap{max-width:1120px;margin:0 auto;padding:80px 22px}
.hero{position:relative;min-height:100vh;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#1e2a4a 0,#0a0f1e 55%,#05070d 100%)}
#sky,#sky2{position:absolute;inset:0;width:100%;height:100%}
.flash{position:absolute;inset:0;background:#cfe0ff;opacity:0;pointer-events:none;mix-blend-mode:screen}
nav{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:20px 26px}
.logo{font-weight:800;font-size:22px;color:#fff;text-decoration:none}.logo span,h1 span{color:#ffd84a}
.hero-copy{position:relative;z-index:2;max-width:820px;margin:0 auto;padding:12vh 22px 80px;text-align:center}
.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:13px;color:#8fb3ff}
h1{font-size:clamp(64px,13vw,150px);font-weight:900;color:#fff;text-shadow:0 0 40px rgba(140,180,255,.45)}
.tag{font-size:clamp(22px,3.2vw,32px);font-weight:700;color:#fff;margin:10px 0}
.sub{color:#b4c1dd;max-width:640px;margin:0 auto 30px}
.ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;background:#ffd84a;color:#0a0f1e;font-weight:800;padding:14px 26px;border-radius:999px;text-decoration:none;border:0;font-size:16px;cursor:pointer;box-shadow:0 0 30px rgba(255,216,74,.35);transition:transform .15s}
.btn:hover{transform:translateY(-2px)}.btn.sm{padding:9px 18px;font-size:14px}
.btn.ghost{background:transparent;color:#fff;border:1.5px solid #4a5a80;box-shadow:none}
h2{font-size:clamp(32px,5vw,50px);font-weight:900;color:#fff;margin-bottom:18px}
.lead{color:#b4c1dd;max-width:780px;margin-bottom:30px}
.demo{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;background:#0b1222;border:1px solid #1d2a48;border-radius:22px;padding:22px}
.mapbox{background:#081020;border-radius:16px;overflow:hidden}#map{width:100%;display:block;cursor:crosshair}
.status{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:22px;padding:8px 18px;border-radius:999px}
.status .dot{width:14px;height:14px;border-radius:50%;background:currentColor;box-shadow:0 0 14px currentColor}
.status.clear{color:#3ee08a;background:rgba(62,224,138,.1)}.status.delay{color:#ff5a4a;background:rgba(255,90,74,.12);animation:pulse 1.2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(255,90,74,0)}}
.clock{font:900 clamp(60px,9vw,96px)/1 ui-monospace,Menlo,monospace;color:#fff;margin:14px 0 4px;font-variant-numeric:tabular-nums}
.clock.delay{color:#ffb03a;text-shadow:0 0 24px rgba(255,140,40,.5)}
.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0}
.tog{font-size:14px;display:flex;gap:6px;align-items:center}
.phone{background:#000;border:2px solid #26324f;border-radius:26px;padding:22px 12px 12px;min-height:230px;position:relative}
.notch{position:absolute;top:8px;left:50%;width:70px;height:6px;margin-left:-35px;background:#26324f;border-radius:4px}
.push{background:rgba(40,52,80,.85);border-radius:14px;padding:9px 12px;margin-bottom:8px;font-size:14px;animation:in .35s}
.push b{display:block;color:#fff}.push.r{border-left:4px solid #ff5a4a}.push.a{border-left:4px solid #ffb03a}.push.g{border-left:4px solid #3ee08a}
@keyframes in{from{opacity:0;transform:translateY(-8px)}}
.small{font-size:14px}.muted{color:#7d8bab}
.grid2{display:grid;grid-template-columns:1.3fr 1fr;gap:40px}.grid2 p{margin-bottom:14px}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}
.fact{background:#0b1222;border:1px solid #1d2a48;border-radius:16px;padding:18px}
.fact b{display:block;font-size:34px;color:#ffd84a;font-weight:900}.fact span{font-size:14px;color:#b4c1dd}.src{grid-column:1/-1}
.callout{margin-top:26px;padding:20px 24px;border-left:4px solid #ffd84a;background:#0b1222;border-radius:0 14px 14px 0}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.step{background:linear-gradient(180deg,#0e1730,#0a1020);border:1px solid #1d2a48;border-radius:18px;padding:26px}
.step i{font-style:normal;display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#ffd84a;color:#0a0f1e;font-weight:900;margin-bottom:12px}
.step h3{color:#fff;margin-bottom:8px;font-size:21px}.step p{color:#b4c1dd;font-size:16px}
#safety p{max-width:820px;margin-bottom:16px}
.disclaimer{font-size:14px;color:#9aa6c2;border:1px solid #2a3654;border-radius:12px;padding:14px 18px}
.cta{position:relative;overflow:hidden;text-align:center;background:radial-gradient(ellipse at 50% 100%,#1e2a4a,#05070d 70%)}
.cta .wrap{position:relative;z-index:2}.cta p{margin:0 auto 22px;color:#b4c1dd}
footer{padding:40px 22px;font-size:14px;border-top:1px solid #1d2a48;text-align:center}footer p{margin:4px 0}
@media(max-width:820px){.demo,.grid2{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.wrap{padding:60px 18px}.hero-copy{padding-top:8vh}}
@media(prefers-reduced-motion:reduce){.status.delay{animation:none}}
.steps.four{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.steps.four{grid-template-columns:1fr 1fr}}@media(max-width:820px){.steps.four{grid-template-columns:1fr}}.cta .btn{margin:4px}
.signup{max-width:640px;margin:10px auto 0;text-align:left;background:rgba(11,18,34,.85);border:1px solid #1d2a48;border-radius:20px;padding:24px;display:grid;gap:14px}
.signup label{display:grid;gap:6px;font-size:14px;font-weight:600;color:#dfe6f5}.signup em{font-weight:400;color:#7d8bab;font-style:normal}
.signup input,.signup select,.signup textarea{font:inherit;font-size:16px;color:#fff;background:#081020;border:1px solid #2a3654;border-radius:10px;padding:11px 12px;width:100%}
.signup input:focus,.signup select:focus,.signup textarea:focus{outline:2px solid #ffd84a;border-color:transparent}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:14px}.signup .btn{justify-self:start}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.fmsg{margin:0!important;font-weight:700}.fmsg.ok{color:#3ee08a}.fmsg.err{color:#ff8a7a}
@media(max-width:600px){.fg{grid-template-columns:1fr}}

.mapbox{position:relative}.attr{position:absolute;right:0;bottom:0;margin:0;padding:2px 8px;font-size:11px;color:#9aa6c2;background:rgba(5,7,13,.75);border-top-left-radius:8px}.attr a{color:#c8d3ea}
