
:root{--ink:#16221d;--muted:#5c6963;--paper:#f8fbf9;--card:#fff;--line:#d9e4de;--green:#184d3c;--green2:#236b54;--gold:#b28a2a;--cream:#fff9e9;--danger:#7d332d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.72 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--green2)}img{max-width:100%;height:auto}.wrap{max-width:1200px;margin:auto;padding:0 22px}
.notice{background:#102f25;color:#eef8f3;text-align:center;padding:7px 14px;font-size:13px}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;box-shadow:0 3px 16px rgba(0,0,0,.04)}
.head{display:flex;align-items:center;gap:20px;min-height:76px}.brand{font-size:26px;font-weight:950;text-decoration:none;color:var(--ink);letter-spacing:-.4px}
nav{margin-left:auto;display:flex;gap:15px;align-items:center;flex-wrap:wrap}nav>a{font-size:14px;text-decoration:none;font-weight:800;color:#304039}
.header-cta{background:var(--green);color:#fff!important;padding:11px 14px;border-radius:9px}
.hero{padding:66px 0 42px;background:linear-gradient(125deg,#edf6f1,#fff8e6)}.hero h1{font-size:clamp(39px,5.5vw,68px);line-height:1.03;max-width:930px;margin:.14em 0 .28em;letter-spacing:-1.7px}
.lede{font-size:21px;line-height:1.6;max-width:850px;color:#405048}.badge{display:inline-block;background:#e4f0ea;padding:5px 10px;border-radius:99px;font-size:13px;font-weight:850}
.grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:46px;padding:44px 0}.article{min-width:0;max-width:800px}
h2{font-size:32px;line-height:1.2;margin:48px 0 14px;letter-spacing:-.5px}h3{font-size:23px;line-height:1.25;margin:30px 0 10px}
p{margin:0 0 1.05em}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin:23px 0;box-shadow:0 9px 30px rgba(20,57,43,.055)}
.sticky{position:sticky;top:100px}.cta{display:inline-block;background:var(--green);color:#fff!important;text-decoration:none;font-weight:900;padding:14px 19px;border-radius:10px;border:0}.cta.gold{background:#9b741d}.cta.secondary{background:#fff;color:var(--green)!important;border:2px solid var(--green)}
.disclosure{font-size:13px;color:var(--muted);background:#eef3f0;border-radius:9px;padding:11px 13px;margin-top:14px}.evidence{background:#ecf6f1;border-left:5px solid var(--green);padding:15px 18px;margin:22px 0}.caution{background:#fff4ef;border-left:5px solid var(--danger);padding:15px 18px;margin:22px 0}
.breadcrumbs{font-size:14px;color:var(--muted);margin-bottom:16px}.breadcrumbs a{text-decoration:none}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mini{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px}.mini a{font-weight:850;text-decoration:none}
.offerbox{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;background:#fffdf5;border:1px solid #eadcb7;border-radius:16px;padding:20px;margin:25px 0}.offerbox img{border-radius:10px}
.source-list li,.related li{margin:8px 0}.toc{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px}.toc a{text-decoration:none}
footer{background:#102f25;color:#dcebe4;margin-top:70px;padding:52px 0}footer a{color:#fff}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}
.popup{display:none;position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:70;align-items:center;justify-content:center;padding:20px}.popup.open{display:flex}.popbox{max-width:720px;background:#fff;border-radius:20px;padding:30px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25)}.popclose{position:absolute;right:14px;top:8px;background:none;border:0;font-size:30px;cursor:pointer}
.product-thumb{width:100%;max-width:260px;border-radius:14px;border:1px solid var(--line)}
@media(max-width:920px){.grid{grid-template-columns:1fr}.article{max-width:none}.sticky{position:static}.cards{grid-template-columns:1fr 1fr}.offerbox{grid-template-columns:1fr}.head{align-items:flex-start;flex-direction:column;padding:13px 0}nav{margin-left:0}.hero{padding-top:40px}}
@media(max-width:620px){.cards{grid-template-columns:1fr}nav a:not(.header-cta){display:none}.header-cta{display:inline-block}.hero h1{font-size:42px}.footgrid{grid-template-columns:1fr}}
