/* NEBULA PRO — Electric cyan on near-black */
:root {
  --bg: #050509;
  --accent: #00d4ff;
  --accent-muted: rgba(0,212,255,0.4);
  --text: #e8f0f8;
  --text-dim: rgba(232,240,248,0.4);
  --font-display: 'Space Grotesk', sans-serif;
  --font-body: 'Space Mono', monospace;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:auto}
body{background:var(--bg);color:var(--text);font-family:var(--font-body);overflow-x:hidden}
#loader{position:fixed;inset:0;background:var(--bg);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;transition:opacity 0.6s}
#loader.hidden{opacity:0;pointer-events:none}
.loader-brand{font-family:var(--font-body);font-size:10px;letter-spacing:0.5em;color:var(--accent-muted)}
.loader-bar-wrap{width:260px;height:1px;background:rgba(0,212,255,0.1)}
.loader-bar{height:100%;background:var(--accent);width:0%;transition:width 0.1s linear;box-shadow:0 0 10px rgba(0,212,255,0.7)}
.loader-percent{font-family:var(--font-display);font-size:72px;font-weight:700;color:var(--text);letter-spacing:-0.03em;line-height:1}
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:24px 48px}
.site-header nav{display:flex;justify-content:space-between;align-items:center}
.nav-logo{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:0.4em;color:var(--accent)}
.nav-links{display:flex;gap:40px}
.nav-links a{font-family:var(--font-body);font-size:10px;letter-spacing:0.2em;color:var(--text-dim);text-decoration:none;transition:color 0.2s}
.nav-links a:hover{color:var(--text)}
.hero-standalone{position:relative;height:100vh;background:var(--bg);display:flex;flex-direction:column;justify-content:center;padding:0 8vw;z-index:10;overflow:hidden}
.hero-standalone::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 60% at 10% 50%,rgba(0,212,255,0.06),transparent);pointer-events:none}
.hero-standalone .section-label{font-family:var(--font-body);font-size:9px;letter-spacing:0.45em;color:var(--accent-muted);margin-bottom:28px;display:block}
.hero-heading{font-family:var(--font-display);font-size:clamp(5rem,12vw,13rem);font-weight:700;line-height:0.88;letter-spacing:-0.03em;color:var(--text);margin-bottom:36px}
.hero-heading span{display:block}
.hero-heading span:nth-child(2){color:var(--accent)}
.hero-tagline{font-family:var(--font-body);font-size:10px;letter-spacing:0.1em;color:var(--text-dim);max-width:340px;line-height:1.9}
.scroll-indicator{position:absolute;bottom:40px;left:8vw;display:flex;align-items:center;gap:16px}
.scroll-indicator span{font-family:var(--font-body);font-size:8px;letter-spacing:0.5em;color:rgba(232,240,248,0.2)}
.scroll-arrow{font-size:14px;color:var(--accent-muted);animation:bounce 2s ease-in-out infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
.canvas-wrap{position:fixed;inset:0;z-index:1;clip-path:circle(0% at 50% 50%)}
#canvas{width:100%;height:100%;display:block}
#dark-overlay{position:fixed;inset:0;z-index:2;background:rgba(5,5,9,0.91);opacity:0;pointer-events:none}
.marquee-wrap{position:fixed;bottom:12vh;left:0;right:0;z-index:3;overflow:hidden;opacity:0;pointer-events:none}
.marquee-text{display:inline-block;white-space:nowrap;font-family:var(--font-display);font-size:13vw;font-weight:700;color:rgba(0,212,255,0.07);letter-spacing:-0.03em;line-height:1}
#scroll-container{position:relative;height:900vh;z-index:5}
.scroll-section{position:absolute;left:0;right:0;pointer-events:none;opacity:0;transform:translateY(-50%)}
.scroll-section.visible{opacity:1;pointer-events:auto}
.align-left{padding-left:5vw;padding-right:55vw}
.align-right{padding-left:55vw;padding-right:5vw}
.align-left .section-inner,.align-right .section-inner{max-width:40vw}
.section-label{display:block;font-family:var(--font-body);font-size:8px;letter-spacing:0.45em;color:var(--accent-muted);margin-bottom:18px}
.section-heading{font-family:var(--font-display);font-size:clamp(2.6rem,5vw,5.5rem);font-weight:700;line-height:0.95;letter-spacing:-0.02em;color:var(--text);margin-bottom:22px}
.section-body{font-family:var(--font-body);font-size:10px;letter-spacing:0.06em;line-height:1.9;color:var(--text-dim);max-width:320px}
.section-note{font-family:var(--font-display);font-size:15px;font-weight:300;color:var(--accent-muted);margin-top:14px;letter-spacing:0.05em}
.section-stats{left:0;right:0;display:flex;align-items:center;justify-content:center}
.stats-grid{display:flex;gap:80px;align-items:flex-end}
.stat{text-align:center}
.stat-number{font-family:var(--font-display);font-size:clamp(4rem,8vw,9rem);font-weight:700;color:var(--text);letter-spacing:-0.03em;line-height:1}
.stat-suffix{font-family:var(--font-display);font-size:clamp(2rem,3vw,3.5rem);font-weight:300;color:var(--accent);margin-left:4px}
.stat-label{display:block;font-family:var(--font-body);font-size:8px;letter-spacing:0.4em;color:rgba(232,240,248,0.3);margin-top:10px;text-transform:uppercase}
.cta-button{display:inline-block;margin-top:28px;padding:14px 32px;border:1px solid var(--accent);color:var(--accent);font-family:var(--font-body);font-size:9px;letter-spacing:0.3em;text-decoration:none;transition:background 0.3s,color 0.3s;box-shadow:0 0 20px rgba(0,212,255,0.15)}
.cta-button:hover{background:var(--accent);color:var(--bg)}
@media(max-width:768px){#scroll-container{height:550vh}.align-left,.align-right{padding:0 6vw}.align-left .section-inner,.align-right .section-inner{max-width:100%;background:rgba(5,5,9,0.88);padding:24px;backdrop-filter:blur(4px)}.hero-heading{font-size:clamp(3.5rem,16vw,6rem)}.section-heading{font-size:clamp(2rem,8vw,3.5rem)}.stats-grid{gap:28px;flex-wrap:wrap;justify-content:center}.nav-links{display:none}.site-header{padding:20px 24px}}
