.greckka-marquee {
  --greckka-marquee-duration: 22s;
  --greckka-marquee-gap: 48px;
  --greckka-marquee-border: rgba(255,255,255,.10);
  width: 100%;
  overflow: hidden;
  border-top: 1px solid var(--greckka-marquee-border);
  border-bottom: 1px solid var(--greckka-marquee-border);
}

.greckka-marquee__track {
  display: flex;
  width: max-content;
  animation: greckka-marquee-left var(--greckka-marquee-duration) linear infinite;
  will-change: transform;
}

.greckka-marquee--right .greckka-marquee__track {
  animation-name: greckka-marquee-right;
}

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

.greckka-marquee__group {
  display: flex;
  flex: none;
  align-items: center;
}

.greckka-marquee__item {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: var(--greckka-marquee-gap);
  padding-right: var(--greckka-marquee-gap);
  white-space: nowrap;
}

.greckka-marquee__link {
  display: inline-flex;
  align-items: center;
  gap: .55em;
  color: rgba(232,230,240,.42);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  white-space: nowrap;
  transition:
    color .3s ease,
    transform .3s cubic-bezier(.2,.8,.2,1),
    text-shadow .3s ease;
}

.greckka-marquee__link:hover {
  transform: translateY(-2px);
}

.greckka-marquee--hover-glow .greckka-marquee__link:hover {
  text-shadow: 0 0 22px currentColor;
}

.greckka-marquee__item-icon,
.greckka-marquee__separator {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
}

.greckka-marquee__item-icon svg,
.greckka-marquee__separator svg,
.greckka-marquee__separator img {
  display: block;
  width: 1em;
  height: 1em;
  object-fit: contain;
}

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

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

@media (prefers-reduced-motion: reduce) {
  .greckka-marquee__track {
    animation-play-state: paused;
  }
}
