/* Hallmark v2 | shape: Long Document | theme: Almanac, text-only adaptation | signature: personal inbox note | genre: editorial */
/* Critique: factual documents need readable type and direct links, not marketing sections. */
/* waive: theme fonts replaced by system fonts to keep the site self-contained; no product imagery is needed for policy pages. */
:root { --paper: #f5f4ee; --ink: #20312f; --muted: #52635f; --rule: #cbd1c7; --link: #1d6252; --focus: #965500; --font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --font-heading: Georgia, "Times New Roman", serif; }
* { box-sizing: border-box; }
html, body { overflow-x: clip; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 17px/1.75 var(--font-body); }
header, main, footer { width: min(100% - 48px, 780px); margin-inline: auto; }
header { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 16px; padding-block: 32px; border-bottom: 1px solid var(--rule); }
a { color: var(--link); text-underline-offset: .2em; }
a:hover { text-decoration-thickness: 2px; }
a:active { color: var(--ink); }
a:focus-visible { outline: 2px solid var(--focus); outline-offset: 5px; }
.brand { color: var(--ink); font-weight: 650; text-decoration: none; }
nav { display: flex; gap: 24px; font-size: 15px; }
nav [aria-current] { color: var(--ink); font-weight: 650; }
main { padding-block: 64px 72px; }
h1, h2 { font-family: var(--font-heading); font-weight: 400; line-height: 1.15; overflow-wrap: break-word; min-width: 0; text-wrap: balance; }
h1 { max-width: 720px; font-size: clamp(38px, 6vw, 66px); letter-spacing: -.025em; margin: 0 0 24px; }
h2 { font-size: 28px; margin: 0 0 16px; }
p { max-width: 66ch; margin: 0 0 20px; }
.intro { font-size: 21px; color: var(--muted); max-width: 50ch; }
.date { font-size: 14px; color: var(--muted); margin-top: 24px; }
section { margin-top: 44px; }
code { font-size: .95em; overflow-wrap: anywhere; }
footer { display: flex; flex-wrap: wrap; gap: 12px 24px; border-top: 1px solid var(--rule); padding-block: 24px 40px; font-size: 14px; color: var(--muted); }
.skip { position: absolute; transform: translateY(-180%); background: var(--paper); padding: 12px 20px; }
.skip:focus-visible { transform: translateY(0); }
@media (max-width: 480px) { header, main, footer { width: calc(100% - 40px); } header { padding-block: 24px; } main { padding-block: 40px 52px; } h2 { font-size: 25px; } }
