.kmw-marquee {
  --kmw-duration: 80s;
  --kmw-distance: -25%;
  --kmw-gap: 20px;
  --kmw-fade-width: 120px;
  --kmw-fade-color: #ffffff;
  --kmw-fade-opacity: 1;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  margin: 0;
  isolation: isolate;
}

.kmw-marquee,
.kmw-marquee * {
  box-sizing: border-box;
}

.kmw-marquee--overflow-hidden {
  overflow: hidden;
}

.kmw-marquee--overflow-visible {
  overflow: visible;
}

.kmw-viewport {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
}

.kmw-marquee--overflow-visible .kmw-viewport {
  overflow: visible;
}

.kmw-track,
.kmw-marquee .kirzner-marquee-track {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center;
  width: max-content;
  max-width: none;
  will-change: transform;
  animation-duration: var(--kmw-duration);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-play-state: running;
}

.kmw-group {
  display: flex;
  flex: 0 0 auto;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: var(--kmw-gap);
  width: max-content;
  max-width: none;
  white-space: nowrap;
}

.kmw-word {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: none;
  line-height: 1;
  white-space: nowrap;
}

.kmw-word__text {
  display: inline-block;
  color: #b9b9b9;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.15;
  text-transform: uppercase;
  white-space: nowrap;
}

.kmw-marquee--direction-left .kmw-track {
  animation-name: kmw-marquee-left;
}

.kmw-marquee--direction-right .kmw-track {
  animation-name: kmw-marquee-right;
}

.kmw-marquee--pause-hover:hover .kmw-track,
.kmw-marquee--paused .kmw-track {
  animation-play-state: paused;
}

.kmw-marquee--fade-overlay::before,
.kmw-marquee--fade-overlay::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 3;
  width: var(--kmw-fade-width);
  max-width: 50%;
  opacity: var(--kmw-fade-opacity);
  pointer-events: none;
}

.kmw-marquee--fade-overlay::before {
  left: 0;
  background: linear-gradient(to right, var(--kmw-fade-color) 0%, rgba(255, 255, 255, 0) 100%);
}

.kmw-marquee--fade-overlay::after {
  right: 0;
  background: linear-gradient(to left, var(--kmw-fade-color) 0%, rgba(255, 255, 255, 0) 100%);
}

.kmw-marquee--fade-mask .kmw-viewport {
  -webkit-mask-image: linear-gradient(
    to right,
    transparent 0,
    #000 var(--kmw-fade-width),
    #000 calc(100% - var(--kmw-fade-width)),
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    transparent 0,
    #000 var(--kmw-fade-width),
    #000 calc(100% - var(--kmw-fade-width)),
    transparent 100%
  );
}

.kmw-marquee .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes kmw-marquee-left {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(var(--kmw-distance), 0, 0);
  }
}

@keyframes kmw-marquee-right {
  from {
    transform: translate3d(var(--kmw-distance), 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .kmw-track,
  .kmw-marquee .kirzner-marquee-track {
    animation-play-state: paused;
  }
}
