.elima-marquee-wrapper-7810b53b {
	width: 100%;
	padding: 30px 0;
	display: block;
}

.elima-marquee-wrapper-7810b53b.bg-white {
	background-color: #FFFFFF;
}

.elima-marquee-wrapper-7810b53b.bg-blue {
	background-color: #EBF5FB;
}

.elima-marquee-container-7810b53b {
	width: 100%;
	overflow: hidden;
	display: flex;
	white-space: nowrap;
	position: relative;
	--logo-gap: 50px; /* Fallback */
}

.elima-marquee-track-7810b53b {
	display: flex;
	align-items: center;
	gap: var(--logo-gap);
	width: max-content;
	animation: scroll-marquee-7810b53b 30s linear infinite;
}

.elima-marquee-container-7810b53b.pause-on-hover:hover .elima-marquee-track-7810b53b {
	animation-play-state: paused;
}

.elima-marquee-item-7810b53b {
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.3s ease, opacity 0.3s ease;
	opacity: 0.85; /* Subtle default opacity */
}

.elima-marquee-item-7810b53b:hover {
	transform: scale(1.05);
	opacity: 1;
}

.elima-marquee-item-7810b53b img {
	height: 80px; /* Default height */
	width: auto;
	object-fit: contain;
	display: block;
	max-width: none;
}

/* 
 * The track is doubled exactly. The translation must perfectly offset half the track. 
 * calc(-50% - (gap / 2)) precisely loops continuous flex tracks.
 */
@keyframes scroll-marquee-7810b53b {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(calc(-50% - (var(--logo-gap) / 2)));
	}
}

@media (max-width: 767px) {
    .elima-marquee-container-7810b53b {
        --logo-gap: 30px;
    }
    .elima-marquee-item-7810b53b img {
        height: 40px !important;
    }
}