.elementor-widget-coverflow-testimonials {
	overflow: visible;
}

.elementor-widget-coverflow-testimonials .elementor-widget-container {
	overflow: hidden;
}

.cft-slider {
	--cft-card-width: min(460px, 78vw);
	--cft-card-min-height: 228px;
	--cft-card-radius: 24px;
	--cft-active-bg: #1e4d3a;
	--cft-active-text: #ffffff;
	--cft-inactive-bg: #f3f4f6;
	--cft-inactive-text: #4b5563;
	--cft-inactive-opacity: 1;
	--cft-rating-bg: #1a2332;
	--cft-rating-radius: 10px;
	--cft-star-color: #ffffff;
	--cft-star-empty: #6b7280;
	--cft-star-size: 13px;
	--cft-avatar-size: 84px;
	--cft-avatar-border: 4px;
	--cft-avatar-border-color: #ffffff;
	--cft-name-color: #1e4d3a;
	--cft-role-color: #9ca3af;
	--cft-inactive-meta-opacity: 0;
	--cft-nav-size: 42px;
	--cft-nav-icon-size: 16px;
	--cft-nav-offset: 0px;
	--cft-nav-bg: #1a2332;
	--cft-nav-icon: #ffffff;
	--cft-nav-bg-hover: #0f1621;
	--cft-nav-icon-hover: #ffffff;
	--cft-swiper-pad-top: 22px;

	position: relative;
	overflow: hidden;
	padding: 12px 0 28px;
	font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	user-select: none;
	-webkit-user-select: none;
}

.cft-empty {
	padding: 48px 24px;
	text-align: center;
	color: #6b7280;
}

.cft-swiper {
	overflow: visible;
	padding-top: var(--cft-swiper-pad-top);
	padding-bottom: 8px;
	cursor: grab;
}

.cft-swiper:active {
	cursor: grabbing;
}

.cft-swiper .swiper-wrapper {
	align-items: stretch;
}

.cft-slide {
	width: var(--cft-card-width);
	height: auto;
	background: transparent;
	overflow: visible;
}

.cft-item {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.cft-card {
	position: relative;
	width: 100%;
	min-height: var(--cft-card-min-height);
	padding: 48px 40px 56px;
	border-radius: var(--cft-card-radius);
	background: var(--cft-inactive-bg);
	color: var(--cft-inactive-text);
	box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
	opacity: var(--cft-inactive-opacity);
	box-sizing: border-box;
	transition: background-color 0.35s ease, color 0.35s ease, box-shadow 0.35s ease, opacity 0.35s ease;
}

.cft-slide.swiper-slide-active .cft-card {
	background: var(--cft-active-bg);
	color: var(--cft-active-text);
	opacity: 1;
	box-shadow: 0 22px 48px rgba(16, 42, 32, 0.28);
}

.cft-rating {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 3px;
	padding: 8px 18px;
	border-radius: var(--cft-rating-radius);
	background: var(--cft-rating-bg);
	transform: translate(-50%, -50%);
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.18);
}

.cft-star {
	width: var(--cft-star-size);
	height: var(--cft-star-size);
	display: block;
	fill: var(--cft-star-empty);
}

.cft-star.is-filled {
	fill: var(--cft-star-color);
}

.cft-quote {
	margin: 0;
	display: -webkit-box;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.75;
	font-weight: 400;
	text-align: center;
	letter-spacing: 0.01em;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
}

.cft-avatar {
	position: absolute;
	left: 50%;
	bottom: 0;
	z-index: 3;
	width: var(--cft-avatar-size);
	height: var(--cft-avatar-size);
	overflow: hidden;
	border: var(--cft-avatar-border) solid var(--cft-avatar-border-color);
	border-radius: 50%;
	background: #d1d5db;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.16);
	transform: translate(-50%, 50%);
}

.cft-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	pointer-events: none;
	-webkit-user-drag: none;
}

.cft-meta {
	margin-top: calc((var(--cft-avatar-size) / 2) + 18px);
	text-align: center;
	transition: opacity 0.3s ease;
}

.cft-slide:not(.swiper-slide-active) .cft-meta {
	opacity: var(--cft-inactive-meta-opacity);
}

.cft-name {
	font-size: 18px;
	line-height: 1.3;
	font-weight: 700;
	color: var(--cft-name-color);
	letter-spacing: -0.02em;
}

.cft-role {
	margin-top: 4px;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 400;
	color: var(--cft-role-color);
}

.cft-nav {
	position: absolute;
	top: calc(var(--cft-swiper-pad-top) + (var(--cft-card-min-height) / 2) + 8px);
	right: 0;
	left: 0;
	z-index: 20;
	height: 0;
	pointer-events: none;
}

.cft-nav-btn {
	position: absolute;
	top: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--cft-nav-size);
	height: var(--cft-nav-size);
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--cft-nav-bg);
	color: var(--cft-nav-icon);
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.22);
	cursor: pointer;
	pointer-events: auto;
	transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cft-nav-btn svg {
	width: var(--cft-nav-icon-size);
	height: var(--cft-nav-icon-size);
	display: block;
}

.cft-prev {
	left: calc(50% - (var(--cft-card-width) / 2) + var(--cft-nav-offset));
	transform: translate(-50%, -50%);
}

.cft-next {
	left: calc(50% + (var(--cft-card-width) / 2) - var(--cft-nav-offset));
	transform: translate(-50%, -50%);
}

.cft-nav-btn:hover {
	background: var(--cft-nav-bg-hover);
	color: var(--cft-nav-icon-hover);
}

.cft-nav-btn:focus-visible {
	outline: 2px solid var(--cft-nav-bg);
	outline-offset: 3px;
}

.cft-nav-btn:active {
	transform: translate(-50%, -50%) scale(0.96);
}

@media (max-width: 767px) {
	.cft-slider {
		--cft-avatar-size: 72px;
		--cft-nav-size: 36px;
		--cft-nav-icon-size: 14px;
		--cft-card-min-height: 210px;
	}

	.cft-card {
		padding: 40px 24px 48px;
	}

	.cft-quote {
		font-size: 14px;
	}

	.cft-name {
		font-size: 16px;
	}

	.cft-prev {
		left: max(22px, calc(50% - (var(--cft-card-width) / 2) + var(--cft-nav-offset)));
	}

	.cft-next {
		left: min(calc(100% - 22px), calc(50% + (var(--cft-card-width) / 2) - var(--cft-nav-offset)));
	}
}
