:root { --bg:#fbfaf7; --fg:#1f1d1a; --muted:#6b6560; --rule:#e4e0d8; --accent:#9a6b3f; }
@media (prefers-color-scheme: dark) {
  :root { --bg:#161513; --fg:#e8e4dd; --muted:#9a948c; --rule:#2d2b27; --accent:#c89a68; }
}
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg);
  font:17px/1.65 Georgia,"Iowan Old Style","Times New Roman",serif; -webkit-font-smoothing:antialiased; }
.wrap { max-width:40rem; margin:0 auto; padding:4rem 1.5rem 5rem; }
header { border-bottom:1px solid var(--rule); padding-bottom:1.5rem; margin-bottom:2.5rem;
  display:flex; justify-content:space-between; align-items:baseline; gap:1rem; flex-wrap:wrap; }
.brand { font-size:1.5rem; margin:0; letter-spacing:.02em; font-weight:600; }
.brand a { color:inherit; text-decoration:none; }
nav { font-family:system-ui,sans-serif; font-size:.85rem; }
nav a { color:var(--muted); text-decoration:none; margin-left:1rem; }
nav a:hover { color:var(--accent); }
.tag { color:var(--muted); font-size:.95rem; font-style:italic; margin:.3rem 0 0; width:100%; }
h2 { font-family:system-ui,sans-serif; font-size:.78rem; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--muted); margin:2.5rem 0 1rem; }
article { margin-bottom:1.8rem; }
article h3 { font-size:1.1rem; margin:0 0 .2rem; font-weight:600; }
article h3 a { color:inherit; text-decoration:none; }
article h3 a:hover { color:var(--accent); }
time { display:block; font-family:system-ui,sans-serif; font-size:.75rem; color:var(--muted);
  letter-spacing:.05em; margin-bottom:.5rem; }
h1.title { font-size:1.6rem; margin:0 0 .2rem; line-height:1.25; }
p { margin:0 0 1rem; }
a { color:var(--accent); }
footer { margin-top:4rem; padding-top:1.5rem; border-top:1px solid var(--rule);
  color:var(--muted); font-size:.85rem; font-family:system-ui,sans-serif; }
