.sslider-carousel {
	position: relative;
	overflow: visible;
	--sslider-gap: 20px;
	--sslider-visible-per-row: var(--sslider-per-row, 5);
}

.sslider-carousel .sslider-inner {
	overflow: hidden;
	padding-top: 44px;
	margin-top: -44px;
	-webkit-mask-image: linear-gradient(
		to right,
		transparent 0,
		black var(--sslider-fade-width, 100px),
		black calc(100% - var(--sslider-fade-width, 100px)),
		transparent 100%
	);
	mask-image: linear-gradient(
		to right,
		transparent 0,
		black var(--sslider-fade-width, 100px),
		black calc(100% - var(--sslider-fade-width, 100px)),
		transparent 100%
	);
}

.sslider-carousel .sslider-track {
	display: flex;
	align-items: center;
	gap: var(--sslider-gap, 20px);
}

.sslider-carousel .sslider-logo-item {
	flex: 0 0 auto;
	padding: var(--sslider-padding, 20px);
	background: var(--sslider-bg, #ffffff);
	border-radius: var(--sslider-radius, 8px);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: calc((100% - (var(--sslider-visible-per-row, var(--sslider-per-row, 5)) - 1) * var(--sslider-gap, 20px)) / var(--sslider-visible-per-row, var(--sslider-per-row, 5)));
	box-sizing: border-box;
}

.sslider-carousel .sslider-logo-item:hover {
	background: var(--sslider-bg, #ffffff);
}

.sslider-carousel .sslider-logo-item a,
.sslider-carousel .sslider-logo-item a:hover,
.sslider-carousel .sslider-logo-item a:focus,
.sslider-carousel .sslider-logo-item a:active,
.sslider-carousel .sslider-logo-item a:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent !important;
	text-decoration: none !important;
	border: 0;
	outline: 0;
	box-shadow: none !important;
	color: inherit;
}

.sslider-carousel .sslider-logo-item img {
	max-height: var(--sslider-logo-height, 80px);
	width: auto;
	max-width: 100%;
	object-fit: contain;
}

/* Dots - Hidden */
.sslider-carousel .slick-dots {
	display: none !important;
}

/* Tooltip */
.sslider-carousel .sslider-logo-item[data-tooltip] {
	position: relative;
	z-index: 3;
}

.sslider-carousel .sslider-logo-item[data-tooltip]::before {
	content: attr(data-tooltip);
	position: absolute;
	bottom: calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%) translateY(8px);
	background: rgba(30, 30, 30, 0.95);
	color: #fff;
	padding: 8px 14px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.3px;
	white-space: nowrap;
	z-index: 1000;
	opacity: 0;
	visibility: hidden;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.sslider-carousel .sslider-logo-item[data-tooltip]::after {
	content: '';
	position: absolute;
	bottom: calc(100% + 4px);
	left: 50%;
	transform: translateX(-50%) translateY(8px);
	border-width: 6px;
	border-style: solid;
	border-color: rgba(30, 30, 30, 0.95) transparent transparent transparent;
	opacity: 0;
	visibility: hidden;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
	z-index: 1000;
}

.sslider-carousel .sslider-logo-item[data-tooltip]:hover::before,
.sslider-carousel .sslider-logo-item[data-tooltip]:hover::after {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}

/* Always-visible tooltip (discreet) */
.sslider-carousel .sslider-logo-item[data-tooltip].sslider-tooltip-always::before,
.sslider-carousel .sslider-logo-item[data-tooltip].sslider-tooltip-always::after {
	display: none;
}

.sslider-carousel .sslider-logo-item[data-tooltip].sslider-tooltip-always {
	flex-wrap: wrap;
}

.sslider-carousel .sslider-logo-item[data-tooltip].sslider-tooltip-always .sslider-tooltip-text {
	display: block;
	width: 100%;
	flex-shrink: 0;
	margin-top: 8px;
}

.sslider-carousel .sslider-logo-item .sslider-tooltip-text {
	display: none;
	margin-top: 4px;
	font-size: 11px;
	color: #999;
	text-align: center;
	line-height: 1.3;
}

/* Continuous Flow Animation */
.sslider-carousel.sslider-continuous .sslider-track.sslider-animated {
	animation: sslider-scroll var(--sslider-duration, 30s) linear infinite;
}

@keyframes sslider-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(var(--sslider-scroll-distance, -33.333%));
	}
}

.sslider-carousel.sslider-continuous:hover .sslider-track.sslider-animated {
	animation-play-state: paused;
}

.sslider-carousel.sslider-continuous.sslider-direction-rtl .sslider-track.sslider-animated {
	animation-direction: reverse;
}

/* List title positioning */
.sslider-list-title-wrap {
	display: block;
	font-weight: normal;
	font-size: 0.875rem;
	letter-spacing: 0.02em;
}

.sslider-carousel .sslider-list-title-wrap {
	margin-bottom: 8px;
}

.sslider-carousel .sslider-list-title-wrap:only-child {
	margin-top: 8px;
	margin-bottom: 0;
}

/* Editor Preview */
.sslider-editor-preview {
	min-height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Responsive */
@media (max-width: 1024px) {
	.sslider-carousel {
		--sslider-gap: 16px;
	}

	.sslider-carousel .sslider-logo-item {
		padding: max(10px, calc(var(--sslider-padding, 20px) * 0.8));
	}

	.sslider-carousel .sslider-logo-item img {
		max-height: max(56px, calc(var(--sslider-logo-height, 80px) * 0.85));
	}
}

@media (max-width: 768px) {
	.sslider-carousel {
		--sslider-gap: 12px;
	}

	.sslider-carousel .sslider-logo-item {
		padding: max(8px, calc(var(--sslider-padding, 20px) * 0.65));
	}

	.sslider-carousel .sslider-logo-item img {
		max-height: max(44px, calc(var(--sslider-logo-height, 80px) * 0.7));
	}

	.sslider-carousel .sslider-inner {
		--sslider-fade-width: 70px;
	}
}

@media (max-width: 480px) {
	.sslider-carousel {
		--sslider-gap: 10px;
	}

	.sslider-carousel .sslider-logo-item {
		padding: max(12px, calc(var(--sslider-padding, 20px) * 0.7));
	}

	.sslider-carousel .sslider-logo-item img {
		max-height: max(50px, calc(var(--sslider-logo-height, 80px) * 0.75));
	}

	.sslider-carousel .sslider-inner {
		--sslider-fade-width: 50px;
	}
}
