/* style.css */
.cew-advanced-product-display-widget {
 display: flex;
 gap: var(--cew-thumb-distance, 20px);
 position: relative;
}

/* ── RTL Support ──────────────────────────────────────────────────────────────────── */
[dir="rtl"] .cew-advanced-product-display-widget {
 flex-direction: row-reverse;
}
[dir="rtl"] .cew-advanced-product-display-widget[data-thumb-pos="bottom"],
[dir="rtl"] .cew-advanced-product-display-widget[data-thumb-pos="top"] {
 flex-direction: column;
}
[dir="rtl"] .cew-main-prev { left: auto; right: var(--cew-arrow-offset, 15px); }
[dir="rtl"] .cew-main-next { right: auto; left: var(--cew-arrow-offset, 15px); }
[dir="rtl"] .cew-lightbox-prev { left: auto; right: 20px; }
[dir="rtl"] .cew-lightbox-next { right: auto; left: 20px; }
@media (max-width: 767px) {
 [dir="rtl"] .cew-main-prev { left: auto; right: 8px; }
 [dir="rtl"] .cew-main-next { right: auto; left: 8px; }
 [dir="rtl"] .cew-lightbox-prev { left: auto; right: 8px; }
 [dir="rtl"] .cew-lightbox-next { right: auto; left: 8px; }
}

.cew-sr-only {
 position: absolute;
 width: 1px;
 height: 1px;
 padding: 0;
 margin: -1px;
 overflow: hidden;
 clip: rect(0,0,0,0);
 white-space: nowrap;
 border: 0;
}

/* ── Main Carousel ─────────────────────────────────────────────────────────────────── */
.cew-main-carousel {
 flex: 1;
 position: relative;
 overflow: hidden;
 background: #f5f5f5;
 /* Flexible height — carousel adapts to actual image dimensions */
 height: auto;
 min-height: 200px;
}
/* Fix: When aspect-ratio is 0 or unset, use auto height */
.cew-main-carousel[style*="aspect-ratio: 0"],
.cew-main-carousel:not([style*="aspect-ratio"]) {
 aspect-ratio: auto !important;
 height: auto !important;
}
/* Override any inline aspect-ratio: 0 from Elementor */
.cew-main-carousel {
 aspect-ratio: auto;
 height: auto;
}

/* Fix: Flexible height for embroidered suits — no forced square ratio */
.cew-main-carousel .cew-main-slides-wrapper {
 position: relative;
 width: 100%;
 height: auto;
}
/* Slide transition wrapper must also be flexible */
.cew-advanced-product-display-widget[data-transition="slide"] .cew-main-slides-wrapper {
 display: flex;
 align-items: stretch;
}
/* For fade/none: active slide determines height via JS */
.cew-advanced-product-display-widget[data-transition="fade"] .cew-main-carousel,
.cew-advanced-product-display-widget[data-transition="none"] .cew-main-carousel {
 height: auto;
 min-height: 200px;
 position: relative;
}
/* Active slide is relative (determines height), others absolute */
.cew-advanced-product-display-widget[data-transition="fade"] .cew-main-slide.active,
.cew-advanced-product-display-widget[data-transition="none"] .cew-main-slide.active {
 position: relative !important;
}
.cew-main-slides-wrapper {
 position: relative;
 width: 100%;
 height: 100%;
 transition: transform 0.5s ease-in-out;
}
.cew-main-slides-wrapper.no-transition {
 transition: none !important;
}

/* ── Transitions ────────────────────────────────────────────────────────────────────── */
.cew-advanced-product-display-widget[data-transition="slide"] .cew-main-slides-wrapper {
 display: flex;
 align-items: flex-start;
}
.cew-advanced-product-display-widget[data-transition="slide"] .cew-main-slide {
 min-width: 100%;
 min-height: 0;
 opacity: 1;
 visibility: visible;
 flex-shrink: 0;
}
.cew-advanced-product-display-widget[data-transition="fade"] .cew-main-slide,
.cew-advanced-product-display-widget[data-transition="none"] .cew-main-slide {
 position: absolute;
 top: 0;
 left: 0;
 right: 0;
 width: 100%;
 opacity: 0;
 visibility: hidden;
}
.cew-advanced-product-display-widget[data-transition="fade"] .cew-main-slide {
 transition: opacity 0.4s ease-in-out 0.4s, visibility 0s 0.8s;
}
.cew-advanced-product-display-widget[data-transition="fade"] .cew-main-slide.active {
 opacity: 1;
 visibility: visible;
 transition: opacity 0.4s ease-in-out 0s, visibility 0s 0s;
}
.cew-advanced-product-display-widget[data-transition="none"] .cew-main-slide.active {
 opacity: 1;
 visibility: visible;
}

/* ── Loading skeleton ───────────────────────────────────────────────────────────────── */
.cew-main-slide {
 position: relative;
 width: 100%;
}
/* ── Sticky Fix: Prevent duplicate appearance when Elementor sticky is used ──────── */
.cew-advanced-product-display-widget,
.elementor-element[data-settings*="sticky"] {
 position: relative;
 z-index: 100;
}
.elementor-element[data-settings*="sticky"] .cew-advanced-product-display-widget {
 background: #fff;
}
.cew-main-slide::before {
 content: '';
 position: absolute;
 top: 50%;
 left: 50%;
 width: 40px;
 height: 40px;
 margin: -20px 0 0 -20px;
 border: 3px solid rgba(0,0,0,0.1);
 border-top-color: rgba(0,0,0,0.4);
 border-radius: 50%;
 animation: cew-spin 0.8s linear infinite;
 z-index: 1;
}
.cew-main-slide.loaded::before {
 display: none;
}
@keyframes cew-spin { to { transform: rotate(360deg); } }

/* ── Slide images / videos ──────────────────────────────────────────────────────────── */
.cew-main-slide img,
.cew-main-slide video {
 width: 100%;
 height: auto;
 object-fit: contain;
 object-position: center center;
 display: block;
}
@supports not (object-fit: contain) {
 .cew-main-slide img,
 .cew-main-slide video {
 height: auto;
 max-width: 100%;
 }
}
.cew-main-slide img {
 transition: transform 0.15s ease-out;
 cursor: zoom-in;
 transform-origin: 50% 50%;
}
.cew-main-slide.active img {
 will-change: transform;
}
.cew-main-slide:not(.active) img {
 will-change: auto;
}
.cew-main-slide.is-video img,
.cew-main-slide.is-video {
 cursor: default;
}

/* ── Arrows & Zoom — base ──────────────────────────────────────────────────────────── */
.cew-main-arrow,
.cew-zoom-icon {
 position: absolute;
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 transition: all 0.3s ease;
 z-index: 10;
}
.cew-main-arrow {
 top: 50%;
 transform: translateY(-50%);
}
.cew-main-prev { left: var(--cew-arrow-offset, 15px); }
.cew-main-next { right: var(--cew-arrow-offset, 15px); }

.cew-main-arrow-mobile { display: none; }
.cew-main-arrow-desktop { display: flex; align-items: center; justify-content: center; }

.cew-advanced-product-display-widget[data-main-arrow-vis="hover"] .cew-main-arrow {
 opacity: 0 !important;
 pointer-events: none !important;
 transition: opacity 0.3s ease;
}
.cew-advanced-product-display-widget[data-main-arrow-vis="hover"]:hover .cew-main-arrow,
.cew-advanced-product-display-widget[data-main-arrow-vis="hover"] .cew-main-arrow:focus-visible {
 opacity: 1 !important;
 pointer-events: auto !important;
}

.cew-zoom-icon {
 top: var(--cew-icon-offset, 10%);
 right: var(--cew-icon-offset, 10%);
}

/* ── Play/Pause ─────────────────────────────────────────────────────────────────────── */
.cew-play-pause-btn {
 position: absolute;
 z-index: 10;
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 transition: all 0.3s ease;
}
.cew-play-pause-btn .cew-icon-pause,
.cew-play-pause-btn .cew-icon-play { display: block; }
.cew-play-pause-btn[data-state="playing"] .cew-icon-play { display: none; }
.cew-play-pause-btn[data-state="paused"] .cew-icon-pause { display: none; }

/* ── Slide counter ──────────────────────────────────────────────────────────────────── */
.cew-slide-counter {
 position: absolute;
 z-index: 10;
 pointer-events: none;
}

/* ── Dot pagination ─────────────────────────────────────────────────────────────────── */
.cew-dots-container {
 display: flex;
 justify-content: center;
 position: absolute;
 left: 50%;
 transform: translateX(-50%);
 z-index: 10;
}
.cew-dot {
 border-radius: 50%;
 cursor: pointer;
 transition: all 0.3s ease;
 padding: 0;
 border: 2px solid rgba(255,255,255,0.4);
 width: 10px;
 height: 10px;
 background: transparent;
}

/* ── Thumbnail carousel ─────────────────────────────────────────────────────────────── */
.cew-thumbs-carousel-wrapper {
 position: relative;
 display: flex;
 gap: 10px;
 flex-direction: column;
 align-items: center;
 order: 0;
 align-self: auto;
 width: auto;
 min-width: 0;
 min-height: 0;
}

/* Bottom */
.cew-advanced-product-display-widget[data-thumb-pos="bottom"] { flex-direction: column; }
.cew-advanced-product-display-widget[data-thumb-pos="bottom"] .cew-thumbs-carousel-wrapper { 
 order: 2; 
 flex-direction: row; 
 width: 100%; 
 align-items: center; 
 align-self: auto;
 justify-content: center;
}
.cew-advanced-product-display-widget[data-thumb-pos="bottom"] .cew-main-carousel { width: 100%; flex: 1; }

/* Top */
.cew-advanced-product-display-widget[data-thumb-pos="top"] { flex-direction: column; }
.cew-advanced-product-display-widget[data-thumb-pos="top"] .cew-thumbs-carousel-wrapper { 
 order: 0; 
 flex-direction: row; 
 width: 100%; 
 align-items: center;
 align-self: auto;
 justify-content: center;
}
.cew-advanced-product-display-widget[data-thumb-pos="top"] .cew-main-carousel { width: 100%; flex: 1; }

/* Right */
.cew-advanced-product-display-widget[data-thumb-pos="right"] { flex-direction: row; }
.cew-advanced-product-display-widget[data-thumb-pos="right"] .cew-thumbs-carousel-wrapper { 
 order: 2; 
 flex-direction: column; 
 align-self: stretch; 
 width: auto;
 align-items: center;
 justify-content: flex-start;
}
.cew-advanced-product-display-widget[data-thumb-pos="right"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos="right"] .cew-thumbs-carousel { flex-direction: column; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); overflow-x: hidden; overflow-y: auto; }

/* Left */
.cew-advanced-product-display-widget[data-thumb-pos="left"] { flex-direction: row; }
.cew-advanced-product-display-widget[data-thumb-pos="left"] .cew-thumbs-carousel-wrapper { 
 order: 0; 
 flex-direction: column; 
 align-self: stretch; 
 width: auto;
 align-items: center;
 justify-content: flex-start;
}
.cew-advanced-product-display-widget[data-thumb-pos="left"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos="left"] .cew-thumbs-carousel { flex-direction: column; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); overflow-x: hidden; overflow-y: auto; }

/* Hidden */
.cew-advanced-product-display-widget[data-thumb-pos="hidden"] .cew-thumbs-carousel-wrapper { display: none; }

/* ── Thumbnail arrows ───────────────────────────────────────────────────────────────── */
.cew-thumb-arrow {
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 position: absolute;
 z-index: 15;
 background: rgba(255,255,255,0.8);
 border-radius: 50%;
 width: 30px;
 height: 30px;
 box-shadow: 0 2px 5px rgba(0,0,0,0.1);
 transition: all 0.3s ease;
}

.cew-thumb-arrow-mobile { display: none; }
.cew-thumb-arrow-desktop { display: flex; align-items: center; justify-content: center; }

.cew-advanced-product-display-widget[data-thumb-pos="top"] .cew-thumb-prev,
.cew-advanced-product-display-widget[data-thumb-pos="bottom"] .cew-thumb-prev { left: 0; top: 50%; transform: translateY(-50%); }
.cew-advanced-product-display-widget[data-thumb-pos="top"] .cew-thumb-next,
.cew-advanced-product-display-widget[data-thumb-pos="bottom"] .cew-thumb-next { right: 0; top: 50%; transform: translateY(-50%); }
.cew-advanced-product-display-widget[data-thumb-pos="left"] .cew-thumb-prev,
.cew-advanced-product-display-widget[data-thumb-pos="right"] .cew-thumb-prev { top: 0; left: 50%; transform: translateX(-50%); }
.cew-advanced-product-display-widget[data-thumb-pos="left"] .cew-thumb-next,
.cew-advanced-product-display-widget[data-thumb-pos="right"] .cew-thumb-next { bottom: 0; left: 50%; transform: translateX(-50%); }

.cew-advanced-product-display-widget[data-thumb-arrow-vis="hover"] .cew-thumb-arrow { opacity: 0 !important; pointer-events: none !important; }
.cew-advanced-product-display-widget[data-thumb-arrow-vis="hover"]:hover .cew-thumb-arrow,
.cew-advanced-product-display-widget[data-thumb-arrow-vis="hover"] .cew-thumb-arrow:focus-visible { opacity: 1 !important; pointer-events: auto !important; }

.cew-thumbs-carousel {
 display: flex;
 gap: var(--cew-thumb-gap, 10px);
 scroll-behavior: smooth;
 scrollbar-width: none;
 overflow-x: auto;
 overflow-y: hidden;
}
.cew-thumbs-carousel::-webkit-scrollbar { display: none; }

.cew-thumb-item,
.cew-thumb-clone {
 width: max(var(--cew-thumb-width, 100px), 20px);
 height: max(var(--cew-thumb-height, 100px), 20px);
 flex-shrink: 0;
 cursor: pointer;
 overflow: hidden;
 transition: opacity 0.3s ease, border-color 0.3s ease, transform 0.2s ease;
 box-sizing: border-box;
 border: 2px solid transparent;
}

.cew-thumb-item.active {
 opacity: 1;
}

.cew-thumb-item:hover {
 opacity: 0.85;
 transform: scale(var(--cew-thumb-hover-scale, 1.03));
}

.cew-thumb-item img,
.cew-thumb-item video,
.cew-thumb-clone img,
.cew-thumb-clone video {
 width: 100%;
 height: 100%;
 object-fit: cover;
 pointer-events: none;
 display: block;
}

/* ── Lightbox ───────────────────────────────────────────────────────────────────────── */
body.cew-lb-open { overflow: hidden; }

.cew-lightbox-overlay {
 position: fixed;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
 z-index: 999999;
 display: flex;
 align-items: center;
 justify-content: center;
 opacity: 0;
 visibility: hidden;
 transition: all 0.3s ease;
}
.cew-lightbox-overlay.active {
 opacity: 1;
 visibility: visible;
}
.cew-lightbox-content {
 max-width: 90vw;
 max-height: 90vh;
 display: flex;
 align-items: center;
 justify-content: center;
}
.cew-lightbox-content img,
.cew-lightbox-content video {
 max-width: 100%;
 max-height: 90vh;
 object-fit: contain;
 animation: cew-lb-fadein 0.3s ease;
}
@keyframes cew-lb-fadein {
 from { opacity: 0; transform: scale(0.95); }
 to { opacity: 1; transform: scale(1); }
}
.cew-lightbox-close {
 position: absolute;
 cursor: pointer;
 transition: 0.3s;
}
.cew-lightbox-arrow {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 cursor: pointer;
 transition: background 0.3s;
}
.cew-lightbox-prev { left: 20px; }
.cew-lightbox-next { right: 20px; }
.cew-lightbox-counter {
 position: absolute;
 bottom: 20px;
 left: 50%;
 transform: translateX(-50%);
 background: rgba(0,0,0,0.6);
 color: #fff;
 padding: 6px 16px;
 border-radius: 20px;
 font-size: 14px;
 z-index: 10;
 pointer-events: none;
}

/* ── Fix 11: Visible focus rings for keyboard users ─────────────────────────────────── */
.cew-thumb-item:focus-visible,
.cew-main-arrow:focus-visible,
.cew-thumb-arrow:focus-visible,
.cew-zoom-icon:focus-visible,
.cew-dot:focus-visible,
.cew-play-pause-btn:focus-visible,
.cew-lightbox-arrow:focus-visible,
.cew-lightbox-close:focus-visible {
 outline: 2px solid var(--focus-color, #0073aa);
 outline-offset: 2px;
}

/* ── Responsive — Tablet (≤ 1024 px) ───────────────────────────────────────────────── */
@media (max-width: 1024px) {

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] { flex-direction: row; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] .cew-thumbs-carousel-wrapper { order: 0; flex-direction: column; align-self: stretch; width: auto; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] .cew-thumbs-carousel { flex-direction: column; overflow-x: hidden; overflow-y: auto; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); }

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] { flex-direction: row; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] .cew-thumbs-carousel-wrapper { order: 2; flex-direction: column; align-self: stretch; width: auto; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] .cew-thumbs-carousel { flex-direction: column; overflow-x: hidden; overflow-y: auto; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); }

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="top"] { flex-direction: column; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="top"] .cew-thumbs-carousel-wrapper { order: 0; flex-direction: row; width: 100%; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="top"] .cew-main-carousel { width: 100%; flex: 1; }

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="bottom"] { flex-direction: column; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="bottom"] .cew-thumbs-carousel-wrapper { order: 2; flex-direction: row; width: 100%; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="bottom"] .cew-main-carousel { width: 100%; flex: 1; }

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="hidden"] .cew-thumbs-carousel-wrapper { display: none; }

 .cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] .cew-thumb-prev,
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] .cew-thumb-prev { top: 0; left: 50%; transform: translateX(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="left"] .cew-thumb-next,
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="right"] .cew-thumb-next { bottom: 0; left: 50%; transform: translateX(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="top"] .cew-thumb-prev,
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="bottom"] .cew-thumb-prev { left: 0; top: 50%; transform: translateY(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="top"] .cew-thumb-next,
 .cew-advanced-product-display-widget[data-thumb-pos-tablet="bottom"] .cew-thumb-next { right: 0; top: 50%; transform: translateY(-50%); }
}

/* ── Responsive — Mobile (≤ 767 px) ────────────────────────────────────────────────── */
@media (max-width: 767px) {

 .cew-main-arrow-desktop { display: none; }
 .cew-main-arrow-mobile { display: flex; align-items: center; justify-content: center; }
 .cew-thumb-arrow-desktop { display: none; }
 .cew-thumb-arrow-mobile { display: flex; align-items: center; justify-content: center; }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] { flex-direction: row; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] .cew-thumbs-carousel-wrapper { order: 0; flex-direction: column; align-self: stretch; width: auto; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] .cew-thumbs-carousel { flex-direction: column; overflow-x: hidden; overflow-y: auto; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] { flex-direction: row; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] .cew-thumbs-carousel-wrapper { order: 2; flex-direction: column; align-self: stretch; width: auto; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] .cew-main-carousel { flex: 1; }
.cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] .cew-thumbs-carousel { flex-direction: column; overflow-x: hidden; overflow-y: auto; max-height: calc(var(--cew-thumb-height, 100px) * var(--cew-visible-thumbs, 5) + var(--cew-thumb-gap, 10px) * (var(--cew-visible-thumbs, 5) - 1)); }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="top"] { flex-direction: column; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="top"] .cew-thumbs-carousel-wrapper { order: 0; flex-direction: row; width: 100%; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="top"] .cew-main-carousel { width: 100%; flex: 1; }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="bottom"] { flex-direction: column; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="bottom"] .cew-thumbs-carousel-wrapper { order: 2; flex-direction: row; width: 100%; align-items: center; }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="bottom"] .cew-main-carousel { width: 100%; flex: 1; }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="hidden"] .cew-thumbs-carousel-wrapper { display: none; }

 .cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] .cew-thumb-prev,
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] .cew-thumb-prev { top: 0; left: 50%; transform: translateX(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="left"] .cew-thumb-next,
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="right"] .cew-thumb-next { bottom: 0; left: 50%; transform: translateX(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="top"] .cew-thumb-prev,
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="bottom"] .cew-thumb-prev { left: 0; top: 50%; transform: translateY(-50%); }
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="top"] .cew-thumb-next,
 .cew-advanced-product-display-widget[data-thumb-pos-mobile="bottom"] .cew-thumb-next { right: 0; top: 50%; transform: translateY(-50%); }

 .cew-main-prev { left: 8px; }
 .cew-main-next { right: 8px; }

 .cew-lightbox-arrow { font-size: 24px; padding: 8px 10px; }
 .cew-lightbox-close { font-size: 30px; top: 10px; right: var(--cew-arrow-offset, 15px); }
 .cew-lightbox-prev { left: 8px; }
 .cew-lightbox-next { right: 8px; }
}

/* ── Accessibility: reduced motion ──────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
 .cew-advanced-product-display-widget .cew-main-slide,
 .cew-advanced-product-display-widget .cew-main-slides-wrapper,
 .cew-advanced-product-display-widget .cew-thumb-item,
 .cew-advanced-product-display-widget .cew-thumb-clone,
 .cew-advanced-product-display-widget .cew-lightbox-overlay,
 .cew-advanced-product-display-widget .cew-main-arrow,
 .cew-advanced-product-display-widget .cew-thumb-arrow,
 .cew-advanced-product-display-widget .cew-zoom-icon,
 .cew-advanced-product-display-widget .cew-play-pause-btn,
 .cew-advanced-product-display-widget .cew-dot,
 .cew-advanced-product-display-widget .cew-lightbox-arrow,
 .cew-advanced-product-display-widget .cew-lightbox-close,
 .cew-advanced-product-display-widget .cew-lightbox-content img,
 .cew-advanced-product-display-widget .cew-main-slide img {
 transition: none;
 animation: none;
 }
 .cew-advanced-product-display-widget .cew-main-slide::before {
 animation: none;
 }
}

/* ── Sticky Section Fix: Eliminate duplicate/ghost image effect ─────────────────── */
/* When Elementor applies position:sticky, ensure clean stacking */
.elementor-section.sticky,
.elementor-element.elementor-sticky {
 background: #fff !important;
 z-index: 99 !important;
 isolation: isolate;
}
/* Prevent the "ghost" content behind sticky */
.elementor-element.elementor-sticky::before,
.elementor-element.elementor-sticky::after {
 content: none !important;
 background: none !important;
}
/* Ensure sticky element has solid background to cover content below */
.cew-advanced-product-display-widget {
 isolation: isolate;
}

/* ── Print Styles ──────────────────────────────────────────────────────────────────── */
@media print {
 .cew-lightbox-overlay,
 .cew-main-arrow,
 .cew-thumb-arrow,
 .cew-zoom-icon,
 .cew-play-pause-btn,
 .cew-dots-container,
 .cew-slide-counter {
 display: none !important;
 }
 .cew-main-slide {
 opacity: 1 !important;
 visibility: visible !important;
 position: relative !important;
 page-break-inside: avoid;
 }
 .cew-main-slides-wrapper {
 display: block !important;
 transform: none !important;
 }
 .cew-thumb-item {
 opacity: 1 !important;
 }
}
