:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#0e0e18;--bg-footer:#08080d;--bg-glass:#ffffff08;--bg-glass-hover:#ffffff0f;--accent-cyan:#00f0ff;--accent-violet:#8b5cf6;--accent-green:#0f8;--accent-red:#f36;--text-primary:#fffffff2;--text-secondary:#94a3b8;--text-muted:#475569;--glass-border:#ffffff0f;--glass-border-hover:#00f0ff4d;--glass-blur:blur(16px);--gradient-primary:linear-gradient(135deg, var(--accent-cyan), var(--accent-violet));--gradient-hero:linear-gradient(135deg, var(--accent-cyan), var(--accent-violet), var(--accent-red));--gradient-text:linear-gradient(135deg, #00f0ff 0%, #8b5cf6 50%, #f36 100%);--font-heading:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Courier New", monospace;--section-padding:120px 0;--container-width:1280px;--container-pad:0 40px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-pill:9999px;--glow-cyan:0 0 40px #00f0ff26, 0 0 80px #00f0ff0d;--glow-violet:0 0 40px #8b5cf626, 0 0 80px #8b5cf60d;--glow-red:0 0 40px #ff336626;--shadow-card:0 4px 24px #0006;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--z-base:0;--z-above:10;--z-dropdown:100;--z-sticky:1000;--z-overlay:9000;--z-cursor:9500;--z-progress:9998;--z-noise:10000;--z-scanlines:10001}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:var(--z-noise);opacity:.015;mix-blend-mode:overlay;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:var(--z-scanlines);background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);animation:8s linear infinite scanlineScroll;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){body:before,body:after{display:none}}img,video,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:3px;border-radius:var(--radius-sm)}::selection{color:var(--text-primary);background:#00f0ff33}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:linear-gradient(var(--accent-cyan), var(--accent-violet));border-radius:3px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);font-weight:700;line-height:1.15}h1{font-size:clamp(2.25rem,5vw,4.75rem)}h2{font-size:clamp(1.75rem,3.5vw,3rem)}h3{font-size:clamp(1.25rem,2vw,1.75rem)}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{color:var(--text-secondary);line-height:1.75}code,pre,.mono{font-family:var(--font-mono)}.container{width:100%;max-width:var(--container-width);padding:var(--container-pad);margin:0 auto}.section{padding:var(--section-padding);position:relative;overflow:hidden}.section-label{font-family:var(--font-mono);letter-spacing:.25em;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:1rem;font-size:.75rem;font-weight:500;display:inline-block}.section-title{color:var(--text-primary);margin-bottom:1rem;font-size:clamp(1.75rem,3.5vw,3rem);font-weight:700}.section-subtitle{color:var(--text-secondary);max-width:640px;font-size:1.125rem;line-height:1.75}.section-header{margin-bottom:4rem}.section-header--center{text-align:center}.section-header--center .section-subtitle{margin:0 auto}.gradient-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glow-cyan{box-shadow:var(--glow-cyan)}.glow-violet{box-shadow:var(--glow-violet)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.animate-on-scroll{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.animate-on-scroll{opacity:1;transition:none;transform:none}}
