/* News-specific styles: other editorial sections keep their existing layout. */
/* Extra side padding for news pages only; the site-wide gutter is untouched. */
.news-archive > .site-shell, .news-article > .site-shell { padding-inline: calc(var(--page-gutter) + clamp(.5rem, 2vw, 2rem)); }
.news-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: clamp(1.25rem, 2.5vw, 2rem); align-items: start; }
.news-grid--single { grid-template-columns: minmax(0, 22rem); }
.news-grid--pair { grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 22rem)); }
.news-card { min-width: 0; display: flex; flex-direction: column; overflow: hidden; border: 1px solid rgba(23, 32, 27, .2); background: var(--color-light); }
.news-card__image { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.news-card__image--placeholder { background: linear-gradient(145deg, #b7dce6, var(--color-leaf-soft) 48%, #6faec4 72%, #ffffff); }
.news-card__body { display: flex; min-width: 0; flex: 1; flex-direction: column; align-items: start; gap: .85rem; padding: clamp(1.25rem, 2.2vw, 1.65rem); }
.news-card--text .news-card__body { min-height: 14rem; }
.news-meta { display: flex; flex-wrap: wrap; gap: .45rem 1rem; margin-top: auto; color: #4b584d; font: 500 .8rem/1.5 var(--font-sans); }
.news-meta span { text-transform: uppercase; letter-spacing: .055em; }
.news-card h3, .news-card h2 { font-size: clamp(1.6rem, 2.4vw, 2.15rem); line-height: 1.15; overflow-wrap: anywhere; }
.news-card h3 a, .news-card h2 a { text-decoration: none; }
.news-card__link { display: flex; height: 100%; flex-direction: column; color: inherit; text-decoration: none; }
.news-card__link:hover .news-card__title, .news-card__link:focus-visible .news-card__title { text-decoration: underline; text-underline-offset: .2em; }
.news-card__title { color: inherit; }
.news-card__arrow { display: inline-block; margin-left: .15em; }
.news-card__type { color: #4b584d; font: 700 .78rem/1.4 var(--font-sans); letter-spacing: .08em; text-transform: uppercase; }
.news-card__summary { color: #4b584d; font-size: .95rem; line-height: 1.55; overflow-wrap: anywhere; }
.news-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(23, 32, 27, .2); }
.news-item { padding-block: clamp(1.25rem, 2.5vw, 2rem); border-bottom: 1px solid rgba(23, 32, 27, .2); }
.news-item__title { font-size: clamp(1.4rem, 2.4vw, 2rem); line-height: 1.2; overflow-wrap: anywhere; }
.news-item__title a { color: inherit; text-decoration: underline; text-underline-offset: .2em; }
.news-item__title a:hover, .news-item__title a:focus-visible { text-decoration-thickness: 2px; }
.news-item .news-meta { margin-top: .6rem; }
.news-empty { padding: 2rem 0; border-top: 1px solid rgba(23, 32, 27, .2); }
.news-archive { padding-top: clamp(4rem, 8vw, 7rem); }
.news-archive__heading { max-width: 52rem; margin-bottom: clamp(2rem, 5vw, 4rem); }
.news-archive__heading h2 { font-size: clamp(2.5rem, 5.5vw, 5rem); line-height: 1.08; }
.news-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2rem; margin-top: 3rem; border-top: 1px solid rgba(23, 32, 27, .2); padding-top: 1.5rem; }
.news-pagination a { padding-block: .65rem; }
.news-article { padding-top: clamp(3rem, 6vw, 6rem); }
.news-article__reading { max-width: 48rem; margin-inline: auto; }
.news-back { display: inline-block; margin-bottom: 2.5rem; text-underline-offset: .3em; }
.news-article__header { margin-bottom: 2.5rem; }
.news-article__header h1 { font-size: clamp(2.6rem, 6vw, 5rem); line-height: 1.08; margin-top: 1rem; overflow-wrap: anywhere; }
.news-article__cover { margin-bottom: 2.5rem; }
.news-article__cover img { width: 100%; height: auto; }
.news-article__cover-placeholder { width: min(100%, 24rem); aspect-ratio: 4 / 5; background: linear-gradient(145deg, #b7dce6, var(--color-leaf-soft) 48%, #6faec4 72%, #ffffff); }
.news-article__cover figcaption { margin-top: .6rem; font-size: .85rem; color: #4b584d; }
.news-prose { font-size: clamp(1.1rem, 1.8vw, 1.25rem); line-height: 1.8; overflow-wrap: anywhere; }
.news-prose > * + * { margin-top: 1.3rem; }
.news-prose h2, .news-prose h3 { margin-top: 2.5rem; line-height: 1.2; }
.news-prose h2 { font-size: 2rem; }
.news-prose h3 { font-size: 1.6rem; }
.news-prose ul, .news-prose ol { padding-left: 1.5rem; }
.news-prose ul { list-style: disc; }
.news-prose ol { list-style: decimal; }
.news-prose blockquote { border-left: 3px solid var(--color-moss); padding-left: 1.5rem; }
.news-prose a { text-decoration: underline; text-underline-offset: .2em; }
.news-prose img { max-width: 100%; height: auto; }
.news-prose pre { max-width: 100%; overflow-x: auto; padding: 1rem; background: #e5e2d8; font-size: .9rem; }
.news-article__footer { margin-top: 3rem; border-top: 1px solid rgba(23, 32, 27, .2); padding-top: 1.5rem; }
@media (min-width: 48rem) {
  .news-card--text .news-card__body { min-height: 22rem; }
}
@media (min-width: 70rem) {
  .news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .news-grid--single { grid-template-columns: minmax(0, 20rem); }
  .news-grid--pair { grid-template-columns: repeat(2, minmax(0, 20rem)); }
}
