
.atema-marquee {
  --atema-speed: 35s;
  --atema-font-size: 28px;
  --atema-dot-size: 30px;
  --atema-gap: 34px;
  --atema-text: #6e6e68;
  --atema-dot: #a7a79f;
  --atema-bg: #f7f7f3;

  width: 100%;
  overflow: hidden;
  background: var(--atema-bg);
  padding: 18px 0;
  line-height: 1;
}

.atema-marquee__track {
  display: flex;
  width: max-content;
  animation: atema-marquee-scroll var(--atema-speed) linear infinite;
  transform: translate3d(0,0,0);
  will-change: transform;
}

.atema-marquee__group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.atema-marquee__item {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  color: var(--atema-text);
  font-size: var(--atema-font-size);
  font-weight: 400;
  line-height: 1;
}

.atema-marquee__dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  color: var(--atema-dot);
  font-size: var(--atema-dot-size);
  line-height: 1;
  margin: 0 var(--atema-gap);
  transform: translateY(-0.02em);
}

@keyframes atema-marquee-scroll {
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(calc(-1 * var(--atema-shift, 50%)),0,0); }
}

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

@media (prefers-reduced-motion: reduce) {
  .atema-marquee__track {
    animation: none;
  }
}

@media (max-width: 767px) {
  .atema-marquee {
    padding: 15px 0;
  }
  .atema-marquee__item {
    font-size: calc(var(--atema-font-size) * .82);
  }
  .atema-marquee__dot {
    font-size: calc(var(--atema-dot-size) * .82);
    margin-left: calc(var(--atema-gap) * .72);
    margin-right: calc(var(--atema-gap) * .72);
  }
}
