@font-face { font-family: Fraunces; font-weight: 600; font-display: swap; src: url(/assets/fonts/Fraunces-600.ttf) format("truetype"); }
@font-face { font-family: Fraunces; font-weight: 700; font-display: swap; src: url(/assets/fonts/Fraunces-700.ttf) format("truetype"); }
@font-face { font-family: Nunito; font-weight: 500; font-display: swap; src: url(/assets/fonts/Nunito-500.ttf) format("truetype"); }
@font-face { font-family: Nunito; font-weight: 700; font-display: swap; src: url(/assets/fonts/Nunito-700.ttf) format("truetype"); }
@font-face { font-family: Nunito; font-weight: 800; font-display: swap; src: url(/assets/fonts/Nunito-800.ttf) format("truetype"); }
:root { --paper: #f5f2e9; --ink: #263f32; --muted: #596153; --line: #cdd0be; --rust: #a04630; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 24px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 500 17px/1.65 Nunito, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: 5px; }
a:hover { color: var(--rust); }
:focus-visible { outline: 2px solid var(--rust); outline-offset: 6px; }
h1, h2, h3 { font-family: Fraunces, Georgia, serif; font-weight: 600; line-height: 1.1; }
.wrap { width: min(1200px, calc(100% - 80px)); margin-inline: auto; }
.skip-link { position: absolute; top: -100px; left: 20px; z-index: 10; padding: 10px 20px; background: var(--paper); }
.skip-link:focus { top: 10px; }
.bar { width: min(1000px, calc(100% - 48px)); margin: auto; padding-block: 26px; border-bottom: 1px solid var(--line); }
.bar a { display: inline-block; }
.bar img { width: 135px; }
.doc { width: min(700px, calc(100% - 48px)); margin: 64px auto 80px; }
.doc h1 { font-size: clamp(38px, 6vw, 58px); margin: 0 0 14px; letter-spacing: -.04em; }
.doc h2 { font-size: 25px; margin: 36px 0 10px; }
.doc p { margin: 0; color: var(--muted); }
.doc .updated { font-size: 14px; margin-bottom: 44px; }
.doc .doc-contact { margin-top: 48px; padding-top: 8px; border-top: 1px solid var(--line); }
.doc-contact a { overflow-wrap: anywhere; }
.doc-footer { width: min(1000px, calc(100% - 48px)); margin: auto; padding: 24px 0 36px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 16px 26px; font-size: 14px; }
.doc-footer a { text-decoration: none; }
@media (max-width: 600px) { .wrap { width: calc(100% - 40px); } .doc { margin-top: 40px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
