/* Original brand artwork, presented in the site's existing monochrome palette. */
.world-client-names .client-logo,
.client-logos .client-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  min-width: 0;
  height: 45px;
}

.world-client-names .client-logo img,
.client-logos .client-logo img {
  display: block;
  width: 100%;
  height: 38px;
  object-fit: contain;
  filter: grayscale(1) contrast(1.25);
  opacity: .72;
  mix-blend-mode: multiply;
}
.world-client-names .client-logo--transparent img {
  filter: grayscale(1) brightness(.35);
  opacity: .75;
}
.world-client-names .client-logo--tk img {
  filter: brightness(0);
  height: 25px;
  opacity: .65;
}
.world-client-names .client-logo--tk > span {
  margin-top: 5px;
  font-size: 8px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0;
  color: #496675;
}
.client-logos .client-logo {flex: 0 0 95px}
.client-logos .client-logo--transparent img {
  filter: grayscale(1) brightness(.2);
  opacity: .66;
}
@media(max-width:1150px) {
  .client-logos .client-logo {flex-basis: 77px}
}
@media(max-width:600px) {
  .world-client-names {gap: 25px 17px}
  .world-client-names .client-logo {height: 40px}
  .world-client-names .client-logo img {height: 32px}
  .world-client-names .client-logo--tk img {height: 18px}
  .world-client-names .client-logo--tk > span {font-size: 6px;margin-top: 4px}
}

/* A single continuous strip, with the original logos exposed only once to assistive tools. */
.client-logo-marquee {display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.client-logo-window {flex:1;min-width:0;overflow-x:auto;scrollbar-width:thin;padding:8px 0}
.client-logo-track {display:flex;width:max-content}
.client-logo-marquee .client-logos {display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;width:max-content;gap:44px;padding-right:44px}
.client-logo-marquee .client-logo {flex:0 0 110px;width:110px;height:45px}
.client-logo-marquee .client-logo img {width:110px;height:38px}
.client-logo-marquee .client-logo--tk img {height:25px;filter:brightness(0);opacity:.65}
.client-logo-marquee .client-logo--tk>span {font-size:8px;line-height:1.2;margin-top:5px;color:#496675}
.client-logo-marquee.is-ready .client-logo-window {overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 22px,#000 calc(100% - 22px),transparent)}
.client-logo-marquee.is-ready .client-logo-track {animation:client-logo-scroll 46s linear infinite;animation-play-state:paused}
.client-logo-marquee[data-running="true"] .client-logo-track {animation-play-state:running}
.client-logo-marquee:hover .client-logo-track,
.client-logo-window:focus .client-logo-track {animation-play-state:paused}
.client-logo-toggle {flex:0 0 30px;width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:4px;background:transparent;color:#6d7e87;cursor:pointer;font-size:14px;line-height:1}
.client-logo-toggle:hover {border-color:var(--blue);color:var(--blue)}
.client-logo-window:focus-visible,.client-logo-toggle:focus-visible {outline:2px solid var(--blue);outline-offset:4px}
@keyframes client-logo-scroll {to {transform:translateX(-50%)}}
@media(max-width:700px) {
  .client-logo-marquee {gap:8px}
  .client-logo-marquee .client-logos {gap:30px;padding-right:30px}
  .client-logo-marquee .client-logo {flex-basis:95px;width:95px;height:38px}
  .client-logo-marquee .client-logo img {width:95px;height:32px}
  .client-logo-marquee .client-logo--tk img {height:22px}
  .client-logo-marquee.is-ready .client-logo-track {animation-duration:38s}
}
@media(prefers-reduced-motion:reduce) {
  .client-logo-marquee.is-ready .client-logo-window {overflow-x:auto;mask-image:none}
  .client-logo-marquee.is-ready .client-logo-track {animation:none}
  .client-logo-marquee .client-logos[aria-hidden="true"] {display:none}
}
