*{box-sizing:border-box}
:root{--paper:#f1f3ef;--ink:#1b2a2f;--pine:#244434;--gold:#c79a0a;--line:#d3d9d2}
body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.7 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
h1,h2,.logo{font-family:Georgia,"Times New Roman",serif;line-height:1.25}
header{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;justify-content:space-between;padding:18px 5vw;border-bottom:3px solid var(--pine)}
.logo{font-size:1.6rem;font-weight:700;color:var(--pine);text-decoration:none}
.logo small{display:block;font:.8rem system-ui,sans-serif;color:var(--ink);opacity:.7}
nav a{margin-right:18px;color:var(--ink);text-decoration:none;padding:4px 0;font-size:.95rem}
nav a[aria-current],nav a:hover{border-bottom:2px solid var(--gold)}
main{max-width:980px;margin:0 auto;padding:36px 5vw 56px}
h1{font-size:2.3rem;margin:0 0 18px}h2{font-size:1.35rem;margin:30px 0 8px;color:var(--pine)}
p{max-width:68ch}.lead{font-size:1.15rem}
figure{margin:0 0 26px}figure img{width:100%;height:auto;display:block;border:1px solid var(--line)}
figcaption{font-size:.85rem;opacity:.75;margin-top:6px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-top:30px}
.card{color:inherit;text-decoration:none;border-top:3px solid var(--gold);padding-top:12px}
.card img{width:100%;height:auto;display:block;margin-bottom:10px}
.card h2{margin:0 0 6px}.card p{margin:0;font-size:.95rem}.card:hover h2{text-decoration:underline}
a{color:var(--pine)}a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
footer{border-top:1px solid var(--line);padding:22px 5vw;font-size:.85rem;opacity:.8}
@media(max-width:700px){h1{font-size:1.8rem}body{font-size:17px}}