:root { --ink:#1f2328; --muted:#6b7280; --bg:#fbfbfa; --rule:#e5e3df; }
* { box-sizing:border-box; }
body {
  margin:0 auto; padding:48px 20px 80px; max-width:40rem;
  font:17px/1.65 Georgia,"Times New Roman",serif;
  color:var(--ink); background:var(--bg);
}
header { border-bottom:1px solid var(--rule); padding-bottom:24px; margin-bottom:40px; }
h1 { margin:0 0 8px; font-size:2rem; font-weight:600; letter-spacing:-.01em; }
.lead { margin:0; color:var(--muted); font-size:1.05rem; }
article { margin-bottom:40px; }
h2 { margin:0 0 4px; font-size:1.25rem; font-weight:600; }
.date { margin:0 0 12px; color:var(--muted); font-size:.9rem; }
p { margin:0 0 12px; }
footer { border-top:1px solid var(--rule); padding-top:24px; color:var(--muted); font-size:.95rem; }
a { color:#2b5fa8; }
@media (prefers-color-scheme: dark) {
  :root { --ink:#e8e6e3; --muted:#9aa0a6; --bg:#16181a; --rule:#2c2f33; }
  a { color:#89b4f8; }
}
