/* ============================================
   BANNERS — bandeaux pleine largeur
   (marquee défilant, stats, billetterie, partenaires)
   ============================================ */

.marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: marquee var(--marquee-duration, 30s) linear infinite;
}

.stats-banner {
  --stat-item-max: 180px;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, var(--stat-item-max)));
  justify-content: center;
}

@media (max-width: 620px) {
  .stats-banner {
    grid-template-columns: repeat(3, minmax(0, var(--stat-item-max)));
  }
}

@media (max-width: 360px) {
  .stats-banner {
    grid-template-columns: repeat(2, minmax(0, var(--stat-item-max)));
  }
}

.stats-banner__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 8px var(--gutter);
  min-width: 0;
}

.stats-banner__number {
  font-family: var(--font-display);
  font-size: var(--text-lg);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

@media (min-width: 1024px) {
.stats-banner__number {

  font-size: 56px;
  }
}

.stats-banner__label {
  font-size: var(--text-sm);
  line-height: var(--leading-sm);
  letter-spacing: var(--tracking);
}

/* --- BILLETTERIE BANNER --- */
.billetterie-banner {
  display: block;
  width: 100%;
  overflow: hidden;
  background: var(--color-bg);
  color: var(--color-text);
  transition: background 0.2s ease, color 0.2s ease;
}

.billetterie-banner:hover {
  background: var(--color-text);
  color: var(--color-bg);
}

/* ~220s → même vitesse (px/s) que la bannière partenaires (17,3 px/s) */
.billetterie-banner .marquee-track {
  --marquee-from: -50%;
  --marquee-to: 0;
  --marquee-duration: 220s;
}

.billetterie-banner__item {
  font-size: 30px;
  white-space: nowrap;
  flex-shrink: 0;
  padding: 2px 0;
  margin-right: 60px;
}

/* --- PARTNERS BANNER --- */
.partners-banner {
  background-color: #000;
  overflow: hidden;
  padding: 18px 0;
}

.partners-banner .marquee-track {
  --marquee-from: 0;
  --marquee-to: -16.6667%;
  --marquee-duration: 30s;
  gap: 32px;
}

.partners-banner .marquee-track:hover {
  animation-play-state: paused;
}

.partners-banner__link {
  display: block;
  flex-shrink: 0;
  line-height: 0;
}

.partners-banner__logo {
  display: block;
  height: 32px;
  width: auto;
  max-height: 32px;
  min-height: 32px;
  object-fit: contain;
  filter: brightness(0) invert(1);
  flex-shrink: 0;
}
