:root{--color-black:#0a0a0a;--color-white:#fafafa;--color-purple:#7c3aed;--color-purple-light:#8b5cf6;--color-purple-dark:#6d28d9;--color-purple-ghost:#7c3aed14;--color-purple-glow:#7c3aed4d;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--bg:var(--color-white);--bg-secondary:var(--color-gray-50);--bg-tertiary:var(--color-gray-100);--surface:var(--color-white);--surface-elevated:var(--color-white);--overlay:#0a0a0a99;--text-primary:var(--color-black);--text-secondary:var(--color-gray-600);--text-muted:var(--color-gray-400);--text-inverse:var(--color-white);--text-accent:var(--color-purple);--border:var(--color-gray-200);--border-hover:var(--color-gray-300);--border-focus:var(--color-purple);--border-accent:var(--color-purple);--primary:var(--color-purple);--primary-light:var(--color-purple-light);--primary-dark:var(--color-purple-dark);--primary-ghost:var(--color-purple-ghost);--primary-glow:var(--color-purple-glow);--font-display:"Permanent Marker", cursive;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:clamp(.625rem, .6rem + .1vw, .75rem);--text-sm:clamp(.75rem, .7rem + .15vw, .875rem);--text-base:clamp(.875rem, .85rem + .15vw, 1rem);--text-lg:clamp(1rem, .95rem + .25vw, 1.125rem);--text-xl:clamp(1.125rem, 1rem + .5vw, 1.25rem);--text-2xl:clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--text-3xl:clamp(1.5rem, 1.2rem + 1.5vw, 1.875rem);--text-4xl:clamp(1.875rem, 1.5rem + 2vw, 2.25rem);--text-5xl:clamp(2.25rem, 1.5rem + 3.5vw, 3rem);--text-6xl:clamp(2.75rem, 1.5rem + 5vw, 3.75rem);--text-7xl:clamp(3.25rem, 1.5rem + 7vw, 4.5rem);--leading-none:1;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.625;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--space-0:0;--space-px:1px;--space-0-5:.125rem;--space-1:.25rem;--space-1-5:.375rem;--space-2:.5rem;--space-2-5:.625rem;--space-3:.75rem;--space-3-5:.875rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-28:7rem;--space-32:8rem;--radius-none:0;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-xs:0 1px 2px #0a0a0a0d;--shadow-sm:0 1px 3px #0a0a0a14, 0 1px 2px #0a0a0a0f;--shadow-md:0 4px 6px -1px #0a0a0a14, 0 2px 4px -2px #0a0a0a0f;--shadow-lg:0 10px 15px -3px #0a0a0a14, 0 4px 6px -4px #0a0a0a0f;--shadow-xl:0 20px 25px -5px #0a0a0a1a, 0 8px 10px -6px #0a0a0a0f;--shadow-2xl:0 25px 50px -12px #0a0a0a40;--shadow-glow:0 0 20px var(--primary-glow);--shadow-inner:inset 0 2px 4px #0a0a0a0f;--duration-fast:.15s;--duration-base:.25s;--duration-slow:.4s;--duration-slower:.6s;--ease-default:cubic-bezier(.4, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-drawer:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--container-2xl:1440px;--container-padding:var(--space-4);--header-height:64px;--announcement-height:36px;--mobile-nav-height:64px}[data-theme=dark]{--bg:var(--color-gray-950);--bg-secondary:var(--color-gray-900);--bg-tertiary:var(--color-gray-800);--surface:var(--color-gray-900);--surface-elevated:var(--color-gray-800);--overlay:#000000b3;--text-primary:var(--color-white);--text-secondary:var(--color-gray-400);--text-muted:var(--color-gray-500);--text-inverse:var(--color-black);--border:var(--color-gray-800);--border-hover:var(--color-gray-700);--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0000004d;--shadow-xl:0 20px 25px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg);min-height:100vh;overflow-x:hidden}img,video,svg{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:none;outline:none}button{cursor:pointer}ul,ol{list-style:none}.container{width:100%;max-width:var(--container-xl);padding-left:var(--container-padding);padding-right:var(--container-padding);margin-left:auto;margin-right:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--primary-glow)}50%{box-shadow:0 0 0 12px #0000}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-10%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(0)}}@keyframes brushReveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.animate-on-scroll{opacity:0;transition:opacity var(--duration-slower) var(--ease-out), transform var(--duration-slower) var(--ease-out);transform:translateY(24px)}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}.stagger-item{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transform:translateY(24px)}.stagger-item.visible{opacity:1;transform:translateY(0)}.stagger-item:first-child{transition-delay:0s}.stagger-item:nth-child(2){transition-delay:.1s}.stagger-item:nth-child(3){transition-delay:.2s}.stagger-item:nth-child(4){transition-delay:.3s}.stagger-item:nth-child(5){transition-delay:.4s}.stagger-item:nth-child(6){transition-delay:.5s}.stagger-item:nth-child(7){transition-delay:.6s}.stagger-item:nth-child(8){transition-delay:.7s}.skeleton{background:var(--color-gray-200);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);animation:1.5s infinite shimmer;position:absolute;inset:0}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background-color:var(--color-purple);color:var(--color-white)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:768px){body{padding-bottom:var(--mobile-nav-height)}}@media (min-width:640px){:root{--container-padding:var(--space-6)}}@media (min-width:1024px){:root{--container-padding:var(--space-8)}}
