/* =========================================================
   PRODUCT MEDIA – BASE
   ========================================================= */

.product-media{
  position: relative;
  max-width: 100%;
}

/* Cada slide */
.product-media-item{
  display: none;
}

.product-media-item.is-active{
  display: block;
}

/* Media */
.product-media-img,
.product-media-video{
  width: 100%;
  height: auto;
  border-radius: 12px;
  display: block;
}


/* =========================================================
   PRODUCT MEDIA – CLICK / ZOOM HINT
   ========================================================= */

/* Enlace (GLightbox trigger) */
.product-media a{
  position: relative;
  display: block;
  cursor: zoom-in;
}

/* Texto "Tap to zoom" */
.product-media a::after{
  content: "Tap to zoom";
  position: absolute;
  bottom: 12px;
  right: 12px;

  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 999px;

  background: rgba(0, 0, 0, 0.55);
  color: #fff;

  opacity: 0;
  transition: opacity .2s ease;
  pointer-events: none;
  z-index: 4;
}

/* Desktop: solo al hover */
@media (hover: hover){
  .product-media a:hover::after{
    opacity: 1;
  }
}

/* Mobile: siempre visible */
@media (hover: none){
  .product-media a::after{
    opacity: 1;
  }
}


/* =========================================================
   PRODUCT MEDIA – DECORATIVE ARROWS (NO JS)
   ========================================================= */

.product-media::before,
.product-media::after{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);

  width: 36px;
  height: 36px;
  border-radius: 999px;

  display: grid;
  place-items: center;

  font-size: 22px;
  font-weight: 700;

  background: rgba(13,110,253,.85); /* azul */
  color: #fff;

  opacity: .85;
  pointer-events: none; /* no interfieren con clicks */
  z-index: 3;
}

/* Flecha izquierda */
.product-media::before{
  content: "‹";
  left: -18px;
}

/* Flecha derecha */
.product-media::after{
  content: "›";
  right: -18px;
}

/* Mobile ajustes */
@media (max-width: 768px){
  .product-media::before,
  .product-media::after{
    width: 32px;
    height: 32px;
    font-size: 20px;
  }

  .product-media::before{ left: -14px; }
  .product-media::after{ right: -14px; }
}


/* =========================================================
   PRODUCT MEDIA – IMAGE COUNT BADGE
   ========================================================= */

/* +N images (solo si hay más de 1 media) */
.product-media[data-count]:not([data-count="1"]) a::before{
  content: "+" attr(data-count) " images";
  position: absolute;
  bottom: 12px;
  left: 12px;

  font-size: 12px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 999px;

  background: rgba(0, 0, 0, 0.55);
  color: #fff;

  pointer-events: none;
  z-index: 4;
}

/* Mobile */
@media (max-width: 768px){
  .product-media[data-count]:not([data-count="1"]) a::before{
    font-size: 11px;
    padding: 5px 9px;
  }
}
