.soxera-marquee-plugin {
	--sdm-bg: #d2691e;
	--sdm-text: #fff8ec;
	--sdm-border: rgba(255, 248, 236, .28);
	--sdm-font: Fraunces, ui-serif, Georgia, serif;
	--sdm-size: 18px;
	--sdm-mobile-size: 15px;
	--sdm-gap: 40px;
	--sdm-padding: 14px;
	--sdm-duration: 40s;
	position: relative;
	overflow: hidden;
	border-top: 1px solid var(--sdm-border);
	border-bottom: 1px solid var(--sdm-border);
	background: var(--sdm-bg);
	color: var(--sdm-text);
	font-family: var(--sdm-font);
}

.soxera-marquee-plugin *,
.soxera-marquee-plugin *::before,
.soxera-marquee-plugin *::after {
	box-sizing: border-box;
}

.soxera-marquee-plugin__track {
	display: flex;
	align-items: center;
	gap: var(--sdm-gap);
	width: max-content;
	padding: var(--sdm-padding) 0;
	white-space: nowrap;
	will-change: transform;
	animation: soxera-dynamic-marquee-left var(--sdm-duration) linear infinite;
}

.soxera-marquee-plugin[data-direction="right"] .soxera-marquee-plugin__track {
	animation-name: soxera-dynamic-marquee-right;
}

.soxera-marquee-plugin[data-pause-on-hover="1"]:hover .soxera-marquee-plugin__track {
	animation-play-state: paused;
}

.soxera-marquee-plugin__text {
	display: inline-flex;
	align-items: center;
	gap: var(--sdm-gap);
	font-size: var(--sdm-size);
	font-weight: 600;
	letter-spacing: 0.02em;
	line-height: 1.25;
	color: var(--sdm-text) !important;
}

@keyframes soxera-dynamic-marquee-left {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

@keyframes soxera-dynamic-marquee-right {
	from { transform: translateX(-50%); }
	to { transform: translateX(0); }
}

@media (max-width: 640px) {
	.soxera-marquee-plugin {
		--sdm-size: var(--sdm-mobile-size);
		--sdm-gap: 28px;
		--sdm-padding: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.soxera-marquee-plugin__track {
		animation: none;
		transform: none;
	}
}
