/*
 * Block: Logos Carousel
 * Auto-scrolling, infinite loop carousel
 *
 * @package WePlay
 */

/* =============================================
   WRAPPER
   ============================================= */

.logos-carousel__wrapper {
  width: 100%;
  overflow: hidden;
  position: relative;
  mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 5%,
    black 95%,
    transparent 100%
  );
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 5%,
    black 95%,
    transparent 100%
  );
}

/* =============================================
   TRACK (Contains all logo items)
   ============================================= */

.logos-carousel__track {
  display: flex;
  align-items: center;
  gap: var(--space-xxl);
  width: max-content;
  will-change: transform;
}

/* Apply animation via JavaScript after measuring */
.logos-carousel__track[data-animated="true"] {
  animation: scrollLogos var(--carousel-duration, 30s) linear infinite;
}

/* Pause on hover */
.logos-carousel__wrapper:hover .logos-carousel__track {
  animation-play-state: paused;
}

/* =============================================
   LOGO ITEMS
   ============================================= */

.logos-carousel__item {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logos-carousel__figure {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.logos-carousel__image {
  display: block;
  max-height: 44px;
  max-width: 82px;
  width: auto;
  height: auto;
  object-fit: contain;
  opacity: 0.9;
  transition: opacity var(--transition);
}

/* =============================================
   ANIMATION
   ============================================= */

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

/* =============================================
   COMPACT VARIANT
   ============================================= */

.logos-carousel.section--compact {
	padding-block: 10px;
}

.logos-carousel.section--compact .logos-carousel__track {
	height: 60px;
}

/* =============================================
   VERTICAL SPACING OVERRIDES
   ============================================= */

/* =============================================
   RESPONSIVE
   ============================================= */

@media (max-width: 768px) {
  .logos-carousel__track {
    gap: var(--space-xl);
  }
}

@media (max-width: 480px) {
  .logos-carousel__track {
    gap: var(--space-xl);
  }
}

