/*
 * kp-testimonials.css — Section "Réassurance / Ils nous font confiance" (Home bloc 6).
 *
 * Figma : 10132:759. Header (eyebrow + titre) + carrousel témoignages (1 visible,
 * prev/next) + rangée de logos clients.
 * Auto-enqueué (kp-pattern-testimonials, dep kp-tokens). Réutilise .kp-eyebrow.
 *
 * NB : témoignages (citations + noms + sociétés) et logos = PLACEHOLDERS Figma.
 * À remplacer par les vrais avis clients + logos.
 */

.kp-reassurance {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--kp-space-20, 5rem);
	padding: var(--kp-section-padding-y, 9.375rem) var(--kp-section-padding-x, 4.5rem);
	background: var(--kp-color-surface-deep);
}

.kp-reassurance__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--kp-space-8);
	text-align: center;
}

.kp-reassurance__title {
	margin: 0;
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-62);
	font-weight: var(--kp-font-weight-light);
	letter-spacing: var(--kp-letter-spacing-h2, -0.06em);
	line-height: 1.06;
	color: var(--kp-color-text-inverse);
}

.kp-reassurance__title-muted {
	color: var(--kp-color-text-faint);
}

/* --- Carrousel --- */
.kp-carousel {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--kp-space-10);
}

.kp-carousel__viewport {
	width: 100%;
	overflow: hidden;
}

.kp-carousel__track {
	display: flex;
	gap: var(--kp-space-4);
	transition: transform 0.5s ease;
	will-change: transform;
}

/* Peek : la carte active occupe 64%, les voisines débordent de part et d'autre */
.kp-carousel__slide {
	flex: 0 0 64%;
	min-width: 0;
	opacity: 0.4;
	transition: opacity 0.4s ease;
}

.kp-carousel__slide.is-active {
	opacity: 1;
}

/* --- Témoignage --- */
.kp-testimonial {
	display: flex;
	gap: var(--kp-space-10);
	height: 100%;
	min-height: 550px;
	padding: var(--kp-space-6);
	background: rgba(255, 255, 255, 0.08);
	border: 4px solid transparent;
	transition: border-color 0.4s ease;
}

/* Bordure orange seulement sur la carte active */
.kp-carousel__slide.is-active .kp-testimonial {
	border-color: rgba(223, 115, 46, 0.5);
}

.kp-testimonial__author {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 242px;
	flex-shrink: 0;
}

.kp-testimonial__event {
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-20);
	font-weight: var(--kp-font-weight-medium);
	letter-spacing: -0.03em;
	line-height: 1.5;
	color: var(--kp-color-text-inverse);
	max-width: 135px;
}

.kp-testimonial__author-row {
	display: flex;
	gap: var(--kp-space-6);
	align-items: center;
}

.kp-testimonial__author-row figcaption {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.kp-testimonial__avatar {
	width: 68px;
	height: 68px;
	flex-shrink: 0;
	border-radius: var(--kp-radius-sm);
	background: linear-gradient(135deg, var(--kp-color-surface-elevated), #0d0d0d);
	border: 1px solid var(--kp-color-border-subtle);
	object-fit: cover;
}

.kp-testimonial__name {
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-24);
	font-weight: var(--kp-font-weight-medium);
	line-height: 1.2;
	color: var(--kp-color-text-inverse);
}

.kp-testimonial__role {
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-16);
	font-weight: var(--kp-font-weight-regular);
	line-height: 1.5;
	color: var(--kp-color-text-muted);
}

.kp-testimonial__company {
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-16);
	font-weight: var(--kp-font-weight-regular);
	line-height: 1.5;
	color: var(--kp-color-brand-primary);
}

.kp-testimonial__quote {
	flex: 1 0 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: var(--kp-space-6);
	padding: var(--kp-space-6);
	background: #391c09; /* brun sombre Figma */
}

.kp-testimonial__quote-icon {
	width: 64px;
	height: 64px;
	flex-shrink: 0;
	color: var(--kp-color-brand-primary);
}

.kp-testimonial__quote-text {
	margin: 0;
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-20);
	font-weight: var(--kp-font-weight-regular);
	letter-spacing: -0.02em;
	line-height: 1.5;
	color: var(--kp-color-text-inverse);
}

/* --- Pagination --- */
.kp-carousel__nav {
	display: flex;
	gap: var(--kp-space-4);
}

.kp-carousel__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: var(--kp-space-3);
	background: var(--kp-color-brand-primary);
	border: none;
	border-radius: var(--kp-radius-sm);
	color: var(--kp-color-text-on-brand);
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.kp-carousel__btn:hover {
	background: var(--kp-color-brand-primary-hover);
}

.kp-carousel__btn svg {
	width: 12px;
	height: 24px;
}

/* --- Logos clients (placeholders) --- */
.kp-logos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: var(--kp-space-16);
	width: 100%;
}

.kp-logos__item {
	display: inline-flex;
	align-items: center;
	gap: var(--kp-space-2);
	color: rgba(255, 255, 255, 0.45);
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-18);
	font-weight: var(--kp-font-weight-bold);
	letter-spacing: -0.02em;
	transition: color 0.2s ease;
}

.kp-logos__item:hover {
	color: rgba(255, 255, 255, 0.7);
}

.kp-logos__item svg {
	width: 28px;
	height: 28px;
	flex-shrink: 0;
}

@media (max-width: 768px) {
	.kp-reassurance {
		padding: var(--kp-space-16) var(--kp-space-6);
	}
	.kp-carousel__slide {
		flex: 0 0 88%;
	}
	.kp-testimonial {
		flex-direction: column;
		min-height: 0;
		gap: var(--kp-space-6);
	}
	.kp-testimonial__author {
		width: 100%;
		gap: var(--kp-space-6);
	}
	.kp-logos {
		gap: var(--kp-space-8);
	}
}
