@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Instrument+Sans:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,400;6..72,600;6..72,700&display=swap');
:root{
  --bg:#F5EFE6;
  --surface:#FFF9F1;
  --surface-2:#FCF5EA;
  --ink:#171412;
  --muted:#5E594F;
  --line:#D8CCBE;
  --brand:#1B5A55;
  --brand-warm:#A65A39;
  --success:#1F6A52;
  --shadow:0 26px 70px rgba(37,27,20,.08);
  --radius:28px;
  --content-width:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  background:
    radial-gradient(circle at top left, rgba(237,214,179,.58), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(27,90,85,.10), transparent 22%),
    linear-gradient(180deg, #f8f2e8 0%, var(--bg) 100%);
  font-family:"Instrument Sans","Segoe UI",sans-serif;
  line-height:1.68;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.site-frame{max-width:var(--content-width);margin:0 auto;padding:24px}
.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:16px 0 28px}
.brand{display:flex;align-items:center;gap:14px}
.brand-mark{
  width:48px;height:48px;border-radius:15px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--ink),#5D3B2A);color:#fff;font-weight:800;letter-spacing:.05em;
}
.brand-copy strong{
  display:block;
  font-family:"Newsreader","Iowan Old Style","Baskerville",serif;
  font-size:1.32rem;
}
.brand-copy span{display:block;color:var(--muted);font-size:.92rem}
.topnav{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.topnav a,.nav-note{
  padding:.58rem .9rem;border-radius:999px;border:1px solid var(--line);
  background:rgba(255,249,241,.82);color:var(--muted);font-size:.9rem;
}
.hero{
  position:relative;overflow:hidden;border-radius:34px;padding:48px;border:1px solid rgba(103,79,56,.12);
  background:rgba(255,249,241,.95);box-shadow:var(--shadow);
}
.hero::after{
  content:"";position:absolute;right:-80px;top:-110px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle, rgba(166,90,57,.16), transparent 68%);
}
.eyebrow,.pill{
  display:inline-flex;align-items:center;gap:8px;padding:.4rem .8rem;border-radius:999px;
  font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:#F2E4D3;color:#7A4A2C;
}
.hero h1{
  margin:16px 0 12px;max-width:12ch;line-height:.92;
  font-family:"Newsreader","Iowan Old Style","Baskerville",serif;
  font-size:clamp(3rem,5vw,5.2rem);
}
.hero .lede{margin:0 0 24px;max-width:64ch;color:var(--muted);font-size:1.08rem}
.hero-grid,.stats-grid,.card-grid,.two-col,.faq-grid,.summary-grid,.trust-strip,.feature-grid,.fit-grid{display:grid;gap:16px}
.hero-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:18px}
.stats-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.card-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.two-col{grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);align-items:start}
.summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.trust-strip{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:20px}
.feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.fit-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.metric,.card,.surface,.toc-card,.faq-card,.trust-card,.feature-card,.fit-card{
  background:var(--surface);border:1px solid rgba(103,79,56,.12);border-radius:24px;padding:20px;
}
.metric strong,.card strong,.trust-card strong{display:block;font-size:1.1rem;margin-bottom:4px}
.metric span,.card p,.muted,.trust-card p,.feature-card p,.fit-card p{color:var(--muted);margin:0}
.section-title{
  margin:44px 0 12px;font-size:2.08rem;line-height:1.02;
  font-family:"Newsreader","Iowan Old Style","Baskerville",serif;
}
.section-copy{max-width:70ch;color:var(--muted)}
.home-section{margin-top:28px}
.brief-card,.feature-card{display:block;height:100%;transition:transform .18s ease,box-shadow .18s ease}
.brief-card:hover,.feature-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.brief-card h3,.feature-card h3,.fit-card h3,.card h3,.trust-card h3{
  margin:0 0 10px;line-height:1.08;font-size:1.38rem;
  font-family:"Newsreader","Iowan Old Style","Baskerville",serif;
}
.meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.flow-step{padding:18px;border-radius:18px;background:rgba(255,249,241,.84);border-left:4px solid var(--brand)}
.content-shell{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,.75fr);gap:22px;margin-top:26px}
.content-main,.content-side{background:rgba(255,249,241,.96);border:1px solid rgba(103,79,56,.12);border-radius:28px;box-shadow:var(--shadow)}
.content-main{padding:32px}
.content-side{padding:22px;position:sticky;top:18px}
.content-main h2,.content-side h3,.content-main h3{
  font-family:"Newsreader","Iowan Old Style","Baskerville",serif;
  line-height:1.08;
}
.content-main h2{font-size:1.78rem;margin:34px 0 12px}
.content-main h3{font-size:1.25rem;margin:24px 0 8px}
.content-main p{margin:0 0 14px}
.content-main ul,.content-main ol{margin:10px 0 18px 22px}
.content-main li{margin:6px 0}
.quick-verdict{padding:18px 20px;border-radius:22px;background:#EEF6F3;border:1px solid rgba(27,90,85,.16)}
.quick-verdict strong{display:block;font-size:1rem;margin-bottom:8px;color:var(--success)}
.cta-card{padding:20px 22px;border-radius:22px;background:#FFF1E3;border:1px solid rgba(166,90,57,.18)}
.cta-actions,.home-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.button{
  display:inline-flex;align-items:center;justify-content:center;padding:.9rem 1.2rem;border-radius:14px;
  border:1px solid transparent;font-weight:800;text-decoration:none;cursor:pointer;
}
.button.primary{background:var(--brand);color:#fff}
.button.secondary{background:#fff;border-color:var(--line);color:var(--ink)}
.toc{display:grid;gap:10px}
.toc a{color:var(--muted)}
.article-meta,.kv span,.micro-label{
  display:block;font-family:"IBM Plex Mono",monospace;font-size:.76rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)
}
.kv{padding:14px;border-radius:18px;background:var(--surface-2);border:1px solid rgba(103,79,56,.10)}
.kv strong{display:block;margin-top:6px;font-size:1rem}
.disclosure{padding:14px 16px;border-radius:18px;background:#FFF1DE;border:1px solid rgba(166,90,57,.16);color:#5E4228}
.table-wrap{overflow:auto;border:1px solid rgba(103,79,56,.10);border-radius:18px;background:#FFFDF9}
.table-wrap table{width:100%;border-collapse:collapse;min-width:520px}
.table-wrap th,.table-wrap td{padding:12px 14px;border-bottom:1px solid rgba(103,79,56,.08);text-align:left;vertical-align:top}
.table-wrap th{background:#F8EEDF;font-size:.88rem;font-family:"IBM Plex Mono",monospace}
.faq-grid{grid-template-columns:1fr}
.faq-card h3{margin:0 0 6px;font-size:1.1rem}
.citations{display:grid;gap:10px}
.citation-item{padding:12px 14px;border-radius:16px;border:1px solid rgba(103,79,56,.10);background:#FFFDF9}
.footer{margin:42px 0 10px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.94rem}
.rss-note{font-size:.9rem;color:var(--muted)}
.summary-pair{display:grid;gap:8px}
.summary-pair strong{font-size:1.2rem}
.home-quote{padding:18px 20px;border-radius:22px;background:#FFFDF8;border:1px solid rgba(103,79,56,.10);font-family:"Newsreader","Iowan Old Style","Baskerville",serif;font-size:1.2rem}
@media (max-width: 960px){
  .content-shell,.two-col{grid-template-columns:1fr}
  .content-side{position:static}
  .hero{padding:30px}
}
@media (max-width: 640px){
  .site-frame{padding:16px}
  .topbar{flex-direction:column;align-items:flex-start}
  .topnav{justify-content:flex-start}
  .hero h1{max-width:none}
}