:root { --ground:#F7F8F6; --surface:#FFFFFF; --ink:#1C2321; --muted:#56615C; --line:#D9DFDB; --accent:#2F6A4F; --soft:#E3EEE7; }
* { box-sizing: border-box; }
body { margin:0; background:var(--ground); color:var(--ink); font:18px/1.6 "Atkinson Hyperlegible Next","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
main, header, footer { max-width: 680px; margin: 0 auto; padding: 0 20px; }
header { padding-top: 28px; display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
header a.name { font-family: Literata, Georgia, serif; font-weight:700; font-size:24px; color:var(--ink); text-decoration:none; }
nav a { margin-left:16px; }
a { color:var(--accent); }
h1, h2 { font-family: Literata, Georgia, serif; line-height:1.2; }
h1 { font-size: 40px; margin: 48px 0 12px; }
h2 { font-size: 24px; margin: 36px 0 8px; }
.lead { font-size: 21px; color: var(--muted); }
.card { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:20px; margin:16px 0; }
.card h2 { margin-top:0; font-size:21px; }
.tag { display:inline-block; background:var(--soft); border-radius:999px; padding:4px 14px; font-size:16px; font-weight:600; }
footer { color:var(--muted); font-size:16px; padding-top:48px; padding-bottom:40px; }
footer a { margin-right:16px; }
