/* Styles pour le carrousel de logos clients */

/* Conteneur principal avec overflow hidden */
.client-logos-container {
  width: 100%;
  overflow: hidden;
  padding: 30px 0;
  position: relative;
}

/* Style du slider automatique */
.client-logos-slider {
  display: flex;
  animation: scroll 35s linear infinite;
  width: calc(200px * 16); /* Largeur totale du slider (logos * 2 pour la boucle) - 8 logos x 2 */
}

/* Pour stopper l'animation au survol */
.client-logos-slider:hover {
  animation-play-state: paused;
}

/* Style individuel des logos */
.client-logo {
  width: 200px;
  height: 100px;
  padding: 10px 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  background-color: white;
  border-radius: 8px;
  margin: 0 5px;
}

.client-logo img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: grayscale(20%);
  opacity: 0.85;
  transition: all 0.4s ease;
}

.client-logo:hover img {
  filter: grayscale(0%);
  opacity: 1;
  transform: scale(1.05);
}

/* Animation du défilement */
@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-200px * 8)); /* Largeur des logos * nombre de logos originaux */
  }
}

/* Responsive */
@media (max-width: 768px) {
  .client-logo {
    width: 180px;
    height: 90px;
  }
  
  .client-logos-slider {
    width: calc(180px * 16);
  }
  
  @keyframes scroll {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(calc(-180px * 8));
    }
  }
}

@media (max-width: 576px) {
  .client-logo {
    width: 150px;
    height: 80px;
    padding: 10px 15px;
  }
  
  .client-logos-slider {
    width: calc(150px * 16);
  }
  
  @keyframes scroll {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(calc(-150px * 8));
    }
  }
}