.partners-marquee {
  position: relative;
  overflow: hidden;
  padding: clamp(64px, 8vw, 112px) 0 clamp(68px, 8vw, 108px);
  color: #f6f8fc;
  background:
    radial-gradient(circle at 86% 16%, rgba(233, 109, 55, .16), transparent 28%),
    radial-gradient(circle at 8% 82%, rgba(40, 100, 168, .2), transparent 30%),
    #0a1c33;
  border-top: 1px solid rgba(255, 255, 255, .08);
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.partners-marquee__heading {
  margin-bottom: 34px;
}

.partners-marquee__eyebrow {
  margin: 0 0 12px;
  color: #ff965f;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
}

.partners-marquee h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2.15rem, 4.2vw, 4.1rem);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.partners-marquee__viewport {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.partners-marquee__track {
  display: flex;
  width: max-content;
  animation: partners-scroll 34s linear infinite;
  will-change: transform;
}

.partners-marquee__viewport:hover .partners-marquee__track {
  animation-play-state: paused;
}

.partners-marquee__group {
  display: flex;
  flex: none;
  gap: 18px;
  padding-right: 18px;
}

.partners-marquee__card {
  display: grid;
  flex: none;
  place-items: center;
  width: clamp(190px, 19vw, 240px);
  height: clamp(105px, 10vw, 130px);
  overflow: hidden;
  padding: 18px;
  border: 1px solid rgba(14, 45, 82, .1);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(0, 8, 23, .2);
}

.partners-marquee__card img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}

.partners-marquee__card.partner-rlfc img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  transform: scale(1.36);
}

.partners-marquee__card.partner-cisco img { max-height: 82px; }
.partners-marquee__card.partner-flextronics img { width: 100%; }
.partners-marquee__card.partner-jsw img { max-height: 76px; }
.partners-marquee__card.partner-epsilon img { width: 100%; }

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

@media (max-width: 640px) {
  .partners-marquee__heading { margin-bottom: 25px; }
  .partners-marquee__group { gap: 12px; padding-right: 12px; }
  .partners-marquee__card { width: 188px; height: 106px; padding: 15px; border-radius: 14px; }
  .partners-marquee__track { animation-duration: 24s; }
}

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