/*
 * Florence Gautier — podologie et réflexologie, Versailles.
 * Feuille de style du site (complète theme.json).
 *
 * Palette : prune #3A1F52, violet #8F3FCF (couleur historique du cabinet), violet profond #6E2BA8,
 * lavande #EDD7FF (couleur historique), lilas #F6EEFE, texte #2B1F35.
 * Typographies : Young Serif (titres), Atkinson Hyperlegible Next (texte, conçue pour la lisibilité).
 */

:root {
	--fg-prune: #3A1F52;
	--fg-violet: #8F3FCF;
	--fg-violet-profond: #6E2BA8;
	--fg-lavande: #EDD7FF;
	--fg-lilas: #F6EEFE;
	--fg-brume: #E6DAF0;
	--fg-texte: #2B1F35;
	--fg-gris: #5E5168;
	--fg-ouvert: #2F7A4E;
	--fg-rayon: 1.75rem;
	--fg-rayon-petit: 0.875rem;
	--fg-entete: 4.75rem;
	--fg-section: clamp(3.5rem, 2rem + 6vw, 7rem);
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--fg-entete) + 1rem);
	-webkit-text-size-adjust: 100%;
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}

body {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	font-variant-ligatures: common-ligatures;
	hanging-punctuation: first;
}

p, li, dd, td, summary { text-wrap: pretty; }
h1, h2, h3, .wp-block-heading { text-wrap: balance; }

::selection { background: var(--fg-lavande); color: var(--fg-prune); }

a { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
a:hover { text-decoration-thickness: 2px; }

:where(a, button, summary, input, textarea, select, [tabindex]):focus-visible {
	outline: 3px solid var(--fg-violet);
	outline-offset: 3px;
	border-radius: 4px;
}

.screen-reader-text {
	border: 0; clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden;
	padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}

/* ---------------------------------------------------------------- En-tête */

/* L'en-tête reste visible au défilement (c'est son conteneur de gabarit qui « colle »). */
.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
}
.admin-bar .wp-site-blocks > header.wp-block-template-part { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; } }
.fg-entete {
	position: relative;
	z-index: 1;
	background: transparent;
	border-bottom: 1px solid transparent;
	transition: border-color 0.2s ease;
}
/* Le flou est porté par un calque : posé sur l'en-tête lui-même, il enfermerait le menu mobile. */
.fg-entete::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: rgba(255, 255, 255, 0.94);
	-webkit-backdrop-filter: saturate(1.4) blur(10px);
	backdrop-filter: saturate(1.4) blur(10px);
}
.fg-entete.est-defile { border-bottom-color: var(--fg-brume); }

.fg-entete__barre {
	min-height: var(--fg-entete);
	gap: 1.5rem;
}
.fg-marque { gap: 0.875rem; align-items: center; }
.fg-marque .wp-block-site-logo img { display: block; }
.fg-marque__texte { gap: 0.1rem; }
.fg-marque .wp-block-site-title {
	margin: 0;
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.4375rem;
	line-height: 1.1;
	letter-spacing: -0.01em;
}
.fg-marque .wp-block-site-title a { color: var(--fg-prune); text-decoration: none; }
.fg-marque .wp-block-site-tagline {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.3;
	color: var(--fg-gris);
}

.fg-entete__actions { gap: clamp(0.75rem, 2vw, 2rem); }
.fg-menu .wp-block-navigation-item__content {
	color: var(--fg-texte);
	text-decoration: none;
	padding: 0.4rem 0.15rem;
	border-bottom: 2px solid transparent;
}
.fg-menu .wp-block-navigation-item__content:hover,
.fg-menu .current-menu-item > .wp-block-navigation-item__content {
	border-bottom-color: var(--fg-violet);
}
.fg-menu .wp-block-navigation__container { gap: clamp(1rem, 2vw, 2rem); }

.fg-entete__rdv .wp-block-button__link {
	padding: 0.72rem 1.25rem;
	font-size: 1rem;
}

/* Menu sur mobile (panneau plein écran du bloc Navigation). */
.fg-menu .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--fg-lilas) !important;
	padding: 1.5rem clamp(1rem, 5vw, 2.5rem);
}
.fg-menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.fg-menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	gap: 1.25rem;
	align-items: flex-start !important;
}
.fg-menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; }
.fg-menu .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-family: var(--wp--preset--font-family--titre);
	font-size: 2rem;
	color: var(--fg-prune);
}
.fg-menu .wp-block-navigation__responsive-container-open,
.fg-menu .wp-block-navigation__responsive-container-close {
	color: var(--fg-prune);
	padding: 0.5rem;
	border-radius: 999px;
}
.fg-menu .wp-block-navigation__responsive-container-open svg,
.fg-menu .wp-block-navigation__responsive-container-close svg { width: 28px; height: 28px; }

@media (max-width: 640px) {
	.fg-entete .fg-entete__rdv { display: none !important; }
	.fg-marque .wp-block-site-title { font-size: 1.25rem; }
	.fg-marque .wp-block-site-tagline { font-size: 0.8125rem; }
}

/* ---------------------------------------------------------------- Boutons */

.wp-block-button__link {
	transition: background-color 0.18s ease, color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
	text-decoration: none;
}
.wp-block-button.fg-bouton-principal .wp-block-button__link {
	padding: 1.1rem 1.9rem;
	font-size: 1.125rem;
	box-shadow: 0 10px 24px -14px rgba(110, 43, 168, 0.9);
}
.wp-block-button.is-style-contour .wp-block-button__link {
	background: transparent;
	color: var(--fg-violet-profond);
	box-shadow: inset 0 0 0 2px var(--fg-violet-profond);
}
.wp-block-button.is-style-contour .wp-block-button__link:hover {
	background: var(--fg-lilas);
	color: var(--fg-prune);
}
.wp-block-button.is-style-clair .wp-block-button__link {
	background: #fff;
	color: var(--fg-prune);
}
.wp-block-button.is-style-clair .wp-block-button__link:hover { background: var(--fg-lavande); }
.wp-block-button.is-style-contour-clair .wp-block-button__link {
	background: transparent;
	color: #fff;
	box-shadow: inset 0 0 0 2px rgba(237, 215, 255, 0.6);
}
.wp-block-button.is-style-contour-clair .wp-block-button__link:hover { box-shadow: inset 0 0 0 2px #fff; }


/* ---------------------------------------------------------------- Sections */

.fg-section {
	padding-top: var(--fg-section);
	padding-bottom: var(--fg-section);
}
.fg-section:not(.has-background) + .fg-section:not(.has-background) { padding-top: 0; }

/* Les sections se touchent : pas de marge entre elles, ni avant le pied de page. */
.wp-site-blocks > * + * { margin-block-start: 0; }
.fg-principal { margin-block: 0; }
.fg-principal > .wp-block-post-content > * { margin-block: 0; }
.fg-principal > .wp-block-post-content > .alignfull + .alignfull { margin-block-start: 0; }
.fg-section__titre { margin-bottom: clamp(1.5rem, 1rem + 2vw, 3rem); }

.fg-lien-suite { margin-top: 1.75rem; }
.fg-lien-suite a {
	font-weight: 700;
	color: inherit;
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.3em;
}
.fg-lien-suite a:hover { text-decoration-color: var(--fg-violet); }

/* ---------------------------------------------------------------- Accueil : en-tête */

.fg-hero {
	padding-top: clamp(1.5rem, 1rem + 3vw, 4rem);
	padding-bottom: clamp(1rem, 0.5rem + 2vw, 2.5rem);
	overflow: hidden;
}
.fg-hero__grille { gap: clamp(2rem, 1rem + 4vw, 5rem); }
.fg-hero__titre {
	margin: 0 0 1rem;
	font-family: var(--wp--preset--font-family--texte);
	font-weight: 700;
	font-size: clamp(1.0625rem, 0.95rem + 0.4vw, 1.25rem);
	line-height: 1.3;
	letter-spacing: 0.01em;
	color: var(--fg-violet-profond);
}
.fg-hero__accroche {
	margin: 0;
	max-width: 12ch;
	font-family: var(--wp--preset--font-family--titre);
	font-size: var(--wp--preset--font-size--geant);
	line-height: 1.04;
	letter-spacing: -0.025em;
	color: var(--fg-prune);
	text-wrap: balance;
}
.fg-hero__chapeau {
	margin-top: clamp(1.25rem, 1rem + 1vw, 2rem);
	max-width: 34rem;
	color: var(--fg-texte);
	line-height: 1.5;
}
.fg-hero__boutons { margin-top: 2rem; gap: 0.75rem; }

/* Carte des pressions plantaires : la plateforme et ses deux empreintes. */
.fg-pressions { margin: 0 auto; max-width: 30rem; }
.fg-pressions__plaque {
	position: relative;
	aspect-ratio: 1;
	border-radius: 2rem;
	overflow: hidden;
	background: radial-gradient(120% 90% at 50% 38%, #2C173B 0%, #170B22 72%);
	box-shadow: 0 30px 60px -36px rgba(58, 31, 82, 0.75), inset 0 0 0 1px rgba(237, 215, 255, 0.08);
}
.fg-pressions__plaque canvas,
.fg-pressions__fixe { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.fg-pressions.est-pret .fg-pressions__fixe { visibility: hidden; }
.fg-pressions__pied {
	position: absolute;
	bottom: 0.9rem;
	font-size: 0.75rem;
	letter-spacing: 0.02em;
	color: rgba(237, 215, 255, 0.72);
	font-variant-numeric: tabular-nums;
}
.fg-pressions__pied b { color: #fff; font-weight: 700; margin-left: 0.25rem; }
.fg-pressions__pied--g { left: 1.1rem; }
.fg-pressions__pied--d { right: 1.1rem; }
.fg-pressions__legende {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0.9rem 0.25rem 0;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: var(--fg-gris);
}
.fg-pressions__echelle {
	flex: none;
	width: 4.5rem;
	height: 0.5rem;
	border-radius: 999px;
	background: linear-gradient(90deg, #1A2FB8, #1E78E8, #22CDD4, #39C23E, #E8E22A, #F59A1E, #E3261B);
}

/* Indication ouvert / fermé */
.fg-statut {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin-top: 1.5rem;
	font-size: 0.9375rem;
	color: var(--fg-gris);
}
.fg-statut__point {
	flex: none;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 50%;
	background: #B9AEC2;
}
.fg-statut.est-ouvert { color: var(--fg-texte); }
.fg-statut.est-ouvert .fg-statut__point {
	background: var(--fg-ouvert);
	box-shadow: 0 0 0 4px rgba(47, 122, 78, 0.16);
}

/* ---------------------------------------------------------------- Accueil : deux approches */

.fg-approches__grille { gap: clamp(1rem, 0.5rem + 1.5vw, 1.75rem); }
.fg-panneau {
	border-radius: var(--fg-rayon);
	padding: clamp(1.75rem, 1rem + 3vw, 3.5rem);
}
.fg-panneau > * { max-width: 36rem; }
.fg-panneau__titre {
	font-size: var(--wp--preset--font-size--grand);
	margin-bottom: 1.25rem;
}
.fg-panneau--podologie {
	background: var(--fg-prune);
	color: var(--fg-lavande);
}
.fg-panneau--podologie .fg-panneau__titre,
.fg-panneau--podologie a { color: #fff; }
.fg-panneau--reflexologie {
	background: var(--fg-lavande);
	color: var(--fg-prune);
}
.fg-panneau--reflexologie a { color: var(--fg-prune); }

/* ---------------------------------------------------------------- Accueil : atelier */

.fg-atelier__grille { gap: clamp(2rem, 1rem + 4vw, 5rem); }
/* ---------------------------------------------------------------- Accueil : cabinet */

.fg-cabinet__grille { gap: clamp(2rem, 1rem + 4vw, 5rem); align-items: center; }
.fg-cabinet__grille.sans-photo > .wp-block-column { flex-basis: 100% !important; max-width: 44rem; }
.fg-signature {
	margin-top: 2rem;
	padding-left: 1.25rem;
	border-left: 3px solid var(--fg-violet);
	font-family: var(--wp--preset--font-family--titre);
	font-size: var(--wp--preset--font-size--moyen);
	line-height: 1.35;
	color: var(--fg-violet-profond);
}

/* ---------------------------------------------------------------- Questions */

.fg-faq__grille { gap: clamp(1.5rem, 1rem + 4vw, 5rem); }
.fg-faq__grille > .wp-block-column:first-child .wp-block-heading { margin-top: 0; position: sticky; top: calc(var(--fg-entete) + 2rem); }
.fg-faq .fg-question:first-of-type { border-top: 1px solid var(--fg-brume); }
.fg-question {
	border-top: 1px solid var(--fg-brume);
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}
.fg-question:last-of-type { border-bottom: 1px solid var(--fg-brume); }
.fg-question summary {
	list-style: none;
	cursor: pointer;
	position: relative;
	padding: 1.25rem 3rem 1.25rem 0;
	font-weight: 700;
	font-size: 1.1875rem;
	line-height: 1.4;
	color: var(--fg-prune);
}
.fg-question summary::-webkit-details-marker { display: none; }
.fg-question summary::after {
	content: "";
	position: absolute;
	right: 0.25rem;
	top: 50%;
	width: 1.75rem;
	height: 1.75rem;
	margin-top: -0.875rem;
	border-radius: 50%;
	background:
		linear-gradient(var(--fg-violet-profond), var(--fg-violet-profond)) center / 0.75rem 2px no-repeat,
		linear-gradient(var(--fg-violet-profond), var(--fg-violet-profond)) center / 2px 0.75rem no-repeat,
		var(--fg-lilas);
	transition: transform 0.2s ease;
}
.fg-question[open] summary::after {
	transform: rotate(45deg);
}
.fg-question summary:hover { color: var(--fg-violet-profond); }
.fg-question > :not(summary) { margin-top: 0; padding-bottom: 1.25rem; max-width: 40rem; }

/* ---------------------------------------------------------------- Coordonnées, accès, horaires */

.fg-venir__grille { gap: clamp(2rem, 1rem + 4vw, 5rem); }

.fg-coordonnees,
.fg-acces {
	list-style: none;
	padding: 0;
	margin: 1.25rem 0 0;
	display: grid;
	gap: 0.85rem;
}
.fg-coordonnees li,
.fg-acces li {
	display: grid;
	grid-template-columns: 1.5rem 1fr;
	gap: 0.85rem;
	align-items: start;
	line-height: 1.5;
}
.fg-icone { width: 1.5rem; height: 1.5rem; color: var(--fg-violet); margin-top: 0.05rem; }
.fg-coordonnees a { color: inherit; }
.fg-acces { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--fg-brume); }

.fg-itineraire { margin-top: 1.75rem; }
.fg-itineraire__liens { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1rem; }
.fg-pastille {
	display: inline-flex;
	align-items: center;
	padding: 0.45rem 1rem;
	border-radius: 999px;
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--fg-brume);
	color: var(--fg-prune);
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
}
.fg-pastille:hover { box-shadow: inset 0 0 0 2px var(--fg-violet); }

.fg-plan {
	border-radius: var(--fg-rayon-petit);
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--fg-brume);
	padding: 1rem 1.25rem;
}
.fg-plan__bouton {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	border: 0;
	background: none;
	padding: 0.25rem 0;
	font: inherit;
	font-weight: 700;
	color: var(--fg-violet-profond);
	cursor: pointer;
}
.fg-plan__bouton:hover span { text-decoration: underline; text-underline-offset: 0.2em; }
.fg-plan__note { margin: 0.35rem 0 0; font-size: 0.875rem; color: var(--fg-gris); }
.fg-plan.est-charge { padding: 0; overflow: hidden; }
.fg-plan iframe { display: block; width: 100%; aspect-ratio: 4 / 3; border: 0; }

.fg-horaires {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-top: 1rem;
}
.fg-horaires th,
.fg-horaires td {
	text-align: left;
	vertical-align: top;
	padding: 0.7rem 0.75rem;
	border-bottom: 1px solid var(--fg-brume);
}
.fg-horaires th { font-weight: 700; width: 7.5rem; color: var(--fg-prune); }
.fg-horaires__note {
	display: block;
	margin-top: 0.15rem;
	font-size: 0.9375rem;
	color: var(--fg-gris);
}
.fg-horaires .est-ferme td,
.fg-horaires .est-ferme th { color: var(--fg-gris); font-weight: 400; }
.fg-horaires .est-aujourdhui th,
.fg-horaires .est-aujourdhui td { background: #fff; }
.fg-horaires .est-aujourdhui th { border-radius: 0.75rem 0 0 0.75rem; box-shadow: inset 3px 0 0 var(--fg-violet); }
.fg-horaires .est-aujourdhui td { border-radius: 0 0.75rem 0.75rem 0; }
.fg-horaires:not(.fg-horaires--compact) .est-aujourdhui th::after {
	content: "aujourd’hui";
	display: block;
	font-weight: 400;
	font-size: 0.8125rem;
	color: var(--fg-violet-profond);
}

/* ---------------------------------------------------------------- Tête des pages intérieures */

.fg-tete {
	position: relative;
	padding-top: clamp(2.5rem, 1.5rem + 4vw, 5.5rem);
	padding-bottom: clamp(2.5rem, 1.5rem + 4vw, 5rem);
	background: var(--fg-lilas);
	overflow: hidden;
	isolation: isolate;
}
.fg-tete::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: max(-6rem, calc((100vw - 76rem) / 2 - 8rem));
	top: 50%;
	width: clamp(16rem, 30vw, 26rem);
	aspect-ratio: 148 / 282;
	transform: translateY(-50%) rotate(14deg);
	background: url("../images/empreinte.svg") center / contain no-repeat;
	opacity: 0.55;
	pointer-events: none;
}
.fg-tete--simple::after { display: none; }
.fg-tete h1 { margin: 0; max-width: 16ch; }
.fg-tete__chapeau {
	margin-top: 1.25rem !important;
	max-width: 38rem;
	line-height: 1.5;
}
.fg-tete .wp-block-buttons { margin-top: 2rem; }
@media (max-width: 781px) {
	.fg-tete::after { opacity: 0.22; right: -7rem; }
}

/* ---------------------------------------------------------------- Pages intérieures : sections éditoriales */

.fg-section__grille { gap: clamp(1.25rem, 1rem + 4vw, 5rem); }
.fg-section__gauche .wp-block-heading {
	margin-top: 0;
	font-size: var(--wp--preset--font-size--grand);
	line-height: 1.12;
}
@media (min-width: 782px) {
	.fg-section__gauche > .wp-block-heading { position: sticky; top: calc(var(--fg-entete) + 2rem); }
}
.fg-section__droite > :first-child { margin-top: 0; }
.fg-section__droite > * { max-width: 44rem; }
.fg-section__droite > .fg-items,
.fg-section__droite > .fg-etapes,
.fg-section__droite > .wp-block-columns,
.fg-section__droite > .fg-galerie,
.fg-section__droite > .fg-montage,
.fg-section__droite > .fg-carte { max-width: none; }
.fg-section--premiere { padding-top: clamp(3rem, 2rem + 4vw, 6rem); }
.fg-section.has-background + .fg-section:not(.has-background),
.fg-section:not(.has-background) + .fg-section.has-background { padding-top: var(--fg-section); }

.fg-intertitre {
	margin-top: 2.5rem !important;
	font-size: var(--wp--preset--font-size--moyen);
}
.fg-intertitre--premier { margin-top: 0 !important; }
.fg-petit { font-size: 0.9375rem; color: var(--fg-gris); }
.fg-sans-marge { margin-bottom: 0.25rem; }

/* Publics, motifs : une grille sobre, filet au-dessus de chaque élément */
.fg-items { gap: 0 clamp(1.5rem, 1rem + 2vw, 3rem) !important; margin-top: 2rem; }
.fg-item {
	border-top: 1px solid var(--fg-brume);
	padding: 1.25rem 0 0.5rem;
}
.has-lilas-background-color .fg-item { border-top-color: #E2D2F2; }
.fg-item__titre {
	margin: 0 0 0.35rem;
	font-size: 1.375rem;
}
.fg-item p { margin: 0; color: var(--fg-texte); }

/* Étapes numérotées (de vraies séquences : bilan, séance, méthode) */
.fg-etapes { counter-reset: fg-etape; margin-top: 2rem; }
.fg-etapes > * + * { margin-top: 0; }
.fg-etape {
	counter-increment: fg-etape;
	display: grid;
	grid-template-columns: clamp(2.75rem, 2rem + 2.5vw, 4.5rem) 1fr;
	column-gap: clamp(0.75rem, 0.5rem + 1.5vw, 2rem);
	padding: clamp(1.25rem, 1rem + 1vw, 2rem) 0;
	border-top: 1px solid var(--fg-brume);
}
.has-lilas-background-color .fg-etape { border-top-color: #E2D2F2; }
.fg-etape::before {
	content: counter(fg-etape);
	grid-row: 1 / span 6;
	font-family: var(--wp--preset--font-family--titre);
	font-size: clamp(2.25rem, 1.6rem + 2.2vw, 3.5rem);
	line-height: 0.95;
	color: var(--fg-violet);
}
.fg-etape > * { grid-column: 2; margin: 0; }
.fg-etape > * + * { margin-top: 0.6rem; }
.fg-etape h3 { margin-bottom: 0.25rem; }

/* Frise du parcours */
.fg-frise { position: relative; margin-top: 0; }
.fg-frise > * + * { margin-top: 0; }
.fg-jalon {
	position: relative;
	display: grid;
	grid-template-columns: 5.5rem 1fr;
	gap: 1.25rem;
	padding: 0 0 2rem;
}
.fg-jalon::before {
	content: "";
	position: absolute;
	left: 4.35rem;
	top: 0.5rem;
	bottom: -0.5rem;
	width: 2px;
	background: var(--fg-lavande);
}
.fg-jalon:last-child::before { display: none; }
.fg-jalon::after {
	content: "";
	position: absolute;
	left: calc(4.35rem - 5px);
	top: 0.45rem;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--fg-violet);
	box-shadow: 0 0 0 4px var(--fg-lilas);
}
.fg-jalon > p { margin: 0; }
.fg-jalon__annee {
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.5rem;
	line-height: 1.1;
	color: var(--fg-violet-profond);
}

/* Tête avec portrait ou image */
/* Textes longs (mentions, confidentialité) */
.fg-texte-courant > h2:first-child { margin-top: 0; }

/* ---------------------------------------------------------------- Textes courants */

.fg-intro { max-width: 44rem; }
.fg-colonnes-texte { gap: clamp(2rem, 1rem + 4vw, 5rem); }

/* Étapes numérotées (vraies séquences : consultation, séance, méthode) */
.fg-etapes {
	list-style: none;
	counter-reset: fg-etape;
	padding: 0 !important;
	margin: clamp(1.5rem, 1rem + 2vw, 3rem) 0 0;
	display: grid;
	gap: 0;
}
.fg-etapes > li {
	counter-increment: fg-etape;
	display: grid;
	grid-template-columns: clamp(3rem, 2rem + 3vw, 5rem) 1fr;
	column-gap: clamp(1rem, 0.5rem + 2vw, 2.5rem);
	padding: clamp(1.25rem, 1rem + 1vw, 2rem) 0;
	border-top: 1px solid var(--fg-brume);
}
.fg-etapes > li::before {
	content: counter(fg-etape);
	grid-row: span 2;
	font-family: var(--wp--preset--font-family--titre);
	font-size: clamp(2.25rem, 1.5rem + 2.5vw, 3.5rem);
	line-height: 1;
	color: var(--fg-violet);
}
.fg-etapes > li > strong {
	display: block;
	font-family: var(--wp--preset--font-family--titre);
	font-weight: 400;
	font-size: var(--wp--preset--font-size--moyen);
	line-height: 1.25;
	color: var(--fg-prune);
	margin-bottom: 0.4rem;
}
.fg-etapes > li > span { display: block; max-width: 40rem; }

/* Listes de publics, de motifs : en grille aérée */
.fg-grille-liste {
	list-style: none;
	padding: 0 !important;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 0 clamp(1.5rem, 1rem + 2vw, 3rem);
}
.fg-grille-liste > li {
	padding: 1.1rem 0;
	border-top: 1px solid var(--fg-brume);
}
.fg-grille-liste > li > strong {
	display: block;
	font-family: var(--wp--preset--font-family--titre);
	font-weight: 400;
	font-size: 1.375rem;
	color: var(--fg-prune);
	margin-bottom: 0.2rem;
}

.fg-liste-simple { padding-left: 1.2rem !important; }
.fg-liste-simple li { padding-left: 0.35rem; margin-bottom: 0.45rem; }
.fg-liste-simple li::marker { color: var(--fg-violet); }

/* Encadrés */
.wp-block-group.is-style-encadre,
.fg-encadre {
	border-radius: var(--fg-rayon);
	background: var(--fg-lilas);
	padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
}
.fg-encadre--prune { background: var(--fg-prune); color: var(--fg-lavande); }
.fg-encadre--prune .wp-block-heading { color: #fff; }
.fg-encadre--prune a { color: #fff; }
.fg-avertissement {
	border-left: 3px solid var(--fg-violet);
	padding: 0.25rem 0 0.25rem 1.25rem;
	color: var(--fg-texte);
}

/* Deux types de semelles */
.fg-deux { gap: clamp(1rem, 0.5rem + 1.5vw, 1.75rem); }
.fg-deux > .wp-block-column {
	border-radius: var(--fg-rayon);
	padding: clamp(1.5rem, 1rem + 2vw, 2.5rem);
	background: #fff;
	box-shadow: inset 0 0 0 1px var(--fg-brume);
}
.fg-deux h3 { margin-top: 0; }

/* Frise du parcours */
.fg-frise {
	list-style: none;
	padding: 0 !important;
	margin: 2rem 0 0;
	position: relative;
}
.fg-frise::before {
	content: "";
	position: absolute;
	left: 3.4rem;
	top: 0.6rem;
	bottom: 0.6rem;
	width: 2px;
	background: var(--fg-lavande);
}
.fg-frise > li {
	position: relative;
	display: grid;
	grid-template-columns: 4.6rem 1fr;
	gap: 1.25rem;
	padding: 0 0 2rem;
}
.fg-frise > li::after {
	content: "";
	position: absolute;
	left: calc(3.4rem - 5px);
	top: 0.45rem;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: var(--fg-violet);
	box-shadow: 0 0 0 4px #fff;
}
.fg-frise > li > strong {
	font-family: var(--wp--preset--font-family--titre);
	font-weight: 400;
	font-size: 1.375rem;
	line-height: 1.2;
	color: var(--fg-violet-profond);
}
.fg-frise > li > span { padding-left: 0.5rem; }

/* ---------------------------------------------------------------- Carte de réflexologie */

.fg-carte {
	display: grid;
	grid-template-columns: minmax(11rem, 17rem) 1fr;
	gap: clamp(1.25rem, 1rem + 2vw, 3rem);
	align-items: center;
	margin-top: 1rem;
}
.fg-carte__visuel { text-align: center; }
.fg-carte__pied { width: 100%; height: auto; max-height: 30rem; overflow: visible; }
.fg-carte__fond { fill: var(--fg-lilas); }
.fg-zone {
	fill: #F1E6FD;
	stroke: #fff;
	stroke-width: 1.1;
	transition: fill 0.2s ease;
	cursor: pointer;
}
.fg-zone--alt { fill: #E6D5FA; }
.fg-zone--reins, .fg-zone--vessie { fill: #DCC4F8; }
.fg-zone--colonne { fill: #C9A7F2; stroke: none; }
.fg-zone.est-active { fill: var(--fg-violet); }
.fg-zone--colonne.est-active { fill: var(--fg-violet-profond); }
.fg-carte__diaphragme { fill: none; stroke: var(--fg-violet); stroke-width: 0.8; stroke-dasharray: 2.4 2; pointer-events: none; }
.fg-carte__contour { fill: none; stroke: var(--fg-prune); stroke-width: 1; }
.fg-carte__note { margin: 0.5rem 0 0; font-size: 0.8125rem; color: var(--fg-gris); }

.fg-carte__zones { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); gap: 0.25rem 0.5rem; }
.fg-carte__bouton {
	width: 100%;
	display: grid;
	grid-template-columns: 0.85rem 1fr;
	column-gap: 0.85rem;
	text-align: left;
	border: 0;
	border-radius: var(--fg-rayon-petit);
	background: transparent;
	padding: 0.7rem 0.9rem;
	font: inherit;
	color: var(--fg-texte);
	cursor: pointer;
	transition: background-color 0.15s ease;
}
.fg-carte__bouton:hover,
.fg-carte__bouton.est-survol { background: var(--fg-lilas); }
.fg-carte__bouton[aria-pressed="true"] { background: var(--fg-lavande); }
.fg-carte__pastille {
	grid-row: span 2;
	width: 0.85rem;
	height: 0.85rem;
	margin-top: 0.3rem;
	border-radius: 50%;
	box-shadow: inset 0 0 0 2px var(--fg-violet);
}
.fg-carte__bouton[aria-pressed="true"] .fg-carte__pastille { background: var(--fg-violet); }
.fg-carte__titre { font-weight: 700; color: var(--fg-prune); }
.fg-carte__texte { font-size: 0.9375rem; color: var(--fg-gris); line-height: 1.45; }

@media (max-width: 560px) {
	.fg-carte { grid-template-columns: 1fr; }
	.fg-carte__visuel {
		position: sticky;
		top: calc(var(--fg-entete) - 0.25rem);
		z-index: 2;
		padding: 0.5rem 0;
		background: linear-gradient(#fff 85%, rgba(255, 255, 255, 0));
	}
	.fg-carte__pied { max-height: 34vh; }
}

/* ---------------------------------------------------------------- Mentions légales */

.fg-mentions { margin: 1.5rem 0 0; display: grid; gap: 0; }
.fg-mentions > div {
	display: grid;
	grid-template-columns: minmax(10rem, 15rem) 1fr;
	gap: 1rem;
	padding: 0.85rem 0;
	border-top: 1px solid var(--fg-brume);
}
.fg-mentions dt { font-weight: 700; color: var(--fg-prune); }
.fg-mentions dd { margin: 0; }
@media (max-width: 560px) { .fg-mentions > div { grid-template-columns: 1fr; gap: 0.15rem; } }

.fg-texte-courant h2 { font-size: var(--wp--preset--font-size--grand); margin-top: 2.75rem; }
.fg-texte-courant h3 { margin-top: 2rem; }

.fg-tableau table { border-collapse: collapse; width: 100%; }
.fg-tableau th, .fg-tableau td { border: 0; border-bottom: 1px solid var(--fg-brume); padding: 0.85rem 0.5rem; text-align: left; }
.fg-tableau thead th { color: var(--fg-prune); border-bottom: 2px solid var(--fg-prune); }

/* ---------------------------------------------------------------- Page introuvable */

.fg-introuvable { padding-top: var(--fg-section); padding-bottom: var(--fg-section); }
.fg-liste-pages { font-size: 1.1875rem; }
.fg-liste-pages li { margin-bottom: 0.5rem; }

/* ---------------------------------------------------------------- Pied de page */

.fg-pied {
	padding-top: clamp(3rem, 2rem + 4vw, 5.5rem);
	padding-bottom: 2rem;
	margin-top: 0 !important;
}
.fg-pied a { color: #fff; }
.fg-pied__appel {
	gap: 1.5rem 2rem;
	padding-bottom: clamp(2.5rem, 2rem + 2vw, 4rem);
	border-bottom: 1px solid rgba(237, 215, 255, 0.18);
}
.fg-pied__titre {
	margin: 0;
	font-size: var(--wp--preset--font-size--grand);
	max-width: 18ch;
}
.fg-pied__boutons { gap: 0.75rem; }
.fg-pied__colonnes { padding-top: clamp(2.5rem, 2rem + 2vw, 3.5rem); gap: clamp(2rem, 1rem + 3vw, 4rem); }
.fg-pied__nom {
	margin: 0 0 0.5rem;
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.75rem;
	color: #fff;
}
.fg-pied__nom a { text-decoration: none; }
.fg-pied__profession { max-width: 22rem; color: var(--fg-lavande); }
.fg-pied__intertitre {
	font-family: var(--wp--preset--font-family--texte);
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0;
	margin: 0 0 0.25rem;
}
.fg-pied .fg-icone { color: var(--fg-lavande); }
.fg-pied .fg-coordonnees { margin-top: 1rem; }
.fg-pied .fg-horaires th,
.fg-pied .fg-horaires td {
	color: var(--fg-lavande);
	border-bottom-color: rgba(237, 215, 255, 0.14);
	padding: 0.45rem 0.5rem 0.45rem 0;
	font-size: 0.9375rem;
	background: transparent;
	box-shadow: none;
}
.fg-pied .fg-horaires th { width: 6rem; color: #fff; }
.fg-pied .fg-horaires .est-ferme th,
.fg-pied .fg-horaires .est-ferme td { color: rgba(237, 215, 255, 0.6); }
.fg-pied .fg-horaires .est-aujourdhui th,
.fg-pied .fg-horaires .est-aujourdhui td { color: #fff; font-weight: 700; border-radius: 0; }
.fg-pied__bas {
	margin-top: clamp(2.5rem, 2rem + 2vw, 3.5rem);
	padding-top: 1.5rem;
	border-top: 1px solid rgba(237, 215, 255, 0.18);
	font-size: 0.875rem;
	color: rgba(237, 215, 255, 0.82);
	gap: 0.75rem 2rem;
}
.fg-pied__bas p { margin: 0; }
.fg-liens-legaux { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; }
.fg-liens-legaux a { color: rgba(237, 215, 255, 0.92); }

/* ---------------------------------------------------------------- Barre mobile */

.fg-barre { display: none; }
@media (max-width: 781px) {
	body { padding-bottom: calc(4.75rem + env(safe-area-inset-bottom)); }
	.fg-barre {
		display: flex;
		gap: 0.5rem;
		position: fixed;
		z-index: 60;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 0.6rem clamp(0.75rem, 3vw, 1rem) calc(0.6rem + env(safe-area-inset-bottom));
		background: rgba(255, 255, 255, 0.96);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		box-shadow: 0 -1px 0 var(--fg-brume), 0 -10px 30px -18px rgba(58, 31, 82, 0.45);
	}
	.fg-barre a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 0.6rem;
		min-height: 3.25rem;
		border-radius: 999px;
		font-weight: 700;
		text-decoration: none;
	}
	.fg-barre__rdv { flex: 1; background: var(--fg-violet); color: #fff; font-size: 1.0625rem; }
	.fg-barre__rdv:active { background: var(--fg-violet-profond); }
	.fg-barre__tel { flex: none; width: 3.25rem; background: var(--fg-lilas); color: var(--fg-prune); box-shadow: inset 0 0 0 1px var(--fg-brume); }
	.fg-barre .fg-icone { color: currentColor; margin: 0; }
}

/* ---------------------------------------------------------------- Mobile : ajustements généraux */

@media (max-width: 781px) {
	.fg-hero__visuel { width: 100%; margin-top: 1rem; }
	.fg-pressions { max-width: 22rem; }
	.fg-hero__accroche { max-width: 14ch; }
	.fg-hero { padding-top: 1.25rem; }
	.fg-atelier__visuel { order: 2; }
	.fg-pied__titre { max-width: none; }
}

@media print {
	.fg-entete, .fg-barre, .fg-pied__appel, .fg-plan, .wp-block-buttons { display: none !important; }
	.fg-tete { background: none; }
	.fg-tete::after { display: none; }
}


/* ---------------------------------------------------------------- Emblème dans l'en-tête */

.fg-embleme { display: block; flex: none; line-height: 0; }
.fg-embleme__image { width: 3.25rem; height: 3.25rem; object-fit: contain; }
@media (max-width: 640px) { .fg-embleme__image { width: 2.75rem; height: 2.75rem; } }

/* ---------------------------------------------------------------- Photos */

.fg-photo { margin: 0; }
.fg-photo__image { display: block; width: 100%; height: auto; border-radius: var(--fg-rayon); }
.fg-portrait .fg-photo__image { aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 22%; }
.fg-photo-tete { max-width: 17rem; margin-left: auto; }
.fg-photo-tete .fg-photo__image { box-shadow: 0 24px 50px -30px rgba(58, 31, 82, 0.6); }
.fg-photo-page { margin-bottom: 1.5rem; }
.fg-photo-page .fg-photo__image { aspect-ratio: 16 / 9; object-fit: cover; }
.fg-photo-sport { margin-top: 2rem; max-width: 36rem; }
.fg-photo-sport .fg-photo__image { aspect-ratio: 3 / 2; object-fit: cover; }
.fg-badge { max-width: 9.5rem; margin-inline: auto; }
.fg-badge .fg-photo__image { border-radius: 0; filter: drop-shadow(0 10px 18px rgba(58, 31, 82, 0.18)); }
.fg-badge__legende { max-width: 15rem; margin: 0.75rem auto 0; text-align: center; font-size: 0.875rem; color: var(--fg-gris); }

/* Emplacement vide : rien pour les visiteurs, un cadre pour l'administratrice. */
.fg-photo-vide {
	display: grid;
	place-items: center;
	gap: 0.35rem;
	min-height: 11rem;
	padding: 1.5rem;
	border: 2px dashed #CDB3EE;
	border-radius: var(--fg-rayon);
	background: rgba(246, 238, 254, 0.6);
	color: var(--fg-violet-profond);
	text-align: center;
	text-decoration: none;
	font-weight: 700;
}
.fg-photo-vide small { font-weight: 400; color: var(--fg-gris); }
.wp-block-column:has(> .fg-photo-absente:only-child),
.wp-block-column:has(> .wp-block-shortcode-wrapper > .fg-photo-absente) { display: none; }
.wp-block-columns:has(> .wp-block-column > .fg-photo-absente:only-child) > .wp-block-column { flex-basis: 100% !important; }
.fg-photo-absente + .fg-badge__legende,
.wp-block-column:has(> .fg-photo-absente:only-child) + .wp-block-column .fg-photo-absente { display: none; }
.fg-tete--media:has(.fg-tete__media > .fg-photo-absente) .fg-tete__media { display: none; }
.fg-tete--media:has(.fg-tete__media > .fg-photo-absente) .fg-tete__texte { flex-basis: 100% !important; }
.fg-galerie__titre:has(+ .fg-photo-absente),
.fg-galerie__titre:has(+ .fg-galerie__conteneur > .fg-photo-absente) { display: none; }

/* Galerie du cabinet */
.fg-galerie__titre { margin-top: clamp(2.5rem, 2rem + 3vw, 4.5rem) !important; }
.fg-galerie {
	list-style: none;
	margin: 1.25rem 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
	gap: clamp(0.75rem, 0.5rem + 1vw, 1.25rem);
}
.fg-galerie--une { grid-template-columns: minmax(0, 36rem); }
.fg-galerie__element figure { margin: 0; }
.fg-galerie__element figcaption { margin-top: 0.5rem; font-size: 0.875rem; color: var(--fg-gris); }
.fg-galerie__bouton {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	border-radius: var(--fg-rayon-petit);
	overflow: hidden;
	background: var(--fg-lilas);
	cursor: zoom-in;
}
.fg-galerie__image { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; transition: transform 0.4s ease; }
.fg-galerie__bouton:hover .fg-galerie__image { transform: scale(1.03); }
.fg-galerie__loupe {
	position: absolute;
	right: 0.6rem;
	bottom: 0.6rem;
	display: grid;
	place-items: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	color: var(--fg-prune);
}
.fg-galerie__loupe .fg-icone { width: 1.1rem; height: 1.1rem; color: currentColor; margin: 0; }

.fg-visionneuse {
	max-width: min(92vw, 70rem);
	max-height: 92vh;
	padding: 0;
	border: 0;
	border-radius: var(--fg-rayon-petit);
	background: #140A1E;
	color: var(--fg-lavande);
	overflow: hidden;
}
.fg-visionneuse::backdrop { background: rgba(20, 10, 30, 0.82); }
.fg-visionneuse figure { margin: 0; }
.fg-visionneuse img { display: block; max-width: 100%; max-height: calc(92vh - 3rem); margin: 0 auto; object-fit: contain; }
.fg-visionneuse figcaption { padding: 0.75rem 1rem; font-size: 0.9375rem; }
.fg-visionneuse figcaption:empty { display: none; }
.fg-visionneuse__fermer {
	position: absolute;
	top: 0.6rem;
	right: 0.6rem;
	display: grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	color: var(--fg-prune);
	cursor: pointer;
}
.fg-visionneuse__fermer .fg-icone { color: currentColor; margin: 0; }

/* Tête de page avec photo ou badge */
.fg-tete--media::after { right: auto; left: max(-6rem, calc((100vw - 76rem) / 2 - 14rem)); opacity: 0.35; }
.fg-tete__grille { gap: clamp(2rem, 1rem + 4vw, 5rem); }
.fg-tete--badge .fg-tete__media { text-align: center; }
.fg-frise__grille { gap: 2rem; align-items: center; }

/* ---------------------------------------------------------------- Montage de la semelle (3D) */

.fg-montage { position: relative; }
.fg-montage__colle {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	gap: clamp(1.5rem, 1rem + 3vw, 4rem);
	align-items: center;
}
.fg-montage__scene {
	display: grid;
	place-items: center;
	min-height: clamp(22rem, 16rem + 22vw, 36rem);
	perspective: 1600px;
	perspective-origin: 50% 30%;
}
.fg-montage__plan {
	position: relative;
	width: clamp(10rem, 7rem + 10vw, 15.5rem);
	aspect-ratio: 150 / 290;
	transform-style: preserve-3d;
	transform: rotateX(57deg) rotateZ(-36deg);
}
.fg-montage__plan::before {
	content: "";
	position: absolute;
	inset: 4% 6%;
	border-radius: 45%;
	background: radial-gradient(closest-side, rgba(58, 31, 82, 0.32), rgba(58, 31, 82, 0));
	transform: translateZ(-6px) scale(1.08);
	filter: blur(6px);
}
.fg-couche {
	position: absolute;
	inset: 0;
	transform-style: preserve-3d;
	transform: translateZ(calc((var(--z, 0) + var(--leve, 0)) * 1px));
	will-change: transform;
}
.fg-tranche {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: visible;
	opacity: var(--o, 1);
	transform: translateZ(calc(var(--t) * -1.4px));
}
.fg-c-base path { fill: #3E6DC2; }
.fg-c-base.fg-tranche--cote path { fill: #2A4C8E; }
.fg-c-cuvette path { fill: #2F5BAE; }
.fg-c-cuvette.fg-tranche--cote path { fill: #1F3E7A; }
.fg-c-voute path { fill: #ECE8F2; }
.fg-c-voute.fg-tranche--cote path { fill: #B9B2C6; }
.fg-c-pelote path { fill: #F4A63B; }
.fg-c-pelote.fg-tranche--cote path { fill: #C37717; }
.fg-c-talonnette path { fill: #2B2731; }
.fg-c-talonnette.fg-tranche--cote path { fill: #121015; }
.fg-c-dessus path { fill: rgba(118, 114, 128, 0.58); }
.fg-c-dessus.fg-tranche--cote path { fill: rgba(78, 75, 86, 0.5); }

.fg-montage__etapes {
	list-style: none;
	counter-reset: fg-montage;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.25rem;
}
.fg-montage__etapes li {
	counter-increment: fg-montage;
	display: grid;
	grid-template-columns: 2.25rem 1fr;
	column-gap: 0.75rem;
	padding: 0.7rem 0.9rem;
	border-radius: var(--fg-rayon-petit);
	transition: background-color 0.3s ease, opacity 0.3s ease;
}
.fg-montage__etapes li::before {
	content: attr(data-etape);
	grid-row: span 2;
	font-family: var(--wp--preset--font-family--titre);
	font-size: 1.5rem;
	line-height: 1.1;
	color: var(--fg-violet);
}
.fg-montage__etapes strong { font-weight: 700; color: var(--fg-prune); }
.fg-montage__etapes span { font-size: 0.9375rem; color: var(--fg-gris); line-height: 1.45; }
.est-anime .fg-montage__etapes li { opacity: 0.4; }
.est-anime .fg-montage__etapes li.est-faite { opacity: 0.85; }
.est-anime .fg-montage__etapes li.est-active { opacity: 1; background: #fff; box-shadow: 0 8px 24px -18px rgba(58, 31, 82, 0.55); }

/* Au défilement : la scène reste fixe pendant que la semelle se construit. */
.fg-montage--defilement.est-anime { height: 300vh; }
.fg-montage--defilement.est-anime .fg-montage__colle {
	position: sticky;
	top: calc(var(--fg-entete) + 1rem);
	min-height: calc(100vh - var(--fg-entete) - 2rem);
}
.fg-montage--auto .fg-montage__colle { grid-template-columns: 1fr; }
.fg-montage--auto .fg-montage__etapes { display: none; }
.fg-montage-entete { margin-bottom: 0.5rem; }
.fg-montage-entete .wp-block-heading { margin-top: 0; }
.fg-montage-intro { max-width: 40rem; }
.fg-montage-suite { margin-top: clamp(1rem, 0.5rem + 2vw, 2.5rem); }

@media (max-width: 781px) {
	.fg-montage__colle { grid-template-columns: 1fr; gap: 0.5rem; }
	.fg-montage__scene { min-height: 18rem; }
	.fg-montage--defilement.est-anime { height: 260vh; }
	.fg-montage--defilement.est-anime .fg-montage__colle { align-content: center; }
	.est-anime .fg-montage__etapes li { display: none; }
	.est-anime .fg-montage__etapes li.est-active { display: grid; }
}

.fg-tete--portrait::after { display: none; }
