/* Two seamless brand rows, with original grid retained for reduced motion. */
.home-brands{overflow:hidden;position:relative;background:radial-gradient(ellipse at 50% 100%,#175b982b,transparent 70%),#0d1721}
.home-brands [hidden]{display:none!important}
.brand-motion{display:grid;gap:18px;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.brand-row{--brand-gap:18px;overflow:hidden;padding:8px 0;outline-offset:-3px}
.brand-track{display:flex;width:max-content;animation:brand-flow 38s linear infinite;will-change:transform}
.brand-row:nth-child(2) .brand-track{animation-direction:reverse;animation-duration:43s}
.brand-loop-group{display:flex;align-items:stretch;gap:var(--brand-gap);padding:0 var(--brand-gap) 0 0;margin:0;list-style:none;flex:0 0 auto}
.brand-loop-group li{flex:0 0 clamp(185px,23vw,306px);width:clamp(185px,23vw,306px);height:120px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ffffff24;padding:23px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.brand-loop-group li.brand-dark{background:#080808}
.brand-loop-group img{width:auto;max-width:100%;height:auto;max-height:66px;object-fit:contain;transition:transform .4s}
.brand-loop-group li:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#92c8f433 48%,transparent 75%);transform:translateX(-130%);pointer-events:none}
.brand-loop-group li:hover{transform:translateY(-4px);border-color:#92c8f4;box-shadow:0 0 20px #52a7f14d}.brand-loop-group li:hover img{transform:scale(1.04)}.brand-loop-group li:hover:after{animation:brand-shine .75s ease-out both}
.brand-row:hover .brand-track,.brand-row:focus-within .brand-track{animation-play-state:paused}

@keyframes brand-flow{to{transform:translateX(-50%)}}
@keyframes brand-shine{to{transform:translateX(130%)}}
@media(max-width:400px){.brand-row{--brand-gap:12px}.brand-loop-group li{height:95px;padding:18px}.brand-motion{gap:8px}}
@media(prefers-reduced-motion:reduce){.brand-track,.brand-loop-group li:after{animation:none!important}.brand-loop-group li,.brand-loop-group img{transition:none}}
.brand-grid li,.brand-loop-group li{position:relative}
.brand-grid li>a,.brand-loop-group li>a{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:23px}
.brand-grid li>a:focus-visible,.brand-loop-group li>a:focus-visible{outline:3px solid #175b98;outline-offset:-5px}
@media(max-width:400px){.brand-grid li>a,.brand-loop-group li>a{padding:13px}}

