/* ==========================================================================
   Galeria de imagens do produto — substitui o carrossel do Elementor,
   que depende de um script remoto (worlding-deals.shop) que falha e
   deixa a galeria travada na primeira imagem, sem setas nem bolinhas
   funcionando. Esta versão é independente: scroll-snap + JS próprio.
   ========================================================================== */

.v2-gallery {
  position: relative;
  overflow: hidden;
  background: #fff;
  min-width: 0;
  width: 100%;
}
.v2-gallery-track {
  min-width: 0;
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
}
.v2-gallery-track::-webkit-scrollbar { display: none; }
.v2-gallery-track.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  scroll-behavior: auto;
}
.v2-gallery-slide {
  flex: 0 0 100%;
  scroll-snap-align: start;
  aspect-ratio: 1 / 1;
}
.v2-gallery-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  -webkit-user-select: none;
  user-select: none;
}
.v2-gallery-arrow {
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  border: none;
  outline: none;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 1px 2px rgba(0, 0, 0, .05), 0 3px 10px rgba(0, 0, 0, .05);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #222222;
  cursor: pointer;
  z-index: 2;
  transition: transform .15s ease, background .15s ease;
}
.v2-gallery-arrow:hover { transform: translateY(-50%) scale(1.06); background: #fff; }
.v2-gallery-prev { left: 12px; }
.v2-gallery-next { right: 12px; }
.v2-gallery-arrow[disabled] { opacity: 0; pointer-events: none; }
.v2-gallery-dots {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(0, 0, 0, .35);
  padding: 7px 10px;
  border-radius: 999px;
  z-index: 2;
}
.v2-gallery-dot {
  -webkit-appearance: none;
  appearance: none;
  width: 7px;
  height: 7px;
  margin: 0;
  border-radius: 50%;
  background: #ffffff;
  opacity: .55;
  border: none;
  outline: none;
  padding: 0;
  cursor: pointer;
  transition: opacity .2s ease, transform .2s ease;
}
.v2-gallery-dot.is-active {
  opacity: 1;
  background: #FF8200;
  transform: scale(1.2);
}
