.partners-section{padding:4px 0 96px;background:var(--bg);position:relative}
.partners-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;padding-top:70px;border-top:1px solid var(--line)}
.partners-heading h2{font-size:clamp(36px,4.5vw,64px);font-weight:500;line-height:1.12;letter-spacing:-.04em;text-wrap:balance}.partners-heading-first{display:block;font-size:clamp(23px,2vw,28px);line-height:1.4;letter-spacing:-.025em;color:var(--text);margin-bottom:10px}.partners-heading-main{display:block;color:var(--yellow)}.partners-heading>p{color:var(--muted);font-size:16px;max-width:440px;text-wrap:balance}


.partners-marquee{margin-top:38px;overflow-x:auto;padding-block:18px;scrollbar-width:thin;scrollbar-color:#626b57 transparent}
.partners-marquee:focus-visible{outline:2px solid var(--yellow);outline-offset:-2px}
.partners-track{display:flex;width:max-content;padding-left:clamp(24px,6vw,96px)}
.partners-list{display:flex;align-items:center;gap:62px;padding:0 62px 0 0;margin:0;list-style:none;width:max-content}
.partner-logo{width:var(--logo-width,160px);height:90px;display:flex;align-items:center;justify-content:center;flex:none;overflow:hidden}
.partner-logo img{width:100%;height:68px;object-fit:contain;flex:none;user-select:none}
.partner-logo.logo-invert img{filter:grayscale(1) invert(1)}
.partner-logo.logo-four-even img{filter:none}
.partner-logo.logo-medley img{width:100%;height:auto;max-height:68px;filter:brightness(0) invert(1)}
.partner-logo.logo-giral img{height:74px;filter:none}
.partners-copy{display:none}
.marquee-enhanced .partners-copy{display:flex}
.marquee-enhanced .partners-marquee{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
@media(max-width:767px){.partners-section{padding-bottom:70px}.partners-heading{padding-top:48px;align-items:center;gap:20px}.partners-heading h2{max-width:100%;font-size:clamp(32px,8.6vw,42px)}.partners-heading>p{font-size:15px;max-width:300px}.partners-marquee{margin-top:25px}.partners-list{gap:38px;padding-right:38px}.partner-logo{width:calc(var(--logo-width,160px) * .85);height:78px}.partner-logo img{height:57px}.partner-logo.logo-giral img{height:66px}.partner-logo.logo-medley img{width:100%;height:auto;max-height:57px}}
@media(prefers-reduced-motion:reduce){.marquee-enhanced .partners-marquee{overflow-x:auto;mask-image:none}.marquee-enhanced .partners-track{animation:none;transform:none}.marquee-enhanced .partners-copy{display:none}}

/* The supplied Arena artwork already has transparent margins; keep its proportions. */
.partner-logo.logo-arena img{height:auto;max-height:none;width:100%}
.partners-marquee{touch-action:pan-y pinch-zoom;user-select:none;cursor:grab}
.partners-marquee.is-dragging{cursor:grabbing}
.partner-logo img{-webkit-user-drag:none;pointer-events:none}
.partners-content>.partners-drag-hint{text-align:center;max-width:none;width:calc(100% - 48px);margin:14px auto 0;color:var(--muted);font-size:14px;line-height:1.5}
.marquee-enhanced.is-in-view .partners-track{will-change:transform}
@media(prefers-reduced-motion:reduce){.partners-marquee{touch-action:pan-x pan-y pinch-zoom}.marquee-enhanced.is-in-view .partners-track{will-change:auto}}

/* Center the Arena on arrival; adjacent copies fill both sides of the loop. */
.partners-track{padding-left:max(24px,calc(50vw - 120px))}
.marquee-enhanced .partners-track{padding-left:0}
@media(max-width:767px){.partners-track{padding-left:max(24px,calc(50vw - 102px))}}
@media(prefers-reduced-motion:reduce){.marquee-enhanced .partners-track{padding-left:max(24px,calc(50vw - 120px))}}
@media(max-width:767px) and (prefers-reduced-motion:reduce){.marquee-enhanced .partners-track{padding-left:max(24px,calc(50vw - 102px))}}
