.news-wrap { max-width: 800px; }
.news-meta { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; color: var(--muted); font-size: 14px; }
.news-label { background: var(--bg); color: var(--navy); padding: 2px 10px; border-radius: 6px; font-size: 12px; }
.news-list { list-style: none; padding: 0; margin: 0 0 24px; }
.news-list li + li { border-top: 1px solid var(--line); }
.news-list a { display: block; padding: 20px 0; }
.news-list a:hover .news-title { text-decoration: underline; text-underline-offset: 4px; }
.news-list .news-meta { margin-bottom: 8px; }
.news-title { font-size: 18px; color: var(--navy); }
.news-entry { padding: clamp(20px, 4vw, 36px); scroll-margin-top: 100px; overflow-wrap: anywhere; }
.news-entry h2 { margin-top: 20px; font-size: clamp(24px, 3vw, 30px); }
.news-entry h3 { margin-top: 28px; }
.news-entry li + li { margin-top: 8px; }
.news-entry ul { padding-left: 1.5em; }
.news-back { text-decoration: underline; text-underline-offset: 4px; }
.news-page a:focus-visible, .news-list a:focus-visible { outline: 2px solid var(--navy); outline-offset: 4px; }
