.ce-marquee-track {
	overflow: hidden;
	position: relative;
}

.ce-marquee-track.ce-has-fade::before,
.ce-marquee-track.ce-has-fade::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: var(--ce-marquee-fade-width, 100px);
	z-index: 2;
	pointer-events: none;
}

.ce-marquee-track.ce-has-fade::before {
	left: 0;
	background: linear-gradient(to right, var(--ce-marquee-fade-color, #fff) 0%, transparent 100%);
}

.ce-marquee-track.ce-has-fade::after {
	right: 0;
	background: linear-gradient(to left, var(--ce-marquee-fade-color, #fff) 0%, transparent 100%);
}

.ce-marquee-strip {
	display: flex;
	flex-wrap: nowrap;
	will-change: transform;
}

.ce-marquee-group {
	display: flex;
	flex-shrink: 0;
	align-items: center;
}

.ce-marquee-logo-item {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ce-marquee-logo-inner {
	display: flex;
	align-items: center;
	justify-content: center;
}

.ce-marquee-logo-item img {
	display: block;
	max-width: none;
	object-fit: contain;
}

.ce-marquee-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	width: 100%;
	height: 0;
	z-index: 10;
	pointer-events: none;
}

.ce-marquee-nav-inner {
	position: relative;
	width: 100%;
	height: 0;
	pointer-events: none;
}

.ce-marquee-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	cursor: pointer;
	line-height: 0;
	transition: all 0.3s ease;
	pointer-events: auto;
}

/* Stacked Layout */
.ce-marquee-nav-stacked .ce-marquee-nav-inner {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.ce-marquee-nav-stacked .ce-marquee-nav-inner {
	position: absolute;
	top: 50%;
	right: 20px;
	display: flex;
}

.ce-marquee-nav-stacked .ce-marquee-prev,
.ce-marquee-nav-stacked .ce-marquee-next {
	position: relative;
	top: auto;
	transform: none;
}

/* Sides Layout */
.ce-marquee-nav-sides .ce-marquee-prev {
	left: 20px;
}

.ce-marquee-nav-sides .ce-marquee-next {
	right: 20px;
}
