/* Unique filename: 30-day static cache can keep serving older gallery CSS. */
/* stylelint-disable selector-class-pattern, no-descending-specificity -- WooCommerce gallery class names */

.mei-crumbs ol,
.mei-crumbs li {
  list-style: none !important;
  list-style-type: none !important;
}

.woocommerce div.product div.images.woocommerce-product-gallery {
  opacity: 1 !important;
  max-width: 100%;
  min-width: 0;
  width: 100%;
}

.woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__wrapper {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.4rem;
  width: 100% !important;
  max-width: 100%;
}

.woocommerce-product-gallery:not(.flexslider) .woocommerce-product-gallery__image:first-child {
  grid-column: 1 / -1;
}

.woocommerce div.product div.images.woocommerce-product-gallery .woocommerce-product-gallery__image {
  display: block;
  position: relative;
  width: auto;
  min-width: 0;
  margin: 0;
}

.woocommerce div.product div.images.woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2) {
  width: auto;
  display: block;
  position: relative;
  height: auto;
  clip: auto;
  overflow: visible;
  margin: 0;
}

/*
 * After FlexSlider inits, extra originals live in a horizontal track inside
 * .flex-viewport. Do not force the track to 100% width (that wraps extras into
 * a second large-tile grid that overlaps the real thumbnails).
 */
.woocommerce-product-gallery.flexslider .woocommerce-product-gallery__wrapper {
  display: block;
  width: auto !important;
  max-width: none;
}

.woocommerce-product-gallery.flexslider .woocommerce-product-gallery__image,
.woocommerce-product-gallery.flexslider .woocommerce-product-gallery__image:nth-child(n+2) {
  display: block;
  position: relative;
  height: auto;
  margin: 0;
  clip: auto;
  overflow: visible;
}

.woocommerce-product-gallery.flexslider .flex-viewport {
  max-width: 100%;
  min-width: 0;
  min-height: 12rem;
  overflow: hidden;
}

.woocommerce-product-gallery.flexslider .flex-viewport ~ .woocommerce-product-gallery__image {
  display: none !important;
}

.woocommerce div.product div.images.woocommerce-product-gallery .flex-viewport {
  max-width: 100%;
  min-width: 0;
  min-height: 12rem;
  overflow: hidden;
}

.mei-catalog-mode.single-product .woocommerce div.product div.images img,
.mei-catalog-mode.single-product .woocommerce div.product div.images .woocommerce-placeholder {
  aspect-ratio: auto;
  object-fit: contain;
  width: 100%;
  max-width: 100%;
  height: auto;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image a,
.woocommerce div.product div.images .flex-control-thumbs li img {
  cursor: pointer;
  pointer-events: auto;
}

.woocommerce div.product div.images .flex-control-thumbs {
  list-style: none !important;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.4rem;
  width: 100%;
  margin: 0.65rem 0 0;
  padding: 0;
  float: none;
  overflow: visible;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  list-style: none !important;
  width: auto;
  float: none;
  margin: 0;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
  width: 100%;
  height: auto;
  min-height: 44px;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  opacity: 1;
}

.pswp {
  z-index: 100000;
}
