.home .partners-section{display:block;min-height:0;padding:26px 0 24px;background:var(--theme-bg,#070d18);border-top:1px solid var(--theme-line,#2b384c)}
.partners-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.partners-section h2{margin:0;color:var(--theme-accent,#ff9a4d);font-size:20px;font-weight:700;line-height:1.4}
.partners-viewport{overflow:hidden;padding:4px 0;max-width:100%}
.partners-track{display:flex;width:max-content;animation:partners-flow var(--partners-duration,30s) linear infinite;will-change:transform}
.partners-grid{display:flex;flex:none;gap:24px;list-style:none;padding:0 24px 0 0;margin:0}
.partner-card{flex:0 0 148px;width:148px;min-width:0}
.partner-content{display:flex;flex-direction:column;gap:7px;height:100%;color:var(--theme-muted,#b2c1d4);text-decoration:none}
.partner-logo{height:48px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:7px 10px;background:#fff;border-radius:6px}
.partner-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.partner-name{display:block;font-size:10px;font-weight:500;line-height:1.45;text-align:center;overflow-wrap:anywhere;min-height:30px}
.partner-content:hover{color:var(--theme-ink,#edf3fb)}
.partner-content:focus-visible,.partners-retry:focus-visible{outline:2px solid var(--theme-accent,#ff9a4d);outline-offset:3px;border-radius:6px}
.partners-section.is-offscreen .partners-track{animation-play-state:paused}
.partners-section.is-browsing .partners-viewport{overflow-x:auto}
.partners-section.is-browsing .partners-track{animation:none;transform:none}
.partners-section.is-browsing .partners-copy{display:none}
.partners-actions{text-align:center}.partners-retry{margin-top:8px;border:0;background:transparent;color:var(--theme-ink,#edf3fb);font:inherit;font-size:11px;text-decoration:underline;cursor:pointer}
#partnersStatus{color:var(--theme-muted,#b2c1d4);font-size:11px;margin:8px 0 0}#partnersStatus:empty{display:none}
@keyframes partners-flow{to{transform:translateX(calc(-1 * var(--partners-distance,0px)))}}
@media(max-width:640px){.home .partners-section{padding:22px 0 20px}.partners-heading{margin-bottom:12px}.partners-section h2{font-size:18px}.partners-grid{gap:18px;padding-right:18px}.partner-card{width:124px;flex-basis:124px}.partner-logo{height:42px;padding:6px 8px}.partner-name{font-size:9px}}
/* This small strip explicitly keeps moving at the site owner's request.
   Override shared.css's reduced-motion reset only here; retain keyboard pause. */
@media(prefers-reduced-motion:reduce){
 #partners .partners-track{animation:partners-flow var(--partners-duration,30s) linear infinite!important}
 #partners.is-offscreen .partners-track{animation-play-state:paused!important}
 #partners.is-browsing .partners-track{animation:none!important;transform:none}
}