/*
 * Marianne Denis — styles du thème enfant.
 *
 * Reprise à l'identique de l'interface Elementor (2026). Les valeurs (tailles, marges en %,
 * couleurs) sont celles relevées dans les feuilles Elementor du site d'origine.
 * Points de rupture d'Elementor : tablette ≤ 1024 px, mobile ≤ 767 px.
 *
 * Modèle de mise en page : chaque section (.md-sec) et chaque groupe qu'elle contient se
 * comportent comme les « conteneurs » d'Elementor : flex en colonne, espacement 20 px,
 * marge intérieure 10 px, enfants à largeur 100 % qui se partagent la place en ligne (.md-row).
 *
 * Sommaire
 *   1. Variables, polices, base
 *   2. En-tête et menu
 *   3. Conteneurs (modèle Elementor) et éléments communs
 *   4. Accueil
 *   5. Pages intérieures (bandeau, sage-femme, acupuncture, ateliers, bibliothèque, contact, à propos, cabinet, mentions)
 *   6. Fiche livre
 *   7. Formulaires
 *   8. Fenêtres et visionneuse
 *   9. Pied de page
 */

/* =========================================================================
 * 1. Variables, polices, base
 * ====================================================================== */
:root {
	--md-noir: #121212;
	--md-texte: #6B5F55;
	--md-gris-texte: #383838;
	--md-brique: #8A4329;
	--md-brun: #793800;
	--md-terre: #B35C3A;
	--md-caramel: #A87247;
	--md-peche: #FBDCC6;
	--md-creme: #F6F1EA;
	--md-sable: #EDE4D6;
	--md-cafe: #362921;
	--md-nuit: #201C13;
	--md-encre: #2D2622;
	--md-gris: #9A8C80;
	--md-arima: Arima, Georgia, serif;
	--md-inter: Inter, "Segoe UI", system-ui, sans-serif;
	--md-cormorant: "Cormorant Garamond", Georgia, serif;
	--md-noto: "Noto Serif Kannada", Georgia, serif;
	--md-montserrat: Montserrat, "Segoe UI", sans-serif;
	--md-poppins: Poppins, "Segoe UI", sans-serif;
	--md-herbes: url("../img/herbes-1600.webp");
	--mm-header-height: 82px;
	--mm-burger-size: 36px;
	--mm-burger-close: var(--md-noir);
	--mm-color-accent: var(--md-brun);
}

body {
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	color: var(--md-gris-texte);
	background: #fff;
}
a { color: var(--md-brun); }
mark.has-inline-color { background: transparent !important; padding: 0; }
strong, b { font-weight: 700; }
.mm-main { overflow-x: clip; }

/* =========================================================================
 * 2. En-tête et menu
 * ====================================================================== */
.md-header { position: sticky; top: 0; z-index: 90; }
.md-navbar { background: var(--md-creme); }
.md-navbar__inner {
	min-height: 0;
	padding: 10px;
	display: flex;
	align-items: stretch;
	justify-content: space-around;
	gap: 20px;
	position: relative;
}
.md-brand {
	margin: 0;
	font-family: var(--md-cormorant);
	font-size: 22px;
	font-weight: 500;
	line-height: 29px;
	letter-spacing: .16px;
	color: var(--md-noir);
	flex: 0 1 auto;
}
.md-brand a { color: inherit; text-decoration: none; }
.md-dot { font-size: 10px; color: var(--md-terre); }
.md-baseline {
	margin: 0;
	align-self: center;
	width: 10%;
	max-width: 10%;
	flex: 0 0 auto;
	font-family: var(--md-inter);
	font-size: 11px;
	font-weight: 500;
	line-height: 22px;
	letter-spacing: .98px;
	color: var(--md-gris);
}

.md-header .mm-nav { width: 55%; max-width: 55%; flex: 0 0 auto; justify-content: center; }
.md-header .mm-nav__menu { gap: 0; justify-content: center; flex-wrap: wrap; }
.md-header .mm-nav__menu a {
	position: relative;
	padding: 13px 20px;
	font-family: var(--md-inter);
	font-size: 14px;
	font-weight: 500;
	line-height: 2.3em;
	letter-spacing: .14px;
	color: var(--md-encre);
	text-decoration: none;
}
.md-header .mm-nav__menu > li > a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 3px;
	background: var(--md-brique);
	opacity: 0;
	transition: opacity .3s;
}
.md-header .mm-nav__menu > li > a:hover::after,
.md-header .mm-nav__menu > li > a:focus-visible::after,
.md-header .mm-nav__menu > .current-menu-item > a::after,
.md-header .mm-nav__menu > .current-menu-ancestor > a::after,
.md-header .mm-nav__menu > .current_page_item > a::after { opacity: 1; }
.md-header .mm-nav__toggle--signature { color: var(--md-noir); padding: 2px; }

.md-header__rdv {
	align-self: center;
	flex: 0 0 auto;
	display: inline-block;
	padding: 12px 24px;
	border-radius: 999px;
	background: var(--md-encre);
	color: var(--md-creme);
	font-family: var(--md-inter);
	font-size: 13px;
	font-weight: 500;
	line-height: 20.8px;
	text-transform: capitalize;
	text-decoration: none;
	transition: background-color .3s, color .3s;
}
.md-header__rdv:hover, .md-header__rdv:focus-visible { background: var(--md-brique); color: #fff; }

@media (max-width: 1024px) {
	.md-brand { width: 357px; max-width: 357px; font-size: 38px; line-height: 50px; }
	.md-baseline { font-size: 19px; line-height: 14px; }
	.md-header .mm-nav { width: auto; max-width: none; position: static; }
	.md-header .mm-nav__menu {
		top: 100%;
		left: 0;
		right: 0;
		width: 100%;
		flex-wrap: nowrap;
		background: var(--md-creme);
		box-shadow: none;
	}
	.md-header .mm-nav__menu > li { border-bottom: 0; }
	.md-header .mm-nav__menu a {
		padding: 13px 20px;
		font-family: var(--md-montserrat);
		font-size: 14px;
		font-weight: 300;
		line-height: 24px;
		letter-spacing: 0;
		color: var(--md-noir);
		text-align: left;
	}
	.md-header .mm-nav__menu > li > a::after { display: none; }
	.md-header .mm-nav__menu a:hover,
	.md-header .mm-nav__menu a:focus-visible,
	.md-header .mm-nav__menu .current-menu-item > a,
	.md-header .mm-nav__menu .current_page_item > a { background: var(--md-caramel); color: #fff; }
	.md-header__rdv { display: none; }
}
@media (max-width: 767px) {
	.md-navbar__inner { justify-content: center; align-items: center; gap: 0; flex-wrap: wrap; }
	.md-brand { width: 129px; max-width: 129px; font-size: 26px; line-height: 29px; }
	.md-baseline { width: 150px; max-width: 150px; font-size: 14px; line-height: 16px; text-align: start; }
	.md-header .mm-nav { width: 55px; max-width: 55px; justify-content: center; }
}

/* =========================================================================
 * 3. Conteneurs (modèle Elementor) et éléments communs
 * ====================================================================== */
.md-sec,
.md-sec .wp-block-group {
	--gap: 20px;
	display: flex;
	flex-direction: column;
	gap: var(--gap);
	padding: 10px;
	box-sizing: border-box;
	position: relative;
}
.md-sec .wp-block-group { width: 100%; flex: 0 1 auto; min-width: 0; }
.md-sec.md-row, .md-sec .md-row { flex-direction: row; --gap: 10px; }
.md-sec > :not(p),
.md-sec .wp-block-group > :not(p) { margin: 0; }
.md-boxed { padding-inline: max(0px, calc((100% - 1400px) / 2)); }

@media (max-width: 767px) {
	.md-sec.md-row, .md-sec .md-row { flex-direction: column; }
}

/* Fonds */
.md-creme { background-color: var(--md-creme); }
.md-sable { background-color: var(--md-sable); }
.md-sombre, .md-page-hero { background-color: var(--md-cafe); isolation: isolate; }
.md-sombre::before, .md-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: var(--md-herbes) center / cover no-repeat;
	background-image: image-set(url("../img/herbes-960.webp") 1x, url("../img/herbes-1600.webp") 2x);
	opacity: .5;
	mix-blend-mode: multiply;
	pointer-events: none;
}
@media (min-width: 1025px) {
	.md-sombre::before, .md-page-hero::before { background-image: var(--md-herbes); background-attachment: fixed; }
}

/* Textes par défaut (« éditeur de texte » Elementor) */
.md-sec p,
.md-sec li {
	font-family: var(--md-inter);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7em;
	color: var(--md-texte);
}
.md-sec :is(p, p:last-child) { margin: 0 0 .9rem; }
.md-sec :is(p, p:last-child) + :is(p, p:last-child) { margin-top: calc(-1 * var(--gap)); }
.md-sec :is(p, p:last-child) + p.md-apres-bloc { margin-top: 0; }
.md-sec :is(p, p:last-child).md-sans-marge { margin-bottom: 0; }
.md-sec .wp-block-list + .wp-block-list { margin-top: calc(-1 * var(--gap)); }
.md-sec ul { margin: 0; padding-left: 40px; }
@media (max-width: 1024px) {
	.md-sec p, .md-sec li { font-size: 14px; }
}

/* Titres */
.md-sec h1, .md-sec h2, .md-sec h3, .md-sec h4, .md-sec h5, .md-sec h6 { margin: 0; padding: 0; color: var(--md-noir); }
.is-style-section {
	font-family: var(--md-arima);
	font-size: 46px;
	font-weight: 400;
	line-height: 49px;
	letter-spacing: -2.5px;
	text-transform: none;
	color: var(--md-noir);
}
.is-style-carte {
	width: 57%;
	max-width: 57%;
	font-family: var(--md-arima);
	font-size: 36px;
	font-weight: 400;
	line-height: 49px;
	letter-spacing: .3px;
	color: var(--md-noir);
	margin-bottom: 20px !important;
}
.is-style-surtitre {
	font-family: var(--md-inter);
	font-size: 13px;
	font-weight: 400;
	line-height: 58px;
	letter-spacing: 2.42px;
	text-transform: none;
	color: var(--md-terre) !important;
}
.md-surtitre--brun { color: var(--md-brun) !important; position: relative; z-index: 2; }
.md-sec mark.has-inline-color { color: var(--md-brique) !important; }
.md-mb20 { margin-bottom: 20px !important; }
.md-w57 { width: 57%; max-width: 57%; }
@media (max-width: 1024px) {
	.is-style-section { font-size: 38px; line-height: 50px; }
	.is-style-carte { font-size: 38px; line-height: 50px; }
	.is-style-surtitre { font-size: 38px; line-height: 50px; }
}
@media (max-width: 767px) {
	.is-style-section { font-size: 32px; line-height: 44px; }
	.is-style-carte { font-size: 32px; line-height: 44px; }
	.is-style-surtitre { font-size: 32px; line-height: 44px; }
}

/* Chapeau en italique (Cormorant) */
.md-sec p.is-style-chapeau {
	font-family: var(--md-cormorant);
	font-size: 22px;
	font-weight: 400;
	font-style: italic;
	line-height: 1.5em;
	color: var(--md-texte);
}
@media (max-width: 1024px) {
	.md-sec p.is-style-chapeau { font-size: 14px; }
}

/* Filets (séparateurs) */
.md-sec .wp-block-separator.md-filet {
	width: 100%;
	max-width: none;
	margin: 15px 0;
	border: 0;
	border-top: 1px solid #D9CDBC;
	opacity: 1;
	background: none;
	height: 0;
}
.md-sec .md-filet--clair { border-top-width: .5px !important; border-top-color: #ECE1D1 !important; }
.md-sec .md-filet--brun { width: 60%; margin: 15px auto !important; border-top-color: var(--md-brun) !important; }
.md-sec .md-filet--noir { border-top-color: #000 !important; }

/* Bouton texte + flèche (« DÉCOUVRIR → ») */
.md-sec > .wp-block-buttons,
.md-sec .wp-block-group > .wp-block-buttons { margin-top: 20px; gap: 10px; }
.wp-block-button.is-style-fleche .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 22px;
	padding: 12px 24px;
	border: 0;
	border-radius: 3px;
	background: transparent;
	color: var(--md-encre);
	font-family: var(--md-inter);
	font-size: 14px;
	font-weight: 600;
	line-height: 20.8px;
	letter-spacing: .46em;
	text-transform: capitalize;
	text-decoration: none;
	transition: color .3s;
}
.wp-block-button.is-style-fleche .wp-block-button__link::after {
	content: "";
	flex: none;
	width: .875em;
	height: 1em;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.wp-block-button.is-style-fleche .wp-block-button__link:hover,
.wp-block-button.is-style-fleche .wp-block-button__link:focus-visible { color: var(--md-brique); }
.wp-block-button.is-style-fleche.md-maj .wp-block-button__link { text-transform: uppercase; }
.md-sombre .wp-block-button.is-style-fleche .wp-block-button__link { color: #fff; }
.md-sombre .wp-block-button.is-style-fleche .wp-block-button__link:hover { color: var(--md-peche); }
@media (max-width: 767px) {
	.wp-block-button.is-style-fleche .wp-block-button__link { padding: 18px 30px; }
}

/* Bouton pilule brun (« En savoir plus ») */
.wp-block-button.is-style-pilule .wp-block-button__link {
	display: inline-block;
	padding: 12px 24px;
	border-radius: 30px;
	background: var(--md-brun);
	color: #fff;
	font-family: var(--md-montserrat);
	font-size: 15px;
	font-weight: 400;
	line-height: 20.8px;
	text-transform: capitalize;
	text-decoration: none;
	transition: background-color .3s;
}
.wp-block-button.is-style-pilule .wp-block-button__link:hover { background: var(--md-brique); }
@media (max-width: 767px) {
	.wp-block-button.is-style-pilule .wp-block-button__link { padding: 18px 30px; }
}

/* Images */
.md-sec .wp-block-image { margin: 0; }
.md-sec .wp-block-image img { height: auto; max-width: 100%; }
.md-img-centre { text-align: center; }
.md-img-centre img, .md-img-libre img { display: inline-block; }
.md-img-libre { text-align: center; }
.md-img-pleine img { width: 100%; }
.md-sec .wp-block-image figcaption {
	margin: 0;
	text-align: center;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-gris-texte);
}

/* Colonne « photo » : l'image couvre toute la hauteur de la ligne (fond Elementor) */
.md-sec .wp-block-image.md-photo {
	position: relative;
	width: 100%;
	flex: 0 1 auto;
	min-width: 0;
	min-height: 70px;
	padding: 10px;
	box-sizing: border-box;
	overflow: hidden;
}
.md-sec .wp-block-image.md-photo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center center;
}
@media (max-width: 1024px) {
	.md-sec .wp-block-image.md-photo { min-height: calc(35vh + 20px); }
}

/* Puces rondes brunes (listes d'icônes Elementor) */
.md-sec ul.is-style-points { list-style: none; padding: 0; }
.md-sec ul.is-style-points li {
	position: relative;
	padding: 0 0 0 calc(6px + 8px);
	font-family: var(--md-inter);
	font-size: 15px;
	line-height: 24px;
	color: var(--md-gris-texte);
}
.md-sec ul.is-style-points li + li { margin-top: 4px; }
.md-sec ul.is-style-points li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--md-brun);
}
@media (max-width: 1024px) {
	.md-sec ul.is-style-points li { font-size: 14px; }
}

/* Tache décorative (forme organique) */
.md-tache::before {
	content: "";
	position: absolute;
	z-index: 0;
	pointer-events: none;
	border-radius: 130% 150% 100% 150%;
}
.md-tache > * { position: relative; z-index: 1; }

/* Galeries */
.md-sec .wp-block-gallery.md-galerie { margin: 0; --wp--style--unstable-gallery-gap: 10px; gap: 10px; }
.md-sec .wp-block-gallery.md-galerie--colonnes { display: block !important; columns: 2; column-gap: 10px; }
.md-sec .wp-block-gallery.md-galerie--colonnes > .wp-block-image {
	display: block;
	width: 100% !important;
	margin: 0 0 10px !important;
	break-inside: avoid;
}
.md-sec .wp-block-gallery.md-galerie--colonnes > .wp-block-image img { width: 100%; height: auto; }
.md-sec .wp-block-gallery.md-galerie a { display: block; position: relative; }
.md-sec .wp-block-gallery.md-galerie a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, .5);
	opacity: 0;
	transition: opacity .8s;
}
.md-sec .wp-block-gallery.md-galerie a:hover::after,
.md-sec .wp-block-gallery.md-galerie a:focus-visible::after { opacity: 1; }
.md-collant { position: sticky; top: 100px; }
.admin-bar .md-collant { top: 132px; }
@media (max-width: 767px) {
	.md-sec .wp-block-gallery.md-galerie--colonnes { columns: 1; }
}

/* Détails (FAQ) */
.md-sec .wp-block-details summary { list-style: none; }
.md-sec .wp-block-details summary::-webkit-details-marker { display: none; }

/* =========================================================================
 * 4. Accueil
 * ====================================================================== */

/* Haut de page : photo HD + voile blanc + parallaxe */
.md-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	min-height: 1195px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 20px;
	padding: 0 0 200px 30px;
	box-sizing: border-box;
}
.md-hero > * { margin: 0; }
.md-hero__media {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 140%;
	z-index: -2;
	will-change: transform;
	transform: translate3d(0, calc(-0.052 * 1195px), 0);
	background: #d9b9ad;
}
.md-hero__media picture, .md-hero__img { display: block; width: 100%; height: 100%; }
.md-hero__img { object-fit: cover; object-position: 50% 0; max-width: none; }
.md-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background-image: linear-gradient(180deg, #FFFFFF52 76%, #FFFFFF 100%);
	opacity: .5;
	pointer-events: none;
}
.md-hero__kicker {
	font-family: var(--md-inter);
	font-size: 11px;
	font-weight: 300;
	line-height: 58px;
	letter-spacing: 2.42px;
	color: var(--md-noir);
}
.md-hero__title {
	width: 54%;
	max-width: 54%;
	font-family: var(--md-arima);
	font-size: 69px;
	font-weight: 400;
	line-height: 58px;
	letter-spacing: -1.0434px;
	color: var(--md-noir);
}
.md-hero__title mark.has-inline-color { color: var(--md-brique) !important; }
.md-hero p.md-hero__text {
	width: 47%;
	max-width: 47%;
	margin: 20px 0 .9rem;
	font-family: var(--md-cormorant);
	font-size: 22px;
	font-weight: 300;
	font-style: italic;
	line-height: 24px;
	color: var(--md-gris-texte);
}
.md-hero__credit {
	position: absolute !important;
	right: 16px;
	bottom: 12px;
	margin: 0 !important;
	z-index: 1;
	font-family: var(--md-inter);
	font-size: 10px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: .08em;
	color: rgba(18, 18, 18, .5);
}
.md-hero__credit a { color: inherit; text-decoration: none; }
.md-hero__credit a:hover { color: var(--md-brique); text-decoration: underline; }
@media (max-width: 1024px) {
	.md-hero__img { object-position: 0 0; }
	.md-hero__kicker { font-size: 38px; line-height: 50px; }
	.md-hero__title { font-size: 38px; line-height: 50px; }
	.md-hero p.md-hero__text { font-size: 14px; }
}
@media (max-width: 767px) {
	.md-hero { min-height: 100vh; min-height: 100svh; justify-content: center; padding: 50px 10px; }
	.md-hero__img { object-position: 29% 0; }
	.md-hero__kicker { font-size: 25px; line-height: 44px; }
	.md-hero__title { width: auto; max-width: none; font-size: 32px; line-height: 44px; }
	.md-hero p.md-hero__text { width: 100%; max-width: 100%; }
	.md-hero__credit { right: 10px; bottom: 8px; font-size: 9px; }
}

/* 01. Présentation */
.md-sec.md-presentation {
	background: var(--md-creme);
	flex-direction: row;
	--gap: 0px;
	padding: 100px max(0px, calc((100% - 1400px) / 2));
}
.md-presentation__photo { justify-content: center; padding: 50px !important; }
.md-portrait { text-align: center; }
.md-portrait img { display: inline-block; width: 78% !important; border-radius: 5px; }
.md-sec .md-presentation__texte { --gap: 0px; padding: 0 100px 0 0 !important; }
.md-sec p.md-intro {
	font-family: var(--md-cormorant);
	font-size: 28px;
	font-weight: 400;
	line-height: 1.4em;
	color: var(--md-gris-texte);
}
.md-sec .md-signature {
	font-family: var(--md-cormorant);
	font-size: 24px;
	font-weight: 400;
	font-style: italic;
	line-height: 25px;
	color: var(--md-noir);
}
.md-signature__role { font-family: var(--md-inter); font-size: 12px; font-style: normal; color: var(--md-gris); }
@media (min-width: 768px) {
	.md-presentation__photo, .md-presentation__texte { width: 50% !important; }
}
@media (max-width: 1024px) {
	.md-sec p.md-intro { font-size: 14px; }
	.md-sec .md-signature { font-size: 38px; line-height: 50px; }
}
@media (max-width: 767px) {
	.md-sec.md-presentation { flex-direction: column; }
	.md-sec .md-presentation__texte { padding: 0 0 0 20px !important; }
	.md-sec .md-signature { font-size: 32px; line-height: 44px; }
}

/* 02. Consultations */
.md-sec.md-consultations { background: var(--md-sable); padding: 50px max(0px, calc((100% - 1400px) / 2)) 100px; }
.md-consultations__intro { --gap: 20px !important; }
.md-consultations__titre { padding: 0 !important; }
.md-consultations__chapeau { justify-content: flex-end; }
.md-sec .md-cartes { --gap: 0px !important; flex-direction: row; }
.md-sec .md-carte {
	--gap: 0px;
	min-height: 603px;
	padding: 30px;
	border: 1px solid #97908A;
	border-left-width: 0;
	transition: background-color .3s;
}
.md-sec .md-carte:last-child { border-left-width: 1px; border-right-width: 0; }
.md-sec .md-carte:hover { background-color: var(--md-creme); }
.md-sec p.md-carte__texte { font-size: 16px; font-weight: 300; line-height: 24px; }
.md-sec .md-carte__liste { padding-top: 20px; }
.md-sec .md-carte__liste li { font-size: 14px; line-height: 49px; color: var(--md-gris-texte); }
.md-carte__bas { margin-top: 160px !important; }
@media (max-width: 1024px) {
	.md-sec p.md-carte__texte { font-size: 14px; }
}
@media (max-width: 767px) {
	.md-sec.md-consultations { padding: 20px; }
	.md-sec .md-cartes { flex-direction: column; }
	.md-sec .md-carte, .md-sec .md-carte:last-child { border-width: 1px; }
	.md-carte__num { width: 47px; max-width: 47px; }
}

/* 03. Philosophie */
.md-sec.md-philosophie { padding: 150px max(0px, calc((100% - 1400px) / 2)) 100px; }
.md-sec .md-philosophie__titre { width: 26%; max-width: 26%; color: #fff; }
.md-piliers { flex-direction: row !important; --gap: 20px !important; }
.md-sec .md-pilier h4 {
	margin-bottom: 20px;
	font-family: var(--md-cormorant);
	font-size: 24px;
	font-weight: 400;
	font-style: italic;
	line-height: 49px;
	letter-spacing: .3px;
	color: #fff;
}
.md-sec .md-pilier p { font-size: 15px; font-weight: 300; color: var(--md-creme); }
@media (max-width: 1024px) {
	.md-sec .md-pilier h4 { font-size: 38px; line-height: 50px; }
	.md-sec .md-pilier p { font-size: 14px; }
}
@media (max-width: 767px) {
	.md-sec.md-philosophie { padding: 20px; }
	.md-sec .md-philosophie__titre { width: 300px; max-width: 300px; }
	.md-piliers { flex-direction: column !important; }
	.md-sec .md-pilier h4 { font-size: 32px; line-height: 44px; }
}

/* 04 / 05. Rendez-vous et contact */
.md-sec.md-rdv-contact {
	background: var(--md-sable);
	flex-direction: row;
	--gap: 20px;
	padding: 100px max(0px, calc((100% - 1400px) / 2)) 150px;
}
.md-sec .md-encart { justify-content: space-around; padding: 50px; border-radius: 10px; background: var(--md-creme); }
@media (min-width: 768px) {
	.md-sec .md-encart { width: 50%; }
}
@media (max-width: 767px) {
	.md-sec.md-rdv-contact { flex-direction: column; padding: 0; --gap: 0px; }
}

/* 06. FAQ */
.md-sec.md-faq, .md-sec.md-temoignages-sec {
	background: var(--md-creme);
	--gap: 0px;
	/* Elementor (conteneur « en boîte ») : marge haute = 10 % de la largeur intérieure (100 % − 2 × 12 %). */
	padding: 7.6% 12% 0;
}
.md-sec .md-faq__liste {
	display: block;
	width: 85%;
	margin-top: 4% !important;
	padding: 30px 0 0 !important;
	border-top: .5px solid #C8D5DC;
}
.md-faq__liste .wp-block-details { margin: 0; }
.md-faq__liste .wp-block-details + .wp-block-details { margin-top: 30px; }
.md-faq__liste summary {
	position: relative;
	display: block;
	padding: 0 24px 30px 0;
	border-bottom: .5px solid var(--md-peche);
	font-family: var(--md-poppins);
	font-size: 16px;
	font-weight: 400;
	line-height: 28.5px;
	text-transform: capitalize;
	color: var(--md-gris-texte);
	cursor: pointer;
}
.md-faq__liste summary::after {
	content: "";
	position: absolute;
	right: 0;
	top: 6px;
	width: 16px;
	height: 16px;
	background: #1C244B;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolygon points='8.39 7.64 8.39 0 7.61 0 7.61 7.64 0 7.64 0 8.4 7.61 8.4 7.61 16 8.39 16 8.39 8.4 16 8.4 16 7.64 8.39 7.64'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolygon points='8.39 7.64 8.39 0 7.61 0 7.61 7.64 0 7.64 0 8.4 7.61 8.4 7.61 16 8.39 16 8.39 8.4 16 8.4 16 7.64 8.39 7.64'/%3E%3C/svg%3E") center / contain no-repeat;
}
.md-faq__liste details[open] summary { color: var(--md-brun); border-bottom: 0; }
.md-faq__liste details[open] summary::after {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect y='7.64' width='16' height='0.76'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Crect y='7.64' width='16' height='0.76'/%3E%3C/svg%3E");
}
.md-faq__liste summary:hover { color: var(--md-brun); }
.md-faq__liste .wp-block-details > p {
	margin: 0;
	padding: 0 50px 30px 0;
	border-bottom: .5px solid var(--md-peche);
	font-family: var(--md-inter);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.5em;
	color: var(--md-noir);
}
@media (max-width: 1024px) {
	.md-sec.md-faq, .md-sec.md-temoignages-sec { margin-top: 25%; padding: 0 8%; }
	.md-sec .md-faq__liste { width: 100%; }
	.md-faq__liste summary, .md-faq__liste .wp-block-details > p { font-size: 14px; }
	.md-faq__liste summary { line-height: 22.5px; }
	.md-faq__liste summary::after { top: 3px; }
}
@media (max-width: 767px) {
	.md-sec.md-faq, .md-sec.md-temoignages-sec { margin-top: 0; padding: 0 5%; }
	.md-faq__liste .wp-block-details > p { padding-right: 0; }
	.md-faq__liste summary { line-height: 18.3px; }
	.md-faq__liste summary::after { top: 1px; }
}

/* 07. Témoignages (carrousel) */
.md-sec .md-temoignages { position: relative; padding: 0; --gap: 0px; }
.md-temoignages .wp-block-quote {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	text-align: center;
}
.md-temoignages .wp-block-quote p {
	margin: 0;
	font-family: var(--md-montserrat);
	font-size: 22px;
	font-weight: 400;
	line-height: 1.5em;
	color: var(--md-caramel);
}
.md-temoignages .wp-block-quote cite {
	display: block;
	margin-top: 59px;
	font-family: var(--md-arima);
	font-size: 65px;
	font-style: normal;
	font-weight: 400;
	line-height: 76px;
	text-transform: capitalize;
	color: var(--md-brun);
}
.md-temoignages.is-carousel .md-temoignages__viewport { width: 95%; margin: 0 auto; padding-bottom: 60px; overflow: hidden; }
.md-temoignages__track { display: flex; transition: transform 1s ease; }
.md-temoignages__track > .wp-block-quote { flex: 0 0 100%; min-width: 0; padding: 20px 20px 0 !important; box-sizing: border-box; }
.md-temoignages__arrow {
	position: absolute;
	top: calc(50% - 30px);
	transform: translateY(-50%);
	width: 10px;
	height: 40px;
	padding: 0;
	border: 0;
	background: none;
	color: rgba(238, 238, 238, .9);
	cursor: pointer;
}
.md-temoignages__arrow::before {
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	margin: auto;
	border-left: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: rotate(45deg);
}
.md-temoignages__arrow--prev { left: 10px; }
.md-temoignages__arrow--next { right: 10px; }
.md-temoignages__arrow--next::before { transform: rotate(-135deg); }
.md-temoignages__arrow:hover { color: var(--md-caramel); }
.md-temoignages__dots { position: absolute; left: 0; right: 0; bottom: 5px; height: 24px; display: flex; align-items: center; justify-content: center; gap: 12px; }
.md-temoignages__dots button { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 50%; background: var(--md-peche); cursor: pointer; }
.md-temoignages__dots button.is-active { background: var(--md-brun); }
@media (max-width: 1024px) {
	.md-temoignages .wp-block-quote cite { font-size: 58px; }
}
@media (max-width: 767px) {
	.md-temoignages .wp-block-quote p { font-size: 18px; }
	.md-temoignages .wp-block-quote cite { font-size: 42px; line-height: 53px; }
}

/* =========================================================================
 * 5. Pages intérieures
 * ====================================================================== */

/* Bandeau sombre avec le titre de la page */
.md-sec.md-page-hero {
	padding: 100px max(0px, calc((100% - 1400px) / 2));
	align-items: center;
	justify-content: center;
}
.md-sec .is-style-page {
	width: 43.2%;
	max-width: 43.2%;
	margin: 0 auto;
	text-align: center;
	font-family: var(--md-arima);
	font-size: 69px;
	font-weight: 400;
	line-height: 58px;
	letter-spacing: -1.0434px;
	color: var(--md-brun);
}
.md-page-hero--biblio .is-style-page { width: 80%; max-width: 80%; font-size: 80px; font-weight: 300; letter-spacing: 0; }
@media (max-width: 1024px) {
	.md-sec .is-style-page { width: 21.6%; max-width: 21.6%; font-size: 38px; line-height: 50px; }
	.md-page-hero--biblio .is-style-page { width: 80%; max-width: 80%; }
}
@media (max-width: 767px) {
	.md-sec.md-page-hero { padding: 20px; }
	.md-sec .is-style-page,
	.md-page-hero--biblio .is-style-page { width: 80%; max-width: 80%; margin: 10% auto; font-size: 32px; line-height: 44px; }
}

/* Lignes texte + photo : marges intérieures en % (comme Elementor) */
@media (max-width: 1024px) {
	.md-sf-approche, .md-sf-prenatal, .md-sf-risque, .md-sf-postnatal, .md-sf-reeducation,
	.md-ac-mtc, .md-ac-applications, .md-ac-obstetrique, .md-ap-parcours { margin-top: 25% !important; }
	.md-ap-moi { margin-top: 20% !important; }
}
@media (max-width: 767px) {
	.md-sf-approche, .md-sf-prenatal, .md-sf-risque, .md-sf-postnatal, .md-sf-reeducation,
	.md-ac-mtc, .md-ac-applications, .md-ac-obstetrique, .md-ap-moi, .md-ap-parcours { margin-top: 0 !important; }
}

/* — Sage-femme — */
.md-sec.md-sf-prenatal { min-height: 80vh; --gap: 10px; }
.md-sec .wp-block-image.md-photo--bandeau { width: 100%; min-height: 648px; flex: 0 0 auto; }
@media (max-width: 1024px) {
	.md-photo--bandeau img { object-position: center bottom !important; }
	.md-photo--risque img { object-position: 0 37% !important; }
}
@media (max-width: 767px) {
	.md-photo--risque img { object-position: 0 -73px !important; }
}
.md-sec.md-sf-naissance, .md-sec.md-sf-deuil { --gap: 20px; padding-top: 150px; padding-bottom: 100px; }
.md-sf-naissance__photo { padding: 0 !important; }
.md-sf-naissance__photo .md-img-libre { margin-bottom: 70px !important; }
@media (max-width: 1024px) {
	.md-sf-naissance__photo .md-img-libre { margin-bottom: calc(20px + 35vh) !important; }
}
.md-sombre :is(h2, h3):not(.is-style-surtitre), .md-sombre .md-texte p { color: #fff !important; }
.md-tache--caramel::before { width: 350px; height: 350px; top: -21%; left: -18%; background: var(--md-caramel); }
@media (max-width: 1024px) {
	.md-tache--caramel::before { width: 250px; height: 250px; top: -23%; left: -5%; }
}
@media (max-width: 767px) {
	.md-sec.md-sf-naissance, .md-sec.md-sf-deuil { padding: 20px; }
	.md-sf-postnatal { padding: 25px 0 0 !important; }
	.md-tache--caramel::before { width: 89px; height: 80px; top: -20px; }
	.md-sf-postnatal__galerie, .md-sf-reeducation__photo { margin: 0; padding: 0 !important; }
}
.md-sec.md-bandeau-questions { min-height: 23vh; padding: 30px; }
@media (max-width: 1024px) {
	.md-sec.md-bandeau-questions { min-height: 50vh; padding: 0 10%; }
}

/* — Acupuncture — */
.md-ac-applications .is-style-surtitre { font-weight: 400; }
.md-ac-formations > .wp-block-group > .md-row > .wp-block-group:first-child .is-style-section { text-align: start; }
.md-centre-v { justify-content: center; }
.md-ac-listes { --gap: 0px !important; }
.md-ac-listes > .wp-block-group:first-child { padding: 0 5% 0 0 !important; }
.md-ac-listes > .wp-block-group:last-child { padding: 0 0 0 5% !important; }
.md-sec .md-liste-titre {
	font-family: var(--md-noto);
	font-size: 19px;
	font-weight: 400;
	line-height: 21px;
	color: var(--md-noir);
}
.md-ac-obstetrique__photos .md-img-pleine img { width: auto; max-width: 100%; }
@media (min-width: 768px) {
	.md-ac-obstetrique .md-texte { width: 55.375% !important; }
	.md-ac-obstetrique__photos { width: 44.43% !important; }
}
@media (max-width: 1024px) {
	.md-ac-applications .md-photo img { object-position: center bottom; }
	.md-sec .md-liste-titre { font-size: 38px; line-height: 50px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
	.md-ac-obstetrique .md-texte, .md-ac-obstetrique__photos { width: 100% !important; }
}
@media (max-width: 767px) {
	.md-sec.md-ac-mtc { padding: 20px 5px 5px; }
	.md-ac-applications .md-photo img { object-position: center top; }
	.md-sec.md-ac-obstetrique { padding: 5px; }
	.md-ac-listes > .wp-block-group:last-child { margin-top: 1% !important; padding: 0 !important; }
	.md-sec .md-liste-titre { font-size: 15px; line-height: 23px; }
}
.md-sec .md-ac-tarifs__titre { position: relative; z-index: 2; margin-bottom: -2% !important; }
.md-sec ul.md-tarifs { list-style: none; padding: 0 20%; }
.md-sec ul.md-tarifs li {
	display: flex;
	align-items: flex-start;
	font-family: var(--md-noto);
	font-weight: 300;
	color: var(--md-noir);
}
.md-sec ul.md-tarifs li + li { margin-top: 7px; }
.md-tarifs__titre { font-size: 27px; line-height: 29px; }
.md-tarifs__titre::after { content: none; }
.md-tarifs li::after { content: none; }
.md-tarifs__prix { order: 3; font-size: 24px; line-height: 58px; white-space: nowrap; }
.md-sec ul.md-tarifs li::before {
	content: "";
	order: 2;
	flex: 1 1 auto;
	align-self: center;
	min-width: 20px;
	margin: 0 10px;
	border-bottom: 2px dotted var(--md-caramel);
}
.md-tarifs__titre { order: 1; }
.md-sec p.md-tarifs__note {
	margin-top: -13px;
	padding: 0 20%;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-gris-texte);
}
@media (max-width: 1024px) {
	.md-tarifs__titre, .md-tarifs__prix { font-size: 38px; line-height: 50px; }
	.md-sec p.md-tarifs__note { font-size: 14px; }
}
@media (max-width: 767px) {
	.md-sec ul.md-tarifs, .md-sec p.md-tarifs__note { padding: 0; }
	.md-tarifs__titre { font-size: 14px; line-height: 26px; }
	.md-tarifs__prix { font-size: 17px; line-height: 26px; white-space: normal; text-align: right; }
}
.md-sec.md-ac-rdv { padding-inline: max(10px, calc((100% - 1154px) / 2)); }

/* — Ateliers Superpapas — */
.md-sec.md-at-intro { padding-inline: max(10px, calc((100% - 1160px) / 2)); }
.md-sec.md-at-infos { min-height: 46vh; padding: 0 6%; }
.md-at-infos__objectifs { margin-right: 10% !important; }
.md-at-infos__pratiques { margin-left: 10% !important; }
.md-sec.md-at-dates { padding-inline: max(10px, calc((100% - 1018px) / 2)); }
.md-sec p.md-ateliers { margin: 0 0 .9rem; }
.md-sec .md-gmap { width: 100%; }
.md-sec .md-gmap iframe { display: block; width: 100%; height: 300px; border: 0; }
@media (max-width: 1024px) {
	.md-sec.md-at-infos { flex-direction: column; margin-top: 20% !important; }
	.md-at-infos__objectifs { margin: 0 5% !important; width: auto !important; }
	.md-at-infos__pratiques { margin: 15% 5% 0 !important; width: auto !important; }
}
@media (max-width: 767px) {
	.md-sec.md-at-infos { margin-top: 0 !important; }
	.md-at-infos__pratiques { margin: 25% 5% 0 !important; }
}

/* — Bibliothèque — */
.md-sec.md-biblio { padding-inline: max(10px, calc((100% - 1600px) / 2)); }
.md-sec p.md-biblio__intro { font-weight: 300; line-height: 24px; color: var(--md-gris-texte); }
.md-livres { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 30px; }
.md-livre {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 10px;
	text-align: center;
}
.md-livre__couverture { display: block; }
.md-livre__couverture img { display: inline-block; width: 350px; max-width: 100%; height: auto; aspect-ratio: 350 / 450; object-fit: cover; }
.md-sec .md-livre__titre {
	margin: 0;
	font-family: var(--md-noto);
	font-size: 18px;
	font-weight: 500;
	line-height: 36px;
	color: var(--md-noir);
}
.md-livre__titre a { color: inherit; text-decoration: none; }
.md-sec p.md-livre__auteur {
	margin: 0 0 .9rem;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-brun);
}
@media (max-width: 1024px) {
	.md-livres { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.md-sec .md-livre__titre { font-size: 38px; line-height: 50px; }
	.md-sec p.md-livre__auteur { font-size: 14px; }
}
@media (max-width: 767px) {
	.md-livres { grid-template-columns: 1fr; }
	.md-sec .md-livre__titre { font-size: 15px; line-height: 25px; }
}

/* — Contact — */
.md-sec.md-contact { min-height: 90vh; padding: 0 20%; }
.md-contact__col { --gap: 60px !important; }
@media (max-width: 1024px) { .md-sec.md-contact { padding: 0 10%; } }
@media (max-width: 767px) { .md-sec.md-contact { padding: 0 5%; } }

/* — À propos — */
.md-sec.md-ap-moi { min-height: 80vh; --gap: 0px; }
.md-tache--brun::before { width: 145px; height: 130px; top: 16%; left: -8%; background: var(--md-brun); }
.md-sec.md-ap-parcours { min-height: 80vh; }
.md-ap-parcours__photo { background: var(--md-herbes) center / cover no-repeat; min-height: 70px; }
@media (min-width: 768px) {
	.md-ap-moi .md-texte { width: 50.868% !important; }
	.md-ap-moi .md-photo { width: 49.132% !important; }
}
@media (max-width: 1024px) {
	.md-tache--brun::before { top: 9%; left: -3%; }
	.md-ap-parcours__photo { background-position: 0 -145px; min-height: calc(35vh + 20px); }
}
@media (max-width: 767px) {
	.md-ap-moi .md-photo { min-height: calc(25vh + 20px); }
	.md-tache--brun::before { width: 89px; height: 80px; top: -6%; }
	.md-ap-parcours__photo { background-position: 0 -33px; }
}

.md-ap-moi .md-texte, .md-ap-parcours .md-texte { justify-content: center; }

/* Marges intérieures des colonnes de texte (en % de la ligne, comme Elementor) */
.md-sec { --tp: 5% 10% 20% 10%; }
.md-sf-risque { --tp: 10% 10% 20% 10%; }
.md-sf-naissance { --tp: 2% 5% 20% 5%; }
.md-sf-postnatal, .md-sf-reeducation, .md-sf-deuil, .md-ac-mtc { --tp: 5% 10%; }
.md-ac-applications { --tp: 5% 2% 5% 10%; }
.md-ac-obstetrique { --tp: 5% 10% 5% 2%; }
.md-ap-moi { --tp: 0 5%; }
.md-ap-parcours { --tp: 0 10%; }
.md-sec .md-texte { padding: var(--tp); }
@media (max-width: 1024px) {
	.md-sec { --tp: 0 10%; }
	.md-ap-moi { --tp: 0 5%; }
	.md-sec .md-texte { margin-bottom: 10% !important; }
	.md-sec.md-ap-moi .md-texte { margin-bottom: 0 !important; }
}
@media (max-width: 767px) {
	.md-sec { --tp: 0; }
	.md-sf-postnatal, .md-sf-reeducation { --tp: 0 10% 10% 10%; }
	.md-sf-deuil { --tp: 0 2% 10% 2%; }
	.md-ac-mtc, .md-ac-applications, .md-ac-obstetrique { --tp: 0 5% 10%; }
	.md-ap-moi { --tp: 5% 2% 20%; }
	.md-ap-parcours { --tp: 0 2% 20%; }
	.md-sec.md-ap-parcours .md-texte { margin-bottom: 0 !important; }
}

/* — Le cabinet — */
.md-sec.md-cab { --gap: 0px; }
.md-cab__texte { justify-content: center; padding: 5% 5% 0 !important; }
.md-cab__texte h2 { position: relative; z-index: 2; }
.md-sec .md-cab__texte p { font-weight: 300; line-height: 24px; color: var(--md-gris-texte); }
.md-sec .md-galerie--32 { display: grid !important; grid-template-columns: 1fr; gap: 10px; }
.md-sec .md-galerie--32 > .wp-block-image { width: 100% !important; margin: 0 !important; }
.md-sec .md-galerie--32 img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
@media (min-width: 768px) {
	.md-cab__texte { width: 50.868% !important; }
	.md-cab__photos { width: 50% !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
	.md-cab__texte { width: 100% !important; }
	.md-sec .md-galerie--32 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
	.md-cab__texte { padding: 0 5% 20% !important; }
}

/* — Mentions légales — */
.md-mentions {
	max-width: 1600px;
	margin: 200px auto !important;
	padding: 0 20px;
	box-sizing: border-box;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-gris-texte);
}
.md-mentions > * { margin: 0; }
.md-mentions p { margin: 0 0 .9rem; }
.md-mentions h2 { margin: .5rem 0 1rem; font-family: var(--md-montserrat); font-size: 2rem; font-weight: 500; line-height: 1.2; color: var(--md-gris-texte); }
.md-credit a { color: var(--md-brun); }

/* =========================================================================
 * 6. Fiche livre
 * ====================================================================== */
.md-fiche-livre { padding-top: 150px; }
.md-fiche-livre__inner, .md-fiche-livre__nav { max-width: 1260px; margin: 0 auto; padding: 10px; box-sizing: border-box; }
.md-fiche-livre__retour { margin: 10px; }
.md-fiche-livre__retour a {
	display: inline-block;
	padding: 12px 24px;
	font-family: var(--md-montserrat);
	font-size: 15px;
	font-weight: 400;
	line-height: 20.8px;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--md-brun);
}
.md-fiche-livre__row { display: flex; gap: 20px; padding: 10px; }
.md-fiche-livre__gauche { width: 50%; padding: 10px; display: flex; flex-direction: column; gap: 20px; }
.md-fiche-livre__droite { width: 50%; padding: 30px; display: flex; flex-direction: column; gap: 20px; box-sizing: border-box; }
.md-fiche-livre__titre { margin: 0; font-family: var(--md-noto); font-size: 46px; font-weight: 300; line-height: 58px; color: var(--md-noir); }
.md-fiche-livre__couverture { max-width: 100%; height: auto; }
.md-fiche-livre__description { text-align: justify; font-family: var(--md-montserrat); font-size: 16px; font-weight: 300; line-height: 24px; color: var(--md-gris-texte); }
.md-fiche-livre__description p { margin: 0 0 .9rem; }
.md-fiche-livre__auteur { margin: 0; font-family: var(--md-montserrat); font-size: 16px; font-weight: 300; line-height: 24px; color: var(--md-gris-texte); }
.md-fiche-livre__nav { display: flex; align-items: center; justify-content: space-between; margin-top: 100px; margin-bottom: 40px; }
.md-fiche-livre__prev, .md-fiche-livre__next { flex: 1 1 0; }
.md-fiche-livre__next { text-align: right; }
.md-fiche-livre__nav a { display: inline-flex; align-items: center; gap: 15px; text-decoration: none; }
.md-fiche-livre__nav a > span:not(.md-fiche-livre__fleche) { display: flex; flex-direction: column; }
.md-fiche-livre__fleche { font-size: 30px; line-height: 1; color: var(--md-gris-texte); }
.md-fiche-livre__label { font-family: var(--md-montserrat); font-size: 18px; font-weight: 300; text-transform: capitalize; color: var(--md-gris-texte); }
.md-fiche-livre__autre { font-family: var(--md-montserrat); font-size: 20px; font-weight: 300; color: var(--md-caramel); }
.md-fiche-livre__sep { width: 1px; align-self: stretch; margin: 0 20px; background: #d5d8dc; }
@media (max-width: 1024px) {
	.md-fiche-livre__retour a { font-size: 14px; }
	.md-fiche-livre__titre { font-size: 38px; line-height: 50px; }
	.md-fiche-livre__label { font-size: 15px; }
	.md-fiche-livre__autre { font-size: 16px; }
}
@media (max-width: 767px) {
	.md-fiche-livre { padding-top: 60px; }
	.md-fiche-livre__row { flex-direction: column; }
	.md-fiche-livre__gauche, .md-fiche-livre__droite { width: 100%; box-sizing: border-box; }
	.md-fiche-livre__titre { font-size: 22px; line-height: 32px; }
	.md-fiche-livre__label, .md-fiche-livre__autre { font-size: 18px; }
}

/* =========================================================================
 * 7. Formulaires
 * ====================================================================== */
.md-form-wrap { position: relative; z-index: 2; }
.md-form__fields { display: flex; flex-wrap: wrap; margin: 0 -12.5px -40px; }
.md-field { box-sizing: border-box; padding: 0 12.5px; margin-bottom: 40px; width: 100%; }
.md-field--50 { width: 50%; }
.md-form input[type="text"],
.md-form input[type="email"],
.md-form input[type="tel"],
.md-form textarea {
	display: block;
	width: 100%;
	min-height: 40px;
	padding: 5px 14px;
	box-sizing: border-box;
	border: 0;
	border-bottom: 1px solid var(--md-noir);
	border-radius: 0;
	background: transparent;
	font-family: var(--md-montserrat);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4;
	color: var(--md-gris-texte);
}
.md-form textarea { resize: vertical; }
.md-form input:focus, .md-form textarea:focus { outline: 0; border-bottom-color: var(--md-brun); box-shadow: 0 1px 0 var(--md-brun); }
.md-form label, .md-checks span, .md-field--check span {
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-gris-texte);
}
.md-form--superpapas label { display: block; }
.md-form--superpapas .md-field--check label { display: inline; }
.md-checks { display: flex; flex-direction: column; gap: 4px; padding: 5px 0; }
.md-checks span, .md-field--check span { display: inline-flex; align-items: baseline; gap: 6px; }
.md-form input[type="checkbox"] { accent-color: var(--md-brun); width: 15px; height: 15px; margin: 0; flex: none; }
.md-form__submit { text-align: center; }
.md-submit {
	display: inline-block;
	padding: 18px 50px;
	border: 1px solid var(--md-brun);
	border-radius: 30px;
	background: var(--md-brun);
	color: #fff;
	font-family: var(--md-montserrat);
	font-size: 15px;
	font-weight: 400;
	line-height: 20.8px;
	text-transform: capitalize;
	cursor: pointer;
	transition: background-color .3s, color .3s;
}
.md-submit:hover, .md-submit:focus-visible { background: transparent; color: var(--md-brun); }
.md-form__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.md-notice { margin: 0 0 30px; padding: 14px 18px; border-radius: 6px; font-family: var(--md-montserrat); font-size: 15px; font-weight: 400; line-height: 1.5; }
.md-notice--ok { background: #fff; color: var(--md-brun); border: 1px solid var(--md-peche); }
.md-notice--erreur { background: #fff; color: #8a1f11; border: 1px solid #e6b3a8; }
.md-notice ul { margin: 0; padding-left: 18px; }
@media (max-width: 767px) {
	.md-field--50 { width: 100%; }
}

/* =========================================================================
 * 8. Fenêtres et visionneuse
 * ====================================================================== */
.md-modal-open { overflow: hidden; }
.md-modal {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	opacity: 0;
	transition: opacity .3s ease;
}
.md-modal[hidden] { display: none; }
.md-modal.is-open { opacity: 1; }
.md-modal:target { display: flex; opacity: 1; position: relative; }
.md-modal__overlay { position: absolute; inset: 0; background: rgba(32, 32, 32, .53); }
.md-modal__box {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 30px;
	width: 650px;
	max-width: 100%;
	max-height: calc(100vh - 40px);
	min-height: 45vh;
	overflow: auto;
	box-sizing: border-box;
	background: var(--md-sable);
	box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, .1);
}
.md-modal__close {
	align-self: flex-end;
	position: sticky;
	top: 0;
	z-index: 10;
	margin-bottom: -35px;
	padding: 30px;
	line-height: 0;
	color: var(--md-brun);
}
.md-modal__close svg { width: 14px; height: 14px; fill: currentColor; transition: fill .3s; }
.md-modal__close:hover { color: var(--md-caramel); }
.md-modal__inner { display: flex; flex-direction: column; justify-content: center; gap: 35px; width: 550px; max-width: 100%; margin: 0 auto; }
.md-rdv__intro {
	margin: 0;
	padding: 0 15%;
	text-align: center;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: #5F5B5B;
	animation: md-fondu 1.25s both;
}
.md-rdv__widget { padding: 25px; }
.md-rdv__widget iframe { display: block; width: 100%; max-width: 1024px; height: 479px; border: 0; }

.md-modal--form .md-modal__overlay { background: rgba(0, 0, 0, .6); }
.md-modal--form .md-modal__box { width: 845px; min-height: 0; gap: 10px; padding: 4% 6% 7%; background: #fff; }
.md-modal--form .md-modal__close { margin: 0; padding: 0; color: var(--md-noir); }
.md-modal--form .md-modal__close svg { width: 24px; height: 24px; }
.md-modal--form .md-modal__close:hover { color: #000; }
.md-modal--form .md-modal__inner { width: 100%; gap: 20px; }
.md-modal__title {
	margin: 0;
	padding-top: 100px;
	text-align: center;
	font-family: var(--md-noto);
	font-size: 46px;
	font-weight: 300;
	line-height: 58px;
	color: var(--md-noir);
}
.md-modal__text { margin: 0 0 20px; text-align: center; font-family: var(--md-montserrat); font-size: 16px; font-weight: 300; line-height: 24px; color: var(--md-gris-texte); }
@media (prefers-reduced-motion: no-preference) {
	.md-modal.is-open .md-modal__box { animation: md-fondu .8s both; }
	.md-modal--form.is-open .md-modal__box { animation-duration: 1.2s; }
}
@keyframes md-fondu { from { opacity: 0; } to { opacity: 1; } }
@media (max-width: 1024px) {
	.md-rdv__intro { font-size: 14px; }
	.md-modal__inner { width: 500px; }
	.md-modal--form .md-modal__box { width: 555px; }
	.md-modal__title { font-size: 38px; line-height: 50px; }
}
@media (max-width: 767px) {
	.md-modal { padding: 10px; }
	.md-modal__box { width: 325px; }
	.md-modal__close { margin-bottom: -15px; }
	.md-modal__close svg { width: 12px; height: 12px; }
	.md-modal--form .md-modal__box { width: 325px; }
	.md-modal__title { padding-top: 40px; font-size: 32px; line-height: 44px; }
	.md-rdv__widget { padding: 25px 0; }
}

.md-lightbox { position: fixed; inset: 0; z-index: 10001; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, .87); }
.md-lightbox[hidden] { display: none; }
.md-lightbox img { max-width: 90vw; max-height: 85vh; object-fit: contain; }
.md-lightbox button { position: absolute; border: 0; background: none; color: #fff; font-size: 40px; line-height: 1; cursor: pointer; padding: 10px 16px; opacity: .8; }
.md-lightbox button:hover { opacity: 1; }
.md-lightbox__close { top: 10px; right: 10px; }
.md-lightbox__nav--prev { left: 10px; top: 50%; transform: translateY(-50%); }
.md-lightbox__nav--next { right: 10px; top: 50%; transform: translateY(-50%); }

/* =========================================================================
 * 9. Pied de page
 * ====================================================================== */
.md-footer { background: var(--md-nuit); }
.md-footer__main {
	display: flex;
	align-items: stretch;
	gap: 5%;
	padding: 15% max(3%, calc((100% - 1600px) / 2)) 14.1%;
	box-sizing: border-box;
}
.md-footer__col { display: flex; flex-direction: column; gap: 20px; flex: 0 1 auto; min-width: 0; box-sizing: border-box; }
.md-footer__col--about { width: 40%; }
.md-footer__col--cabinet { width: 30%; }
.md-footer__col--liens { width: 25%; }
.md-footer__col--contact { width: 35%; }
.md-footer__name {
	margin: 0;
	font-family: var(--md-cormorant);
	font-size: 24px;
	font-weight: 400;
	font-style: italic;
	line-height: 25px;
	color: #fff;
}
.md-footer__name .md-dot, .md-footer__role { font-family: var(--md-inter); font-size: 10px; font-style: normal; color: var(--md-terre); }
.md-footer__text {
	margin: 0 0 .9rem;
	font-family: var(--md-inter);
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	letter-spacing: .76px;
	color: var(--md-creme);
}
.md-footer__title {
	margin: 0;
	font-family: var(--md-inter);
	font-size: 11px;
	font-weight: 300;
	line-height: 19px;
	letter-spacing: 5.2px;
	text-transform: uppercase;
	color: var(--md-terre);
}
.md-iconlist { list-style: none; margin: 0; padding: 0; }
.md-iconlist li, .md-iconlist a { display: flex; align-items: flex-start; gap: 0; text-decoration: none; }
.md-iconlist--spaced li + li { margin-top: 26px; }
.md-iconlist__icon { flex: none; display: inline-flex; justify-content: center; width: 35px; color: var(--md-brun); }
.md-iconlist__icon .mm-icon { width: 35px; height: 35px; }
.md-iconlist__text {
	padding-inline-start: 5px;
	font-family: var(--md-inter);
	font-size: 14px;
	font-weight: 400;
	line-height: 22px;
	letter-spacing: .76px;
	color: #fff;
	transition: color .3s;
}
.md-iconlist a:hover .md-iconlist__text { color: var(--md-peche); }
.md-footer__menu { list-style: none; margin: 0; padding: 0; }
.md-footer__menu a {
	display: block;
	font-family: var(--md-inter);
	font-size: 15px;
	font-weight: 300;
	line-height: 39px;
	color: #fff;
	text-decoration: none;
	transition: color .3s;
}
.md-footer__menu a:hover { color: var(--md-peche); }
.md-footer__bottom { background: #fff; padding: 10px; }
.md-footer__bottom p {
	margin: 0;
	text-align: center;
	font-family: var(--md-montserrat);
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
	color: var(--md-gris-texte);
}
.md-footer__bottom a { color: var(--md-brun); }
@media (max-width: 1024px) {
	.md-footer__main { flex-wrap: wrap; justify-content: space-between; }
	.md-footer__col--about { width: 100%; margin-bottom: 5%; }
	.md-footer__col--cabinet, .md-footer__col--liens { width: 45%; }
	.md-footer__col--contact { width: 100%; margin-top: 5%; }
	.md-footer__name { font-size: 38px; line-height: 50px; }
	.md-footer__title { font-size: 14px; }
	.md-footer__menu a { line-height: 37px; }
}
@media (max-width: 767px) {
	.md-footer__main { flex-direction: column; gap: 40px; padding: 5% 5%; }
	.md-footer__col { width: 100% !important; margin: 0 !important; }
	.md-footer__name { font-size: 32px; line-height: 44px; }
	.md-footer__text { font-size: 12px; }
	.md-footer__title { text-align: center; }
	.md-footer__menu a { font-size: 16px; line-height: 44px; }
}


/* =========================================================================
 * 10. Mouvements (même esprit que le site de Céline Chorel)
 *
 * Tous coupés si l'appareil demande à réduire les animations ; contenu visible si le JS ne charge pas.
 * 1. Haut de page : surtitre, titre et texte arrivent en cascade ; titre des pages intérieures aussi.
 * 2. Au défilement : textes, listes, boutons, photos, cartes apparaissent en fondu en montant légèrement.
 * 3. Grands titres « au point » : pleine opacité au centre de l'écran (classe md-focus-texte pour un autre bloc).
 * 4. Photos : légère parallaxe dans leur cadre.
 * 5. Taches décoratives : forme qui « respire » lentement.
 * 6. Menu mobile : ouverture en cercle depuis le bouton ME/NU, liens en cascade, voile sur la page.
 * 7. Survols : flèche des boutons qui avance, soulignement du menu qui se déploie.
 * ====================================================================== */
@media (prefers-reduced-motion: no-preference) {
	/* 1 */
	.md-js .md-hero__kicker,
	.md-js .md-hero__title,
	.md-js .md-hero p.md-hero__text,
	.md-js .md-page-hero .is-style-page { animation: md-monte 1.1s cubic-bezier(.22, 1, .36, 1) both; }
	.md-js .md-hero__title { animation-delay: .15s; }
	.md-js .md-hero p.md-hero__text { animation-delay: .3s; }
	.md-js .md-hero__credit { animation: md-fondu 1.2s ease .8s both; }

	/* 2 */
	.md-reveal { opacity: 0; transform: translate3d(0, 28px, 0); transition: opacity .9s cubic-bezier(.22, 1, .36, 1), transform .9s cubic-bezier(.22, 1, .36, 1), background-color .3s; transition-delay: var(--md-delay, 0s), var(--md-delay, 0s), 0s; }
	.md-reveal.is-in { opacity: 1; transform: none; }
	.wp-block-separator.md-reveal { transform: scaleX(.2); transform-origin: left center; }
	.md-filet--brun.md-reveal { transform-origin: center; }
	.wp-block-separator.md-reveal.is-in { transform: none; }

	/* 3 */
	.md-focus { opacity: var(--md-focus, 1); transform: translate3d(0, var(--md-focus-y, 0px), 0); transition: opacity .15s linear; will-change: opacity, transform; }

	/* 4 */
	.md-parallax { overflow: hidden; }
	.md-parallax img { transform: translate3d(0, var(--md-py, 0px), 0) scale(1.12); will-change: transform; }

	/* 5 */
	.md-tache::before { animation: md-respire 14s ease-in-out infinite; }

	/* 7 */
	.wp-block-button.is-style-fleche .wp-block-button__link::after { transition: transform .35s cubic-bezier(.22, 1, .36, 1); }
	.wp-block-button.is-style-fleche .wp-block-button__link:hover::after { transform: translateX(5px); }
	.md-header .mm-nav__menu > li > a::after { transform: scaleX(0); transition: opacity .3s, transform .4s cubic-bezier(.22, 1, .36, 1); }
	.md-header .mm-nav__menu > li > a:hover::after,
	.md-header .mm-nav__menu > li > a:focus-visible::after,
	.md-header .mm-nav__menu > .current-menu-item > a::after,
	.md-header .mm-nav__menu > .current-menu-ancestor > a::after,
	.md-header .mm-nav__menu > .current_page_item > a::after { transform: none; }
	.md-livre__couverture img { transition: transform .6s cubic-bezier(.22, 1, .36, 1); }
	.md-livre__couverture:hover img { transform: translateY(-6px); }

	/* 6 */
	@media (max-width: 1024px) {
		.md-header .mm-nav__menu,
		.md-header .mm-nav.is-open .mm-nav__menu {
			display: flex !important;
			z-index: 2;
			max-height: calc(100vh - 84px);
			visibility: hidden;
			pointer-events: none;
			clip-path: circle(0 at calc(100% - 46px) -20px);
			transition: clip-path .55s cubic-bezier(.65, 0, .35, 1), visibility 0s linear .55s;
		}
		.md-header .mm-nav.is-open .mm-nav__menu {
			visibility: visible;
			pointer-events: auto;
			clip-path: circle(150% at calc(100% - 46px) -20px);
			transition: clip-path .7s cubic-bezier(.22, 1, .36, 1), visibility 0s;
		}
		.md-header .mm-nav::before {
			content: "";
			position: absolute;
			left: 0;
			right: 0;
			top: 100%;
			height: 100vh;
			z-index: 1;
			background: rgba(54, 41, 33, .38);
			opacity: 0;
			visibility: hidden;
			transition: opacity .45s ease, visibility 0s linear .45s;
		}
		.md-header .mm-nav.is-open::before { opacity: 1; visibility: visible; transition: opacity .45s ease, visibility 0s; }
		.md-header .mm-nav__menu > li { opacity: 0; transform: translate3d(0, -10px, 0); transition: opacity .25s ease, transform .25s ease; }
		.md-header .mm-nav.is-open .mm-nav__menu > li { opacity: 1; transform: none; transition: opacity .5s ease, transform .6s cubic-bezier(.22, 1, .36, 1); }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(1) { transition-delay: .12s; }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(2) { transition-delay: .19s; }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(3) { transition-delay: .26s; }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(4) { transition-delay: .33s; }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(5) { transition-delay: .40s; }
		.md-header .mm-nav.is-open .mm-nav__menu > li:nth-child(n+6) { transition-delay: .47s; }
	}
}
@keyframes md-monte { from { opacity: 0; transform: translate3d(0, 24px, 0); } to { opacity: 1; transform: none; } }
@keyframes md-respire {
	0%, 100% { border-radius: 130% 150% 100% 150%; transform: rotate(0) scale(1); }
	50% { border-radius: 150% 110% 140% 120%; transform: rotate(8deg) scale(1.05); }
}
@media print { .md-reveal, .md-focus { opacity: 1 !important; transform: none !important; } }
