@font-face { font-family: Lora; font-weight: 600; font-display: swap; src: url(fonts/Lora_600SemiBold.ttf); }
@font-face { font-family: Inter; font-weight: 400; font-display: swap; src: url(fonts/Inter_400Regular.ttf); }
@font-face { font-family: Inter; font-weight: 600; font-display: swap; src: url(fonts/Inter_600SemiBold.ttf); }
:root { --ink: #263C30; --ink-soft: #4E6054; --paper: #F7F5EF; --surface: #FFFEFA; --line: #DCDACF; --accent: #244D3D; --mark: #F6E2B3; }
@media (prefers-color-scheme: dark) {
  :root { --ink: #EEF0E8; --ink-soft: #C3CABE; --paper: #16241C; --surface: #1D2E25; --line: #34463B; --accent: #9CCBB2; --mark: #6B5220; }
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 1rem/1.6 Inter, system-ui, sans-serif; }
.bar, main, footer { max-width: 44rem; margin: 0 auto; padding: 0 16px; }
.bar { display: flex; flex-wrap: wrap; gap: 8px 24px; align-items: baseline; justify-content: space-between; padding-top: 20px; padding-bottom: 20px; }
.brand { font: 600 1.25rem/1.3 Lora, Georgia, serif; color: var(--ink); text-decoration: none; }
nav { display: flex; flex-wrap: wrap; gap: 16px; }
nav a { color: var(--ink-soft); font-weight: 600; font-size: 0.9375rem; }
h1, h2, h3 { font-family: Lora, Georgia, serif; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
h1 { font-size: 1.75rem; margin: 24px 0 8px; }
h2 { font-size: 1.1875rem; margin: 32px 0 8px; }
h3 { font-size: 1rem; margin: 24px 0 4px; }
p, li { color: var(--ink-soft); overflow-wrap: anywhere; }
strong { color: var(--ink); }
a { color: var(--accent); }
ul { padding-left: 1.25rem; }
mark { background: var(--mark); color: var(--ink); padding: 0 4px; border-radius: 4px; }
.lead { font-size: 1.1875rem; color: var(--ink); }
.panel { background: var(--surface); border: 1px solid var(--line); border-radius: 12px; padding: 16px 20px; margin: 24px 0; }
.panel p { margin: 0; }
footer { margin-top: 48px; padding-top: 24px; padding-bottom: 40px; border-top: 1px solid var(--line); font-size: 0.875rem; }
