/* Purpose: Infinite logo and image marquee. Pauses on hover, scrolls manually under reduced motion. */

.marquee {
  overflow: hidden;
  width: 100%;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
          mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}

.marquee__track {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  width: max-content;
  animation: gb-marquee 40s linear infinite;
}

.marquee[data-direction="right"] .marquee__track { animation-direction: reverse; }
.marquee:hover .marquee__track { animation-play-state: paused; }

.marquee__item { flex: 0 0 auto; }

.marquee__image {
  height: clamp(160px, 20vw, 240px);
  width: auto;
  border-radius: var(--radius-lg);
  object-fit: cover;
  box-shadow: var(--shadow-md);
  transition: transform var(--duration-slow) var(--ease-out);
}
.marquee__item:hover .marquee__image { transform: scale(1.04); }

.marquee__item--logo { padding-inline: var(--space-4); }
.winners__logo {
  height: 92px;
  width: auto;
  object-fit: contain;
  filter: grayscale(1) brightness(1.6);
  opacity: 0.5;
  transition: filter var(--duration-base) var(--ease-out), opacity var(--duration-base) var(--ease-out);
}
.marquee__item--logo:hover .winners__logo { filter: none; opacity: 1; }

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

@media (prefers-reduced-motion: reduce) {
  .marquee__track { animation: none; }
  .marquee { overflow-x: auto; }
}
