/* ================================================
   CARRUSEL
   ================================================ */
.carousel-wrapper {
  position: relative;
  max-width: var(--container-max);
  margin: 40px auto;
}

.carousel-products { overflow: hidden; }

.carousel-track {
  display: flex; gap: 20px; padding: 10px;
  transition: transform var(--transition-slow);
  will-change: transform;
  user-select: none; -webkit-user-select: none;
}

.carousel-track .card {
  flex: 0 0 calc((100% - 40px) / 3);
  box-sizing: border-box;
}

.carousel-btn {
  position: absolute; top: 50%; transform: translateY(-50%);
  background: var(--clr-gold); color: #ffffff;
  border: none; width: 50px; height: 50px;
  border-radius: 50%; cursor: pointer; z-index: 20;
  transition: background var(--transition-fast), transform var(--transition-base);
  min-width: 44px; min-height: 44px;
}

.carousel-btn:hover {
  background: var(--clr-gold-dark);
  transform: translateY(-50%) scale(1.1);
}

.prev { left: -60px; }
.next { right: -60px; }

.carousel-dots { display: none; }
