/* Three continuous rows, matching the supplied reference's dimensions and timing. */
.client-wall{--client-logo-width:180px;--client-logo-height:80px;--client-logo-margin:20px;position:relative;min-width:0;margin:0;padding:0}
.client-wall-heading{display:block;text-align:center;margin:0 0 30px}
.client-wall-heading h2{font-size:36px;font-weight:600;letter-spacing:0;line-height:1.45;margin:0}
.client-title-english{color:var(--red);text-transform:uppercase}
.client-wall-heading p{font-size:12px;line-height:1.9;color:var(--muted);margin:9px auto 0;max-width:850px}
.client-marquee-region{position:relative;min-width:0}
.client-logo-source{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 0;padding:0;margin:0;list-style:none}
.client-wall .client-logo-item{flex:none;width:var(--client-logo-width);height:var(--client-logo-height);margin:0 var(--client-logo-margin);min-width:0;list-style:none}
.client-wall .client-logo-card{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:12px;background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden;box-sizing:border-box}
.client-wall .client-logo-card-dark{background:#163447;border-color:#163447}
.client-wall a.client-logo-card:hover{border-color:#d8c4c5}
.client-wall .client-logo-card:focus-visible{outline:3px solid #338dc9;outline-offset:3px}
.client-wall .client-logo-visual{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0}
.client-wall .client-logo-visual img{display:block;width:100%;height:100%;object-fit:contain}
.client-wall .client-name-only{font-size:16px;font-weight:600;line-height:1.5;letter-spacing:0;text-align:center;color:#354b5c;overflow-wrap:anywhere}
.client-name-only>.editable-text{max-height:100%;overflow:hidden}
.client-marquee-rows{display:flex;flex-direction:column;gap:16px;overflow:hidden}
.client-marquee-row{display:flex;overflow:hidden;width:100%;min-width:0}
.client-marquee-track{display:flex;width:max-content;flex:none;animation:client-scroll-left 30s linear infinite;will-change:transform}
.client-marquee-row[data-direction="right"] .client-marquee-track{animation-name:client-scroll-right}
.client-marquee-group{display:flex;flex:none;width:max-content;gap:0;padding:0;margin:0;list-style:none}
.client-wall.is-paused .client-marquee-track{animation-play-state:paused}
.client-wall .client-wall-controls{display:flex;justify-content:center;margin-top:14px}
.client-play{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:transparent;border:0;color:#8b969f;font-size:10px;line-height:1.6}
.client-play:hover{color:var(--red)}
.client-play-mark{font-family:Arial,sans-serif;font-size:12px;width:12px;text-align:center}
/* Keep one complete accessible list; keyboard focus reveals it before any link can move away. */
.client-wall.is-enhanced:not(.is-reduced-motion):not(.is-keyboard-mode) .client-logo-source{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
.client-wall.is-keyboard-mode .client-marquee-rows{display:none}
@keyframes client-scroll-left{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--client-shift)))}}
@keyframes client-scroll-right{from{transform:translateX(calc(-1 * var(--client-shift)))}to{transform:translateX(0)}}
@media(max-width:767px){
  .client-wall{--client-logo-width:90px;--client-logo-height:40px;--client-logo-margin:10px;padding-top:0}
  .client-wall-heading{margin-bottom:20px}
  .client-wall-heading h2{font-size:20px}
  .client-wall-heading p{font-size:10px;line-height:1.9;margin-top:8px}
  .client-wall .client-logo-card{padding:5px 6px}
  .client-wall .client-name-only{font-size:10px;line-height:1.4}
  .client-wall .client-wall-controls{margin-top:10px}
}
@media(prefers-reduced-motion:reduce){
  .client-wall.is-enhanced .client-logo-source{position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;clip-path:none!important;white-space:normal!important}
  .client-wall .client-marquee-rows,.client-wall .client-wall-controls{display:none!important}
}
