/* Composant : testimonials */
.component-testimonials {
	position: relative;
	padding-top: var(--component-space-normal);
	padding-bottom: var(--component-space-normal);
	background: var(--component-color-light);
}

.component-testimonials__title {
	margin: 0 0 1.2em;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	line-height: 1.2;
	color: var(--component-color-dark);
}

.component-testimonials__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
}

.component-testimonials__item {
	display: flex;
	flex-direction: column;
	gap: 16px;
	height: auto;
	margin: 0;
	padding: 28px;
	background: var(--component-color-muted);
	border-radius: var(--component-radius-lg);
	box-sizing: border-box;
}

.component-testimonials__rating {
	color: #f0a202;
	letter-spacing: 2px;
	font-size: 1rem;
	line-height: 1;
}

.component-testimonials__quote {
	margin: 0;
	padding: 0;
	border: 0;
	quotes: none;
}

.component-testimonials__quote p {
	margin: 0;
	color: var(--component-color-text);
	line-height: 1.7;
	font-style: italic;
}

.component-testimonials__author {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: auto;
}

.component-testimonials__photo {
	flex: 0 0 auto;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	overflow: hidden;
}

.component-testimonials__photo-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.component-testimonials__identity {
	display: flex;
	flex-direction: column;
	line-height: 1.3;
}

.component-testimonials__name {
	font-weight: 700;
	color: var(--component-color-dark);
}

.component-testimonials__role {
	font-size: 0.9rem;
	color: var(--component-color-text);
}

/* Variante carrousel */
.component-testimonials__swiper {
	padding-bottom: 8px;
}

.component-testimonials--carousel .swiper-slide {
	height: auto;
}

.component-testimonials__controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 28px;
}

.component-testimonials__controls .component-swiper-nav {
	position: static;
	transform: none;
}
