.news-card:focus-visible, .news-pagination a:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
.news-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; padding: 0 0 8vh; }
.news-pagination a, .news-pagination span { min-width: 42px; padding: 10px 14px; text-align: center; border: 1px solid var(--line); border-radius: 999px; }
.news-pagination [aria-current], .news-pagination a:hover { background: var(--navy); color: #fff; }
.news-article { max-width: 940px; padding-top: clamp(130px, 16vh, 190px); padding-bottom: 12vh; }
.news-article-back { margin-bottom: 36px; color: var(--ink-3); }
.news-article h1 { font-size: clamp(26px, 4vw, 44px); line-height: 1.4; letter-spacing: -.035em; overflow-wrap: anywhere; }
.news-article-meta { margin-top: 18px; color: var(--ink-3); font-size: 14px; }
.news-article-meta span { margin-left: 10px; }
.news-article-body { margin-top: 40px; white-space: pre-wrap; overflow-wrap: anywhere; color: var(--ink-2); font-size: 16px; line-height: 1.9; }
.news-article-images { display: grid; gap: 20px; margin-top: 36px; }
.news-article-images img { width: 100%; height: auto; border-radius: var(--radius); }
.news-article-links { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 40px; }
.news-more-wrap:has([hidden]) { display: none; }
