/* Bright Sun media grid repair layer */
.product-grid,
.application-grid,
.news-grid,
.about-card-grid,
.landing-feature-grid {
  display: grid;
  gap: 24px;
  align-items: stretch;
}
.product-grid,
.dense-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.featured-grid,
.application-grid,
.news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.product-card,
.application-card,
.news-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  background: #fff;
}
.product-image,
.application-card > img,
.news-card > img,
.about-preview > img,
.visual-panel > img,
.article-hero > img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 190px;
  object-fit: cover;
  background: linear-gradient(135deg, #e8eeeb, #f7f9f8);
}
.product-image img {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}
.product-card .card-info,
.application-card div,
.news-card div { flex: 1; }
.product-card-actions { margin-top: auto; }
.image-pending {
  filter: blur(8px);
  transform: scale(1.01);
  opacity: .72;
}
.image-loaded {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  transition: opacity .25s ease, filter .25s ease, transform .25s ease;
}
.image-error {
  object-position: center;
  filter: saturate(.92);
}
@media (max-width: 1180px) {
  .product-grid,
  .dense-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 920px) {
  .product-grid,
  .dense-grid,
  .featured-grid,
  .application-grid,
  .news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .product-grid,
  .dense-grid,
  .featured-grid,
  .application-grid,
  .news-grid { grid-template-columns: 1fr; }
  .product-image,
  .application-card > img,
  .news-card > img,
  .about-preview > img,
  .visual-panel > img,
  .article-hero > img { min-height: 172px; }
}
