.ref-hero .ref-news-art.newsroom-product-visual { width: 100%; max-width: 100%; margin: 0; perspective: none; }
.newsroom-product-visual > img { display: block; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 15px 20px #0004); }
.news-art.news-cover-picture::before,.news-art.news-cover-picture::after { display: none; }
.news-art.news-cover-picture > img { position: relative; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: 1; border: 0; border-radius: 0; transform: none; transition: transform .4s ease; }
.news-card-link:hover .news-cover-picture > img { transform: scale(1.035); }
.news-article-banner .news-art.news-cover-picture > img { object-fit: contain; }
.news-article-banner .news-art.news-cover-picture { background: radial-gradient(ellipse,#302b20,#151617 80%); }
/* Give sidebar artwork enough room to read, with a closer subject crop. */
.ref-recent > a { grid-template-columns: 88px minmax(0,1fr); gap: 14px; }
.ref-recent .news-art.news-cover-picture {
  width: 88px;
  height: 88px;
  flex-shrink: 0;
  background: #171819;
}
.ref-recent .news-art.news-cover-picture > img {
  max-width: none;
  object-fit: cover;
  object-position: 50% 42%;
  transform: scale(1.18);
  filter: none;
  opacity: 1;
}
@media (max-width: 520px) {
  .ref-recent > a { grid-template-columns: 80px minmax(0,1fr); }
  .ref-recent .news-art.news-cover-picture { width: 80px; height: 80px; }
}
@media(prefers-reduced-motion:reduce) { .news-art.news-cover-picture > img { transition: none; } }

/* Article pictures remain whole and accompany the text while reading on desktop. */
.news-detail .news-article-banner > .news-art.news-cover-picture {
  aspect-ratio: auto;
  height: auto;
  min-height: 0;
}
.news-detail .news-article-banner .news-cover-picture > img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
@media(min-width:1050px) {
  .news-detail > article {
    display: grid;
    grid-template-columns: minmax(0,1.35fr) minmax(0,1fr);
    gap: 0 38px;
    align-items: start;
    width: min(1400px,calc(100% - 68px));
    margin-inline: auto;
  }
  .news-detail > article > .news-article-header {
    grid-column: 1 / -1;
    width: 100%;
    margin-inline: 0;
  }
  .news-detail > article > .news-article-banner {
    grid-column: 2;
    grid-row: 2;
    position: sticky;
    top: 105px;
    align-self: start;
    width: 100%;
    margin: 0 0 45px;
  }
  .news-detail > article > .news-prose {
    grid-column: 1;
    grid-row: 2;
    max-width: none;
    min-width: 0;
    padding: 0;
    margin: 0 0 55px;
  }
  .news-detail > article > .news-prose > :first-child { margin-top: 0; }
}
