@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;600&display=swap');

/* --- SECCIÓN CLIENTES --- */
.clientes-section {
  background: #fff;
  padding: 40px 80px;
  text-align: center;
  font-family: 'Barlow', sans-serif;
}

.clientes-section h2 {
  font-size: 30px;
  color: #000;
  margin-bottom: 35px;
  font-weight: 700;
  position: relative;
  display: inline-block;
}

.clientes-section h2::after {
  content: '';
  display: block;
  width: 60%;
  height: 3px;
  background: #ff007d;
  margin: 8px auto 0 auto;
  border-radius: 2px;
}

/* --- CARRUSEL --- */
.carousel-wrapper {
  position: relative;
}

.carousel-viewport {
  overflow: hidden;
}

.carousel-track {
  display: flex;
  gap: 24px;
  transition: transform 0.4s ease;
}

.slide {
  flex: 0 0 calc((100% - (5 * 24px)) / 6);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

.slide img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  background: #fff;
  border-radius: 6px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.slide img:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 14px rgba(0,0,0,0.2);
}

/* --- FLECHAS --- */
.carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: none;
  background: #fff;
  box-shadow: 0 3px 8px rgba(0,0,0,0.15);
  font-size: 22px;
  color: #ff007d;
  cursor: pointer;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}

.carousel-arrow.left { left: -60px; }
.carousel-arrow.right { right: -60px; }

.carousel-arrow:hover {
  background: #f5f5f5;
}

/* --- RESPONSIVE --- */
@media (max-width: 1200px) {
  .slide { flex: 0 0 calc((100% - (4 * 20px)) / 5); }
}

@media (max-width: 900px) {
  .slide { flex: 0 0 calc((100% - (3 * 16px)) / 4); }
  .carousel-arrow.left { left: -40px; }
  .carousel-arrow.right { right: -40px; }
}

@media (max-width: 700px) {
  .slide { flex: 0 0 calc((100% - (2 * 12px)) / 3); }
}

@media (max-width: 500px) {
  .slide { flex: 0 0 calc((100% - (1 * 8px)) / 2); }
  .carousel-arrow.left { left: 10px; }
  .carousel-arrow.right { right: 10px; }
  .clientes-section h2 { font-size: 22px; }
  .clientes-section { padding: 30px 20px; }
}
