:root{
  --bg:#fbfaf8; --fg:#1c1a17; --muted:#5d5850; --line:#e2ded7;
  --accent:#0f5c4a; --accent-soft:#e8f1ee; --warn:#8a4b12; --warn-soft:#fdf1e4;
  --maxw:44rem;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#15171a;--fg:#e9e6e1;--muted:#a29c93;--line:#2c2f34;
        --accent:#6fd0b4;--accent-soft:#17302a;--warn:#e0a86a;--warn-soft:#31261a;}
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-text-size-adjust:100%}
a{color:var(--accent)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;background:var(--bg);padding:.5rem;z-index:10}

header.site{border-bottom:1px solid var(--line);padding:.9rem 1rem}
.brand{display:inline-block;font-family:var(--serif);font-weight:600;font-size:1.12rem;text-decoration:none;color:var(--fg)}
header.site nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin:.7rem 0 0;padding:0}
header.site nav a{font-size:.86rem;text-decoration:none;color:var(--muted)}
header.site nav a:hover,header.site nav a[aria-current]{color:var(--accent)}

main{max-width:var(--maxw);margin:0 auto;padding:1.5rem 1rem 3rem}
h1{font-family:var(--serif);font-weight:600;font-size:1.85rem;line-height:1.2;margin:.2rem 0 .6rem;text-wrap:balance}
h2{font-family:var(--serif);font-weight:600;font-size:1.25rem;margin:2rem 0 .6rem;text-wrap:balance}
.lede{color:var(--muted);font-size:1.05rem;margin:.2rem 0 1rem}
.crumbs{font-size:.82rem;color:var(--muted);margin-bottom:.8rem}
.crumbs a{color:var(--muted)}

.verified{display:inline-block;font-size:.8rem;padding:.25rem .6rem;border-radius:999px;
  background:var(--accent-soft);color:var(--accent);margin:0 0 1.2rem}
.verified.unverified,.unverified{background:var(--warn-soft);color:var(--warn)}
span.unverified,p.unverified{padding:.25rem .5rem;border-radius:.3rem;display:inline-block}

.factbox{border:1px solid var(--line);border-radius:.6rem;padding:.2rem 1rem;margin:0 0 1.5rem;background:var(--bg)}
.factbox dl{margin:.9rem 0}
.factbox dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:.9rem}
.factbox dd{margin:.2rem 0 0;font-variant-numeric:tabular-nums}
.factbox ul{margin:.3rem 0;padding-left:1.1rem}

.prose p,.prose li{max-width:38rem}
.prose table{width:100%;border-collapse:collapse;font-size:.92rem;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left}

ul.cards{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.6rem}
ul.cards li{border:1px solid var(--line);border-radius:.6rem;padding:.8rem .9rem}
ul.cards a{text-decoration:none;font-size:1.02rem;font-family:var(--serif);font-weight:600}
ul.cards span{display:block;color:var(--muted);font-size:.88rem;margin-top:.2rem}

.sources ol{padding-left:1.1rem;font-size:.9rem}
.sources li{margin:.4rem 0}
.tag{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;background:var(--accent-soft);
  color:var(--accent);padding:.1rem .4rem;border-radius:.25rem;margin-left:.35rem}
.meta{color:var(--muted);font-size:.8rem;margin-left:.35rem}

footer.site{border-top:1px solid var(--line);margin-top:2rem;padding:1.2rem 1rem 2rem;
  color:var(--muted);font-size:.85rem}
footer.site p{max-width:var(--maxw);margin:.4rem auto}

.hero h1{font-size:2.05rem}
.hero{margin-bottom:1.5rem}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.tablewrap{overflow-x:auto;margin:1.2rem 0}
table.compare{width:100%;border-collapse:collapse;font-size:.88rem;min-width:34rem}
table.compare caption{text-align:left;color:var(--muted);font-size:.8rem;margin-bottom:.5rem}
table.compare th,table.compare td{border:1px solid var(--line);padding:.5rem .6rem;text-align:left;vertical-align:top}
table.compare thead th{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}
table.compare tbody th a{font-family:var(--serif);font-weight:600;text-decoration:none}
