.mdp-ivg{--mdp-gap:6px;--mdp-radius:0px;position:relative;width:100%;max-width:100%;min-width:0;margin:0;padding:0;box-sizing:border-box;overflow:hidden}.mdp-ivg *{box-sizing:border-box}.mdp-ivg-stage{position:relative}.mdp-ivg-stage,.mdp-ivg-track{width:100%;max-width:100%;min-width:0;height:auto!important;min-height:0!important;margin:0!important;padding:0!important}.mdp-ivg-item{position:relative;width:100%;max-width:100%;min-width:0;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden;border-radius:var(--mdp-radius);background:rgba(0,0,0,.02);cursor:zoom-in;line-height:0}.mdp-ivg-item img{display:block;width:100%!important;height:100%!important;max-width:100%!important;margin:0!important;padding:0!important;object-fit:cover}.mdp-ivg-fit-contain .mdp-ivg-item img{object-fit:contain}.mdp-ivg-ratio-3-4 .mdp-ivg-item{aspect-ratio:3/4}.mdp-ivg-ratio-4-5 .mdp-ivg-item{aspect-ratio:4/5}.mdp-ivg-ratio-1-1 .mdp-ivg-item{aspect-ratio:1/1}.mdp-ivg-ratio-natural .mdp-ivg-item{aspect-ratio:auto}.mdp-ivg-ratio-natural .mdp-ivg-item img{height:auto!important}.mdp-ivg-thumbs{display:flex;gap:10px;overflow:auto;scrollbar-width:none}.mdp-ivg-thumbs::-webkit-scrollbar,.mdp-ivg-track::-webkit-scrollbar,.mdp-ivg-lb-viewport::-webkit-scrollbar,.mdp-ivg-lb-thumbs::-webkit-scrollbar{display:none}.mdp-ivg-thumb,.mdp-ivg-lb-thumb{appearance:none;border:0;background:none;padding:0;overflow:hidden;cursor:pointer}.mdp-ivg-thumb img,.mdp-ivg-lb-thumb img{width:100%;height:100%;display:block;object-fit:cover}

.mdp-ivg-wishlist-proxy-wrap{position:absolute;right:18px;bottom:18px;z-index:8;line-height:1;opacity:0;pointer-events:none;transition:opacity .15s ease}.mdp-ivg-wishlist-proxy-wrap.is-ready{opacity:1;pointer-events:auto}.mdp-ivg-wishlist-proxy-wrap button.mdp-sw-heart{background:rgba(255,255,255,.96)!important;background-color:rgba(255,255,255,.96)!important;border-color:rgba(17,17,17,.18)!important;box-shadow:0 4px 16px rgba(0,0,0,.14)!important;backdrop-filter:blur(5px)}.mdp-ivg-wishlist-proxy-wrap button.mdp-sw-heart:hover,.mdp-ivg-wishlist-proxy-wrap button.mdp-sw-heart:focus-visible{background:#fff!important;background-color:#fff!important}.mdp-ivg-wishlist-proxy-wrap button.mdp-sw-heart.is-saved{background:#fff!important;background-color:#fff!important}

@media (min-width:1024px){body.mdp-ivg-active div.product>.mdp-ivg-auto{width:70%!important;max-width:70%!important;flex:0 0 70%!important;float:left!important}body.mdp-ivg-active div.product>.summary{width:28%!important;max-width:28%!important;flex:0 0 28%!important;float:right!important}.mdp-ivg-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--mdp-gap)}.mdp-ivg-thumbs{display:none}}
@media (min-width:768px) and (max-width:1023px){body.mdp-ivg-active div.product>.mdp-ivg-auto{width:64%!important;max-width:64%!important;flex:0 0 64%!important;float:left!important}body.mdp-ivg-active div.product>.summary{width:34%!important;max-width:34%!important;flex:0 0 34%!important;float:right!important}.mdp-ivg-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--mdp-gap)}.mdp-ivg-thumbs{display:none}}

@media (max-width:767px){.mdp-ivg{width:100%;max-width:100%}.mdp-ivg-wishlist-proxy-wrap{right:14px;bottom:14px}.mdp-ivg-thumbs{margin-top:12px;padding:0 0 2px}.mdp-ivg-thumb{flex:0 0 84px;aspect-ratio:4/5;border:2px solid transparent;border-radius:12px;opacity:.92}.mdp-ivg-thumb.is-active{border-color:#111}.mdp-ivg-thumb img{border-radius:10px}.mdp-ivg-m-thumbs .mdp-ivg-track{display:block}.mdp-ivg-m-thumbs .mdp-ivg-item{display:none}.mdp-ivg-m-thumbs .mdp-ivg-item.is-active{display:block}.mdp-ivg-m-slider .mdp-ivg-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;gap:0}.mdp-ivg-m-slider .mdp-ivg-item{display:block;flex:0 0 100%;scroll-snap-align:start;scroll-snap-stop:always}}

html.mdp-ivg-lock{overflow:hidden}.mdp-ivg-lightbox{position:fixed;inset:0;z-index:999999;display:none;background:rgba(10,10,10,.76)}.mdp-ivg-lightbox.is-open{display:block}.mdp-ivg-lb-shell{position:relative;width:100%;height:100%}.mdp-ivg-lb-viewport{width:100%;height:100%;display:grid;place-items:center;padding:28px 28px 112px}.mdp-ivg-lb-track{width:100%;height:100%;display:grid;place-items:center}.mdp-ivg-lb-slide{display:none;width:100%;height:100%;margin:0;place-items:center}.mdp-ivg-lb-slide.is-active{display:grid}.mdp-ivg-lb-slide img{display:block;max-width:min(82vw,1100px);max-height:calc(100vh - 180px);width:auto;height:auto;object-fit:contain}.mdp-ivg-lb-thumbs{display:none}.mdp-ivg-lb-controls{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:18px;z-index:3}.mdp-ivg-lb-btn{width:74px;height:74px;border:0;border-radius:999px;background:#fff;color:#111;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.24);cursor:pointer;font-size:34px;line-height:1}.mdp-ivg-lb-close{font-size:40px}.mdp-ivg-lb-close-mobile{display:none}

/* v2.1.8 — cursor-following zoom belongs to the opened desktop lightbox only.
 * Normal product-page images remain unchanged and clickable. The lightbox slide
 * clips the transformed full-resolution image, so zoom cannot affect layout.
 */
@media (min-width:768px) and (hover:hover) and (pointer:fine){
.mdp-ivg-lb-slide{overflow:hidden}
.mdp-ivg-lb-slide>img{transform:scale(1);transform-origin:var(--mdp-lb-zoom-x,50%) var(--mdp-lb-zoom-y,50%);transition:transform .14s ease-out;will-change:transform;cursor:zoom-in}
.mdp-ivg-lb-slide.is-hover-zoomed>img{transform:scale(2.15);transition-duration:.06s;cursor:zoom-out}
}
@media (prefers-reduced-motion:reduce){
.mdp-ivg-lb-slide>img{transition:none!important}
}

@media (max-width:767px){.mdp-ivg-lightbox{background:#fff;overflow:hidden}.mdp-ivg-lb-shell{height:100dvh;display:grid;grid-template-rows:minmax(0,1fr) auto}.mdp-ivg-lb-viewport{width:100vw;height:100%;padding:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain}.mdp-ivg-lb-track{width:100%;height:100%;display:flex;place-items:initial}.mdp-ivg-lb-slide,.mdp-ivg-lb-slide.is-active{display:grid;flex:0 0 100%;width:100%;height:100%;margin:0;place-items:center;scroll-snap-align:start;scroll-snap-stop:always}.mdp-ivg-lb-slide img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.mdp-ivg-lb-thumbs{display:flex;gap:10px;overflow:auto;padding:12px 12px calc(12px + env(safe-area-inset-bottom));background:#fff}.mdp-ivg-lb-thumb{flex:0 0 84px;aspect-ratio:4/5;border:2px solid transparent;border-radius:12px}.mdp-ivg-lb-thumb.is-active{border-color:#111}.mdp-ivg-lb-thumb img{border-radius:10px}.mdp-ivg-lb-controls{display:none}.mdp-ivg-lb-close-mobile{display:grid;position:fixed;top:calc(env(safe-area-inset-top,0px) + 16px);right:16px;z-index:1000001;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.97);color:#111;place-items:center;font-size:30px;font-weight:400;line-height:1;box-shadow:0 3px 16px rgba(0,0,0,.18)}}

/* v2.1.6 — container-safe desktop product columns.
 * The earlier viewport-width contract could become wider than Astra/Elementor's
 * product row and make the gallery wrap above the summary. Every desktop width
 * now resolves inside the real product container, so changing the column gap or
 * narrowing the browser cannot create oversized images or horizontal overflow.
 */
@media (min-width:768px){
body.mdp-ivg-active div.product{--mdp-product-gap:clamp(12px,1.25vw,24px);width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;column-gap:0!important;box-sizing:border-box!important}
body.mdp-ivg-active div.product>.mdp-ivg-auto,
body.mdp-ivg-active div.product>.summary{min-width:0!important;box-sizing:border-box!important}
body.mdp-ivg-active div.product>.mdp-ivg-auto{overflow:hidden!important}
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-stage,
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-track,
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-item,
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-item img{width:100%!important;max-width:100%!important;min-width:0!important}
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (min-width:1280px){
body.mdp-ivg-active div.product>.mdp-ivg-auto{width:calc(66% - var(--mdp-product-gap))!important;max-width:calc(66% - var(--mdp-product-gap))!important;flex:0 1 calc(66% - var(--mdp-product-gap))!important;float:left!important;margin:0 var(--mdp-product-gap) 0 0!important}
body.mdp-ivg-active div.product>.summary{width:34%!important;max-width:34%!important;flex:0 1 34%!important;float:right!important;margin:0!important}
}
@media (min-width:1024px) and (max-width:1279px){
body.mdp-ivg-active div.product>.mdp-ivg-auto{width:calc(62% - var(--mdp-product-gap))!important;max-width:calc(62% - var(--mdp-product-gap))!important;flex:0 1 calc(62% - var(--mdp-product-gap))!important;float:left!important;margin:0 var(--mdp-product-gap) 0 0!important}
body.mdp-ivg-active div.product>.summary{width:38%!important;max-width:38%!important;flex:0 1 38%!important;float:right!important;margin:0!important}
}
@media (min-width:768px) and (max-width:1023px){
body.mdp-ivg-active div.product>.mdp-ivg-auto{width:calc(58% - var(--mdp-product-gap))!important;max-width:calc(58% - var(--mdp-product-gap))!important;flex:0 1 calc(58% - var(--mdp-product-gap))!important;float:left!important;margin:0 var(--mdp-product-gap) 0 0!important}
body.mdp-ivg-active div.product>.summary{width:42%!important;max-width:42%!important;flex:0 1 42%!important;float:right!important;margin:0!important}
}

/* v2.1.2 — large portrait fashion frames. The comparison gap was height, not column width. */
.mdp-ivg-ratio-5-7 .mdp-ivg-item{aspect-ratio:5/7}

@media (min-width:1024px){
body.mdp-ivg-active .mdp-ivg-auto.mdp-ivg-ratio-5-7 .mdp-ivg-item{aspect-ratio:5/7!important}
body.mdp-ivg-active .mdp-ivg-auto.mdp-ivg-ratio-5-7 .mdp-ivg-item img{width:100%!important;height:100%!important;object-fit:cover!important}
}

@media (max-width:767px){
/* Automatic gallery breaks out of theme/page-builder padding so the hero image uses the phone width. */
body.mdp-ivg-active .mdp-ivg-auto{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-stage,body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-track{width:100vw!important;max-width:100vw!important}
body.mdp-ivg-active .mdp-ivg-auto.mdp-ivg-ratio-5-7 .mdp-ivg-item{aspect-ratio:5/7!important}
body.mdp-ivg-active .mdp-ivg-auto .mdp-ivg-thumbs{padding-left:12px!important;padding-right:12px!important}
}

/* v2.1.3 — larger desktop lightbox image, smaller navigation controls. */
@media (min-width:768px){
.mdp-ivg-lb-viewport{padding:12px 12px 72px!important}
.mdp-ivg-lb-slide img{max-width:min(94vw,1600px)!important;max-height:calc(100vh - 84px)!important}
.mdp-ivg-lb-controls{bottom:12px!important;gap:12px!important}
.mdp-ivg-lb-btn{width:52px!important;height:52px!important;font-size:22px!important;box-shadow:0 6px 20px rgba(0,0,0,.2)!important}
.mdp-ivg-lb-close{font-size:28px!important}
}
