
:root { --ink: #1b1b1a; --soft: #6b6b66; --rule: #e4e1da; --accent: #2f4753; }
* { box-sizing: border-box; }
body { margin: 0; color: var(--ink); background: #fff;
  font: 1.05rem/1.6 Georgia, "Times New Roman", serif; }
.wrap { max-width: 40rem; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
a { color: var(--accent); }
h1 { line-height: 1.15; margin: 0.2rem 0 0.6rem; }
h2 { font-size: 1.25rem; margin: 0.1rem 0 0.4rem; }
h2 a { color: var(--ink); text-decoration: none; }
h2 a:hover { text-decoration: underline; }
header { border-bottom: 1px solid var(--rule); padding-bottom: 1.25rem; margin-bottom: 1.5rem; }
.crumb { font-size: 0.85rem; }
.crumb a { color: var(--soft); text-decoration: none; }
.bio { color: var(--soft); margin: 0 0 0.75rem; }
.elsewhere { font-size: 0.9rem; }
.item { border-bottom: 1px solid var(--rule); padding: 1.25rem 0; }
.meta, .date, .src { font-size: 0.8rem; color: var(--soft); }
.src { text-transform: uppercase; letter-spacing: 0.06em; margin-left: 0.5rem; }
.badge { background: var(--accent); color: #fff; font-size: 0.7rem;
  padding: 0.1rem 0.45rem; border-radius: 2px; text-transform: uppercase;
  letter-spacing: 0.06em; margin-left: 0.5rem; }
.author { color: var(--soft); }
.permalink { text-decoration: none; }
.post-body img { max-width: 100%; height: auto; }
.people { list-style: none; padding: 0; font-size: 1.2rem; }
.people li { padding: 0.5rem 0; border-bottom: 1px solid var(--rule); }
footer { margin-top: 2rem; font-size: 0.85rem; color: var(--soft); }
