@charset "UTF-8";

body.single-product.stm-engine-storefront .stm-single-media { position:relative; align-self:start; min-width:0; min-height:0; height:auto; padding:var(--stm-single-media-padding); border:var(--stm-single-panel-border); border-radius:var(--stm-single-panel-radius); background:var(--stm-commerce-surface); overflow:hidden; }
body.single-product.stm-engine-storefront .stm-single-media__sale { position:absolute; z-index:var(--stm-z-badge); top:var(--stm-space-3); left:var(--stm-space-3); padding:6px 10px; border-radius:var(--stm-radius-pill); background:var(--stm-commerce-danger); color:var(--stm-color-on-dark); font-size:var(--stm-font-size-label); font-weight:var(--stm-weight-bold); line-height:1; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery { width:100%; min-width:0; min-height:0; margin:0; float:none; overflow:hidden; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__wrapper { min-width:0; margin:0; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery .flex-viewport { position:relative; }
body.single-product.stm-engine-storefront:not(.stm-product-gallery-grid) .stm-single-media .woocommerce-product-gallery:not(.is-stm-gallery-ready) .woocommerce-product-gallery__wrapper { display:grid; grid-template-columns:minmax(0,1fr); aspect-ratio:var(--stm-single-gallery-placeholder-ratio); overflow:hidden; }
body.single-product.stm-engine-storefront:not(.stm-product-gallery-grid) .stm-single-media .woocommerce-product-gallery:not(.is-stm-gallery-ready) .woocommerce-product-gallery__image { grid-area:1/1; width:100%; min-width:0; margin:0; float:none; }
body.single-product.stm-engine-storefront:not(.stm-product-gallery-grid) .stm-single-media .woocommerce-product-gallery:not(.is-stm-gallery-ready) .woocommerce-product-gallery__image:not(:first-child) { display:none; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__image,
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__image a { display:block; min-width:0; background:var(--stm-commerce-surface); cursor:zoom-in; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__image img { display:block; width:100%; height:auto; max-height:none; margin:0 auto; object-fit:contain; object-position:center; transform:none; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__trigger { position:absolute; z-index:var(--stm-z-overlay); top:var(--stm-space-3); right:var(--stm-space-3); display:grid; width:var(--stm-single-zoom-size); height:var(--stm-single-zoom-size); min-width:var(--stm-single-zoom-size); min-height:var(--stm-single-zoom-size); padding:0; place-items:center; border:var(--stm-border-width) solid var(--stm-commerce-border); border-radius:50%; background:var(--stm-commerce-surface); color:transparent; font-size:0; line-height:0; text-decoration:none; box-sizing:border-box; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__trigger::before { width:var(--stm-single-zoom-icon-size); height:var(--stm-single-zoom-icon-size); background:var(--stm-commerce-heading); content:""; mask:url("../../icons/zoom.svg") center/contain no-repeat; -webkit-mask:url("../../icons/zoom.svg") center/contain no-repeat; }
body.single-product.stm-engine-storefront .stm-single-media .woocommerce-product-gallery__trigger::after { display:none; }
body.single-product.stm-engine-storefront .stm-single-media .flex-control-thumbs { display:grid; grid-template-columns:repeat(auto-fill,minmax(var(--stm-single-thumbnail-size),var(--stm-single-thumbnail-size))); gap:var(--stm-space-2); justify-content:start; margin:var(--stm-space-3) 0 0; padding:0; list-style:none; }
body.single-product.stm-engine-storefront .stm-single-media .flex-control-thumbs li { width:var(--stm-single-thumbnail-size); margin:0; float:none; }
body.single-product.stm-engine-storefront .stm-single-media .flex-control-thumbs img { display:block; width:100%; aspect-ratio:1; border:var(--stm-border-width) solid var(--stm-commerce-border); border-radius:var(--stm-radius-sm); background:var(--stm-commerce-surface); object-fit:contain; opacity:1; cursor:pointer; }
body.single-product.stm-engine-storefront .stm-single-media .flex-control-thumbs img.flex-active { border-color:var(--stm-commerce-primary); }
body.single-product.stm-engine-storefront .stm-single-media .flex-control-thumbs img:focus-visible { outline:2px solid var(--stm-commerce-primary); outline-offset:2px; }
body.single-product.stm-engine-storefront.stm-product-gallery-vertical .stm-single-media .woocommerce-product-gallery.is-stm-gallery-ready { display:grid; grid-template-columns:var(--stm-single-thumbnail-size) minmax(0,1fr); gap:var(--stm-space-3); align-items:start; }
body.single-product.stm-engine-storefront.stm-product-gallery-vertical .stm-single-media .woocommerce-product-gallery.is-stm-gallery-ready .flex-viewport,
body.single-product.stm-engine-storefront.stm-product-gallery-vertical .stm-single-media .woocommerce-product-gallery.is-stm-gallery-ready .woocommerce-product-gallery__wrapper { grid-column:2; grid-row:1; min-width:0; }
body.single-product.stm-engine-storefront.stm-product-gallery-vertical .stm-single-media .woocommerce-product-gallery.is-stm-gallery-ready .flex-control-thumbs { grid-column:1; grid-row:1; grid-template-columns:1fr; align-content:start; max-height:620px; margin:0; overflow-y:auto; scrollbar-width:thin; }
body.single-product.stm-engine-storefront.stm-product-gallery-grid .stm-single-media .woocommerce-product-gallery__wrapper { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--stm-space-3); transform:none; }
body.single-product.stm-engine-storefront.stm-product-gallery-grid .stm-single-media .woocommerce-product-gallery__image { display:block; width:auto; margin:0; float:none; }
body.single-product.stm-engine-storefront.stm-product-gallery-grid .stm-single-media .flex-control-thumbs { display:none; }


body.single-product.stm-engine-storefront .stm-single-gallery-nav { position:absolute; z-index:var(--stm-z-overlay); inset:0; pointer-events:none; }
body.single-product.stm-engine-storefront .stm-single-gallery-nav[hidden] { display:none; }
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button {
  position:absolute;
  top:50%;
  display:grid;
  width:var(--stm-single-gallery-nav-size);
  height:var(--stm-single-gallery-nav-size);
  min-width:var(--stm-single-gallery-nav-size);
  min-height:var(--stm-single-gallery-nav-size);
  padding:0;
  place-items:center;
  border:var(--stm-border-width) solid var(--stm-single-gallery-nav-border);
  border-radius:50%;
  background:var(--stm-single-gallery-nav-bg);
  color:var(--stm-single-gallery-nav-icon);
  box-shadow:var(--stm-commerce-shadow-soft);
  opacity:0;
  pointer-events:auto;
  cursor:pointer;
  transform:translateY(-50%) scale(.94);
  transition:opacity var(--stm-commerce-transition),transform var(--stm-commerce-transition),background-color var(--stm-commerce-transition),border-color var(--stm-commerce-transition),color var(--stm-commerce-transition);
}
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button.is-previous { left:var(--stm-single-gallery-nav-inset); }
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button.is-next { right:var(--stm-single-gallery-nav-inset); }
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button::before {
  width:var(--stm-single-gallery-nav-icon-size);
  height:var(--stm-single-gallery-nav-icon-size);
  border-block-start:2px solid currentColor;
  border-inline-end:2px solid currentColor;
  content:"";
}
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button.is-previous::before { transform:rotate(-135deg);margin-inline-start:4px; }
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button.is-next::before { transform:rotate(45deg);margin-inline-end:4px; }
body.single-product.stm-engine-storefront .stm-single-media:hover .stm-single-gallery-nav__button,
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button:focus-visible { opacity:1;transform:translateY(-50%) scale(1); }
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button:hover,
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button:focus-visible {
  border-color:var(--stm-single-gallery-nav-hover-bg);
  background:var(--stm-single-gallery-nav-hover-bg);
  color:var(--stm-commerce-button-text);
  opacity:1;
  transform:translateY(-50%) scale(1.04);
}
body.single-product.stm-engine-storefront .stm-single-gallery-nav__button:focus-visible { outline:2px solid var(--stm-commerce-focus);outline-offset:3px; }

body.stm-product-lightbox-open { overflow:hidden; }
.stm-product-lightbox[hidden] { display:none; }
.stm-product-lightbox { position:fixed; z-index:var(--stm-single-lightbox-z); inset:0; display:grid; place-items:center; padding:clamp(14px,3vw,40px); background:rgba(5,7,17,.9); }
.stm-product-lightbox__stage { position:absolute; inset:0; display:grid; place-items:center; overflow:hidden; touch-action:none; cursor:grab; }
.stm-product-lightbox__stage.is-dragging { cursor:grabbing; }
.stm-product-lightbox__image { display:block; max-width:min(92vw,1600px); max-height:90vh; width:auto; height:auto; object-fit:contain; user-select:none; -webkit-user-drag:none; transform:translate3d(0,0,0) scale(1); transform-origin:center; will-change:transform; }
.stm-product-lightbox__close { position:absolute; z-index:2; top:18px; right:18px; width:44px; height:44px; min-width:44px; min-height:44px; padding:0; border:1px solid rgba(255,255,255,.45); border-radius:50%; background:rgba(17,24,39,.68); cursor:pointer; box-sizing:border-box; }
.stm-product-lightbox__close::before,.stm-product-lightbox__close::after { position:absolute; top:50%; left:50%; width:20px; height:2px; background:#fff; content:""; }
.stm-product-lightbox__close::before { transform:translate(-50%,-50%) rotate(45deg); }
.stm-product-lightbox__close::after { transform:translate(-50%,-50%) rotate(-45deg); }
.stm-product-lightbox__close:hover { border-color:#fff; background:rgba(17,24,39,.9); }
