/* Product list: full image, no crop. Detail: main image height 500px. */

.product-grid .product-image,
.product-catalog .product-image,
.product-card .product-image {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #fff !important;
}

.product-grid .product-image img,
.product-catalog .product-image img,
.product-card .product-image img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

.product-card:hover .product-image img {
  transform: none !important;
}

.product-gallery-main,
.product-gallery-zoom {
  background: #fff;
}

/* Main image only — do NOT target .product-gallery img (breaks thumbs) */
.product-gallery-main img,
.product-gallery-zoom img,
#local-product-cover {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 500px !important;
  max-height: 500px !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #fff !important;
}

.product-gallery-thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center !important;
  background: #f1f0ee !important;
}

@media (max-width: 900px) {
  .product-gallery-main img,
  .product-gallery-zoom img,
  #local-product-cover {
    height: auto !important;
    max-height: none !important;
  }
}

/* product CTA black */
.product-price-sale,
#local-product-price {
  color: #111 !important;
}
.buy-button.buy-now,
#local-product-buy-now {
  color: #fff !important;
  background: #111 !important;
  border-color: #111 !important;
}
.buy-button.buy-now:hover:not(:disabled),
#local-product-buy-now:hover:not(:disabled),
.buy-button:hover:not(:disabled) {
  color: #fff !important;
  background: #000 !important;
  border-color: #000 !important;
}
