.page-news { background: #f5f5f2; }
.news-hero { padding-top: clamp(3rem, 7vw, 6rem); padding-bottom: 2.5rem; }
.news-hero h1, .news-article h1 { max-width: 18ch; margin: .35rem 0 1rem; font-size: clamp(2.2rem, 5vw, 4.8rem); line-height: .98; letter-spacing: -.045em; }
.news-hero > p:last-child, .news-summary { max-width: 760px; color: #46514d; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.6; }
.news-eyebrow { margin: 0; color: #786547; font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.news-layout, .news-article__layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: clamp(2rem, 5vw, 5rem); padding-bottom: 5rem; }
.news-categories { position: sticky; top: 1rem; align-self: start; grid-column: 2; grid-row: 1; display: grid; gap: .45rem; }
.news-categories a { color: #26312d; padding: .7rem 0; border-bottom: 1px solid #d8d8d1; }
.news-feed { display: grid; gap: 1rem; min-width: 0; }
.news-card { padding: clamp(1.35rem, 3vw, 2.25rem); border: 1px solid #deded7; border-radius: 1.1rem; background: #fff; }
.news-card h2 { margin: .55rem 0 .8rem; font-size: clamp(1.35rem, 2.5vw, 2rem); line-height: 1.15; }
.news-card h2 a { color: #111b19; }
.news-card > p:not(.news-eyebrow) { color: #56615d; line-height: 1.65; }
.news-card__meta, .news-meta { display: flex; flex-wrap: wrap; gap: .45rem 1.2rem; margin-top: 1.2rem; color: #66716d; font-size: .88rem; }
.news-breadcrumbs { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 2rem; font-size: .9rem; }
.news-breadcrumbs a { color: #52605a; }
.news-article__header { padding-top: clamp(2.5rem, 6vw, 5rem); padding-bottom: 2.5rem; }
.news-article__body { min-width: 0; }
.news-article__body > section { padding: 1.7rem 0; border-top: 1px solid #d8d8d1; }
.news-article__body h2 { margin: 0 0 .9rem; font-size: clamp(1.35rem, 2.4vw, 2rem); }
.news-article__body p, .news-article__body li { font-size: 1.05rem; line-height: 1.75; }
.news-related { align-self: start; display: grid; gap: 1rem; }
.news-related > a, .news-cta { display: grid; gap: .55rem; padding: 1.25rem; border: 1px solid #d8d8d1; border-radius: 1rem; background: #fff; }
.news-related > a span { color: #786547; }
.news-cta { margin-top: 1rem; }
.news-cta .btn-primary { margin-top: .5rem; text-align: center; }
.news-sources li { display: grid; gap: .25rem; margin-bottom: 1rem; }
.news-sources li span { color: #66716d; font-size: .86rem; overflow-wrap: anywhere; }
.news-disclaimer, .news-correction { margin: 1.5rem 0; padding: 1.2rem; border-left: 4px solid #a48759; background: #ece9e2; line-height: 1.65; }
.news-empty { padding: 2rem; border: 1px solid #deded7; border-radius: 1rem; background: #fff; }
@media (max-width: 820px) { .news-layout, .news-article__layout { grid-template-columns: minmax(0, 1fr); } .news-categories { position: static; grid-column: 1; grid-row: auto; display: flex; overflow-x: auto; padding-bottom: .5rem; } .news-categories a { flex: 0 0 auto; padding-right: 1rem; } }
@media (max-width: 360px) { .news-hero h1, .news-article h1 { font-size: 2rem; overflow-wrap: anywhere; } .news-card, .news-related > a, .news-cta { padding: 1rem; } }
