.block-partners {
  padding: 2rem 0;
}

.block-partners__content {
  max-width: 700px;
}

.block-partners__title {
  font-size: var(--heading-size-l);
  line-height: 110%;
  margin-bottom: 1rem;
}

.block-partners__title p {
  margin: 0;
}

.block-partners__wrapper {
  overflow: hidden;
  padding: 1rem 0;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.block-partners__track {
  display: flex;
  width: max-content;
  animation: partners-defile 60s linear infinite;
  gap: 20px;
}

/* L'espacement vit à l'intérieur du groupe, y compris après la dernière image.
   Les deux groupes font donc exactement la même largeur → -50% boucle pile. */
.block-partners__group {
  display: flex;
  align-items: center;
  gap: 20px;
}

.block-partners__group img {
  display: block;
  flex: 0 0 auto;
  height: 91px;
  width: auto;
}

@keyframes partners-defile {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

.block-partners__wrapper:hover .block-partners__track,
.block-partners__wrapper:focus-within .block-partners__track {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  .block-partners { overflow-x: auto; }
  .block-partners__track { animation: none; }
  .block-partners__group[aria-hidden="true"] { display: none; }
}

.block-partners__logo {
  display: flex;
  align-items: center;
  gap: 20px;
}

.block-partners__logo img {
  height: 91px;
  width: auto;
}

@keyframes partners-defile {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
