.zbs-logos-marquee {
  width: 100%;
  overflow: hidden;
}
/* Full bleed : casse la contrainte de largeur des rows Divi */
.zbs-logos-marquee.is-fullbleed {
  width: 100vw;
  max-width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.zbs-logos-viewport {
  position: relative;
  display: flex;
  overflow: hidden;
  width: 100%;
  padding: 18px 0;
  height: 140px;
}

.zbs-logos-track {
  display: flex;
  align-items: center;
  gap: 0; /* le gap est dans les groups */
  will-change: transform;
  transform: translateX(0);
  animation: zbs-marquee var(--zbs-duration, 30s) linear infinite;
}

.zbs-logos-group {
  display: inline-flex;
  align-items: center;
  /*gap: var(--zbs-gap, 32px);*/
  flex: 0 0 auto;
  white-space: nowrap;
  padding-right: var(--zbs-gap, 32px); /* pour éviter un micro “trou” visuel */
}

.zbs-logo-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: var(--zbs-logo-h, 28px);
  margin: 0 15px;
}
.zbs-logo-item svg,
.zbs-logo-item img {
  max-height: 175px;
  max-width: 240px;
  height: auto;
  display: block;
}
.font_confiance_and_cases .zbs-logos-viewport {
    max-height: 320px;
    height: 500px;
}
.font_confiance_and_cases .et_pb_row.et_pb_row_12 .zbs-logo-item img {
  max-height: 300px;
  max-width: 100%;
  border-radius: 10px;
}
.font_confiance_and_cases .et_pb_row.et_pb_row_11 .zbs-logo-item img {
  border-radius: 10px;
}
/* Fix pour les fichiers .svg qui ont un width: 0 */
.zbs-logo-item.is-svg-file img {
  min-width: 180px;
}

/* Animation de droite vers gauche (par défaut) */
@keyframes zbs-marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(calc(-1 * var(--zbs-shift, 0px))); }
}

/* FIX iOS : Animation avec préfixe webkit */
@-webkit-keyframes zbs-marquee {
  0%   { -webkit-transform: translateX(0); transform: translateX(0); }
  100% { -webkit-transform: translateX(calc(-1 * var(--zbs-shift, 0px))); transform: translateX(calc(-1 * var(--zbs-shift, 0px))); }
}

/* Animation de gauche vers droite (inversée) */
@keyframes zbs-marquee-reverse {
  0%   { transform: translateX(calc(-1 * var(--zbs-shift, 0px))); }
  100% { transform: translateX(0); }
}

/* FIX iOS : Animation inversée avec préfixe webkit */
@-webkit-keyframes zbs-marquee-reverse {
  0%   { -webkit-transform: translateX(calc(-1 * var(--zbs-shift, 0px))); transform: translateX(calc(-1 * var(--zbs-shift, 0px))); }
  100% { -webkit-transform: translateX(0); transform: translateX(0); }
}

/* FIX iOS : Assurer que l'animation continue même avec les touches */
.zbs-logos-track.is-animated {
  animation-play-state: running !important;
  -webkit-animation-play-state: running !important;
}

@media (prefers-reduced-motion: reduce) {
  .zbs-logos-track { animation: none; transform: none; }
  .zbs-logos-group { flex-wrap: wrap; white-space: normal; justify-content: center; }
}

.font_confiance_and_cases .zbs-logos-viewport {
    max-height: 320px;
}

.font_confiance_and_cases .et_pb_row.et_pb_row_11 {
    margin-top: -2em;
}
.font_confiance_and_cases .et_pb_row.et_pb_row_12 {
    margin-bottom: 2em;
}
.font_confiance_and_cases .et_pb_row.et_pb_row_11,
.font_confiance_and_cases .et_pb_row.et_pb_row_12 {
    max-height: 270px;
    display: flex;
    align-items: center;
}
@media screen and (max-width: 425px) {
  .font_confiance_and_cases .et_pb_row.et_pb_row_11 {
      max-height: 250px;
      padding: 0;
  }
  .zbs-logo-item img {
      max-width: 240px !important;
  }
  .font_confiance_and_cases .zbs-logos-viewport {
      /*margin-top: -25px;*/
      max-height: 200px;
  }
  .font_confiance_and_cases .et_pb_row.et_pb_row_12 {
      margin-bottom: 0;
  }
  /*.font_confiance_and_cases .et_pb_row.et_pb_row_11,*/
  .font_confiance_and_cases .et_pb_row.et_pb_row_12 {
      max-height: 150px;
      margin-top: 20px;
      padding: 0;
  }
}
