
:root{
  --ink:#28332d;
  --muted:#637068;
  --paper:#fbfaf5;
  --cream:#f3efe4;
  --sage:#dfe8dc;
  --olive:#52644f;
  --gold:#b79b62;
  --line:#d9d6cb;
  --white:#fff;
  --shadow:0 14px 40px rgba(40,51,45,.08);
  --radius:22px;
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}
a{color:var(--olive);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:#334431}
img{max-width:100%;height:auto}
.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:16px;top:16px;z-index:999;background:#fff;padding:10px 14px;border-radius:8px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,245,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,214,203,.75)}
.header-inner{max-width:var(--max);margin:auto;padding:14px 22px;display:flex;align-items:center;gap:22px;justify-content:space-between}
.brand{text-decoration:none;display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;letter-spacing:-.02em}
.brand-mark{width:34px;height:34px;border:1px solid var(--olive);border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;color:var(--olive);font-size:14px}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
nav a{text-decoration:none;font-size:.93rem;color:var(--ink)}
.nav-cta{padding:9px 14px;background:var(--ink);color:white;border-radius:999px!important}.nav-cta:hover{color:white;background:#394940}
.wrap{max-width:var(--max);margin:auto;padding:0 22px}
.hero{padding:86px 0 54px;background:
 radial-gradient(circle at 10% 20%,rgba(223,232,220,.75),transparent 34%),
 radial-gradient(circle at 85% 5%,rgba(183,155,98,.13),transparent 35%)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:46px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.76rem;color:var(--olive)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.12;letter-spacing:-.025em}
h1{font-size:clamp(2.65rem,7vw,5.3rem);margin:.18em 0 .22em;max-width:930px}
h2{font-size:clamp(2rem,4.8vw,3.35rem);margin:1.55em 0 .4em}
h3{font-size:1.45rem;margin:1.35em 0 .35em}
.lede{font-size:1.18rem;color:var(--muted);max-width:760px}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;text-decoration:none;padding:12px 18px;border-radius:999px;font-weight:800;border:1px solid var(--ink)}
.btn.primary{background:var(--ink);color:#fff}.btn.primary:hover{background:#3a493f;color:#fff}
.btn.secondary{background:transparent;color:var(--ink)}
.hero-card,.card,.callout,.factbox{background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}
.hero-card{padding:28px}
.hero-card ul,.checklist{padding-left:1.2rem}
.section{padding:54px 0}
.section.tight{padding:30px 0}
.section.alt{background:var(--cream)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.card{padding:24px}
.card h3{margin-top:0}
.kicker{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--olive)}
.article-shell{max-width:920px;margin:auto;padding:54px 22px 80px}
.breadcrumbs{font-size:.86rem;color:var(--muted);margin-bottom:24px}
.article-header{padding:30px 0 26px}
.article-header h1{font-size:clamp(2.5rem,6vw,4.6rem)}
.meta{color:var(--muted);font-size:.9rem}
.article-body{font-size:1.05rem}
.article-body p{margin:1em 0}
.article-body ul,.article-body ol{padding-left:1.35rem}
.article-body table{width:100%;border-collapse:collapse;margin:28px 0;font-size:.96rem}
.article-body th,.article-body td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.article-body th{background:var(--cream)}
.callout,.factbox{padding:24px;margin:28px 0}
.callout{border-left:5px solid var(--gold)}
.callout h3,.factbox h3{margin-top:0}
.disclosure{font-size:.9rem;background:#fff7df;border:1px solid #e9d7a3;border-radius:14px;padding:14px 16px;margin:18px 0}
.source-note{font-size:.88rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:38px}
.related{margin-top:46px;padding-top:28px;border-top:1px solid var(--line)}
.related-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.related a{display:block;background:white;border:1px solid var(--line);padding:15px 16px;border-radius:14px;text-decoration:none;font-weight:700}
.site-footer{background:#27322c;color:#e9eee8;padding:48px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:30px}
.site-footer a{color:#dfe8dc}
.footer-note{color:#bec9c0;font-size:.9rem}
.tag{display:inline-block;background:var(--sage);color:#344337;border-radius:999px;padding:5px 9px;font-size:.78rem;font-weight:800;margin:3px 4px 3px 0}
.money-card{background:#2f3b34;color:white;border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}
.money-card a{color:white}
.money-card .btn{background:white;color:#28332d;border-color:white}
.quote{border-left:3px solid var(--gold);padding-left:18px;color:#48564d;font-style:italic}
.notice{background:#eef3ec;border:1px solid #cdd9ca;padding:16px 18px;border-radius:14px}
small{font-size:.84rem}
@media(max-width:820px){
  .hero-grid,.grid,.grid.two,.footer-grid,.related-list{grid-template-columns:1fr}
  nav a:not(.nav-cta){display:none}
  .hero{padding-top:58px}
  h1{font-size:clamp(2.45rem,12vw,4rem)}
  .article-body table{display:block;overflow-x:auto}
}
