/* News listing uses the shared catalogue shell. */
.news-banner { background: linear-gradient(110deg, #e8eef2, #d8eaf5 60%, #b9d9ee); color: #243b4c; overflow: hidden; }
.news-banner::before, .news-banner::after { display: none; }
.news-banner .catalog-banner-inner { min-height: 260px; grid-template-columns: 1.3fr 1fr; }
.news-banner .catalog-banner-title { color: #009bd6; }
.news-banner p { color: #536b7d; }
.news-banner-art { width: 100%; max-width: 420px; height: 230px; justify-self: end; color: #3888bb; opacity: .65; }
.news-rows { list-style: none; margin: 0; padding: 0; }
.news-row { border-bottom: 1px solid #edf0f2; }
.news-row a { display: grid; grid-template-columns: 7px minmax(0, 1fr) auto; align-items: baseline; gap: 12px; padding: 17px 0; color: #687985; font-size: 14px; line-height: 1.65; transition: color .2s; }
.news-row a::before { content: ''; width: 6px; height: 6px; border: 1px solid #aebbc4; border-radius: 50%; }
.news-row a:hover, .news-row a:focus-visible { color: #009bd6; }
.news-row time { color: #98a3ac; font-size: 12px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.news-row time::before { content: '[ '; }
.news-row time::after { content: ' ]'; }
.news-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin-top: 24px; }
.news-pagination a, .news-pagination span { padding: 9px 13px; border: 1px solid #e8edf1; font-size: 14px; color: #7b8993; }
.news-pagination a:hover, .news-pagination a[aria-current] { color: white; background: #009bd6; border-color: #009bd6; }
.news-pagination span { color: #bcc4ca; }
.news-article .article-main { display: flex; flex-direction: column; min-height: 440px; }
.news-article .article-neighbors { margin-top: auto; }
.news-article .article-content { padding-bottom: 24px; }
@media(max-width: 680px) {
  .news-article .article-main { min-height: 0; }
}
@media(max-width: 760px) {
  .news-banner .catalog-banner-inner { min-height: 210px; }
  .news-banner-art { height: 170px; }
}
@media(max-width: 540px) {
  .news-banner .catalog-banner-inner { grid-template-columns: 1fr; position: relative; padding-block: 28px; min-height: 190px; }
  .news-banner .catalog-banner-copy { position: relative; z-index: 1; }
  .news-banner-art { position: absolute; right: -70px; width: 270px; opacity: .14; }
  .news-row a { grid-template-columns: 6px minmax(0, 1fr) auto; gap: 8px; padding-block: 13px; align-items: center; }
  .news-row a > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .news-row time { font-size: 11px; }
}
