@charset "UTF-8";
/* MPermis 2026, charte « piste 3, vitesse » : feuille commune des pages statiques.
   Ordre : 1 jetons, 2 base, 3 composants, 4 réservation, 5 mouvement, 6 mouvement réduit.
   Règles d'or : un seul aplat rose par écran ; « Être rappelé » et WhatsApp sont de vrais boutons ;
   aucune ombre ni halo ; au repos tout est visible ; on n'anime que transform et opacity.
   Polices : Outfit et Manrope servies par le site (/fonts/*.woff2, déclarées ci-dessous, display swap),
   les deux fichiers latins préchargés dans le <head> de chaque page ; aucune demande à Google. */

/* ============================== 0. POLICES ============================= */
/* Fichiers variables : Outfit de 100 à 900, Manrope de 200 à 800. */
@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url("/fonts/outfit-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url("/fonts/outfit-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url("/fonts/manrope-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url("/fonts/manrope-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ============================== 1. JETONS ============================== */
:root{
  --mp-creme:#f4f0ea; --mp-encre:#2c383d; --mp-gris:#5a6b72; --mp-rose:#e62a7b; --mp-rose-fonce:#d11f6c; --mp-rose-nuit:#b8185c;
  --mp-cyan:#06aee1; --mp-filet:#e3ddd3; --mp-blanc:#fff; --mp-voile-rose:#fff5f9;
  --mp-wa:#25d366; --mp-wa-filet:#1a8f45; --mp-erreur:#b00020; --mp-gris-sombre:#c9d2d6; --mp-champ:#cfc6b8;

  --mp-f-titre:'Outfit',system-ui,-apple-system,'Segoe UI',sans-serif; --mp-f-texte:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mp-t-hero:clamp(2.5rem,1.6rem + 3.6vw,3.5rem);
  --mp-t-h1:clamp(2.125rem,1.5rem + 2.6vw,3rem);
  --mp-t-h2:clamp(1.75rem,1.3rem + 1.8vw,2.5rem);
  --mp-t-h3:1.25rem; --mp-t-chapo:1.125rem; --mp-t-texte:1rem; --mp-t-petit:.875rem; --mp-t-micro:.75rem;

  --mp-e1:4px; --mp-e2:8px; --mp-e3:12px; --mp-e4:16px; --mp-e5:24px; --mp-e6:32px; --mp-e7:48px; --mp-e8:64px;
  --mp-e-section:clamp(64px,7vw,104px); --mp-gouttiere:clamp(16px,4vw,40px); --mp-largeur:1180px; --mp-mesure:66ch;

  --mp-r-champ:14px; --mp-r-bloc:20px; --mp-r-carte:24px; --mp-r-photo:32px; --mp-r-pilule:999px;
  --mp-penche-fort:-16deg; --mp-penche-doux:-8deg;

  --mp-d1:120ms; --mp-d2:200ms; --mp-d3:320ms; --mp-d4:560ms;
  --mp-elan:cubic-bezier(.16,1,.3,1); --mp-std:cubic-bezier(.2,.8,.2,1); --mp-frein:cubic-bezier(.4,0,1,1);

  --mp-fleche-blanche:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --mp-fleche-encre:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232c383d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E");
  --mp-chevron-rose:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d11f6c' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  --mp-coche-blanche:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  --mp-coche-cyan:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306aee1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
  /* lignes de vitesse : trois traits de longueurs 1, 0,6 et 0,35, jamais un « = » */
  --mp-lignes:linear-gradient(90deg,#0000,rgb(6 174 225/.85)) 100% 8%/100% .06em no-repeat,
              linear-gradient(90deg,#0000,var(--mp-rose)) 100% 52%/60% .085em no-repeat,
              linear-gradient(90deg,#0000,rgb(6 174 225/.85)) 100% 96%/35% .06em no-repeat;
}

/* ================================ 2. BASE ============================== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:96px}
body.mp-page{margin:0;background:var(--mp-creme);color:var(--mp-encre);font-family:var(--mp-f-texte);font-size:var(--mp-t-texte);line-height:1.6;
  font-kerning:normal;font-variant-numeric:lining-nums proportional-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
body.mp-page *,body.mp-page *::before,body.mp-page *::after{box-sizing:border-box}
/* base à spécificité nulle : les composants .mp-* l'emportent toujours */
:where(body.mp-page) :where(h1,h2,h3,h4,p,ul,ol,figure,dl,dd){margin:0}
:where(body.mp-page) :where(h1,h2,h3){font-family:var(--mp-f-titre);color:var(--mp-encre);text-wrap:balance}
:where(body.mp-page) h1{font-size:var(--mp-t-h1);font-weight:800;line-height:1.06;letter-spacing:-.03em}
:where(body.mp-page) h2{font-size:var(--mp-t-h2);font-weight:800;line-height:1.1;letter-spacing:-.025em}
:where(body.mp-page) h3{font-size:var(--mp-t-h3);font-weight:700;line-height:1.25;letter-spacing:-.01em;margin-top:var(--mp-e6)}
:where(body.mp-page) :where(p,li){color:var(--mp-gris);text-wrap:pretty}
:where(body.mp-page) :where(p,li) b{color:var(--mp-encre);font-weight:700}
:where(body.mp-page main) p{margin-top:var(--mp-e3);max-width:var(--mp-mesure)}
:where(body.mp-page main) ul:not([class]),:where(body.mp-page main) ol:not([class]){margin:var(--mp-e3) 0 0;padding-left:1.2em;max-width:var(--mp-mesure)}
:where(body.mp-page main) :where(ul,ol):not([class]) li{margin-top:var(--mp-e2)}
:where(body.mp-page main) ul:not([class]) li::marker{color:var(--mp-rose)}
:where(body.mp-page main) ol:not([class]) li::marker{color:var(--mp-encre);font-family:var(--mp-f-titre);font-weight:800}
:where(body.mp-page) :where(p,li,td) a{color:var(--mp-encre);text-decoration-color:var(--mp-rose);text-decoration-thickness:2px;text-underline-offset:3px}
:where(body.mp-page) :where(p,li,td) a:hover{text-decoration-color:var(--mp-encre)}
:where(body.mp-page) abbr[title]{text-decoration:underline dotted;text-decoration-thickness:1px;text-underline-offset:3px;cursor:help}
.mp-final :where(p,li) a{color:#fff}
:where(body.mp-page) img{max-width:100%;height:auto;display:block}
.mp-ville,.mp-insecable{white-space:nowrap}
.mp-conteneur{max-width:var(--mp-largeur);margin-inline:auto;padding-inline:var(--mp-gouttiere)}
.mp-section{padding-block:var(--mp-e-section) 0}
.mp-section > .mp-conteneur > h2{max-width:24ch}
.mp-section > .mp-conteneur > h3:first-of-type{margin-top:var(--mp-e6)}
.mp-evitement{position:absolute;left:12px;top:-60px;z-index:100;background:var(--mp-encre);color:#fff!important;padding:10px 16px;border-radius:12px;font-weight:700;text-decoration:none}
.mp-evitement:focus{top:12px}
.mp-masque{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ============================ 3. COMPOSANTS ============================ */

/* 3.1 En-tête : logo et mot-symbole, menu aligné après le logo (même place sur toutes les pages),
       téléphone, un seul aplat rose. Sous 880 px, menu en <details> sans script. */
.mp-entete{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:18px;height:70px;padding:0 28px;
  background:#fff;border-bottom:1px solid var(--mp-filet)} /* opaque : plus de texte flou qui transparaît sous le logo */
.mp-logo{display:inline-flex;align-items:center;gap:10px;flex:none;text-decoration:none;color:var(--mp-encre)}
.mp-logo img{width:40px;height:40px;border-radius:10px}
.mp-logo-mot{font:800 21px/1 var(--mp-f-titre);letter-spacing:-.02em;color:var(--mp-encre)}
.mp-logo-mot span{color:var(--mp-rose-fonce)}
.mp-nav{display:flex;align-items:center;gap:2px;flex:1 1 auto;min-width:0;overflow:hidden;padding-block:4px;margin-left:clamp(8px,2vw,32px)}
.mp-nav a{position:relative;padding:9px 12px;font:600 13.5px/1 var(--mp-f-texte);color:var(--mp-encre);text-decoration:none;white-space:nowrap}
.mp-nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:2px;background:var(--mp-rose);transform:scaleX(0);transform-origin:0 50%;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-nav a[aria-current=page]::after{transform:none}
.mp-entete-droite{display:flex;align-items:center;gap:18px;flex:none;margin-left:auto}
.mp-entete-tel{display:inline-flex;align-items:center;gap:7px;font:700 14px/1 var(--mp-f-texte);color:var(--mp-encre)!important;text-decoration:none;white-space:nowrap}
.mp-entete-tel svg{width:15px;height:15px}
.mp-burger{display:none;position:relative;margin-left:auto}
.mp-burger summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--mp-creme);cursor:pointer;color:var(--mp-encre)}
.mp-burger summary::-webkit-details-marker{display:none}
.mp-burger summary svg{width:24px;height:24px}
.mp-burger .mp-ferme{display:none}
.mp-burger[open] .mp-ouvre{display:none}
.mp-burger[open] .mp-ferme{display:block}
.mp-burger-panneau{position:absolute;right:0;top:54px;width:min(300px,calc(100vw - 32px));background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);padding:10px;display:grid;gap:2px}
.mp-burger-panneau a{padding:12px 14px;border-radius:12px;font:600 15px/1.2 var(--mp-f-texte);color:var(--mp-encre);text-decoration:none}
.mp-burger-panneau a[aria-current=page]{background:var(--mp-creme);box-shadow:inset 3px 0 0 var(--mp-rose)}
.mp-burger-panneau .mp-burger-tel{margin-top:6px;border-top:1px solid var(--mp-filet);border-radius:0 0 12px 12px;padding-top:16px;font-weight:700}
@media (max-width:1300px){.mp-nav a{padding:9px 9px}.mp-nav a::after{left:9px;right:9px}}
@media (max-width:1260px){.mp-entete-tel{display:none}}
@media (max-width:1110px){.mp-logo-mot{display:none}.mp-nav{margin-left:4px}.mp-nav a{padding:9px 7px;font-size:13px}.mp-nav a::after{left:7px;right:7px}.mp-entete .mp-plein .mp-long{display:none}}
@media (max-width:879px){.mp-nav,.mp-entete-droite{display:none!important}.mp-burger{display:block}.mp-entete{padding:0 16px}.mp-logo-mot{display:inline}}
.mp-jauge{position:absolute;left:0;right:0;bottom:-1px;height:3px;pointer-events:none;background:linear-gradient(90deg,var(--mp-rose),var(--mp-cyan));transform:scaleX(0);transform-origin:0 50%;display:none}

/* 3.2 Bouton plein rose : le seul aplat de l'écran. Éclair à gauche, flèche blanche à droite.
       Le petit bouton de l'en-tête (15 px) passe en rose foncé pour tenir 5,09:1 ; le grand (19 px gras) tient 4,22:1 en grand texte. */
.mp-plein{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 26px;border:0;border-radius:var(--mp-r-pilule);
  background:var(--mp-rose);color:#fff!important;font:700 19px/1.15 var(--mp-f-titre);letter-spacing:-.01em;text-decoration:none;cursor:pointer;box-shadow:none;
  -webkit-tap-highlight-color:transparent;transition:transform var(--mp-d1) var(--mp-std),background-color var(--mp-d2) var(--mp-std)}
.mp-plein::after{content:"";flex:none;width:18px;height:18px;background:var(--mp-fleche-blanche) center/18px no-repeat;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-plein::before{content:"";position:absolute;right:calc(26px + 21px);top:50%;width:12px;height:9px;margin-top:-4.5px;pointer-events:none;
  background:linear-gradient(#fff,#fff) 100% 0/100% 2px no-repeat,linear-gradient(#fff,#fff) 100% 100%/60% 2px no-repeat;
  opacity:0;transform:translateX(8px) scaleX(.2);transform-origin:100% 50%;transition:opacity var(--mp-d2) var(--mp-std),transform var(--mp-d2) var(--mp-elan)}
.mp-plein svg{flex:none;width:18px;height:18px}
.mp-plein-large{width:100%}
.mp-plein-large::before{display:none}
.mp-plein-petit{min-height:44px;padding:0 18px;font-size:15px;gap:8px;background:var(--mp-rose-fonce)}
.mp-plein-petit::before{right:calc(18px + 21px)}
.mp-plein-petit svg{width:15px;height:15px}
.mp-plein:disabled{background:#e9e3da;color:#7b878c!important;cursor:not-allowed}
.mp-plein:disabled::after{opacity:.35;filter:grayscale(1)}
.mp-plein:disabled .mp-eclair{animation:none}

/* 3.3 Paire de contact : « Être rappelé » (vrai bouton) et WhatsApp, filet 2 px, pastille d'icône, flèche en pastille crème. */
.mp-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.mp-rappel{display:contents}
.mp-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;margin:0;padding:0 8px;border-radius:var(--mp-r-pilule);
  background:#fff;border:2px solid var(--mp-encre);color:var(--mp-encre)!important;font:700 16px/1.2 var(--mp-f-titre);text-decoration:none;white-space:nowrap;cursor:pointer;box-shadow:none;
  -webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;transition:transform var(--mp-d1) var(--mp-std),background-color var(--mp-d2) var(--mp-std)}
.mp-btn-wa{border-color:var(--mp-wa-filet)}
.mp-btn .mp-lib{flex:1;text-align:left}
.mp-btn::after{content:"";flex:none;width:28px;height:28px;border-radius:999px;background:var(--mp-creme) var(--mp-fleche-encre) center/15px no-repeat;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-tuile{flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;color:var(--mp-encre)}
.mp-tuile svg{width:16px;height:16px;display:block}
.mp-tuile-tel{background:var(--mp-cyan)}
.mp-tuile-wa{background:var(--mp-wa)}
@media (max-width:559px){.mp-duo .mp-long{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
/* 390 px et moins : la flèche s'efface, le libellé respire au centre (constat « pilules serrées ») */
@media (max-width:440px){.mp-duo .mp-btn::after{display:none}.mp-duo .mp-btn{padding:0 12px;gap:10px}.mp-duo .mp-btn .mp-lib{flex:0 1 auto;text-align:center}}
.mp-duo-sombre .mp-btn{background:transparent;border-color:#fff;color:#fff!important}
.mp-duo-sombre .mp-btn-wa{border-color:var(--mp-wa)}
.mp-duo-sombre .mp-btn::after{background-color:#fff}
.mp-duo-pile{grid-template-columns:1fr}
.mp-duo-pile .mp-long{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important}

/* 3.4 Lien à flèche : pilule à filet encre, flèche en pastille crème. Jamais un aplat rose. */
.mp-lien-fleche{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:0 8px 0 20px;border:2px solid var(--mp-encre);border-radius:var(--mp-r-pilule);
  color:var(--mp-encre)!important;font:700 15px/1.2 var(--mp-f-titre);text-decoration:none!important;background:transparent;transition:transform var(--mp-d1) var(--mp-std),background-color var(--mp-d2) var(--mp-std)}
.mp-lien-fleche::after{content:"";flex:none;width:30px;height:30px;border-radius:999px;background:var(--mp-creme) var(--mp-fleche-encre) center/15px no-repeat;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-liens-ligne{display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--mp-e5)}

/* 3.5 Cartes, encarts, pastilles, points */
.mp-carte{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);padding:28px;box-shadow:none}
.mp-encart{margin-top:var(--mp-e5);max-width:760px}
.mp-encart > :first-child{margin-top:0!important}
.mp-encart p{max-width:none}
.mp-alerte{border-left:6px solid var(--mp-rose)}
.mp-alerte-titre{display:flex;align-items:center;gap:10px;font:800 17px/1.3 var(--mp-f-titre);color:var(--mp-encre);margin:0}
.mp-alerte-titre svg{flex:none;width:22px;height:22px;color:var(--mp-rose-fonce)}
.mp-pastilles{display:flex;flex-wrap:wrap;gap:8px 10px}
.mp-pastille{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:5px 13px;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-pilule);
  font:700 13px/1.2 var(--mp-f-titre);color:var(--mp-encre)}
.mp-pastille svg{flex:none;width:13px;height:13px;color:var(--mp-rose)}
.mp-points{display:flex;flex-wrap:wrap;gap:8px 22px;padding:0;margin:var(--mp-e5) 0 0;list-style:none}
.mp-points li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--mp-gris);margin:0}
.mp-points li::before{content:"";width:14px;height:14px;flex:none;background:var(--mp-coche-cyan) center/14px no-repeat}
.mp-surtitre{display:block;font:700 12px/1.2 var(--mp-f-titre);letter-spacing:.08em;text-transform:uppercase;color:var(--mp-rose-nuit);margin-bottom:var(--mp-e3)}
.mp-fil{font-size:13px;color:var(--mp-gris);margin-bottom:var(--mp-e5)}
.mp-fil ol{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}
.mp-fil li{color:var(--mp-gris);font-size:13px}
.mp-fil li + li::before{content:"›";margin-right:6px;color:#8a979c}
.mp-fil a{color:var(--mp-gris);text-decoration:none}
.mp-fil a:hover{text-decoration:underline}
.mp-note{font-size:14px!important;color:var(--mp-gris)}
.mp-coord{list-style:none;padding:0;margin:var(--mp-e5) 0 0;display:grid;gap:10px;max-width:560px}
.mp-coord li{display:flex;gap:12px;align-items:baseline;margin:0;font-size:15px;color:var(--mp-gris)}
.mp-coord li b{flex:none;min-width:8.5em;font:700 14px/1.4 var(--mp-f-titre);color:var(--mp-encre)}

/* 3.6 Mot penché : trois niveaux, jamais plus d'un niveau 1 par page */
.mp-vite{position:relative;display:inline-block;margin-left:.46em;margin-right:.1em;transform:skewX(var(--mp-penche-fort));transform-origin:0 100%;color:inherit;white-space:nowrap;
  text-shadow:-.05em 0 0 rgb(230 42 123/.55),-.11em 0 0 rgb(230 42 123/.36),-.18em 0 0 rgb(230 42 123/.22),-.26em 0 0 rgb(6 174 225/.2),-.35em 0 0 rgb(6 174 225/.1)}
.mp-vite::before{content:"";position:absolute;right:calc(100% + .34em);top:.2em;width:.52em;height:.56em;pointer-events:none;background:var(--mp-lignes)}
/* En début de ligne (classe posée par mp-2026.js), l'espace de lancement est la marge du texte : les lignes
   y tiennent entières (.46 em = marge du mot) et partent du bord du texte, jamais dans la gouttière. */
html .mp-vite.mp-vite-debut::before{right:calc(100% + .12em);width:.34em}
.mp-vite-doux{display:inline-block;margin-right:.08em;transform:skewX(var(--mp-penche-doux));transform-origin:0 100%;color:inherit;
  text-shadow:-.05em 0 0 rgb(230 42 123/.34),-.1em 0 0 rgb(6 174 225/.16)}
.mp-chiffre{display:inline-block;font-family:var(--mp-f-titre);font-weight:800;letter-spacing:-.02em;transform:skewX(var(--mp-penche-doux));transform-origin:0 100%}
@media (max-width:600px){.mp-vite{text-shadow:-.05em 0 0 rgb(230 42 123/.5),-.11em 0 0 rgb(230 42 123/.26),-.2em 0 0 rgb(6 174 225/.16)}}

/* 3.7 Sillage sous les titres de section : trait rose, puis deux traits cyan. */
.mp-sillage::after{content:"";display:block;width:88px;height:4px;margin-top:18px;border-radius:4px;transform-origin:0 50%;
  background:linear-gradient(90deg,var(--mp-rose) 0 52%,#0000 52% 60%,var(--mp-cyan) 60% 78%,#0000 78% 85%,var(--mp-cyan) 85%)}

/* 3.8 Haut des pages intérieures : texte à gauche, photo ou carte-résumé à droite */
.mp-hero{padding-block:clamp(28px,5vw,64px) 0}
.mp-hero-grille{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(32px,5vw,72px);align-items:center}
.mp-hero-seul .mp-hero-grille{grid-template-columns:minmax(0,860px)}
.mp-hero h1{max-width:21ch}
.mp-hero-seul h1{max-width:22ch}
.mp-hero .mp-pastilles,.mp-resa-tete .mp-pastilles{margin-top:var(--mp-e5)}
.mp-chapo{font-size:var(--mp-t-chapo)!important;line-height:1.55;color:var(--mp-gris);margin-top:var(--mp-e5)!important;max-width:52ch!important}
.mp-actions{display:grid;gap:12px;margin-top:var(--mp-e6);width:min(100%,520px)}
.mp-photo{position:relative;margin:0}
.mp-photo img{width:100%;aspect-ratio:4/4.2;object-fit:cover;border-radius:var(--mp-r-photo)}
.mp-photo-large img{aspect-ratio:4/3.4}
.mp-note-photo{position:absolute;left:20px;bottom:20px;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);padding:12px 16px 12px 14px}
.mp-note-photo b{font:800 30px/1 var(--mp-f-titre);color:var(--mp-rose-fonce);display:inline-block;transform:skewX(var(--mp-penche-doux));white-space:nowrap}
.mp-note-photo span{font-size:12.5px;line-height:1.3;color:var(--mp-gris);font-weight:600}
.mp-resume{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-photo);padding:clamp(22px,3vw,34px)}
.mp-resume h2{font-size:22px!important;line-height:1.2;letter-spacing:-.015em}
.mp-resume ol{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:0}
.mp-resume li{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:start;padding:16px 0;border-top:1px solid var(--mp-filet);margin:0}
.mp-resume li:first-child{border-top:0;padding-top:4px}
.mp-resume .mp-resume-cle{grid-row:span 2;display:inline-grid;place-items:center;min-width:64px;height:40px;padding:0 12px;border-radius:999px;background:var(--mp-encre);color:#fff;font:800 15px/1 var(--mp-f-titre);white-space:nowrap}
.mp-resume .mp-resume-cle i{font-style:normal;display:inline-block;transform:skewX(var(--mp-penche-doux))}
.mp-resume b{font:700 16px/1.3 var(--mp-f-titre);color:var(--mp-encre)}
.mp-resume li > span:not(.mp-resume-cle){font-size:14px;line-height:1.45;color:var(--mp-gris)}
.mp-resume a{color:inherit;text-decoration:none}
.mp-resume a:hover b{text-decoration:underline;text-decoration-color:var(--mp-rose);text-decoration-thickness:2px;text-underline-offset:3px}
.mp-resume.mp-resume-court .mp-resume-cle{min-width:40px;padding:0}
.mp-resume-court li{align-items:center}
@media (max-width:900px){.mp-hero-grille{grid-template-columns:1fr}.mp-photo img,.mp-photo-large img{aspect-ratio:4/3}}
@media (max-width:560px){.mp-note-photo{left:12px;bottom:12px;padding:10px 12px}.mp-note-photo b{font-size:24px}.mp-resume{border-radius:var(--mp-r-carte)}}
.mp-intro{font-size:17px!important;color:var(--mp-encre)!important;line-height:1.6}

/* 3.9 Bande de chiffres : fond encre, quatre chiffres blancs penchés doux */
.mp-bande{background:var(--mp-encre);color:#fff;margin-top:var(--mp-e-section)}
.mp-bande ul{list-style:none;margin:0 auto;max-width:var(--mp-largeur);padding:40px var(--mp-gouttiere);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.mp-bande li{border-left:1px solid rgb(255 255 255/.14);padding-left:22px;margin:0}
.mp-bande li:first-child{border-left:0;padding-left:0}
.mp-bande .mp-chiffre{font-size:44px;line-height:1;color:#fff;white-space:nowrap}
.mp-bande li:first-child .mp-chiffre{text-decoration:underline;text-decoration-color:var(--mp-rose);text-decoration-thickness:4px;text-underline-offset:8px}
.mp-bande small{display:block;margin-top:10px;font-size:13px;line-height:1.35;color:var(--mp-gris-sombre)}
@media (max-width:760px){.mp-bande ul{grid-template-columns:1fr 1fr;gap:28px 20px}.mp-bande li{border-left:0;padding-left:0}.mp-bande .mp-chiffre{font-size:34px}}

/* 3.10 Étapes numérotées */
.mp-etapes{list-style:none;padding:0;margin:var(--mp-e6) 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;counter-reset:etape}
.mp-etapes > li{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);padding:24px;margin:0}
.mp-etapes .mp-num{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:999px;background:var(--mp-encre);color:#fff;font:800 17px/1 var(--mp-f-titre);white-space:nowrap}
.mp-etapes .mp-num i{font-style:normal;display:inline-block;transform:skewX(var(--mp-penche-doux))}
.mp-etapes h3{margin-top:16px;font-size:18px}
.mp-etapes p{font-size:15px;margin-top:8px}
.mp-etapes ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.mp-etapes ul li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.5;margin:0}
.mp-etapes ul li::before{content:"";position:absolute;left:0;top:.3em;width:14px;height:14px;background:var(--mp-coche-cyan) center/14px no-repeat}
.mp-etapes-large{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}

/* 3.11 Tarifs : rangées nettes dans une carte, prix penché doux, chiffres tabulaires */
.mp-tarifs{list-style:none;padding:0;margin:var(--mp-e4) 0 0;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);overflow:hidden;max-width:760px}
.mp-tarifs li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 22px;border-top:1px solid var(--mp-filet);margin:0;color:var(--mp-encre);font-weight:600;font-size:15px;line-height:1.4}
.mp-tarifs li:first-child{border-top:0}
.mp-tarifs li > span{min-width:0}
.mp-tarifs li small{display:block;font-weight:500;font-size:13px;color:var(--mp-gris);margin-top:2px}
.mp-tarifs .mp-chiffre{flex:none;font-size:22px;color:var(--mp-encre);font-variant-numeric:tabular-nums;white-space:nowrap}
.mp-tarifs .mp-chiffre.mp-texte{font:600 15px/1.2 var(--mp-f-texte);transform:none;color:var(--mp-gris)}
@media (max-width:420px){.mp-tarifs li{padding:14px 16px;font-size:14.5px}.mp-tarifs .mp-chiffre{font-size:19px}}

/* 3.11 bis Tableaux comparatifs : carte blanche ; sous 700 px, chaque ligne devient une fiche */
.mp-tableau{margin-top:var(--mp-e5);background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);overflow:hidden;max-width:100%}
.mp-tableau table{width:100%;border-collapse:collapse;font-size:14.5px;line-height:1.45}
.mp-tableau th{padding:14px 16px;text-align:left;font:700 13px/1.3 var(--mp-f-titre);color:var(--mp-encre);background:#faf8f4;border-bottom:1px solid var(--mp-filet);vertical-align:bottom}
.mp-tableau td{padding:14px 16px;border-top:1px solid var(--mp-filet);color:var(--mp-gris);vertical-align:top}
.mp-tableau tr:nth-child(2) td{border-top:0}
.mp-tableau td:first-child{font-weight:700;color:var(--mp-encre)}
@media (max-width:700px){
  .mp-tableau-fiches{background:transparent;border:0;border-radius:0}
  .mp-tableau-fiches table,.mp-tableau-fiches tbody,.mp-tableau-fiches tr,.mp-tableau-fiches td{display:block;width:100%}
  .mp-tableau-fiches tr:first-child{display:none}
  .mp-tableau-fiches tr{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);padding:6px 18px;margin-top:12px}
  .mp-tableau-fiches td{border-top:1px solid var(--mp-filet);padding:10px 0}
  .mp-tableau-fiches td:first-child{border-top:0;font:800 17px/1.3 var(--mp-f-titre);padding-top:12px}
  .mp-tableau-fiches td[data-l]::before{content:attr(data-l);display:block;font:700 12px/1.3 var(--mp-f-titre);letter-spacing:.04em;text-transform:uppercase;color:var(--mp-encre);margin-bottom:2px}
}
@media (max-width:420px){.mp-tableau th,.mp-tableau td{padding:12px 10px;font-size:13.5px}}

/* 3.12 FAQ : question en rangée blanche, chevron rose dans une pastille crème */
.mp-faq{display:grid;gap:10px;margin-top:var(--mp-e6);max-width:860px}
.mp-faq details{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);padding:0 22px}
.mp-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:14px 0;cursor:pointer;list-style:none;font:700 16px/1.35 var(--mp-f-titre);color:var(--mp-encre)}
.mp-faq summary::-webkit-details-marker{display:none}
.mp-faq summary::after{content:"";flex:none;width:30px;height:30px;border-radius:999px;background:var(--mp-creme) var(--mp-chevron-rose) center/15px no-repeat;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-faq details[open] summary::after{transform:rotate(180deg)}
.mp-faq details > p{margin:0 0 18px!important}
@media (max-width:420px){.mp-faq details{padding:0 16px}}

/* 3.13 Bloc final : carte sombre, un plein rose et la paire de contact */
.mp-final{background:var(--mp-encre);color:#fff;border-radius:var(--mp-r-photo);padding:clamp(32px,5vw,56px);text-align:center}
.mp-final h2{color:#fff;margin-inline:auto;max-width:22ch}
.mp-final p{color:var(--mp-gris-sombre)!important;margin-inline:auto!important;max-width:56ch}
.mp-final .mp-actions{margin-inline:auto}
.mp-final .mp-points{justify-content:center}
.mp-final .mp-points li{color:var(--mp-gris-sombre)}
@media (max-width:560px){.mp-final{padding:36px 18px;border-radius:var(--mp-r-carte)}.mp-final .mp-duo{grid-template-columns:1fr}.mp-final .mp-duo .mp-long{position:static!important;width:auto;height:auto;margin:0;overflow:visible;clip:auto}.mp-final .mp-duo .mp-btn::after{display:block}}
.mp-contacts{list-style:none;padding:0;margin:var(--mp-e5) auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;font-size:14px}
.mp-contacts li{color:var(--mp-gris-sombre)!important;margin:0}
.mp-contacts a{color:#fff}
.mp-maillage{margin-top:20px!important}

/* 3.14 Pied de page : encre, quatre colonnes, ligne légale, grand mot-symbole */
.mp-pied{background:var(--mp-encre);color:rgb(255 255 255/.75);margin-top:var(--mp-e-section);overflow:hidden;font-family:var(--mp-f-texte)}
.mp-pied-grille{max-width:var(--mp-largeur);margin:0 auto;padding:54px var(--mp-gouttiere) 40px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px}
.mp-pied-marque{font:800 22px/1 var(--mp-f-titre);color:#fff}
.mp-pied-marque span{color:var(--mp-rose)}
.mp-pied small{display:block;font-size:13px;color:rgb(255 255 255/.6);margin:6px 0 16px}
.mp-pied .mp-pied-certif{font-size:11.5px;line-height:1.5;margin:10px 0 0;max-width:34ch}
.mp-pied address{font-style:normal;font-size:14px;line-height:1.7}
.mp-pied address a{color:#fff;text-decoration:none}
.mp-pied h2{font:700 14px/1.2 var(--mp-f-titre)!important;letter-spacing:0!important;color:#fff;margin:0 0 14px}
.mp-pied nav{display:flex;flex-direction:column;gap:9px;font-size:13.5px}
.mp-pied nav a{color:rgb(255 255 255/.75);text-decoration:none}
.mp-pied nav a:hover{color:#fff;text-decoration:underline}
.mp-pied nav a.mp-pied-discret{color:rgb(255 255 255/.6);font-size:12.5px}
.mp-pied nav a.mp-pied-discret:first-of-type{margin-top:6px}
.mp-labels{display:inline-flex;align-items:center;gap:14px;background:#fff;border-radius:14px;padding:10px 14px;margin-top:22px;max-width:100%}
.mp-labels i{width:1px;height:34px;background:var(--mp-filet)}
.mp-label{display:block;flex:none;background:center/contain no-repeat}
.mp-label-ecq{width:46px;height:44px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABgCAMAAADcrSdwAAABgFBMVEX///////7+//7//v7+/v/+/v7+/f7///z//vz+/v3+/vz+/vv+/vX9/fz+/tz+/br+/ZL+/GX//0j//0b//0X//0T+/0T//0P//0L+/0L//0H+/0H+/En+/UL+/UH//0D//z///j///T/+/UD+/D/8+0D//z7//T7//D7+/D7/+z7++z79+z78+z7+/D37+W78+UD9+j/8+T/59z/++j79+j78+j78+T769z79+j38+j38+T38+D37+T37+D36+D379z369z359z339T359jr39Dz18jro5trl5bzz8Dvt7Dvw7Trt6zrp5znv7Dbk4jfh3jfd2zbSz7XZ1jXX1DTS0DPNyzLJxzHDwS+8ui64tiy1syyxryuzqjaopy6joCebnECamCWYliSRkCiOjCKKiCGDgh9/fR55dx1ybxxoZxlgYCBcWxZVVBRITCdHRxFEQxBxORw6Og40MwwsKwolJQkfIxkcHAcYGAYREQQLCwMGBQEDAwECAgABAAAAAAA79E+qAAAW3UlEQVR42o1aiX/ayJKW972sx46fD4yi3l47LQzmCIxtcGTMKCYDHpyHQQOEG/RDC+ZeGFiOx2n3v74lbieZ2W1sJEDqT13V9VV1VTPM6/YG2uxt3XZ2385/29vfP5i3/f29v8+ufru78/rib2+ef7fsfAXx+rc327uz/g8OL49OThHmEMYcxqcnR4eHB3vqTzMYZt09s4m2eOq/GgizpSK83T88OoXOjaYLwX57bbff3roujDxBLCDtbzNw1darR3199vqcmT8Ps4LZ+gm+BAQO8eKt3Y7RZ8GKiFsgyGkXsONK+MAjDnDU4Wwx37c3zI+/3JQWjOLtwSWHjY5zO8Jeg5TENzf1NDrPVrBbCJkEgby3C0aELg/gabZ/2OUPYdcQcNPbgyOWd9qx06PPJhGWaRmTJk1pZVrkAuMCupMCNsFxLRDu6GCL2dn6/6BsDmRnl/n7wREy3jo+WoOEvG/QsgUVaNPHNmhaU6JpbX0SetdsozuCBbvdyB4d/OVgXglpMSQY/v4lZ3QYsPHOP+wkEXp67iWPU6NuFDfGaa45Dl8NW9osTb2Ta8QlXDmN7OU+s7W1FMhcsws9b86q+Wf1q21m91DL3zosvnQA4UyXthLa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")}
.mp-label-qualiopi{width:85px;height:44px;background-image:url("data:image/png;base64,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")}
.mp-pied-legal{border-top:1px solid rgb(255 255 255/.1);max-width:var(--mp-largeur);margin:0 auto;padding:18px var(--mp-gouttiere);font-size:12px;color:rgb(255 255 255/.55);text-align:center}
.mp-grand{font:800 clamp(72px,17vw,250px)/.8 var(--mp-f-titre);letter-spacing:-.05em;color:rgb(255 255 255/.07);text-align:center;padding-top:28px;white-space:nowrap;user-select:none;pointer-events:none;overflow:hidden}
.mp-grand span{color:transparent;-webkit-text-stroke:2px rgb(230 42 123/.6)}
@media (max-width:760px){.mp-pied-grille{grid-template-columns:1fr 1fr}.mp-pied-grille > :first-child{grid-column:1/-1}}

/* 3.15 Barre fixe du téléphone : Appeler (cercle encre), WhatsApp (cercle vert), Réserver seul aplat rose.
        Sur la réservation : Appeler et WhatsApp seulement. */
.mp-barre{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;grid-template-columns:1fr 1.2fr 1.15fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:#fff;border-top:1px solid var(--mp-filet)}
.mp-barre a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 6px;border-radius:999px;font:700 15px/1 var(--mp-f-titre);text-decoration:none;white-space:nowrap;
  transition:transform var(--mp-d1) var(--mp-std)}
.mp-barre svg{width:16px;height:16px;flex:none}
.mp-barre .mp-b-rond{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;flex:none}
.mp-barre .mp-b-appel{background:#fff;color:var(--mp-encre);border:2px solid var(--mp-encre)}
.mp-barre .mp-b-appel .mp-b-rond{background:var(--mp-encre);color:#fff}
.mp-barre .mp-b-wa{background:#fff;color:var(--mp-encre);border:2px solid var(--mp-wa-filet)}
.mp-barre .mp-b-wa .mp-b-rond{background:var(--mp-wa);color:var(--mp-encre)}
.mp-barre .mp-b-resa{background:var(--mp-rose-fonce);color:#fff}
.mp-barre-deux{grid-template-columns:1fr 1fr}
@media (max-width:400px){.mp-barre{gap:6px;padding-inline:8px}.mp-barre a{font-size:14px;gap:6px;padding:0 4px}.mp-barre .mp-b-rond{width:24px;height:24px}.mp-barre .mp-b-rond svg{width:14px;height:14px}}
/* la réserve de la barre est posée sur le pied : la page se termine en encre */
@media (max-width:559px){.mp-barre{display:grid}.mp-pied{padding-bottom:74px}}

/* 3.16 Page d'erreur */
.mp-erreur{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start;padding-block:clamp(40px,7vw,96px) 0}
.mp-erreur-num{font:800 clamp(112px,14vw,210px)/.82 var(--mp-f-titre);letter-spacing:-.06em;color:var(--mp-encre);margin:0;justify-self:center;padding-left:.3em;padding-top:.04em}
.mp-erreur-num .mp-vite{margin-left:.3em;text-shadow:-.04em 0 0 rgb(230 42 123/.5),-.085em 0 0 rgb(230 42 123/.26),-.13em 0 0 rgb(6 174 225/.2)}
.mp-erreur-num .mp-vite::before{right:calc(100% + .12em);width:.34em;top:.22em;height:.4em}
.mp-liens{list-style:none;padding:0;margin:var(--mp-e6) 0 0;display:grid;gap:10px;max-width:500px}
.mp-liens li{margin:0}
.mp-liens a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 10px 0 20px;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);
  font:700 16px/1.2 var(--mp-f-titre);color:var(--mp-encre);text-decoration:none;transition:border-color var(--mp-d2) var(--mp-std),transform var(--mp-d1) var(--mp-std)}
.mp-liens a::after{content:"";flex:none;width:32px;height:32px;border-radius:999px;background:var(--mp-creme) var(--mp-fleche-encre) center/15px no-repeat;transition:transform var(--mp-d2) var(--mp-elan)}
.mp-liens-titre{font:700 13px/1.2 var(--mp-f-titre)!important;letter-spacing:.06em;text-transform:uppercase;color:var(--mp-gris)!important;margin-top:var(--mp-e6)!important}
.mp-liens-titre + .mp-liens{margin-top:var(--mp-e3)}
@media (max-width:760px){.mp-erreur{grid-template-columns:1fr}.mp-erreur-num{font-size:clamp(96px,30vw,140px);justify-self:start}}

/* 3.17 Page de remerciement : coche cyan, texte honnête (demande reçue, créneau à confirmer) */
.mp-merci{max-width:760px;margin-inline:auto;padding-block:clamp(40px,7vw,88px) 0}
.mp-merci .mp-carte{padding:clamp(26px,5vw,48px)}
.mp-coche{display:grid;place-items:center;width:64px;height:64px;border-radius:999px;background:var(--mp-encre);margin-bottom:var(--mp-e5)}
.mp-coche svg{width:32px;height:32px;color:var(--mp-cyan)}
.mp-merci h1{max-width:20ch}
.mp-merci .mp-etat{display:grid;gap:10px;margin:var(--mp-e5) 0 0;padding:0;list-style:none}
.mp-merci .mp-etat li{display:flex;gap:12px;align-items:flex-start;margin:0;font-size:15.5px;color:var(--mp-gris)}
.mp-merci .mp-etat li::before{content:"";flex:none;width:22px;height:22px;margin-top:1px;border-radius:999px;border:2px solid var(--mp-filet);background:#fff}
.mp-merci .mp-etat li.mp-fait::before{border-color:var(--mp-cyan);background:var(--mp-cyan) var(--mp-coche-blanche) center/13px no-repeat}
.mp-merci .mp-etat b{color:var(--mp-encre)}

/* 3.18 Liste d'articles du blog */
.mp-articles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin-top:var(--mp-e6)}
.mp-article{display:flex;flex-direction:column;gap:12px}
.mp-article h3{margin:0;font-size:20px;line-height:1.25}
.mp-article h3 a{color:var(--mp-encre);text-decoration:none}
.mp-article p{margin:0!important;font-size:15px}
.mp-article .mp-lien-fleche{align-self:flex-start;margin-top:auto}
.mp-article-sujet{font:700 12px/1.2 var(--mp-f-titre);letter-spacing:.06em;text-transform:uppercase;color:var(--mp-rose-fonce)}

/* 3.19 Focus : anneau encre de 3 px, décalé de 3 px, sur tous les éléments actifs (blanc sur fond sombre) */
:where(a,button,summary,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--mp-encre);outline-offset:3px}
.mp-pied :focus-visible,.mp-final :focus-visible,.mp-bande :focus-visible{outline-color:#fff}

/* ============================ 4. RÉSERVATION =========================== */
.mp-resa{max-width:1120px;margin:0 auto;padding:clamp(28px,5vw,56px) var(--mp-gouttiere) 0}
.mp-resa-grille{display:grid;grid-template-columns:minmax(0,1fr);row-gap:0}
.mp-resa-tete h1{max-width:16ch}
.mp-resa-aide{margin-top:var(--mp-e5)}
.mp-resa-aide-titre{font:700 16px/1.3 var(--mp-f-titre)!important;color:var(--mp-encre)!important;margin:0 0 10px!important}
.mp-resa-aide-texte{display:none}
@media (min-width:1024px){
  .mp-resa-grille{grid-template-columns:minmax(0,1fr) 330px;column-gap:clamp(40px,5vw,72px);grid-template-areas:"tete aide" "form aide"}
  .mp-resa-tete{grid-area:tete}
  .mp-resa-form{grid-area:form}
  .mp-resa-aide{grid-area:aide;align-self:start;position:sticky;top:96px;margin-top:8px;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);padding:26px}
  .mp-resa-aide-titre{font-size:20px!important;margin-bottom:6px!important}
  .mp-resa-aide-texte{display:block;font-size:14.5px!important;margin:0 0 18px!important}
  .mp-resa-aide .mp-duo{grid-template-columns:1fr}
  .mp-resa-aide .mp-duo .mp-long{position:static!important;width:auto;height:auto;overflow:visible;clip:auto}
  .mp-resa-aide .mp-coord{margin-top:18px;gap:6px}
  .mp-resa-aide .mp-coord li{font-size:14px}
}
.mp-resa-aide .mp-coord{display:none}
@media (min-width:1024px){.mp-resa-aide .mp-coord{display:grid}}
.mp-resa-aide .mp-coord li b{min-width:0}
/* rail de progression : collant sous l'en-tête pendant tout le formulaire */
.mp-rail{position:sticky;top:70px;z-index:40;margin:var(--mp-e5) calc(-1 * var(--mp-gouttiere)) 0;padding:10px var(--mp-gouttiere) 12px;background:var(--mp-creme)}
@media (min-width:1024px){.mp-rail{margin-inline:0;padding-inline:0}}
.mp-rail-etat{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 8px!important;max-width:none!important;font-size:14px;color:var(--mp-gris)}
.mp-rail-num{font:800 15px/1.2 var(--mp-f-titre);color:var(--mp-encre)}
.mp-rail-num::before{content:"Étape 1 sur 4"}
.mp-rail-nom::before{content:"Boîte de vitesses"}
.mp-rail-piste{display:grid;grid-template-columns:repeat(4,1fr);height:6px;border-radius:999px;background:var(--mp-filet);overflow:hidden}
.mp-rail-piste i{display:block;height:100%;position:relative;overflow:hidden;border-right:2px solid var(--mp-creme)}
.mp-rail-piste i:last-child{border-right:0}
.mp-rail-piste i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--mp-rose),var(--mp-cyan)) 0 0/400% 100%;transform:scaleX(0);transform-origin:0 50%;transition:transform var(--mp-d3) var(--mp-elan)}
.mp-rail-piste i:nth-child(2)::after{background-position:33.33% 0}
.mp-rail-piste i:nth-child(3)::after{background-position:66.67% 0}
.mp-rail-piste i:nth-child(4)::after{background-position:100% 0}
body:has(input[name=boite]:checked) .mp-rail-num::before{content:"Étape 2 sur 4"}
body:has(input[name=boite]:checked) .mp-rail-nom::before{content:"Formule"}
body:has(input[name=boite]:checked):has(input[name=duree]:checked) .mp-rail-num::before{content:"Étape 3 sur 4"}
body:has(input[name=boite]:checked):has(input[name=duree]:checked) .mp-rail-nom::before{content:"Coordonnées"}
body:has(input[name=boite]:checked):has(input[name=duree]:checked):has(input[name=firstName]:valid):has(input[name=lastName]:valid):has(input[name=phone]:valid):has(input[name=email]:valid) .mp-rail-num::before{content:"Étape 4 sur 4"}
body:has(input[name=boite]:checked):has(input[name=duree]:checked):has(input[name=firstName]:valid):has(input[name=lastName]:valid):has(input[name=phone]:valid):has(input[name=email]:valid) .mp-rail-nom::before{content:"Créneau"}
.mp-etape-titre{display:flex;align-items:center;gap:14px;font-size:var(--mp-t-h3)!important;margin:var(--mp-e7) 0 var(--mp-e4)!important}
.mp-etape-titre .mp-num{display:inline-grid;place-items:center;width:38px;height:38px;flex:none;border-radius:999px;background:var(--mp-encre);color:#fff;font:800 16px/1 var(--mp-f-titre)}
.mp-etape-titre .mp-num i{font-style:normal;display:inline-block;transform:skewX(var(--mp-penche-doux))}
/* cartes de choix entièrement cliquables, pastille de 24 px qui se remplit de rose */
.mp-choix{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.mp-choix label{position:relative;display:flex;gap:14px;align-items:flex-start;min-height:76px;padding:18px 20px;background:#fff;border:2px solid var(--mp-filet);border-radius:var(--mp-r-bloc);cursor:pointer;
  font-size:15px;transition:border-color var(--mp-d2) var(--mp-std),background-color var(--mp-d2) var(--mp-std),transform var(--mp-d1) var(--mp-std)}
.mp-choix input{appearance:none;-webkit-appearance:none;flex:none;width:24px;height:24px;margin:1px 0 0;border:2px solid #8a979c;border-radius:999px;background:#fff;
  transition:border-width var(--mp-d2) var(--mp-elan),border-color var(--mp-d2) var(--mp-std)}
.mp-choix input:checked{border:7px solid var(--mp-rose)}
.mp-choix input:focus-visible{outline:none}
.mp-choix label:has(input:checked),.mp-choix label.actif{border-color:var(--mp-rose);background:var(--mp-voile-rose)}
.mp-choix label:has(input:focus-visible){outline:3px solid var(--mp-encre);outline-offset:3px}
.mp-choix .t{font:700 16px/1.3 var(--mp-f-titre);color:var(--mp-encre)}
.mp-choix .p{display:block;margin-top:2px;color:var(--mp-gris);font-size:13.5px}
.mp-choix .prixh{color:var(--mp-gris);font:600 13.5px/1 var(--mp-f-texte)}
.mp-choix .reco{display:inline-block;margin-left:6px;padding:2px 9px;border-radius:999px;background:var(--mp-encre);color:#fff;font:700 11.5px/1.5 var(--mp-f-titre);vertical-align:1px}
/* champs de 52 px, erreur visible pendant la saisie (:user-invalid), anneau de focus 3 px décalé de 3 px */
.mp-champs{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px}
.mp-champs label{display:block;font-size:13.5px;font-weight:700;color:var(--mp-encre)}
.mp-champs input{display:block;width:100%;min-height:52px;margin-top:6px;padding:12px 15px;border:2px solid var(--mp-champ);border-radius:var(--mp-r-champ);background:#fff;font:500 16px/1.2 var(--mp-f-texte);color:var(--mp-encre);transition:border-color var(--mp-d2) var(--mp-std)}
.mp-champs input:hover{border-color:#b3a998}
.mp-champs input:focus{outline:3px solid var(--mp-encre);outline-offset:3px;border-color:var(--mp-encre)}
.mp-champs input:user-invalid{border-color:var(--mp-erreur);background:#fffafb}
.mp-champs input:user-invalid:focus{outline-color:var(--mp-erreur)}
.mp-champs input[aria-invalid=true]{border-color:var(--mp-erreur)}
.mp-champ-aide{display:none;align-items:center;gap:6px;margin-top:8px;font:600 13px/1.35 var(--mp-f-texte);color:var(--mp-erreur)}
.mp-champ-aide::before{content:"!";display:inline-grid;place-items:center;flex:none;width:16px;height:16px;border-radius:999px;background:var(--mp-erreur);color:#fff;font:800 11px/1 var(--mp-f-titre)}
.mp-champs label:has(input:user-invalid) .mp-champ-aide{display:flex}
@media (max-width:560px){.mp-champs{grid-template-columns:1fr}}
.mp-piege{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
/* disponibilités : cases de 28 px cochées en rose */
.mp-dispos{border-collapse:separate;border-spacing:0;width:100%;max-width:520px;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);overflow:hidden}
.mp-dispos th,.mp-dispos td{padding:10px 12px;text-align:center;font-size:14px;border-bottom:1px solid var(--mp-filet)}
.mp-dispos th{font:700 13px/1.2 var(--mp-f-titre);color:var(--mp-gris);background:var(--mp-creme)}
.mp-dispos tr:last-child td{border-bottom:0}
.mp-dispos td:first-child{text-align:left;font-weight:700;color:var(--mp-encre)}
.mp-dispos input,.mp-case input{appearance:none;-webkit-appearance:none;flex:none;width:28px;height:28px;margin:0;border:2px solid #8a979c;border-radius:9px;background:#fff;vertical-align:middle;cursor:pointer;transition:background-color var(--mp-d1) var(--mp-std),border-color var(--mp-d1) var(--mp-std)}
.mp-dispos input:checked,.mp-case input:checked{background:var(--mp-rose) var(--mp-coche-blanche) center/16px no-repeat;border-color:var(--mp-rose)}
/* calendrier : créneaux en pastilles ; le créneau choisi passe en encre (le rose reste au seul bouton « Payer ») */
.mp-resa .note{color:var(--mp-gris);font-size:13.5px;margin-top:10px}
.mp-resa .cal{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 12px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
.mp-resa .cal .jour{flex:0 0 112px;scroll-snap-align:start;background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-bloc);padding:10px 8px;text-align:center}
.mp-resa .cal .jn{font:700 13px/1.2 var(--mp-f-titre);text-transform:capitalize;color:var(--mp-encre)}
.mp-resa .cal .jd{color:var(--mp-gris);font-size:12px;margin-bottom:8px}
.mp-resa .cal .h{display:block;width:100%;margin:5px 0;min-height:40px;border:2px solid var(--mp-filet);border-radius:12px;background:var(--mp-creme);font:700 14px/1 var(--mp-f-titre);color:var(--mp-encre);cursor:pointer;transition:transform var(--mp-d1) var(--mp-std),border-color var(--mp-d2) var(--mp-std)}
.mp-resa .cal .h:hover{border-color:var(--mp-encre)}
.mp-resa .cal .h.actif{background:var(--mp-encre);border-color:var(--mp-encre);color:#fff}
.mp-resa .cal .vide{color:var(--mp-gris);font-size:13px}
.mp-resa .calpick{margin-top:6px;background:#fff;border:2px solid var(--mp-encre);border-radius:14px;padding:11px 15px;font-weight:700;color:var(--mp-encre)}
.mp-resa .annule{background:#fff;border:1px solid var(--mp-filet);border-left:4px solid var(--mp-rose);border-radius:14px;padding:12px 16px;font-size:14.5px;margin:16px 0;display:none;color:var(--mp-encre)}
.mp-resa .err{color:var(--mp-erreur);font-weight:700;margin-top:12px;display:none;max-width:none}
.mp-total{font:800 26px/1.2 var(--mp-f-titre);margin:var(--mp-e6) 0 0;color:var(--mp-encre)}
.mp-total:empty{display:none}
/* conditions avant le paiement : deux cases, la seconde seulement si le premier jour est à moins de 14 jours */
.mp-cases{display:grid;gap:12px;margin-top:var(--mp-e5)}
.mp-case{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:#fff;border:2px solid var(--mp-filet);border-radius:var(--mp-r-bloc);cursor:pointer;font-size:14.5px;line-height:1.5;color:var(--mp-encre);transition:border-color var(--mp-d2) var(--mp-std)}
.mp-case[hidden]{display:none}
.mp-case:has(input:checked){border-color:var(--mp-rose)}
.mp-case:has(input:user-invalid){border-color:var(--mp-erreur)}
.mp-case input:focus-visible{outline:none}
.mp-case:has(input:focus-visible){outline:3px solid var(--mp-encre);outline-offset:3px}
.mp-case a{color:var(--mp-encre);text-decoration-color:var(--mp-rose);text-decoration-thickness:2px;text-underline-offset:3px}
.mp-case small{display:block;margin-top:4px;font-size:12.5px;color:var(--mp-gris)}
.mp-resa-form .mp-plein-large{margin-top:18px}
.mp-resa-form .mp-plein:disabled{cursor:progress}

/* ============================ 5. MOUVEMENT ============================= */
/* Durées : 120 ms appui, 200 ms survol, 320 ms état et page, 560 ms mot signature.
   Courbes : élan pour ce qui arrive, standard pour les états, frein pour ce qui sort. */

/* 5.1 Survol : réservé aux pointeurs fins. La flèche file de 4 px, deux lignes de vitesse apparaissent. */
@media (hover:hover) and (pointer:fine){
  .mp-plein:hover{background:var(--mp-rose-fonce)}
  .mp-plein-petit:hover,.mp-barre .mp-b-resa:hover{background:var(--mp-rose-nuit)}
  .mp-plein:hover::after{transform:translateX(4px)}
  .mp-plein:hover::before{opacity:.75;transform:none}
  .mp-btn:hover,.mp-lien-fleche:hover{background:var(--mp-creme)}
  .mp-duo-sombre .mp-btn:hover{background:rgb(255 255 255/.08)}
  .mp-btn:hover::after,.mp-lien-fleche:hover::after,.mp-liens a:hover::after{transform:translateX(4px);background-color:#fff}
  .mp-liens a:hover{border-color:var(--mp-encre)}
  .mp-nav a:hover::after{transform:none}
  .mp-nav a:hover:not([aria-current])::after{background:var(--mp-filet)}
  .mp-choix label:hover{border-color:#cfc6b8}
  .mp-choix label:has(input:checked):hover{border-color:var(--mp-rose)}
  .mp-case:hover{border-color:#cfc6b8}
  .mp-case:has(input:checked):hover{border-color:var(--mp-rose)}
}
/* 5.2 Appui : le bouton s'enfonce à peine */
.mp-plein:active,.mp-btn:active,.mp-lien-fleche:active,.mp-barre a:active,.mp-liens a:active,.mp-resa .cal .h:active{transform:scale(.97)}
.mp-plein:disabled:active{transform:none}

/* 5.3 Mot signature du H1 : il démarre une fois au chargement, net dès la première image (ni flou, ni opacité) */
@keyframes mpDemarre{from{transform:translateX(-.55em) skewX(-28deg)}to{transform:skewX(var(--mp-penche-fort))}}
@keyframes mpLignes{from{transform:scaleX(2.4);opacity:.3}to{transform:none;opacity:1}}
h1 .mp-vite,.mp-erreur-num .mp-vite{animation:mpDemarre var(--mp-d4) var(--mp-elan) 60ms both}
h1 .mp-vite::before,.mp-erreur-num .mp-vite::before{transform-origin:100% 50%;animation:mpLignes var(--mp-d4) var(--mp-elan) 60ms both}

/* 5.4 Éclair du bouton rose : deux éclats à l'arrivée, puis repos (jamais de boucle) */
@keyframes mpEclair{0%,70%,100%{transform:none;opacity:1}78%{transform:scale(1.12);opacity:.75}86%{transform:scale(1.05);opacity:1}}
.mp-plein .mp-eclair{animation:mpEclair 1.6s var(--mp-std) .6s 2 both}

/* 5.5 Note posée sur la photo : elle glisse de 16 px juste après le mot, une seule fois */
@keyframes mpGlisse{from{transform:translateX(-16px)}to{transform:none}}
.mp-note-photo{animation:mpGlisse var(--mp-d3) var(--mp-elan) 260ms both}

/* 5.6 FAQ : la réponse glisse de 6 px à l'ouverture */
@keyframes mpOuvre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.mp-faq details[open] > :not(summary){animation:mpOuvre var(--mp-d3) var(--mp-elan)}

/* 5.7 Réservation : carte choisie qui pousse de 4 px, segment du rail qui se remplit */
@keyframes mpPousse{0%{transform:none}40%{transform:translateX(4px)}100%{transform:none}}
.mp-choix label:has(input:checked){animation:mpPousse var(--mp-d3) var(--mp-elan)}
body:has(input[name=boite]:checked) .mp-rail-piste i:nth-child(1)::after,
body:has(input[name=duree]:checked) .mp-rail-piste i:nth-child(2)::after,
body:has(input[name=firstName]:valid):has(input[name=lastName]:valid):has(input[name=phone]:valid):has(input[name=email]:valid) .mp-rail-piste i:nth-child(3)::after,
body:has(.mp-dispos input:checked) .mp-rail-piste i:nth-child(4)::after,
body:has(.cal .h.actif) .mp-rail-piste i:nth-child(4)::after{transform:none}
/* bouton d'envoi occupé : un trait blanc file dans le bouton */
@keyframes mpTrait{from{transform:translateX(-110%)}to{transform:translateX(260%)}}
.mp-plein[aria-busy=true]{overflow:hidden}
.mp-plein[aria-busy=true]:disabled{background:var(--mp-rose);color:#fff!important;cursor:progress}
.mp-plein[aria-busy=true]::before{opacity:.8;left:0;right:auto;top:auto;bottom:0;width:40%;height:3px;margin:0;background:#fff;animation:mpTrait 900ms linear infinite}

/* 5.8 Défilement : jauge de lecture, sillage des H2, mots de niveau 2, chiffres, cartes, mot-symbole du pied.
       Tout est en place et lisible sans ces animations. Le mot de niveau 2 arrive par la droite :
       il ne recouvre jamais le mot qui le précède. */
@supports (animation-timeline:scroll()){
  .mp-jauge{display:block;animation:mpJauge linear both;animation-timeline:scroll(root)}
  @keyframes mpJauge{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}
@supports (animation-timeline:view()){
  @keyframes mpSillage{from{transform:scaleX(.22)}to{transform:scaleX(1)}}
  @keyframes mpMonte{from{transform:translateY(18px)}to{transform:none}}
  @keyframes mpPrendAngle{from{transform:translateX(10px) skewX(0)}to{transform:skewX(var(--mp-penche-doux))}}
  @keyframes mpDemarreDoux{from{transform:translateX(.14em) skewX(-2deg)}to{transform:skewX(var(--mp-penche-doux))}}
  @keyframes mpDefile{from{transform:translateX(-7%)}to{transform:none}}
  .mp-sillage::after{animation:mpSillage linear both;animation-timeline:view();animation-range:entry 20% cover 40%}
  .mp-vite-doux{animation:mpDemarreDoux linear both;animation-timeline:view();animation-range:entry 10% cover 35%}
  .mp-bande .mp-chiffre{animation:mpPrendAngle linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
  .mp-etapes > li,.mp-carte-elan,.mp-articles > .mp-carte{animation:mpMonte linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
  .mp-etapes > li:nth-child(2),.mp-articles > .mp-carte:nth-child(2){animation-range:entry 8% entry 78%}
  .mp-etapes > li:nth-child(3),.mp-articles > .mp-carte:nth-child(3){animation-range:entry 16% entry 86%}
  .mp-etapes > li:nth-child(4){animation-range:entry 24% entry 94%}
  .mp-etapes > li:nth-child(n+5){animation-range:entry 32% entry 100%}
  .mp-grand{animation:mpDefile linear both;animation-timeline:view();animation-range:entry 0% exit 0%}
}

/* 5.9 Transitions entre pages (Chrome 126+, Safari 18.2+) : l'en-tête et la barre restent en place */
@view-transition{navigation:auto}
.mp-entete{view-transition-name:mp-entete}
.mp-barre{view-transition-name:mp-barre}
@keyframes mpSort{to{opacity:0;transform:translateX(-24px)}}
@keyframes mpEntre{from{opacity:0;transform:translateX(24px)}}
::view-transition-old(root){animation:mpSort 160ms var(--mp-frein) both}
::view-transition-new(root){animation:mpEntre var(--mp-d3) var(--mp-elan) both}

/* 5.10 Barre fixe : elle monte quand ni la paire du haut ni un aplat rose ne sont à l'écran (mp-2026.js) */
.mp-barre{transition:transform var(--mp-d3) var(--mp-elan)}
.mp-barre-cachee{transform:translateY(calc(100% + 8px))!important;transition:transform var(--mp-d2) var(--mp-frein)!important}
/* La glissière n'est armée qu'après le premier défilement (classe posée par mp-2026.js) :
   au chargement, une feuille qui arrive ou une vue qui se reconstruit ne fait jamais glisser la barre à l'écran. */
.mp-barre:not(.mp-barre-anim){transition:none!important}

/* ========================= 6. MOUVEMENT RÉDUIT ========================= */
/* Tout s'arrête, rien ne disparaît : les éléments sont déjà à leur place finale. */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:1ms!important;transition-delay:0s!important}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
  .mp-jauge{display:none!important}
}

/* ========================= 7. CORRECTIONS DU TOUR 1 ========================= */
/* 7.1 Clavier : le focus ne passe jamais sous la barre fixe du téléphone (WCAG 2.4.11) */
@media (max-width:559px){html{scroll-padding-bottom:96px}}

/* 7.2 Sillage des titres centrés : centré sous le titre */
.mp-sillage-centre::after{margin-inline:auto;transform-origin:50% 50%}

/* 7.3 Paires de contact dans les cartes et les encarts : l'une sous l'autre à moins de 440 px (pilules serrées à 360) */
@media (max-width:440px){
  .mp-carte .mp-duo{grid-template-columns:1fr}
  .mp-carte .mp-duo .mp-long{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important}
}

/* 7.4 Réservation : le rail ne colle que pendant les quatre étapes, jamais sur « Payer » ;
       l'étape affichée suit aussi le champ en cours de saisie */
.mp-resa-etapes{position:relative}
/* Étape à l'écran (posée par le script de la page selon le titre d'étape visible) : le libellé suit ce que l'on voit, les segments suivent ce qui est rempli. Le focus reste prioritaire. */
body[data-mp-vue="1"] .mp-rail-num::before{content:"Étape 1 sur 4"!important}body[data-mp-vue="1"] .mp-rail-nom::before{content:"Boîte de vitesses"!important}
body[data-mp-vue="2"] .mp-rail-num::before{content:"Étape 2 sur 4"!important}body[data-mp-vue="2"] .mp-rail-nom::before{content:"Formule"!important}
body[data-mp-vue="3"] .mp-rail-num::before{content:"Étape 3 sur 4"!important}body[data-mp-vue="3"] .mp-rail-nom::before{content:"Coordonnées"!important}
body[data-mp-vue="4"] .mp-rail-num::before{content:"Étape 4 sur 4"!important}body[data-mp-vue="4"] .mp-rail-nom::before{content:"Créneau"!important}
body:has(#cboite :focus) .mp-rail-num::before{content:"Étape 1 sur 4"!important}
body:has(#cboite :focus) .mp-rail-nom::before{content:"Boîte de vitesses"!important}
body:has(#cduree :focus) .mp-rail-num::before{content:"Étape 2 sur 4"!important}
body:has(#cduree :focus) .mp-rail-nom::before{content:"Formule"!important}
body:has(.mp-champs :focus) .mp-rail-num::before{content:"Étape 3 sur 4"!important}
body:has(.mp-champs :focus) .mp-rail-nom::before{content:"Coordonnées"!important}
body:has(#calbloc :focus, #dispobloc :focus) .mp-rail-num::before{content:"Étape 4 sur 4"!important}
body:has(#calbloc :focus, #dispobloc :focus) .mp-rail-nom::before{content:"Créneau"!important}

/* 7.6 Bandeau cookies du téléphone : collé en bas quand la barre est cachée, posé sur elle quand elle est là */
@media (max-width:559px){
  #mp-cookie{bottom:0!important}
  body:has(.mp-barre:not(.mp-barre-cachee)) #mp-cookie{bottom:calc(env(safe-area-inset-bottom,0px) + 68px)!important}
}

/* 7.5 Champ de date : Chrome donne le focus à un sous-champ interne, l'anneau se pose sur le champ entier */
input[type=date]:focus,input[type=date]:focus-within{outline:3px solid var(--mp-encre);outline-offset:3px}

/* Passe 2 : mot penché suivi de sa ponctuation (liés par .mp-insecable) : le haut penché de la dernière
   lettre ne mange plus l'espace fine avant « : » ou « ? » */
.mp-insecable > .mp-vite,.mp-insecable > .mp-vite-doux{margin-right:.1em}

/* ---------- Passe référencement et mesure (2026-09-24) ---------- */
/* SEO-19 : cibles tactiles de 24 px au moins dans les listes de liens du pied (même rendu : l'écart
   entre deux liens passe du vide à la zone cliquable) */
.mp-pied nav{gap:0}
.mp-pied nav a{display:flex;align-items:center;min-height:28px;padding:2px 0}
.mp-pied address a{display:inline-flex;align-items:center;min-height:24px}
.mp-fil a{display:inline-flex;align-items:center;min-height:24px}
.mp-maillage a,.mp-sources a{padding:3px 0}

/* SEA-06 : « Être rappelé » sur place, formulaire de la vue Contact repris dans les pages */
.mp-rappel-form{background:#fff;border:1px solid var(--mp-filet);border-radius:var(--mp-r-carte);padding:24px}
.mp-rappel-form h2{font:800 22px/1.2 var(--mp-f-titre);color:var(--mp-encre);margin:0}
.mp-rappel-form h2:focus,.mp-rappel-form h2:focus-visible{outline:none}
.mp-rappel-form > p{font-size:15px;line-height:1.55;color:var(--mp-gris);margin:8px 0 0}
.mp-rappel-champs{display:grid;gap:14px;margin-top:18px}
.mp-rappel-champs label{display:block;font:600 13px/1.3 var(--mp-f-texte);color:var(--mp-encre);margin-bottom:6px}
.mp-rappel-champs .mp-champ{display:block;width:100%;min-height:52px;padding:12px 14px;border:1px solid var(--mp-champ);border-radius:var(--mp-r-champ);background:#fff;font:500 16px/1.3 var(--mp-f-texte);color:var(--mp-encre);box-sizing:border-box}
.mp-rappel-champs .mp-champ:focus-visible{outline:3px solid var(--mp-encre);outline-offset:3px;border-color:var(--mp-encre)}
.mp-rappel-champs .mp-invalide{border:2px solid var(--mp-erreur)!important;background:#fff7f8!important}
.mp-rappel-champs div:has(.mp-invalide) .mp-champ-aide{display:flex}
.mp-rappel-form .mp-plein{width:100%;margin-top:20px;border:0;cursor:pointer}
.mp-rappel-form .mp-plein:disabled{background:#e9e3da;color:#7b878c;cursor:progress}
.mp-rappel-etat{margin:12px 0 0;font:600 14px/1.45 var(--mp-f-texte);color:#1a7a45}
.mp-rappel-etat:empty{display:none}
.mp-rappel-etat.mp-rappel-erreur{color:var(--mp-erreur)}
.mp-rappel-note{font-size:13px;line-height:1.5;color:var(--mp-gris);margin:12px 0 0}
.mp-rappel-note a{color:var(--mp-encre);text-decoration-color:var(--mp-rose);text-decoration-thickness:2px;text-underline-offset:3px}
/* fenêtre de dialogue : fond crème presque opaque, un seul aplat rose à l'écran (le bouton d'envoi) */
.mp-dialogue{border:0;padding:0;margin:auto;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:transparent;color:var(--mp-encre)}
.mp-dialogue::backdrop{background:rgb(244 240 234/.97)}
.mp-dialogue .mp-rappel-form{position:relative;padding-top:28px}
.mp-dialogue-fermer{position:absolute;top:8px;right:8px;width:44px;height:44px;border:0;border-radius:999px;background:var(--mp-creme);color:var(--mp-encre);font:700 24px/1 var(--mp-f-texte);cursor:pointer}
.mp-dialogue-fermer:focus-visible{outline:3px solid var(--mp-encre);outline-offset:2px}

/* SEO-03 : pages Formules, Avis, Nos résultats, Contact */
.mp-tarifs-detail li{align-items:flex-start}
.mp-tarifs-detail .mp-lien-fleche{margin-top:10px;font-size:14px}
.mp-avis-liste{list-style:none;padding:0;margin:var(--mp-e5) 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}
.mp-avis{margin:0;padding:22px;display:flex;flex-direction:column;gap:10px}
.mp-avis blockquote{margin:0;flex:1}
.mp-avis blockquote p{margin:0;font-size:15px;line-height:1.55;color:var(--mp-encre)}
.mp-avis-source{font:700 11px/1.2 var(--mp-f-titre);letter-spacing:.06em;text-transform:uppercase;color:var(--mp-gris)}
.mp-avis-auteur{margin:0!important;padding-top:10px;border-top:1px solid var(--mp-filet);font-weight:700;font-size:14px;color:var(--mp-encre)}
.mp-notes{list-style:none;padding:0;margin:var(--mp-e4) 0 0;display:flex;flex-wrap:wrap;gap:12px 40px}
.mp-notes li{margin:0}
.mp-notes .mp-chiffre{font-size:40px;line-height:1;color:var(--mp-encre)}
.mp-notes li:first-child .mp-chiffre{text-decoration:underline;text-decoration-color:var(--mp-rose);text-decoration-thickness:4px;text-underline-offset:8px}
.mp-notes small{display:block;margin-top:8px;font-size:13.5px;color:var(--mp-gris)}
.mp-contact-grille{display:grid;gap:32px;align-items:start}
@media (min-width:900px){.mp-contact-grille{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:56px}}
#rappel{scroll-margin-top:86px}

/* SEO-08 : articles datés, signés, illustrés et sourcés */
.mp-article-meta{margin:var(--mp-e3,12px) 0 0!important;font-size:14px;line-height:1.5;color:var(--mp-gris)}
.mp-figure-article{margin:var(--mp-e5) 0 0;max-width:560px}
.mp-figure-article img{display:block;width:100%;height:auto;border-radius:var(--mp-r-photo)}
.mp-sources{font-size:13.5px}
