/* Only reviewed product photography receives this class; logos and machines do not. */
body img.sf-product-photo,
body[data-sf-lang="en"][data-sf-page] img.sf-product-photo {
  object-fit: contain !important;
  object-position: center !important;
  background: #f2f3f3 !important;
  padding: 14px !important;
  box-sizing: border-box;
}
body img.sf-product-photo.sf-product-studio,
body[data-sf-lang="en"][data-sf-page] img.sf-product-photo.sf-product-studio { padding: 0 !important; }
body .sfr-photo img.sf-product-photo,
body .sfr-category-photo img.sf-product-photo,
body .product-card img.sf-product-photo,
body .case-card img.sf-product-photo,
body .sfgeo-solution img.sf-product-photo,
body .sfgeo-related-grid img.sf-product-photo,
body .gallery img.sf-product-photo,
body .factory-gallery-pro img.sf-product-photo,
body[data-sf-lang="en"][data-sf-page] .product-card img.sf-product-photo,
body[data-sf-lang="en"][data-sf-page] .case-card img.sf-product-photo,
body[data-sf-lang="en"][data-sf-page] .gallery img.sf-product-photo,
body[data-sf-lang="en"][data-sf-page] .factory-gallery-pro img.sf-product-photo {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
}
body .sfgeo-hero-media img.sf-product-photo,
body .showcase-frame img.sf-product-photo {
  width: 100%;
  aspect-ratio: 4 / 3;
  max-height: 520px;
}
body .product-card:hover img.sf-product-photo,
body .sfr-model:hover img.sf-product-photo {
  transform: scale(1.015);
}
body .production-view-grid {
  grid-template-columns: minmax(260px, .62fr) minmax(0, 1.38fr);
  align-items: stretch;
}
body .production-view-grid .media-video,
body .production-view-grid .media-side { min-height: 0; height: 620px; }
body .production-view-grid .media-mini-grid { min-height: 0; height: 100%; }
body .production-view-grid .media-mini-grid figure { aspect-ratio: auto !important; }
body .production-view-grid .media-mini-grid img { aspect-ratio: auto !important; height: 100% !important; }
body .production-view-grid .media-video .sf-portrait-production-video {
  display: block;
  width: 100%;
  height: 100% !important;
  min-height: 0;
  object-fit: contain !important;
  background: #e7ebec;
}
body .production-view-grid .media-side h2 { font-size: 2.5rem; line-height: 1.12; }
body .production-view-grid .media-mini-grid figcaption { font-size: .875rem; }
@media (max-width: 900px) {
  body .production-view-grid { grid-template-columns: 1fr; }
  body .production-view-grid .media-video,
  body .production-view-grid .media-side { min-height: 0; height: auto; }
  body .production-view-grid .media-mini-grid { height: auto; }
  body .production-view-grid .media-video .sf-portrait-production-video { height: 480px !important; }
  body .production-view-grid .media-mini-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, 210px); }
}
@media (max-width: 480px) {
  body img.sf-product-photo { padding: 10px !important; }
  body .production-view-grid .media-side h2 { font-size: 1.8rem; }
  body .production-view-grid .media-mini-grid { grid-template-rows: repeat(2, 165px); }
}
@media (prefers-reduced-motion: reduce) {
  body img.sf-product-photo { transition: none !important; transform: none !important; }
}
