:root{--bg:#F4F1EA;--fg:#1C1C1A;--muted:#5F5C56;--surface:#E4DED2;--line:#D3CCBE;--accent:#B8432B;--btn:#1C1C1A;--btn-ink:#F4F1EA;--dark:#1C1C1A;--dark-ink:#F4F1EA;--dark-muted:#C9C3B6}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#161615;--fg:#ECE8E0;--muted:#A9A397;--surface:#22211F;--line:#3A3833;--accent:#E0765C;--btn:#ECE8E0;--btn-ink:#161615;--dark:#22211F;--dark-ink:#ECE8E0;--dark-muted:#A9A397;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#161615;--fg:#ECE8E0;--muted:#A9A397;--surface:#22211F;--line:#3A3833;--accent:#E0765C;--btn:#ECE8E0;--btn-ink:#161615;--dark:#22211F;--dark-ink:#ECE8E0;--dark-muted:#A9A397;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,"Helvetica Neue",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6;font-size:1.0625rem}
a{color:var(--fg);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--accent)}
a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;margin:0;text-wrap:balance;line-height:1.15}
p{margin:0}
.wrap{max-width:68rem;margin:0 auto;padding-inline:1.25rem}
.narrow{max-width:44rem}
.eyebrow{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--accent)}
.muted{color:var(--muted)}
.site-head{border-bottom:1px solid var(--line)}
.site-head .wrap{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.1rem;flex-wrap:wrap}
.brand{font-family:Georgia,serif;font-size:1.2rem;text-decoration:none;color:var(--fg)}
.nav{display:flex;gap:1.25rem;flex-wrap:wrap;font-size:.95rem}
.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}
.btn{display:inline-block;background:var(--btn);color:var(--btn-ink);text-decoration:none;font-weight:700;font-size:.95rem;padding:.85rem 1.3rem;border-radius:4px;border:1px solid var(--btn)}
.btn:hover{color:var(--btn-ink);opacity:.88}
.btn.ghost{background:transparent;color:var(--fg);border-color:var(--fg)}
.btn.ghost:hover{color:var(--fg);background:var(--surface)}
.btns{display:flex;gap:.75rem;flex-wrap:wrap}
section{padding-block:clamp(3rem,7vw,5.5rem)}
section+section{border-top:1px solid var(--line)}
.site-foot{border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.site-foot .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-block:1.5rem}
.site-foot nav{display:flex;gap:1.25rem}
.site-foot a{color:var(--muted)}
