/* ==========================================================================
   Logo Carousel (.sentio-lc)
   ==========================================================================
   Extracted from frontend.css during the Batch 8 mechanical extraction
   (2026-04-18). Behavior-preserving.
   Uses Swiper (vendor handles: swiper, e-swiper) provided by Elementor
   core. Declared in get_*_depends per authoring-guide §4 Custom-deps case.
   ========================================================================== */

/* ─── Wrapper (holds swiper + arrows + pagination) ─── */
.sentio-lc-wrap {
	position: relative;
}

/* ─── Base ─── */
.sentio-lc {
	position: relative;
	width: 100%;
}

/* ─── Item ─── */
.sentio-lc__item {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	transition-property: opacity, transform, filter;
	transition-timing-function: ease;
	transition-duration: 300ms;
}

.sentio-lc__link {
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.sentio-lc__img {
	display: block;
	width: auto;
	height: 60px;
	max-width: 150px;
	object-fit: contain;
}

/* ─── Grayscale (Diff #1) ─── */
.sentio-lc--gray .sentio-lc__img {
	filter: grayscale(100%);
	transition: filter 300ms ease;
}
.sentio-lc--gray .sentio-lc__item:hover .sentio-lc__img {
	filter: grayscale(0%);
}

/* ─── Tooltip (Diff #2) ─── */
.sentio-lc__tooltip {
	position: absolute;
	left: 50%;
	transform: translateX(-50%) translateY(4px);
	white-space: nowrap;
	padding: 4px 10px;
	background: #333;
	color: #fff;
	font-size: 12px;
	line-height: 1.4;
	border-radius: 4px;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.2s ease, transform 0.2s ease;
	z-index: 5;
}
.sentio-lc--tip-bottom .sentio-lc__tooltip {
	top: 100%;
	margin-top: 6px;
}
.sentio-lc--tip-top .sentio-lc__tooltip {
	bottom: 100%;
	margin-bottom: 6px;
	transform: translateX(-50%) translateY(-4px);
}
/* Show on hover */
.sentio-lc--tip .sentio-lc__item:hover .sentio-lc__tooltip {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}
/* Hide tooltip when not enabled */
.sentio-lc:not(.sentio-lc--tip) .sentio-lc__tooltip {
	display: none;
}

/* ─── Separator (Diff #7) ─── */
.sentio-lc--sep .sentio-lc__item::after {
	content: '';
	position: absolute;
	right: calc(-1 * var(--sentio-lc-space, 30px) / 2);
	top: 50%;
	transform: translateY(-50%);
	height: 60%;
	border-right: 1px solid #ddd;
	pointer-events: none;
}
/* Hide last separator in carousel */
.sentio-lc--carousel .swiper-slide:last-child .sentio-lc__item::after {
	display: none;
}
/* Hide last separator in grid rows — let overflow:hidden handle clipping */
.sentio-lc--grid .sentio-lc__item:last-child::after {
	display: none;
}

/* ═══════════════════════════════════════════════
 * Carousel Mode
 * ═══════════════════════════════════════════════ */
.sentio-lc--carousel {
	overflow-x: clip;
	overflow-y: visible;
}
.sentio-lc--carousel .swiper-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: auto;
}

/* ─── Navigation Arrows (Diff #6) ─── */
.sentio-lc__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: color 0.2s ease, background-color 0.2s ease;
}
.sentio-lc__arrow svg {
	width: 20px;
	height: 20px;
	color: #333;
}
.sentio-lc__arrow--prev { left: -40px; }
.sentio-lc__arrow--next { right: -40px; }

/* Arrow Style: Circle */
.sentio-lc__arrow--circle {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #f0f0f0;
}

/* Arrow Style: Square */
.sentio-lc__arrow--square {
	width: 40px;
	height: 40px;
	border-radius: 4px;
	background: #f0f0f0;
}

/* Arrow Style: Minimal */
.sentio-lc__arrow--minimal svg {
	stroke-width: 1;
}

/* Swiper disabled state */
.sentio-lc__arrow.swiper-button-disabled {
	opacity: 0.3;
	cursor: default;
	pointer-events: none;
}

/* ─── Pagination ─── */
.sentio-lc__pagination {
	text-align: center;
	margin-top: 20px;
}
.sentio-lc__dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 4px;
	background: #ccc;
	border-radius: 50%;
	cursor: pointer;
	transition: background 0.2s ease;
}
.sentio-lc__dot--active {
	background: #333;
}
/* Fraction / Progress */
.sentio-lc__pagination.swiper-pagination-fraction {
	font-size: 14px;
	color: #666;
}
.sentio-lc__pagination.swiper-pagination-progressbar {
	position: relative !important;
	height: 3px;
	background: #eee;
	border-radius: 2px;
}
.sentio-lc__pagination .swiper-pagination-progressbar-fill {
	background: #333;
	border-radius: 2px;
}

/* ═══════════════════════════════════════════════
 * Ticker / Marquee Mode (Diff #3)
 * ═══════════════════════════════════════════════ */
.sentio-lc--ticker {
	overflow-x: clip;
	overflow-y: visible;
}
.sentio-lc__track {
	display: flex;
	width: max-content;
	animation: sentio-lc-ticker var(--sentio-lc-ticker-dur, 20s) linear infinite;
}
@keyframes sentio-lc-ticker {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}
/* Reverse direction */
.sentio-lc--ticker-reverse .sentio-lc__track {
	animation-direction: reverse;
}
/* Pause on hover */
.sentio-lc--ticker-pause:hover .sentio-lc__track {
	animation-play-state: paused;
}
/* Ticker items inline */
.sentio-lc--ticker .sentio-lc__item {
	flex-shrink: 0;
	margin-inline-end: 30px;
}

/* ═══════════════════════════════════════════════
 * Grid Mode (Diff #4)
 * ═══════════════════════════════════════════════ */
.sentio-lc--grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}
.sentio-lc--grid .sentio-lc__item {
	justify-content: center;
}
