:root{--bg-primary: #050508;--bg-secondary: #0a0a10;--bg-card: #0d0d15;--bg-card-hover: #12121c;--accent: #00ff88;--accent-dim: #00cc6a;--accent-glow: rgba(0, 255, 136, .15);--accent-secondary: #ff3366;--text-primary: #e8e8f0;--text-secondary: #8888a0;--text-muted: #7a7a90;--border: #1a1a2e;--font-display: "Bebas Neue", sans-serif;--font-body: "Sora", sans-serif;--font-mono: "JetBrains Mono", monospace;--section-padding: 8rem 2rem;--section-max-width: 1200px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}::selection{background:var(--accent);color:var(--bg-primary)}html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--accent-dim) var(--bg-primary)}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);overflow-x:hidden;line-height:1.6}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px)}.section-inner{max-width:var(--section-max-width);margin:0 auto}.section-label{font-family:var(--font-mono);font-size:.65rem;color:var(--accent);letter-spacing:6px;text-transform:uppercase;margin-bottom:1rem}.section-title{font-family:var(--font-display);font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:3px;margin-bottom:1.5rem;line-height:1}.section-desc{color:var(--text-secondary);font-size:1rem;max-width:600px;line-height:1.8;margin-bottom:3rem}.hr-accent{width:40px;height:2px;background:var(--accent);border:none;margin:1.5rem 0;box-shadow:0 0 10px var(--accent-glow)}.hr-accent.center{margin:1.5rem auto}.reveal{opacity:0;transform:translateY(40px);transition:all .8s var(--ease-out-expo)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes glitchIn{0%{opacity:0;transform:translateY(20px);clip-path:inset(0 0 100% 0)}30%{opacity:1;clip-path:inset(0 0 60% 0)}50%{clip-path:inset(40% 0 0 0)}70%{clip-path:inset(0 0 20% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0 0 0 0)}}@keyframes fadeIn{to{opacity:1}}@keyframes scrollPulse{0%,to{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.2)}}@keyframes ringPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.1;transform:scale(1.05)}}@keyframes rotateSlow{to{transform:rotate(360deg)}}@keyframes eqBounce{0%{height:var(--min-h)}to{height:var(--max-h)}}
