/* News-only refinements; the professor's homepage artwork and palette stay intact. */
.news-page .page-hero{min-height:390px;padding-top:135px;padding-bottom:52px}
.news-page .content-section{padding-top:60px}
.news-page .page-hero h1{font-size:clamp(3.6rem,7vw,6.5rem)}
.news-page .breadcrumb{display:flex;flex-wrap:wrap;gap:.75rem}
.news-index-intro{display:flex;justify-content:space-between;align-items:end;gap:2rem}
.news-index-intro h2{margin:0;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.4}
.news-total{margin:0;color:var(--blue);font-size:2.75rem;font-weight:700;line-height:1}
.news-total span{display:block;color:var(--muted);font-size:.875rem;font-weight:400;margin-top:.7rem;white-space:nowrap}
.archive-explanation{max-width:850px;font-size:.875rem;line-height:1.9;color:var(--muted);margin:1.5rem 0 2rem}
.news-page .news-filter{gap:.65rem;margin-bottom:3rem;scroll-margin-top:110px}
.news-page .news-filter a{display:inline-flex;align-items:center;gap:.7rem;font-size:.875rem;padding:.65rem 1rem;background:#fff}
.news-page .news-filter a span{color:var(--muted);font-size:.75rem;font-weight:400}
.news-page .news-filter a:hover{border-color:var(--blue);color:var(--blue)}
.news-year-section{scroll-margin-top:110px;position:relative}
.news-year-heading{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-top:3.5rem}
.news-year-heading .year-divider{margin:0 0 1.1rem;font-size:clamp(2.5rem,5vw,3.75rem)}
.news-year-heading>a{font-size:.875rem;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.archive-anchor{position:absolute;top:0;scroll-margin-top:110px}
.news-page .news-row{grid-template-columns:112px 100px minmax(0,1fr);gap:1.2rem;padding:1.6rem 0}
.news-page .news-row time{font-size:.875rem}
.news-page .news-row .category{font-size:.75rem;letter-spacing:.04em;line-height:1.6}
.news-page .news-row h3{font-size:1.05rem;font-weight:600;line-height:1.8;letter-spacing:0;margin:0;overflow-wrap:anywhere}
.news-page .news-row:hover{padding-left:1rem;padding-right:1rem}
.news-page .news-row:hover h3{text-decoration:underline;text-underline-offset:5px}
.news-page a:focus-visible,.home-news-all:focus-visible,.timeline>a.news:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
.news-article .page-hero{min-height:0;padding-top:124px;padding-bottom:24px}
.news-article .page-hero-inner{max-width:900px}
.news-article .content-section{padding-top:48px}
.news-article .article-meta time,.news-article .article-meta span{font-size:.875rem}
.news-article .article-title{font-size:clamp(1.75rem,3.2vw,2.7rem);line-height:1.6;letter-spacing:0;overflow-wrap:anywhere;margin-bottom:2rem}
.news-article .article-body{font-size:1rem;overflow-wrap:anywhere}
.news-article .presentation-title{font-weight:600}
.original-notice{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--line)}
.original-notice h2{font-size:1.25rem;line-height:1.5;margin:0 0 .5rem}
.archive-caption{color:var(--muted);font-size:.875rem}
.archive-note{font-size:.875rem;line-height:1.9;color:var(--muted);padding:1.25rem 1.5rem;background:var(--paper);border-radius:12px;margin-top:2.5rem}
.article-contact a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.news-article .article-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:1.5rem;margin-top:3rem;font-size:.875rem}
.adjacent-article span{display:block;font-size:.8125rem;color:var(--muted);margin-bottom:.5rem}
.adjacent-article strong{font-size:.875rem;line-height:1.8;font-weight:500;display:block;overflow-wrap:anywhere}
.all-news-link{padding:.7rem .9rem;border:1px solid var(--line);border-radius:8px;text-align:center}
.home-news-all{display:inline-flex!important;margin-top:1.5rem!important;font-size:.9rem!important}
.timeline>a.news{color:inherit;transition:background .2s}
.timeline>a.news:hover{background:rgba(17,104,218,.045)}
.timeline>a.news:hover b{text-decoration:underline;text-underline-offset:5px}
.news-read{font-size:.8125rem;color:var(--blue);white-space:nowrap}
@media(max-width:720px){
  .links a[href="news.html"]{display:inline-flex!important}
  .nav{gap:12px}.links{gap:12px}
  .news-page .news-row{grid-template-columns:110px minmax(0,1fr);gap:.5rem 1rem}
  .news-page .news-row h3{grid-column:1/-1}
  .news-page .news-row .category{grid-column:2}
  .news-article .article-navigation{grid-template-columns:1fr}
  .article-navigation>span:empty{display:none}
  .all-news-link{grid-row:1;justify-self:start}
  .news-index-intro{align-items:center;gap:1rem}
  .news-total{font-size:2.25rem}
  .news-page .page-hero{min-height:330px;padding-top:112px;padding-bottom:40px}
  .news-article .page-hero{min-height:0;padding-top:105px;padding-bottom:20px}
  .news-page .content-section{padding-top:40px}
  .timeline .news-read{display:none}
}
@media(prefers-reduced-motion:reduce){.news-page .news-row,.timeline>a.news{transition:none}}
