/*
	retro-fiche.css, css de single-festival.php (fiche d'édition "V3", maquette de JP du 13/10/26).
 	Reprise de retro-v3.css du mu-plugin d'essai maj-mcf-retro-v3, classes "v3" renommées "retro-"
 	(portée : .mcf-festival.retro-fiche, même spécificité que l'ancien .mcf-festival.v3).
 	
	Chargée _après_ style.css (dépendance 'mcf-child-style', functions.php) :
	ses règles .mcf-festival restent en place et sont surchargées par cette css.
 
	La page se présente comme l'accueil : la trame (noir > indigo > violet, halos) court sur toute la hauteur,
	le contenu est placé dans des encadrés ivoire (rayon 20 px, marge intérieure 3vw).
	Sur la trame : seulement les titres de chapitre.
 	Couleurs : variables Redux. Seuls hexa : le dégradé de la trame et les halos bleus et violets ;
	les halos rouges sont en accent Redux.
 	
	Dépend des feuilles des composants maj-mcf-elements :
	affiches (.mcf-aff49), filigrane (.mcf-filigrane), palmares (.mcf-medaille), mur (frise des éditions).

	Je reprends ci-après les commentaires bruts de la css JP d'origine.  
*/


/* ---------- Jetons propres à la fiche ---------- */
.retro-trame {
	/* Dégradé de la rangée mcf-trame de l'accueil (relevé le 13/10, codes-accueil.md) */
	--retro-indigo: #100c22;
	--retro-indigo-2: #180e34;
	--retro-violet: #220e3e;
	--retro-violet-2: #2e0c40;
	--retro-trait: color-mix(in srgb, var(--nectar-font-color) 13%, transparent);
	--retro-doux: color-mix(in srgb, var(--nectar-font-color) 68%, transparent);
	--retro-teinte: color-mix(in srgb, var(--nectar-extra-color-2) 5%, var(--nectar-extra-color-3));
	--retro-ecart: clamp(18px, 2vw, 30px);
}

/* ---------- Trame : fond continu de la page ---------- */
.container-wrap.retro-trame {
	/* Halos de la rangée mcf-trame de l'accueil, tels quels (relevé le 13/10) : quatre bleus et violets, trois touches de
	   rouge. Sur l'accueil ils couvrent 6 791 px à 1 440, soit environ 470vw ; ici le calque se répète à cette hauteur
	   tout le long de la page, remonté de 60vw pour qu'un halo bleu passe derrière l'affiche. Chaque halo s'éteint avant le bord de son calque : pas de raccord visible. */
	background:
		radial-gradient(70vw 55vw at 92% 19.1%, rgba(58, 46, 214, .34), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(65vw 50vw at 96% 54.7%, rgba(48, 60, 230, .28), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(60vw 45vw at 6% 73.3%, rgba(110, 36, 200, .30), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(70vw 45vw at 88% 92.4%, rgba(60, 48, 220, .26), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(50vw 38vw at 0% 30%, color-mix(in srgb, var(--nectar-accent-color) 42%, transparent), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(55vw 40vw at 4% 46%, color-mix(in srgb, var(--nectar-accent-color) 38%, transparent), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		radial-gradient(60vw 42vw at 100% 82%, color-mix(in srgb, var(--nectar-accent-color) 34%, transparent), transparent 70%) 0 -60vw / 100% 470vw repeat-y,
		linear-gradient(var(--nectar-extra-color-2) 0%, var(--nectar-extra-color-2) 2.8%, var(--retro-indigo) 28.2%,
			var(--retro-indigo-2) 55.8%, var(--retro-violet) 80.1%, var(--retro-violet-2) 100%);
	overflow-x: clip;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.retro-trame .main-content > .row {
	padding-bottom: 0 !important;
}

.mcf-festival.retro-fiche {
	position: relative;
	max-width: none;
	margin: 0;
	padding: 0;
	color: var(--nectar-font-light-color);
}
.mcf-festival.retro-fiche a:hover {
	font-weight: inherit;
}

.retro-chapitre, .retro-ouverture {
	position: relative;
}
.retro-chapitre > *, .retro-ouverture > :not(.mcf-filigrane) {
	position: relative;
	z-index: 1;
}

/* ---------- Typographie commune (codes de l'accueil) ---------- */
.mcf-festival.retro-fiche h6 {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.25;
	letter-spacing: 3.3px;
	text-transform: uppercase;
	margin: 0 0 8px;
	padding: 0;
}
/* Sur la trame, le sur-titre est jaune (comme .light h6 de Redux) ; dans un encadré il reste rouge (h6 de Redux) */
#ajax-content-wrap .retro-fiche .retro-ch-tete h6,
#ajax-content-wrap .retro-fiche .retro-kicker {
	color: var(--nectar-extra-color-1);
}
.mcf-festival.retro-fiche .retro-kicker b {
	font-weight: inherit;
	color: inherit;
}

/* Exposant : 0,34 em dans les titres (code de l'accueil), taille de lecture dans le texte courant */
.mcf-festival.retro-fiche sup.ord {
	font-size: .7em;
	line-height: 1;
	text-transform: lowercase;
	font-weight: inherit;
}
.mcf-festival.retro-fiche :is(h1, h2, h3) sup.ord {
	font-size: .34em;
	vertical-align: top;
	position: relative;
	top: .2em;
}

/* Titre de chapitre : H2 de section de l'accueil (72/68 à 1 440, 39/37 à 390) */
.mcf-festival.retro-fiche .retro-ch-tete {
	margin: 0 0 var(--retro-ecart);
}
.mcf-festival.retro-fiche .retro-ch-tete h2 {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: clamp(39px, 5vw, 72px);
	line-height: .944;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--nectar-font-light-color);
	border: 0;
	padding: 0;
	margin: 0;
}

/* ---------- Chapitres et encadrés ---------- */
.retro-chapitre {
	padding-top: 6vw;
}
.retro-boites {
	display: grid;
	gap: var(--retro-ecart);
}
.retro-boite {
	min-width: 0;
	background:
		radial-gradient(at 15% 90%, color-mix(in srgb, var(--nectar-accent-color) 8%, transparent), transparent 60%),
		var(--nectar-extra-color-3);
	color: var(--nectar-font-color);
	border-radius: 20px;
	padding: 3vw; /* 4vw avant le 13/10 ; 3vw ici et sur l'accueil (retour de Michel ; 2vw trop serré ; 2,5vw impossible en natif sur l'accueil, Salient arrondit les vw à l'entier) */
	scroll-margin-top: 90px;
}
.mcf-festival.retro-fiche section[id^="mcf-section-"], .retro-ouverture {
	scroll-margin-top: 90px;
}
.retro-boite a {
	color: inherit;
}
.retro-boite-tete {
	margin: 0 0 30px;
}
.mcf-festival.retro-fiche .retro-boite-tete h3 {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: clamp(28px, 3.4vw, 49px);
	line-height: 1;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: var(--nectar-font-color);
	margin: 0;
}

/* Séparateur interne (bloc NG, Association, Jury Junior) */
.mcf-festival.retro-fiche .jdiv {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 44px 0 24px;
}
.mcf-festival.retro-fiche .jdiv::before, .mcf-festival.retro-fiche .jdiv::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--retro-trait);
}
.mcf-festival.retro-fiche .jdiv span {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: 3.3px;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
	text-align: center;
}
.mcf-festival.retro-fiche .jdiv sup.ord {
	font-size: .6em;
	top: .1em;
}

/* Photos cliquables (mécanique aphoto-bg/fg de Michel, en « cover ») */
.mcf-festival.retro-fiche .aphoto-bg, .mcf-festival.retro-fiche .aphoto-fg {
	position: absolute;
	inset: 0;
	display: block;
	background-image: var(--aphoto-img);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center 30%;
	transition: transform .6s;
}
.mcf-festival.retro-fiche .aphoto-bg {
	display: none;
}
.mcf-festival.retro-fiche .aphoto-zoom {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	background: color-mix(in srgb, var(--nectar-extra-color-2) 35%, transparent);
	color: var(--nectar-font-light-color);
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: 3px;
	text-transform: uppercase;
	opacity: 0;
	transition: opacity .15s ease;
}
.mcf-festival.retro-fiche button:hover .aphoto-fg {
	transform: scale(1.05);
}
.mcf-festival.retro-fiche button:hover .aphoto-zoom, .mcf-festival.retro-fiche button:focus-visible .aphoto-zoom {
	opacity: 1;
}
.mcf-festival.retro-fiche button.ph, .mcf-festival.retro-fiche button.aphoto, .mcf-festival.retro-fiche button.pspeciaux-photo {
	position: relative;
	display: block;
	width: 100%;
	overflow: hidden;
	border: 0;
	padding: 0;
	margin: 0;
	border-radius: 15px !important;
	background: var(--nectar-extra-color-2);
	cursor: pointer;
	font: inherit;
}

/* Pastilles */
.mcf-festival.retro-fiche .pill {
	display: inline-flex;
	align-items: center;
	padding: 8px 16px;
	border-radius: 200px;
	text-decoration: none;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .12em;
	text-transform: uppercase;
	line-height: 1.2;
	border: 1px solid color-mix(in srgb, var(--nectar-font-light-color) 40%, transparent);
	color: var(--nectar-font-light-color);
}
.mcf-festival.retro-fiche .pill.red {
	background: var(--nectar-accent-color);
	border-color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .pill.yellow {
	background: var(--nectar-extra-color-1);
	border-color: var(--nectar-extra-color-1);
	color: var(--nectar-extra-color-2);
}
.mcf-festival.retro-fiche a.pill:hover {
	opacity: .87;
}

/* Bouton plein rouge (codes de l'accueil : pilule, Poppins 700 14 px) */
.mcf-festival.retro-fiche .retro-bouton {
	display: inline-block;
	padding: 15px 22px;
	border-radius: 200px;
	text-decoration: none;
	font-family: 'Poppins', sans-serif;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.4;
	letter-spacing: 1px;
	background: var(--nectar-accent-color);
	color: var(--nectar-font-light-color);
}
.mcf-festival.retro-fiche .retro-bouton:hover {
	opacity: .87;
}
.retro-actions {
	margin: 30px 0 0;
	padding: 0;
}

/* ---------- Ouverture ---------- */
.retro-ouverture {
	padding: 6vw 0 0;
}
.retro-filigrane.mcf-filigrane {
	top: 1vw;
	right: auto;
	left: -1vw;
	z-index: 0;
}
.retro-ouverture__grille {
	display: grid;
	grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
	gap: 5vw;
	align-items: center;
}
.mcf-festival.retro-fiche .retro-ouverture h1 {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	text-transform: uppercase;
	text-align: left;
	font-size: clamp(39px, 3.9vw, 56px);
	line-height: 1.02;
	letter-spacing: .5px;
	color: var(--nectar-font-light-color);
	margin: 0 0 24px;
	overflow-wrap: break-word;
}
.mcf-festival.retro-fiche .retro-ouverture h1 .r {
	color: inherit;
}
.mcf-festival.retro-fiche .mcf-sous-titre {
	font-size: 20px;
	line-height: 30px;
	margin: -8px 0 24px;
	color: var(--nectar-font-light-color);
}
.retro-date-lieu {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 3.3px;
	text-transform: uppercase;
	color: var(--nectar-extra-color-1);
	margin: 0 0 28px;
	padding: 0;
}
.retro-date-lieu .mcf-date-accent {
	color: inherit;
}
.retro-sep {
	padding: 0 .2em;
}
.mcf-festival.retro-fiche .badges {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.retro-ouverture__affiche {
	justify-self: center;
	width: 100%;
	max-width: 420px;
}
.mcf-festival.retro-fiche .mcf-hero__affiche-trigger {
	position: relative;
	display: block;
	width: 100%;
	border: 0;
	padding: 0;
	background: transparent;
	cursor: pointer;
}
.mcf-festival.retro-fiche .mcf-hero__affiche img {
	width: 100%;
	height: auto;
	display: block;
	border: 0;
}
.mcf-festival.retro-fiche .mcf-hero__affiche-zoom {
	position: absolute;
	left: 50%;
	bottom: -14px;
	transform: translateX(-50%);
	z-index: 2;
	inset: auto auto -14px 50%;
	padding: 8px 16px;
	border-radius: 200px;
	background: var(--nectar-extra-color-1);
	color: var(--nectar-extra-color-2);
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: .12em;
	text-transform: uppercase;
	opacity: 0;
	transition: opacity .15s ease;
}
.mcf-festival.retro-fiche .mcf-hero__affiche-trigger:hover .mcf-hero__affiche-zoom,
.mcf-festival.retro-fiche .mcf-hero__affiche-trigger:focus-visible .mcf-hero__affiche-zoom {
	opacity: 1;
}

/* Éditions voisines : tuiles ivoire (rayon 15 px) */
.retro-editions {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 14px;
	margin-top: 5vw;
}
.retro-editions a {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 22px 10px 10px;
	border-radius: 15px;
	background: var(--nectar-extra-color-3);
	color: var(--nectar-font-color);
	text-decoration: none;
	transition: transform .25s;
}
.retro-editions a.next {
	margin-left: auto;
	padding: 10px 10px 10px 22px;
	text-align: right;
}
.retro-editions a:hover {
	transform: translateY(-3px);
}
.retro-editions picture, .retro-editions img {
	display: block;
	width: 52px;
	height: auto;
	border-radius: 4px;
}
.retro-editions small {
	display: block;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}
.retro-editions b {
	display: block;
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.1;
}

/* ---------- Chapitre 1 : l'édition en bref, préface ---------- */
.retro-bref {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
	gap: 4vw;
	align-items: stretch;
}
.retro-bref--sans-photo {
	grid-template-columns: minmax(0, 1fr);
}
/* En-tête de « L'édition en bref » : le titre à gauche, le nombre de représentations à droite, calé sur la ligne du titre */
.retro-boite-tete--chiffre {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px 30px;
}
.retro-boite-tete--chiffre .retro-chiffre {
	text-align: right;
}
/* Même hauteur que le titre, en miroir : le chiffre à la taille du H3, le libellé sur la ligne du sur-titre (25 px + 8 px) */
.retro-boite-tete--chiffre .retro-chiffre b {
	font-size: clamp(28px, 3.4vw, 49px);
	line-height: 1;
}
.retro-boite-tete--chiffre .retro-chiffre span {
	margin-top: 8px;
	line-height: 25px;
}
.retro-chiffre b {
	display: block;
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: clamp(56px, 6vw, 96px);
	line-height: .9;
	color: var(--nectar-accent-color);
}
.retro-chiffre span {
	display: block;
	margin-top: 8px;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--retro-doux);
}
.retro-kv {
	margin: 0;
	padding: 0;
}
.retro-bref--sans-photo .retro-kv {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 4vw;
}
.retro-kv > div {
	display: grid;
	grid-template-columns: minmax(110px, 13em) minmax(0, 1fr);
	gap: 4px 24px;
	padding: 12px 0;
	border-top: 1px solid var(--retro-trait);
}
.retro-kv dt {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 26px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}
.retro-kv dd {
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 26px;
	white-space: pre-line;
}
.retro-photo {
	margin: 0;
	display: flex;
}
/* La photo prend la hauteur de la fiche (de la première à la dernière ligne), en cover */
.mcf-festival.retro-fiche .retro-photo button.ph {
	flex: 1;
	min-height: 320px;
}

.mcf-festival.retro-fiche blockquote.pq {
	margin: 0;
	padding: 0 0 0 24px;
	border-left: 4px solid var(--nectar-accent-color);
	font-size: 18px;
	line-height: 32px;
	color: var(--nectar-font-color);
	columns: 2 24em;
	column-gap: 4vw;
}
.mcf-festival.retro-fiche blockquote.pq p {
	margin: 0 0 1em;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
}
.mcf-festival.retro-fiche blockquote.pq::before, .mcf-festival.retro-fiche blockquote.pq::after {
	display: none;
}
.mcf-festival.retro-fiche .pq-auteur {
	margin: 24px 0 0 28px;
	padding: 0;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 20px;
	letter-spacing: 3.3px;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}

/* ---------- Chapitre 2 : comité (liste à l'imprimé de Michel, en colonnes) ---------- */
.mcf-festival.retro-fiche .alist {
	font-size: 15px;
	line-height: 25px;
	columns: 3 15em;
	column-gap: 4vw;
}
.mcf-festival.retro-fiche .apres {
	column-span: all;
	margin: 0 0 28px;
}
.mcf-festival.retro-fiche .apres + .apres {
	margin-top: -14px;
}
.mcf-festival.retro-fiche .apres-titre, .mcf-festival.retro-fiche .apres-role {
	font-size: 15px;
	color: var(--retro-doux);
}
.mcf-festival.retro-fiche .apres-nom {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: clamp(26px, 2.6vw, 38px);
	line-height: 1.05;
	text-transform: uppercase;
	color: var(--nectar-font-color);
}
.mcf-festival.retro-fiche .ahead {
	break-after: avoid;
	margin: 22px 0 6px;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .alist > .ahead:nth-child(2) {
	margin-top: 0;
}
/* Un titre de groupe ne reste jamais seul en bas de colonne (retour de Michel, 13/10) */
.mcf-festival.retro-fiche .alist .ahead {
	break-after: avoid;
	-webkit-column-break-after: avoid;
	break-inside: avoid;
}
.mcf-festival.retro-fiche .alist .aline {
	break-inside: avoid;
}
.mcf-festival.retro-fiche .aline {
	break-inside: avoid;
}
.mcf-festival.retro-fiche .aline--espace {
	margin-bottom: 12px;
}
.mcf-festival.retro-fiche .agap {
	height: 14px;
}
.mcf-festival.retro-fiche .alist b {
	font-weight: 700;
}

/* ---------- Chapitre 3 : programme, artistes ---------- */
.retro-representations, .mcf-festival.retro-fiche .progrow {
	display: grid;
	grid-template-columns: minmax(130px, 15em) minmax(0, 1fr);
	gap: 6px 24px;
	padding: 18px 0;
	border-top: 1px solid var(--retro-trait);
}
.mcf-festival.retro-fiche .proglist {
	margin: 0;
}
.mcf-festival.retro-fiche .progdate {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 26px;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .progtitle {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.1;
	text-transform: uppercase;
	margin: 0 0 4px;
}
.mcf-festival.retro-fiche .progrow--gala .progtitle {
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .progdesc {
	font-size: 16px;
	line-height: 26px;
	white-space: pre-line;
}

.mcf-festival.retro-fiche .agrid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 30px 14px;
}
.mcf-festival.retro-fiche button.aphoto {
	aspect-ratio: 4 / 3;
	margin-bottom: 12px;
}
.retro-mono {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 4 / 3;
	margin-bottom: 12px;
	border-radius: 15px;
	background: var(--retro-teinte);
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 120px;
	line-height: 1;
	color: transparent;
	-webkit-text-stroke: 2px color-mix(in srgb, var(--nectar-accent-color) 35%, transparent);
}
.mcf-festival.retro-fiche .aname {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.05;
	text-transform: uppercase;
	margin: 0 0 6px;
	color: var(--nectar-font-color);
}
.mcf-festival.retro-fiche .aname a {
	color: inherit;
	text-decoration: none;
}
.mcf-festival.retro-fiche .aname a:hover {
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .atag {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
	margin: 0 0 4px;
}
.mcf-festival.retro-fiche .adesc {
	font-size: 15px;
	line-height: 24px;
	color: var(--retro-doux);
	margin: 0;
	padding: 0;
}
/* Aucune photo dans la grille : cartes texte, pas de cadres vides */
.mcf-festival.retro-fiche .retro-agrid--texte {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0 4vw;
}
.mcf-festival.retro-fiche .retro-agrid--texte .acard {
	padding: 16px 0 18px;
	border-top: 1px solid var(--retro-trait);
}

/* ---------- Chapitre 4 : jury, palmarès ---------- */
.mcf-festival.retro-fiche .jlist {
	font-size: 15px;
	line-height: 24px;
}
.mcf-festival.retro-fiche .jcols {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: repeat(var(--j-rows, 1), auto);
	grid-auto-flow: column;
	gap: 0 4vw;
}
.mcf-festival.retro-fiche .jcols--seul {
	grid-template-columns: minmax(0, 1fr);
}
.mcf-festival.retro-fiche .jmembre {
	padding: 14px 0;
	border-top: 1px solid var(--retro-trait);
}
.mcf-festival.retro-fiche .jname {
	font-size: 16px;
}
.mcf-festival.retro-fiche .jlist b {
	font-weight: 700;
}
.mcf-festival.retro-fiche .jqualite {
	font-size: 15px;
	color: var(--retro-doux);
}
.mcf-festival.retro-fiche .jpays {
	margin-top: 2px;
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .jcomplement {
	margin-top: 18px;
}
.mcf-festival.retro-fiche .jjunior {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 0 4vw;
}
.mcf-festival.retro-fiche .jjitem {
	/* sans filet par nom (retour de Michel, 13/10) */
	padding: 10px 0;
	font-size: 15px;
	line-height: 22px;
}
.mcf-festival.retro-fiche .jjnom {
	display: block;
	font-weight: 700;
}
.mcf-festival.retro-fiche .jjinfo {
	color: var(--retro-doux);
}
.mcf-festival.retro-fiche .jjpays {
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .jmeme, .mcf-festival.retro-fiche .jempty p {
	font-size: 16px;
	line-height: 26px;
	font-style: italic;
	margin: 0;
}

.mcf-festival.retro-fiche .pband {
	margin: 0 0 36px;
	padding: 14px 22px;
	border-radius: 15px;
	background: var(--nectar-extra-color-1);
	color: var(--nectar-extra-color-2);
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: .5px;
}
.mcf-festival.retro-fiche .pband sup.ord {
	font-size: .6em;
	top: .1em;
}
/* Paliers côte à côte quand ils tiennent : chaque palier prend la largeur de ses cartes (--n = cartes de sa plus longue rangée, 4 au plus) */
.mcf-festival.retro-fiche .mrows {
	--g: 14px;
	--c: 4;
	display: flex;
	flex-wrap: wrap;
	gap: 36px var(--g);
}
.mcf-festival.retro-fiche .mrow {
	--k: min(var(--n, 4), var(--c));
	flex: 0 0 auto;
	width: calc(var(--k) * (100% - (var(--c) - 1) * var(--g)) / var(--c) + (var(--k) - 1) * var(--g));
	min-width: 0;
}
.mcf-festival.retro-fiche .retro-palier {
	margin: 0 0 16px;
	padding: 0;
}
.mcf-festival.retro-fiche .retro-palier .mcf-medaille {
	font-size: 15px;
	padding: 7px 14px;
	white-space: nowrap;
}
.mcf-festival.retro-fiche .mrow-cards {
	display: flex;
	flex-wrap: wrap;
	gap: var(--g);
}
.mcf-festival.retro-fiche .mrow-cards + .mrow-cards {
	margin-top: 24px;
}
.mcf-festival.retro-fiche .mrow-card {
	flex: 0 0 calc((100% - (var(--k) - 1) * var(--g)) / var(--k));
	min-width: 0;
}
.mcf-festival.retro-fiche button.pspeciaux-photo {
	aspect-ratio: 3 / 2;
	margin-bottom: 10px;
}
.mcf-festival.retro-fiche .mrow-card .pspeciaux-nom {
	display: block;
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 21px;
	line-height: 1.05;
	text-transform: uppercase;
	color: var(--nectar-font-color);
	text-decoration: none;
}
.mcf-festival.retro-fiche .mrow-card .pspeciaux-nom:hover {
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .mcf-badge {
	display: inline-block;
	margin: 6px 0 0;
	padding: 3px 10px;
	border-radius: 200px;
	background: var(--nectar-extra-color-2);
	color: var(--nectar-extra-color-3);
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
}
/* Palier sans aucune photo : les noms en ligne, pas de cadres vides */
.mcf-festival.retro-fiche .mrow--texte .mrow-cards {
	gap: 0;
}
.mcf-festival.retro-fiche .mrow--texte .mrow-cards + .mrow-cards {
	margin-top: 0;
}
/* Paliers sans photo : trois colonnes Or, Argent, Bronze, les noms empilés */
.mcf-festival.retro-fiche .mrow--texte {
	width: calc((100% - 2 * var(--g)) / 3);
}
.mcf-festival.retro-fiche .mrow--texte .mrow-cards {
	flex-direction: column;
}
.mcf-festival.retro-fiche .mrow--texte .mrow-card {
	flex: 0 0 auto;
	padding: 10px 0;
	border-top: 1px solid var(--retro-trait);
}
.mcf-festival.retro-fiche .mrow--texte .pspeciaux-nom {
	font-size: 24px;
}
.mcf-festival.retro-fiche .mrow-card--sans-photo {
	padding-top: 10px;
	border-top: 3px solid var(--nectar-accent-color);
}

.mcf-festival.retro-fiche .pspeciaux {
	margin-top: 44px;
}
.mcf-festival.retro-fiche .pspeciaux-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 24px 14px;
}
.mcf-festival.retro-fiche .pspeciaux-card .pspeciaux-nom,
.mcf-festival.retro-fiche .retro-prix-liste .pspeciaux-nom {
	display: block;
	font-weight: 700;
	font-size: 15px;
	line-height: 22px;
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .pspeciaux-laureat {
	display: block;
	font-weight: 600;
	font-size: 15px;
	line-height: 22px;
	color: var(--nectar-font-color);
	text-decoration: none;
}
.mcf-festival.retro-fiche a.pspeciaux-laureat:hover {
	text-decoration: underline;
}
.mcf-festival.retro-fiche .pspeciaux-card--sans-photo {
	padding-top: 10px;
	border-top: 3px solid var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .retro-prix-liste {
	margin: 0;
	padding: 0;
	columns: 2 22em;
	column-gap: 4vw;
}
.mcf-festival.retro-fiche .retro-prix-liste li {
	break-inside: avoid;
	list-style: none;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid var(--retro-trait);
}

.mcf-festival.retro-fiche .pfoot {
	margin-top: 36px;
}
.mcf-festival.retro-fiche .pcol h4 {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 18px;
	letter-spacing: 3.3px;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
	margin: 0 0 12px;
}
.mcf-festival.retro-fiche .psimple {
	margin: 0;
	padding: 0;
}
.mcf-festival.retro-fiche .psimple li {
	list-style: none;
	padding: 8px 0;
	border-top: 1px solid var(--retro-trait);
}

/* ---------- Chapitre 5 : autour, vidéos ---------- */
.mcf-festival.retro-fiche .agrid2 {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}
.mcf-festival.retro-fiche .aevent {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	width: 100%;
	margin: 0;
	padding: 26px 28px;
	border: 0;
	border-radius: 15px !important;
	background: var(--retro-teinte);
	font: inherit;
	color: var(--nectar-font-color);
	text-align: left;
	cursor: pointer;
	transition: transform .25s;
}
.mcf-festival.retro-fiche .aevent:hover {
	transform: translateY(-3px);
}
.mcf-festival.retro-fiche .aevent h3 {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--nectar-font-color);
	margin: 0 0 8px;
}
.mcf-festival.retro-fiche .adate {
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--nectar-accent-color);
	margin: 0 0 10px;
}
.mcf-festival.retro-fiche .aevent p {
	font-size: 15px;
	line-height: 24px;
	margin: 0;
	padding: 0;
}
.mcf-festival.retro-fiche .mcf-lightbox--evenement {
	border-radius: 20px;
	background: var(--nectar-extra-color-3);
}

.mcf-festival.retro-fiche .vgrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}
.mcf-festival.retro-fiche .vcard {
	align-self: start;
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font: inherit;
	color: inherit;
	text-align: left;
	cursor: pointer;
}
.mcf-festival.retro-fiche .vthumb {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 10;
	margin: 0 0 10px;
	border-radius: 15px;
	overflow: hidden;
	background: var(--nectar-extra-color-2) var(--vthumb-img) center / cover no-repeat;
}
.mcf-festival.retro-fiche .play {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--nectar-accent-color);
	color: var(--nectar-font-light-color);
	font-size: 18px;
	transition: transform .25s;
}
.mcf-festival.retro-fiche .vcard:hover .play {
	transform: scale(1.1);
}
.mcf-festival.retro-fiche .vtag {
	position: absolute;
	top: 12px;
	left: 12px;
	padding: 4px 10px;
	border-radius: 200px;
	background: var(--nectar-extra-color-1);
	color: var(--nectar-extra-color-2);
	font-family: var(--font-2), sans-serif;
	font-weight: 600;
	font-size: 13px;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.mcf-festival.retro-fiche .vcaption {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 21px;
	line-height: 1.1;
	text-transform: uppercase;
}

/* ---------- Sommaire ---------- */
.mcf-festival.retro-fiche .mcf-sectionnav__item:hover .mcf-sectionnav__dot,
.mcf-festival.retro-fiche .mcf-sectionnav__item.is-active .mcf-sectionnav__dot {
	background: var(--nectar-extra-color-1);
}
.mcf-festival.retro-fiche .mcf-sectionnav__item:hover .mcf-sectionnav__label {
	color: var(--nectar-font-light-color);
}
.mcf-festival.retro-fiche .mcf-sectionnav__toggle {
	background: var(--nectar-accent-color);
}
/* Libellés longs sur deux lignes au plus (l'allemand viendra) : le libellé sort du flux, les points gardent
	leur pas régulier et le texte ne mord plus sur le contenu à 1 920 (retour de Michel, 13/10) */
.mcf-festival.retro-fiche .mcf-sectionnav__label {
	position: absolute;
	right: 19px;
	top: 50%;
	width: max-content;
	max-width: 150px;
	white-space: normal;
	line-height: 1.3;
	transform: translate(-6px, -50%);
}
.mcf-festival.retro-fiche .mcf-sectionnav__item {
	min-height: 34px; /* le pas du gabarit de Michel (38 px), que le libellé portait */
}
.mcf-festival.retro-fiche .mcf-sectionnav__item:hover .mcf-sectionnav__label {
	transform: translate(0, -50%);
}

/* ---------- Tablette ---------- */
@media (max-width: 999px) {
	.retro-ouverture__grille {
		grid-template-columns: minmax(0, 1fr);
	}
	.retro-ouverture__affiche {
		max-width: 360px;
	}
	.retro-bref {
		grid-template-columns: minmax(0, 1fr);
	}
	.mcf-festival.retro-fiche .retro-photo button.ph {
		min-height: 0;
		aspect-ratio: 4 / 3;
	}
	.mcf-festival.retro-fiche .agrid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.mcf-festival.retro-fiche .mrows {
		--c: 3;
	}
}

/* ---------- Téléphone ---------- */
@media (max-width: 690px) {
	.retro-boite {
		padding: 22px;
	}
	.retro-boite-tete {
		margin-bottom: 22px;
	}
	.retro-date-lieu {
		font-size: 18px;
		letter-spacing: 3px;
	}
	.retro-filigrane.mcf-filigrane {
		font-size: 200px;
		top: 4vw;
	}
	.retro-ouverture__affiche {
		max-width: none;
	}
	.retro-editions a, .retro-editions a.next {
		margin-left: 0;
		flex: 1 1 100%;
	}
	.retro-bref--sans-photo .retro-kv {
		grid-template-columns: minmax(0, 1fr);
	}
	.retro-kv > div, .retro-representations, .mcf-festival.retro-fiche .progrow {
		grid-template-columns: minmax(0, 1fr);
	}
	.retro-boite-tete--chiffre .retro-chiffre {
		text-align: left;
	}
	.mcf-festival.retro-fiche blockquote.pq {
		padding-left: 16px;
		font-size: 16px;
		line-height: 28px;
	}
	.mcf-festival.retro-fiche .pq-auteur {
		margin-left: 20px;
		font-size: 16px;
	}
	.mcf-festival.retro-fiche .jcols {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: none;
		grid-auto-flow: row;
	}
	.mcf-festival.retro-fiche .agrid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px 12px;
	}
	.mcf-festival.retro-fiche .retro-agrid--texte {
		grid-template-columns: minmax(0, 1fr);
	}
	.mcf-festival.retro-fiche .aname {
		font-size: 18px;
	}
	.mcf-festival.retro-fiche .atag, .mcf-festival.retro-fiche .adesc {
		font-size: 14px;
	}
	.retro-mono {
		font-size: 80px;
	}
	.mcf-festival.retro-fiche .mrows {
		--c: 2;
		--g: 12px;
	}
	.mcf-festival.retro-fiche .mrow-card .pspeciaux-nom {
		font-size: 18px;
	}
	.mcf-festival.retro-fiche .mrow--texte {
		width: 100%;
	}
	.mcf-festival.retro-fiche .mrow--texte .pspeciaux-nom {
		font-size: 22px;
	}
	.mcf-festival.retro-fiche .pband {
		font-size: 18px;
		padding: 12px 16px;
	}
	.mcf-festival.retro-fiche .retro-palier .mcf-medaille {
		font-size: 12px;
		padding: 6px 10px;
		letter-spacing: .08em;
	}
	.mcf-festival.retro-fiche .pspeciaux-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.mcf-festival.retro-fiche .agrid2, .mcf-festival.retro-fiche .vgrid {
		grid-template-columns: minmax(0, 1fr);
	}
	.mcf-festival.retro-fiche .jdiv span {
		font-size: 15px;
		letter-spacing: 2.4px;
	}
}

/* =====================================================================================================
 * Retours du 13/10/2026 (tranchés par Jérémie : chapitres sans libellé, photos en vis-à-vis, palmarès restructuré)
 * ===================================================================================================== */

/* ---------- Artistes en vis-à-vis : photo et texte côte à côte, deux cartes par rangée ---------- */
.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}
.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) > .acard {
	display: grid;
	grid-template-columns: minmax(0, 44%) minmax(0, 1fr);
	grid-template-rows: auto auto 1fr;
	column-gap: 20px;
	align-items: start;
	padding: 12px;
	border-radius: 15px;
	background: var(--retro-teinte);
}
.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) > .acard > button.aphoto,
.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) > .acard > .retro-mono {
	grid-row: 1 / span 3;
	margin: 0;
	aspect-ratio: 4 / 3;
}
.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) > .acard .aname {
	margin-top: 6px;
}

/* ---------- Palmarès (retouché le 13/10 au soir) : médaille au-dessus de sa rangée, trois colonnes partout,
 * noms de même taille quel que soit le rang. Les rangées du PHP (.mrow-cards) s'effacent (display: contents). */
.mcf-festival.retro-fiche .mrows {
	display: block;
}
.mcf-festival.retro-fiche .mrow {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0 18px;
	width: auto;
	padding: 26px 0 4px;
	border-top: 1px solid var(--retro-trait);
}
.mcf-festival.retro-fiche .mrow:first-child {
	padding-top: 0;
	border-top: 0;
}
.mcf-festival.retro-fiche .mrow > .retro-palier {
	grid-column: 1 / -1;
	margin: 0 0 16px;
	padding: 0;
}
.mcf-festival.retro-fiche .mrow > .mrow-cards {
	display: contents;
}
.mcf-festival.retro-fiche .mrow-card {
	min-width: 0;
	margin-bottom: 24px;
}
.mcf-festival.retro-fiche .mrow-card button.pspeciaux-photo {
	aspect-ratio: 3 / 2;
	margin: 0 0 12px;
}
.mcf-festival.retro-fiche .mrow-card .pspeciaux-nom {
	font-size: 22px;
	line-height: 1.1;
}
/* Peu de lauréats (bloc NG : 1, 1, 2) : médailles côte à côte, mêmes cartes au tiers de la largeur */
.retro-boite--palmares {
	container-type: inline-size;
}
.mcf-festival.retro-fiche .mrows--court {
	display: flex;
	flex-wrap: wrap;
	gap: 0 18px;
}
.mcf-festival.retro-fiche .mrows--court .mrow {
	display: flex;
	flex-direction: column;
	padding: 0;
	border: 0;
}
.mcf-festival.retro-fiche .mrows--court .mrow > .mrow-cards {
	display: flex;
	gap: 18px;
}
.mcf-festival.retro-fiche .mrows--court .mrow-card {
	flex: 0 0 auto;
	width: calc((100cqw - 2 * 18px) / 3);
}
/* Palier sans photo (témoin) : les noms en trois colonnes, sous la médaille */
.mcf-festival.retro-fiche .mrow--texte {
	gap: 0 4vw;
}
.mcf-festival.retro-fiche .mrow--texte .mrow-card {
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid var(--retro-trait);
}
.mcf-festival.retro-fiche .mrow--texte .mrow-card--sans-photo {
	border-top-width: 1px;
	border-top-color: var(--retro-trait);
}

/* ---------- Autres distinctions et prix spéciaux (retouché le 13/10 au soir) : 
   deux par rangée, photo lisible, le prix en texte courant, le lauréat en titre ---------- */
.mcf-festival.retro-fiche .pspeciaux-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}
.mcf-festival.retro-fiche .pspeciaux-card {
	display: grid;
	grid-template-columns: 168px minmax(0, 1fr);
	grid-template-rows: auto 1fr;
	column-gap: 20px;
	align-items: start;
	padding: 12px;
	border-radius: 15px;
	background: var(--retro-teinte);
}
.mcf-festival.retro-fiche .pspeciaux-card > button.pspeciaux-photo {
	grid-row: 1 / span 2;
	margin: 0;
	aspect-ratio: 3 / 2;
	border-radius: 10px !important;
}
.mcf-festival.retro-fiche .pspeciaux-card .pspeciaux-nom {
	margin: 4px 0 8px;
	font-family: var(--font-1), sans-serif;
	font-weight: 500;
	font-size: 15px;
	line-height: 21px;
	color: var(--retro-doux);
}
.mcf-festival.retro-fiche .pspeciaux-card .pspeciaux-laureat {
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.1;
	text-transform: uppercase;
	color: var(--nectar-font-color);
}
.mcf-festival.retro-fiche .pspeciaux-card a.pspeciaux-laureat:hover {
	color: var(--nectar-accent-color);
	text-decoration: none;
}
.mcf-festival.retro-fiche .pspeciaux-card--sans-photo {
	grid-template-columns: minmax(0, 1fr);
	border-top: 0;
	padding-top: 12px;
}
.mcf-festival.retro-fiche .pspeciaux-card .aphoto-zoom {
	font-size: 12px;
	letter-spacing: 2px;
}

/* ---------- Frise des éditions (mur de l'accueil) : édition précédente / suivante à droite du titre ---------- */
.retro-ch--frise {
	padding-top: 6vw;
}
.retro-boite--editions .retro-boite-tete {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px 30px;
}
.retro-boite--editions .retro-boite-tete > div {
	min-width: 0;
}
.retro-boite--editions .retro-editions--bas {
	display: flex;
	gap: 14px;
	margin: 0;
	justify-content: flex-end;
}
.retro-boite--editions .retro-editions--bas a {
	background: var(--retro-teinte);
}
.retro-boite--editions .retro-editions--bas a.next {
	margin-left: 0;
}
.retro-boite--editions .maj-mcf-mur {
	margin: 0;
}
.mcf-festival.retro-fiche .mcf-aff--ici img {
	outline: 3px solid var(--nectar-accent-color);
	outline-offset: 3px;
}
.mcf-festival.retro-fiche .mcf-aff--ici .mcf-neuf {
	background: var(--nectar-accent-color);
	color: var(--nectar-font-light-color) !important;
}
.mcf-festival.retro-fiche .mcf-aff--ici > span:last-child {
	color: var(--nectar-accent-color);
	font-weight: 700;
}

@media (max-width: 999px) {
	.mcf-festival.retro-fiche .pspeciaux-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}
@media (max-width: 690px) {
	.mcf-festival.retro-fiche .agrid:not(.retro-agrid--texte) {
		grid-template-columns: minmax(0, 1fr);
	}
	.mcf-festival.retro-fiche .mrow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 12px;
	}
	.mcf-festival.retro-fiche .mrow--texte {
		grid-template-columns: minmax(0, 1fr);
	}
	.mcf-festival.retro-fiche .mrow-card .pspeciaux-nom {
		font-size: 18px;
	}
	.mcf-festival.retro-fiche .mrows--court .mrow-card {
		flex: 0 0 auto;
		width: calc((100cqw - 12px) / 2);
	}
	.mcf-festival.retro-fiche .mrows--court, .mcf-festival.retro-fiche .mrows--court .mrow > .mrow-cards {
		gap: 0 12px;
	}
	.mcf-festival.retro-fiche .pspeciaux-card {
		grid-template-columns: 112px minmax(0, 1fr);
		column-gap: 14px;
		padding: 10px;
	}
	.mcf-festival.retro-fiche .pspeciaux-card .pspeciaux-laureat {
		font-size: 19px;
	}
	.retro-boite--editions .retro-editions--bas {
		width: 100%;
		justify-content: flex-start;
	}
}

/* =====================================================================================================
 * Retours du 13/10/2026, troisième passe : préface sans trait, galerie Médias, pied d'édition retiré
 * ===================================================================================================== */

/* ---------- Préface : grand guillemet ouvrant en tête, texte en deux colonnes, signature calée à droite ---------- */
.mcf-festival.retro-fiche .retro-boite--preface blockquote.pq {
	position: relative;
	border-left: 0;
	margin: 0;
	padding: 64px 0 0;
	font-size: 18px;
	line-height: 31px;
	columns: 2 24em;
	column-gap: 4vw;
	text-align: justify;
}
/* 
	Jamais moins de 3 lignes d'un paragraphe en haut de la 2e colonne (widows) ni en bas de la 1re (orphans) ;
   	sans effet sous Firefox, qui ne gère pas ces propriétés : /
*/
.mcf-festival.retro-fiche .retro-boite--preface blockquote.pq p {
	widows: 3;
	orphans: 3;
}
/* Le guillemet se trouve dans la marge haute du texte : il ne recouvre jamais la première ligne */
.mcf-festival.retro-fiche .retro-guillemet {
	position: absolute;
	top: -.36em;
	left: -.04em;
	font-family: var(--font-2), sans-serif;
	font-weight: 700;
	font-size: 120px;
	line-height: 1;
	color: var(--nectar-accent-color);
}
.mcf-festival.retro-fiche .retro-boite--preface .pq-auteur {
	margin: 30px 0 0;
	text-align: right;
}

/* ---------- Médias : galerie de l'édition (exemple statique du 13/10, 48e) ---------- */
.retro-medias {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px 14px;
}
.retro-media {
	margin: 0;
	min-width: 0;
}
.mcf-festival.retro-fiche .retro-media__ph {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	border: 0;
	padding: 0;
	margin: 0 0 8px;
	border-radius: 15px !important;
	background: var(--nectar-extra-color-2);
	cursor: pointer;
	font: inherit;
}
.mcf-festival.retro-fiche .retro-media__ph:hover .aphoto-fg {
	transform: scale(1.05);
}
.mcf-festival.retro-fiche .retro-media__ph:hover .aphoto-zoom, .mcf-festival.retro-fiche .retro-media__ph:focus-visible .aphoto-zoom {
	opacity: 1;
}
.retro-media figcaption {
	font-size: 14px;
	line-height: 20px;
	color: var(--retro-doux);
}

/* ---------- Fin de page : plus de pied d'édition, juste l'air de 6 % sous la dernière section ---------- */
.retro-fin {
	height: 6vw;
}

@media (max-width: 999px) {
	.retro-medias {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
@media (max-width: 690px) {
	.retro-medias {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px 12px;
	}
	.mcf-festival.retro-fiche .retro-boite--preface blockquote.pq {
		font-size: 16px;
		line-height: 28px;
	}
	.retro-fin {
		height: 40px;
	}
}