
:root{
  --ink:#17322c;--muted:#62736e;--paper:#fbfcf8;--card:#ffffff;--line:#dce6df;
  --brand:#1d6b56;--brand2:#dfeee7;--accent:#e8a53b;--danger:#8b3d2e;--shadow:0 12px 34px rgba(24,58,48,.08)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65}
a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:3px}
img{max-width:100%;height:auto}
.container{width:min(1160px,calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,252,248,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.header-row{display:flex;align-items:center;gap:20px;min-height:74px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:850;letter-spacing:-.02em}
.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--brand);display:grid;place-items:center;color:#fff;font-weight:900}
nav{display:flex;gap:18px;margin-left:auto;align-items:center}
nav a{text-decoration:none;color:var(--ink);font-weight:650;font-size:.95rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--brand);color:#fff!important;text-decoration:none!important;border-radius:12px;padding:12px 17px;font-weight:800;box-shadow:0 6px 18px rgba(29,107,86,.18)}
.btn.alt{background:#fff;color:var(--brand)!important;border:1px solid var(--brand);box-shadow:none}
.btn.small{padding:9px 12px;border-radius:10px;font-size:.9rem}
.hero{padding:66px 0 42px;background:linear-gradient(180deg,#edf7f2 0,#fbfcf8 100%)}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:850;color:var(--brand)}
h1{font-size:clamp(2.15rem,5vw,4.4rem);line-height:1.02;letter-spacing:-.045em;margin:.2em 0 .35em}
h2{font-size:clamp(1.45rem,3vw,2.15rem);line-height:1.18;letter-spacing:-.025em;margin:1.7em 0 .55em}
h3{font-size:1.18rem;line-height:1.3;margin:1.4em 0 .4em}
.lede{font-size:1.16rem;color:#445b54;max-width:780px}
.disclosure{font-size:.88rem;background:#fff8e8;border:1px solid #f0d69d;border-radius:12px;padding:11px 13px;color:#684f1e;margin:16px 0}
.grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:34px;align-items:start;padding:40px 0 70px}
.article{min-width:0}
.article p,.article li{font-size:1.03rem}
.article ul{padding-left:1.35rem}
.sidebar{position:sticky;top:98px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);margin-bottom:18px}
.card h3{margin-top:0}
.cta-card{background:linear-gradient(150deg,#173f34,#1d6b56);color:#fff;border:none}
.cta-card a:not(.btn){color:#fff}
.cta-card .btn{background:#fff;color:#174b3c!important}
.note{background:#f0f5f2;border-left:4px solid var(--brand);padding:14px 16px;border-radius:8px;margin:20px 0}
.warn{background:#fff3ef;border-left:4px solid var(--danger);padding:14px 16px;border-radius:8px;margin:20px 0}
.kicker{font-size:.92rem;color:var(--muted)}
.breadcrumbs{font-size:.86rem;color:var(--muted);padding-top:18px}
.breadcrumbs a{color:var(--muted)}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;margin:20px 0;background:#fff;border:1px solid var(--line)}
th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:#f0f5f2}
.source-list{font-size:.92rem}
.source-list li{margin:.55em 0}
.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:12px;padding:13px;text-decoration:none;font-weight:700}
footer{background:#132923;color:#d7e2de;padding:38px 0}
footer a{color:#fff}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}
.footer-grid ul{list-style:none;padding:0;margin:0}
.footer-grid li{margin:.35em 0}
.mini{font-size:.83rem;color:#94aaa3}
.mobile-cta{display:none}
.home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}
.home-grid .card{margin:0}
.score{display:inline-block;background:var(--brand2);color:var(--brand);padding:3px 8px;border-radius:999px;font-size:.78rem;font-weight:800}
@media(max-width:900px){
  nav a:not(.btn){display:none}.grid{grid-template-columns:1fr}.sidebar{position:static}.home-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .container{width:min(100% - 24px,1160px)}.header-row{min-height:64px}.brand span:last-child{font-size:.95rem}.site-header .btn{display:none}
  .hero{padding:42px 0 30px}.related{grid-template-columns:1fr}
  .mobile-cta{display:block;position:fixed;left:10px;right:10px;bottom:10px;z-index:25}.mobile-cta .btn{width:100%;box-shadow:0 10px 30px rgba(0,0,0,.2)}
  body{padding-bottom:70px}
}

.affiliate-strip{background:#fff4d8;color:#5f4a1e;text-align:center;font-size:.78rem;padding:5px 12px;border-bottom:1px solid #ead09a}
.affiliate-strip a{color:#5f4a1e;font-weight:800}
