
:root{--ink:#13231f;--muted:#667872;--paper:#f8f8f3;--white:#fff;--green:#0f604e;--green2:#15463d;--gold:#f2b84b;--line:#dce4df;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.72 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:3px}.wrap{max-width:var(--max);margin:auto;padding:0 22px}
.sitehead{background:var(--green2);border-bottom:4px solid var(--gold);color:#fff;position:sticky;top:0;z-index:40;box-shadow:0 6px 20px rgba(10,30,25,.12)}.bar{min-height:74px;display:flex;align-items:center;gap:24px}.brand{color:#fff;text-decoration:none;font-weight:900;font-size:1.27rem;line-height:1.05;margin-right:auto}.brand small{display:block;font-size:.68rem;font-weight:550;opacity:.78;margin-top:5px}
nav{display:flex;align-items:center;gap:16px}nav a{color:#fff;text-decoration:none;font-size:.91rem;font-weight:650}.headcta{background:var(--gold);color:#16271f!important;padding:10px 15px;border-radius:9px;font-weight:900!important;white-space:nowrap}
.hero{background:linear-gradient(135deg,#0f3029,#176352);color:#fff;padding:64px 0 48px}.hero h1{font-size:clamp(2.4rem,6vw,4.8rem);line-height:1.02;letter-spacing:-.035em;max-width:940px;margin:.2em 0}.hero p{font-size:1.16rem;max-width:820px;color:#e7f0ed}
.grid{display:grid;grid-template-columns:minmax(0,1fr) 306px;gap:44px;padding:44px 0}.article{min-width:0}.article h1{font-size:clamp(2.15rem,5vw,3.6rem);line-height:1.06;letter-spacing:-.03em;margin:.25em 0 .35em}.article h2{font-size:1.85rem;line-height:1.18;margin-top:2.3em}.article h3{font-size:1.23rem;line-height:1.25;margin-top:1.7em}.lead{font-size:1.17rem;color:#354842}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:850;font-size:.73rem;color:#2d7666}.hero .eyebrow{color:#ffce70}.breadcrumb{font-size:.84rem;color:var(--muted);margin-bottom:24px}.breadcrumb a{color:var(--muted)}
.card,.cta,.toc,.note{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:23px;box-shadow:0 9px 28px rgba(20,44,36,.045);margin:26px 0}.cta{border-left:5px solid var(--gold)}.cta h3{margin:.2em 0}.button{display:inline-block;background:var(--green);color:#fff!important;text-decoration:none;font-weight:850;padding:12px 18px;border-radius:9px;margin:7px 0}.button.alt{background:var(--gold);color:#16271f!important}
.sidebar .sticky{position:sticky;top:18px}.sidebar h3{margin:.2em 0}.sidebar ul{padding-left:18px}.disclosure{font-size:.79rem;color:var(--muted)}
.toc ol{columns:2;gap:30px;padding-left:20px}.related{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related a{display:block;background:#fff;border:1px solid var(--line);border-radius:11px;padding:15px;text-decoration:none;font-weight:680}
table{width:100%;border-collapse:collapse;margin:22px 0;background:#fff}th,td{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}th{background:#eef4f1}
footer{background:#102f29;color:#d9e6e1;margin-top:50px;padding:48px 0}footer a{color:#fff}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}
.popup{position:fixed;inset:0;background:rgba(4,18,15,.76);z-index:50;display:none;align-items:center;justify-content:center;padding:20px}.popup.show{display:flex}.popcard{max-width:760px;background:#fff;border-radius:22px;padding:36px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.28)}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;cursor:pointer}.compass{width:86px;height:86px;border-radius:50%;background:#153f36;border:8px solid #f2b84b;display:grid;place-items:center;color:white;font-size:34px;margin-bottom:15px}
.mobile-cta{display:none}
@media(max-width:900px){nav a:not(.headcta){display:none}.grid{grid-template-columns:1fr}.sidebar .sticky{position:static}.toc ol{columns:1}.mobile-cta{display:block;position:fixed;bottom:12px;left:12px;right:12px;z-index:30;background:var(--gold);color:#16271f!important;text-align:center;text-decoration:none;font-weight:900;padding:13px;border-radius:11px;box-shadow:0 10px 28px rgba(0,0,0,.2)}body{padding-bottom:62px}}
@media(max-width:620px){.related,.footergrid{grid-template-columns:1fr}.brand small{display:none}.bar{gap:10px}.headcta{padding:9px 11px;font-size:.82rem}.hero{padding:44px 0}.article h2{font-size:1.55rem}}
