/* A — newspaper feature */
:root { --bg:#fff; --text:#1a1a1a; --muted:#666; --line:#dcdcdc; --accent:#b3121f; --soft:#f5f3ef; }
@media (prefers-color-scheme: dark) { :root { --bg:#121212; --text:#ececec; --muted:#9a9a9a; --line:#2c2c2c; --accent:#e5484d; --soft:#1c1c1c; } }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); font-family:"Frank Ruhl Libre", Georgia, serif; font-size:20px; line-height:1.75; }
.sans { font-family:"Assistant", Arial, sans-serif; }
a { color:inherit; }
.masthead { border-bottom:1px solid var(--line); }
.masthead .in { max-width:1100px; margin:0 auto; padding:14px 16px 10px; text-align:center; }
.masthead .name { font-size:40px; font-weight:700; letter-spacing:1px; line-height:1.1; }
.masthead .date { font-family:"Assistant",sans-serif; font-size:13px; color:var(--muted); margin-top:4px; }
.sections { border-bottom:3px double var(--line); }
.sections ul { list-style:none; margin:0 auto; padding:8px 16px; display:flex; gap:20px; justify-content:center; flex-wrap:wrap; font-family:"Assistant",sans-serif; font-size:14px; font-weight:600; max-width:1100px; }
.sections li.on { color:var(--accent); }
main { max-width:720px; margin:0 auto; padding:36px 16px 60px; }
.kicker { font-family:"Assistant",sans-serif; color:var(--accent); font-weight:700; font-size:15px; margin:0 0 10px; }
h1 { font-size:clamp(36px,6vw,54px); line-height:1.15; margin:0 0 14px; font-weight:700; }
.dek { font-size:23px; color:var(--muted); margin:0 0 20px; line-height:1.5; }
.byline { font-family:"Assistant",sans-serif; font-size:14px; color:var(--muted); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:10px 0; margin-bottom:26px; display:flex; gap:14px; flex-wrap:wrap; }
.byline b { color:var(--text); }
figure.hero { margin:0 0 28px; }
.hero-img { aspect-ratio:16/9; background:linear-gradient(135deg,#d9d4cb,#b9b2a6); display:flex; align-items:center; justify-content:center; gap:28px; }
@media (prefers-color-scheme: dark) { .hero-img { background:linear-gradient(135deg,#2e2b27,#1f1d1a); } }
.hero-img span { width:120px; height:150px; background:rgba(255,255,255,.35); display:grid; place-items:center; font-size:60px; color:rgba(0,0,0,.45); }
@media (prefers-color-scheme: dark) { .hero-img span { background:rgba(255,255,255,.06); color:rgba(255,255,255,.4); } }
figcaption { font-family:"Assistant",sans-serif; font-size:13px; color:var(--muted); margin-top:6px; }
.lead { font-weight:700; }
h2 { font-size:28px; margin:36px 0 8px; line-height:1.3; }
blockquote { margin:34px 0; padding:0; border:0; text-align:center; font-size:27px; line-height:1.5; font-style:italic; }
blockquote::before { content:"”"; display:block; font-size:70px; line-height:.6; color:var(--accent); font-style:normal; }
blockquote footer { font-family:"Assistant",sans-serif; font-style:normal; font-size:14px; color:var(--muted); margin-top:10px; }
.box { background:var(--soft); border-top:3px solid var(--accent); padding:20px 22px; margin:34px 0; font-family:"Assistant",sans-serif; }
.box h3 { margin:0 0 10px; font-size:19px; }
.box dl { margin:0; display:grid; grid-template-columns:1fr auto; }
.box dt, .box dd { margin:0; padding:7px 0; border-bottom:1px solid var(--line); font-size:16px; }
.box dd { font-weight:700; text-align:left; }
.end { font-family:"Assistant",sans-serif; font-size:14px; color:var(--muted); border-top:1px solid var(--line); padding-top:14px; margin-top:40px; }

/* main-site additions */
.masthead .name a { text-decoration: none; }
h2 { scroll-margin-top: 16px; }
.more { font-family: "Assistant", sans-serif; border-top: 3px double var(--line); margin-top: 40px; padding-top: 14px; font-size: 15px; color: var(--muted); }
.more b { color: var(--text); }
.english { font-family: "Assistant", sans-serif; font-size: 16px; color: var(--muted); border-top: 1px solid var(--line); margin-top: 30px; padding-top: 12px; }
.english h2 { font-family: "Assistant", sans-serif; font-size: 17px; color: var(--text); margin: 0 0 4px; }
footer.site { border-top: 1px solid var(--line); font-family: "Assistant", sans-serif; font-size: 13px; color: var(--muted); text-align: center; padding: 18px 16px 30px; }
