:root{--ink:#111;--muted:#666;--line:#d8d8d8;--accent:#a40000;--paper:#fff}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Georgia,"Times New Roman",serif;background:#fff;color:var(--ink);line-height:1.75}
a{color:#111;text-decoration:underline;text-underline-offset:2px}
a:hover{color:#a40000}
.site-header{background:#fff;border-bottom:2px solid #111;position:sticky;top:0;z-index:20}
.header-inner{max-width:1120px;margin:auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:.07em;text-decoration:none;color:#111;font-size:1.18rem}
.brand .accent{color:var(--accent)}
.nav{display:flex;gap:20px;font-family:Arial,Helvetica,sans-serif;font-size:.9rem;font-weight:700}
.nav a{text-decoration:none;color:#111}.nav a:hover{color:#a40000}
.container{max-width:1120px;margin:auto;padding:44px 20px}
.kicker{font-family:Arial,Helvetica,sans-serif;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.hero{border-bottom:1px solid #111;padding:8px 0 38px;margin-bottom:36px}
.hero h1{font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.02;max-width:900px;margin:9px 0 17px}
.hero p{max-width:760px;font-size:1.08rem;color:#333}
.section-title{font-size:1.85rem;margin-bottom:20px}
.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.card{border-top:2px solid #111;border-bottom:1px solid var(--line);padding:22px 0 25px;margin-bottom:26px}
.card h2{font-size:1.45rem;line-height:1.25;margin:8px 0 10px}
.card p{color:#333;font-size:.98rem}
.date{font-family:Arial,Helvetica,sans-serif;color:#666;font-size:.78rem;margin-top:14px}
.article{max-width:840px;margin:auto}
.article-header{border-bottom:2px solid #111;padding-bottom:23px;margin-bottom:28px}
.article h1{font-size:clamp(2.3rem,5.5vw,3.65rem);line-height:1.05;margin:8px 0 13px}
.byline{font-family:Arial,Helvetica,sans-serif;color:#666;font-size:.8rem}
.dek{font-size:1.14rem;color:#333;margin-top:14px;max-width:780px}
.article h2{font-size:1.58rem;margin:34px 0 11px;padding-bottom:7px;border-bottom:1px solid #aaa}
.article h3{font-size:1.15rem;margin:24px 0 8px}
.article p{margin-bottom:17px}
.article ul{margin:8px 0 18px 24px}
.article li{margin-bottom:6px}
.scorecard{border:1px solid #111;border-left:5px solid var(--accent);padding:18px 20px;margin:25px 0;background:#fff}
.score-title{font-family:Arial,Helvetica,sans-serif;font-size:.9rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px;margin-top:9px}
.score-item{display:flex;justify-content:space-between;border-bottom:1px dashed #aaa;padding:4px 0}
.grade{font-weight:800;color:var(--accent)}
.method{border:1px solid #bbb;background:#fafafa;padding:17px 19px;margin:22px 0}
.method strong{font-family:Arial,Helvetica,sans-serif}
.method code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;padding:2px 4px}
.table-wrap{overflow-x:auto;margin:14px 0 22px}
table{border-collapse:collapse;width:100%;font-family:Arial,Helvetica,sans-serif;font-size:.88rem}
th,td{border-bottom:1px solid #ccc;padding:8px 7px;text-align:left;vertical-align:top}
th{border-top:2px solid #111}
.sources{border-top:2px solid #111;margin-top:30px;padding-top:18px}
.sources ul{margin-left:20px}
.cta{border-top:2px solid #111;border-bottom:1px solid #111;padding:22px 0;margin-top:30px;text-align:center}
.footer{border-top:2px solid #111;margin-top:60px;font-family:Arial,Helvetica,sans-serif;color:#666;font-size:.78rem}
.footer-inner{max-width:1120px;margin:auto;padding:23px 20px;display:flex;justify-content:space-between;gap:20px}
@media(max-width:760px){.container{padding:30px 15px}.header-inner{padding:13px 15px}.news-grid{grid-template-columns:1fr}.score-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column}.nav{gap:13px}}

.card h2 a{color:#111;text-decoration:none}.card h2 a:hover{color:#a40000}

.article-photo{margin:0 0 30px;border-bottom:1px solid var(--line);padding-bottom:14px}
.article-photo img{display:block;width:100%;max-height:520px;object-fit:cover;background:#f4f4f4}
.article-photo figcaption{font-family:Arial,Helvetica,sans-serif;color:#666;font-size:.72rem;line-height:1.45;margin-top:8px}
.article-photo figcaption a{color:#555}
