:root{--max-width:1200px;--nav-height:64px;--border-radius:8px;--border-radius-sm:4px;--border-radius-lg:12px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #00000012;--shadow-lg:0 10px 15px #0000001a;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease}[data-theme=dark]{--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px #0006;--shadow-lg:0 10px 15px #00000080;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease}
.ai-layout-default{max-width:1100px;font-family:var(--font-body,system-ui);color:var(--color-text);margin:0 auto;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,3vw,2rem);line-height:1.65}.ai-layout-narrow{max-width:640px;font-family:var(--font-display,"Source Sans Pro", sans-serif);color:var(--color-text);text-align:center;margin:0 auto;padding:clamp(3rem,7vw,6rem) clamp(1rem,3vw,2rem);line-height:1.85}.ai-layout-wide{width:100%;font-family:var(--font-body,system-ui);color:var(--color-text);margin:0 auto}.ai-layout-wide>div>section:first-of-type img,.ai-layout-wide>div>figure:first-of-type img{object-fit:cover;width:100%;height:clamp(280px,50vh,560px)}.ai-layout-essay{max-width:1200px;font-family:var(--font-body,system-ui);color:var(--color-text);gap:clamp(1.5rem,4vw,3rem);margin:0 auto;padding:clamp(2rem,5vw,4rem) clamp(.5rem,2vw,1.5rem);display:grid}[class^=ai-layout-] h1{font-family:var(--font-display,"Source Sans Pro", sans-serif);color:var(--color-text-heading);letter-spacing:-.01em;margin:0 0 .5em;font-size:clamp(2rem,5vw,3.25rem);font-weight:600;line-height:1.15}[class^=ai-layout-] h2{font-family:var(--font-display,"Source Sans Pro", sans-serif);color:var(--color-text-heading);margin:2em 0 .5em;font-size:clamp(1.4rem,3vw,1.875rem);font-weight:600}[class^=ai-layout-] h3{font-family:var(--font-display,"Source Sans Pro", sans-serif);color:var(--color-text-heading);margin:1.5em 0 .5em;font-size:1.25rem;font-weight:600}[class^=ai-layout-] p{margin:0 0 1em}[class^=ai-layout-] a{color:var(--color-primary);text-underline-offset:.15em;text-decoration:underline}[class^=ai-layout-] img{max-width:100%;height:auto}[class^=ai-layout-] figure{margin:1.5em 0}[class^=ai-layout-] figcaption{color:var(--color-text-secondary);text-align:center;margin-top:.5em;font-size:.875rem}[class^=ai-layout-] blockquote{border-left:3px solid var(--color-primary);color:var(--color-text);margin:1.5em 0;padding:.5em 0 .5em 1.25em;font-style:italic}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:clip}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);transition:background-color var(--transition-normal), color var(--transition-normal);overflow-wrap:break-word;line-height:1.6;overflow-x:clip}img,video,iframe,svg{max-width:100%}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section{padding:4rem 0}.section-alt{background-color:var(--color-bg-alt)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
