.top-marquee-wrapper {
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}

.top-marquee-track-wrap {
	overflow: hidden;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

.top-marquee-track {
	display: flex;
	align-items: center;
	white-space: nowrap;
	width: max-content;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	will-change: transform;
}

.top-marquee-group {
	display: flex;
	align-items: center;
	white-space: nowrap;
	flex: none;
}

.top-marquee-track.tm-anim-left {
	animation-name: tm-scroll-left;
}

.top-marquee-track.tm-anim-right {
	animation-name: tm-scroll-right;
}

.top-marquee-wrapper:hover .top-marquee-track.tm-pause-hover {
	animation-play-state: paused;
}

.top-marquee-item {
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.top-marquee-sep {
	display: inline-flex;
	align-items: center;
	padding: 0 14px;
	opacity: 0.75;
}

@keyframes tm-scroll-left {
	from { transform: translateX(0); }
	to   { transform: translateX(calc(-1 * var(--tm-distance, 50%))); }
}

@keyframes tm-scroll-right {
	from { transform: translateX(calc(-1 * var(--tm-distance, 50%))); }
	to   { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
	.top-marquee-track {
		animation: none !important;
	}
}
