/*!
 * Custom Asset: active
 * Priority: 1749
 * Context: frontend
 */

/*
 * WPCode export ID: 1749
 * Original title: Review Settings
 * Original location: site_wide_header
 * Temporary child-theme drop-in file.
 */

/*Carousel Settings*/
/* ===============================
   Reviews carousel - stacked cards
   =============================== */

.reviews-section {
	--reviews-stage-width: 720px;
	--reviews-card-width: 390px;
	--reviews-side-offset: 560px;

	--reviews-stage-width-tablet: 640px;
	--reviews-card-width-tablet: 380px;
	--reviews-side-offset-tablet: 555px;

	--reviews-card-width-mobile: 320px;
	--reviews-side-offset-mobile: 290px;

	position: relative;
	overflow-x: clip;
}

@supports not (overflow: clip) {
	.reviews-section {
		overflow-x: hidden;
	}
}

/* Levý textový blok */
.reviews-copy {
	min-width: 0;
	max-width: 520px;
}

/* Pravý sloupec / stage carouselu */
.reviews-stage {
	position: relative;
	width: var(--reviews-stage-width);
	max-width: 100%;
	min-width: 0;
	margin-left: auto;

	overflow-x: clip;
	overflow-y: visible;
}

@supports not (overflow: clip) {
	.reviews-stage {
		overflow-x: hidden;
	}
}

/* Carousel wrapper */
.reviews-carousel {
	position: relative;
	width: var(--reviews-stage-width);
	max-width: 100%;
	padding-bottom: 40px;
}

/* Elementor container uvnitř carouselu */
.reviews-carousel .elementor-widget-container,
.reviews-carousel .elementor-swiper,
.reviews-carousel .swiper {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: visible;
}

/* Carousel musí mít viditelný overflow uvnitř stage */
.reviews-carousel .swiper-wrapper,
.reviews-carousel .swiper-slide {
	overflow: visible;
}

.reviews-carousel .swiper-wrapper {
	align-items: center;
}

.reviews-carousel .swiper-slide {
	position: relative;
	display: flex;
	justify-content: center;
	z-index: 1;
}

/* Základní karta */
.reviews-carousel .review-card {
	position: relative;
	width: var(--reviews-card-width);
	max-width: 100%;
	flex: 0 0 var(--reviews-card-width);
	transition:
		opacity .3s ease,
		transform .3s ease;
	z-index: 1;
}

/* Aktivní karta vpředu */
.reviews-carousel .swiper-slide-active {
	z-index: 5;
}

.reviews-carousel .swiper-slide-active .review-card {
	opacity: 1;
	transform: scale(1);
}

/* Levá zadní karta */
.reviews-carousel .swiper-slide-prev {
	z-index: 2;
}

.reviews-carousel .swiper-slide-prev .review-card {
	opacity: .24;
	transform: translateX(var(--reviews-side-offset)) scale(.92);
}

/* Pravá zadní karta */
.reviews-carousel .swiper-slide-next {
	z-index: 2;
}

.reviews-carousel .swiper-slide-next .review-card {
	opacity: .24;
	transform: translateX(calc(var(--reviews-side-offset) * -1)) scale(.92);
}

/* Ostatní slidy schovat */
.reviews-carousel .swiper-slide:not(.swiper-slide-active):not(.swiper-slide-prev):not(.swiper-slide-next) .review-card {
	opacity: 0;
	transform: scale(.9);
}

/* Pagination */
.reviews-carousel .swiper-pagination {
	position: absolute !important;
	left: 0;
	right: 0;
	bottom: 0 !important;
	width: 100%;
	margin: 0;
	z-index: 10;
	text-align: center;
}

/* Small tablet fix - mezistav, kde se desktop layout už nevejde */
@media (min-width: 768px) and (max-width: 1050px) {
	.reviews-section {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 48px;
		overflow-x: clip;
	}

	.reviews-copy {
		width: 100%;
		max-width: 560px;
		margin: 0 auto;
	}

	.reviews-stage {
		width: 100%;
		max-width: 640px;
		margin: 0 auto;
		overflow-x: clip;
		overflow-y: visible;
	}

	.reviews-carousel {
		width: 100%;
		max-width: 640px;
		margin: 0 auto;
		padding-bottom: 38px;
	}

	.reviews-carousel .review-card {
		width: 390px;
		max-width: 390px;
		flex: 0 0 390px;
	}

	.reviews-carousel .swiper-slide-prev .review-card {
		opacity: .22;
		transform: translateX(520px) scale(.92);
	}

	.reviews-carousel .swiper-slide-next .review-card {
		opacity: .22;
		transform: translateX(-520px) scale(.92);
	}
}


/* ===============================
   Reviews carousel - mobile tuning
   =============================== */

/* Větší mobil / malý tablet: cca 600–767 px */
@media (min-width: 600px) and (max-width: 767px) {
	.reviews-section {
		overflow-x: clip;
	}

	.reviews-copy {
		width: 100%;
		max-width: 620px;
		margin: 0 auto;
	}

	.reviews-stage {
		width: 100%;
		max-width: 620px;
		margin: 0 auto;
		overflow-x: clip;
		overflow-y: visible;
	}

	.reviews-carousel {
		width: 100%;
		max-width: 620px;
		margin: 0 auto;
		padding-bottom: 34px;
	}

	.reviews-carousel .elementor-widget-container,
	.reviews-carousel .elementor-swiper,
	.reviews-carousel .swiper,
	.reviews-carousel .swiper-wrapper,
	.reviews-carousel .swiper-slide {
		overflow: visible;
	}

	.reviews-carousel .swiper-slide {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.reviews-carousel .review-card {
		width: 360px;
		max-width: 82vw;
		flex: 0 0 360px;
	}

	.reviews-carousel .swiper-slide-active .review-card {
		opacity: 1;
		transform: scale(1);
	}

	.reviews-carousel .swiper-slide-prev .review-card {
		opacity: .22;
		transform: translateX(430px) scale(.92);
	}

	.reviews-carousel .swiper-slide-next .review-card {
		opacity: .22;
		transform: translateX(-430px) scale(.92);
	}

	.reviews-carousel .swiper-pagination {
		bottom: 0 !important;
	}
}


/* Menší mobil: do 599 px */
@media (max-width: 599px) {
	.reviews-section {
		overflow-x: clip;
	}

	.reviews-copy {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}

	.reviews-stage {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		overflow-x: clip;
		overflow-y: visible;
	}

	.reviews-carousel {
		width: 100%;
		max-width: 100%;
		padding-bottom: 32px;
	}

	.reviews-carousel .elementor-widget-container,
	.reviews-carousel .elementor-swiper,
	.reviews-carousel .swiper,
	.reviews-carousel .swiper-wrapper,
	.reviews-carousel .swiper-slide {
		overflow: visible;
	}

	.reviews-carousel .swiper-slide {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.reviews-carousel .review-card {
		width: 320px;
		max-width: 86vw;
		flex: 0 0 320px;
	}

	.reviews-carousel .swiper-slide-active .review-card {
		opacity: 1;
		transform: scale(1);
	}

	.reviews-carousel .swiper-slide-prev .review-card {
		opacity: .2;
		transform: translateX(330px) scale(.92);
	}

	.reviews-carousel .swiper-slide-next .review-card {
		opacity: .2;
		transform: translateX(-330px) scale(.92);
	}

	.reviews-carousel .swiper-pagination {
		bottom: 0 !important;
	}

	.reviews-carousel .elementor-swiper-button,
	.reviews-carousel .swiper-button-prev,
	.reviews-carousel .swiper-button-next {
		display: none !important;
	}
}
