/* ==========================================================================
   Vendavo Testimonial Carousel Widget

   Pagination (.vendavo-swiper-pagination), arrows (.vendavo-arrow / .vendavo-arrows),
   controls bar (.vendavo-carousel-controls) and tags (.vendavo-tag / .vendavo-tags)
   all inherit from vendavo-carousel.css — we only style the testimonial-specific
   card structure here.
   ========================================================================== */

/* ── Outer wrapper ───────────────────────────────────────────────────────── */
.vendavo-testimonial-widget {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.vendavo-testimonial-widget .vendavo-swiper {
	overflow: visible;
	width: 100%;
}

.vendavo-testimonial-widget .vendavo-swiper-wrapper {
	display: flex;
	align-items: stretch;
}

.vendavo-testimonial-widget .vendavo-swiper-slide {
	height: auto;
	box-sizing: border-box;
	display: flex;
}

/* ── Card ────────────────────────────────────────────────────────────────── */
.vendavo-testi-card {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	text-decoration: none;
	color: inherit;
	overflow: hidden;
	background: transparent;
}

a.vendavo-testi-card { color: inherit; }

/* ── Top section (image or solid color with overlay text) ───────────────── */
.vendavo-testi-top {
	position: relative;
	min-height: 220px;
	padding: 24px 28px 28px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: flex;
	flex-direction: column;
	/* Company + headline are anchored to the bottom as a single block, so
	   `company_spacing` alone controls the gap between them. */
	justify-content: flex-end;
	color: #FFFFFF;
	overflow: hidden;
	isolation: isolate;
}

/* Readability overlay — only on image backgrounds */
.vendavo-testi-top.is-image::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba( 0, 0, 0, 0.25 );
	z-index: 0;
	pointer-events: none;
}

.vendavo-testi-top > * {
	position: relative;
	z-index: 1;
}

.vendavo-testi-company {
	display: block;
	font-size: 14px;
	line-height: 1.3;
	font-weight: 400;
	color: #FFFFFF;
	margin-bottom: 12px;
	letter-spacing: 0.01em;
}

.vendavo-testi-headline {
	margin: 0;
	font-size: 20px;
	line-height: 1.35;
	font-weight: 700;
	color: #FFFFFF;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	overflow: hidden;
	text-overflow: ellipsis;
}


/* ── Bottom section (separate block below the top) ──────────────────────── */
.vendavo-testi-bottom {
	background-color: #FFFFFF;
	padding: 24px 4px 8px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

/* ── Person row (avatar + name/role) ────────────────────────────────────── */
.vendavo-testi-person {
	display: flex;
	align-items: center;
	gap: 12px;
}

.vendavo-testi-avatar {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	display: block;
}

.vendavo-testi-person-text {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
	min-width: 0;
}

.vendavo-testi-person-name {
	font-weight: 700;
	font-size: 15px;
	color: #0B0B26;
}

.vendavo-testi-person-role {
	font-weight: 400;
	font-size: 13px;
	color: #5F6173;
}

/* ── Testimonial quote ──────────────────────────────────────────────────── */
.vendavo-testi-quote {
	margin: 0;
	font-size: 14px;
	line-height: 1.55;
	color: #2C2E3D;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
	line-clamp: 6;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ── Tags — shared .vendavo-tag class, just push to bottom ──────────────── */
.vendavo-testimonial-widget .vendavo-tags {
	margin-top: auto;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media ( max-width: 1024px ) {
	.vendavo-testi-headline { font-size: 18px; }
}

@media ( max-width: 767px ) {
	.vendavo-testi-top { min-height: 200px; padding: 20px 22px 22px; }
	.vendavo-testi-headline { font-size: 17px; }
}
