
:root{--ink:#18302b;--jade:#1f5b4d;--cream:#fbf7ee;--gold:#b58a3a;--muted:#66756f;--line:#ded9cd}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.7}
a{color:var(--jade)}header{border-bottom:1px solid var(--line);background:rgba(251,247,238,.96);position:sticky;top:0;z-index:4}.wrap{max-width:1120px;margin:auto;padding:0 22px}
.top{display:flex;align-items:center;justify-content:space-between;min-height:72px}.brand{font-family:Georgia,serif;font-weight:700;font-size:1.35rem;text-decoration:none;color:var(--ink)}.brand b{color:var(--gold)}
nav.main{display:flex;gap:18px;flex-wrap:wrap}nav.main a{text-decoration:none;color:var(--ink);font-size:.92rem}
main{max-width:820px;margin:0 auto;padding:48px 22px 80px}.hero{padding:50px 0 35px}.hero h1,h1{font-family:Georgia,serif;font-size:clamp(2.3rem,6vw,4.4rem);line-height:1.03;letter-spacing:-.035em;margin:.2em 0}.hero p{font-size:1.22rem;max-width:700px}
h2{font-family:Georgia,serif;font-size:1.75rem;line-height:1.2;margin-top:2.1em}h3{font-family:Georgia,serif}.eyebrow{font-size:.76rem;letter-spacing:.14em;font-weight:800;color:var(--gold)}
.btn{display:inline-block;background:var(--jade);color:white;text-decoration:none;padding:12px 18px;border-radius:6px;font-weight:700}.btn.secondary{background:transparent;color:var(--jade);border:1px solid var(--jade)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:35px 0}.cards article,.callout,.affiliate-box,.notice{border:1px solid var(--line);background:#fffdf7;border-radius:10px;padding:22px}.callout,.affiliate-box{margin-top:42px}.notice{border-left:4px solid var(--gold);margin:24px 0}
.crumbs{font-size:.82rem;color:var(--muted);margin-bottom:20px}.crumbs a{color:var(--muted)}.related{display:grid;gap:8px}.related a{padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}
footer{border-top:1px solid var(--line);padding:35px 0 55px;color:var(--muted);font-size:.86rem}footer a{color:var(--muted);margin-right:14px}
@media(max-width:760px){nav.main{display:none}.cards{grid-template-columns:1fr}main{padding-top:30px}.hero{padding-top:25px}}
