@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--background: 0 0% 100%;--foreground: 222.2 84% 4.9%;--surface: 210 40% 96.1%;--border: 214.3 31.8% 91.4%;--muted: 215.4 16.3% 46.9%;--muted-foreground: 215.4 16.3% 46.9%;--primary: 245 82% 60%}.dark{--background: 222.2 84% 4.9%;--foreground: 210 40% 98%;--surface: 222.2 47.4% 11.2%;--border: 217.2 32.6% 17.5%;--muted: 215 20.2% 65.1%;--muted-foreground: 213 27% 84%;--primary: 245 90% 68%}}@layer components{.typo-eyebrow{font-size:.75rem;font-weight:900;letter-spacing:.35em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.typo-h1{font-size:clamp(3rem,6.5vw,6rem);line-height:.95;font-weight:900;letter-spacing:-.04em;color:hsl(var(--foreground));font-style:italic}.typo-h2{font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;font-weight:900;letter-spacing:-.03em;color:hsl(var(--foreground));font-style:italic}.typo-h3{font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.15;font-weight:900;letter-spacing:-.02em;color:hsl(var(--foreground));font-style:italic}.typo-body{font-size:1.125rem;line-height:1.8;font-weight:500;color:hsl(var(--foreground) / .85)}.typo-lead{font-size:clamp(1.5rem,3vw,2rem);line-height:1.25;font-weight:500;color:hsl(var(--muted-foreground));font-style:italic;opacity:.85}.typo-caption{font-size:.875rem;line-height:1.6;font-weight:500;color:hsl(var(--muted-foreground))}.typo-micro{font-size:.625rem;line-height:1.4;font-weight:900;letter-spacing:.2em;text-transform:uppercase;color:hsl(var(--muted-foreground))}.typo-code{font-size:.75rem;line-height:1.5;font-weight:500;color:hsl(var(--muted-foreground))}.typo-button-sm{font-size:.75rem;line-height:1.2;font-weight:900}.typo-button{font-size:.875rem;line-height:1.25;font-weight:900}.typo-button-lg{font-size:1rem;line-height:1.25;font-weight:900}.prose{font-size:1.125rem;line-height:1.8;color:hsl(var(--foreground) / .85);width:100%;margin:0 auto;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.prose p,.prose ul,.prose ol{max-width:720px;margin-left:auto;margin-right:auto;margin-bottom:2.5rem}.prose blockquote{max-width:720px;margin-left:auto;margin-right:auto;margin-bottom:2.5rem;padding-left:1.5rem;border-left:3px solid hsl(var(--border));color:hsl(var(--muted-foreground));font-style:italic}.prose ul,.prose ol{padding-left:2.5rem}.prose li{position:relative;margin-bottom:1.25rem;padding-left:.5rem}.prose li:last-child{margin-bottom:0}.prose ul li:before{content:"";position:absolute;left:-1.75rem;top:.85em;transform:translateY(-50%);width:.5rem;height:.5rem;background:hsl(var(--primary));border-radius:50%;box-shadow:0 0 10px hsl(var(--primary) / .3)}.prose ol{counter-reset:list-counter;list-style:none}.prose ol li{counter-increment:list-counter}.prose ol li:before{content:counter(list-counter) ".";position:absolute;left:-2.5rem;top:0;width:2rem;text-align:right;font-weight:900;color:hsl(var(--primary));font-variant-numeric:tabular-nums;font-style:italic}.prose li>ul,.prose li>ol{margin-top:1.25rem;margin-bottom:1.25rem;padding-left:1.5rem}.prose p>strong:only-child{display:block;font-size:1.35rem;line-height:1.4;margin-top:4rem;margin-bottom:1.5rem;color:hsl(var(--foreground));font-weight:800}.prose p:first-of-type:first-letter{float:left;font-size:4.5rem;line-height:.75;margin-top:.5rem;margin-right:.75rem;font-weight:900;color:hsl(var(--primary));font-style:italic;text-transform:uppercase}.prose h1{max-width:800px;margin:6rem auto 2.5rem;font-weight:900;font-size:clamp(2.5rem,5.5vw,4.5rem);letter-spacing:-.04em;line-height:.95;font-style:italic;color:hsl(var(--foreground))}.prose h2{max-width:800px;margin:8rem auto 2.5rem;font-weight:900;font-size:clamp(2rem,4vw,2.75rem);letter-spacing:-.03em;line-height:1.05;font-style:italic;border-bottom:3px solid hsl(var(--border));padding-bottom:.5rem}.prose h3{max-width:800px;margin:5rem auto 1.75rem;font-weight:900;font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.02em;line-height:1.15;font-style:italic;color:hsl(var(--foreground))}.prose .cinematic-breakout{max-width:1000px;margin:6rem auto}}
