/* ==========================================================================
   Mathieu Pagnier Lyon, version 2 (2026-10-11), sur le modèle de mathieu-pagnier.com
   Palette de Jungle LAB. depuis le 2026-10-25 (« les mêmes couleurs que le site de Jungle Lab ») :
   vert nuit #13211A pour les blocs foncés et le pied, vert #3F7652 pour les détails, terre cuite
   #BE5A09 pour les boutons, fonds papier #F3EEE5 et lin #E7DFD0, cartes blanches, étoiles or.
   Avant : sapin #1F4741, terracotta #C1705A, blanc et #F7F5F0 (lyon-260.css).
   Depuis le 2026-10-25 aussi : polices de Jungle LAB. (Wix Madefor Display 600 pour les titres, Wix Madefor
   Text pour le texte, servies par le thème ; avant : Newsreader et Hanken Grotesk) et accueil sur son modèle
   (bannière sur photo de feuillage flou, mots en vert dans les titres, demandés : « garder exactement le même
   style, mettre la même typo »). Bloc « Accueil Jungle LAB. » en fin de fichier.
   Règles agence : pas d'ombre portée, pas de liseré d'accent sur un bord, une seule taille de H2,
   cartes blanches sur fond foncé, visuel au-dessus du texte sur mobile, aucune animation de contenu,
   ronds pâles « façon Tigmi » pour seul décor, aucun mot souligné dans un titre.
   Les surcharges pour tablette et téléphone sont à la fin du fichier.
   ========================================================================== */

@font-face{font-family:'Wix Madefor Display';font-style:normal;font-weight:500 700;font-display:swap;
  src:url(polices/wix-madefor-display-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Wix Madefor Text';font-style:normal;font-weight:400;font-display:swap;
  src:url(polices/wix-madefor-text-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Wix Madefor Text';font-style:italic;font-weight:400;font-display:swap;
  src:url(polices/wix-madefor-text-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Wix Madefor Text';font-style:normal;font-weight:600;font-display:swap;
  src:url(polices/wix-madefor-text-latin-600-normal.woff2) format('woff2')}

:root{
  --l-fond:#F3EEE5;
  --l-sable:#E7DFD0;
  --l-carte:#FFFFFF;
  --l-encre:#13211A;
  --l-sapin:#3F7652;
  --l-encre-2:#1C2E24;
  --l-encre-3:#1D3A2B;
  --l-turquoise:#3F7652;
  --l-turquoise-fonce:#1B5B3F;
  --l-turquoise-clair:#A9DDB6;
  --l-chaud:#BE5A09;
  --l-chaud-fonce:#9A4807;
  --l-chaud-texte:#FFFFFF;--l-chaud-lisible:#9A4807;
  --l-texte:#4B544E;
  --l-doux:#59615B;
  --l-trait:#DDD6C9;
  --l-trait-fort:#CBC1AF;
  --l-etoile:#E3A008;
  /* Accents (2026-10-25) : vert de Jungle LAB., vert tendre sur fond foncé */
  --l-or:#3F7652;
  --l-or-texte:#3F7652;
  --l-or-clair:#A9DDB6;
  --l-or-pale:#F3E6DA;
  --l-rond-1:#EBE4D7;
  --l-rond-2:#E3E8DC;
  --l-rond-sable-1:#DED5C3;
  --l-rond-sable-2:#EDE7DC;
  /* Couleurs posées en dur avant le 2026-10-28, passées en variables pour les palettes à essayer (inc/palettes-choix.php) */
  --l-sur-fonce:#E6E9E3;
  --l-sur-fonce-doux:#B9C2BB;
  --l-sur-fonce-2:#C9D0CA;
  --l-sur-sapin:#DCE7DF;
  --l-dore:#D9C39A;
  --l-icone-fond:#E1E8DE;
  --l-voile:#0C1610;
  --l-carte-chaude:#F4ECDF;
  --l-chaud-clair:#E9A46C;
  --l-titre:'Wix Madefor Display','Segoe UI',system-ui,sans-serif;
  --l-corps:'Wix Madefor Text','Segoe UI',system-ui,sans-serif;
  --shell:1640px;
  --gutter:clamp(20px,5vw,72px);
  --l-h2:clamp(36px,4.2vw,64px);
  --l-rayon:22px;
  --l-entete:84px;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:16px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--l-fond);color:var(--l-texte);font:400 17px/1.65 var(--l-corps);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--l-encre)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--l-turquoise);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--l-titre);font-weight:600;color:var(--l-encre);letter-spacing:-.015em;margin:0;font-optical-sizing:auto}
p{margin:0 0 1em}
strong{font-weight:700;color:var(--l-encre)}
.mpl-ico{width:20px;height:20px;flex:none}
.mpl-evitement{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--l-encre);color:#fff;padding:10px 16px;border-radius:8px}
.mpl-evitement:focus{left:12px}
.mpl-conteneur{max-width:var(--shell);margin:0 auto;padding:0 var(--gutter)}

/* ---------- Sections et fonds ---------- */
.mpl-section{padding:clamp(72px,8vw,120px) 0;position:relative}
.mpl-section--serree{padding-top:clamp(40px,5vw,72px)}
.mpl-section--fond{background-color:var(--l-fond)}
.mpl-section--sable{background-color:var(--l-sable)}
.mpl-section--encre{background-color:var(--l-encre);color:var(--l-sur-fonce)}
.mpl-section--encre h2,.mpl-section--encre h3{color:#fff}
.mpl-section--encre .mpl-surtitre{color:var(--l-or-clair)}

/* Ronds pâles coupés dans un coin, une section sur deux (modèle Tigmi) */
.mpl-ronds-1,.mpl-ronds-2,.mpl-ronds-banniere{background-repeat:no-repeat}
.mpl-section--fond.mpl-ronds-1{background-image:radial-gradient(circle 310px at right -90px top -110px,var(--l-rond-1) 99.4%,transparent 100%),radial-gradient(circle 120px at left 6% bottom -70px,var(--l-rond-2) 99.4%,transparent 100%)}
.mpl-section--fond.mpl-ronds-2{background-image:radial-gradient(circle 310px at left -100px bottom -120px,var(--l-rond-1) 99.4%,transparent 100%),radial-gradient(circle 115px at right 7% top -50px,var(--l-rond-2) 99.4%,transparent 100%)}
.mpl-section--sable.mpl-ronds-1{background-image:radial-gradient(circle 310px at right -90px top -110px,var(--l-rond-sable-1) 99.4%,transparent 100%),radial-gradient(circle 120px at left 6% bottom -70px,var(--l-rond-sable-2) 99.4%,transparent 100%)}
.mpl-section--sable.mpl-ronds-2{background-image:radial-gradient(circle 310px at left -100px bottom -120px,var(--l-rond-sable-1) 99.4%,transparent 100%),radial-gradient(circle 115px at right 7% top -50px,var(--l-rond-sable-2) 99.4%,transparent 100%)}
.mpl-section--encre.mpl-ronds-2{background-image:radial-gradient(circle 320px at right -110px bottom -130px,color-mix(in srgb,var(--l-sapin) 32%,transparent) 99.4%,transparent 100%),radial-gradient(circle 120px at left 5% top -60px,rgba(220,228,218,.12) 99.4%,transparent 100%)}

/* ---------- Titres de section ---------- */
.mpl-surtitre{font:600 15px/1.3 var(--l-corps);color:var(--l-or-texte);margin:0 0 14px}
.mpl-h2,.mpl-section h2,.mpl-doc h2{font-size:var(--l-h2);line-height:1.06;font-weight:600;max-width:22ch;margin:0 0 clamp(32px,4vw,56px)}
.mpl-tete-ligne{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;padding-bottom:clamp(28px,3vw,40px);margin-bottom:clamp(28px,3vw,40px);border-bottom:1px solid var(--l-trait-fort)}
.mpl-tete-ligne .mpl-h2{margin:0}
.mpl-tete-ligne .mpl-lien{margin-bottom:8px}
.mpl-section h3{font-size:clamp(21px,1.7vw,25px);line-height:1.2}

/* ---------- Boutons et liens ---------- */
.mpl-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:62px;padding:0 36px;border-radius:999px;font:600 17.5px/1.2 var(--l-corps);text-decoration:none;border:1.5px solid transparent;transition:background-color .2s,color .2s,border-color .2s;white-space:nowrap}
.mpl-btn .mpl-ico{width:20px;height:20px}
.mpl-btn--action{background:var(--l-chaud);color:var(--l-chaud-texte)}
.mpl-btn--action:hover{background:var(--l-chaud-fonce)}
.mpl-btn--encre{background:var(--l-encre);color:#fff}
.mpl-btn--encre:hover{background:var(--l-encre-2)}
.mpl-btn--contour{border-color:var(--l-encre);color:var(--l-encre);background:transparent}
.mpl-btn--contour:hover{background:var(--l-encre);color:#fff}
.mpl-btn--contour .mpl-ico{color:var(--l-turquoise)}
.mpl-btn--clair{background:#fff;color:var(--l-encre)}
.mpl-btn--clair:hover{background:var(--l-turquoise-clair)}
.mpl-lien{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:16px;color:var(--l-encre);text-decoration:none}
.mpl-lien span{border-bottom:1px solid var(--l-turquoise);padding-bottom:3px}
.mpl-lien .mpl-ico{width:17px;height:17px;color:var(--l-turquoise);transition:transform .2s}
.mpl-lien:hover .mpl-ico{transform:translateX(3px)}

/* ---------- Listes cochées ---------- */
.mpl-coches{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mpl-coches li{display:flex;gap:12px;align-items:flex-start}
.mpl-coches .mpl-ico{color:var(--l-turquoise);width:19px;height:19px;margin-top:3px}
.mpl-coches--banniere{gap:14px;margin:0 0 34px;font-size:clamp(17px,1.3vw,19px);font-weight:500;color:var(--l-encre)}
.mpl-coches--banniere li{align-items:center}
.mpl-coches--banniere .mpl-ico{width:30px;height:30px;padding:6px;margin:0;border-radius:50%;background:var(--l-or);color:#fff;stroke-width:2.4}
.mpl-coches--banniere strong{color:var(--l-encre);font-weight:700}
/* Points forts en cartes blanches (titre en serif, icône dorée), deux par ligne */
.mpl-coches--lignes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mpl-coches--lignes li{flex-direction:column;gap:14px;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(20px,1.8vw,28px);line-height:1.6}
.mpl-coches--lignes li .mpl-ico{width:40px;height:40px;padding:9px;margin:0;border-radius:50%;background:var(--l-or);color:#fff;stroke-width:2.4}
.mpl-coches--lignes li>span>strong:first-child{display:block;font:600 clamp(20px,1.6vw,23px)/1.2 var(--l-titre);color:var(--l-encre);margin-bottom:8px}
.mpl-colonnes .mpl-coches--lignes{grid-template-columns:minmax(0,1fr)}
.mpl-coches--prix{gap:11px;font-size:15.5px;line-height:1.5}

/* ---------- En-tête ---------- */
.mpl-entete{position:relative;z-index:50;background:var(--l-fond);border-bottom:1px solid var(--l-trait)}
.mpl-entete__in{max-width:var(--shell);margin:0 auto;padding:0 var(--gutter);height:var(--l-entete);display:flex;align-items:center;gap:28px}
.mpl-logo{display:flex;align-items:center;gap:14px;text-decoration:none;margin-right:auto}
.mpl-logo__rond{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--l-encre);display:grid;place-items:center;font:600 21px/1 var(--l-titre);color:var(--l-encre);letter-spacing:-.02em;position:relative}
.mpl-logo__rond::after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--l-chaud);right:11px;bottom:15px}
.mpl-logo__nom{font:600 20px/1.1 var(--l-titre);color:var(--l-encre);display:flex;flex-direction:column}
.mpl-logo__nom small{font:500 12.5px/1.4 var(--l-corps);color:var(--l-doux);letter-spacing:.02em}
.mpl-nav{display:flex;align-items:center;gap:30px}
.mpl-nav>a,.mpl-nav__groupe>a{display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:500;color:var(--l-texte);text-decoration:none;padding:8px 0}
.mpl-nav a:hover,.mpl-nav a[aria-current]{color:var(--l-turquoise)}
.mpl-nav__groupe{position:relative}
.mpl-nav__groupe>a .mpl-ico{width:15px;height:15px}
.mpl-nav__sous{position:absolute;top:100%;left:-18px;min-width:290px;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:10px;display:none;flex-direction:column}
.mpl-nav__groupe:hover .mpl-nav__sous,.mpl-nav__groupe:focus-within .mpl-nav__sous{display:flex}
.mpl-nav__sous a{padding:11px 14px;border-radius:8px;color:var(--l-texte);text-decoration:none;font-size:15.5px}
.mpl-nav__sous a:hover{background:var(--l-sable);color:var(--l-encre)}
.mpl-entete__devis{display:inline-flex;align-items:center;min-height:52px;padding:0 26px;border-radius:999px;background:var(--l-encre);color:#fff;font-weight:600;font-size:17px;text-decoration:none}
.mpl-entete__devis:hover{background:var(--l-encre-3)}
.mpl-entete__tel,.mpl-burger{display:none}
.mpl-mob{display:none}

/* ---------- Bannière ---------- */
.mpl-banniere{background:linear-gradient(180deg,var(--l-fond) 0%,var(--l-sable) 100%);padding:clamp(48px,6vw,88px) 0 clamp(64px,7vw,96px)}
.mpl-ronds-banniere{background-image:radial-gradient(circle 260px at left -120px top -90px,var(--l-rond-1) 99.4%,transparent 100%),linear-gradient(180deg,var(--l-fond) 0%,var(--l-sable) 100%)}
.mpl-banniere__grille{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(36px,5vw,88px);align-items:stretch}
.mpl-banniere__texte{display:flex;flex-direction:column;justify-content:center}
.mpl-banniere__h1{display:flex;align-items:center;gap:14px;font:600 15px/1.3 var(--l-corps);color:var(--l-or-texte);margin:0 0 22px}
.mpl-banniere__h1::before{content:"";width:30px;height:1px;background:currentColor}
.mpl-banniere__titre{font-family:var(--l-titre);font-weight:600;font-size:clamp(42px,5.2vw,74px);line-height:1.04;letter-spacing:-.025em;color:var(--l-encre);margin:0 0 26px;max-width:16ch}
.mpl-banniere__intro{font-size:clamp(17px,1.35vw,19px);line-height:1.65;max-width:58ch;margin:0 0 28px}
.mpl-banniere__boutons{display:flex;flex-wrap:wrap;gap:14px}
.mpl-cadre{position:relative;overflow:hidden;border-radius:var(--l-rayon);background:var(--l-encre)}
.mpl-cadre img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mpl-banniere__visuel{min-height:min(620px,46vw)}

/* Fil d'Ariane (pages intérieures) */
.mpl-ariane ol{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:6px 10px;font-size:14px;color:var(--l-doux)}
.mpl-ariane li{display:flex;align-items:center;gap:10px}
.mpl-ariane li+li::before{content:"›";color:var(--l-turquoise)}
.mpl-ariane a{color:var(--l-turquoise);font-weight:600;text-decoration:none}
.mpl-ariane a:hover{text-decoration:underline}

/* En-tête des pages sans grand visuel */
.mpl-entete-page{padding:clamp(48px,6vw,88px) 0 clamp(36px,4vw,56px)}
.mpl-entete-page .mpl-banniere__titre{max-width:22ch;font-size:clamp(38px,4.4vw,62px)}
.mpl-entete-page .mpl-banniere__intro{margin-bottom:0}
.mpl-entete-page--doc{background:var(--l-sable)}

/* ---------- Réalisations ---------- */
.mpl-reals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mpl-reals--mosaique{grid-template-columns:repeat(4,minmax(0,1fr))}
.mpl-real{position:relative;display:block;overflow:hidden;border-radius:var(--l-rayon);aspect-ratio:4/3;background:var(--l-encre);color:#fff;text-decoration:none}
.mpl-real--grand{grid-column:span 2;grid-row:span 2;aspect-ratio:auto}
.mpl-real img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.mpl-real:hover img{transform:scale(1.04)}
.mpl-real::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--l-encre) 0%,transparent) 28%,color-mix(in srgb,var(--l-encre) 80%,transparent) 60%,color-mix(in srgb,var(--l-encre) 95%,transparent) 100%)}
.mpl-real__legende{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;display:flex;flex-direction:column;gap:2px}
.mpl-real__legende em{font:700 11.5px/1.3 var(--l-corps);font-style:normal;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.mpl-real__legende strong{font:600 24px/1.15 var(--l-titre);color:#fff}
.mpl-real__legende small{font-size:14.5px;color:rgba(255,255,255,.86)}
.mpl-real--grand .mpl-real__legende{left:28px;bottom:26px}
.mpl-real--grand .mpl-real__legende strong{font-size:32px}

/* ---------- Services (fond encre, cartes blanches) ---------- */
.mpl-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mpl-service{background:#fff;border-radius:var(--l-rayon);overflow:hidden;display:flex;flex-direction:column;color:var(--l-texte)}
.mpl-service__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--l-sable)}
.mpl-service__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mpl-service__corps{padding:clamp(26px,2.4vw,36px);display:flex;flex-direction:column;flex:1}
.mpl-service__n{font:600 15px/1 var(--l-titre);color:var(--l-or-texte);margin:0 0 14px}
.mpl-section--encre .mpl-service h3{color:var(--l-encre);margin-bottom:12px}
.mpl-service p{flex:0 0 auto}
.mpl-service .mpl-lien{margin-top:auto;padding-top:12px}
.mpl-aussi{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16)}
.mpl-aussi li{padding:26px 28px 0 0;display:flex;flex-direction:column;gap:6px;font-size:15.5px;color:var(--l-sur-fonce-2)}
.mpl-aussi li+li{padding-left:28px;border-left:1px solid rgba(255,255,255,.16)}
.mpl-aussi strong{font:600 21px/1.2 var(--l-titre);color:#fff}

/* ---------- Deux colonnes : même hauteur, visuel étiré ---------- */
.mpl-duo{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(36px,5vw,88px);align-items:stretch}
.mpl-duo--visuel-droite{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.mpl-duo--visuel-droite .mpl-duo__visuel{order:2}
.mpl-duo--portrait{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.mpl-duo--portrait.mpl-duo--visuel-droite{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.mpl-duo__visuel{min-height:420px}
.mpl-duo__texte{display:flex;flex-direction:column;justify-content:center}
.mpl-duo__texte .mpl-h2{margin-bottom:28px}
.mpl-duo__action{margin:32px 0 0}
.mpl-methode__delais{margin:-6px 0 26px;padding-bottom:22px;border-bottom:1px solid var(--l-trait-fort);max-width:52ch}

/* Étapes */
.mpl-etapes{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mpl-etape{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon)}
.mpl-etape summary{list-style:none;display:flex;align-items:center;gap:18px;padding:16px 20px;cursor:pointer;min-height:64px}
.mpl-etape summary::-webkit-details-marker{display:none}
.mpl-etape__n{flex:none;width:44px;height:44px;border-radius:8px;background:var(--l-encre);color:var(--l-or-clair);display:grid;place-items:center;font:600 17px/1 var(--l-titre)}
.mpl-etape__t{flex:1;font:600 clamp(18px,1.4vw,20px)/1.3 var(--l-titre);color:var(--l-encre)}
.mpl-etape summary .mpl-ico,.mpl-question summary .mpl-ico{color:var(--l-turquoise);transition:transform .2s}
.mpl-etape[open] summary .mpl-ico,.mpl-question[open] summary .mpl-ico{transform:rotate(180deg)}
.mpl-etape p{margin:0;padding:0 22px 20px 82px;color:var(--l-texte)}

/* ---------- Avis ---------- */
.mpl-avis__tete{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(28px,3vw,44px)}
.mpl-avis__tete .mpl-h2{margin:0}
.mpl-note{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.mpl-note .mpl-ico--google{width:30px;height:30px}
.mpl-note__chiffre{font:600 34px/1 var(--l-titre);color:var(--l-encre)}
.mpl-etoiles{color:var(--l-etoile);letter-spacing:.12em;font-size:17px}
.mpl-note__lien{font-weight:700;font-size:15.5px;color:var(--l-encre);text-underline-offset:4px;text-decoration-color:var(--l-turquoise)}
.mpl-avis__fleches{display:flex;gap:10px;flex:none}
.mpl-fleche{width:52px;height:52px;border-radius:50%;border:1px solid var(--l-trait-fort);background:transparent;color:var(--l-encre);display:grid;place-items:center;cursor:pointer;transition:background-color .2s,border-color .2s}
.mpl-fleche:hover:not(:disabled){border-color:var(--l-encre);background:#fff}
.mpl-fleche:disabled{opacity:.35;cursor:default}
.mpl-avis__piste{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2 * 24px) / 3);gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:auto;scrollbar-width:none;padding:2px 0}
.mpl-avis__piste::-webkit-scrollbar{display:none}
.mpl-avis__carte{scroll-snap-align:start;margin:0;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(24px,2.2vw,34px);display:flex;flex-direction:column}
.mpl-avis__texte{margin:14px 0 0;font:400 16.5px/1.62 var(--l-corps);color:var(--l-encre)}
.mpl-avis__texte p{margin:0;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.mpl-avis__carte.deplie .mpl-avis__texte p{-webkit-line-clamp:unset;display:block}
.mpl-avis__plus{align-self:flex-start;margin-top:10px;background:none;border:0;padding:6px 0;font:700 14.5px var(--l-corps);color:var(--l-turquoise);cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.mpl-avis__qui{display:flex;align-items:center;gap:14px;margin-top:auto;padding-top:22px;border-top:1px solid var(--l-trait);font-size:15px}
.mpl-avis__qui{margin-top:24px}
.mpl-avis__carte blockquote{flex:1}
.mpl-avis__qui>span:last-child{display:flex;flex-direction:column;line-height:1.35}
.mpl-avis__qui strong{font-size:15.5px}
.mpl-avis__qui a,.mpl-avis__qui small{color:var(--l-doux);font-size:14px;text-decoration:none}
.mpl-avis__qui a:hover{color:var(--l-turquoise);text-decoration:underline}
.mpl-avis__initiales{flex:none;width:42px;height:42px;border-radius:50%;background:var(--l-sapin);color:#fff;display:grid;place-items:center;font:700 13.5px/1 var(--l-corps);letter-spacing:.04em}

/* ---------- Tarifs ---------- */
.mpl-tarifs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.mpl-prix{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(28px,2.6vw,40px);display:flex;flex-direction:column}
.mpl-prix h3{font-size:clamp(23px,1.8vw,27px);margin-bottom:6px}
.mpl-prix__pour{color:var(--l-doux);font-size:15.5px;margin:0 0 22px}
.mpl-prix__montant{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:0 0 16px}
.mpl-prix__montant small{flex-basis:100%;font-size:14px;font-weight:600;color:var(--l-doux)}
.mpl-prix__montant strong{font:600 clamp(40px,3.4vw,52px)/1 var(--l-titre);color:var(--l-encre);letter-spacing:-.02em}
.mpl-prix__montant span{font-size:14.5px;font-weight:600;color:var(--l-doux)}
.mpl-prix__delai{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--l-turquoise);margin:0 0 16px}
.mpl-prix__delai .mpl-ico{width:18px;height:18px}
.mpl-prix__phrase{margin:0 0 22px;padding-bottom:22px;border-bottom:1px solid var(--l-trait)}
.mpl-prix .mpl-coches{margin-bottom:26px}
.mpl-prix__lien{margin:auto 0 0}
.mpl-prix--vedette{background:var(--l-encre);border-color:var(--l-encre);color:var(--l-sur-fonce)}
.mpl-prix--vedette h3,.mpl-prix--vedette .mpl-prix__montant strong,.mpl-prix--vedette strong{color:#fff}
.mpl-prix--vedette .mpl-prix__pour,.mpl-prix--vedette .mpl-prix__montant small,.mpl-prix--vedette .mpl-prix__montant span{color:var(--l-sur-fonce-doux)}
.mpl-prix--vedette .mpl-prix__delai{color:var(--l-or-clair)}
.mpl-prix--vedette .mpl-prix__phrase{border-color:rgba(255,255,255,.16)}
.mpl-prix--vedette .mpl-coches .mpl-ico{color:var(--l-or-clair)}
.mpl-prix--vedette .mpl-lien{color:#fff}
.mpl-prix--vedette .mpl-lien span{border-color:var(--l-turquoise-clair)}
.mpl-prix--vedette .mpl-lien .mpl-ico{color:var(--l-turquoise-clair)}
.mpl-bande{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;margin-top:24px;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:24px clamp(24px,2.6vw,40px)}
.mpl-bande p{margin:0;font:600 clamp(20px,1.7vw,25px)/1.3 var(--l-titre);color:var(--l-encre)}
.mpl-annees{margin-top:24px;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(26px,2.6vw,40px)}
.mpl-annees h3{margin-bottom:18px}
.mpl-annees p:last-child{margin:0}
.mpl-annees dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.mpl-annees dl>div{padding:4px 28px 4px 0}
.mpl-annees dl>div+div{padding-left:28px;border-left:1px solid var(--l-trait)}
.mpl-annees dt{font:600 22px/1.2 var(--l-titre);color:var(--l-or-texte);margin-bottom:8px}
.mpl-annees dd{margin:0;font-size:16px}

/* Offre unique (consultant SEO) */
.mpl-offre{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.mpl-offre>div{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(28px,2.6vw,40px)}
.mpl-offre .mpl-offre__prix{background:var(--l-encre);border-color:var(--l-encre);color:var(--l-sur-fonce);display:flex;flex-direction:column;align-items:flex-start}
.mpl-offre__prix h3,.mpl-offre__prix .mpl-prix__montant strong{color:#fff}
.mpl-offre__prix .mpl-prix__pour,.mpl-offre__prix .mpl-prix__montant small,.mpl-offre__prix .mpl-prix__montant span{color:var(--l-sur-fonce-doux)}
.mpl-offre__prix .mpl-prix__phrase{border:0;padding:0;margin-bottom:26px}
.mpl-offre__prix .mpl-btn{margin-top:auto}
.mpl-offre__titre{font:600 22px/1.2 var(--l-titre);color:var(--l-encre);margin:0 0 18px}

/* ---------- Atouts, publics, cas, outils ---------- */
.mpl-atouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mpl-atouts article{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(24px,2.4vw,34px)}
.mpl-atouts h3{margin-bottom:10px}
.mpl-atouts p{margin:0}
.mpl-cas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mpl-cas__carte{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(24px,2.4vw,34px);display:flex;flex-direction:column}
.mpl-cas__recherche{font-weight:700;color:var(--l-or-texte);margin:0 0 6px}
.mpl-cas__positions{font-size:16px;margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--l-trait)}
.mpl-cas__positions strong{font:600 26px/1 var(--l-titre)}
.mpl-cas h3{margin-bottom:10px}
.mpl-cas .mpl-lien{margin-top:auto;padding-top:8px}
.mpl-note-bas{margin:20px 0 0;font-size:14px;color:var(--l-doux)}
.mpl-colonnes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4vw,72px);align-items:start}
.mpl-colonnes p{max-width:60ch}
.mpl-outils{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.mpl-outil{background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:clamp(26px,2.4vw,36px)}
.mpl-outil--choix{border-color:var(--l-encre)}
.mpl-outil__choix{font:700 12px/1.3 var(--l-corps);letter-spacing:.14em;text-transform:uppercase;color:var(--l-turquoise);margin:0 0 10px}
.mpl-outil h3{margin-bottom:4px}
.mpl-outil__pour{color:var(--l-doux);font-size:15.5px;margin:0 0 18px}
.mpl-outil ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--l-trait)}
.mpl-outil li{padding:12px 0 12px 30px;border-bottom:1px solid var(--l-trait);position:relative;font-size:15.5px}
.mpl-outil li::before{position:absolute;left:2px;top:11px;font-weight:700}
.mpl-outil li.oui::before{content:"✓";color:var(--l-turquoise)}
.mpl-outil li.non::before{content:"✕";color:var(--l-doux)}

/* ---------- Zone ---------- */
.mpl-communes{list-style:none;margin:6px 0 22px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;font-size:15.5px}
.mpl-communes li{display:flex;align-items:center;gap:8px}
.mpl-communes .mpl-ico{width:17px;height:17px;color:var(--l-turquoise)}

/* ---------- Questions ---------- */
.mpl-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(36px,5vw,96px);align-items:start}
.mpl-faq__tete{position:sticky;top:32px}
.mpl-faq__tete .mpl-h2{margin-bottom:28px}
.mpl-faq__autre{display:flex;flex-direction:column;gap:4px;padding-top:24px;border-top:1px solid var(--l-trait-fort);max-width:320px;font-size:15px;color:var(--l-doux)}
.mpl-faq__autre a{font:600 28px/1.2 var(--l-titre);color:var(--l-encre);text-decoration:none}
.mpl-faq__liste{border-top:1px solid var(--l-trait-fort)}
.mpl-question{border-bottom:1px solid var(--l-trait-fort)}
.mpl-question summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;cursor:pointer;min-height:44px}
.mpl-question summary::-webkit-details-marker{display:none}
.mpl-question summary h3{font:600 clamp(19px,1.5vw,22px)/1.35 var(--l-titre);color:var(--l-encre)}
.mpl-question__rep{padding:0 40px 22px 0}
.mpl-question__rep p{margin:0 0 .7em}
.mpl-question__rep p:last-child{margin:0}

/* ---------- Contact ---------- */
.mpl-contact{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(36px,5vw,88px);align-items:stretch}
.mpl-contact__texte .mpl-h2{margin-bottom:22px}
.mpl-contact__intro{max-width:50ch;margin-bottom:28px}
.mpl-coord{margin:0 0 20px;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon)}
.mpl-coord>div{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:18px 24px}
.mpl-coord>div+div{border-top:1px solid var(--l-trait)}
.mpl-coord dt{font:700 12px/1.4 var(--l-corps);letter-spacing:.14em;text-transform:uppercase;color:var(--l-doux);flex:none}
.mpl-coord dd{margin:0;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.mpl-coord a{color:var(--l-encre);text-decoration:none;font-weight:600}
.mpl-coord a:hover{color:var(--l-turquoise)}
.mpl-coord__tel{font:600 26px/1.1 var(--l-titre)!important}
.mpl-coord__fiche{display:inline-flex;align-items:center;gap:8px;font-size:14.5px}
.mpl-coord__fiche .mpl-ico{width:16px;height:16px}
.mpl-rdv{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);padding:22px 24px}
.mpl-rdv>.mpl-ico{width:26px;height:26px;color:var(--l-turquoise);margin-top:2px}
.mpl-rdv p{margin:0 0 10px;font-size:15.5px}
.mpl-rdv__titre{font:600 21px/1.25 var(--l-titre)!important;color:var(--l-encre);margin-bottom:4px!important}
.mpl-contact__form{background:var(--l-encre);color:var(--l-sur-fonce);border-radius:var(--l-rayon);padding:clamp(28px,3vw,48px)}
.mpl-contact__form-titre{font:600 clamp(24px,2vw,30px)/1.2 var(--l-titre);color:#fff;margin:0 0 24px}
.mpl-form{display:grid;gap:4px}
.mpl-form__duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 16px}
.mpl-champ,.mpl-form .mp-as{margin:0 0 14px;display:flex;flex-direction:column;gap:8px}
.mpl-champ label,.mpl-form .mp-as-question{font:600 14.5px/1.4 var(--l-corps);color:#fff}
.mpl-form input,.mpl-form textarea{width:100%;font:400 16px/1.5 var(--l-corps);color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:13px 15px;min-height:52px}
.mpl-form textarea{resize:vertical;min-height:140px}
.mpl-form input:focus,.mpl-form textarea:focus{border-color:var(--l-turquoise-clair);background:rgba(255,255,255,.12);outline:none}
.mpl-form .mp-as input{max-width:140px}
.mpl-piege,.mp-as-piege{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.mpl-form__envoi{margin-top:10px;min-height:60px;border:0;border-radius:999px;background:var(--l-chaud);color:var(--l-chaud-texte);font:600 18.5px var(--l-corps);cursor:pointer;transition:background-color .2s}
.mpl-form__envoi:hover{background:var(--l-chaud-fonce)}
.mpl-form__note{margin:12px 0 0;font-size:14px;color:var(--l-sur-fonce-doux)}
.mpl-form__note a{color:#fff;text-underline-offset:3px}
.mpl-avis-envoi{margin:0 0 20px;padding:14px 18px;border-radius:8px;font-weight:600}
.mpl-avis-envoi--ok{background:#fff;color:var(--l-encre)}
.mpl-avis-envoi--ko{background:var(--l-turquoise-clair);color:var(--l-encre)}

/* ---------- Pages de texte et articles ---------- */
.mpl-doc__largeur{max-width:calc(900px + 2 * var(--gutter))}
.mpl-doc__maj{color:var(--l-doux);font-size:15px;margin:0}
.mpl-doc{font-size:17.5px}
.mpl-doc h2{font-size:clamp(26px,2.4vw,32px);max-width:none;margin:48px 0 16px}
.mpl-doc h2:first-child{margin-top:0}
.mpl-doc h3{font-size:22px;margin:32px 0 12px}
.mpl-doc p,.mpl-doc li{max-width:72ch}
.mpl-doc ul,.mpl-doc ol{padding-left:1.3em;margin:0 0 1.2em}
.mpl-doc li{margin-bottom:.4em}
.mpl-doc a{color:var(--l-turquoise);text-underline-offset:3px}
.mpl-doc dl{margin:0 0 1.4em;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon)}
.mpl-doc dl>div{display:grid;grid-template-columns:minmax(0,.4fr) minmax(0,.6fr);gap:16px;padding:14px 22px}
.mpl-doc dl>div+div{border-top:1px solid var(--l-trait)}
.mpl-doc dt{font-weight:700;color:var(--l-encre)}
.mpl-doc dd{margin:0}
.mpl-doc figure{margin:1.6em 0}
.mpl-doc img{border-radius:var(--l-rayon)}
.mpl-doc .mpl-bande{margin-top:48px}
.mpl-articles{list-style:none;margin:0;padding:0;border-top:1px solid var(--l-trait-fort)}
.mpl-articles a{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:20px 0;border-bottom:1px solid var(--l-trait-fort);text-decoration:none}
.mpl-articles strong{font:600 21px/1.3 var(--l-titre)}
.mpl-articles small{color:var(--l-doux);flex:none}
.mpl-introuvable{text-align:left}
.mpl-introuvable__code{font:600 clamp(90px,14vw,180px)/1 var(--l-titre);color:var(--l-rond-1);margin:0 0 8px;letter-spacing:-.04em}
.mpl-introuvable__liens{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px 28px}
.mpl-introuvable__liens a{font-weight:700;color:var(--l-encre);text-underline-offset:4px;text-decoration-color:var(--l-turquoise)}

/* ---------- Pied de page ---------- */
.mpl-pied{background:var(--l-encre);color:var(--l-sur-fonce-doux);padding:clamp(64px,7vw,96px) 0 32px;font-size:15.5px}
.mpl-pied a{color:#fff;text-decoration:none}
.mpl-pied strong{color:#fff}
#mpl-seo-memo strong{color:inherit}
.mpl-pied a:hover{color:var(--l-turquoise-clair);text-decoration:underline;text-underline-offset:4px}
.mpl-pied__haut{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:40px;padding-bottom:48px}
.mpl-pied__nom{font:600 30px/1.1 var(--l-titre);color:#fff;margin:0 0 8px}
.mpl-pied__slogan{font-weight:700;color:#fff;margin:0 0 16px}
.mpl-pied__marque p:last-child{max-width:40ch}
.mpl-pied__titre{font:600 17px/1.4 var(--l-titre);color:#fff;margin:0 0 18px}
.mpl-pied ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mpl-pied__carte{border-radius:var(--l-rayon);overflow:hidden;height:300px;background:var(--l-encre-2)}
.mpl-pied__carte iframe{width:100%;height:100%;border:0;display:block}
.mpl-pied__bas{display:flex;align-items:center;justify-content:space-between;gap:20px 32px;flex-wrap:wrap;margin-top:32px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);font-size:14px}
.mpl-pied__bas p{margin:0}
.mpl-pied__liens{display:flex;flex-wrap:wrap;gap:8px 24px}
.mpl-pied__liens a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(255,255,255,.35)}
.mpl-carbone{display:inline-flex;align-items:stretch;border:1px solid rgba(255,255,255,.28);border-radius:8px;overflow:hidden;font-size:13px;line-height:1.3}
.mpl-carbone span{padding:8px 12px}
.mpl-carbone__g{background:rgba(255,255,255,.1);font-weight:700;color:#fff}
.mpl-carbone__pct{color:var(--l-sur-fonce)}
.mpl-carbone:hover{text-decoration:none!important;border-color:var(--l-turquoise-clair)}

/* ---------- Déroulé en serpentin (modèle VF Architectures) ---------- */
.mpl-tete-centre{text-align:center;max-width:900px;margin:0 auto clamp(36px,4vw,56px)}
.mpl-tete-centre .mpl-h2{margin:0 auto 18px;max-width:26ch}
.mpl-tete-centre p{margin:0 auto;max-width:62ch}
.mpl-tete-centre .mpl-surtitre{margin:0 auto 16px}
.mpl-tete-centre .mpl-h2:last-child{margin-bottom:0}
.mpl-serp{list-style:none;margin:0;padding:0}
.mpl-serp__carte{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);overflow:hidden}
.mpl-serp__etape--inverse .mpl-serp__photo{order:2}
.mpl-serp__photo{position:relative;min-height:clamp(230px,21vw,320px);overflow:hidden;background:var(--l-sable)}
.mpl-serp__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.mpl-serp__carte:hover .mpl-serp__photo img{transform:scale(1.04)}
.mpl-serp__texte{display:flex;flex-direction:column;justify-content:center;padding:clamp(24px,3.2vw,52px)}
.mpl-serp__n{display:flex;align-items:center;gap:14px;margin:0 0 16px;font:700 12px/1.3 var(--l-corps);letter-spacing:.14em;text-transform:uppercase;color:var(--l-or-texte)}
.mpl-serp__n span{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--l-sapin);color:#fff;font:600 19px/1 var(--l-titre);letter-spacing:0}
.mpl-serp__texte h3{font-size:clamp(22px,1.9vw,27px);line-height:1.2;margin:0 0 10px}
.mpl-serp__texte p:last-child{margin:0;max-width:52ch}
.mpl-serp__lien{display:block;width:100%;height:clamp(40px,4.5vw,64px);overflow:visible}
.mpl-serp__lien path{fill:none;stroke:var(--l-or);stroke-width:1.6;stroke-dasharray:3 7;stroke-linecap:round;vector-effect:non-scaling-stroke}
.mpl-serp__v{display:none}
.mpl-serp--texte .mpl-serp__carte{grid-template-columns:minmax(0,1fr);width:min(720px,100%)}
.mpl-serp--texte .mpl-serp__etape--inverse .mpl-serp__carte{margin-left:auto}
.mpl-parcours__action{text-align:center;margin:clamp(32px,3.5vw,48px) 0 0}

/* ---------- Tarifs : contenu rangé en parties ---------- */
.mpl-prix__groupe{font:700 12px/1.35 var(--l-corps);letter-spacing:.14em;text-transform:uppercase;color:var(--l-or-texte);margin:22px 0 12px}
.mpl-prix__phrase+.mpl-prix__groupe{margin-top:0}
.mpl-prix--vedette .mpl-prix__groupe{color:var(--l-or-clair)}
.mpl-prix .mpl-prix__groupe+.mpl-coches{margin-bottom:0}
.mpl-prix .mpl-coches:last-of-type{margin-bottom:26px}

/* ==========================================================================
   Tablette et téléphone (à garder en fin de fichier)
   ========================================================================== */
@media (max-width:1240px){
  .mpl-nav{gap:22px}
  .mpl-logo__nom{display:none}
}

@media (max-width:1100px){
  .mpl-nav,.mpl-entete__devis{display:none}
  .mpl-logo__nom{display:flex}
  .mpl-entete__tel,.mpl-burger{display:grid;place-items:center;width:48px;height:48px;border-radius:10px;border:0;flex:none}
  .mpl-entete__tel{background:var(--l-chaud);color:var(--l-chaud-texte)}
  .mpl-entete__tel .mpl-ico{width:21px;height:21px}
  .mpl-burger{background:var(--l-encre);cursor:pointer;padding:0;align-content:center;gap:5px}
  .mpl-burger span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}
  .mpl-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .mpl-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .mpl-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mpl-entete__in{gap:12px}
  .mpl-mob{position:absolute;top:100%;left:0;right:0;background:var(--l-encre);max-height:calc(100vh - var(--l-entete));overflow-y:auto;padding:12px var(--gutter) 28px}
  .mpl-mob.ouvert{display:block}
  .mpl-mob__liste{list-style:none;margin:0;padding:0}
  .mpl-mob__liste a{display:flex;align-items:center;min-height:54px;color:#fff;text-decoration:none;font:600 21px/1.2 var(--l-titre);border-bottom:1px solid rgba(255,255,255,.12)}
  .mpl-mob__liste a[aria-current]{color:var(--l-turquoise-clair)}
  .mpl-mob__actions{display:grid;gap:12px;margin-top:22px}
  .mpl-mob__actions a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;border-radius:999px;font-weight:600;text-decoration:none}
  .mpl-mob__tel{background:var(--l-chaud);color:var(--l-chaud-texte)}
  .mpl-mob__devis{background:#fff;color:var(--l-encre)}
  .mpl-services{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mpl-services .mpl-service:last-child{grid-column:1/-1;flex-direction:row}
  .mpl-services .mpl-service:last-child .mpl-service__img{flex:0 0 46%;aspect-ratio:auto;min-height:280px}
  .mpl-reals--mosaique{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mpl-real--grand{grid-row:auto;aspect-ratio:16/10}
  .mpl-tarifs,.mpl-offre{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mpl-tarifs .mpl-prix:first-child,.mpl-offre .mpl-offre__prix{grid-column:1/-1}
  .mpl-avis__piste{grid-auto-columns:calc((100% - 24px) / 2)}
  .mpl-pied__haut{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mpl-communes{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:900px){
  .mpl-serp__carte,.mpl-serp--texte .mpl-serp__carte{grid-template-columns:minmax(0,1fr);width:100%}
  .mpl-serp__etape--inverse .mpl-serp__photo{order:-1}
  .mpl-serp__photo{min-height:0;aspect-ratio:16/10}
  .mpl-serp__lien{height:56px}
  :root{--l-entete:72px}
  .mpl-logo__rond{width:46px;height:46px;font-size:19px}
  .mpl-logo__rond::after{right:9px;bottom:13px}
  .mpl-banniere__grille,.mpl-duo,.mpl-duo--visuel-droite,.mpl-duo--portrait,.mpl-duo--portrait.mpl-duo--visuel-droite,.mpl-faq,.mpl-contact,.mpl-colonnes{grid-template-columns:minmax(0,1fr)}
  .mpl-banniere__visuel{order:-1;min-height:0;aspect-ratio:4/3}
  .mpl-duo__visuel,.mpl-duo--visuel-droite .mpl-duo__visuel{order:-1;min-height:300px}
  .mpl-duo--portrait .mpl-duo__visuel{min-height:0;aspect-ratio:4/5;max-height:520px}
  .mpl-faq__tete{position:static}
  .mpl-atouts,.mpl-cas,.mpl-outils{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .mpl-aussi{grid-template-columns:minmax(0,1fr)}
  .mpl-aussi li,.mpl-aussi li+li{padding:20px 0;border-left:0;border-bottom:1px solid rgba(255,255,255,.16)}
  .mpl-annees dl{grid-template-columns:minmax(0,1fr)}
  .mpl-annees dl>div,.mpl-annees dl>div+div{padding:16px 0;border-left:0;border-top:1px solid var(--l-trait)}
  .mpl-annees dl>div:first-child{border-top:0;padding-top:0}
  .mpl-avis__tete{flex-direction:column;align-items:flex-start}
  .mpl-h2,.mpl-section h2{font-size:clamp(34px,8.6vw,46px)}
  .mpl-section h3{font-size:clamp(20px,3.4vw,24px)}
  .mpl-banniere__titre{font-size:clamp(40px,10vw,56px)}
  .mpl-entete-page .mpl-banniere__titre{font-size:clamp(34px,7.4vw,48px)}
  .mpl-question summary h3{font-size:clamp(18px,3.4vw,21px)}
}

@media (max-width:640px){
  .mpl-coches--lignes{grid-template-columns:minmax(0,1fr)}
  .mpl-logo__nom{display:none}
  .mpl-reals,.mpl-reals--mosaique,.mpl-services,.mpl-tarifs,.mpl-offre,.mpl-atouts,.mpl-cas,.mpl-outils,.mpl-pied__haut{grid-template-columns:minmax(0,1fr)}
  .mpl-real--grand{grid-column:auto;aspect-ratio:4/3}
  .mpl-real--grand .mpl-real__legende strong{font-size:24px}
  .mpl-services .mpl-service:last-child{flex-direction:column}
  .mpl-services .mpl-service:last-child .mpl-service__img{flex:none;aspect-ratio:4/3;min-height:0}
  .mpl-avis__piste{grid-auto-columns:100%}
  .mpl-form__duo{grid-template-columns:minmax(0,1fr)}
  .mpl-banniere__boutons .mpl-btn{flex:1 1 100%}
  .mpl-coord>div{flex-direction:column;gap:6px}
  .mpl-coord dd{text-align:left;align-items:flex-start}
  .mpl-etape p{padding-left:22px}
  .mpl-etape summary{gap:14px;padding:14px 16px}
  .mpl-pied__bas{flex-direction:column;align-items:flex-start}
  .mpl-doc dl>div{grid-template-columns:minmax(0,1fr);gap:4px}
  .mpl-articles a{flex-direction:column;gap:4px}
  .mpl-section--fond.mpl-ronds-1,.mpl-section--sable.mpl-ronds-1{background-size:auto}
}

@media (max-width:760px){
  /* Ronds plus petits sur téléphone, toujours dans les marges */
  .mpl-section--fond.mpl-ronds-1{background-image:radial-gradient(circle 175px at right -80px top -90px,var(--l-rond-1) 99.4%,transparent 100%),radial-gradient(circle 75px at left 4% bottom -45px,var(--l-rond-2) 99.4%,transparent 100%)}
  .mpl-section--fond.mpl-ronds-2{background-image:radial-gradient(circle 175px at left -90px bottom -95px,var(--l-rond-1) 99.4%,transparent 100%),radial-gradient(circle 72px at right 5% top -40px,var(--l-rond-2) 99.4%,transparent 100%)}
  .mpl-section--sable.mpl-ronds-1{background-image:radial-gradient(circle 175px at right -80px top -90px,var(--l-rond-sable-1) 99.4%,transparent 100%),radial-gradient(circle 75px at left 4% bottom -45px,var(--l-rond-sable-2) 99.4%,transparent 100%)}
  .mpl-section--sable.mpl-ronds-2{background-image:radial-gradient(circle 175px at left -90px bottom -95px,var(--l-rond-sable-1) 99.4%,transparent 100%),radial-gradient(circle 72px at right 5% top -40px,var(--l-rond-sable-2) 99.4%,transparent 100%)}
  .mpl-section--encre.mpl-ronds-2{background-image:radial-gradient(circle 180px at right -90px bottom -100px,color-mix(in srgb,var(--l-sapin) 32%,transparent) 99.4%,transparent 100%)}
  .mpl-ronds-banniere{background-image:radial-gradient(circle 150px at left -80px top -70px,var(--l-rond-1) 99.4%,transparent 100%),linear-gradient(180deg,var(--l-fond) 0%,var(--l-sable) 100%)}
}


/* Photo de Fourvière : cadrée sur la colline et les quais, pas sur le ciel */
.mpl-cadre--bas img{object-position:82% 50%}

/* Étiquette « Depuis 2019 » sur le portrait (demandée le 2026-10-12) */
.mpl-depuis{position:absolute;left:clamp(14px,1.6vw,22px);bottom:clamp(14px,1.6vw,22px);z-index:1;margin:0;display:flex;flex-direction:column;gap:2px;max-width:calc(100% - 28px);padding:14px 20px;background:#fff;border-radius:10px}
.mpl-depuis strong{font:600 clamp(22px,2vw,28px)/1.1 var(--l-titre);color:var(--l-encre)}
.mpl-depuis span{font-size:14px;color:var(--l-doux)}

/* Sections blanches : cartes en crème pour qu'elles se détachent du fond */
.mpl-section--fond :is(.mpl-coches--lignes li,.mpl-etape,.mpl-avis__carte,.mpl-prix:not(.mpl-prix--vedette),.mpl-bande,.mpl-annees,.mpl-offre>div,.mpl-atouts article,.mpl-cas__carte,.mpl-outil,.mpl-coord,.mpl-rdv,.mpl-serp__carte){background-color:#fff}

/* Avis sur fond vert sapin : cartes blanches */
.mpl-section--encre .mpl-avis__carte{border-color:transparent;color:var(--l-texte)}
.mpl-section--encre .mpl-avis__carte strong{color:var(--l-encre)}
.mpl-section--encre .mpl-note__chiffre,.mpl-section--encre .mpl-note__lien{color:#fff}
.mpl-section--encre .mpl-note__lien{text-decoration-color:var(--l-or)}
.mpl-section--encre .mpl-fleche{border-color:rgba(255,255,255,.4);color:#fff}
.mpl-section--encre .mpl-fleche:hover:not(:disabled){border-color:#fff;background:#fff;color:var(--l-encre)}

/* Boutons plus grands : sur téléphone, le texte passe à la ligne plutôt que de déborder */
.mpl-btn{max-width:100%}
@media (max-width:600px){
  .mpl-btn{white-space:normal;text-align:center;padding:12px 24px;line-height:1.3}
}

/* Présentation courte et « Mes engagements » dans la section interlocuteur (2026-10-12) */
.mpl-duo__texte .mpl-h2+.mpl-presentation{margin-top:-6px}
.mpl-presentation{margin:0;max-width:62ch;font-size:18px;line-height:1.7}
.mpl-engagements{font:600 clamp(21px,1.7vw,25px)/1.25 var(--l-titre);color:var(--l-encre);margin:38px 0 30px}

/* Engagements en puces les uns sous les autres, sans cartes, version allégée (2026-10-12, « trop chargé ») :
   coche simple sans pastille, intitulé en texte courant gras, description sans gras */
.mpl-coches--suite{gap:16px;margin-bottom:0}
.mpl-coches--suite li{gap:14px;line-height:1.6}
.mpl-coches--suite .mpl-ico{flex:none;width:30px;height:30px;padding:7px;margin:0;border-radius:50%;background:var(--l-or);color:#fff;stroke-width:2.8}
.mpl-coches--suite li>span>strong:first-child{display:block;font-weight:700;color:var(--l-encre);margin:3px 0 2px}
.mpl-coches--suite li>span strong:not(:first-child){font-weight:inherit;color:inherit}

/* Type des réalisations : texte blanc précédé d'un point terracotta */
.mpl-real__legende em.mpl-real__type{display:inline-flex;align-items:center;gap:9px;margin-bottom:4px}
.mpl-real__legende em.mpl-real__type::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--l-turquoise-clair)}

/* Rond dessiné à la main autour de « Mes engagements » (demandé le 2026-10-12) */
.mpl-entoure{position:relative;display:inline-block;padding:10px 28px}
.mpl-entoure svg{position:absolute;left:-10px;top:-8px;width:calc(100% + 20px);height:calc(100% + 16px);overflow:visible;pointer-events:none}
.mpl-entoure path{fill:none;stroke:var(--l-sapin);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.mpl-entoure__1{stroke-width:1.8}

/* Carte de la zone d'intervention (Leaflet, remise le 2026-10-12) : fond adouci aux tons du site,
   rayon terracotta, communes vert sapin, bureau au rond du logo. Pas d'ombre, bordure uniforme. */
.mpl-carte-cadre{position:relative;min-height:clamp(380px,36vw,560px);border-radius:var(--l-rayon);overflow:hidden;background:var(--l-sable);border:1px solid var(--l-trait)}
.mpl-carte{position:absolute;inset:0;background:var(--l-sable);font-family:var(--l-corps)}
.mpl-carte .leaflet-tile-pane{filter:grayscale(1) sepia(.14) brightness(1.1) contrast(.84)}
.mpl-carte__commune i{display:block;width:14px;height:14px;border-radius:50%;background:var(--l-encre);border:2.5px solid #fff;box-sizing:border-box}
.mpl-carte__bureau span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--l-sapin);color:#fff;font:600 15px/1 var(--l-titre);border:3px solid #fff;box-sizing:border-box;position:relative}
.mpl-carte__bureau span::after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:var(--l-or);right:6px;bottom:8px}
.mpl-carte .leaflet-tooltip{background:#fff;color:var(--l-encre);border:1px solid var(--l-trait);border-radius:8px;box-shadow:none;padding:4px 9px;font:600 12.5px/1.3 var(--l-corps)}
.mpl-carte .leaflet-tooltip-top::before,.mpl-carte .leaflet-tooltip-right::before{display:none}
.mpl-carte .mpl-carte__etiquette{background:var(--l-sapin);color:#fff;border-color:var(--l-sapin)}
.mpl-carte .leaflet-bar{border:1px solid var(--l-trait)!important;border-radius:10px;overflow:hidden;box-shadow:none!important}
.mpl-carte .leaflet-bar a{width:36px;height:36px;line-height:36px;font-size:20px;color:var(--l-encre)}
.mpl-carte .leaflet-control-attribution{font-size:9px;line-height:1.4;padding:0 5px;background:rgba(255,255,255,.6);color:#7a756b}
.mpl-carte .leaflet-control-attribution a{color:inherit;text-decoration:none}
@media (max-width:900px){
  .mpl-duo .mpl-duo__visuel.mpl-carte-cadre{min-height:0;width:100%;aspect-ratio:4/3}
}

/* Ronds dans le fond de la carte vedette (e-commerce), demandés le 2026-10-12 */
.mpl-prix--vedette{background-image:radial-gradient(circle 200px at right -80px bottom -90px,color-mix(in srgb,var(--l-sapin) 40%,transparent) 99.4%,transparent 100%),radial-gradient(circle 70px at left -22px top -26px,rgba(220,228,218,.13) 99.4%,transparent 100%);background-repeat:no-repeat}

/* En-têtes de page centrés (Contact, Réalisations), demandé le 2026-10-12 */
.mpl-entete-page--centre{text-align:center}
.mpl-entete-page--centre .mpl-ariane ol{justify-content:center}
.mpl-entete-page--centre .mpl-banniere__titre,.mpl-entete-page--centre .mpl-banniere__intro{margin-left:auto;margin-right:auto}

/* Page Réalisations : filtres et cartes avec le texte sous l'image (2026-10-12) */
.mpl-filtres{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 0 clamp(30px,3.4vw,48px)}
.mpl-filtre{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 10px 0 22px;border-radius:999px;border:1px solid var(--l-trait-fort);background:#fff;color:var(--l-encre);font:600 16px/1 var(--l-corps);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.mpl-filtre span{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:var(--l-sable);color:var(--l-encre);font-size:13.5px;box-sizing:border-box}
.mpl-filtre:hover{border-color:var(--l-encre)}
.mpl-filtre[aria-pressed="true"]{background:var(--l-encre);border-color:var(--l-encre);color:#fff}
.mpl-filtre[aria-pressed="true"] span{background:var(--l-or);color:#fff}
.mpl-filtre:focus-visible{outline:2px solid var(--l-or);outline-offset:3px}
.mpl-galerie{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3vw,44px) clamp(20px,2.4vw,32px)}
.mpl-galerie__carte{display:flex;flex-direction:column;text-decoration:none;color:var(--l-texte)}
.mpl-galerie__carte[hidden]{display:none}
.mpl-galerie__img{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--l-rayon);overflow:hidden;background:var(--l-sable)}
.mpl-galerie__img img,.mpl-galerie__img picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-galerie__img img{object-fit:cover;transition:transform .5s}
.mpl-galerie__carte:hover .mpl-galerie__img img{transform:scale(1.04)}
.mpl-galerie__texte{display:flex;flex-direction:column;gap:5px;padding:18px 2px 0}
.mpl-galerie__type{display:inline-flex;align-items:center;gap:9px;font:700 11.5px/1.3 var(--l-corps);font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--l-or-texte)}
.mpl-galerie__type::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--l-or)}
.mpl-galerie__texte strong{font:600 clamp(22px,1.8vw,26px)/1.2 var(--l-titre);color:var(--l-encre)}
.mpl-galerie__texte small{font-size:15px;color:var(--l-doux)}
.mpl-galerie__lien{display:inline-flex;align-items:center;gap:8px;margin-top:8px;font-weight:700;font-size:15px;color:var(--l-encre)}
.mpl-galerie__lien .mpl-ico{width:16px;height:16px;color:var(--l-or)}
.mpl-galerie__carte:hover .mpl-galerie__lien{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--l-or)}
@media (max-width:1100px){
  .mpl-galerie{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .mpl-galerie{grid-template-columns:minmax(0,1fr)}
  .mpl-filtre{font-size:15px;padding-left:18px}
}

/* Bloc « Pourquoi… » des pages de service : quatre cartes avec icône (2026-10-12) */
.mpl-atouts--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mpl-atouts--4 article{display:flex;flex-direction:column}
.mpl-atouts--4 .mpl-ico{width:50px;height:50px;padding:13px;margin:0 0 20px;border-radius:50%;background:var(--l-icone-fond);color:var(--l-turquoise-fonce);stroke-width:1.9;box-sizing:border-box;flex:none}
.mpl-atouts--4 h3{font-size:clamp(20px,1.6vw,23px);line-height:1.25}
@media (max-width:1100px){
  .mpl-atouts--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .mpl-atouts--4{grid-template-columns:minmax(0,1fr)}
}

/* Bloc « Pourquoi » en deux colonnes : photo à gauche, points à droite (2026-10-12) */
.mpl-duo--pourquoi .mpl-duo__visuel{min-height:520px}
.mpl-pourquoi{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:clamp(20px,2.2vw,28px)}
.mpl-pourquoi li{display:grid;grid-template-columns:50px minmax(0,1fr);gap:18px;align-items:start}
.mpl-pourquoi .mpl-ico{width:50px;height:50px;padding:13px;margin:0;border-radius:50%;background:var(--l-icone-fond);color:var(--l-turquoise-fonce);stroke-width:1.9;box-sizing:border-box}
.mpl-pourquoi h3{font-size:clamp(20px,1.6vw,23px);line-height:1.25;margin:2px 0 6px}
.mpl-pourquoi p{margin:0}
@media (max-width:900px){
  .mpl-duo--pourquoi .mpl-duo__visuel{min-height:0;aspect-ratio:4/3}
}

/* Logo officiel de Google dans une pastille blanche, à côté de la note (2026-10-12) */
.mpl-google{display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--l-trait)}
.mpl-google svg{width:24px;height:24px;display:block}
.mpl-section--encre .mpl-google{border-color:transparent}

/* Communes de la zone en étiquettes au trait fin, sans icône, comme sur VF Architectures (2026-10-12) */
.mpl-communes{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 26px}
.mpl-communes li{display:inline-flex;align-items:center;gap:8px;padding:9px 18px 9px 14px;border:1px solid var(--l-trait-fort);font-size:14.5px;line-height:1.3;color:var(--l-encre)}

/* Deux cartes de prix seulement (page vitrine : Création et Maintenance, 2026-10-12) */
.mpl-tarifs--deux{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){
  .mpl-tarifs--deux{grid-template-columns:minmax(0,1fr)}
}
.mpl-tarifs--deux .mpl-prix{grid-column:auto}
.mpl-communes .mpl-ico{flex:none;display:block;width:16px;height:16px;margin:0;color:var(--l-or);stroke-width:1.8}

/* Engagements sans puces, en cartes deux par deux (2026-10-12) */
.mpl-coches--suite{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:0}
.mpl-coches--suite li{display:block;padding:clamp(18px,1.6vw,24px);background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);line-height:1.6;font-size:15.5px}
.mpl-section--fond .mpl-coches--suite li{background:#fff}
.mpl-coches--suite .mpl-ico{display:none}
.mpl-coches--suite li>span>strong:first-child{display:block;font:600 clamp(19px,1.5vw,22px)/1.25 var(--l-titre);color:var(--l-encre);margin:0 0 8px}
@media (max-width:600px){
  .mpl-coches--suite{grid-template-columns:minmax(0,1fr)}
}

/* Réalisations e-commerce : quatre sites en grille deux par deux (2026-10-12) */
.mpl-reals-deux .mpl-reals{grid-template-columns:repeat(2,minmax(0,1fr))}
.mpl-reals-deux .mpl-real__legende strong{font-size:clamp(24px,2.2vw,32px)}
@media (max-width:600px){
  .mpl-reals-deux .mpl-reals{grid-template-columns:minmax(0,1fr)}
}

/* Engagements : puce noire remise dans chaque carte (2026-10-12, « bullet point mais rester noir ») */
.mpl-coches--suite li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start}
.mpl-coches--suite .mpl-ico{display:block;width:28px;height:28px;padding:6px;margin:1px 0 0;border-radius:50%;background:var(--l-encre);color:#fff;stroke-width:2.6;box-sizing:border-box}

/* Déroulé de l'accueil en grille de quatre cartes (2026-10-12) */
.mpl-etapes4{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.6vw,24px);counter-reset:none}
.mpl-etapes4__carte{display:flex;flex-direction:column;background:#fff;border:1px solid var(--l-trait);border-radius:var(--l-rayon);overflow:hidden}
.mpl-section--fond .mpl-etapes4__carte{background:#fff}
.mpl-etapes4__photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--l-sable)}
.mpl-etapes4__photo img,.mpl-etapes4__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-etapes4__photo img{object-fit:cover;transition:transform .6s ease}
.mpl-etapes4__carte:hover .mpl-etapes4__photo img{transform:scale(1.04)}
.mpl-etapes4__texte{display:flex;flex-direction:column;padding:clamp(20px,1.8vw,26px)}
.mpl-etapes4__texte .mpl-serp__n{margin-bottom:14px}
.mpl-etapes4__texte .mpl-serp__n span{width:40px;height:40px;font-size:17px}
.mpl-etapes4__texte h3{font-size:clamp(20px,1.6vw,23px);line-height:1.2;margin:0 0 8px}
.mpl-etapes4__texte p:last-child{margin:0;font-size:15.5px;line-height:1.6}
@media (max-width:1100px){
  .mpl-etapes4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .mpl-etapes4{grid-template-columns:minmax(0,1fr)}
}

/* Engagements comme la liste de la bannière (2026-10-12) : rond terracotta et coche blanche,
   sans cartes, intitulé en gras dans la police du texte, description dessous */
.mpl-coches--suite{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:0}
.mpl-coches--suite li,.mpl-section--fond .mpl-coches--suite li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;align-items:start;padding:0;background:none;border:0;border-radius:0;font-size:16px;line-height:1.6}
.mpl-coches--suite .mpl-ico{display:block;width:30px;height:30px;padding:6px;margin:0;border-radius:50%;background:var(--l-or);color:#fff;stroke-width:2.4;box-sizing:border-box}
.mpl-coches--suite li>span>strong:first-child{display:block;font:700 17px/1.4 var(--l-corps);color:var(--l-encre);margin:3px 0 3px}

/* Déroulé de l'accueil : pointillé ondulé entre les cartes (2026-10-12) */
.mpl-etapes4{--g:clamp(40px,4vw,64px);column-gap:var(--g)}
.mpl-etapes4__carte{overflow:visible}
.mpl-etapes4__photo{border-radius:calc(var(--l-rayon) - 1px) calc(var(--l-rayon) - 1px) 0 0}
.mpl-etapes4__texte{position:relative}
.mpl-etapes4__lien{position:absolute;left:calc(100% + 1px);top:calc(clamp(20px,1.8vw,26px) + 5px);width:var(--g);height:30px;overflow:visible;pointer-events:none}
.mpl-etapes4__lien path{fill:none;stroke:var(--l-or);stroke-width:1.6;stroke-dasharray:3 6;stroke-linecap:round;vector-effect:non-scaling-stroke}
@media (max-width:1100px){
  .mpl-etapes4{row-gap:var(--g)}
  .mpl-etapes4__carte:nth-child(2) .mpl-etapes4__lien{display:none}
}
@media (max-width:600px){
  .mpl-etapes4__carte:nth-child(2) .mpl-etapes4__lien{display:block}
  .mpl-etapes4__lien{left:calc(50% - var(--g) / 2);top:calc(100% + 1px + var(--g) / 2 - 15px);transform:rotate(90deg)}
}

/* Intitulés des engagements en noir (2026-10-12) */
.mpl-coches--suite li>span>strong:first-child{color:var(--l-encre)}

/* Déroulé de l'accueil (2026-10-12) : pointillé droit, cartes rapprochées, fond blanc avec ombre
   douce (ombre autorisée ici par l'utilisateur), même taille de texte dans les quatre cartes */
.mpl-etapes4{--g:clamp(26px,2.4vw,36px)}
.mpl-etapes4__carte,.mpl-section--fond .mpl-etapes4__carte{background:#fff;border:1px solid #E8E2D7;box-shadow:0 12px 32px color-mix(in srgb,var(--l-encre) 7%,transparent)}
.mpl-etapes4__texte p:not(.mpl-serp__n){margin:0;font-size:15.5px;line-height:1.6}
.mpl-etapes4__lien path{stroke-dasharray:3 5}

/* Moins d’espace entre le dernier paragraphe et le bouton des sections à deux colonnes (2026-10-12) */
.mpl-duo__texte > p:has(+ .mpl-duo__action){margin-bottom:0}
.mpl-duo__texte > p + .mpl-duo__action{margin-top:22px}

/* « Toutes les réalisations » sous la grille sur téléphone et tablette (2026-10-12) */
.mpl-lien-bas{display:none;margin:26px 0 0}
@media (max-width:900px){
  .mpl-tete-ligne > .mpl-lien{display:none}
  .mpl-lien-bas{display:block}
}

/* Déroulé de l'accueil : pointillé droit sur ordinateur, ondulé sur téléphone (2026-10-12) */
.mpl-etapes4__vague{display:none}
@media (max-width:600px){
  .mpl-etapes4{--g:64px}
  .mpl-etapes4__droit{display:none}
  .mpl-etapes4__vague{display:inline}
}

/* ---------- 2026-10-14 : cartes de réalisations comme mathieu-pagnier.com ----------
   Plus de voile sur toute la photo (« c'est trop noir ») : le dégradé ne porte que sur la légende,
   collée en bas de la carte, mêmes valeurs que mp-classe.css du .com. */
.mpl-real::after{content:none}
.mpl-real__legende{left:0;right:0;bottom:0;padding:84px 22px 20px;background:linear-gradient(to top,rgba(14,13,12,.9),rgba(14,13,12,.55) 50%,rgba(14,13,12,0))}
.mpl-real--grand .mpl-real__legende{left:0;bottom:0;padding:96px 28px 26px}

/* Plan du site lisible (/plan-du-site/, 2026-10-25) : le pied y mène au lieu de /wp-sitemap.xml */
/* Une seule colonne (2026-10-28, « tout l'un sous l'autre ») : Pages du site, puis Informations, une page par ligne */
.mpl-plan{max-width:760px}
.mpl-plan__bloc+.mpl-plan__bloc{margin-top:clamp(44px,4.4vw,64px)}
.mpl-plan .mpl-plan__titre{font-size:clamp(26px,2.4vw,32px);max-width:none;margin:0 0 12px}
.mpl-plan ul{list-style:none;margin:0;padding:0}
.mpl-plan__bloc>ul{border-bottom:1px solid var(--l-trait)}
.mpl-plan__bloc>ul>li{border-top:1px solid var(--l-trait)}
.mpl-plan a{display:block;padding:15px 0;color:var(--l-encre);text-decoration:none;font-size:clamp(17px,1.3vw,19px);line-height:1.35}
.mpl-plan ul ul{margin:-4px 0 12px 22px}
.mpl-plan ul ul a{padding:6px 0;font-size:16.5px;color:var(--l-doux)}
.mpl-plan a:hover{color:var(--l-turquoise);text-decoration:underline;text-underline-offset:4px}

/* ==========================================================================
   Accueil Jungle LAB. (2026-10-25) : inc/accueil.php et blocs communs rhabillés
   (note Google, avis, questions, contact). Mêmes mesures que la feuille de Jungle LAB.
   ========================================================================== */

/* Mots en vert dans les titres, vert tendre sur fond foncé ou sur photo */
.mpl-accent{color:var(--l-turquoise)}
.mpl-section--encre .mpl-accent,.mpl-hero .mpl-accent,.mpl-porte .mpl-accent{color:var(--l-turquoise-clair)}

/* Bouton au contour blanc, sur photo ou fond foncé */
.mpl-btn--verre{border-color:rgba(255,255,255,.5);color:#fff;background:transparent}
.mpl-btn--verre:hover{background:#fff;color:var(--l-encre);border-color:#fff}

/* ---------- En-tête transparent sur la bannière de l'accueil ---------- */
.mpl-entete-transparent .mpl-entete{position:absolute;left:0;right:0;top:0;transition:background-color .25s,border-color .25s}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert){background:transparent;border-bottom-color:transparent}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) :is(.mpl-logo__nom,.mpl-nav>a,.mpl-nav__groupe>a){color:#fff}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) .mpl-logo__nom small{color:rgba(255,255,255,.78)}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) .mpl-logo__rond{border-color:#fff;color:#fff}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) :is(.mpl-nav>a:hover,.mpl-nav__groupe:hover>a){color:var(--l-dore)}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) .mpl-entete__devis{background:var(--l-chaud);color:var(--l-chaud-texte)}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) .mpl-entete__devis:hover{background:var(--l-chaud-fonce)}
.mpl-entete-transparent .mpl-entete:not(.est-compact):not(.menu-ouvert) .mpl-burger{background:transparent;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}

/* ---------- Bannière : photo de feuillage flou, titre centré, bande de quatre photos ---------- */
.mpl-hero{--debord:clamp(90px,10vw,170px);position:relative;background:var(--l-fond);color:var(--l-sur-fonce);padding:clamp(150px,13vw,196px) 0 0;isolation:isolate}
.mpl-hero__fond{position:absolute;left:0;right:0;top:0;bottom:var(--debord);z-index:-1;overflow:hidden;background:var(--l-encre)}
.mpl-hero__fond picture{display:block;width:100%;height:100%}
.mpl-hero__fond img{width:100%;height:100%;object-fit:cover;object-position:40% 45%;transform:scale(1.25);transform-origin:40% 48%;display:block}
.mpl-hero__fond::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 46% 42% at 50% 46%,color-mix(in srgb,var(--l-voile) 50%,transparent),color-mix(in srgb,var(--l-voile) 0%,transparent) 100%),linear-gradient(180deg,color-mix(in srgb,var(--l-voile) 66%,transparent) 0%,color-mix(in srgb,var(--l-voile) 46%,transparent) 45%,color-mix(in srgb,var(--l-voile) 74%,transparent) 100%)}
.mpl-hero__fond picture:has(.mpl-hero__img-tel),.mpl-hero__img-tel{display:none}
.mpl-hero__in{position:relative;max-width:calc(1180px + 2 * var(--gutter));text-align:center}
.mpl-hero__lieu{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;padding:8px 16px;border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:14.5px;color:var(--l-dore)}
.mpl-hero__lieu .mpl-ico{width:18px;height:18px}
.mpl-hero .mpl-hero__h1{color:#fff;font-size:clamp(50px,7.2vw,112px);line-height:1;letter-spacing:-.02em;text-wrap:balance}
.mpl-hero__lead{max-width:760px;margin:26px auto 0;font-size:clamp(17.5px,1.45vw,21px);line-height:1.6;color:var(--l-sur-fonce-doux)}
.mpl-hero__lead strong{color:#fff}
.mpl-hero__boutons{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:32px 0 0}
.mpl-hero__note{display:inline-flex;align-items:center;gap:10px;margin:24px 0 0;padding:8px 18px 8px 10px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--l-sur-fonce-doux);text-decoration:none;font-size:15px}
.mpl-hero__note .mpl-google{width:30px;height:30px;border:0}
.mpl-hero__note .mpl-google svg{width:18px;height:18px}
.mpl-hero__note .mpl-etoiles{color:var(--l-etoile);font-size:15px;letter-spacing:.06em}
.mpl-hero__note strong{color:#fff}
.mpl-hero__note:hover{color:#fff}
.mpl-hero__bande{position:relative;display:grid;grid-template-columns:1.15fr .9fr 1.15fr .9fr;align-items:end;gap:clamp(12px,1.4vw,22px);margin-top:clamp(48px,5vw,76px)}
.mpl-hero__photo{position:relative;margin:0;overflow:hidden;border:clamp(4px,.42vw,7px) solid #fff;border-radius:var(--l-rayon);background:var(--l-encre-2)}
.mpl-hero__photo:nth-child(1){height:clamp(240px,24vw,400px)}
.mpl-hero__photo:nth-child(2){height:clamp(200px,19vw,320px)}
.mpl-hero__photo:nth-child(3){height:clamp(260px,26vw,430px)}
.mpl-hero__photo:nth-child(4){height:clamp(200px,19vw,320px)}
.mpl-hero__photo img,.mpl-hero__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-hero__photo img{object-fit:cover}

/* ---------- Services en grandes cartes photo ---------- */
.mpl-portes{background:var(--l-fond);padding:clamp(64px,6vw,96px) 0 clamp(72px,7vw,112px)}
.mpl-portes__grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,28px)}
.mpl-porte{position:relative;display:flex;align-items:flex-end;min-height:clamp(620px,48vw,720px);border-radius:28px;overflow:hidden;color:#fff;isolation:isolate}
.mpl-porte__fond{position:absolute;inset:0;z-index:-1;background:var(--l-encre)}
.mpl-porte__fond img,.mpl-porte__fond picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-porte__fond img{object-fit:cover;transition:transform .6s ease}
.mpl-porte__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--l-voile) 8%,transparent) 0%,color-mix(in srgb,var(--l-voile) 50%,transparent) 38%,color-mix(in srgb,var(--l-voile) 90%,transparent) 64%,color-mix(in srgb,var(--l-voile) 95%,transparent) 100%)}
.mpl-porte:hover .mpl-porte__fond img{transform:scale(1.03)}
.mpl-porte__corps{width:100%;padding:clamp(26px,2.6vw,44px);text-shadow:0 1px 14px rgba(8,14,10,.55)}
.mpl-porte__corps .mpl-btn{text-shadow:none}
.mpl-porte__pour{margin:0 0 10px;font-size:15px;font-weight:600;color:var(--l-dore)}
.mpl-porte .mpl-porte__titre{margin:0;font-size:clamp(30px,2.6vw,42px);line-height:1.04;letter-spacing:-.02em;color:#fff}
.mpl-porte__liste{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid rgba(255,255,255,.24)}
.mpl-porte__liste li{display:flex;align-items:center;gap:12px;min-height:56px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.24);font:600 clamp(17px,1.25vw,19px)/1.3 var(--l-titre);color:#fff}
.mpl-porte__liste .mpl-ico{width:20px;height:20px;color:var(--l-turquoise-clair);stroke-width:2.2}
.mpl-porte__prix{margin:22px 0;font-size:16px;color:var(--l-sur-fonce-2)}
.mpl-porte__prix strong{font:600 clamp(22px,1.8vw,27px)/1 var(--l-titre);color:#fff}

/* ---------- Réalisations et zone sur fond vert nuit ---------- */
.mpl-reals-nuit .mpl-tete-ligne{border-bottom-color:rgba(255,255,255,.16)}
.mpl-section--encre .mpl-lien{color:#fff}
.mpl-section--encre .mpl-lien span{border-color:var(--l-turquoise-clair)}
.mpl-section--encre .mpl-lien .mpl-ico{color:var(--l-turquoise-clair)}
.mpl-zone-nuit{margin-top:clamp(56px,6vw,88px);text-align:center}
.mpl-zone-nuit__titre{margin:0 0 22px;font:600 clamp(20px,1.6vw,24px)/1.3 var(--l-titre);color:#fff}
.mpl-communes.mpl-communes--nuit{justify-content:center;max-width:1100px;margin:0 auto 24px}
.mpl-communes--nuit li{border-color:rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.04);color:var(--l-sur-fonce);padding:9px 18px}
.mpl-communes--nuit .mpl-communes__bureau{background:var(--l-turquoise-clair);border-color:var(--l-turquoise-clair);color:var(--l-encre);font-weight:600;padding-left:14px}
.mpl-communes__bureau small{font-size:13px;font-weight:400}
.mpl-communes--nuit .mpl-communes__bureau .mpl-ico{color:var(--l-encre)}
.mpl-zone-nuit__texte{max-width:64ch;margin:0 auto;color:var(--l-sur-fonce-doux)}
.mpl-zone-nuit__texte strong{color:#fff}
.mpl-zone-nuit__boutons{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:30px}

/* ---------- Note Google en pastille blanche ---------- */
.mpl-note{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:16px;margin:0 0 24px;padding:12px 28px 12px 14px;border-radius:999px;background:#fff;color:var(--l-encre);text-decoration:none}
.mpl-note .mpl-google{width:44px;height:44px;border:0;background:var(--l-fond)}
.mpl-note__chiffre,.mpl-section--encre .mpl-note__chiffre{font:600 clamp(40px,3.4vw,52px)/1 var(--l-titre);letter-spacing:-.03em;color:var(--l-encre)}
.mpl-note__detail{display:flex;flex-direction:column;gap:5px;font-size:15px;font-weight:600}
.mpl-note__detail .mpl-etoiles{font-size:18px;line-height:1;letter-spacing:.06em}
.mpl-note:hover{color:var(--l-turquoise-fonce)}

/* ---------- Avis : cartes blanches sans bordure, flèches rondes ---------- */
.mpl-avis__carte,.mpl-section--fond .mpl-avis__carte{border-color:transparent;padding:28px}
.mpl-avis__qui{border-top-color:var(--l-trait)}
.mpl-fleche{width:56px;height:56px;border-color:var(--l-trait-fort)}
.mpl-fleche:hover:not(:disabled){background:var(--l-encre);border-color:var(--l-encre);color:#fff}

/* ---------- Questions : « + » dans un rond, qui tourne à l'ouverture ---------- */
.mpl-faq__liste{border-top-color:var(--l-trait)}
.mpl-question{border-bottom-color:var(--l-trait)}
.mpl-question summary{min-height:76px;padding:18px 0}
.mpl-question summary:focus,.mpl-question summary:focus-visible{outline:none}
.mpl-question summary h3{font:600 clamp(18px,1.35vw,21px)/1.35 var(--l-titre)}
.mpl-question summary .mpl-ico{flex:none;box-sizing:border-box;width:38px;height:38px;padding:9px;border-radius:50%;border:1px solid var(--l-trait-fort);color:var(--l-encre);transition:transform .25s,background-color .2s,color .2s}
.mpl-question summary:hover .mpl-ico{background:var(--l-encre);border-color:var(--l-encre);color:#fff}
.mpl-question[open] summary .mpl-ico{transform:rotate(45deg)}
.mpl-question__rep{padding:0 58px 22px 0}
/* Variante avec photos (accueil) : mosaïque à gauche, même hauteur que les questions */
.mpl-faq.mpl-faq--photos{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,88px);align-items:stretch}
.mpl-faq__photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(10px,1vw,16px);min-height:560px}
.mpl-faq__photo{position:relative;margin:0;border-radius:var(--l-rayon);overflow:hidden;background:var(--l-fond)}
.mpl-faq__photo:first-child{grid-column:1/-1}
.mpl-faq__photo img,.mpl-faq__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-faq__photo img{object-fit:cover}
.mpl-faq__droite .mpl-h2{margin-bottom:clamp(24px,2.4vw,36px)}
.mpl-faq__droite .mpl-faq__autre{margin:28px 0 0;padding:0;border:0;max-width:none}

/* ---------- Contact : coordonnées à gauche, formulaire sur la photo de feuillage ---------- */
.mpl-contact__tete{margin-bottom:clamp(30px,3vw,48px)}
.mpl-contact__tete .mpl-h2{margin-bottom:16px}
.mpl-contact__tete .mpl-contact__intro{margin:0;max-width:62ch}
.mpl-contact{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,48px);align-items:stretch}
.mpl-contact__direct{display:flex;flex-direction:column}
.mpl-contact__nom{margin:0 0 18px;font:600 clamp(24px,2vw,30px)/1.2 var(--l-titre);letter-spacing:-.02em;color:var(--l-encre)}
.mpl-contact__tel{display:inline-flex;align-items:center;gap:14px;align-self:flex-start;padding:18px 28px;border-radius:999px;background:var(--l-chaud);color:var(--l-chaud-texte);text-decoration:none;font:600 clamp(22px,2vw,28px)/1.1 var(--l-titre);letter-spacing:-.01em}
.mpl-contact__tel:hover{background:var(--l-chaud-fonce)}
.mpl-contact__tel .mpl-ico{width:24px;height:24px}
.mpl-contact__infos{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:22px}
.mpl-contact__infos li{display:flex;align-items:center;gap:18px;font-size:16px;line-height:1.55;color:var(--l-texte)}
.mpl-contact__infos li>span{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.mpl-contact__infos .mpl-ico{box-sizing:content-box;flex:none;width:26px;height:26px;padding:15px;border-radius:50%;background:var(--l-turquoise-fonce);color:#fff;stroke-width:2}
.mpl-contact__infos strong{font-size:17.5px;color:var(--l-encre)}
.mpl-contact__infos a{color:var(--l-turquoise-fonce);font-weight:600;text-underline-offset:3px}
.mpl-contact__photo{position:relative;flex:1 1 auto;min-height:220px;margin-top:30px;border-radius:18px;overflow:hidden;background:var(--l-sable)}
.mpl-contact__photo img,.mpl-contact__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-contact__photo img{object-fit:cover}
.mpl-contact__form{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;background:var(--l-encre);padding:clamp(28px,3vw,48px)}
.mpl-contact__fond{position:absolute;inset:0;z-index:-1;overflow:hidden}
.mpl-contact__fond img,.mpl-contact__fond picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-contact__fond img{object-fit:cover;transform:scale(1.5)}
.mpl-contact__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--l-voile) 74%,transparent) 0%,color-mix(in srgb,var(--l-voile) 60%,transparent) 45%,color-mix(in srgb,var(--l-voile) 78%,transparent) 100%)}
.mpl-contact__form-titre{font:600 clamp(28px,2.6vw,40px)/1.1 var(--l-titre);letter-spacing:-.02em}
.mpl-form input,.mpl-form textarea{min-height:54px;padding:12px 18px;border:1.5px solid rgba(255,255,255,.4);border-radius:14px;background:rgba(255,255,255,.14);transition:background-color .2s,border-color .2s}
.mpl-form input::placeholder,.mpl-form textarea::placeholder{color:rgba(255,255,255,.68)}
.mpl-form input:hover,.mpl-form textarea:hover{border-color:rgba(255,255,255,.65)}
.mpl-form input:focus,.mpl-form textarea:focus{background:rgba(255,255,255,.2);border-color:var(--l-turquoise-clair)}
.mpl-form__envoi{min-height:62px;padding:0 36px;justify-self:start}
.mpl-form__note{color:var(--l-sur-fonce-2)}

/* ---------- Tablette et téléphone ---------- */
@media (max-width:1100px){
  .mpl-portes__grille{grid-template-columns:minmax(0,1fr)}
  .mpl-porte{min-height:0}
  .mpl-porte__corps{max-width:720px;padding-top:clamp(220px,40vw,340px)}
  .mpl-hero__bande{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mpl-hero__photo:nth-child(n){height:clamp(200px,36vw,300px)}
  .mpl-hero__photo:nth-child(n+3){display:none}
}
@media (max-width:900px){
  .mpl-faq.mpl-faq--photos,.mpl-contact{grid-template-columns:minmax(0,1fr)}
  .mpl-faq__photos{min-height:0;grid-template-rows:auto}
  .mpl-faq__photo:first-child{height:clamp(220px,56vw,320px)}
  .mpl-faq__photo:not(:first-child){display:none}
  .mpl-contact__photo{flex:none;height:240px}
  .mpl-contact__tel{align-self:stretch;justify-content:center}
  .mpl-hero{padding-top:calc(var(--l-entete) + 40px)}
}
@media (max-width:700px){
  .mpl-hero .mpl-hero__h1{font-size:clamp(46px,12.2vw,78px)}
  .mpl-hero__fond picture:has(.mpl-hero__img),.mpl-hero__fond .mpl-hero__img{display:none}
  .mpl-hero__fond picture:has(.mpl-hero__img-tel),.mpl-hero__fond .mpl-hero__img-tel{display:block}
  .mpl-hero__fond .mpl-hero__img-tel{transform:none;object-position:50% 40%}
}
@media (max-width:600px){
  .mpl-hero{--debord:90px}
  .mpl-hero__bande{grid-template-columns:minmax(0,1fr)}
  .mpl-hero__photo:nth-child(n){height:clamp(220px,62vw,300px)}
  .mpl-hero__photo:nth-child(n+2){display:none}
  .mpl-hero__boutons .mpl-btn,.mpl-zone-nuit__boutons .mpl-btn{flex:1 1 100%}
  .mpl-note{gap:12px;padding:10px 22px 10px 10px}
  .mpl-note .mpl-google{width:36px;height:36px}
  .mpl-question__rep{padding-right:0}
  .mpl-form__envoi{justify-self:stretch}
}

/* ==========================================================================
   Retours du 2026-10-26 : titre plus grand, bande de photos retirée sur téléphone, en-tête non collant,
   services en rangées avec ordinateur et téléphone dessinés, grandes icônes en deux couleurs, mots en gras,
   arborescence végétale dans les questions, formulaire sans flou (le défilement saccadait sur téléphone).
   ========================================================================== */

/* ---------- Bannière ---------- */
.mpl-hero .mpl-hero__h1{font-size:clamp(56px,8vw,128px)}

/* ---------- Grandes icônes en deux couleurs (mpl_picto) ---------- */
.mpl-picto{--p1:var(--l-turquoise-clair);--p2:var(--l-turquoise-fonce);--p3:var(--l-chaud);display:block;flex:none;width:56px;height:56px;overflow:visible}
.mpl-picto .pp1{fill:var(--p1)}
.mpl-picto .pp2{fill:var(--p2)}
.mpl-picto .pp3{fill:var(--p3)}
.mpl-picto .ps2{stroke:var(--p2)}
.mpl-picto .ps3{stroke:var(--p3)}

/* Engagements : icône à gauche du titre, mots en gras visibles dans le texte */
.mpl-coches--suite.mpl-engage li{grid-template-columns:56px minmax(0,1fr);gap:18px;align-items:start;font-size:16px}
.mpl-coches--suite.mpl-engage li>span strong:not(:first-child){font-weight:700;color:var(--l-encre)}
.mpl-coches--suite.mpl-engage li>span>strong:first-child{margin:4px 0 6px}

/* Pourquoi (pages de service) */
.mpl-pourquoi li{grid-template-columns:56px minmax(0,1fr)}
.mpl-pourquoi .mpl-picto{margin-top:2px}

/* Coordonnées du bloc contact */
.mpl-contact__infos{gap:20px}
.mpl-contact__infos li{gap:18px}
.mpl-contact__infos .mpl-picto{width:52px;height:52px}
.mpl-contact__infos b{font-weight:700;color:var(--l-encre)}

/* ---------- Services : rangées alternées, appareils posés sur le fond ---------- */
.mpl-prestas{display:grid;gap:clamp(72px,8vw,128px);margin-top:clamp(44px,4.4vw,72px)}
.mpl-presta{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,5.4vw,96px);align-items:stretch}
.mpl-presta--inverse{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.mpl-presta--inverse .mpl-presta__visuel{order:2}
.mpl-presta__visuel{display:flex;align-items:center}
.mpl-presta__texte{display:flex;flex-direction:column;justify-content:center}
.mpl-presta__pour{align-self:flex-start;margin:0 0 18px;padding:8px 18px;border-radius:999px;background:#fff;color:var(--l-turquoise-fonce);font-size:15px;font-weight:600;line-height:1.3}
.mpl-presta .mpl-presta__titre{margin:0;font-size:clamp(36px,3.8vw,58px);line-height:1.04;letter-spacing:-.025em}
.mpl-presta__phrase{margin:20px 0 0;max-width:52ch;font-size:clamp(17px,1.3vw,19px);line-height:1.65}
.mpl-presta__points{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:16px}
.mpl-presta__points li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:center;font-size:clamp(16.5px,1.2vw,18px);line-height:1.45;color:var(--l-texte)}
.mpl-presta__points .mpl-picto{width:52px;height:52px}
.mpl-presta__pied{display:flex;flex-wrap:wrap;align-items:center;gap:18px 30px;margin-top:34px;padding-top:28px;border-top:1px solid var(--l-trait-fort)}
.mpl-presta__prix{margin:0;font-size:16px;color:var(--l-doux)}
.mpl-presta__prix strong{font:600 clamp(26px,2.2vw,32px)/1 var(--l-titre);letter-spacing:-.02em;color:var(--l-encre)}

/* Ordinateur et téléphone dessinés : tailles en largeur du conteneur (cqw), pour toutes les tailles d'écran */
.mpl-app{position:relative;width:100%;container-type:inline-size;padding-bottom:3.4%;isolation:isolate}
.mpl-app__portable{position:relative;width:84%;margin-left:7%}
.mpl-presta--inverse .mpl-app__portable{margin-left:9%}
.mpl-app__ecran{position:relative;aspect-ratio:16/10;border:2cqw solid #1A1D1C;border-bottom-width:2.6cqw;border-radius:3cqw 3cqw .9cqw .9cqw;background:#0E100F;overflow:hidden;container-type:inline-size}
.mpl-app__ecran>img,.mpl-app__ecran>picture,.mpl-app__ecran>picture img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:top center}
.mpl-app__socle{position:relative;width:116%;height:3.6cqw;margin-left:-8%;border-radius:.5cqw .5cqw 50% 50%/.5cqw .5cqw 100% 100%;background:linear-gradient(180deg,#E1E3E5 0%,#C6CACD 55%,#A7ACB0 100%)}
.mpl-app__socle::before{content:"";position:absolute;left:50%;top:0;width:15%;height:40%;transform:translateX(-50%);border-radius:0 0 1.4cqw 1.4cqw;background:#B3B8BC}
.mpl-app__portable::after{content:"";position:absolute;left:-10%;right:-10%;bottom:-3.2cqw;height:5cqw;z-index:-1;background:radial-gradient(50% 50% at 50% 50%,color-mix(in srgb,var(--l-encre) 20%,transparent),color-mix(in srgb,var(--l-encre) 0%,transparent))}
.mpl-app__tel{position:absolute;right:0;bottom:0;width:25%;aspect-ratio:9/19.5;border:1.3cqw solid #1A1D1C;border-radius:4.2cqw;background:#0E100F;outline:1.1cqw solid var(--l-fond)}
.mpl-presta--inverse .mpl-app__tel{right:auto;left:0}
.mpl-app__tel::before{content:"";position:absolute;left:50%;top:1.6%;z-index:2;width:30%;height:3.2%;transform:translateX(-50%);border-radius:999px;background:#1A1D1C}
.mpl-app__ecran-tel{position:absolute;inset:0;border-radius:3cqw;overflow:hidden;background:#fff;container-type:inline-size}
.mpl-app__ecran-tel>img,.mpl-app__ecran-tel>picture,.mpl-app__ecran-tel>picture img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:top center}

/* Référencement : page de résultats en blocs simples (écran de l'ordinateur) */
.mpl-serp{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;font-family:var(--l-corps);color:#3C4043}
.mpl-serp i{display:block;height:1.5cqw;margin-top:1.4cqw;border-radius:999px;background:#E6E2DA}
.mpl-serp i.court{width:62%}
.mpl-serp__haut{display:flex;align-items:center;gap:3cqw;padding:3cqw 4cqw;border-bottom:1px solid #ECE8E1}
.mpl-serp__logo{display:flex;gap:.8cqw}
.mpl-serp__logo i{width:2.4cqw;height:2.4cqw;margin:0;border-radius:50%}
.mpl-serp__logo i:nth-child(1){background:#4285F4}
.mpl-serp__logo i:nth-child(2){background:#EA4335}
.mpl-serp__logo i:nth-child(3){background:#FBBC05}
.mpl-serp__logo i:nth-child(4){background:#34A853}
.mpl-serp__champ{flex:1;display:flex;align-items:center;justify-content:space-between;max-width:58%;padding:1.6cqw 2.6cqw;border:1px solid #DFDBD3;border-radius:999px;font-size:2.4cqw;line-height:1.2;color:#202124}
.mpl-serp__champ .mpl-ico{width:2.8cqw;height:2.8cqw;color:#4285F4}
.mpl-serp__corps{flex:1;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:4cqw;padding:3.4cqw 4cqw}
.mpl-serp__liste{display:grid;align-content:start;gap:3cqw}
.mpl-serp__res i.url{width:34%;height:1.2cqw;margin:0}
.mpl-serp__res i.titre{width:78%;height:2.1cqw;background:#D7E3FB}
.mpl-serp__res--vous{margin:-1.6cqw;padding:1.6cqw 2cqw;border:.35cqw solid var(--l-turquoise-clair);border-radius:1.6cqw;background:#F2FAF4}
.mpl-serp__res--vous small{display:block;font-size:1.7cqw;line-height:1.2;color:#4D5156}
.mpl-serp__res--vous b{display:block;margin-top:.6cqw;font:600 2.9cqw/1.2 var(--l-titre);color:#1A0DAB}
.mpl-serp__etoiles{display:block;margin-top:.5cqw;font-size:2cqw;letter-spacing:.1em;color:var(--l-etoile)}
.mpl-serp__carte{position:relative;overflow:hidden;border-radius:2cqw;background:#E9EFE4}
.mpl-serp__route{position:absolute;left:-10%;right:-10%;top:42%;height:2cqw;transform:rotate(-14deg);background:#fff}
.mpl-serp__route--2{top:auto;bottom:18%;transform:rotate(28deg)}
.mpl-serp__pin{position:absolute;display:grid;place-items:center;width:5.4cqw;height:5.4cqw;border-radius:50%;background:#fff;color:#9AA0A6}
.mpl-serp__pin .mpl-ico{width:3.4cqw;height:3.4cqw;stroke-width:2.2}
.mpl-serp__pin:nth-of-type(3){left:20%;top:20%}
.mpl-serp__pin:nth-of-type(4){left:60%;top:56%}
.mpl-serp__pin:nth-of-type(5){left:26%;top:68%}
.mpl-serp__pin--vous{background:var(--l-turquoise-fonce);color:#fff;transform:scale(1.35)}

/* Référencement : réponse d'un assistant (écran du téléphone) */
.mpl-ia{position:absolute;inset:0;display:flex;flex-direction:column;gap:5cqw;padding:16cqw 7cqw 8cqw;background:#FBFAF7;font-family:var(--l-corps)}
.mpl-ia i{display:block;height:3.6cqw;margin-top:3.4cqw;border-radius:999px;background:#E6E2DA}
.mpl-ia i.court{width:58%}
.mpl-ia__haut{position:absolute;left:7cqw;right:7cqw;top:9cqw}
.mpl-ia__haut i{width:40%;margin:0 auto}
.mpl-ia__q{align-self:flex-end;max-width:82%;margin:0;padding:4cqw 5cqw;border-radius:6cqw 6cqw 1.6cqw 6cqw;background:var(--l-turquoise-fonce);color:#fff;font-size:6.4cqw;line-height:1.3}
.mpl-ia__r{position:relative;padding:4.6cqw 5cqw 5cqw;border-radius:6cqw 6cqw 6cqw 1.6cqw;background:#fff;border:1px solid #ECE8E1}
.mpl-ia__logo{display:block;width:8cqw;height:8cqw;margin-bottom:3cqw;border-radius:50%;background:conic-gradient(var(--l-turquoise-clair) 0 25%,var(--l-turquoise) 0 50%,var(--l-turquoise-clair) 0 75%,var(--l-turquoise) 0)}
.mpl-ia__r p{margin:0;font-size:6.4cqw;line-height:1.35;color:#3C4043}
.mpl-ia__r b{color:var(--l-turquoise-fonce)}
.mpl-ia__etoiles{display:block;margin-top:2cqw;font-size:6cqw;letter-spacing:.1em;color:var(--l-etoile)}
.mpl-ia__champ{margin-top:auto;height:12cqw;border:1px solid #DFDBD3;border-radius:999px;background:#fff}

/* ---------- Questions : une seule image végétale, version en largeur sur téléphone et tablette ---------- */
.mpl-faq__photos{display:flex;min-height:560px}
.mpl-faq__photos .mpl-faq__photo{flex:1;grid-column:auto}
.mpl-faq__photo picture:has(.mpl-faq__img-tel),.mpl-faq__img-tel{display:none}

/* ---------- Tablette et téléphone ---------- */
@media (max-width:1100px){
  .mpl-presta,.mpl-presta--inverse{grid-template-columns:minmax(0,1fr);gap:clamp(28px,5vw,44px)}
  .mpl-presta__visuel,.mpl-presta--inverse .mpl-presta__visuel{order:-1;max-width:760px;width:100%;margin:0 auto}
  .mpl-presta__texte{max-width:760px;width:100%;margin:0 auto}
}
@media (max-width:900px){
  .mpl-faq__photos{min-height:0}
  .mpl-faq__photos .mpl-faq__photo{flex:none;width:100%;height:auto;aspect-ratio:16/11}
  .mpl-faq__photo picture:has(.mpl-faq__img-grand),.mpl-faq__photo .mpl-faq__img-grand{display:none}
  .mpl-faq__photo picture:has(.mpl-faq__img-tel),.mpl-faq__photo .mpl-faq__img-tel{display:block}
}
@media (max-width:700px){
  .mpl-hero .mpl-hero__h1{font-size:clamp(48px,12.8vw,84px)}
  .mpl-hero__fond .mpl-hero__img-tel{object-position:50% 35%}
}
@media (max-width:600px){
  /* Bande de photos retirée sur téléphone (« ça sert à rien ») : la photo de la bannière va jusqu'en bas */
  .mpl-hero{--debord:0px;padding-bottom:56px}
  .mpl-hero__bande{display:none}
  .mpl-presta__pied{flex-direction:column;align-items:stretch}
  .mpl-presta__pied .mpl-btn{justify-content:center}
  .mpl-presta__points li,.mpl-coches--suite.mpl-engage li{grid-template-columns:48px minmax(0,1fr);gap:14px}
  .mpl-presta__points .mpl-picto,.mpl-coches--suite.mpl-engage .mpl-picto{width:48px;height:48px}
  .mpl-app{padding-bottom:6%}
  .mpl-app__portable{width:80%;margin-left:4%}
  .mpl-presta--inverse .mpl-app__portable{margin-left:16%}
  .mpl-app__tel{width:30%}
}

/* 2.9.1 : icônes plus grosses (2026-10-26) */
.mpl-coches--suite.mpl-engage .mpl-picto{width:64px;height:64px}
.mpl-presta__points .mpl-picto{width:58px;height:58px}
.mpl-contact__infos .mpl-picto{width:58px;height:58px}
@media (max-width:600px){
  .mpl-coches--suite.mpl-engage .mpl-picto{width:56px;height:56px}
  .mpl-presta__points .mpl-picto,.mpl-contact__infos .mpl-picto{width:52px;height:52px}
}

/* ==========================================================================
   2.10.0 (2026-10-27) : accueil remanié. Réalisations juste sous la bannière (fond clair), services en
   trois cartes blanches sur fond vert sapin, icônes rondes façon Jungle LAB. (vert et terre cuite en
   alternance), étapes et FAQ qui mêlent orange et vert, photo en haut des cartes de prix, formulaire de
   contact en premier sur téléphone.
   ========================================================================== */
:root{--l-sapin-fond:#1A4A35;--l-anneau-vert:#D5E4D8;--l-anneau-chaud:#F3DCC8}

/* Note Google de la bannière sur une seule ligne */
.mpl-hero__note{white-space:nowrap;max-width:100%}
@media (max-width:420px){
  .mpl-hero__note{gap:7px;padding:7px 14px 7px 7px;font-size:13.5px}
  .mpl-hero__note .mpl-google{width:26px;height:26px}
  .mpl-hero__note .mpl-google svg{width:16px;height:16px}
  .mpl-hero__note .mpl-etoiles{font-size:13px;letter-spacing:.02em}
}

/* Services sur fond vert sapin : trois cartes blanches au texte court */
.mpl-section--sapin{background-color:var(--l-sapin-fond);color:var(--l-sur-sapin);background-image:radial-gradient(circle 320px at right -110px top -130px,color-mix(in srgb,var(--l-turquoise-clair) 13%,transparent) 99.4%,transparent 100%),radial-gradient(circle 120px at left 5% bottom -64px,rgba(255,255,255,.07) 99.4%,transparent 100%);background-repeat:no-repeat}
.mpl-section--sapin .mpl-h2{color:#fff}
.mpl-section--sapin .mpl-h2 .mpl-accent{color:var(--l-turquoise-clair)}
.mpl-section--sapin .mpl-surtitre{color:var(--l-turquoise-clair)}
.mpl-tete-centre .mpl-services-intro{max-width:60ch;font-size:clamp(17px,1.3vw,19px);line-height:1.65;color:rgba(255,255,255,.84)}
.mpl-services-intro strong{color:#fff}
.mpl-svc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,1.8vw,26px);align-items:stretch}
.mpl-svc__carte{display:flex;flex-direction:column;background:#fff;border-radius:var(--l-rayon);padding:clamp(28px,2.8vw,44px);color:var(--l-texte)}
.mpl-svc .mpl-svc__titre{margin:0 0 14px;font-size:clamp(26px,2.2vw,34px);line-height:1.08;letter-spacing:-.02em;color:var(--l-encre)}
.mpl-svc__titre .mpl-accent{color:var(--l-turquoise)}
.mpl-svc__texte{margin:0;font-size:clamp(16.5px,1.2vw,18px);line-height:1.65}
.mpl-svc__texte strong{color:var(--l-encre)}
.mpl-svc__lien{margin:auto 0 0;padding-top:24px}
@media (max-width:900px){
  .mpl-svc{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .mpl-section--sapin{background-image:radial-gradient(circle 175px at right -70px top -80px,color-mix(in srgb,var(--l-turquoise-clair) 13%,transparent) 99.4%,transparent 100%),radial-gradient(circle 72px at left 5% bottom -40px,rgba(255,255,255,.07) 99.4%,transparent 100%)}
}

/* Icônes rondes façon Jungle LAB. : trait blanc sur un rond plein, vert puis terre cuite, anneau pâle */
.mpl-picto{display:grid;place-items:center;box-sizing:border-box;flex:none;width:60px;height:60px;margin:0;border-radius:50%;background:var(--l-turquoise-fonce);border:6px solid var(--l-anneau-vert);color:#fff;overflow:hidden}
li:nth-child(even)>.mpl-picto{background:var(--l-chaud);border-color:var(--l-anneau-chaud);color:var(--l-chaud-texte)}
.mpl-picto>svg.mpl-ico{display:block;box-sizing:border-box;width:48%;height:48%;margin:0;padding:0;border-radius:0;background:none;color:#fff;stroke-width:2}
.mpl-coches--suite.mpl-engage li{grid-template-columns:70px minmax(0,1fr);align-items:center}
.mpl-coches--suite.mpl-engage .mpl-picto{width:70px;height:70px;border-width:7px}
.mpl-pourquoi li{grid-template-columns:64px minmax(0,1fr)}
.mpl-pourquoi .mpl-picto{width:64px;height:64px;margin-top:0}
.mpl-contact__infos .mpl-picto{width:62px;height:62px}
@media (max-width:600px){
  .mpl-coches--suite.mpl-engage li{grid-template-columns:58px minmax(0,1fr);gap:14px}
  .mpl-coches--suite.mpl-engage .mpl-picto{width:58px;height:58px;border-width:6px}
  .mpl-pourquoi li{grid-template-columns:56px minmax(0,1fr)}
  .mpl-pourquoi .mpl-picto,.mpl-contact__infos .mpl-picto{width:56px;height:56px;border-width:5px}
}

/* Étapes : numéros et liens en terre cuite, puis en vert ; cartes sans ombre */
.mpl-etapes4__carte,.mpl-section--fond .mpl-etapes4__carte{box-shadow:none}
.mpl-etapes4__carte:nth-child(odd) .mpl-serp__n{color:var(--l-chaud-lisible)}
.mpl-etapes4__carte:nth-child(odd) .mpl-serp__n span{background:var(--l-chaud);color:var(--l-chaud-texte)}
.mpl-etapes4__carte:nth-child(even) .mpl-serp__n{color:var(--l-turquoise-fonce)}
.mpl-etapes4__carte:nth-child(even) .mpl-serp__n span{background:var(--l-turquoise-fonce)}
.mpl-etapes4__carte:nth-child(odd) .mpl-etapes4__lien path{stroke:var(--l-chaud)}
.mpl-etapes4__carte:nth-child(even) .mpl-etapes4__lien path{stroke:var(--l-sapin)}

/* Prix : photo en haut de chaque carte */
.mpl-tarifs--photos{align-items:stretch}
.mpl-prix--photo{--pad:clamp(28px,2.6vw,40px);overflow:hidden;padding-top:0}
.mpl-prix__photo{position:relative;flex:none;margin:0 calc(-1 * var(--pad)) clamp(24px,2.2vw,32px);aspect-ratio:16/10;overflow:hidden;background:var(--l-sable)}
.mpl-prix__photo img,.mpl-prix__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-prix__photo img{object-fit:cover;transition:transform .5s}
.mpl-prix--photo:hover .mpl-prix__photo img{transform:scale(1.03)}
.mpl-prix--photo:nth-child(3) .mpl-prix__photo img{object-position:50% 56%}
.mpl-tarifs__maintenance{max-width:880px;margin:clamp(28px,3vw,40px) auto 0;text-align:center;font-size:clamp(16.5px,1.2vw,18px);line-height:1.65}
.mpl-tarifs__maintenance strong{color:var(--l-encre)}
@media (max-width:1100px){
  .mpl-tarifs.mpl-tarifs--photos{grid-template-columns:minmax(0,1fr);max-width:680px;margin:0 auto}
  .mpl-tarifs--photos .mpl-prix:first-child{grid-column:auto}
}

/* Contact sur téléphone et tablette : le formulaire d'abord, sans la photo de Lyon */
@media (max-width:900px){
  .mpl-contact__form{order:-1}
  .mpl-contact__photo{display:none}
}

/* 2.10.1 : pas de coupure dans « site e-commerce » ni avant « IA » ; icônes du bloc contact centrées */
.mpl-ins,.mpl-svc__titre .mpl-accent{white-space:nowrap}
.mpl-contact__infos li>.mpl-picto{display:grid;place-items:center;gap:0}

/* ==========================================================================
   2.11.0 (2026-10-27, second passage) : réalisations remises en mosaïque de treize sites, photo en haut des
   cartes de services, engagements en trois petites cartes, zone d'intervention dans sa propre section,
   FAQ avec une seule photo et des « + » terre cuite et vert en alternance.
   ========================================================================== */

/* Services : photo en haut de chaque carte, collée aux bords et arrondie avec la carte */
.mpl-svc__carte{--pad:clamp(28px,2.8vw,44px);padding:0 var(--pad) var(--pad);overflow:hidden}
.mpl-svc__carte:not(:has(.mpl-svc__photo)){padding-top:var(--pad)}
.mpl-svc__photo{position:relative;flex:none;margin:0 calc(-1 * var(--pad)) clamp(24px,2.2vw,32px);aspect-ratio:4/3;overflow:hidden;background:var(--l-sable)}
.mpl-svc__photo img,.mpl-svc__photo picture{position:absolute;inset:0;width:100%;height:100%}
.mpl-svc__photo img{object-fit:cover;object-position:50% 32%;transition:transform .5s}
.mpl-svc__carte:hover .mpl-svc__photo img{transform:scale(1.03)}
@media (max-width:900px){
  .mpl-svc{max-width:680px;margin:0 auto}
  .mpl-svc__photo{aspect-ratio:16/10}
}

/* Présentation : trois petites cartes blanches (icône, titre, une ligne) */
.mpl-engagements{margin:clamp(30px,3vw,40px) 0 18px}
.mpl-engage-cartes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.2vw,18px)}
.mpl-engage-cartes li{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0;padding:clamp(20px,1.8vw,26px);background:#fff;border:1px solid var(--l-trait);border-radius:18px}
.mpl-engage-cartes .mpl-picto{width:58px;height:58px;margin-bottom:8px}
.mpl-engage-cartes strong{font:600 clamp(18px,1.35vw,20px)/1.25 var(--l-titre);color:var(--l-encre)}
.mpl-engage-cartes span:not(.mpl-picto){font-size:15.5px;line-height:1.55}
@media (min-width:901px) and (max-width:1240px){
  .mpl-engage-cartes{grid-template-columns:minmax(0,1fr)}
  .mpl-engage-cartes li{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:16px;row-gap:2px;align-items:center;padding:16px 20px}
  .mpl-engage-cartes .mpl-picto{grid-row:1/3;width:52px;height:52px;margin:0;border-width:5px}
}
@media (max-width:600px){
  .mpl-engage-cartes{grid-template-columns:minmax(0,1fr)}
  .mpl-engage-cartes li{display:grid;grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto;column-gap:16px;row-gap:2px;align-items:center;padding:16px 18px}
  .mpl-engage-cartes .mpl-picto{grid-row:1/3;width:52px;height:52px;margin:0;border-width:5px}
}

/* Zone d'intervention : texte et communes, photo du Vieux Lyon à côté */
.mpl-zone__texte{margin:0 0 22px;max-width:60ch;font-size:clamp(16.5px,1.2vw,18px);line-height:1.65}
.mpl-zone__texte strong{color:var(--l-encre)}
.mpl-zone__intro{margin:0 0 14px;font-weight:600;color:var(--l-encre)}
.mpl-communes.mpl-communes--zone{justify-content:flex-start;margin:0}
.mpl-communes--zone li{border-color:var(--l-trait-fort);border-radius:999px;background:#fff;padding:9px 18px}
.mpl-communes--zone .mpl-communes__bureau{gap:7px;background:var(--l-turquoise-fonce);border-color:var(--l-turquoise-fonce);color:#fff;font-weight:600;padding-left:14px}
.mpl-communes--zone .mpl-communes__bureau .mpl-ico{color:#fff}
.mpl-communes--zone .mpl-communes__bureau small{opacity:.85}
.mpl-zone .mpl-duo__visuel img{object-position:50% 50%}

/* FAQ de l'accueil : cartes blanches, « + » terre cuite puis vert, un seul mot vert dans le titre */
.mpl-faq--v1 .mpl-faq__liste{display:grid;gap:12px;border:0}
.mpl-faq--v1 .mpl-question{background:#fff;border:1px solid var(--l-trait);border-radius:18px;padding:0 clamp(18px,1.8vw,26px)}
.mpl-faq--v1 .mpl-question__rep{padding:0 54px 22px 0}
.mpl-faq--v1 .mpl-question summary .mpl-ico{background:var(--l-chaud);border-color:var(--l-chaud);color:var(--l-chaud-texte);padding:10px;stroke-width:2.4}
.mpl-faq--v1 .mpl-question:nth-child(even) summary .mpl-ico{background:var(--l-turquoise-fonce);border-color:var(--l-turquoise-fonce);color:#fff}
.mpl-faq--v1 .mpl-question summary:hover .mpl-ico{background:var(--l-chaud-fonce);border-color:var(--l-chaud-lisible)}
.mpl-faq--v1 .mpl-question:nth-child(even) summary:hover .mpl-ico{background:var(--l-sapin-fond);border-color:var(--l-sapin-fond)}
.mpl-faq--v1 .mpl-surtitre,.mpl-faq--v1 .mpl-faq__autre a{color:var(--l-chaud-lisible)}
.mpl-faq--v1 .mpl-faq__photo img{object-position:50% 62%}
@media (max-width:600px){
  .mpl-faq--v1 .mpl-question__rep{padding-right:0}
}

/* ==========================================================================
   2.12.0 (2026-10-27, troisième passage) : services et tarifs fusionnés (mockup, phrase, « Ce qui est
   inclus », prix, bouton), bloc « Depuis 2019 » en fondu sur le bas du portrait, trait dessiné sous
   « Mes engagements », communes de la zone en liens dès que leur page existe.
   ========================================================================== */

/* Services et tarifs : une carte par offre, prix et bouton calés en bas */
.mpl-svc__photo{aspect-ratio:16/10}
.mpl-svc__photo img{object-position:50% 50%}
.mpl-svc__carte:nth-child(3) .mpl-svc__photo img{object-position:50% 56%}
.mpl-svc__texte{margin:0 0 22px}
.mpl-svc__inclus{margin:0 0 12px;font-weight:700;font-size:16px;color:var(--l-encre)}
.mpl-svc .mpl-coches--prix{margin:0 0 28px}
.mpl-svc__pied{margin-top:auto;padding-top:22px;border-top:1px solid var(--l-trait)}
.mpl-svc__pied .mpl-prix__montant{margin:0 0 18px}
.mpl-svc__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin:0}
.mpl-svc__actions .mpl-btn{min-height:58px;padding:0 30px;font-size:18px}
.mpl-svc__maintenance{max-width:880px;margin:clamp(30px,3vw,44px) auto 0;text-align:center;font-size:clamp(16.5px,1.2vw,18px);line-height:1.65;color:rgba(255,255,255,.84)}
.mpl-svc__maintenance strong{color:#fff}
@media (max-width:600px){
  .mpl-svc__actions .mpl-btn{flex:1 1 100%;font-size:17.5px}
}

/* « Depuis 2019 » : texte posé sur un fondu vert nuit en bas du portrait, sans boîte blanche */
.mpl-depuis{left:0;right:0;bottom:0;max-width:none;gap:4px;padding:clamp(96px,9vw,150px) clamp(24px,2.6vw,36px) clamp(24px,2.4vw,32px);border-radius:0;background:linear-gradient(to top,color-mix(in srgb,var(--l-encre) 94%,transparent) 0%,color-mix(in srgb,var(--l-encre) 70%,transparent) 32%,color-mix(in srgb,var(--l-encre) 24%,transparent) 66%,color-mix(in srgb,var(--l-encre) 0%,transparent) 100%)}
.mpl-depuis strong{font-size:clamp(30px,2.8vw,40px);letter-spacing:-.02em;color:#fff}
.mpl-depuis span{font-size:15.5px;font-weight:600;color:var(--l-turquoise-clair)}

/* Trait dessiné à la main sous « Mes engagements » (demandé le 2026-10-27, « un trait qui fait humain ») */
.mpl-engagements{margin-bottom:26px}
.mpl-trait{position:relative;display:inline-block;padding-bottom:10px}
.mpl-trait svg{position:absolute;left:-3%;bottom:-6px;width:106%;height:16px;overflow:visible;fill:none;stroke:var(--l-chaud);stroke-linecap:round;stroke-linejoin:round}
.mpl-trait path{stroke-width:3.4;vector-effect:non-scaling-stroke}
.mpl-trait path+path{stroke-width:2.2;opacity:.75}

/* Zone : une commune qui a sa page devient un lien, avec une flèche */
.mpl-communes--zone .mpl-communes__lien{padding:0;border:0;background:none}
.mpl-communes--zone .mpl-communes__lien a{display:inline-flex;align-items:center;gap:7px;padding:9px 15px 9px 18px;border:1px solid var(--l-trait-fort);border-radius:999px;background:#fff;color:var(--l-encre);text-decoration:none;transition:border-color .2s,color .2s}
.mpl-communes--zone .mpl-communes__lien .mpl-ico{width:15px;height:15px;color:var(--l-chaud)}
.mpl-communes--zone .mpl-communes__lien a:hover{border-color:var(--l-chaud);color:var(--l-chaud-lisible)}

/* ==========================================================================
   2.13.0 (2026-10-27) : cartes services et tarifs en papier chaud (« c'est trop blanc », esprit Reims), prix
   juste sous le titre, « Ce qui est inclus » replié derrière un « + » (ouvert sur les trois cartes à la fois
   sur ordinateur).
   ========================================================================== */
.mpl-svc__carte{background:var(--l-carte-chaude);color:var(--l-texte)}
.mpl-svc__photo{background:var(--l-sable)}
.mpl-svc .mpl-svc__titre{margin-bottom:10px}
.mpl-svc__prix{margin:0 0 18px;gap:2px 10px}
.mpl-svc__prix small{flex-basis:auto;align-self:baseline;font-size:15px}
.mpl-svc__prix strong{font-size:clamp(34px,2.8vw,42px)}
.mpl-svc__texte{margin:0 0 24px}
.mpl-svc__inclus{border-top:1px solid #DCCFBB;border-bottom:1px solid #DCCFBB}
.mpl-svc__inclus summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:12px 0;cursor:pointer;font-weight:700;font-size:17px;color:var(--l-encre)}
.mpl-svc__inclus summary::-webkit-details-marker{display:none}
.mpl-svc__inclus summary:focus,.mpl-svc__inclus summary:focus-visible{outline:none}
.mpl-svc__inclus summary .mpl-ico{flex:none;box-sizing:border-box;width:36px;height:36px;padding:9px;border-radius:50%;background:var(--l-chaud);color:var(--l-chaud-texte);stroke-width:2.4;transition:transform .25s,background-color .2s}
.mpl-svc__inclus summary:hover .mpl-ico{background:var(--l-chaud-fonce)}
.mpl-svc__inclus[open] summary .mpl-ico{transform:rotate(45deg)}
.mpl-svc .mpl-svc__inclus .mpl-coches--prix{margin:4px 0 22px}
.mpl-svc__actions{margin-top:auto;padding-top:26px}
/* Sur ordinateur, les rangées des trois cartes (photo, titre, prix, texte, inclus, boutons) sont alignées */
@media (min-width:901px){
  @supports (grid-template-rows:subgrid){
    .mpl-svc__carte{display:grid;grid-row:span 6;grid-template-rows:subgrid;row-gap:0;align-content:start}
    .mpl-svc__inclus{align-self:start}
  }
}

/* ==========================================================================
   2.14.0 (2026-10-27) : cartes de services avec une mini phrase et leurs objectifs (comme Reims et Grenoble),
   sans introduction sous le titre ni phrase de maintenance ; les trois engagements dictés, un par ligne en
   grand ; zone d'intervention avec une image abstraite de papiers en relief, bureau et sur-titre en terre cuite.
   ========================================================================== */

/* Services : mini phrase puis objectifs (une rangée de plus dans la sous-grille) */
@media (min-width:901px){ @supports (grid-template-rows:subgrid){
  .mpl-svc__carte{grid-row:span 7}
} }
.mpl-svc__texte{margin:0 0 20px;font-size:clamp(17px,1.3vw,19px);line-height:1.5;color:var(--l-encre)}
.mpl-svc__objectifs{margin:0 0 26px}
.mpl-svc__objectifs>p{margin:0 0 12px;font-weight:700;font-size:14.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--l-chaud-lisible)}
.mpl-svc .mpl-coches--objectifs{gap:10px;margin:0;font-size:16px;line-height:1.5}
.mpl-svc .mpl-coches--objectifs .mpl-ico{width:22px;height:22px;padding:4px;margin-top:1px;border-radius:50%;background:var(--l-turquoise-fonce);color:#fff;stroke-width:2.6;box-sizing:border-box}

/* Engagements : les trois points, un par ligne, titre en grand */
.mpl-engage-cartes{grid-template-columns:minmax(0,1fr);gap:12px}
.mpl-engage-cartes li{display:grid;grid-template-columns:62px minmax(0,1fr);grid-template-rows:auto auto;column-gap:20px;row-gap:4px;align-items:center;padding:clamp(18px,1.6vw,22px) clamp(20px,1.8vw,26px)}
.mpl-engage-cartes .mpl-picto{grid-row:1/3;width:62px;height:62px;margin:0}
.mpl-engage-cartes li>strong{align-self:end;font:600 clamp(20px,1.55vw,23px)/1.2 var(--l-titre);letter-spacing:-.01em;color:var(--l-encre)}
.mpl-engage-cartes li>span:not(.mpl-picto){align-self:start;font-size:16px;line-height:1.55}
.mpl-engage-cartes li>span:not(.mpl-picto) strong{font:inherit;font-weight:700;color:var(--l-encre)}
@media (max-width:600px){
  .mpl-engage-cartes li{grid-template-columns:50px minmax(0,1fr);column-gap:14px;padding:16px}
  .mpl-engage-cartes .mpl-picto{width:50px;height:50px;border-width:5px}
  .mpl-engage-cartes li>strong{font-size:19px}
  .mpl-engage-cartes li>span:not(.mpl-picto){font-size:15.5px}
}

/* Zone d'intervention : image abstraite, terre cuite pour le bureau et le sur-titre */
#zone .mpl-surtitre{color:var(--l-chaud-lisible)}
.mpl-communes--zone .mpl-communes__bureau,.mpl-communes--zone .mpl-communes__bureau .mpl-ico{background:var(--l-chaud-fonce);border-color:var(--l-chaud-lisible);color:var(--l-chaud-texte)}
.mpl-zone .mpl-duo__visuel img{object-position:50% 40%}

/* ==========================================================================
   2.15.0 (2026-10-27) : prix des cartes de services sans retour à la ligne au milieu (« À partir de » au-dessus,
   montant et unité toujours sur la même ligne), titres des cartes tous sur deux lignes pour que les cartes
   restent alignées sans trou sous le titre le plus court.
   ========================================================================== */
.mpl-svc .mpl-svc__titre .mpl-accent{display:block}
.mpl-svc .mpl-svc__prix{display:block;margin:0 0 20px}
.mpl-svc .mpl-svc__prix small{display:block;margin:0 0 6px;font-size:14.5px;font-weight:600;color:var(--l-doux)}
.mpl-svc__somme{display:flex;flex-wrap:nowrap;align-items:baseline;gap:9px;white-space:nowrap}
.mpl-svc .mpl-svc__somme strong{font-size:clamp(34px,2.8vw,42px);line-height:1}
.mpl-svc .mpl-svc__somme span{font-size:15px;font-weight:600;color:var(--l-doux)}

/* ==========================================================================
   2.16.0 (2026-10-27) : présentation en paragraphes courts et texte plus petit, « Objectifs : » en noir.
   ========================================================================== */
.mpl-duo__texte .mpl-presentation{max-width:60ch;font-size:16.5px;line-height:1.65}
.mpl-duo__texte .mpl-presentation+.mpl-presentation{margin-top:12px}
.mpl-svc__objectifs>p{color:var(--l-encre)}
@media (max-width:600px){
  .mpl-duo__texte .mpl-presentation{font-size:16px}
}

/* ==========================================================================
   2.17.0 (2026-10-27) : engagements en une phrase chacun (« tu mets pas les sous-textes »), étapes en
   paragraphes courts, carte du pied assez haute pour la fiche Google (nom, note, avis), téléphone compris.
   ========================================================================== */
.mpl-engage-cartes li{grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto;column-gap:18px;align-items:center;padding:14px 22px 14px 16px}
.mpl-engage-cartes .mpl-picto{grid-row:auto;width:54px;height:54px}
.mpl-engage-cartes li>strong{align-self:center;font-size:clamp(19px,1.45vw,22px);line-height:1.25}
.mpl-etapes4__texte h3~p+p{margin-top:10px}
.mpl-pied__carte{height:360px}
@media (max-width:600px){
  .mpl-engage-cartes li{grid-template-columns:46px minmax(0,1fr);column-gap:14px;padding:12px 16px 12px 12px}
  .mpl-engage-cartes .mpl-picto{width:46px;height:46px}
  .mpl-engage-cartes li>strong{font-size:18px}
  .mpl-pied__carte{height:380px}
}


/* ==========================================================================
   2.18.0 (2026-10-27) : hirondelle animée dans la bannière de l'accueil ; bannière photo sur les pages vitrine,
   e-commerce, réalisations et contact ; tarifs en trois cartes (création, référencement, maintenance) ;
   plateformes de boutique avec leurs logos ; filtres des réalisations par type et par activité ; fiche Google
   de la carte du pied visible sur téléphone.
   ========================================================================== */

/* Bannière photo des pages intérieures */
.mpl-bphoto{position:relative;isolation:isolate;display:flex;align-items:center;min-height:clamp(600px,48vw,720px);padding:calc(var(--l-entete) + clamp(36px,4vw,64px)) 0 clamp(56px,5vw,88px);background:var(--l-encre);color:var(--l-sur-fonce)}
.mpl-bphoto__fond{position:absolute;inset:0;z-index:-1;overflow:hidden;background:var(--l-encre)}
.mpl-bphoto__fond picture{display:block;width:100%;height:100%}
.mpl-bphoto__fond img{display:block;width:100%;height:100%;object-fit:cover}
.mpl-bphoto__fond::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--l-voile) 90%,transparent) 0%,color-mix(in srgb,var(--l-voile) 76%,transparent) 42%,color-mix(in srgb,var(--l-voile) 34%,transparent) 100%),linear-gradient(180deg,color-mix(in srgb,var(--l-voile) 55%,transparent) 0%,color-mix(in srgb,var(--l-voile) 0%,transparent) 28%,color-mix(in srgb,var(--l-voile) 0%,transparent) 72%,color-mix(in srgb,var(--l-voile) 40%,transparent) 100%)}
.mpl-bphoto__in{width:100%}
.mpl-bphoto__in>*{max-width:860px}
.mpl-bphoto .mpl-ariane ol{margin:0 0 22px;color:var(--l-sur-fonce-2)}
.mpl-bphoto .mpl-ariane a,.mpl-bphoto .mpl-ariane li+li::before{color:var(--l-turquoise-clair)}
.mpl-bphoto .mpl-bphoto__h1{margin:0;color:#fff;font-size:clamp(40px,4.4vw,70px);line-height:1.04;letter-spacing:-.02em;text-wrap:balance}
.mpl-bphoto .mpl-accent{color:var(--l-turquoise-clair)}
.mpl-bphoto__lead{margin:24px 0 0;max-width:720px;font-size:clamp(17.5px,1.4vw,20.5px);line-height:1.6;color:var(--l-sur-fonce-2)}
.mpl-bphoto__lead strong{color:#fff;font-weight:600}
.mpl-coches--bphoto{margin:26px 0 0;gap:12px;font-size:clamp(16.5px,1.2vw,18px);color:var(--l-sur-fonce)}
.mpl-coches--bphoto li{align-items:center}
.mpl-coches--bphoto .mpl-ico{flex:0 0 auto;width:28px;height:28px;padding:6px;margin:0;border-radius:50%;background:color-mix(in srgb,var(--l-turquoise-clair) 16%,transparent);color:var(--l-turquoise-clair);stroke-width:2.6;box-sizing:border-box}
.mpl-coches--bphoto strong{color:#fff;font-weight:700}
.mpl-bphoto__boutons{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.mpl-bphoto .mpl-hero__note{margin-top:24px}
@media (max-width:900px){
  .mpl-bphoto{display:block;min-height:0;padding:calc(var(--l-entete) + 36px) 0 44px}
  .mpl-bphoto__fond::after{background:linear-gradient(180deg,color-mix(in srgb,var(--l-voile) 80%,transparent) 0%,color-mix(in srgb,var(--l-voile) 72%,transparent) 50%,color-mix(in srgb,var(--l-voile) 86%,transparent) 100%)}
  .mpl-bphoto .mpl-bphoto__h1{font-size:clamp(34px,8.4vw,52px)}
}
@media (max-width:600px){
  .mpl-bphoto__boutons .mpl-btn{flex:1 1 100%}
}

/* Tarifs des pages de service : trois cartes */
.mpl-tarifs--service .mpl-prix h3{text-wrap:balance}

/* Plateformes de boutique */
.mpl-plateformes__intro{max-width:720px;margin:14px auto 0;font-size:clamp(17px,1.3vw,19px);line-height:1.6}
.mpl-plateformes__intro strong{color:var(--l-encre)}
.mpl-plateformes{margin-top:8px}
.mpl-plateforme{position:relative;display:flex;flex-direction:column}
.mpl-plateforme--choix{border:2px solid var(--l-encre)}
.mpl-plateforme__badge{position:absolute;top:-15px;left:clamp(24px,2.2vw,34px);margin:0;padding:8px 14px;border-radius:999px;background:var(--l-encre);color:#fff;font:700 12.5px/1 var(--l-corps);letter-spacing:.08em;text-transform:uppercase}
.mpl-plateforme__tete{display:flex;align-items:center;height:60px;margin:6px 0 20px}
.mpl-plateforme__logo{display:block;width:auto;height:54px}
.mpl-plateforme__logo--woocommerce{height:32px}
.mpl-plateforme h3{font-size:clamp(21px,1.6vw,24px)}

/* Réalisations : deux rangées de filtres */
.mpl-filtres--deux{flex-direction:column;align-items:center;gap:14px}
.mpl-filtres__rang{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px}
.mpl-filtres__nom{margin-right:4px;font:700 13.5px/1.2 var(--l-corps);letter-spacing:.1em;text-transform:uppercase;color:var(--l-doux)}
.mpl-galerie__carte[hidden]{display:none!important}
.mpl-galerie__vide{margin:8px 0 40px;text-align:center;font-size:18px}
.mpl-galerie__vide[hidden]{display:none}
@media (max-width:600px){
  .mpl-filtres__nom{flex:1 1 100%;margin:4px 0 0;text-align:center}
}

/* Carte du pied sur téléphone : Google masque la fiche (nom, note, avis) sous 400 px de large, la carte garde
   donc 540 px et le cadre la coupe à droite ; l'épingle reste visible. */
.mpl-pied__carte{overflow:hidden}
@media (max-width:560px){
  .mpl-pied__carte iframe{width:540px;max-width:none}
}

/* 2.18.2 (2026-10-27) : H1 des bannières photo plus grand (« il est trop petit actuellement ») */
.mpl-bphoto__in>*{max-width:1080px}
.mpl-bphoto__in>.mpl-bphoto__lead{max-width:760px}
.mpl-bphoto .mpl-bphoto__h1{font-size:clamp(48px,5.7vw,94px);line-height:1.02}
@media (max-width:900px){
  .mpl-bphoto .mpl-bphoto__h1{font-size:clamp(40px,11vw,62px)}
}

/* ==========================================================================
   2.19.0 (2026-10-27) : bande de quatre photos retirée sous la bannière
   de l'accueil, pointillés ondulés entre les étapes aussi sur ordinateur (« un peu comme mobile »).
   ========================================================================== */

/* Bannière de l'accueil sans la bande de photos : la photo de feuillage va jusqu'en bas */
.mpl-hero{--debord:0px;padding-bottom:clamp(110px,9.5vw,156px)}
@media (max-width:600px){
  .mpl-hero{padding-bottom:56px}
}

/* Étapes : pointillé ondulé entre les cartes sur ordinateur aussi, comme sur téléphone */
.mpl-etapes4{--g:clamp(44px,3.8vw,56px)}
.mpl-etapes4__droit{display:none}
.mpl-etapes4__vague{display:inline}
@media (max-width:600px){
  .mpl-etapes4{--g:64px}
}

/* Épingle de la bannière (2026-10-27) : place, taille et flottement */
.mpl-ico-ban{position:absolute;right:calc(var(--gutter) + 1%);top:-26px;z-index:1;width:clamp(116px,10.5vw,160px);pointer-events:none;animation:mpl-ico-flotte 7s ease-in-out 2.4s infinite}
.mpl-ico-ban svg{display:block;width:100%;height:auto;overflow:visible}
@keyframes mpl-ico-flotte{
  0%,100%{transform:translate(0,0)}
  50%{transform:translate(-6px,-9px)}
}
@media (prefers-reduced-motion:reduce){
  .mpl-ico-ban,.mpl-ico-ban *{animation:none!important}
}
@media (max-width:900px){
  .mpl-ico-ban{top:-46px;right:var(--gutter);width:64px}
}

/* ==========================================================================
   2.20.0 (2026-10-27) : épingle dans la bannière (choisie le même jour parmi six), petits titres en noir,
   coordonnées du contact en boîtes blanches sans la photo de Lyon (« ça fait fake »).
   ========================================================================== */

/* Épingle et ondes */
.mpl-ico-epingle__pin{fill:var(--l-chaud);transform-box:fill-box;transform-origin:50% 100%;animation:mpl-ico-pose .7s ease-out .3s both,mpl-ico-saut 3.6s ease-in-out 1.6s infinite}
.mpl-ico-epingle__pin circle{fill:#FFFBF5}
.mpl-ico-epingle__onde{fill:none;stroke:var(--l-chaud-clair);stroke-width:1.8;vector-effect:non-scaling-stroke;opacity:0;transform-box:fill-box;transform-origin:50% 50%;animation:mpl-ico-onde 3.6s ease-out 1s infinite}
.mpl-ico-epingle__onde--2{animation-delay:2.2s}
.mpl-ico-epingle__onde--3{animation-delay:3.4s}
@keyframes mpl-ico-pose{0%{opacity:0;transform:translateY(-26px)}65%{opacity:1;transform:translateY(2px)}82%{transform:translateY(-3px)}100%{opacity:1;transform:translateY(0)}}
@keyframes mpl-ico-saut{0%,30%,100%{transform:translateY(0)}12%{transform:translateY(-8px)}22%{transform:translateY(0) scale(1.04,.96)}}
@keyframes mpl-ico-onde{0%{opacity:.9;transform:scale(.6)}100%{opacity:0;transform:scale(3.4)}}

/* Petits titres au-dessus des H2 (« Présentation », « Méthode »…) en noir ; en blanc sur les fonds foncés */
.mpl-surtitre,.mpl-faq--v1 .mpl-surtitre,#zone .mpl-surtitre{color:var(--l-encre)}
.mpl-section--encre .mpl-surtitre,.mpl-section--sapin .mpl-surtitre{color:#fff}

/* Contact : coordonnées en boîtes blanches, qui remplissent la hauteur du formulaire */
.mpl-contact__infos{flex:1 1 auto;grid-auto-rows:1fr;gap:14px;margin-top:26px}
.mpl-contact__infos li{padding:16px 20px;border:1px solid var(--l-trait);border-radius:18px;background:#fff}
@media (max-width:900px){
  .mpl-contact__infos{grid-auto-rows:auto}
}

/* 2.21.0 (2026-10-27) : coordonnées du contact plus lisibles, intitulés dans la police des titres
   (« la même fonte que les titres… un peu plus gros ») */
.mpl-contact__infos li{font-size:17px;line-height:1.5}
.mpl-contact__infos li>span{min-width:0}
.mpl-contact__infos strong{font:600 clamp(20px,1.55vw,23px)/1.2 var(--l-titre);color:var(--l-encre);letter-spacing:-.01em;margin-bottom:5px}
.mpl-contact__infos a{overflow-wrap:anywhere}
@media (max-width:600px){
  .mpl-contact__infos li{font-size:16.5px}
  .mpl-contact__infos strong{font-size:20px}
}

/* ==========================================================================
   2.22.0 (2026-10-27) : bannière au feuillage sur toutes les pages (version courte pour les pages de texte),
   tarifs des pages de service en cartes sur fond sapin comme l'accueil, vraies lignes sautées entre les
   paragraphes des étapes (« pense à sauter des vraies lignes entre les différentes parties »).
   ========================================================================== */
.mpl-etapes4__texte p:not(.mpl-serp__n)+p{margin-top:14px}
.mpl-bphoto--court{min-height:clamp(420px,32vw,520px)}
.mpl-introuvable__titre{margin:0}
.mpl-introuvable__liens{margin-top:22px}
@media (max-width:900px){
  .mpl-bphoto--court{min-height:0}
}
/* Cartes sans lien vers la page du service (pages de service) : bouton calé en haut de sa rangée, à la même
   hauteur que dans les cartes qui ont un lien */
@media (min-width:901px){ @supports (grid-template-rows:subgrid){
  .mpl-svc__actions{margin-top:0;align-self:start}
} }

/* 2.23.1 : photo sous le texte des blocs à deux colonnes (WordPress, référencement e-commerce), étirée à la hauteur de la colonne d'à côté ; au-dessus du texte sur téléphone */
.mpl-colonnes--photo{align-items:stretch}
.mpl-colonnes--photo>div:first-child{display:flex;flex-direction:column}
.mpl-colonnes__photo{position:relative;flex:1 1 auto;min-height:240px;margin-top:clamp(18px,2vw,26px);border-radius:var(--l-rayon);overflow:hidden;background:var(--l-encre)}
.mpl-colonnes__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:900px){
  .mpl-colonnes__photo{order:-1;flex:none;height:clamp(220px,62vw,340px);min-height:0;margin:0 0 22px}
}

/* 2.24.0 : méga-menu des services (« des photos et le texte dessus », 2026-10-28). Panneau blanc collé sous le
   trait de l'en-tête, coins arrondis en bas seulement, trois photos avec le nom, une phrase et le prix posés dessus.
   L'en-tête transparent redevient plein tant que le menu est ouvert. Ancienne liste .mpl-nav__sous retirée. */
@media (min-width:1101px){
  .mpl-nav{align-self:stretch}
  .mpl-nav__groupe{position:static;display:flex;align-items:center;align-self:stretch}
  .mpl-nav__groupe>a.est-actif{color:var(--l-turquoise)}
  .mpl-nav__groupe:hover>a .mpl-ico,.mpl-nav__groupe:focus-within>a .mpl-ico{transform:rotate(180deg)}
  .mpl-nav__groupe>a .mpl-ico{transition:transform .2s}
  .mpl-mega{position:absolute;top:calc(100% + 1px);left:50%;transform:translateX(-50%);width:min(1240px,calc(100% - 2 * var(--gutter)));display:none;background:#fff;border:1px solid var(--l-trait);border-top:0;border-radius:0 0 var(--l-rayon) var(--l-rayon);padding:clamp(16px,1.4vw,22px)}
  .mpl-mega::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:14px}
  .mpl-nav__groupe:hover .mpl-mega,.mpl-nav__groupe:focus-within .mpl-mega{display:block}
  .mpl-entete-transparent .mpl-entete:not(.est-compact) .mpl-mega{border-top:1px solid var(--l-trait);border-radius:var(--l-rayon)}
  .mpl-mega__in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.2vw,18px)}
  .mpl-mega__carte{position:relative;display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--l-encre);text-decoration:none;color:#fff}
  .mpl-mega__carte picture,.mpl-mega__carte .mpl-mega__img{position:absolute;inset:0;width:100%;height:100%}
  .mpl-mega__carte .mpl-mega__img{object-fit:cover;transition:transform .35s ease}
  .mpl-mega__carte:hover .mpl-mega__img,.mpl-mega__carte:focus-visible .mpl-mega__img{transform:scale(1.05)}
  .mpl-mega__carte::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,color-mix(in srgb,var(--l-encre) 92%,transparent) 0%,color-mix(in srgb,var(--l-encre) 62%,transparent) 38%,color-mix(in srgb,var(--l-encre) 0%,transparent) 70%)}
  .mpl-mega__texte{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;gap:4px;padding:clamp(16px,1.5vw,24px)}
  .mpl-mega__texte strong{font:600 clamp(20px,1.6vw,24px)/1.2 var(--l-titre);color:#fff}
  .mpl-mega__texte span{font-size:15px;line-height:1.4;color:rgba(255,255,255,.88)}
  .mpl-mega__texte small{margin-top:6px;font-size:14.5px;font-weight:600;color:var(--l-turquoise-clair)}
  .mpl-nav .mpl-mega__carte:hover,.mpl-nav .mpl-mega__carte[aria-current]{color:#fff}
}
.mpl-masque{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:1100px){
  .mpl-mega{display:none}
  .mpl-mob__ligne{display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.12)}
  .mpl-mob__ligne a{flex:1;border-bottom:0}
  .mpl-mob__plus{display:grid;place-items:center;width:48px;height:48px;flex:none;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:transparent;color:#fff;cursor:pointer;padding:0}
  .mpl-mob__plus .mpl-ico{width:22px;height:22px;transition:transform .2s}
  .mpl-mob__plus[aria-expanded="true"] .mpl-ico{transform:rotate(45deg)}
  .mpl-mob__sous{list-style:none;margin:0;padding:10px 0 12px;display:grid;gap:10px;border-bottom:1px solid rgba(255,255,255,.12)}
  .mpl-mob__sous[hidden]{display:none}
  .mpl-mob__liste .mpl-mob__sous a{min-height:0;gap:14px;padding:6px 0;border:0;font:500 18px/1.25 var(--l-titre)}
  .mpl-mob__sous picture{display:block;flex:none;line-height:0}
  .mpl-mob__sous img{width:64px;height:64px;flex:none;border-radius:12px;object-fit:cover}
  .mpl-mob__sous a>span{display:flex;flex-direction:column;gap:3px}
  .mpl-mob__sous strong{color:#fff;font-weight:600}
  .mpl-mob__sous a[aria-current] strong{color:var(--l-turquoise-clair)}
  .mpl-mob__sous small{font:500 14.5px/1.3 var(--l-corps);color:var(--l-turquoise-clair)}
}
