/* Pages under /news/, served by the news service (features/F-004-news-feed.md). site.css comes first. */
.nav a[aria-current="page"] { color: var(--bone); }
.news { gap: 18px; }
.news-article { display: grid; gap: 18px; }
.news-article > * { min-width: 0; }
.news h1 { overflow-wrap: anywhere; }
.news-kind { color: var(--gold); font-family: var(--head); font-weight: 700; font-size: 0.9375rem; text-transform: uppercase; letter-spacing: 0.02em; }
.news-meta, .news-source, .news-filter { color: var(--mist); font-size: 1rem; }
.news-meta a, .news-source a, .news-filter a, .news-tags a, .news-trimmed a, .news-list h2 a { text-underline-offset: 3px; }
.news blockquote { margin: 0; padding: 4px 0 4px 18px; border-left: 3px solid var(--gold); }
.news blockquote footer { margin-top: 6px; color: var(--mist); font-size: 0.9375rem; }
.news-lead p { font-size: clamp(1.125rem, 1.8vw, 1.3125rem); line-height: 1.5; }
.news-note, .news-quote { border-left-color: var(--steel); }
.news-section { display: grid; gap: 12px; min-width: 0; }
.news-section h2 { font-size: clamp(1.375rem, 2.6vw, 1.75rem); margin-top: 10px; }
.news-section strong, .news-lead strong, .news-list strong { color: var(--gold-hot); }
.news-minor details { border-bottom: 1px solid var(--steel); }
.news-minor summary { padding-block: 12px; font-weight: 600; cursor: pointer; }
.news-minor details ul { padding-bottom: 14px; }
.news-tags { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.news-tags a { color: var(--gold); }
.news-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 6px; }
.news-actions .cta { margin-top: 0; }
.news-cta-quiet { background: transparent; color: var(--gold); box-shadow: inset 0 0 0 2px var(--gold); }
.news-cta-quiet:hover { background: transparent; color: var(--gold-hot); box-shadow: inset 0 0 0 2px var(--gold-hot); }
.news-list { list-style: none; margin: 0; padding: 0; display: grid; }
.news-list li { display: grid; gap: 8px; padding-block: 20px; border-bottom: 1px solid var(--steel); min-width: 0; }
.news-list li:first-child { padding-top: 4px; }
.news-list h2 { font-size: clamp(1.375rem, 2.6vw, 1.875rem); overflow-wrap: anywhere; }
.news-list h2 a { text-decoration: none; }
.news-list h2 a:hover { text-decoration: underline; }
.news-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; }
.news-pager span { color: var(--mist); }
.news-empty { font-size: 1.1875rem; max-width: 40em; }
