/* ============================================================
   Vertical Image Carousel for Elementor — Frontend Styles
   ============================================================ */

.vce-carousel-wrapper {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 500px; /* default; overridden by Elementor control */
	background-color: #ffffff;
}

/* Fade top & bottom edges */
.vce-carousel-wrapper.vce-fade::before,
.vce-carousel-wrapper.vce-fade::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	height: 80px;
	z-index: 2;
	pointer-events: none;
}

.vce-carousel-wrapper.vce-fade::before {
	top: 0;
	background: linear-gradient(to bottom, var(--vce-bg, #ffffff) 0%, transparent 100%);
}

.vce-carousel-wrapper.vce-fade::after {
	bottom: 0;
	background: linear-gradient(to top, var(--vce-bg, #ffffff) 0%, transparent 100%);
}

/* Track: flex column, items centred horizontally by default */
.vce-carousel-track {
	display: flex;
	flex-direction: column;
	align-items: center;
	will-change: transform;
}

/* Individual item */
.vce-carousel-item {
	flex-shrink: 0;
	display: block;
}

.vce-carousel-item a {
	display: block;
	line-height: 0;
}

.vce-carousel-item img {
	display: block;
	width: 300px;  /* default; overridden by Elementor */
	height: 200px; /* default; overridden by Elementor */
	object-fit: cover;
	border-radius: 8px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vce-carousel-item img:hover {
	transform: scale(1.03);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
}

/* Paused state applied by JS */
.vce-carousel-wrapper.vce-paused .vce-carousel-track {
	animation-play-state: paused !important;
}
