/**
 * Marquee widget — Elementor overrides + seamless infinite scroll.
 */
.elementor-widget-brand {
	overflow: hidden;
}

.elementor-widget-brand .beep-marquee-section {
	overflow: hidden;
	width: 100%;
}

.elementor-widget-brand .beep-marquee-track {
	overflow: hidden;
	width: 100%;
}

.elementor-widget-brand .beep-marquee-scroll {
	display: flex;
	width: max-content;
	flex-wrap: nowrap;
	animation: beepMarqueeScroll var(--beep-marquee-duration, 28s) linear infinite;
	will-change: transform;
}

.elementor-widget-brand .beep-marquee-group {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	flex-wrap: nowrap;
	gap: var(--beep-marquee-gap, 32px);
	white-space: nowrap;
}

.elementor-widget-brand .beep-marquee-label {
	flex-shrink: 0;
	font-size: 14px;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.8);
	letter-spacing: 1px;
	text-transform: uppercase;
}

.elementor-widget-brand .beep-marquee-separator {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--orange, #f97316);
	font-size: 6px;
	line-height: 1;
}

.elementor-widget-brand .beep-marquee-separator i {
	color: var(--orange, #f97316);
	font-size: inherit;
	line-height: 1;
}

.elementor-widget-brand .beep-marquee-separator svg.e-font-icon-svg {
	width: 6px;
	height: 6px;
	fill: currentColor;
}

.elementor-widget-brand .beep-marquee-separator svg.e-font-icon-svg path {
	fill: currentColor;
}

@keyframes beepMarqueeScroll {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		transform: translate3d(var(--beep-marquee-distance, -50%), 0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	.elementor-widget-brand .beep-marquee-scroll {
		animation: none;
	}
}
