/* Theme A · The Ledger: editorial / research publication. Newsreader (serif headings) + Source Sans 3 (text), both SIL OFL, self-hosted. */
/* kicker: Independent research · Every fact sourced */
/* theme-color: #faf7f1 */
/* preload: newsreader-var.woff2 */
/* preload: sourcesans3-var.woff2 */
@font-face{font-family:"Newsreader";src:url(/fonts/newsreader-var.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/fonts/newsreader-italic-var.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(/fonts/sourcesans3-var.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url(/fonts/sourcesans3-italic-var.woff2) format("woff2");font-weight:200 900;font-style:italic;font-display:swap}
:root{--ink:#1c1a17;--muted:#5e574e;--line:#e6dfd3;--bg:#faf7f1;--card:#fff;--brand:#1d4f80;--brand-2:#a8461f;--navy:#1b2f4b;--accent:#a8461f;--accent-soft:#f6e7dd;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;--sans:"Source Sans 3",-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
body{font-family:var(--sans);font-size:17px;line-height:1.55}
h1,h2,.card h3,.offer .price,.stats b{font-family:var(--serif);font-optical-sizing:auto}
h1,h2{font-weight:600;letter-spacing:-.01em}
a{color:var(--brand)}a:hover{text-decoration:underline;text-underline-offset:3px}
header.site{background:var(--bg);border-bottom:1px solid var(--ink);box-shadow:0 3px 0 -2px var(--ink)}
header.site .wrap{height:68px}
.logo{display:flex;align-items:center}.logo svg{height:34px;width:auto;display:block}
nav.main{font-size:15.5px;font-weight:500}nav.main a{color:#3f3a33}
nav.main .cta{color:var(--accent);font-weight:600}
.hero{background:var(--bg);border-bottom:1px solid var(--line);padding:54px 0 40px}
.hero .kicker{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}
.hero h1{font-size:50px;line-height:1.08;font-weight:560;letter-spacing:-.015em;max-width:860px}
.hero p.lead{font-size:19.5px;color:var(--muted);max-width:720px;font-family:var(--serif);font-weight:400;line-height:1.5}
.stats{gap:0;margin-top:26px;border-top:1px solid var(--line);padding-top:16px}
.stats>div{padding-right:28px;margin-right:28px;border-right:1px solid var(--line);font-size:14.5px}.stats>div:last-child{border-right:0}
.stats b{font-size:30px;font-weight:600;line-height:1.1;color:var(--navy)}
.filters,.card,.panel,.offer{border-radius:4px;border-color:var(--line)}
.filters{background:#fff}
.filters h3{font-family:var(--sans);color:var(--accent);font-weight:700;letter-spacing:.1em;font-size:11.5px}
.filters select,.search{border-radius:3px;border-color:#d8cfc0}
.search{border:1px solid #cfc5b4;font-size:17px;background:#fff}
.search:focus,.filters select:focus{outline:2px solid var(--navy);outline-offset:1px}
.card{padding:18px 20px;box-shadow:none}
.card:hover{border-color:#cdbfa9;box-shadow:0 2px 0 var(--line)}
.card h3{font-size:21px;font-weight:600}.card h3 a{color:var(--ink)}
.card p{font-size:15px}
.cat{color:var(--accent);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.tag{background:#f3eee5;border-color:#e6dfd3;color:#4a443c;border-radius:3px;font-size:12px}
.tag.ai{background:#e9eef5;color:#1b2f4b;border-color:#d3dcea}
h1.title{font-size:42px;font-weight:560;letter-spacing:-.015em}
.sub{font-family:var(--serif);font-size:19px}
.crumbs{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:600}
.panel h2{font-size:23px;border-bottom:1px solid var(--ink);padding-bottom:8px}
.btn{background:var(--navy);border-radius:3px;font-weight:600;font-size:15px;letter-spacing:.01em}
.btn:hover{background:#0f1f35}
.btn.ghost{background:transparent;color:var(--navy);border:1px solid var(--navy)}.btn.ghost:hover{background:#efe9de}
.filter-btn{border-color:var(--navy);color:var(--navy);border-radius:3px}
.reset{color:var(--brand)}
.pill{border-radius:3px}.pill.yes{background:#e6f1ea;color:#1e5b38}
.note{background:#f3eee5;border-color:#ddd3c3}
.news{background:var(--navy);border-radius:4px;padding:30px}
.news h2{font-size:28px;font-weight:560}.news h2::before{content:"";display:block;width:36px;height:3px;background:#e07a4f;margin-bottom:12px}
.news p{color:#c9d3e0;font-size:16px}
.news .btn{background:#e07a4f;color:#1c1a17}.news .btn:hover{background:#ea9472}
.nl-form input[type=email]{border-radius:3px}.nl-note{color:#a9b6c7!important}
footer.site{background:var(--bg);border-top:1px solid var(--ink)}
.badge-feat{border-radius:3px}
.offer.best{border-color:var(--navy);box-shadow:0 8px 24px rgba(27,47,75,.12)}.ribbon{background:var(--accent);border-radius:3px}
.launch{background:#eef2f7;border-color:#d3dcea}
table.tracker th{background:#f3eee5}
@media(max-width:900px){.hero{padding:30px 0 24px}.hero h1{font-size:32px}.hero p.lead{font-size:17px}.stats{margin-top:16px}.stats>div{padding-right:14px;margin-right:14px}.stats b{font-size:23px}
  h1.title{font-size:30px}.logo svg{height:30px}header.site .wrap{height:auto}.sheet-foot{background:#fff}}
@media(max-width:480px){.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px 0}.stats>div:nth-child(2){border-right:0}}
