
:root{
  --red:#e00000;
  --ink:#111;
  --muted:#6b6b6b;
  --line:#dedede;
  --paper:#fff;
  --soft:#f6f6f3;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.45;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--line);backdrop-filter:blur(8px)
}
.header-top{display:flex;align-items:center;justify-content:space-between;padding:14px 0 10px}
.brand-wrap{display:flex;align-items:center;gap:14px;min-width:0}
.logo-box{width:58px;height:58px;background:var(--red);overflow:hidden;display:flex;align-items:center;justify-content:center}
.logo-box img{width:100%;height:100%;object-fit:cover}
.brand-text{display:flex;flex-direction:column;gap:1px}
.brand-name{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:27px;letter-spacing:-.02em}
.tagline{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.nav-row{display:flex;align-items:center;gap:26px;padding:10px 0 12px;font-size:14px}
.nav-row .spacer{flex:1}
.nav-link{font-weight:600}
.subscribe{
  background:var(--red);color:#fff;padding:9px 14px;font-weight:700;border-radius:2px
}
.kicker{color:var(--red);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero{padding:72px 0 56px;border-bottom:1px solid var(--line)}
.hero h1{
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(48px,7vw,92px);line-height:.98;letter-spacing:-.045em;
  max-width:1000px;margin:10px 0 22px;font-weight:700
}
.hero .deck{font-family:Georgia,'Times New Roman',serif;font-size:23px;line-height:1.35;max-width:800px;margin:0 0 22px;color:#333}
.meta{font-size:13px;color:var(--muted)}
.section{padding:52px 0;border-bottom:1px solid var(--line)}
.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}
.section-title{font-family:Georgia,'Times New Roman',serif;font-size:30px;margin:0}
.section-link{font-size:13px;font-weight:700}
.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 34px}
.story{padding:22px 0;border-top:1px solid var(--line)}
.story h3{
  font-family:Georgia,'Times New Roman',serif;font-size:27px;line-height:1.08;
  letter-spacing:-.02em;margin:7px 0 10px
}
.story p{margin:0 0 11px;font-size:15px;color:#333}
.newsletter-band{background:var(--red);color:white;padding:46px 0}
.newsletter-inner{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:28px}
.newsletter-band h2{font-family:Georgia,'Times New Roman',serif;font-size:42px;margin:4px 0 10px}
.newsletter-band p{font-size:18px;max-width:620px;margin:0}
.newsletter-cta{justify-self:end;background:white;color:var(--red);padding:13px 18px;font-weight:700}
.analysis-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:28px}
.analysis-card{padding-top:18px;border-top:1px solid var(--line)}
.analysis-card:first-child h3{font-size:38px}
.analysis-card h3{font-family:Georgia,'Times New Roman',serif;font-size:28px;line-height:1.08;margin:8px 0 12px}
.analysis-card p{margin:0 0 12px;color:#333}
.ai-strip{padding:18px 0;border-bottom:1px solid var(--line);font-size:13px;color:#444}
.footer{padding:36px 0 60px}
.footer-grid{display:flex;flex-wrap:wrap;gap:20px;font-size:13px;color:var(--muted)}
.page-title{padding:54px 0 24px;border-bottom:1px solid var(--line)}
.page-title h1{font-family:Georgia,'Times New Roman',serif;font-size:56px;margin:0}
.article{max-width:780px;margin:0 auto;padding:58px 0}
.article h1{font-family:Georgia,'Times New Roman',serif;font-size:62px;line-height:1.02;letter-spacing:-.035em;margin:8px 0 18px}
.article .standfirst{font-family:Georgia,'Times New Roman',serif;font-size:24px;color:#333;line-height:1.35}
.article .byline{margin:22px 0 34px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.article-body{font-family:Georgia,'Times New Roman',serif;font-size:20px;line-height:1.7}
.article-body p{margin:0 0 1.25em}
.article-body h2{font-size:30px;line-height:1.2;margin:1.7em 0 .6em}
.related{margin-top:54px;padding-top:24px;border-top:1px solid var(--line)}
.newsletters-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;padding:40px 0}
.nl-card{border-top:4px solid var(--red);padding:24px 0 28px}
.nl-card h2{font-family:Georgia,'Times New Roman',serif;font-size:34px;margin:0 0 10px}
.button{display:inline-block;background:var(--red);color:#fff;padding:10px 14px;font-weight:700}
.author-hero{padding:54px 0;border-bottom:1px solid var(--line)}
.author-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:58px;margin:4px 0 10px}
.author-hero p{max-width:700px;font-size:19px;color:#333}
@media(max-width:760px){
  .container{width:min(var(--max),calc(100% - 24px))}
  .header-top{padding:10px 0}
  .logo-box{width:46px;height:46px}
  .brand-name{font-size:22px}
  .tagline{font-size:10px}
  .nav-row{gap:14px;overflow-x:auto;white-space:nowrap;padding-bottom:10px}
  .hero{padding:48px 0 38px}
  .hero .deck{font-size:20px}
  .news-grid,.analysis-grid,.newsletter-inner,.newsletters-list{grid-template-columns:1fr}
  .newsletter-cta{justify-self:start;margin-top:6px}
  .story h3{font-size:24px}
  .article{padding:38px 0}
  .article h1{font-size:44px}
  .article .standfirst{font-size:21px}
}
