/*
 * Installation — animation carrée à gauche, argumentaire à droite.
 * Fond blanc pour trancher avec les sections crème qui l'encadrent.
 */

.installation {
	background: var(--fond);
	padding-block: 48px;
}

/* Une colonne en mobile ; l'image passe en premier, comme sur la source. */
.installation__in {
	display: grid;
	gap: 28px;
	align-items: center;
}

/* Le ratio carré est porté par le conteneur : l'animation ne fait pas sauter la mise en page. */
/* La source pose deux médias côte à côte dans ce bloc ; un seul s'il n'y en a qu'un. */
.installation__media {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	gap: 10px;
}

.installation__img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: var(--rayon-carte);
	background: var(--rose);
}

.installation__titre {
	font-family: var(--font-titre);
	font-size: 26px;
	line-height: 1.25;
	margin: 0 0 20px;
}

.installation__points {
	list-style: none;
	margin: 0 0 26px;
	padding: 0;
	display: grid;
	gap: 14px;
}

.installation__point {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-size: 15px;
	line-height: 1.5;
}

/* La coche hérite de l'accent : cercle en fond translucide + trait plein. */
.installation__coche {
	color: var(--sauge);
	flex-shrink: 0;
	margin-top: 2px;
}

.installation__cta {
	max-width: 100%;
}

/* Focus visible : le socle ne le stylise pas pour les liens-boutons. */
.installation__cta:focus-visible {
	outline: 2px solid var(--sauge);
	outline-offset: 3px;
}

@media (min-width: 700px) {
	.installation { padding-block: 64px; }
	.installation__titre { font-size: 30px; }
}

@media (min-width: 1000px) {
	.installation__in {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 60px;
	}
	.installation { padding-block: 80px; }
	.installation__titre { font-size: 34px; }
	.installation__point { font-size: 16px; }
}
