:root{--cream:#fbf7f0;--paper:#fffdf8;--ink:#1e2a22;--ink-soft:#4a5a4f;--green:#2f6b45;--green-soft:#e3eedf;--tomato:#d5573b;--line:#e6dfd2;--radius:14px;--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--cream);color:var(--ink);font-family:var(--sans);margin:0;font-size:1.0625rem;line-height:1.65}img,svg{max-width:100%}a{color:var(--green);text-underline-offset:3px}a:hover{color:var(--tomato)}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);line-height:1.15}em{font-style:italic}.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 20px}.wrap.narrow{max-width:720px}.muted{color:var(--ink-soft)}.small{font-size:.875rem}.skip{position:absolute;left:-999px}.skip:focus{background:var(--paper);z-index:10;padding:8px 12px;top:12px;left:12px}.site-header{border-bottom:1px solid var(--line);background:var(--cream);z-index:5;position:sticky;top:0}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:64px;display:flex}.brand{color:var(--ink);font-family:var(--serif);align-items:center;gap:10px;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-flex}.brand em,.footer-brand em{color:var(--green)}.site-header nav ul{flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{color:var(--ink);border-radius:999px;padding:8px 12px;font-size:.95rem;font-weight:500;text-decoration:none;display:block}.site-header nav a:hover,.site-header nav a[aria-current=page]{background:var(--green-soft);color:var(--green)}.hero{padding:72px 0 48px}.hero h1{max-width:12ch;margin:0 0 16px;font-size:clamp(2.6rem,7vw,4.6rem)}.hero h1 em{color:var(--green)}.hero .lede{max-width:46ch;color:var(--ink-soft);font-size:1.25rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.btn{border:1.5px solid var(--green);border-radius:999px;padding:12px 20px;font-weight:600;text-decoration:none;display:inline-block}.btn.primary{background:var(--green);color:var(--cream)}.btn.primary:hover{background:var(--ink);border-color:var(--ink);color:var(--cream)}.btn.ghost{color:var(--green)}.btn.ghost:hover{background:var(--green-soft);color:var(--green)}.week{grid-template-columns:repeat(7,1fr);gap:8px;max-width:560px;margin:40px 0 8px;display:grid}.day{aspect-ratio:1;border:1.5px solid var(--line);background:var(--paper);color:var(--ink-soft);border-radius:12px;place-items:center;font-size:.9rem;font-weight:600;display:grid}.day.on{background:var(--green);border-color:var(--green);color:var(--cream)}.week-note{color:var(--ink-soft);font-size:.9rem}.section{padding:48px 0}.section h2{margin:0 0 8px;font-size:clamp(1.7rem,4vw,2.3rem)}.section>.wrap>p.intro{color:var(--ink-soft);max-width:60ch;margin-top:0}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:24px;display:grid}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:22px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.card:hover{border-color:var(--green);color:var(--ink);transform:translateY(-2px)}.card h3{margin:8px 0 6px;font-size:1.25rem}.card p{color:var(--ink-soft);margin:0;font-size:.97rem}.tag{text-transform:uppercase;letter-spacing:.06em;color:var(--tomato);font-size:.75rem;font-weight:600;display:inline-block}.band{background:var(--green);color:var(--cream);border-radius:22px;margin:16px 0;padding:40px 32px}.band h2{color:var(--cream)}.band p{color:#e8f0e4;max-width:60ch}.band ol{padding-left:1.2em}.band li{margin:6px 0}.band a{color:var(--cream)}.article-head{padding:56px 20px 8px}.kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--tomato);margin:0 0 8px;font-size:.8rem;font-weight:600}.article-head h1{margin:0 0 12px;font-size:clamp(2rem,5.5vw,3rem)}.lede{color:var(--ink-soft);margin:0 0 8px;font-size:1.2rem}.prose{padding-bottom:32px}.prose h2{margin:2.2em 0 .4em;font-size:1.6rem}.prose h3{margin:1.8em 0 .3em;font-size:1.25rem}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:.35em 0}.prose blockquote{border-left:4px solid var(--green);background:var(--green-soft);border-radius:0 var(--radius) var(--radius) 0;margin:1.5em 0;padding:14px 20px}.prose blockquote p{margin:.3em 0}.prose table{border-collapse:collapse;width:100%;margin:1.5em 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}.prose th{font-family:var(--sans);background:var(--paper);font-weight:600}.prose hr{border:0;border-top:1px solid var(--line);margin:2.5em 0}.related{padding:32px 20px 64px}.related h2{font-size:1.5rem}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:40px 0 28px}.footer-inner{flex-wrap:wrap;justify-content:space-between;gap:24px;display:flex}.footer-brand{font-family:var(--serif);margin:0 0 6px;font-size:1.2rem;font-weight:700}.footer-links{gap:6px;margin:0;padding:0;list-style:none;display:grid}.footer-links a{color:var(--ink);text-decoration:none}.footer-links a:hover{color:var(--green)}@media (width<=560px){.site-header{position:static}.header-inner{gap:6px;padding-top:8px;padding-bottom:8px}.site-header nav a{padding:6px 9px;font-size:.9rem}.hero{padding-top:44px}.band{padding:28px 20px}.week{gap:5px}.day{border-radius:9px;font-size:.78rem}}
