:root{
  --bg:#fbfaf8; --fg:#22201d; --muted:#6b6560; --rule:#e4e0da;
  --accent:#1f6f4a; --maxw:44rem;
}
*{box-sizing:border-box}
body{
  margin:0; background:var(--bg); color:var(--fg);
  font:16px/1.65 Charter,"Iowan Old Style",Georgia,serif;
  -webkit-text-size-adjust:100%;
}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.25rem}
header.site{border-bottom:1px solid var(--rule);padding:1.75rem 0 1.25rem;margin-bottom:2.25rem}
header.site .wrap{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:baseline}
.brand{font-weight:600;font-size:1.05rem;letter-spacing:.01em;text-decoration:none;color:var(--fg)}
.brand span{color:var(--accent)}
nav{margin-left:auto;display:flex;gap:1.25rem}
nav a{color:var(--muted);text-decoration:none;font-size:.9rem}
nav a:hover{color:var(--accent)}
h1{font-size:1.7rem;line-height:1.25;margin:0 0 .4rem;font-weight:600}
h2{font-size:1.25rem;margin:2.25rem 0 .5rem;font-weight:600}
p{margin:0 0 1.15rem}
a{color:var(--accent)}
.lede{color:var(--muted);font-size:1.02rem;margin-bottom:2.5rem}
article.card{padding:1.5rem 0;border-bottom:1px solid var(--rule)}
article.card:last-of-type{border-bottom:0}
article.card h3{margin:0 0 .3rem;font-size:1.12rem;font-weight:600}
article.card h3 a{text-decoration:none;color:var(--fg)}
article.card h3 a:hover{color:var(--accent)}
.meta{color:var(--muted);font-size:.82rem;letter-spacing:.02em;margin-bottom:.5rem}
article.card p{margin:0;color:#403b36}
.post{padding-bottom:2rem}
.post .meta{margin-bottom:1.75rem}
blockquote{margin:1.5rem 0;padding-left:1.1rem;border-left:3px solid var(--rule);color:var(--muted);font-style:italic}
footer.site{border-top:1px solid var(--rule);margin-top:3.5rem;padding:1.5rem 0 3rem;color:var(--muted);font-size:.82rem}
footer.site p{margin:0 0 .4rem}
.back{display:inline-block;margin-bottom:1.5rem;font-size:.85rem;color:var(--muted);text-decoration:none}
.back:hover{color:var(--accent)}
@media (max-width:32rem){nav{margin-left:0;width:100%}h1{font-size:1.45rem}}
