/* sponsors.css — sponsor marquee */
/* SPONSORS */
.sponsors-wrap { padding-block: 3rem; border-top: 1px solid rgba(255,255,255,0.05); }
.sp-lbl { font-family: var(--font-m); font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--grey2); text-align: center; margin-bottom: 2rem; }
/* Scrolling marquee */
.sp-marquee { position: relative; overflow: hidden; width: 100%; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.sp-track { display: flex; flex-wrap: nowrap; width: max-content; align-items: center; gap: 2rem; animation: sp-scroll 55s linear infinite; will-change: transform; }
.sp-marquee:hover .sp-track { animation-play-state: paused; }
.sp-chip { flex-shrink: 0; width: 230px; height: 120px; display: flex; align-items: center; justify-content: center; background: #f4f6fa; border-radius: 18px; padding: 0 34px; box-shadow: 0 4px 18px rgba(0,0,0,0.25); transition: transform var(--tr), box-shadow var(--tr); }
.sp-chip:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(0,0,0,0.4); }
.sp-chip img { max-width: 100%; max-height: 58px; width: auto; height: auto; display: block; }
@keyframes sp-scroll { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (max-width: 600px) {
  .sp-chip { width: 170px; height: 100px; padding: 0 24px; }
  .sp-chip img { max-height: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .sp-track { animation: none; flex-wrap: wrap; justify-content: center; gap: 1.5rem 2rem; width: 100%; }
  /* Hide the duplicate (loop) set so each logo appears only once when motion is reduced */
  .sp-track [aria-hidden="true"] { display: none; }
}
