/* Extenso Responsive Slider Lite
   CSS-only: no JavaScript, no DOM movement, no Elementor editor processing. */

.extenso-lite-slider {
	--extenso-lite-gap: 14px;
	--extenso-lite-desktop: 5;
	--extenso-lite-tablet: 2;
	--extenso-lite-mobile: 2;
}

/* Desktop: normal layout. Nothing moves and no scrollbar exists. */
@media (min-width: 1025px) {
	.extenso-lite-slider {
		overflow: visible;
	}

	.extenso-lite-slider > .e-con-inner,
	.extenso-lite-slider {
		/* Keep Elementor's normal structure. */
	}

	.extenso-lite-slider > .e-con,
	.extenso-lite-slider > .elementor-element {
		flex: 0 0 calc(
			(100% - (var(--extenso-lite-gap) * (var(--extenso-lite-desktop) - 1)))
			/ var(--extenso-lite-desktop)
		);
	}
}

/* Tablet and mobile: native horizontal scrolling + CSS scroll snap. */
@media (max-width: 1024px) {
	.extenso-lite-slider {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		gap: var(--extenso-lite-gap) !important;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.extenso-lite-slider::-webkit-scrollbar {
		display: none;
	}

	.extenso-lite-slider > .e-con,
	.extenso-lite-slider > .elementor-element {
		flex: 0 0 calc(
			(100% - (var(--extenso-lite-gap) * (var(--extenso-lite-tablet) - 1)))
			/ var(--extenso-lite-tablet)
		) !important;
		min-width: 0 !important;
		scroll-snap-align: start;
	}
}

@media (max-width: 767px) {
	.extenso-lite-slider > .e-con,
	.extenso-lite-slider > .elementor-element {
		flex-basis: calc(
			(100% - (var(--extenso-lite-gap) * (var(--extenso-lite-mobile) - 1)))
			/ var(--extenso-lite-mobile)
		) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.extenso-lite-slider {
		scroll-behavior: auto;
	}
}
