.news-page .news-container { width: min(100% - 32px, 900px); margin: 3rem auto 5rem; }
.news-heading { max-width: 750px; margin-bottom: 2.5rem; }
.news-page h1 { font-size: clamp(2.1rem, 5vw, 3.6rem); line-height: 1.15; margin: .6rem 0 1.4rem; overflow-wrap: anywhere; }
.news-heading > p:last-child { font-size: 1.2rem; color: var(--text-secondary); max-width: 65ch; }
.news-eyebrow { color: var(--goldenrod); font-family: var(--font-heading); letter-spacing: .09em; text-transform: uppercase; font-size: .8rem; }
.news-card { border-top: 1px solid var(--border-color); padding: 2rem 0 2.5rem; }
.news-card h2 { font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.3; margin: .8rem 0 1rem; }
.news-card h2 a { color: var(--text-primary); }
.news-card p, .news-story p { max-width: 72ch; }
.news-meta, .news-source, .news-edition { color: var(--text-muted); font-size: .95rem; margin: .3rem 0; }
.news-tags { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; padding: 0; margin: 1.25rem 0; }
.news-tags li { margin: 0; }
.news-tags a { display: inline-flex; align-items: center; min-height: 44px; padding: .45rem .85rem; background: var(--bg-secondary); border: 1px solid var(--border-color); border-radius: var(--radius); color: var(--forest); font-size: .9rem; }
.news-tags a:hover { border-color: var(--forest); }
.news-page a:focus-visible { outline: 2px solid var(--goldenrod); outline-offset: 5px; }
.news-topics { margin-bottom: 2rem; }
.news-topics h2 { font-size: 1rem; }
.news-breadcrumb { margin-bottom: 2rem; color: var(--text-muted); }
.news-breadcrumb span { margin-left: .5rem; }
.news-summary { margin: 2rem 0; font-size: 1.12rem; }
.news-context { background: var(--bg-secondary); border-left: 3px solid var(--goldenrod); border-radius: var(--radius); padding: 1.5rem; margin: 2rem 0; }
.news-context h2, .news-sources h2 { font-size: 1.5rem; margin-bottom: 1rem; }
.news-sources { margin: 2rem 0; }
.news-sources .source-links { list-style: none; padding: 0; }
.news-sources li { margin-bottom: 1rem; }
.news-sources a { overflow-wrap: anywhere; }
.news-preview { background: var(--bg-secondary); border: 1px solid var(--goldenrod); border-radius: var(--radius); padding: 1rem; margin-bottom: 2rem; }
.news-badge { display: inline-block; color: var(--goldenrod); margin-left: .5rem; }
.news-empty { border-top: 1px solid var(--border-color); padding-top: 2rem; }
.news-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (min-width: 768px) { .news-page .news-container { width: min(100% - 64px, 900px); } }
@media (prefers-reduced-motion: reduce) { .news-page main { animation: none; opacity: 1; } }
