/*
 * This is intentionally a versioned public stylesheet. Older GlowSignal
 * service workers cached Next's generated CSS under stable chunk paths, so a
 * Safari session could retain an obsolete product-card layout. Public assets
 * are fetched outside that legacy cache and override the generated styles.
 */
.home-product-grid .product-card:not(.product-card--brand) .product-card-link {
  display: flex !important;
  min-height: 0 !important;
  flex-direction: column;
}

.home-product-grid .product-card:not(.product-card--brand) .product-shot {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
  flex: 0 0 auto;
  padding: 12px !important;
  border-right: 0 !important;
  border-bottom: 1px solid #eee5e9 !important;
  border-radius: 14px 14px 0 0 !important;
}

.home-product-grid .product-card:not(.product-card--brand) .product-card-copy {
  padding: 16px !important;
}

.home-product-grid .product-card:not(.product-card--brand) .product-card-main {
  min-height: 0 !important;
}

/* Official retailer images replace their text fallback instead of layering
 * over it while the image load event resolves. */
.retailer-link b img:not(.is-loaded) { opacity: 0 !important; }
.retailer-link b img.is-loaded { opacity: 1 !important; }
