:root{--ink:#1E3442;--text:#2B3A44;--muted:#5E6E78;--paper:#F5F7F6;--sage:#DCE5DF;--brass:#A8823A;--line:#C9D3CE;--serif:"Newsreader",Georgia,serif;--sans:"Instrument Sans",system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--serif);font-size:1.15rem;line-height:1.75}
a{color:var(--ink);text-decoration-color:var(--brass);text-underline-offset:3px}
a:focus-visible{outline:3px solid var(--brass);outline-offset:3px}
.top{max-width:1120px;margin:0 auto;padding:22px 24px;display:flex;justify-content:space-between;align-items:center;font-family:var(--sans);font-size:.95rem}
.brand{font-family:var(--serif);font-size:1.2rem;font-weight:600;color:var(--ink);text-decoration:none}
.brand small{display:block;font-family:var(--sans);font-size:.78rem;font-weight:400;color:var(--muted)}
article{max-width:720px;margin:0 auto;padding:32px 24px 64px}
.meta{font-family:var(--sans);font-size:.92rem;color:var(--muted);margin:0 0 8px}
h1{font-weight:500;font-size:clamp(2rem,4.6vw,2.9rem);line-height:1.12;color:var(--ink);margin:0 0 20px;letter-spacing:-.01em}
.lede{font-size:1.25rem;color:var(--text);margin:0 0 36px}
h2{font-family:var(--sans);font-weight:600;font-size:1.2rem;color:var(--ink);margin:44px 0 10px}
ul,ol{padding-left:1.3em}
li{margin:6px 0}
.box{background:var(--sage);border-left:3px solid var(--brass);padding:18px 22px;margin:28px 0;font-size:1.05rem}
.box p{margin:0}
.author{border-top:1px solid var(--line);margin-top:56px;padding-top:24px;font-family:var(--sans);font-size:.98rem}
.author b{color:var(--ink)}
.back{display:inline-block;margin-top:24px;font-family:var(--sans)}
footer{background:var(--ink);color:#C8D3DA;font-family:var(--sans);font-size:.9rem;padding:32px 24px}
footer p{max-width:1072px;margin:4px auto}
