/* Original client artwork; self-contained tracks never widen the page. */
.client-section{width:100%;min-width:0;padding-block:clamp(48px,6vw,96px);border-top:1px solid var(--line)}
.client-heading,.client-link{padding-inline:clamp(20px,4vw,80px)}
.client-heading{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px;align-items:end;margin-bottom:36px}
.client-heading h2{font-size:clamp(32px,4.4vw,68px);line-height:1.08;letter-spacing:-.035em;margin:12px 0 0}
.client-heading>p{font-size:clamp(14px,1.2vw,18px);line-height:1.6;margin:0}
.client-marquee{overflow:hidden;width:100%;contain:inline-size;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.client-track{display:flex;width:max-content;animation:client-drift 85s linear infinite}
.client-track-reverse{animation-direction:reverse}
.client-group{display:flex;flex-shrink:0;list-style:none;padding:0;margin:0}
.client-group li{width:clamp(124px,13vw,200px);height:clamp(104px,10vw,150px);border-bottom:1px solid var(--line);display:grid;place-items:center}
.client-section img{display:block;width:100%;height:100%;object-fit:contain;filter:url(#client-white-removal)}
.client-group img{width:85%;height:85%}
.client-marquee:hover .client-track,.client-marquee:focus-within .client-track{animation-play-state:paused}
.client-marquee:focus-visible{outline:2px solid currentColor;outline-offset:-3px}
.client-link{display:flex;justify-content:flex-end;margin-top:24px}
.client-wall{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;margin:0;padding:0 clamp(20px,4vw,80px);gap:0}
.client-wall li{aspect-ratio:1.4;min-width:0;overflow:hidden;padding:12px;border:1px solid var(--line)}
.client-filter-defs{position:absolute;pointer-events:none;overflow:hidden}
@keyframes client-drift{to{transform:translateX(-50%)}}
@media(max-width:900px){.client-wall{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.client-heading{grid-template-columns:1fr;gap:18px}.client-wall{grid-template-columns:repeat(3,minmax(0,1fr))}.client-wall li{padding:5px;aspect-ratio:1}.client-link{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none;width:100%}.client-group{flex-wrap:wrap;width:100%}.client-group li{width:25%}.client-group[aria-hidden]{display:none}.client-marquee{mask-image:none}}

body[data-page="about"] .client-track{animation-duration:65s}
.client-track:nth-child(3){animation-duration:75s}
