.sponsor-window {
  overflow: hidden;
  padding: 14px 0 20px;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
}

.sponsor-track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 52px;
  animation: sponsor-sway 28s ease-in-out infinite alternate;
  will-change: transform;
}

.sponsor-window:hover .sponsor-track { animation-play-state: paused; }

.sponsor-logo-real {
  flex: 0 0 auto;
  width: var(--w);
  height: 62px;
  background-image: url('../img/approved-mockup.png');
  background-repeat: no-repeat;
  background-size: 864px 1822px;
  background-position: calc(-1px * var(--x)) calc(-1px * var(--y));
  filter: brightness(1.13) contrast(1.08);
}

@keyframes sponsor-sway {
  from { transform: translateX(3vw); }
  to { transform: translateX(calc(-100% + 94vw)); }
}

@media (max-width: 767px) {
  .sponsor-track { gap: 34px; animation-duration: 34s; }
  .sponsor-window { margin-inline: -22px; }
}

@media (prefers-reduced-motion: reduce) {
  .sponsor-track { animation-play-state: paused; transform: none; }
}
