.rf-marquee {
  display: block !important;
  position: relative;
  overflow: hidden;
  background: #191816;
  color: #fff;
}

.rf-marquee-track {
  display: flex;
  width: max-content;
  min-width: 100%;
  animation: rf-marquee-scroll 34s linear infinite;
  will-change: transform;
}

.rf-marquee-group {
  display: flex;
  flex: none;
  min-width: max-content;
  align-items: stretch;
}

.rf-marquee-group > * {
  flex: 0 0 clamp(240px, 24vw, 360px);
  min-width: 0;
  white-space: normal;
}

.rf-marquee:hover .rf-marquee-track {
  animation-play-state: paused;
}

.rf-marquee:focus-within .rf-marquee-track {
  animation-play-state: paused;
}

@keyframes rf-marquee-scroll {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(-50%, 0, 0); }
}

@media (max-width: 760px) {
  .rf-marquee-track { animation-duration: 40s; }
  .rf-marquee-group > * { flex-basis: min(82vw, 320px); }
}

@media (prefers-reduced-motion: reduce) {
  .rf-marquee {
    overflow-x: auto;
    overscroll-behavior-inline: contain;
  }

  .rf-marquee-track {
    animation: none;
    transform: none;
    will-change: auto;
  }

  .rf-marquee-group[aria-hidden="true"] { display: none; }
}
