
:root{
  --bg:#05060a;
  --fg:#e8ecf1;
  --muted:#9aa0a6;
  --n1:#00ff88;
  --n2:#00bfff;
  --n3:#ff0080;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:
    radial-gradient(1200px 800px at 20% 10%, rgba(0,191,255,.08), transparent 55%),
    radial-gradient(1200px 800px at 80% 95%, rgba(255,0,128,.06), transparent 60%),
    var(--bg);
  color:var(--fg);
  font-family: 'Segoe UI', Roboto, Arial, sans-serif;
  overflow:hidden;
}

.wrap{min-height:100vh; display:grid; grid-template-rows:auto 1fr auto; gap:1rem; padding:2rem}
.top{display:flex; justify-content:center; align-items:center}
.logo{height:58px; filter: drop-shadow(0 6px 22px rgba(0,0,0,.6))}

.stage{position:relative; display:flex; align-items:center; justify-content:center; height:72vh}
#scene{width:min(1200px,92vw); height:100%; background:#03040a; border-radius:16px; box-shadow:0 30px 80px rgba(0,0,0,.6)}
.overlay{position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; align-items:center; padding:1rem; pointer-events:none}
.tag{margin:.4rem 0 0; letter-spacing:.28em; font-size:.95rem; color:#b1b8c3; text-align:center}
.hint{margin-top:.2rem; font-size:.8rem; color:#7f8693; opacity:.9}

.foot{display:flex; flex-direction:column; align-items:center; gap:.6rem; color:#7b8290}
.cta{display:flex; gap:.8rem; justify-content:center}
.btn{appearance:none; border:none; background:linear-gradient(120deg, rgba(0,255,136,.22), rgba(0,191,255,.18), rgba(255,0,128,.22)); color:var(--fg);
     padding:.95rem 1.35rem; border-radius:14px; text-decoration:none; font-weight:800; letter-spacing:.04em;
     border:1px solid rgba(255,255,255,.18); box-shadow:0 8px 24px rgba(0,0,0,.35)}

body::after{
  content:""; position:fixed; inset:0; pointer-events:none;
  background: radial-gradient(1000px 500px at 50% 10%, transparent, rgba(0,0,0,.25) 70%, rgba(0,0,0,.55));
  mix-blend-mode:multiply;
}

/* screen-reader only for H1; visual is the canvas */
.sr{position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden}
