/* /news: press coverage. Stories reuse the home strip's masthead treatment
   (white knockout logos on the dark press panel, inverted on the light panel
   in day mode) so the outlet marks read as one set across the site. */
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.nw-hero { padding: 84px 0 56px; }
.nw-eyebrow { color: var(--ink-sky); font-size: 13px; font-weight: 600; letter-spacing: .13em; text-transform: uppercase; margin: 0 0 22px; }
.nw-hero h1 { font-size: clamp(52px, 6.4vw, 88px); line-height: .99; letter-spacing: -.055em; font-weight: 600; margin: 0; max-width: 12ch; }
.nw-lede { max-width: 36rem; font-size: 20px; line-height: 1.55; color: var(--dim); margin: 26px 0 0; }
.nw-lede a { color: var(--ink-royal); font-weight: 600; text-underline-offset: 3px; }
.nw-list { padding-bottom: 110px; }

/* Masthead plate */
.nw-plate {
  display: grid; place-items: center;
  border-radius: 16px;
  background: linear-gradient(180deg, #141c2e, #0d1320);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
.nw-plate img { width: auto; height: auto; max-width: 70%; max-height: 30px; object-fit: contain; opacity: .9; }
.nw-plate.is-box img { max-height: 46px; }
.nw-plate.is-wide img { max-height: 24px; max-width: 78%; }
.nw-plate.is-text span { color: rgba(255, 255, 255, 0.9); font-size: 19px; font-weight: 600; letter-spacing: -.01em; text-align: center; padding: 0 12px; line-height: 1.15; }
html[data-theme="light"] .nw-plate { background: linear-gradient(180deg, #ffffff, #eef2f9); border-color: rgba(28, 40, 82, 0.1); }
html[data-theme="light"] .nw-plate img { filter: invert(1); opacity: .72; }
html[data-theme="light"] .nw-plate.is-text span { color: rgba(28, 40, 82, 0.8); }

/* Story text */
.nw-meta { display: flex; flex-wrap: wrap; gap: 4px 8px; margin: 0 0 10px; color: var(--dim); font-size: 14px; line-height: 1.45; }
.nw-outlet { color: var(--ink-sky); font-weight: 600; }
.nw-head { font-size: clamp(21px, 2vw, 26px); line-height: 1.22; letter-spacing: -.025em; font-weight: 600; margin: 0 0 12px; text-wrap: pretty; }
.nw-head a { color: var(--text); text-decoration: none; }
.nw-head a:hover { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.nw-sum { color: var(--dim); font-size: 17px; line-height: 1.6; margin: 0; max-width: 44rem; }
.nw-links { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 22px; margin: 16px 0 0; font-size: 14px; }
.nw-src { color: var(--dim); }
.nw-extra { color: var(--ink-royal); font-weight: 600; text-decoration: none; }
.nw-extra:hover { text-decoration: underline; text-underline-offset: 3px; }
.nw-story { position: relative; scroll-margin-top: 100px; }
.news a:focus-visible { outline: 3px solid var(--ink-sky); outline-offset: 4px; border-radius: 6px; }
.nw-foot { margin: 40px 0 0; color: var(--dim); font-size: 15px; line-height: 1.6; max-width: 44rem; }
.nw-foot a { color: var(--ink-royal); font-weight: 600; text-underline-offset: 3px; }

/* Year groups. The newest year leads with its stories as cards side by side
   (Fox News and the New York Post ran the same report on 2026-10-04); older
   years sit in one panel as a log, a row per story. */
.nw-year { display: flex; align-items: baseline; gap: 14px; margin: 0 0 18px; }
.nw-year h2 { font-size: 30px; font-weight: 600; letter-spacing: -.035em; margin: 0; }
.nw-year p { color: var(--dim); font-size: 15px; margin: 0; }
.nw-group + .nw-group { margin-top: 64px; }
.nw-lead { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.nw-lead .nw-story { display: flex; flex-direction: column; background: var(--panel); border-radius: var(--r-lg); box-shadow: var(--soft-shadow); padding: 14px 14px 30px; }
.nw-lead .nw-plate { height: 132px; border-radius: 20px; }
.nw-lead .nw-body { padding: 26px 20px 0; display: flex; flex-direction: column; flex: 1; }
.nw-lead .nw-head { font-size: clamp(23px, 2.3vw, 30px); }
.nw-lead .nw-links { margin-top: auto; padding-top: 18px; }
.nw-log { background: var(--panel); border-radius: var(--r-lg); box-shadow: var(--soft-shadow); padding: 8px 40px; }
.nw-log .nw-story { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 36px; padding: 34px 0; border-bottom: 1px solid var(--line-hi); }
.nw-log .nw-story:last-child { border-bottom: 0; }
.nw-log .nw-plate { height: 112px; }

@media (max-width: 760px) {
  .nw-hero { padding: 48px 0 36px; }
  .nw-hero h1 { font-size: clamp(48px, 13.6vw, 72px); }
  .nw-lede { font-size: 18px; margin-top: 20px; }
  .nw-head, .nw-lead .nw-head { font-size: 20px; }
  .nw-sum { font-size: 16px; }
  .nw-list { padding-bottom: 72px; }
  .nw-year h2 { font-size: 26px; }
  .nw-group + .nw-group { margin-top: 48px; }
  .nw-lead { grid-template-columns: 1fr; gap: 16px; }
  .nw-lead .nw-story { border-radius: var(--r); padding: 10px 10px 24px; }
  .nw-lead .nw-plate { height: 92px; border-radius: 14px; }
  .nw-lead .nw-body { padding: 18px 12px 0; }
  .nw-log { padding: 4px 20px; border-radius: var(--r); }
  .nw-log .nw-story { grid-template-columns: 1fr; gap: 16px; padding: 24px 0; }
  .nw-log .nw-plate { height: 64px; max-width: 220px; border-radius: 12px; }
  .nw-log .nw-plate.is-box img { max-height: 40px; }
  .nw-plate.is-text span { font-size: 17px; }
}
