:root{--bg:#ffffff;--surface:#f5f5f5;--border:#e0e0e0;--body:#1a1a1a;--head:#0a0a0a;--muted:#6b7280;--accent:#f97316;--accent-ink:#c2410c}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--body);font:17px/1.7 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:inherit}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.topbar{border-bottom:1px solid var(--border);font-size:13px;color:var(--muted)}
.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:8px;padding-bottom:8px}
.mast{border-bottom:3px solid var(--head)}
.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;padding-bottom:14px;flex-wrap:wrap}
.logo{font:700 30px/1 'Space Grotesk',Inter,sans-serif;color:var(--head);text-decoration:none;letter-spacing:-.02em}
.logo span{color:var(--accent)}
nav.cats{display:flex;gap:18px;flex-wrap:wrap;font:600 13px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em}
nav.cats a{text-decoration:none;color:var(--muted)}
nav.cats a:hover{color:var(--accent-ink)}
.kicker{display:inline-block;font:700 12px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-ink);text-decoration:none}
h1,h2,h3{font-family:'Space Grotesk',Inter,sans-serif;color:var(--head);letter-spacing:-.015em}
article.post{max-width:760px;margin:0 auto;padding:32px 0 8px}
article.post h1{font-size:clamp(30px,5vw,46px);line-height:1.1;margin:12px 0 14px}
.dek{font-size:20px;line-height:1.5;color:#374151;margin:0 0 18px}
.byline{font-size:14px;color:var(--muted);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0;margin-bottom:22px;display:flex;gap:14px;flex-wrap:wrap}
.byline strong{color:var(--body)}
figure{margin:0 0 26px}
figure img{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--surface);border-radius:4px}
figcaption{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.5}
figcaption .credit{display:block;font-size:12px;color:#9ca3af;margin-top:2px}
figure.portrait{float:right;width:300px;margin:6px 0 18px 26px}
figure.portrait img{aspect-ratio:4/5}
@media (max-width:640px){figure.portrait{float:none;width:100%;max-width:340px;margin:0 auto 24px}}
.post-body h2{clear:both}
.post-body h2{font-size:26px;line-height:1.25;margin:38px 0 10px}
.post-body p{margin:0 0 20px}
.post-body ul{padding-left:22px;margin:0 0 22px}
.post-body li{margin-bottom:10px}
.post-body blockquote{margin:26px 0;padding:4px 0 4px 18px;border-left:4px solid var(--accent);font:500 21px/1.5 'Space Grotesk',Inter,sans-serif;color:var(--head)}
.post-body a{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:2px}
.timeline{list-style:none;padding:0!important;border-left:2px solid var(--border);margin-left:6px!important}
.timeline li{position:relative;padding-left:20px}
.timeline li:before{content:"";position:absolute;left:-7px;top:9px;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.timeline b{color:var(--head)}
.note{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:14px 18px;font-size:15px;line-height:1.6;margin:0 0 24px}
.sources{border-top:1px solid var(--border);margin-top:36px;padding-top:18px;font-size:14px;line-height:1.6}
.sources h3{font-size:15px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}
.sources ol{padding-left:20px;margin:0}
.sources a{color:var(--body)}
.related{max-width:760px;margin:30px auto 0;padding:22px 0 10px;border-top:3px solid var(--head)}
.related h3{margin:0 0 14px;font-size:18px}
.cards{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.card{text-decoration:none;display:block}
.card img{aspect-ratio:16/9;object-fit:cover;width:100%;background:var(--surface);border-radius:4px;margin-bottom:10px}
.card h4{font:700 18px/1.3 'Space Grotesk',Inter,sans-serif;color:var(--head);margin:6px 0}
.card p{font-size:14px;line-height:1.5;color:var(--muted);margin:0}
.card:hover h4{color:var(--accent-ink)}
.lead{display:grid;gap:28px;grid-template-columns:1.5fr 1fr;padding:30px 0;border-bottom:1px solid var(--border);align-items:center}
.lead img{aspect-ratio:16/9;object-fit:cover;width:100%;background:var(--surface);border-radius:4px}
.lead h2{font-size:clamp(28px,4vw,42px);line-height:1.1;margin:10px 0 12px}
.lead h2 a{text-decoration:none}
.lead h2 a:hover{color:var(--accent-ink)}
.lead p{color:#374151;font-size:18px;margin:0 0 10px}
.section-label{font:700 13px/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em;margin:30px 0 16px;padding-bottom:8px;border-bottom:1px solid var(--border)}
footer{margin-top:56px;border-top:1px solid var(--border);background:var(--surface);font-size:13px;color:var(--muted)}
footer .wrap{padding-top:22px;padding-bottom:28px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
@media (max-width:760px){.lead{grid-template-columns:1fr}.dek{font-size:18px}body{font-size:16.5px}}
