/**
 * Reassurance Section 1 - Logos de clients avec défilement automatique
 * Design: Section de réassurance avec logos alignés horizontalement
 */

/* ===============================================
   Section principale
   =============================================== */

.reassurance-1-section {
  padding-top: var(--padding-top, 5rem);
  padding-bottom: var(--padding-bottom, 5rem);
  overflow: hidden;
}

/* ===============================================
   Texte d'introduction
   =============================================== */

.reassurance-intro {
  margin-bottom: var(--spacing-lg, 3rem) !important;
}

.reassurance-intro-text {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--text-secondary, #535862);
  margin: 0;
}

/* ===============================================
   Conteneur des logos
   =============================================== */

.reassurance-logos-wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
}


/* Container flex pour les logos */
.reassurance-logos {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3rem;
  width: 100%;
}

/* Animation de défilement automatique (activée dynamiquement par JS) */
.reassurance-logos.has-scroll {
  animation: scroll-logos 25s linear infinite;
  position: relative;
}

/* Animation au hover - pause le défilement */
.reassurance-logos.has-scroll:hover {
  animation-play-state: paused;
}

/* ===============================================
   Items de logos
   =============================================== */

.reassurance-logo-item {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  min-width: 120px;
  max-width: 200px;
}

.reassurance-logo-img {
  max-height: 48px;
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  filter: grayscale(100%) opacity(0.7);
  transition: all 0.3s ease;
}

/* Effet hover sur les logos */
.reassurance-logo-item:hover .reassurance-logo-img {
  filter: grayscale(0%) opacity(1);
  transform: scale(1.05);
}

/* ===============================================
   Animation de défilement
   =============================================== */

@keyframes scroll-logos {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* ===============================================
   Responsive
   =============================================== */

/* Tablettes */
@media (max-width: 992px) {
  .reassurance-logos {
    gap: 2rem;
  }

  .reassurance-logo-item {
    min-width: 100px;
    max-width: 160px;
  }
}

/* Mobile */
@media (max-width: 576px) {
  .reassurance-1-section {
    padding-top: var(--padding-top, 3rem);
    padding-bottom: var(--padding-bottom, 3rem);
  }

  .reassurance-intro-text {
    font-size: 0.875rem;
  }

  /* Logos wrapper full width - sort du container */
  .reassurance-logos-wrapper {
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
  }

  .reassurance-logos {
    gap: 1rem;
    justify-content: flex-start;
  }

  /* Afficher environ 2 logos visibles */
  .reassurance-logo-item {
    height: 36px;
    min-width: 45vw;
    max-width: 45vw;
    flex-shrink: 0;
  }

  .reassurance-logo-img {
    max-height: 36px;
  }

  /* Animation plus rapide sur mobile */
  .reassurance-logos.has-scroll {
    animation-duration: 20s;
  }
}

/* ===============================================
   Dark mode / Fond sombre
   =============================================== */

/* Inversion des logos sur fond sombre */
.reassurance-1-section.bg-primary .reassurance-logo-img,
.reassurance-1-section.bg-secondary .reassurance-logo-img,
.reassurance-1-section.bg-dark .reassurance-logo-img {
  filter: grayscale(100%) opacity(0.8) brightness(0) invert(1);
}

.reassurance-1-section.bg-primary
  .reassurance-logo-item:hover
  .reassurance-logo-img,
.reassurance-1-section.bg-secondary
  .reassurance-logo-item:hover
  .reassurance-logo-img,
.reassurance-1-section.bg-dark
  .reassurance-logo-item:hover
  .reassurance-logo-img {
  filter: grayscale(0%) opacity(1) brightness(0) invert(1);
}

/* ===============================================
   Reduced motion
   =============================================== */

@media (prefers-reduced-motion: reduce) {
  .reassurance-logos.has-scroll {
    animation: none;
  }

  .reassurance-logo-img {
    transition: none;
  }
}
