/**
 * Bandeau 3 cartes FFSP — ancien layout plat (.ffsp-triple-cards-section).
 * Ne pas utiliser sur le clone accueil (section .ffsp-reperes-skin-v7 + inner section skin-v7).
 * Référence visuelle : page-id-1067 sans ces classes.
 *
 * Rollback : ffsp-triple-cards.css.bak-pre-present-20260527
 */

/* Pleine largeur + marges latérales type accueil (100px → clamp) */
body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	column-gap: clamp(16px, 2.2vw, 28px) !important;
	row-gap: clamp(18px, 2.4vw, 28px) !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(16px, 5vw, 100px) !important;
	padding-right: clamp(16px, 5vw, 100px) !important;
	box-sizing: border-box !important;
	position: relative;
	z-index: 1;
}

body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container.elementor-column-gap-default > .elementor-column {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container > .elementor-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	column-gap: clamp(16px, 2.2vw, 28px) !important;
	row-gap: clamp(18px, 2.4vw, 28px) !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(16px, 5vw, 100px) !important;
	padding-right: clamp(16px, 5vw, 100px) !important;
	box-sizing: border-box !important;
}

body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .e-con:has(> .e-con.ffsp-triple-card-col) {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(16px, 2.2vw, 28px) !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(16px, 5vw, 100px) !important;
	padding-right: clamp(16px, 5vw, 100px) !important;
	box-sizing: border-box !important;
}

body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) .e-con.e-parent > .e-con-inner {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(16px, 2.2vw, 28px) !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

body .elementor-section.ffsp-triple-cards-section .elementor-column.ffsp-triple-card-col,
body .elementor-section.ffsp-triple-cards-section .e-con.ffsp-triple-card-col {
	min-width: 0 !important;
	width: 100% !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

@media (max-width: 900px) {
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container,
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container > .elementor-row,
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .e-con:has(> .e-con.ffsp-triple-card-col),
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) .e-con.e-parent > .e-con-inner {
		grid-template-columns: 1fr !important;
		padding-left: clamp(16px, 4vw, 24px) !important;
		padding-right: clamp(16px, 4vw, 24px) !important;
	}
}

@media (max-width: 767px) {
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)),
	body .elementor-section:has(.ffsp-triple-card-col):not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container,
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container > .elementor-row,
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .e-con:has(> .e-con.ffsp-triple-card-col),
	body .elementor-section.ffsp-triple-cards-section:not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) .e-con.e-parent > .e-con-inner,
	body .elementor-section:has(.ffsp-triple-card-col):not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container,
	body .elementor-section:has(.ffsp-triple-card-col):not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .elementor-container > .elementor-row,
	body .elementor-section:has(.ffsp-triple-card-col):not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) > .e-con:has(> .e-con.ffsp-triple-card-col),
	body .elementor-section:has(.ffsp-triple-card-col):not(.ffsp-reperes-skin-v7):not(:has(.gsc-image-content.skin-v7)) .e-con.e-parent > .e-con-inner {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 12px !important;
		padding-right: 12px !important;
		box-sizing: border-box !important;
	}
}
