:root[data-theme=light]{--background:#f8fafc;--surface:#fff;--surface-hover:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--border-subtle:#0f172a1a;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--glow-opacity:.2;--glow-blend:soft-light}:root[data-theme=dark]{--background:#0d0d12;--surface:#1a1a24;--surface-hover:#232332;--text-primary:#fff;--text-secondary:#a0a0b0;--border-subtle:#ffffff1a;--shadow-sm:none;--shadow-md:none;--glow-opacity:.5;--glow-blend:screen}:root{--brand-gradient:linear-gradient(135deg, #ff0080, #7928ca);--brand-gradient-hover:linear-gradient(135deg, #f39, #913bdb);--accent-purple:#7928ca;--accent-pink:#ff0080;--accent-cyan:#00f0ff;--font-inter:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--transition-theme:background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--background);max-width:100vw;color:var(--text-primary);font-family:var(--font-inter);scroll-behavior:smooth;line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}.heading-1{letter-spacing:-.015em;font-size:clamp(2rem,4.5vw,4rem);font-weight:800;line-height:1.15}.heading-2{font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.2}.text-gradient{background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:inline-block}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 2rem}.section-padding{padding:6rem 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.8s cubic-bezier(.16,1,.3,1) forwards fadeIn}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.scroll-reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s cubic-bezier(.25,1,.5,1),transform .8s cubic-bezier(.25,1,.5,1);transform:translateY(40px)}.scroll-reveal.is-visible{opacity:1;transform:translateY(0)}
