:root {--primary: #191970;--primary-hover: #2525a7;--primary-dark: #11114b;--primary-subtle: #eeeefb;--secondary: #11114b;--container-prose: 62rem;--primary-400: #4A4AC9;--primary-300: #9292E7;--secondary-hover: #3D3D70;--secondary-subtle: #E8E8F0;--accent: #3B82F6;--accent-hover: #2563EB;--accent-subtle: #DBEAFE;--white: #FFFFFF;--grey-50: #f6f6f9;--grey-100: #f0f0f5;--grey-200: #e1e1ea;--grey-300: #d0d0dc;--grey-400: #a3a3b8;--grey-500: #70708f;--grey-600: #54546d;--grey-700: #3d3d51;--grey-800: #2b2b3b;--grey-900: #1b1b27;--black: #030315;--text-heading: var(--black);--text-body: var(--black);--text-muted: var(--grey-600);--text-light: var(--grey-100);--text-link: var(--primary);--text-link-hover: var(--primary-hover);--bg-page: var(--white);--bg-surface: var(--grey-100);--bg-surface-alt: var(--grey-50);--bg-card: var(--white);--bg-input: var(--white);--bg-elevated: var(--white);--bg-dark: var(--black);--bg-primary: var(--primary);--bg-overlay: rgba(23, 23, 54, 0.6);--border-default: var(--grey-300);--border-strong: var(--grey-300);--border-focus: var(--primary);--success: #22C55E;--success-subtle: #DCFCE7;--success-dark: #166534;--warning: #F59E0B;--warning-subtle: #FEF3C7;--warning-dark: #92400E;--error: #EF4444;--error-subtle: #FEE2E2;--error-dark: #991B1B;--info: #3B82F6;--info-subtle: #DBEAFE;--info-dark: #1E40AF;--font-base: 'Work Sans', system-ui, -apple-system, sans-serif;--font-heading: 'Work Sans', system-ui, -apple-system, sans-serif;--font-mono: 'JetBrains Mono', 'Fira Code', monospace;--text-xs: clamp(1.2rem, 1.152rem + 0.15vw, 1.3rem);--text-sm: clamp(1.3rem, 1.248rem + 0.2vw, 1.4rem);--text-base: clamp(1.5rem, 1.44rem + 0.2vw, 1.6rem);--text-md: clamp(1.6rem, 1.52rem + 0.25vw, 1.8rem);--text-lg: clamp(1.8rem, 1.68rem + 0.4vw, 2rem);--text-xl: clamp(2rem, 1.76rem + 0.75vw, 2.4rem);--text-2xl: clamp(2.4rem, 2.08rem + 1vw, 3rem);--text-3xl: clamp(3rem, 2.48rem + 1.6vw, 4rem);--text-4xl: clamp(3.6rem, 2.88rem + 2.25vw, 5.2rem);--text-5xl: clamp(4.4rem, 3.36rem + 3.25vw, 6.8rem);--text-6xl: clamp(5.2rem, 3.84rem + 4.25vw, 8.8rem);--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--leading-none: 1;--leading-tight: 1.2;--leading-snug: 1.35;--leading-normal: 1.5;--leading-relaxed: 1.65;--leading-loose: 2;--tracking-tighter: -0.04em;--tracking-tight: -0.02em;--tracking-normal: 0;--tracking-wide: 0.05em;--tracking-wider: 0.1em;--tracking-widest: 0.15em;--space-3xs: clamp(0.4rem, 0.352rem + 0.15vw, 0.6rem);--space-2xs: clamp(0.6rem, 0.528rem + 0.2vw, 0.8rem);--space-xs: clamp(0.8rem, 0.72rem + 0.25vw, 1.2rem);--space-s: clamp(1.2rem, 1.04rem + 0.5vw, 1.6rem);--space-m: clamp(1.6rem, 1.36rem + 0.75vw, 2.4rem);--space-l: clamp(2.4rem, 1.92rem + 1.5vw, 4rem);--space-xl: clamp(3.2rem, 2.4rem + 2.5vw, 5.6rem);--space-2xl: clamp(4.8rem, 3.52rem + 4vw, 8rem);--space-3xl: clamp(6.4rem, 4.8rem + 5vw, 11.2rem);--section-xs: var(--space-l);--section-s: var(--space-xl);--section-m: var(--space-2xl);--section-l: var(--space-3xl);--container-width: 120rem;--container-narrow: 88rem;--container-wide: 128rem;--container-full: 100%;--container-gutter: var(--space-m);--radius-xs: 0.4rem;--radius-s: 0.6rem;--radius-m: 0.8rem;--radius-l: 1.2rem;--radius-xl: 1.6rem;--radius-2xl: 2.4rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0,0,0,0.05);--shadow-s: 0 1px 3px rgba(0,0,0,0.08);--shadow-m: 0 4px 12px rgba(0,0,0,0.1);--shadow-l: 0 8px 30px rgba(0,0,0,0.12);--shadow-xl: 0 20px 50px rgba(0,0,0,0.15);--shadow-inner: inset 0 2px 4px rgba(0,0,0,0.06);--ease-fast: 0.15s ease;--ease: 0.2s cubic-bezier(0.4, 0, 0.2, 1);--ease-slow: 0.4s cubic-bezier(0.4, 0, 0.2, 1);--ease-bounce: 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);--z-dropdown: 100;--z-sticky: 200;--z-offcanvas: 300;--z-modal: 400;--z-toast: 500;--z-skip: 9999;--h-screen: 100vh;--h-dvh: 100dvh;--h-full: 100%;--flex-1: 1;--header-height: 8rem;--size-1: clamp(0.8rem, 0.75rem + 0.15vw, 1rem);--size-1.5: clamp(1.2rem, 1.12rem + 0.25vw, 1.5rem);--size-2: clamp(1.6rem, 1.5rem + 0.35vw, 2rem);--size-2.5: clamp(2rem, 1.88rem + 0.4vw, 2.5rem);--size-3: clamp(2.4rem, 2.25rem + 0.5vw, 3rem);--size-4: clamp(3.2rem, 3rem + 0.75vw, 4rem);--size-5: clamp(4rem, 3.7rem + 0.9vw, 5rem);--size-6: clamp(4.8rem, 4.5rem + 1vw, 6rem);--size-8: clamp(6.4rem, 6rem + 1.5vw, 8rem);--size-10: clamp(8rem, 7.5rem + 1.75vw, 10rem);--size-12: clamp(9.6rem, 9rem + 2vw, 12rem);--size-16: clamp(12.8rem, 12rem + 3vw, 16rem);--size-20: clamp(16rem, 15rem + 3.5vw, 20rem);--size-24: clamp(19.2rem, 18rem + 4vw, 24rem);--size-32: clamp(25.6rem, 24rem + 5.5vw, 32rem);--bg-section: var(--grey-100);}