:root{color-scheme:light;--brand-green:#073d36;--brand-gold:#bc873c;--surface:#fcf7ee;--card:#ffffff;--text-body:#4e5555;--text-primary:#000000;--green-hairline:rgba(7,61,54,0.07);--green-divider:rgba(7,61,54,0.15);--chip:#f4deb7;--chip-ink:#79501d;--f-wordmark:Georgia,"Times New Roman",serif;--f-serif:ui-serif,"New York","Iowan Old Style",Georgia,serif;--f-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,"Helvetica Neue",Arial,sans-serif;--tap-min:44px}
*{box-sizing:border-box}
body{margin:0;background:var(--surface);color:var(--text-body);font-family:var(--f-sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom,0px)}
.wrap{max-width:760px;margin:0 auto;padding-inline:clamp(20px,4vw,40px)}
a{color:var(--brand-green)}
:focus-visible{outline:2.5px solid var(--brand-green);outline-offset:3px;border-radius:6px}
.amp{color:var(--brand-gold)}
.top{position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--green-hairline);padding-top:env(safe-area-inset-top,0px)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:10px;max-width:1120px}
.logo{font-family:var(--f-wordmark);font-weight:700;font-size:18px;color:var(--brand-green);text-decoration:none;min-height:var(--tap-min);display:inline-flex;align-items:center}
.top nav{display:flex;gap:20px;font-size:15px}
.top nav a{text-decoration:none;min-height:var(--tap-min);display:inline-flex;align-items:center}
.top nav a:hover{text-decoration:underline;text-underline-offset:4px}
main{padding-block:clamp(40px,7vw,80px)}
h1,h2{font-family:var(--f-serif);font-weight:600;color:var(--brand-green);line-height:1.15;text-wrap:balance;margin:0}
h1{font-size:clamp(32px,5vw,44px)}
h2{font-size:22px;margin-top:40px}
p,ul,ol{margin:14px 0 0;max-width:65ch}
li{margin-top:6px}
.lede{font-size:19px;margin-top:18px}
.updated{font-size:14px;margin-top:10px}
.card{background:var(--card);border:1px solid var(--green-hairline);border-radius:18px;padding:20px;margin-top:24px}
.card p:first-child{margin-top:0}
.todo{background:var(--chip);color:var(--chip-ink);border-radius:6px;padding:0 6px;font-weight:600;white-space:nowrap}
footer{border-top:1px solid var(--green-divider);padding-block:24px;font-size:13px;line-height:18px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;max-width:1120px}
footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}