:root{--color-bg: #e8ebe7;--color-surface: #f1f3f0;--color-text: #1c2321;--color-text-muted: #404945;--color-border: #c5cbc5;--color-accent: #0d6254;--color-accent-contrast: #ffffff;--color-signal: #b45f06;--font-display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font-sans: "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2.5rem;--space-5: 4rem;--max-width: 68rem;--measure: 40rem;--radius: 6px}[data-theme=dark]{--color-bg: #111413;--color-surface: #181c1b;--color-text: #e8ebea;--color-text-muted: #9ba5a1;--color-border: #2a302e;--color-accent: #5fc2ae;--color-accent-contrast: #0d1110;--color-signal: #f0a347}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:1.0625rem;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .15s ease,color .15s ease}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;line-height:1.15;margin:0 0 var(--space-2);color:var(--color-text)}h1{font-size:clamp(2.6rem,5vw + 1rem,4.5rem);letter-spacing:-.02em}h2{font-size:clamp(1.75rem,2vw + 1rem,2.5rem);letter-spacing:-.01em}h3{font-size:1.2rem}p{margin:0 0 var(--space-2);color:var(--color-text-muted);max-width:var(--measure)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:3px}img{max-width:100%;display:block}button{font-family:inherit}.btn{display:inline-block;padding:.65rem 1.3rem;border-radius:var(--radius);font-weight:600;font-size:.95rem;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn:hover{text-decoration:none}.btn--primary{background-color:var(--color-accent);color:var(--color-accent-contrast)}.btn--primary:hover{filter:brightness(1.1)}.btn--secondary{border:1px solid var(--color-border);color:var(--color-text)}.btn--secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.page{max-width:var(--max-width);margin:0 auto;padding:var(--space-5) var(--space-3);border-top:1px solid var(--color-border);scroll-margin-top:4.5rem}
