/* Section « Résultats clients » */
.resultats {
	padding-block: var(--section-space) 32px;
}

.resultats__slider {
	position: relative;
	max-width: 1000px;
	margin: clamp(32px, 4vw, 48px) auto 0;
}

.resultats__case {
	display: grid;
	gap: 24px;
	padding: clamp(14px, 2vw, 24px);
	border-radius: var(--radius);
	background: var(--c-ivory);
}

/* Tous les cas occupent la même cellule : le bloc garde la hauteur du plus
   grand, quel que soit le cas affiché (pas de saut en changeant de cas). */
.resultats__slider {
	display: grid;
}

.resultats__case {
	grid-area: 1 / 1;
	transition: opacity .4s var(--ease), visibility .4s;
}

.resultats__case[hidden] {
	display: grid;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}

@keyframes zones-fade {
	from { opacity: .3; }
}

.resultats__photo {
	position: relative;
	overflow: hidden;
	min-height: 320px;
	border-radius: 12px;
	background: var(--c-cream);
}

.resultats__photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.resultats__photo::after {
	content: "";
	position: absolute;
	inset: 50% 0 0;
	background: linear-gradient(transparent, rgba(20, 18, 12, .55));
}

.resultats__photo-label {
	position: absolute;
	left: 18px;
	bottom: 18px;
	z-index: 1;
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 1rem;
	color: var(--c-white);
}

.resultats__photo-label small {
	display: block;
	font-size: 0.75rem;
	opacity: .85;
}

.resultats__photo-icon {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 6px;
	background: rgba(255, 255, 255, .2);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

.resultats__photo-icon .icon {
	width: 16px;
	height: 16px;
}

.resultats__title {
	font-size: clamp(1.375rem, 1.2rem + 0.6vw, 1.75rem);
}

.resultats__compare {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-top: 16px;
}

.resultats__compare p {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 10px;
	border-radius: 6px;
	text-align: center;
}

.resultats__before {
	background: #f6e7c7;
	color: var(--c-text);
}

.resultats__after {
	background: var(--c-gold);
	color: var(--c-white);
}

.resultats__compare small {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.resultats__compare strong {
	font-size: 1.75rem;
	font-weight: 300;
	line-height: 1.15;
}

.resultats__compare span {
	font-size: 0.6875rem;
}

.resultats__points {
	display: grid;
	gap: 12px;
	margin-top: 16px;
	padding: 0;
	list-style: none;
	font-size: 0.8125rem;
	color: var(--c-text);
}

.resultats__points li {
	display: flex;
	align-items: center;
	gap: 12px;
}

.resultats__points strong {
	display: block;
	font-size: 1.0625rem;
	font-weight: 400;
	color: var(--c-dark);
}

.resultats__point-icon {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border-radius: 6px;
	background: #f6e7c7;
	color: var(--c-gold-dark);
}

.resultats__point-icon .icon {
	width: 16px;
	height: 16px;
}

.resultats__quote {
	margin-top: 16px;
}

.resultats__prev,
.resultats__next {
	position: absolute;
	top: 50%;
	margin-top: -24px;
	width: 48px;
	height: 48px;
}

.resultats__prev { left: -72px; background: #ecd198; }
.resultats__next { right: -72px; }

@media (min-width: 900px) {
	.resultats__case {
		grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
	}
}

/* Flèches à l'extérieur du bloc seulement quand il y a la place (sinon elles
   débordaient de l'écran et créaient un défilement horizontal). */
/* En dessous de 1 440 px : flèches sous le cas client, centrées, sans rien
   masquer (le cas reste à la même hauteur quel que soit le cas affiché). */
@media (max-width: 1439px) {
	.resultats__slider {
		grid-template-columns: 1fr 1fr;
		column-gap: 12px;
	}

	.resultats__slider > .resultats__case {
		grid-area: 1 / 1 / 2 / 3;
	}

	.resultats__prev,
	.resultats__next {
		position: static;
		margin: 20px 0 0;
	}

	.resultats__prev {
		grid-area: 2 / 1;
		justify-self: end;
	}

	.resultats__next {
		grid-area: 2 / 2;
		justify-self: start;
	}
}

/* Présentation « photo inclinée à droite, avec pastilles » */
.resultats__case--feature {
	align-items: center;
	padding: clamp(20px, 2.5vw, 32px);
}

.resultats__case--feature .pill {
	margin-bottom: 16px;
}

.resultats__gains {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-top: 22px;
	padding: 14px 22px;
	border-radius: 6px;
	background: #f6e7c7;
}

.resultats__gains p {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.resultats__gains small {
	font-size: 0.8125rem;
	color: var(--c-dark);
}

.resultats__gains strong {
	font-size: clamp(1.75rem, 1.3rem + 1.2vw, 2.25rem);
	font-weight: 300;
	color: #6b6455;
}

.resultats__checks {
	display: grid;
	gap: 14px;
	margin-top: 22px;
	padding: 0;
	list-style: none;
	font-size: 1.0625rem;
}

.resultats__checks li {
	display: flex;
	align-items: center;
	gap: 14px;
}

.resultats__check {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #8a6418;
	color: var(--c-white);
}

.resultats__check .icon {
	width: 13px;
	height: 13px;
}

.resultats__case--feature .resultats__quote {
	margin-top: 26px;
}

.resultats__tilt {
	position: relative;
	padding: 30px 40px 30px 30px;
}

.resultats__tilt-photo {
	overflow: hidden;
	aspect-ratio: 1 / 0.92;
	border-radius: 10px;
	transform: rotate(3deg);
	box-shadow: 0 20px 50px rgba(36, 31, 20, .18);
}

.resultats__tilt-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.resultats__float {
	position: absolute;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 14px 16px;
	border-radius: 6px;
	background: var(--c-white);
	box-shadow: 0 10px 30px rgba(36, 31, 20, .12);
}

.resultats__float small {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px;
	border-radius: var(--radius-pill);
	background: #f3f1ec;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: .02em;
}

.resultats__float strong {
	font-size: 1.375rem;
	font-weight: 500;
}

.resultats__float--top {
	top: 0;
	right: 0;
}

.resultats__float--bottom {
	left: 0;
	bottom: 0;
}

.resultats__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #3fae4f;
}

@media (min-width: 900px) {
	.resultats__case--feature {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	}
}

@media (max-width: 599px) {
	.resultats__tilt {
		padding: 24px 12px;
	}
}
