.client-logo-wall { display: none; }

.client-marquee {
  overflow: hidden;
  margin: 0 -5.7vw;
  padding: 3px 0;
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.client-marquee-label {
  margin: 0 0 13px;
  color: #9db0df;
  font: 10px 'DM Mono', monospace;
  letter-spacing: .12em;
}

.client-marquee--development { margin-bottom: 29px; }

.client-marquee__track,
.client-marquee__group {
  display: flex;
  width: max-content;
  align-items: center;
  gap: 10px;
}

.client-marquee__track {
  animation: client-marquee-scroll 74s linear infinite;
}

.client-marquee:hover .client-marquee__track { animation-play-state: paused; }

.client-ticker {
  box-sizing: border-box;
  min-width: 132px;
  height: 64px;
  padding: 11px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ffffff2e;
  border-radius: 3px;
  background: #ffffff0b;
  color: #dce4f1;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -.045em;
  text-align: center;
  white-space: nowrap;
}

.client-ticker--image { background: #fff; border-color: transparent; }
.client-ticker--image img { display: block; max-width: 102px; max-height: 31px; object-fit: contain; }
.client-ticker--navy { background: #17627c; }
.client-ticker--purple { background: #5b4a86; }
.client-ticker--wine { background: #9a3d57; }
.client-ticker--maintrans img { width: 102px; max-width: 102px; height: 47px; max-height: 47px; }

@keyframes client-marquee-scroll { to { transform: translateX(-50%); } }

@media (prefers-reduced-motion: reduce) {
  .client-marquee { overflow-x: auto; mask-image: none; }
  .client-marquee__track { animation: none; }
  .client-marquee__group[aria-hidden="true"] { display: none; }
}

@media (max-width: 760px) {
  .client-marquee { margin: 0 -22px; }
  .client-marquee--development { margin-bottom: 23px; }
  .client-marquee-label { margin-bottom: 10px; font-size: 9px; }
  .client-marquee__track, .client-marquee__group { gap: 7px; }
  .client-ticker { min-width: 112px; height: 54px; padding: 9px 12px; font-size: 11px; }
  .client-ticker--image img { max-width: 87px; max-height: 26px; }
  .client-ticker--maintrans img { width: 87px; max-width: 87px; height: 40px; max-height: 40px; }
}
