
:root{--ink:#17302d;--muted:#5d716c;--brand:#176b5b;--brand2:#eaf6f1;--line:#d7e6e0;--paper:#fbfdfc;--white:#fff;--soft:#f4faf7;--warn:#fff8e8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.72;font-size:17px}a{color:var(--brand)}a:hover{text-decoration-thickness:2px}.container{width:min(1180px,calc(100% - 34px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(251,253,252,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.topbar{display:flex;align-items:center;gap:22px;min-height:72px}.brand{font-weight:900;font-size:23px;color:var(--ink);text-decoration:none;white-space:nowrap}.nav{display:flex;align-items:center;gap:16px;flex:1}.nav a{text-decoration:none;color:#284c46;font-weight:650;font-size:15px}.header-cta{margin-left:auto}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--brand);color:#fff!important;text-decoration:none;border-radius:12px;padding:12px 17px;font-weight:850;border:0;cursor:pointer}.button.secondary{background:#fff;color:var(--brand)!important;border:1px solid var(--brand)}.affiliate-mini{font-size:11px;line-height:1.25;color:var(--muted);max-width:175px;margin:3px 0 0}.hero{padding:54px 0 24px}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:#47756c;font-size:13px;font-weight:850}.hero h1,article h1{font-size:clamp(38px,5.7vw,68px);line-height:1.04;letter-spacing:-.035em;margin:.15em 0 .35em}.dek{font-size:21px;line-height:1.5;max-width:840px;color:#385750}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:46px;align-items:start}.content{min-width:0}.content h2{font-size:34px;line-height:1.18;letter-spacing:-.02em;margin:1.7em 0 .45em}.content h3{font-size:24px;line-height:1.3;margin:1.5em 0 .35em}.content p,.content li{max-width:790px}.content ul,.content ol{padding-left:24px}.card,.note,.cta-card,.source-card,.related{border:1px solid var(--line);background:var(--white);border-radius:18px;padding:23px;margin:24px 0}.note{background:var(--soft)}.warning{background:var(--warn)}.cta-card{background:linear-gradient(145deg,#eef9f4,#fff)}.cta-card h3{margin-top:0}.cta-card .button{width:100%}.sticky{position:sticky;top:96px}.sidebar-title{font-size:19px;margin:.1em 0 .45em}.side-links{display:grid;gap:10px}.side-links a{text-decoration:none;border-bottom:1px solid #e8f0ed;padding-bottom:8px}.breadcrumb{font-size:14px;color:var(--muted);padding-top:24px}.breadcrumb a{color:var(--muted)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tile{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:16px;padding:20px}.tile strong{display:block;font-size:18px;margin-bottom:6px}.tile span{color:var(--muted);font-size:15px}.disclosure{font-size:13px;color:var(--muted);line-height:1.45}.source-card li{margin:.5em 0}.footer{margin-top:70px;background:#17302d;color:#e9f5f1;padding:42px 0}.footer a{color:#e9f5f1}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.footer ul{list-style:none;padding:0}.footer li{margin:8px 0}.modal{position:fixed;inset:0;background:#0c2420d9;display:none;place-items:center;padding:18px;z-index:60}.modal.open{display:grid}.modal-box{background:#fff;width:min(660px,100%);border-radius:24px;padding:30px;box-shadow:0 30px 80px #0007}.close{float:right;border:0;border-radius:999px;width:36px;height:36px;font-size:20px}.mobile-buy{display:none}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;z-index:99;background:#fff;padding:10px}
@media(max-width:960px){.nav{display:none}.layout{grid-template-columns:1fr}.sticky{position:static}.grid3{grid-template-columns:1fr 1fr}.header-cta .affiliate-mini{display:none}.footer-grid{grid-template-columns:1fr 1fr}.mobile-buy{display:flex;position:fixed;z-index:40;left:14px;right:14px;bottom:12px;box-shadow:0 10px 30px #0004}.footer{padding-bottom:100px}}
@media(max-width:620px){body{font-size:16px}.container{width:min(100% - 24px,1180px)}.brand{font-size:20px}.header-cta .button{padding:10px 12px;font-size:14px}.grid3{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.content h2{font-size:29px}.hero{padding-top:38px}}
