:root{--bg:#f3f6f4;--fg:#1f2a24;--muted:#5d6b63;--accent:#2f6b4f;--card:#ffffff;--rule:#d7e0da}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--fg)}
body{margin:0;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-size:17px;line-height:1.55}
a{color:var(--accent);text-underline-offset:2px}
a:hover{text-decoration-thickness:2px}
.wrap{max-width:860px;margin:0 auto;padding:0 20px}
header.site{border-bottom:1px solid var(--rule);padding:18px 0;background:var(--card)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between}
.brand{font-weight:600;letter-spacing:.02em;color:var(--fg);text-decoration:none;text-transform:uppercase;font-size:.95em}
nav a{margin-left:22px;color:var(--fg);text-decoration:none}
nav a.current,nav a:hover{color:var(--accent)}
main{padding:24px 0 40px}
h1{font-size:1.9em;line-height:1.2;margin:.6em 0 .4em}
h2{font-size:1.2em;margin:1.8em 0 .6em}
.lead{font-size:1.15em;color:var(--muted)}
.meta{color:var(--muted);font-size:.85em}
.more a{font-weight:600}
.entries{list-style:none;padding:0;margin:0}
.entries li{padding:14px 0;border-bottom:1px solid var(--rule)}
.entries li p{margin:.3em 0 0;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.cards li{background:var(--card);border:1px solid var(--rule);border-radius:8px;padding:18px}
article p{max-width:38em}
footer.site{border-top:1px solid var(--rule);color:var(--muted);font-size:.85em;padding:18px 0 32px}
@media (max-width:600px){body{font-size:16px}nav a{margin-left:0;margin-right:14px}h1{font-size:1.6em}}
