/**
 * presentation — met en page le slot `content` selon `display_mode`
 * (classe `comp--presentation-<mode>` composée via |clean_class, voir
 * presentation.twig — mécanisme à conserver). Layout posé en CSS classique
 * (sélecteurs `:has()`, `:last-child`), pas de helpers Bulma is-flex-* : pas
 * d'équivalent direct pour ces règles combinées.
 */

/* Liste : une pile, une entrée par rangée, séparées par des filets. Elle a
   longtemps été une rangée horizontale ; la maquette « Les composants » en
   fait une liste au sens propre, à mesure courte, où chaque entrée porte son
   filet haut et la liste celui du bas.
   La rangée horizontale reste possible là où le thème la redemande (pied de
   fiche rendez-vous) : c'est une exception nommée, plus le comportement par
   défaut. */
.comp--presentation-liste {
	display: flex;
	flex-direction: column;
	max-width: var(--ffc-presentation-liste-mesure, 32.5rem);
	border-bottom: 1px solid var(--ffc-filet, rgba(28, 26, 22, 0.14));
}
.comp--presentation-liste > .comp {
	margin-bottom: 0;
	padding-block: 20px;
	border-top: 1px solid var(--ffc-filet, rgba(28, 26, 22, 0.14));
}
/* Grille : presentation.js range les enfants dans `.grid-elements` (hors
   éditeur). Prop `colonnes` → `comp--presentation-grille-3|4` ; deux
   colonnes sous 1024px, une sous 640px. */
.comp--presentation-grille > .grid-elements {
	display: grid;
	grid-template-columns: repeat(var(--presentation-colonnes, 3), minmax(0, 1fr));
	gap: var(--ffc-gouttiere, 1.5rem);
}
.comp--presentation-grille-4 {
	--presentation-colonnes: 4;
}
@media print, screen and (max-width: 1023px) {
	.comp--presentation-grille > .grid-elements {
		--presentation-colonnes: 2;
	}
}
@media screen and (max-width: 639px) {
	.comp--presentation-grille > .grid-elements {
		--presentation-colonnes: 1;
	}
}
/* Centré : une colonne étroite, posée au milieu de sa bande. */
.comp--presentation-centre {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 28px;
	max-width: var(--ffc-presentation-centre-mesure, 26.25rem);
	margin-inline: auto;
}
.comp--presentation-liste:has(> .comp--presentation-centre) {
	flex: 0;
	align-items: flex-end;
}
/* .comp--presentation > *,
.comp--presentation-grille > * {
	width: 100%;
} */

/* hack pour le teaser even */
.comp--teaser-evenement,
.comp--teaser-evenement .teaser-evt__gauche,
.comp--teaser-evenement .teaser-evt__droite {
  min-width: 0;
}



