:root{--imd-emerald:#173f36;--imd-copper:#b77a56;--imd-ivory:#ede4d5;--imd-green:var(--imd-emerald);--imd-beige:var(--imd-ivory);--imd-navy:#14213a;--imd-emerald-deep:#10302a;--imd-emerald-soft:#24564a;--imd-copper-deep:#8a5535;--imd-copper-light:#d4a27f;--imd-white:#fbf9f5;--imd-ivory-soft:#f4efe6;--imd-ink:#1c2421;--imd-muted:#4f5a55;--imd-border:#d6ccbb;--imd-border-strong:#b9ad98;--imd-on-dark-muted:#ede4d5c7;--imd-on-dark-border:#ede4d533;--color-bg:var(--imd-white);--color-text:var(--imd-ink);--color-text-muted:var(--imd-muted);--color-heading:var(--imd-emerald);--color-surface:var(--imd-ivory);--color-surface-soft:var(--imd-ivory-soft);--color-border:var(--imd-border);--color-border-strong:var(--imd-border-strong);--color-accent:var(--imd-copper);--color-accent-text:var(--imd-copper-deep);--color-link:var(--imd-emerald);--color-focus:var(--imd-copper-deep);--color-surface-dark:var(--imd-emerald);--color-surface-deep:var(--imd-navy);--color-text-on-dark:var(--imd-ivory);--color-text-on-dark-muted:var(--imd-on-dark-muted);--color-border-on-dark:var(--imd-on-dark-border);--color-accent-on-dark:var(--imd-copper-light);--color-focus-on-dark:var(--imd-copper-light);--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-heading:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Times New Roman", serif;--font-mono:ui-monospace, "Cascadia Mono", "SF Mono", Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--text-xl:clamp(1.25rem, 1.12rem + .55vw, 1.5rem);--text-2xl:clamp(1.5rem, 1.25rem + 1.1vw, 2.125rem);--text-3xl:clamp(2rem, 1.45rem + 2.4vw, 3.25rem);--text-4xl:clamp(2.375rem, 1.6rem + 3.4vw, 4.25rem);--leading-body:1.65;--leading-tight:1.12;--leading-heading:1.2;--tracking-label:.16em;--tracking-wordmark:.12em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--section-space:clamp(3rem, 2rem + 4vw, 6rem);--hero-space-top:clamp(3rem, 2rem + 4.5vw, 6.5rem);--hero-space-bottom:clamp(2.5rem, 1.75rem + 3vw, 4.5rem);--width-reading:42rem;--width-content:74rem;--width-wide:90rem;--gutter:clamp(1.25rem, 4vw, 3rem);--header-height:4.75rem;--editorial-col-lead:40fr;--editorial-col-body:54fr;--editorial-col-gap:6%;--editorial-measure:56ch;--editorial-rule-width:9rem;--editorial-sticky-top:var(--space-6);--radius-sm:2px;--radius-md:4px;--rule-thin:1px;--rule-accent:2px;--shadow-soft:0 1px 2px #10302a0f, 0 8px 24px #10302a0f;--focus-ring:3px solid var(--color-focus);--focus-ring-on-dark:3px solid var(--color-focus-on-dark);--focus-offset:3px;--touch-target:44px;--button-height:3rem;--transition-fast:.15s ease}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;display:flex;overflow-x:hidden}main{flex:1 0 auto}main:focus{outline:none}h1,h2,h3,h4{font-family:var(--font-heading);line-height:var(--leading-heading);overflow-wrap:break-word;text-wrap:balance;margin:0;font-weight:400}p{text-wrap:pretty;margin:0}a{color:inherit}img,video{max-width:100%;height:auto;display:block}::selection{background:var(--imd-emerald);color:var(--imd-ivory)}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}[data-surface=dark] :focus-visible{outline:var(--focus-ring-on-dark)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--space-4);z-index:100;padding:var(--space-3) var(--space-5);background:var(--imd-ivory);color:var(--imd-emerald);border:var(--rule-accent) solid var(--imd-copper-deep);font-weight:600;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--space-3)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
