/* By Karling — Carrusel de la sección "Promoción especial" (home) */
.promo-carousel-container { touch-action: pan-y; }
.promo-carousel-slide { will-change: transform; }
.promo-carousel-slide img { user-select: none; -webkit-user-select: none; -webkit-user-drag: none; }

.promo-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  padding: 0 0 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .85);
  color: var(--brown, #8A6150);
  font-size: 1.7rem;
  line-height: 1;
  cursor: pointer;
  z-index: 2;
  -webkit-tap-highlight-color: transparent;
  transition: background .2s;
}
.promo-arrow:hover, .promo-arrow:focus-visible { background: #fff; }
.promo-prev { left: .6rem; }
.promo-next { right: .6rem; }

.promo-dots {
  position: absolute;
  left: 0; right: 0; bottom: .7rem;
  display: flex;
  justify-content: center;
  gap: .55rem;
  z-index: 2;
}
.promo-dot {
  position: relative;
  width: 9px;
  height: 9px;
  padding: 0;
  border: 0;
  border-radius: 5px;
  background: rgba(255, 255, 255, .65);
  cursor: pointer;
  transition: width .3s ease, background .3s ease;
  -webkit-tap-highlight-color: transparent;
}
.promo-dot::after { content: ""; position: absolute; inset: -9px -5px; }   /* zona táctil más grande */
.promo-dot.active { width: 24px; background: #fff; }

@media (prefers-reduced-motion: reduce) {
  .promo-dot, .promo-arrow { transition: none; }
}
