:root { --ink:#222; --muted:#777; --paper:#fdfdfb; --accent:#2b6d8f; }
* { box-sizing: border-box; }
body { margin:0; background:var(--paper); color:var(--ink);
  font:17px/1.65 -apple-system,"Segoe UI",Roboto,Helvetica,sans-serif; }
main { max-width:44rem; margin:0 auto; padding:0 1.25rem 4rem; }
header.site { max-width:44rem; margin:0 auto; padding:3rem 1.25rem 1rem; border-bottom:1px solid #e6e3dc; }
header.site h1 { margin:0; font-size:2rem; letter-spacing:-.02em; font-family:Georgia,serif; }
header.site h1 a { color:var(--ink); text-decoration:none; }
.tagline { color:var(--muted); margin:.25rem 0 1rem; }
nav a { color:var(--accent); text-decoration:none; margin-right:1rem; font-size:.95rem; }
article { padding:1.75rem 0; border-bottom:1px solid #eeeae2; }
article h2 { margin:0 0 .25rem; font-size:1.35rem; font-family:Georgia,serif; }
article h2 a { color:var(--ink); text-decoration:none; }
article h2 a:hover { color:var(--accent); }
.meta { color:var(--muted); font-size:.85rem; margin:0; }
.content img { max-width:100%; height:auto; display:block; margin:1.25rem 0; }
.content a { color:var(--accent); }
footer.site { max-width:44rem; margin:0 auto; padding:2rem 1.25rem; color:var(--muted); font-size:.85rem; }
