/* Compléments au theme.json : ce que les réglages de blocs ne savent pas exprimer. */

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--wp--preset--color--dore);
	outline-offset: 2px;
}

/* Boutons : variantes */
.wp-block-button.is-style-contour .wp-block-button__link {
	background: transparent;
	color: currentColor;
	border: 2px solid currentColor;
}
.wp-block-button.is-style-contour .wp-block-button__link:hover {
	background: transparent;
	opacity: 0.8;
}
.wp-block-button.is-style-dore .wp-block-button__link {
	background: var(--wp--preset--color--dore);
	color: var(--wp--preset--color--encre);
}
.wp-block-button.is-style-dore .wp-block-button__link:hover {
	background: var(--wp--preset--color--dore);
	filter: brightness(1.1);
	color: var(--wp--preset--color--encre);
}

/* Surtitre : petite ligne en capitales au-dessus d'un titre */
p.is-style-surtitre {
	font-size: var(--wp--preset--font-size--petit);
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--brun);
}
.has-vert-background-color p.is-style-surtitre,
.has-vert-fonce-background-color p.is-style-surtitre,
.wp-block-cover p.is-style-surtitre {
	color: var(--wp--preset--color--dore);
}

/* Carte */
.wp-block-group.is-style-carte {
	border-radius: var(--wp--custom--rayon--grand);
	overflow: hidden;
}

/* En-tête : liens blancs, page courante soulignée en doré */
.mm-entete a {
	color: var(--wp--preset--color--blanc);
	text-decoration: none;
}
.mm-entete .wp-block-navigation-item a:hover,
.mm-entete .current-menu-item > a,
.mm-entete .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--wp--preset--color--dore);
}
.mm-entete .wp-block-navigation-item__content[aria-current="page"] {
	box-shadow: inset 0 -2px 0 var(--wp--preset--color--dore);
}
.mm-entete .wp-block-site-title a { color: var(--wp--preset--color--blanc); }
.mm-entete .mm-devise { color: var(--wp--preset--color--dore); }


/* Pied de page */
.mm-pied a { color: var(--wp--preset--color--blanc); }
.mm-pied a:hover { color: var(--wp--preset--color--dore); }

/* Images arrondies dans les cartes et les listes de fiches */
.mm-arrondi img,
.wp-block-post-featured-image.mm-arrondi img {
	border-radius: var(--wp--custom--rayon--moyen);
}
/* Photos du club : toujours sur toute la largeur de leur colonne ou de leur carte */
.wp-block-image.mm-arrondi img { width: 100%; height: auto; display: block; }
.mm-carte-activite > .wp-block-image:first-child {
	margin: calc(-1 * var(--wp--preset--spacing--40)) calc(-1 * var(--wp--preset--spacing--40)) 1.25rem;
}
.mm-carte-activite > .wp-block-image:first-child img { border-radius: 16px 16px 0 0; }

/* Cadre affiché à la place d'une image à la une manquante */
.mm-sans-photo {
	display: flex;
	align-items: flex-end;
	padding: 0.9rem;
	box-sizing: border-box;
	border-radius: var(--wp--custom--rayon--moyen);
	background-color: var(--wp--preset--color--vert-moyen);
	background-image: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0 2px, transparent 2px 14px);
}
.mm-sans-photo span {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.75);
}

/* Liste « prochains rendez-vous » (shortcode du plugin du club) */
.mm-rdv { list-style: none; margin: 0; padding: 0; }
.mm-rdv li { border-bottom: 1px solid var(--wp--preset--color--trait); }
.mm-rdv li:last-child { border-bottom: 0; }
.mm-rdv a {
	display: flex;
	gap: 1.1rem;
	padding: 1.1rem 0.25rem;
	text-decoration: none;
	color: inherit;
}
.mm-rdv .mm-rdv-date {
	flex: none;
	width: 4.5rem;
	font-weight: 700;
	color: var(--wp--preset--color--accent);
	line-height: 1.3;
}
.mm-rdv .mm-rdv-titre { display: block; font-weight: 700; }
.mm-rdv .mm-rdv-lieu { color: var(--wp--preset--color--gris); }

/* Prochain rendez-vous mis en avant */
.mm-rdv-vedette { display: flex; flex-wrap: wrap; gap: 1.75rem; align-items: center; }
.mm-rdv-vedette .mm-calendrier {
	width: 7rem;
	height: 7.75rem;
	flex: none;
	border-radius: 14px;
	background: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--blanc);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 1.1;
}
.mm-calendrier .mm-jour-semaine,
.mm-calendrier .mm-mois {
	font-size: var(--wp--preset--font-size--petit);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.mm-calendrier .mm-jour-semaine { color: var(--wp--preset--color--jaune); }
.mm-calendrier .mm-jour { font-family: var(--wp--preset--font-family--titre); font-size: 3rem; line-height: 1; }
.mm-rdv-vedette h3 { margin: 0.25rem 0 0.4rem; font-size: var(--wp--preset--font-size--grand); }
.mm-rdv-vedette p { margin: 0; color: var(--wp--preset--color--gris); }

/* Étiquette de catégorie de fiche */
.mm-etiquette a,
.mm-etiquette {
	font-size: var(--wp--preset--font-size--petit);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--wp--preset--color--brun);
}
.has-vert-background-color .mm-etiquette a,
.has-vert-moyen-background-color .mm-etiquette a { color: var(--wp--preset--color--dore); }

/* Vidéos de la chaîne YouTube du club */
ul.mm-videos {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
	gap: 1.75rem 1.5rem;
}
ul.mm-videos a {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
	text-decoration: none;
	color: inherit;
}
.mm-video-image {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	border-radius: var(--wp--custom--rayon--moyen);
	overflow: hidden;
	background: var(--wp--preset--color--vert-moyen);
}
.mm-video-image img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
ul.mm-videos a:hover .mm-video-image img { transform: scale(1.04); }
.mm-video-duree {
	position: absolute;
	right: 0.5rem;
	bottom: 0.5rem;
	padding: 0.1rem 0.45rem;
	border-radius: 6px;
	background: rgba(15, 39, 34, 0.85);
	color: #fff;
	font-size: 0.8rem;
	font-weight: 700;
}
.mm-video-lecture {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 3.4rem;
	height: 3.4rem;
	margin: -1.7rem 0 0 -1.7rem;
	border-radius: 50%;
	background: var(--wp--preset--color--dore);
	opacity: 0.92;
}
.mm-video-lecture::after {
	content: "";
	position: absolute;
	left: 1.3rem;
	top: 1rem;
	border-style: solid;
	border-width: 0.7rem 0 0.7rem 1.1rem;
	border-color: transparent transparent transparent var(--wp--preset--color--encre);
}
.mm-video-titre { font-weight: 700; line-height: 1.35; }
.mm-video-date { font-size: var(--wp--preset--font-size--petit); color: var(--wp--preset--color--gris); }
.has-vert-background-color .mm-video-date { color: #c7d6d0; }

/* Palmarès des ambassadeurs */
ul.mm-palmares { list-style: none; padding: 0; margin: 0; }
ul.mm-palmares li {
	display: flex;
	gap: 1rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--wp--preset--color--trait);
}
ul.mm-palmares li > strong:first-child {
	flex: none;
	width: 3.5rem;
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.3rem;
	color: var(--wp--preset--color--brun);
}

/* Filtres du catalogue de fiches : la liste des types de mouches en pastilles */
ul.mm-filtres {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
}
ul.mm-filtres a {
	display: inline-block;
	padding: 0.55rem 1.1rem;
	border: 1px solid var(--wp--preset--color--trait);
	border-radius: 999px;
	font-weight: 600;
	text-decoration: none;
	color: var(--wp--preset--color--accent);
}
ul.mm-filtres a:hover,
ul.mm-filtres .current-cat a {
	background: var(--wp--preset--color--olive);
	border-color: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--blanc);
}

/* The Events Calendar aux couleurs et polices du club */
body .tribe-common,
body .tribe-events {
	--tec-color-accent-primary: var(--wp--preset--color--dore);
	--tec-color-accent-primary-hover: var(--wp--preset--color--blanc);
	--tec-color-accent-primary-active: var(--wp--preset--color--blanc);
	--tec-color-accent-primary-background: var(--wp--preset--color--brume);
	--tec-color-accent-secondary: var(--wp--preset--color--dore);
	--tec-color-button-primary: var(--wp--preset--color--olive);
	--tec-color-button-primary-hover: var(--wp--preset--color--olive);
	--tec-color-button-primary-active: var(--wp--preset--color--olive);
	--tec-color-link-accent: var(--wp--preset--color--dore);
	--tec-color-link-accent-hover: var(--wp--preset--color--blanc);
	--tec-color-text-primary: var(--wp--preset--color--blanc);
	--tec-color-text-primary-light: var(--wp--preset--color--gris);
	--tec-color-text-secondary: var(--wp--preset--color--gris);
	--tec-color-text-disabled: var(--wp--preset--color--sauge);
	--tec-color-text-events-title: var(--wp--preset--color--blanc);
	--tec-color-text-event-title: var(--wp--preset--color--blanc);
	--tec-color-text-event-date: var(--wp--preset--color--gris);
	--tec-color-text-secondary-event-date: var(--wp--preset--color--gris);
	--tec-color-icon-primary: var(--wp--preset--color--gris);
	--tec-color-icon-active: var(--wp--preset--color--dore);
	--tec-color-icon-secondary: var(--wp--preset--color--gris);
	--tec-color-border-default: var(--wp--preset--color--trait);
	--tec-color-border-secondary: var(--wp--preset--color--trait);
	--tec-color-border-tertiary: var(--wp--preset--color--sauge);
	--tec-color-border-active: var(--wp--preset--color--dore);
	--tec-color-background: var(--wp--preset--color--fond);
	--tec-color-background-secondary: var(--wp--preset--color--brume);
	--tec-color-background-events: var(--wp--preset--color--fond);
	--tec-color-background-transparent: transparent;
	--tec-color-background-secondary-hover: var(--wp--preset--color--dore-pale);
	--tec-color-background-events-bar-submit-button: var(--wp--preset--color--olive);
	--tec-color-background-events-bar-submit-button-hover: var(--wp--preset--color--olive);
	--tec-color-background-events-bar-submit-button-active: var(--wp--preset--color--olive);
	--tec-color-day-marker-month: var(--wp--preset--color--blanc);
	--tec-color-day-marker-past-month: var(--wp--preset--color--gris);
	--tec-font-family-sans-serif: var(--wp--preset--font-family--texte);
}
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h5,
.tribe-common .tribe-events-calendar-list__event-title,
.tribe-events-single-event-title {
	font-family: var(--wp--preset--font-family--titre);
	font-weight: 500;
}

/* Formulaire de contact (Contact Form 7) */
.mm-formulaire .wpcf7-form {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 1.25rem 1.5rem;
}
.mm-formulaire .wpcf7-form > p { margin: 0; display: contents; }
.mm-formulaire .wpcf7-form br { display: none; }
.mm-formulaire label {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	font-weight: 700;
}
.mm-formulaire .mm-large { grid-column: 1 / -1; }
.mm-formulaire .mm-facultatif { font-weight: 400; color: var(--wp--preset--color--gris); }
.mm-formulaire input[type="text"],
.mm-formulaire input[type="email"],
.mm-formulaire input[type="tel"],
.mm-formulaire input[type="number"],
.mm-formulaire select,
.mm-formulaire textarea {
	width: 100%;
	box-sizing: border-box;
	font: inherit;
	font-weight: 400;
	padding: 0.8rem 0.9rem;
	border: 1px solid var(--wp--preset--color--sauge);
	border-radius: 10px;
	background: var(--wp--preset--color--brume);
	color: inherit;
}
.mm-formulaire textarea { min-height: 10rem; }
.mm-formulaire .wpcf7-acceptance label {
	flex-direction: row;
	align-items: flex-start;
	gap: 0.75rem;
	font-weight: 400;
	color: var(--wp--preset--color--gris);
}
.mm-formulaire .wpcf7-acceptance input { width: 1.3rem; height: 1.3rem; margin-top: 0.15rem; accent-color: var(--wp--preset--color--dore); }
.mm-formulaire .wpcf7-list-item { margin: 0; }
.mm-formulaire .wpcf7-submit {
	font: inherit;
	font-weight: 700;
	padding: 0.9rem 2rem;
	border: 0;
	border-radius: 999px;
	background: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--blanc);
	cursor: pointer;
}
.mm-formulaire .wpcf7-submit:hover { filter: brightness(1.2); }
.mm-formulaire .wpcf7-response-output { grid-column: 1 / -1; margin: 0 !important; border-radius: 10px; }

/* Frise chronologique (page Notre histoire) */
.mm-frise > .wp-block-group {
	position: relative;
	margin: 0;
	padding: 0 0 2rem 2.25rem;
	border-left: 2px solid var(--wp--preset--color--sauge);
}
.mm-frise > .wp-block-group:last-child { border-left-color: transparent; padding-bottom: 0; }
.mm-frise > .wp-block-group::before {
	content: "";
	position: absolute;
	left: -9px;
	top: 0.35rem;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--wp--preset--color--dore);
	border: 2px solid var(--wp--preset--color--fond);
}
.mm-frise h3 { margin: 0 0 0.4rem; color: var(--wp--preset--color--accent); }
.mm-frise p { margin: 0; color: var(--wp--preset--color--gris); }

/* Étapes numérotées dans une pastille */
ol.mm-etapes { list-style: none; counter-reset: etape; padding: 0; }
ol.mm-etapes > li {
	counter-increment: etape;
	position: relative;
	padding: 0 0 1.1rem 3rem;
	min-height: 2.2rem;
}
ol.mm-etapes > li::before {
	content: counter(etape);
	position: absolute;
	left: 0;
	top: -0.1rem;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--olive);
	color: var(--wp--preset--color--blanc);
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.1rem;
}

/* Règlement d'ordre intérieur : articles numérotés lisibles */
.mm-reglement h2 {
	font-size: var(--wp--preset--font-size--grand);
	margin-top: 2.5rem;
	padding-top: 1rem;
	border-top: 1px solid var(--wp--preset--color--trait);
}

/* Questions fréquentes (bloc Détails) */
.wp-block-details {
	border-bottom: 1px solid var(--wp--preset--color--trait);
	padding: 1.1rem 0;
}
.wp-block-details summary { font-weight: 700; font-size: var(--wp--preset--font-size--moyen); cursor: pointer; }

/* Direction « Crépuscule » : un mot en italique colorée dans les titres (balise em) */
:where(h1, h2, h3, .wp-block-post-title) em {
	font-style: italic;
	color: var(--wp--preset--color--accent);
}
.wp-block-cover h1 em, .has-vert-background-color :where(h1, h2, h3) em { color: var(--wp--preset--color--dore); }
/* Grande photo d'accueil : voile dégradé et en-tête posé sur l'image */
.mm-hero > .wp-block-cover__background {
	background: linear-gradient(180deg, rgba(10, 12, 9, 0.6) 0%, rgba(10, 12, 9, 0.2) 42%, var(--wp--preset--color--fond) 100%),
		linear-gradient(90deg, rgba(10, 12, 9, 0.75) 0%, rgba(10, 12, 9, 0) 65%) !important;
	opacity: 1 !important;
}
/* Le texte de la grande photo s'aligne sur la même colonne que le reste de la page */
.mm-hero.wp-block-cover {
	padding-left: var(--wp--style--root--padding-left) !important;
	padding-right: var(--wp--style--root--padding-right) !important;
}
.mm-hero > .wp-block-cover__inner-container {
	width: 100% !important;
	max-width: var(--wp--style--global--wide-size) !important;
	margin-inline: auto !important;
	padding-inline: 0 !important;
}
.mm-hero > .wp-block-cover__inner-container > * { max-width: none; margin-left: 0 !important; }
.mm-hero h1 { margin-top: 0.6rem; font-size: clamp(2.8rem, 6vw, 5.5rem); }
.mm-hero p.has-moyen-font-size { max-width: 34rem; }
.home .wp-site-blocks > header.wp-block-template-part {
	position: absolute;
	left: 0;
	right: 0;
	z-index: 20;
}
.home .mm-entete { background: transparent !important; border-bottom: 0; }
.home .mm-hero { padding-top: 9rem !important; }
.mm-entete { border-bottom: 1px solid var(--wp--preset--color--trait); }
.mm-entete .mm-devise { color: var(--wp--preset--color--gris); }
.wp-block-site-title a { color: inherit; }
/* Titres cliquables : même couleur que le titre, soulignement au survol */
:where(h1, h2, h3, h4) a { color: inherit; }
:where(h1, h2, h3, h4) a:hover { color: var(--wp--preset--color--dore); }

/* The Events Calendar : barre de recherche et boutons sur fond sombre */
.tribe-events .tribe-events-c-events-bar,
.tribe-events .tribe-events-c-events-bar__search-container,
.tribe-events .tribe-events-c-view-selector__content,
.tribe-events .tribe-events-c-top-bar__datepicker-container {
	background-color: var(--wp--preset--color--brume) !important;
	border-color: var(--wp--preset--color--trait) !important;
}
.tribe-events .tribe-events-c-search__input,
.tribe-events .tribe-common-c-btn-border-small,
.tribe-events .tribe-events-c-top-bar__today-button {
	background-color: transparent !important;
	color: var(--wp--preset--color--blanc) !important;
	border-color: var(--wp--preset--color--sauge) !important;
}
/* The Events Calendar : fiche d'un événement et libellés, couleurs imposées par l'extension */
.tribe-events-single,
.tribe-events-single :where(h1, h2, h3, h4, dt, dd, abbr, span, div, p, li),
.tribe-events .tribe-events-c-view-selector__list-item-text,
.tribe-events .tribe-events-c-nav__prev-label,
.tribe-events .tribe-events-c-nav__next-label,
.tribe-events .tribe-events-c-subscribe-dropdown__button-text,
.tribe-events-c-subscribe-dropdown__button-text {
	color: var(--wp--preset--color--blanc) !important;
}
.tribe-events-single a,
.tribe-events-single .tribe-events-back a,
.tribe-events-single .tribe-events-nav-pagination a {
	color: var(--wp--preset--color--dore) !important;
}
.tribe-events-single .tribe-events-meta-label,
.tribe-events-single .tribe-events-event-meta dt { color: var(--wp--preset--color--gris) !important; }
.tribe-events-single h1.tribe-events-single-event-title {
	font-family: var(--wp--preset--font-family--titre);
	font-weight: 500;
	font-size: var(--wp--preset--font-size--titre);
}
.tribe-events-c-subscribe-dropdown__button { border-color: var(--wp--preset--color--sauge) !important; background: transparent !important; }
.tribe-events-c-subscribe-dropdown__content { background: var(--wp--preset--color--brume) !important; }

/* Forum Asgaros sur fond sombre */
#af-wrapper,
#af-wrapper :where(h1, h2, h3, span, div, small, p, td, th, label) { color: var(--wp--preset--color--blanc); }
#af-wrapper :where(.forum-stats, .topic-stats, .forum-poster, .topic-poster, small, .indicator-label, .unread-topics) { color: var(--wp--preset--color--gris); }
#af-wrapper a { color: var(--wp--preset--color--dore); }
#af-wrapper :where(.content-container, .content-element, .forum, .topic, .post-element, #forum-header, #forum-navigation, #forum-statistics, .statistics-data, .editor-element) {
	background-color: var(--wp--preset--color--brume) !important;
	border-color: var(--wp--preset--color--trait) !important;
}
#af-wrapper .title-element { background-color: var(--wp--preset--color--olive) !important; color: var(--wp--preset--color--blanc) !important; border-color: var(--wp--preset--color--olive) !important; }
#af-wrapper #forum-header, #af-wrapper #forum-navigation a { color: var(--wp--preset--color--blanc) !important; }
#af-wrapper input, #af-wrapper textarea, #af-wrapper select { background: var(--wp--preset--color--fond); color: var(--wp--preset--color--blanc); border-color: var(--wp--preset--color--sauge); }#af-wrapper h1.main-title { color: var(--wp--preset--color--blanc) !important; font-family: var(--wp--preset--font-family--titre); font-weight: 500; }
#af-wrapper [class*="statistic"], #af-wrapper [class*="statistic"] * { background-color: var(--wp--preset--color--brume) !important; }#af-wrapper div[id^="statistics"], #af-wrapper div[id^="statistics"] * { background-color: var(--wp--preset--color--brume) !important; color: var(--wp--preset--color--gris) !important; }

/* Menus déroulants de l'en-tête */
.mm-entete .wp-block-navigation__submenu-container {
	background: var(--wp--preset--color--brume) !important;
	border: 1px solid var(--wp--preset--color--trait) !important;
	border-radius: 12px;
	padding: 0.5rem 0;
	min-width: 16rem !important;
}
.mm-entete .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.45rem 1.1rem !important; }
.mm-entete .wp-block-navigation__submenu-container a:hover { color: var(--wp--preset--color--dore); }
/* La Bourse, principale ressource du club, en pastille dans le menu */
.mm-entete .mm-nav-bourse > .wp-block-navigation-item__content {
	background: var(--wp--preset--color--dore);
	color: var(--wp--preset--color--encre) !important;
	padding: 0.3rem 0.85rem !important;
	border-radius: 999px;
	font-weight: 700;
}
.mm-entete .mm-nav-bourse > .wp-block-navigation__submenu-icon { color: var(--wp--preset--color--dore); }

/* Bandeau Bourse de l'accueil et grands chiffres */
.mm-bandeau-bourse { border: 1px solid var(--wp--preset--color--dore); }
.mm-compte { font-family: var(--wp--preset--font-family--titre); font-style: italic; color: var(--wp--preset--color--accent); }
.mm-chiffre { font-family: var(--wp--preset--font-family--titre); font-size: clamp(2.5rem, 5vw, 3.75rem); line-height: 1; margin: 0; }
.mm-carte-activite { display: flex; flex-direction: column; }
.mm-carte-activite > :last-child { margin-top: auto; padding-top: 0.5rem; }
/* Mention « photo à fournir » sur la grande bannière sans photo */
.mm-hero p.mm-a-fournir {
	display: inline-block;
	margin: 0 0 1.5rem;
	padding: 0.35rem 0.8rem;
	border: 1px dashed var(--wp--preset--color--sauge);
	border-radius: 999px;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gris);
}

/* Listes à coches */
ul.mm-etapes-coches { list-style: none; padding: 0; }
ul.mm-etapes-coches > li { position: relative; padding-left: 1.9rem; margin-bottom: 0.55rem; }
ul.mm-etapes-coches > li::before {
	content: "";
	position: absolute;
	left: 0.15rem;
	top: 0.45em;
	width: 0.9rem;
	height: 0.5rem;
	border-left: 2px solid var(--wp--preset--color--accent);
	border-bottom: 2px solid var(--wp--preset--color--accent);
	transform: rotate(-45deg);
}
/* Logo de la charte 2026 (truite avec contour blanc, lisible sur fond sombre) */
.mm-logo img { display: block; height: auto; }
.mm-entete .mm-logo { margin: -0.6rem 0; }
.mm-entete .mm-logo img { width: 190px; transition: transform .2s ease; }
.mm-entete .mm-logo a:hover img { transform: rotate(-3deg) scale(1.04); }
@media (max-width: 781px) { .mm-entete .mm-logo img { width: 120px; } }
/* Tablettes et petits portables : menu repliable (hamburger) plutôt qu'un menu sur plusieurs lignes */
@media (max-width: 1340px) {
	.mm-entete .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
	.mm-entete .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
}
/* Menu replié ouvert : liste simple alignée à gauche, rubriques en titres dorés */
.mm-entete .is-menu-open .wp-block-navigation__responsive-container-content,
.mm-entete .is-menu-open .wp-block-navigation__container,
.mm-entete .is-menu-open .wp-block-navigation-item { align-items: flex-start !important; text-align: left; }
.mm-entete .is-menu-open .wp-block-navigation__responsive-container-content { padding: 1rem var(--wp--style--root--padding-left); gap: 0.4rem; }
.mm-entete .is-menu-open .wp-block-navigation__container { gap: 1.1rem !important; width: 100%; }
.mm-entete .is-menu-open .wp-block-navigation__submenu-container {
	background: transparent !important;
	border: 0 !important;
	border-left: 2px solid var(--wp--preset--color--filet) !important;
	border-radius: 0;
	min-width: 0 !important;
	padding: 0.2rem 0 0.2rem 1rem !important;
	margin-top: 0.4rem;
	gap: 0.2rem;
}
.mm-entete .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.3rem 0 !important; color: var(--wp--preset--color--gris); }
.mm-entete .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.5rem;
	color: var(--wp--preset--color--blanc);
}
.mm-entete .is-menu-open .mm-nav-bourse > .wp-block-navigation-item__content { font-family: inherit; font-size: inherit; }
/* Rangées de cartes : elles remplissent toujours toute la largeur, quel que soit leur nombre */
.wp-block-post-content .is-layout-grid:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.wp-block-post-content .is-layout-grid:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wp-block-post-content .is-layout-grid:has(> :nth-child(4):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wp-block-post-content .is-layout-grid:has(> :nth-child(5):last-child) { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.wp-block-post-content .is-layout-grid:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) {
	.wp-block-post-content .is-layout-grid:has(> :nth-child(4):last-child),
	.wp-block-post-content .is-layout-grid:has(> :nth-child(5):last-child),
	.wp-block-post-content .is-layout-grid:has(> :nth-child(6):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.wp-block-post-content .is-layout-grid:has(> :nth-child(5):last-child) > :last-child { grid-column: 1 / -1; }
}
@media (max-width: 781px) {
	.wp-block-post-content .is-layout-grid:has(> :nth-child(3):last-child),
	.wp-block-post-content .is-layout-grid:has(> :nth-child(4):last-child),
	.wp-block-post-content .is-layout-grid:has(> :nth-child(5):last-child),
	.wp-block-post-content .is-layout-grid:has(> :nth-child(6):last-child) { grid-template-columns: minmax(0, 1fr); }
	.wp-block-post-content .is-layout-grid:has(> :nth-child(5):last-child) > :last-child { grid-column: auto; }
}

/* Marges latérales : 10 % de l'écran sur ordinateur, moins sur tablette et téléphone pour garder de la place au contenu */
@media (max-width: 1100px) { body { --wp--style--root--padding-left: 6vw; --wp--style--root--padding-right: 6vw; } }
@media (max-width: 781px) { body { --wp--style--root--padding-left: 1rem; --wp--style--root--padding-right: 1rem; } }
/* Logo un peu plus petit sur portable pour que le menu tienne sur la même ligne */
@media (max-width: 1500px) { .mm-entete .mm-logo img { width: 160px; } }
@media (max-width: 781px) { .mm-entete .mm-logo img { width: 88px; } }

/* Vidéos : la rangée remplit toujours la largeur, quel que soit le nombre de vignettes */
ul.mm-videos { grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); }
ul.mm-videos:has(> :nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 26rem)); }
ul.mm-videos:has(> :only-child) { grid-template-columns: minmax(0, 26rem); }
ul.mm-videos:has(> :nth-child(3):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
ul.mm-videos:has(> :nth-child(4):last-child),
ul.mm-videos:has(> :nth-child(8):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
ul.mm-videos:has(> :nth-child(5):last-child) { grid-template-columns: repeat(5, minmax(0, 1fr)); }
ul.mm-videos:has(> :nth-child(6):last-child) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) {
	ul.mm-videos:has(> :nth-child(4):last-child),
	ul.mm-videos:has(> :nth-child(5):last-child),
	ul.mm-videos:has(> :nth-child(6):last-child),
	ul.mm-videos:has(> :nth-child(8):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	ul.mm-videos:has(> :nth-child(5):last-child) > :last-child { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
	ul.mm-videos:has(> li) { grid-template-columns: minmax(0, 1fr) !important; }
	ul.mm-videos > :last-child { grid-column: auto !important; }
}

/* Couleurs de la charte : une teinte par thème, pour ne pas rester sur le seul jaune et blanc.
   olive clair = apprendre, sauge = lancer, ocre = montage, doré = Bourse, brique = compétition */
.wp-block-post-content > :nth-child(3n+2) h2 em,
.wp-block-post-content > :nth-child(3n+2) .mm-chiffre { color: var(--wp--preset--color--olive-clair); }
.wp-block-post-content > :nth-child(3n) h2 em,
.wp-block-post-content > :nth-child(3n) .mm-chiffre { color: var(--wp--preset--color--sauge-pale); }
.wp-block-post-content > :nth-child(3n+2) p.is-style-surtitre { color: var(--wp--preset--color--olive-clair); }
.wp-block-post-content > :nth-child(3n) p.is-style-surtitre { color: var(--wp--preset--color--sauge-pale); }

/* Pastille de thème au-dessus de chaque carte d'activité */
.mm-carte-activite p.is-style-surtitre {
	display: inline-block;
	padding: 0.28rem 0.75rem;
	border-radius: 999px;
	letter-spacing: 0.12em;
	background: var(--pastille, var(--wp--preset--color--olive));
	color: var(--pastille-texte, var(--wp--preset--color--blanc)) !important;
}
.mm-carte-activite:nth-child(6n+1) { --pastille: var(--wp--preset--color--olive-clair); --pastille-texte: var(--wp--preset--color--encre); }
.mm-carte-activite:nth-child(6n+2) { --pastille: var(--wp--preset--color--sauge-pale); --pastille-texte: var(--wp--preset--color--encre); }
.mm-carte-activite:nth-child(6n+3) { --pastille: var(--wp--preset--color--ocre); --pastille-texte: var(--wp--preset--color--encre); }
.mm-carte-activite:nth-child(6n+4) { --pastille: var(--wp--preset--color--olive); --pastille-texte: var(--wp--preset--color--blanc); }
.mm-carte-activite:nth-child(6n+5) { --pastille: var(--wp--preset--color--dore); --pastille-texte: var(--wp--preset--color--encre); }
.mm-carte-activite:nth-child(6n+6) { --pastille: var(--wp--preset--color--brique); --pastille-texte: var(--wp--preset--color--blanc); }
.mm-carte-activite.mm-bandeau-bourse p.is-style-surtitre { color: var(--wp--preset--color--encre); }
/* Filets colorés sous les titres de section et barre de couleur en haut des étapes */
.mm-etapes .mm-carte-activite, .wp-block-post-content .is-layout-grid > .mm-carte-activite[style*="border-top"] { border-top-color: var(--pastille, var(--wp--preset--color--filet)) !important; }

/* Réseaux sociaux du pied de page */
.mm-pied .mm-reseaux { margin-top: 1.25rem; gap: 0.6rem; }
.mm-pied .mm-reseaux .wp-block-social-link a { padding: 0.55rem 1.1rem; border-radius: 999px; font-weight: 700; }
.mm-pied .mm-reseaux .wp-social-link-facebook a { background: var(--wp--preset--color--olive-clair); color: var(--wp--preset--color--encre); }
.mm-pied .mm-reseaux .wp-social-link-youtube a { background: var(--wp--preset--color--brique); color: var(--wp--preset--color--blanc); }
.mm-pied .mm-reseaux .wp-block-social-link a:hover { filter: brightness(1.12); color: inherit; }
.mm-pied .mm-reseaux .wp-social-link-facebook a:hover { color: var(--wp--preset--color--encre); }
.mm-pied .mm-reseaux .wp-social-link-youtube a:hover { color: var(--wp--preset--color--blanc); }

/* Pages fusionnées : les sections ancrées ne passent pas sous l'en-tête quand on clique dans le menu */
.wp-block-post-content > .wp-block-group[id] { scroll-margin-top: 1rem; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
/* Règlement d'ordre intérieur : articles bien séparés, comme sur l'ancien site */
.mm-reglement > .wp-block-list { margin-bottom: 1.5rem; }
.mm-reglement > .wp-block-list > li > strong:first-child { color: var(--wp--preset--color--blanc); }
.mm-pied .mm-reseaux .wp-social-link-youtube a,
.mm-pied .mm-reseaux .wp-social-link-youtube .wp-block-social-link-label,
.mm-pied .mm-reseaux .wp-social-link-youtube svg { color: var(--wp--preset--color--blanc) !important; fill: currentColor; }
.mm-pied .mm-reseaux .wp-social-link-facebook a,
.mm-pied .mm-reseaux .wp-social-link-facebook .wp-block-social-link-label,
.mm-pied .mm-reseaux .wp-social-link-facebook svg { color: var(--wp--preset--color--encre) !important; fill: currentColor; }
