/*
 * Filet de sécurité des dispositions.
 *
 * Le contenu des pages est figé en HTML, pour que le propriétaire puisse le
 * confier à une IA. Les noms de classes des conteneurs y survivent, mais le
 * CSS que WordPress leur associait non : il ne le produit que pour les blocs
 * rendus à la requête. Les grilles perdaient ainsi leur gabarit de colonnes
 * et s'effondraient sur une seule.
 *
 * Ces règles rétablissent ce que les compositions du thème déclarent. Elles
 * passent toutes par :where(), de spécificité nulle : les règles que
 * WordPress produit encore pour les blocs vivants l'emportent, même si cette
 * feuille se charge après elles.
 *
 * Produit par scratchpad/gen-css.php — ne pas modifier à la main.
 */

/* Valeurs par défaut, pour les conteneurs sans classe du thème. */
:where(.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
	gap: 24px;
}

:where(.wp-block-group-is-layout-flex) {
	gap: 24px;
	flex-wrap: wrap;
	align-items: center;
}

/* Le sens, l'enroulement et la répartition, que WordPress nomme encore. */
:where(.wp-block-group-is-layout-flex.is-vertical) {
	flex-direction: column;
	align-items: flex-start;
}

:where(.is-vertical.is-content-justification-stretch) {
	align-items: stretch;
}

:where(.wp-block-group-is-layout-flex.is-nowrap) {
	flex-wrap: nowrap;
}

:where(.wp-block-group-is-layout-flex:not(.is-vertical).is-content-justification-center) {
	justify-content: center;
}

:where(.wp-block-group-is-layout-flex:not(.is-vertical).is-content-justification-left) {
	justify-content: flex-start;
}

:where(.wp-block-group-is-layout-flex:not(.is-vertical).is-content-justification-right) {
	justify-content: flex-end;
}

:where(.wp-block-group-is-layout-flex:not(.is-vertical).is-content-justification-space-between) {
	justify-content: space-between;
}

/* Puis, classe par classe, ce que les compositions déclarent. */

:where(.ipd-accordeon.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 1px;
}

:where(.ipd-anime.wp-block-group-is-layout-flex) {
	flex-wrap: nowrap;
	align-items: center;
	gap: 16px;
}

:where(.ipd-bande.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-carte-article.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

:where(.ipd-carte-coordonnees.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 11px;
}

:where(.ipd-carte-etape.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

:where(.ipd-carte-lien.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
}

:where(.ipd-carte__meta.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

:where(.ipd-chiffres.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-contact.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-contact-raccourci__corps.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

:where(.ipd-contact__aside.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 26px;
}

:where(.ipd-contact__coordonnees.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 1px;
}

:where(.ipd-contact__ligne.wp-block-group-is-layout-flex) {
	flex-wrap: nowrap;
	align-items: center;
	gap: 14px;
}

:where(.ipd-duo.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-duo--centre.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-duo--flex.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	gap: 0;
}

:where(.ipd-duo--haut.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-duo--hero.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-duo--inverse.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	gap: 0;
}

:where(.ipd-duo--large.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-duo--serre.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-encart-chiffres.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	gap: 18px;
}

:where(.ipd-fiche-ligne.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr));
	gap: 10px;
}

:where(.ipd-gouttiere--actus.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
}

:where(.ipd-gouttiere--cartes.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}

:where(.ipd-gouttiere--duo.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}

:where(.ipd-gouttiere--newsletter.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}

:where(.ipd-gouttiere--partenaires.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(130px, 100%), 1fr));
}

:where(.ipd-gouttiere--service.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-grille-1120.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

:where(.ipd-grille-centree.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}

:where(.ipd-grille-etiree.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
	gap: 0;
}

:where(.ipd-ligne-conclusion.wp-block-group-is-layout-flex) {
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
}

:where(.ipd-nr-coordonnees.wp-block-group-is-layout-flex) {
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 11px;
}

:where(.ipd-partenaires.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(130px, 100%), 1fr));
}

:where(.ipd-pousse-bas.wp-block-group-is-layout-flex) {
	gap: 10px;
}

:where(.ipd-sans-compression.wp-block-group-is-layout-grid) {
	grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
	gap: 14px;
}

:where(.ipd-tableau-chiffres.wp-block-group-is-layout-flex) {
	flex-direction: column;
	align-items: stretch;
	gap: 1px;
}

:where(.ipd-tableau-chiffres__ligne.wp-block-group-is-layout-flex) {
	flex-wrap: nowrap;
	justify-content: space-between;
	gap: 20px;
}
