/* GaveGlade: never crop product gallery / lightbox / shop cards.
   Letterbox bars must match page (white/transparent) — never gray #f5f5f5. */

/* --- Block product gallery: large image --- */
.wc-block-product-gallery-large-image img,
.wc-block-product-gallery-large-image video,
.wc-block-product-gallery-large-image .wc-block-components-product-image img,
.wc-block-product-gallery-large-image .wc-block-components-product-image video,
.wc-block-product-gallery-large-image .wc-block-woocommerce-product-gallery-large-image__image,
.wc-block-components-product-image img,
.wc-block-components-product-image video,
.wp-block-woocommerce-product-image img {
  object-fit: contain !important;
  object-position: center center !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  background: transparent !important;
}

/* Force contain even when block uses non-auto aspect-ratio classes */
.wc-block-components-product-image--aspect-ratio-3-4 img,
.wc-block-components-product-image--aspect-ratio-4-3 img,
.wc-block-components-product-image--aspect-ratio-1 img,
.wc-block-components-product-image--aspect-ratio-3-2 img,
.wc-block-components-product-image--aspect-ratio-2-3 img,
.wc-block-components-product-image--aspect-ratio-16-9 img,
.wc-block-components-product-image--aspect-ratio-9-16 img,
.wc-block-components-product-image--aspect-ratio-auto img {
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
}

/* Letterbox wrappers: match page background (white), never gray bars */
.wc-block-product-gallery-large-image,
.wc-block-product-gallery-large-image__wrapper,
.wc-block-product-gallery-large-image .wc-block-components-product-image,
.wc-block-product-gallery-large-image .wc-block-components-product-image__inner-container,
.wp-block-woocommerce-product-gallery,
.wp-block-woocommerce-product-gallery-large-image,
.wc-block-product-gallery,
.wc-block-product-gallery__inner-blocks {
  background: transparent !important;
  background-color: transparent !important;
}

/* --- Block gallery thumbnails: WC defaults to cover — override --- */
.wc-block-product-gallery-thumbnails__thumbnail,
.wc-block-product-gallery-thumbnails__thumbnail__image,
.wc-block-product-gallery-thumbnails img {
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* --- Fullscreen / dialog lightbox --- */
.wc-block-product-gallery-dialog img,
.wc-block-product-gallery-dialog video,
.wc-block-product-gallery-dialog__content img,
.wc-block-product-gallery-dialog__content video {
  object-fit: contain !important;
  object-position: center center !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  background: transparent !important;
}

/* --- Classic Woo gallery + zoom + Photoswipe --- */
.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery__image--placeholder img,
.single-product .flex-viewport img,
.single-product .zoomImg,
.single-product .woocommerce-product-gallery .zoomImg,
.single-product .pswp__img,
.single-product .pswp__img--placeholder,
.woocommerce div.product div.images img,
.woocommerce-page div.product div.images img,
.pswp__img,
.pswp img,
.pswp__zoom-wrap img,
.pswp__item img,
.photoswipe img,
.mfp-img,
.flex-viewport img {
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
}

/* Kill gray letterbox on classic gallery frames / flex-viewport */
.single-product .woocommerce-product-gallery,
.single-product .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image--placeholder,
.single-product .flex-viewport,
.woocommerce div.product div.images,
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images .flex-viewport,
.woocommerce-product-gallery,
.woocommerce-product-gallery__wrapper,
.woocommerce-product-gallery__image,
.flex-viewport {
  background: transparent !important;
  background-color: transparent !important;
}

.single-product .woocommerce-product-gallery__image {
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.single-product .woocommerce-product-gallery__image a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  background: transparent !important;
}

/* --- Shop / archive / related product cards --- */
ul.products li.product img,
.wc-block-grid__product-image img,
.wc-block-product-image img,
.woocommerce-LoopProduct-link img,
.wp-block-woocommerce-product-image img,
.wc-block-components-product-image a img {
  object-fit: contain !important;
  object-position: center center !important;
  background: transparent !important;
}
