/* Menuiseries Bertin : CSS global (préfixe mb-)
   Source : Design System « Menuiseries Bertin » (artifact GXYUazUBtg5sQzkUHyuhW4), version Lumière.
   Règle : aucun CSS dans les pages. Un composant qui manque s'ajoute ici. */

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

/* 2. Tokens */
:root{
  --mb-fond:#ffffff; --mb-ciel:#eef5fb; --mb-encre:#10263b; --mb-encre-douce:#4d6073; --mb-ligne:#d6e2ee;
  --mb-bleu-bertin:#1668a9; --mb-bleu-pale:#dceaf6; --mb-nuit-pale:#c9d6e3;
  --mb-action:#bbd10f; --mb-sur-action:#10263b; --mb-verre:rgba(255,255,255,.82);
  --mb-voile:rgba(16,38,59,.62); --mb-filet-nuit:#2b4057;
  --mb-font:"Manrope","Helvetica Neue",Arial,sans-serif;
  --mb-espace-1:8px; --mb-espace-2:14px; --mb-espace-3:24px; --mb-espace-4:36px; --mb-espace-5:56px; --mb-espace-6:96px;
  --mb-rayon-champ:14px; --mb-rayon-carte:24px; --mb-rayon-photo:28px; --mb-rayon-pilule:999px;
  --mb-ombre:0 12px 40px rgba(16,38,59,.14); --mb-flou-verre:16px;
  --mb-largeur:1240px; --mb-gouttiere:32px;
}
@media (max-width:899px){:root{--mb-espace-6:64px;--mb-gouttiere:20px}}

/* 3. Base */
body{font-family:var(--mb-font);font-size:16px;line-height:1.6;color:var(--mb-encre);background:var(--mb-fond);-webkit-font-smoothing:antialiased}
.mb,.mb *,.mb *::before,.mb *::after{box-sizing:border-box}
.mb img{max-width:100%;height:auto;display:block}
.mb a{color:inherit}
.mb :focus-visible{outline:3px solid var(--mb-bleu-bertin);outline-offset:3px}
.mb-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* 4. Mise en page */
.mb-section{padding:var(--mb-espace-6) 0}
.mb-section--ciel{background:var(--mb-ciel)}
.mb-section--encre{background:var(--mb-encre);color:#fff}
.mb-section--encre .mb-chapo,.mb-section--encre .mb-texte-doux{color:var(--mb-nuit-pale)}
.mb-conteneur{width:100%;max-width:var(--mb-largeur);margin:0 auto;padding:0 var(--mb-gouttiere)}
.mb-conteneur--etroit{max-width:760px}
.mb-grille{display:grid;gap:var(--mb-espace-3)}
.mb-grille--2{grid-template-columns:repeat(2,1fr);gap:var(--mb-espace-5)}
.mb-grille--3{grid-template-columns:repeat(3,1fr)}
.mb-pile>*+*{margin-top:var(--mb-espace-3)}
@media (max-width:899px){.mb-grille--2,.mb-grille--3{grid-template-columns:1fr;gap:var(--mb-espace-3)}}

/* 5. Typographie */
.mb-titre-hero,.mb-titre-section,.mb-titre-bloc{margin:0;font-weight:800;text-wrap:balance;color:inherit}
.mb-titre-hero{font-size:52px;line-height:1.04;letter-spacing:-.035em}
.mb-titre-section{font-size:44px;line-height:1.08;letter-spacing:-.035em}
.mb-titre-bloc{font-size:26px;line-height:1.15;letter-spacing:-.02em}
.mb-chapo{margin:0;font-size:18px;line-height:1.6;font-weight:500;color:var(--mb-encre-douce)}
.mb-texte{margin:0;font-size:16px;line-height:1.6}
.mb-texte-doux{color:var(--mb-encre-douce)}
.mb-etiquette{font-size:13px;line-height:1.4;font-weight:700}
.mb-entete-section{max-width:760px;margin:0 0 var(--mb-espace-5)}
.mb-entete-section>*+*{margin-top:var(--mb-espace-2)}
@media (max-width:899px){.mb-titre-hero{font-size:38px}.mb-titre-section{font-size:30px}.mb-titre-bloc{font-size:22px}}

/* 6. Boutons */
.mb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 26px;border:0;border-radius:var(--mb-rayon-pilule);font:inherit;font-size:16px;line-height:1.2;font-weight:800;text-decoration:none;cursor:pointer;transition:filter .15s}
.mb-btn:hover{filter:brightness(.95)}
.mb-btn--action{background:var(--mb-action);color:var(--mb-sur-action)!important}
.mb-btn--secondaire{background:var(--mb-bleu-bertin);color:#fff!important;font-weight:700}
.mb-btn--contour{background:var(--mb-fond);color:var(--mb-encre)!important;border:1.5px solid var(--mb-encre);font-weight:700}
.mb-btn--entete{min-height:48px;padding:0 20px}
.mb-btn--bloc{display:flex;width:100%}
.mb-lien{font-weight:700;color:var(--mb-bleu-bertin)!important;text-decoration:underline;text-underline-offset:3px}

/* 7. Bandeau promo */
.mb-promo{background:var(--mb-action);color:var(--mb-sur-action);overflow:hidden}
.mb-promo__piste{display:flex;width:max-content;animation:mb-defile 32s linear infinite}
.mb-promo:hover .mb-promo__piste,.mb-promo:focus-within .mb-promo__piste{animation-play-state:paused}
.mb-promo__lot{display:flex;align-items:center;gap:40px;padding:0 20px;min-height:46px;font-size:15px;font-weight:600;white-space:nowrap}
.mb-promo__offre{display:inline-flex;align-items:center;gap:14px}
.mb-promo__offre a{color:var(--mb-sur-action);font-weight:800}
.mb-promo__point{width:6px;height:6px;border-radius:999px;background:var(--mb-sur-action);opacity:.5}
.mb-promo--unique .mb-promo__piste{width:auto;animation:none;justify-content:center}
.mb-promo--unique .mb-promo__lot{white-space:normal;justify-content:center;text-align:center;flex-wrap:wrap;gap:8px 14px;padding:10px 20px}
@keyframes mb-defile{to{transform:translateX(-50%)}}

/* 8. En-tête et méga-menu */
.mb-entete{position:relative;z-index:50;background:var(--mb-fond);border-bottom:1.5px solid var(--mb-ligne)}
.mb-entete__barre{display:flex;align-items:center;justify-content:space-between;gap:20px;height:80px}
.mb-entete__logo img{height:44px;width:auto}
.mb-nav{display:flex;gap:4px;font-size:15px;font-weight:700}
.mb-nav__item{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:0;border-radius:var(--mb-rayon-pilule);background:none;font:inherit;color:inherit;text-decoration:none;cursor:pointer}
.mb-nav__item[aria-expanded="true"],.mb-nav__item[aria-current="page"],.mb-nav__item:hover{background:var(--mb-ciel)}
.mb-nav__item svg{transition:transform .15s}
.mb-nav__item[aria-expanded="true"] svg{transform:rotate(180deg)}
.mb-entete__actions{display:flex;align-items:center;gap:16px;font-weight:800}
.mb-entete__tel{text-decoration:none;white-space:nowrap}
.mb-entete__mobile{display:none;align-items:center;gap:8px}
.mb-rond{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:999px;background:var(--mb-ciel);color:var(--mb-encre);cursor:pointer;text-decoration:none}
.mb-rond--encre{background:var(--mb-encre);color:#fff}
.mb-megamenu{position:absolute;left:0;right:0;top:100%;background:var(--mb-fond);box-shadow:var(--mb-ombre)}
.mb-megamenu[hidden]{display:none}
.mb-megamenu__grille{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:32px;padding:32px var(--mb-gouttiere) 36px}
.mb-megamenu__familles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.mb-megamenu__col{display:flex;flex-direction:column;gap:12px}
.mb-megamenu__col img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--mb-rayon-champ)}
.mb-megamenu__col ul{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}
.mb-megamenu__famille{font-size:16px;font-weight:800;text-decoration:none}
.mb-megamenu__lien{display:flex;align-items:center;min-height:34px;font-size:14px;color:var(--mb-encre-douce)!important;text-decoration:none}
.mb-megamenu__lien:hover,.mb-megamenu__famille:hover{color:var(--mb-encre)!important;text-decoration:underline}
.mb-megamenu__offre{display:flex;flex-direction:column;gap:10px;padding:24px;background:var(--mb-encre);color:#fff;border-radius:var(--mb-rayon-carte)}
.mb-megamenu__offre p{margin:0}
.mb-megamenu__offre-k{font-size:13px;color:var(--mb-nuit-pale)}
.mb-megamenu__offre-t{font-size:20px;line-height:1.2;font-weight:800;letter-spacing:-.02em}
.mb-megamenu__offre-d{font-size:14px;color:var(--mb-nuit-pale)}
.mb-megamenu__offre .mb-btn{margin-top:auto}
.mb-nav__groupe{position:relative}
.mb-nav__item[aria-current="page"]{background:var(--mb-ciel)}
.mb-sousmenu{position:absolute;left:0;top:100%;z-index:60;min-width:240px;margin-top:8px;padding:8px;background:var(--mb-fond);border-radius:var(--mb-rayon-champ);box-shadow:var(--mb-ombre)}
.mb-sousmenu[hidden]{display:none}
.mb-sousmenu a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;text-decoration:none;font-weight:700}
.mb-sousmenu a:hover,.mb-sousmenu a[aria-current="page"]{background:var(--mb-ciel)}
.mb-entete--landing .mb-nav,.mb-entete--landing .mb-btn{display:none}
@media (max-width:899px){
  .mb-entete__barre{height:64px}.mb-entete__logo img{height:36px}
  .mb-nav,.mb-entete__actions,.mb-megamenu{display:none}
  .mb-entete__mobile{display:flex}
}

/* 9. Menu mobile plein écran */
.mb-menumobile{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;background:var(--mb-fond)}
.mb-menumobile[hidden]{display:none}
.mb-menumobile__haut{display:flex;justify-content:space-between;align-items:center;height:64px;padding:0 16px;border-bottom:1.5px solid var(--mb-ligne)}
.mb-menumobile__haut img{height:36px;width:auto}
.mb-menumobile__corps{flex:1;overflow-y:auto;padding:6px 16px 12px}
.mb-menumobile__rubrique{margin:12px 0 4px;font-size:13px;font-weight:700;color:var(--mb-encre-douce)}
.mb-menumobile__entree{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:0;border:0;border-bottom:1.5px solid var(--mb-ligne);background:none;font:inherit;font-size:17px;font-weight:800;color:var(--mb-encre);text-align:left;text-decoration:none;cursor:pointer}
.mb-menumobile__entree[aria-expanded="true"] svg{transform:rotate(180deg)}
.mb-menumobile__sous{padding:0 0 8px 12px}
.mb-menumobile__sous[hidden]{display:none}
.mb-menumobile__sous a{display:flex;align-items:center;min-height:44px;font-size:15px;color:var(--mb-encre-douce);text-decoration:none}
.mb-menumobile__pied{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 16px;border-top:1.5px solid var(--mb-ligne)}
.mb-menumobile__pied .mb-btn{min-height:50px;padding:0 12px}
.mb-btn--appel{background:var(--mb-encre);color:#fff!important}
.mb-menumobile__sous a[aria-current="page"]{color:var(--mb-encre);font-weight:800}

/* 10. Barre mobile (bas d'écran) et barre fixe (desktop) */
.mb-barremobile{display:none}
@media (max-width:899px){
  .mb-barremobile{position:fixed;left:0;right:0;bottom:0;z-index:90;display:grid;grid-template-columns:1fr 1fr;padding-bottom:env(safe-area-inset-bottom,0)}
  .mb-barremobile a{display:flex;align-items:center;justify-content:center;min-height:56px;font-weight:800;text-decoration:none}
  .mb-barremobile__appel{background:var(--mb-encre);color:#fff!important}
  .mb-barremobile__devis{background:var(--mb-action);color:var(--mb-sur-action)!important}
  body.mb-avec-barre{padding-bottom:56px}
}
.mb-barrefixe{position:fixed;top:0;left:0;right:0;z-index:80;background:var(--mb-fond);border-bottom:1.5px solid var(--mb-ligne);box-shadow:var(--mb-ombre);transform:translateY(-110%);transition:transform .2s}
.mb-barrefixe.is-visible{transform:none}
.mb-barrefixe__in{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:72px}
.mb-barrefixe p{margin:0}
.mb-barrefixe__actions{display:flex;align-items:center;gap:16px;font-weight:800}
.mb-barrefixe__actions .mb-btn{min-height:48px;padding:0 20px}
@media (max-width:899px){.mb-barrefixe{display:none}}

/* 11. Hero : photo et panneau de verre */
.mb-hero{padding:var(--mb-espace-3) 0 0}
.mb-hero__photo{position:relative;min-height:600px;border-radius:var(--mb-rayon-photo);overflow:hidden;background:var(--mb-ciel)}
.mb-hero__photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mb-verre{position:absolute;left:var(--mb-espace-4);bottom:var(--mb-espace-4);max-width:520px;padding:var(--mb-espace-4);background:var(--mb-verre);-webkit-backdrop-filter:blur(var(--mb-flou-verre));backdrop-filter:blur(var(--mb-flou-verre));border-radius:var(--mb-rayon-carte);box-shadow:var(--mb-ombre);color:var(--mb-encre)}
.mb-verre>*+*{margin-top:var(--mb-espace-2)}
.mb-verre .mb-chapo{font-size:16px}
@media (max-width:899px){
  .mb-hero__photo{display:flex;flex-direction:column;min-height:0;overflow:visible;border-radius:0;background:none}
  .mb-hero__photo>img{position:relative;height:320px;border-radius:var(--mb-rayon-photo)}
  .mb-verre{position:relative;left:auto;bottom:auto;max-width:none;margin:-60px 12px 0;padding:24px}
}

/* 12. Puces produit */
.mb-puces{display:flex;flex-wrap:wrap;gap:var(--mb-espace-1)}
.mb-puce{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-pilule);background:var(--mb-fond);color:var(--mb-encre);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.mb-puce[aria-pressed="true"]{border-color:var(--mb-bleu-bertin);background:var(--mb-ciel)}

/* 13. Bande de preuves (réassurance) */
.mb-preuves{background:var(--mb-ciel);padding:48px 0}
.mb-preuves__liste{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 36px;margin:0;padding:0;list-style:none;font-size:17px;color:var(--mb-encre-douce)}
.mb-preuves__liste strong{color:var(--mb-encre)}
.mb-preuves__label{display:flex;align-items:center;gap:14px}
.mb-preuves__label img{height:64px;width:auto}

/* 14. Bloc offre */
.mb-offre{display:grid;grid-template-columns:1fr 1fr;background:var(--mb-encre);color:#fff;border-radius:var(--mb-rayon-carte);overflow:hidden}
.mb-offre__texte{padding:var(--mb-espace-5)}
.mb-offre__surtitre{margin:0 0 10px;font-size:14px;font-weight:600;color:var(--mb-nuit-pale)}
.mb-offre__titre{margin:0 0 14px;font-size:32px;line-height:1.1;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.mb-offre__desc{margin:0 0 24px;font-size:15px;line-height:1.6;color:var(--mb-nuit-pale)}
.mb-offre__photo{position:relative;min-height:300px}
.mb-offre__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:899px){.mb-offre{grid-template-columns:1fr}.mb-offre__texte{padding:28px}.mb-offre__photo{min-height:220px;order:-1}}

/* 15. Mosaïque produits et tuile conseil */
.mb-mosaique{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:260px;gap:var(--mb-espace-2)}
.mb-tuile{position:relative;display:block;border-radius:var(--mb-rayon-carte);overflow:hidden;background:var(--mb-ciel);text-decoration:none}
.mb-tuile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.mb-tuile:hover img{transform:scale(1.03)}
.mb-tuile__etiquette{position:absolute;left:14px;bottom:14px;padding:10px 14px;background:var(--mb-fond);color:var(--mb-encre);border-radius:var(--mb-rayon-champ);font-size:15px;font-weight:700}
.mb-tuile--conseil{grid-column:span 2;display:flex;flex-direction:column;justify-content:space-between;padding:28px;background:var(--mb-bleu-bertin);color:#fff!important}
.mb-tuile--conseil .mb-tuile__titre{font-size:24px;font-weight:800;line-height:1.15;letter-spacing:-.02em;max-width:460px}
.mb-tuile--conseil .mb-tuile__lien{font-weight:700;color:var(--mb-bleu-pale)}
@media (max-width:899px){.mb-mosaique{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.mb-tuile--conseil{grid-column:span 2}}

/* 16. Cartes : avis, marques */
.mb-avis{margin:0;padding:var(--mb-espace-3);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);background:var(--mb-fond)}
.mb-avis p{margin:0 0 16px;font-size:16px;line-height:1.6}
.mb-avis footer{font-size:14px;font-weight:700}
.mb-marque{display:flex;flex-direction:column;gap:12px;padding:var(--mb-espace-3);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);background:var(--mb-fond)}
.mb-marque__haut{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px}
.mb-marque__haut img{height:32px;width:auto;max-width:180px;object-fit:contain}
.mb-marque p{margin:0;font-size:15px;color:var(--mb-encre-douce)}
.mb-marque__aussi{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px;font-weight:700;color:var(--mb-encre-douce)}
.mb-chip{padding:4px 10px;border-radius:999px;background:var(--mb-ciel);font-size:12px;font-weight:600;color:var(--mb-encre)}
.mb-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--mb-action);color:var(--mb-sur-action);font-size:12px;font-weight:800}

/* 17. Formulaires (y compris Contact Form 7 dans .mb-form) */
.mb-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--mb-espace-2)}
.mb-form p{margin:0}
.mb-form .wpcf7-form-control-wrap{display:block}
.mb-champ{display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.4;font-weight:700}
.mb-champ--large,.mb-form__large{grid-column:1/-1}
.mb-form input[type=text],.mb-form input[type=tel],.mb-form input[type=email],.mb-form input[type=number],.mb-form select,.mb-form textarea{width:100%;min-height:48px;padding:0 14px;border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-champ);background:var(--mb-fond);color:var(--mb-encre);font:inherit;font-size:16px;font-weight:500}
.mb-form textarea{min-height:120px;padding:12px 14px}
.mb-form input:focus,.mb-form select:focus,.mb-form textarea:focus{outline:none;border-color:var(--mb-bleu-bertin);box-shadow:0 0 0 3px var(--mb-bleu-pale)}
.mb-consentement{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:500;color:var(--mb-encre-douce)}
.mb-consentement input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--mb-bleu-bertin)}
.mb-form .wpcf7-list-item{margin:0}
.mb-form .wpcf7-list-item label{display:flex;gap:10px;align-items:flex-start}
.mb-form .mb-btn,.mb-form input[type=submit]{grid-column:1/-1;width:100%;min-height:54px;border:0;border-radius:var(--mb-rayon-pilule);background:var(--mb-action);color:var(--mb-sur-action);font:inherit;font-size:16px;font-weight:800;cursor:pointer}
.mb-mention{grid-column:1/-1;margin:0;font-size:12px;line-height:1.5;color:var(--mb-encre-douce)}
.mb-form .wpcf7-not-valid{border-color:#c4320a!important}
.mb-form .wpcf7-not-valid-tip{margin-top:4px;font-size:13px;font-weight:600;color:#a32a08}
.mb-form .wpcf7-response-output{grid-column:1/-1;margin:0!important;padding:12px 14px!important;border-radius:var(--mb-rayon-champ);font-size:14px}
.mb-section--encre .mb-form .mb-champ{color:#fff}
.mb-section--encre .mb-consentement,.mb-section--encre .mb-mention{color:var(--mb-nuit-pale)}
@media (max-width:599px){.mb-form{grid-template-columns:1fr}}

/* 18. Fenêtre de devis (dialog natif) */
.mb-dialog{width:calc(100% - 32px);max-width:520px;padding:28px;border:0;border-radius:var(--mb-rayon-carte);background:var(--mb-fond);color:var(--mb-encre);box-shadow:var(--mb-ombre)}
.mb-dialog::backdrop{background:var(--mb-voile)}
.mb-dialog[open]{position:fixed;margin:auto;max-height:calc(100vh - 32px);overflow:auto}
.mb-dialog__fermer{position:absolute;top:14px;right:14px}
.mb-dialog__titre{margin:0 0 4px;padding-right:52px;font-size:24px;line-height:1.2;font-weight:800;letter-spacing:-.02em}
.mb-dialog__sous{margin:0 0 16px;font-size:14px;color:var(--mb-encre-douce)}
.mb-recap{grid-column:1/-1;margin:0;padding:10px 14px;background:var(--mb-ciel);border-radius:var(--mb-rayon-champ);font-size:13px}

/* 19. Formulaire en étapes */
.mb-etapes{padding:var(--mb-espace-3);background:var(--mb-fond);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);box-shadow:var(--mb-ombre)}
.mb-etapes__statut{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--mb-bleu-bertin)}
.mb-progression{height:8px;margin-bottom:20px;background:var(--mb-ciel);border-radius:99px;overflow:hidden}
.mb-progression__barre{height:100%;background:var(--mb-action);border-radius:99px;transition:width .2s}
.mb-choix{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mb-choix__option{position:relative;display:flex;flex-direction:column;gap:8px;padding:8px 8px 12px;border:2px solid var(--mb-ligne);border-radius:20px;background:var(--mb-fond);font:inherit;font-size:14px;font-weight:800;color:var(--mb-encre);text-align:left;cursor:pointer}
.mb-choix__option img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px}
.mb-choix__option[aria-pressed="true"],.mb-choix__option:has(input:checked){border-color:var(--mb-bleu-bertin);background:var(--mb-ciel)}
.mb-etapes__nav{display:flex;gap:12px;margin-top:18px}
.mb-etapes__nav .mb-btn--action{flex:1}
@media (max-width:599px){.mb-choix{grid-template-columns:1fr 1fr}}

/* 20. Composeur (pages produit) */
.mb-composeur{display:grid;grid-template-columns:1fr 1fr;gap:var(--mb-espace-3);padding:var(--mb-espace-3);background:var(--mb-ciel);border-radius:var(--mb-rayon-carte)}
.mb-composeur__apercu{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;background:var(--mb-fond);border-radius:var(--mb-rayon-photo)}
.mb-composeur__apercu svg{width:100%;max-width:220px;height:auto}
.mb-composeur__resume{font-size:14px;font-weight:800;text-align:center}
.mb-composeur__groupe{margin:0 0 16px;padding:0;border:0}
.mb-composeur__groupe legend{margin:0 0 8px;padding:0;font-size:14px;font-weight:800}
.mb-composeur__options{display:flex;flex-wrap:wrap;gap:6px}
.mb-option{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1.5px solid var(--mb-ligne);border-radius:999px;background:transparent;font:inherit;font-size:13px;font-weight:700;color:var(--mb-encre);cursor:pointer}
.mb-option[aria-pressed="true"]{border-color:var(--mb-bleu-bertin);background:var(--mb-fond)}
.mb-teinte{width:44px;height:44px;border-radius:999px;border:1.5px solid #b9c9d9;cursor:pointer;padding:0}
.mb-teinte[aria-pressed="true"]{outline:2px solid var(--mb-bleu-bertin);outline-offset:2px}
.mb-composeur__note{margin:0;font-size:12px;color:var(--mb-encre-douce)}
@media (max-width:899px){.mb-composeur{grid-template-columns:1fr}}

/* 21. Filtres (réalisations, actualités) */
.mb-filtres{display:flex;flex-wrap:wrap;gap:8px}
.mb-filtre{min-height:44px;padding:0 18px;border:1.5px solid var(--mb-ligne);border-radius:999px;background:var(--mb-fond);font:inherit;font-size:14px;font-weight:700;color:var(--mb-encre);cursor:pointer}
.mb-filtre[aria-pressed="true"]{border-color:var(--mb-bleu-bertin);background:var(--mb-ciel)}

/* 22. Frise (qui sommes-nous) */
.mb-frise{max-width:760px;margin:0;padding:0;list-style:none}
.mb-frise li{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:18px 0;border-top:1.5px solid var(--mb-ligne)}
.mb-frise__annee{font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.035em;color:var(--mb-bleu-bertin)}
.mb-frise p{margin:0;font-size:15px;line-height:1.6}
@media (max-width:599px){.mb-frise li{grid-template-columns:1fr;gap:4px}}

/* 23. Encart à mi-article */
.mb-encart{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:var(--mb-espace-4) 0;padding:24px 28px;background:var(--mb-encre);color:#fff;border-radius:var(--mb-rayon-carte)}
.mb-encart p{margin:0;max-width:340px;font-size:18px;line-height:1.35;font-weight:800}
.mb-encart .mb-btn{min-height:48px;padding:0 20px}

/* 24. Pied de page */
.mb-pied{background:var(--mb-encre);color:var(--mb-nuit-pale);padding:48px 0 0;font-size:14px}
.mb-pied__grille{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:32px}
.mb-pied__contact{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.mb-pied__contact img{height:40px;width:auto}
.mb-pied__accroche{margin:0;max-width:280px;line-height:1.5}
.mb-pied__lien--fort{color:#fff!important;font-weight:800;text-decoration:underline!important;text-underline-offset:3px}
.mb-pied__tel{font-size:22px;font-weight:800;color:#fff!important;text-decoration:none}
.mb-pied__titre{margin:0 0 10px;color:#fff;font-weight:800;font-size:15px}
.mb-pied__lien{display:flex;align-items:center;min-height:32px;color:var(--mb-nuit-pale)!important;text-decoration:none}
.mb-pied__lien:hover{color:#fff!important;text-decoration:underline}
.mb-pied__lieu{margin:0 0 12px;line-height:1.5}
.mb-pied__lieu b{color:#fff}
.mb-pied__reseaux{display:flex;gap:8px}
.mb-pied__reseaux a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:var(--mb-filet-nuit);color:#fff}
.mb-pied__labels{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px;padding:24px 0;border-top:1px solid var(--mb-filet-nuit);font-size:13px}
.mb-pied__labels img.mb-pied__label-rge{height:54px;width:auto}
.mb-pied__labels img.mb-pied__label-kline{height:30px;width:auto}
.mb-pied__legal{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 0 20px;border-top:1px solid var(--mb-filet-nuit);font-size:12px}
.mb-pied__legal nav{display:flex;flex-wrap:wrap;gap:4px 14px}
.mb-pied__legal a{color:var(--mb-nuit-pale)!important;text-decoration:none}
.mb-pied__legal a:hover{text-decoration:underline}
@media (max-width:899px){.mb-pied__grille{grid-template-columns:1fr 1fr}}
@media (max-width:599px){.mb-pied__grille{grid-template-columns:1fr}}

/* 25. Contenu éditorial (articles, pages légales) */
.mb-prose{max-width:720px;font-size:17px;line-height:1.7}
.mb-prose h2{margin:2em 0 .6em;font-size:30px;line-height:1.15;font-weight:800;letter-spacing:-.03em}
.mb-prose h3{margin:1.6em 0 .5em;font-size:22px;line-height:1.2;font-weight:800;letter-spacing:-.02em}
.mb-prose p,.mb-prose ul,.mb-prose ol{margin:0 0 1em}
.mb-prose a{color:var(--mb-bleu-bertin);font-weight:600;text-underline-offset:3px}
.mb-prose img{border-radius:var(--mb-rayon-carte)}

/* 26. Intégration GeneratePress (en-tête, pied et conteneurs remplacés par les blocs mb) */
.site-header,.main-navigation,.page .entry-header,.site-info,.footer-widgets{display:none}
.site-footer{background:none;padding:0}
.site-content{display:block;padding:0!important}
.site.grid-container,.site-content .content-area{max-width:none;width:100%;padding:0}
.separate-containers .inside-article,.one-container .site-content,.inside-article{padding:0!important;margin:0}
.separate-containers .site-main{margin:0}
.entry-content:not(:first-child){margin-top:0}
.entry-content>.mb:first-child{margin-top:0}
body.mb-site{background:var(--mb-fond)}

/* 27. Préférences de mouvement : aucune animation si demandé */
@media (prefers-reduced-motion:reduce){
  .mb-promo__piste{animation:none!important;flex-wrap:wrap;width:auto}
  .mb-promo__lot[aria-hidden="true"]{display:none}
  .mb-promo__lot{white-space:normal;flex-wrap:wrap}
  .mb *,.mb-barrefixe{transition:none!important}
}

/* 28. Neutralisation des styles de boutons GeneratePress dans les blocs mb (padding, survol et focus gris) */
.mb .mb-rond{padding:0}
.mb .mb-rond svg,.mb .mb-nav__item svg,.mb .mb-menumobile__entree svg{flex:none}
.mb .mb-btn--action:hover,.mb .mb-btn--action:focus{background:var(--mb-action);color:var(--mb-sur-action)}
.mb .mb-btn--secondaire:hover,.mb .mb-btn--secondaire:focus{background:var(--mb-bleu-bertin);color:#fff}
.mb .mb-btn--contour:hover,.mb .mb-btn--contour:focus{background:var(--mb-fond);color:var(--mb-encre)}
.mb .mb-btn--appel:hover,.mb .mb-btn--appel:focus{background:var(--mb-encre);color:#fff}
.mb .mb-rond:hover,.mb .mb-rond:focus{background:var(--mb-ciel);color:var(--mb-encre)}
.mb .mb-rond--encre:hover,.mb .mb-rond--encre:focus{background:var(--mb-encre);color:#fff}
.mb .mb-nav__item:focus{background:none;color:inherit}
.mb .mb-nav__item:hover,.mb .mb-nav__item[aria-expanded="true"]{background:var(--mb-ciel);color:var(--mb-encre)}
.mb .mb-menumobile__entree:hover,.mb .mb-menumobile__entree:focus{background:none;color:var(--mb-encre)}
.mb .mb-puce:hover,.mb .mb-puce:focus,.mb .mb-filtre:hover,.mb .mb-filtre:focus,.mb .mb-choix__option:hover,.mb .mb-choix__option:focus{background:var(--mb-fond);color:var(--mb-encre)}
.mb .mb-option:hover,.mb .mb-option:focus{background:transparent;color:var(--mb-encre)}
.mb .mb-puce[aria-pressed="true"],.mb .mb-filtre[aria-pressed="true"],.mb .mb-choix__option[aria-pressed="true"]{background:var(--mb-ciel)}
.mb .mb-option[aria-pressed="true"]{background:var(--mb-fond)}

/* 29. Gabarits de page : composants complémentaires (maquettes validées) */
.mb-hero-split{padding:var(--mb-espace-5) 0}
.mb-hero-split__grille{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:72px;align-items:center}
.mb-hero-split__texte>*+*{margin-top:var(--mb-espace-3)}
.mb-hero-split__photo{position:relative;min-height:520px;border-radius:var(--mb-rayon-photo);overflow:hidden;background:var(--mb-ciel)}
.mb-hero-split__photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mb-hero-split__badges{position:absolute;left:20px;bottom:20px;right:20px;display:flex;flex-wrap:wrap;gap:8px}
.mb-etiquette-photo{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:var(--mb-verre);-webkit-backdrop-filter:blur(var(--mb-flou-verre));backdrop-filter:blur(var(--mb-flou-verre));border-radius:var(--mb-rayon-champ);font-size:14px;font-weight:700;color:var(--mb-encre)}
.mb-form--court{grid-template-columns:1fr 1fr;padding:var(--mb-espace-3);background:var(--mb-fond);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);box-shadow:var(--mb-ombre)}
.mb-hero-simple{padding:var(--mb-espace-5) 0;background:var(--mb-ciel)}
.mb-hero-simple .mb-chapo{max-width:720px;margin-top:var(--mb-espace-2)}
.mb-ancres{display:flex;flex-wrap:wrap;gap:var(--mb-espace-1);margin-top:var(--mb-espace-3)}
a.mb-puce{text-decoration:none}
.mb-photo-vide{display:flex;align-items:center;justify-content:center;min-height:220px;padding:20px;border:1.5px dashed #b9c9d9;border-radius:var(--mb-rayon-carte);background:var(--mb-ciel);color:var(--mb-encre-douce);font-size:14px;font-weight:600;text-align:center}
.mb-hero-split__photo .mb-photo-vide,.mb-hero__photo .mb-photo-vide{position:absolute;inset:0;border-radius:0;border:0}
.mb-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--mb-espace-3)}
.mb-cartes--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mb-cartes--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mb-cartes--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mb-carte{display:flex;flex-direction:column;gap:12px;padding:var(--mb-espace-3);background:var(--mb-fond);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte)}
.mb-carte>p,.mb-carte>h2,.mb-carte>h3{margin:0}
.mb-carte .mb-btn{margin-top:auto;align-self:flex-start}
.mb-carte__logo{height:36px;width:auto!important;max-width:180px;object-fit:contain;object-position:left}
.mb-carte__meta{font-size:13px;font-weight:700;color:var(--mb-encre-douce)}
.mb-carte--photo{padding:0;overflow:hidden}
.mb-carte--photo>.mb-photo-vide,.mb-carte--photo>img{border-radius:0;border:0;aspect-ratio:4/3;min-height:0;width:100%;object-fit:cover}
.mb-carte--photo .mb-carte__corps{display:flex;flex-direction:column;gap:8px;padding:var(--mb-espace-3)}
.mb-carte--photo .mb-carte__corps>*{margin:0}
.mb-section--ciel .mb-carte{border-color:transparent}
.mb-etapes4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--mb-espace-3);margin:0;padding:0;list-style:none;counter-reset:mbetape}
.mb-etapes4--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mb-etapes4--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.mb-etapes4 li{counter-increment:mbetape}
.mb-etapes4 li::before{content:counter(mbetape);display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:14px;border-radius:999px;background:var(--mb-bleu-bertin);color:#fff;font-weight:800}
.mb-etapes4 h3{margin:0 0 8px;font-size:19px;line-height:1.25;font-weight:800}
.mb-etapes4 p{margin:0;font-size:15px;color:var(--mb-encre-douce)}
.mb-faq{max-width:860px}
.mb-faq details{border-top:1.5px solid var(--mb-ligne)}
.mb-faq details:last-child{border-bottom:1.5px solid var(--mb-ligne)}
.mb-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:12px 0;font-size:17px;font-weight:800;cursor:pointer;list-style:none}
.mb-faq summary::-webkit-details-marker{display:none}
.mb-faq summary::after{content:"+";flex:none;font-size:24px;font-weight:600;color:var(--mb-bleu-bertin)}
.mb-faq details[open] summary::after{content:"−"}
.mb-faq details p{margin:0 0 20px;color:var(--mb-encre-douce)}
.mb-logos{display:flex;flex-wrap:wrap;align-items:center;gap:20px 40px}
.mb-logos img{height:34px;width:auto!important;max-width:150px;object-fit:contain}
.mb-logos__titre{margin:0 0 var(--mb-espace-3);font-size:13px;font-weight:700;color:var(--mb-encre-douce)}
.mb-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--mb-espace-5);align-items:center}
.mb-split--photo-gauche>:first-child{order:2}
.mb-showroom{display:flex;flex-direction:column;gap:10px}
.mb-showroom>*{margin:0}
.mb-showroom .mb-photo-vide,.mb-showroom img{aspect-ratio:4/3;min-height:0;border-radius:var(--mb-rayon-photo);width:100%;object-fit:cover}
.mb-showroom__nom{font-size:22px;font-weight:800;letter-spacing:-.02em}
.mb-liste-coche{margin:0;padding:0;list-style:none}
.mb-liste-coche li{position:relative;padding:6px 0 6px 30px}
.mb-liste-coche li::before{content:"";position:absolute;left:0;top:13px;width:16px;height:9px;border-left:2.5px solid var(--mb-bleu-bertin);border-bottom:2.5px solid var(--mb-bleu-bertin);transform:rotate(-45deg)}
.mb-remise{font-size:96px;line-height:1;font-weight:800;letter-spacing:-.05em}
.mb-meta{font-size:14px;font-weight:600;color:var(--mb-encre-douce)}
.mb-article-entete{padding:var(--mb-espace-5) 0 var(--mb-espace-3)}
.mb-article-entete>*+*{margin-top:var(--mb-espace-2)}
.mb-article-photo{margin:0 0 var(--mb-espace-4)}
.mb-article-photo img,.mb-article-photo .mb-photo-vide{width:100%;aspect-ratio:16/9;min-height:0;border-radius:var(--mb-rayon-photo);object-fit:cover}
.mb-404{text-align:center}
.mb-404 .mb-chapo{margin:var(--mb-espace-2) auto 0;max-width:600px}
.mb-404 .mb-boutons{justify-content:center}
.mb-boutons{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.mb-legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--mb-espace-5);align-items:start}
.mb-legal__sommaire{position:sticky;top:24px;display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:700}
.mb-legal__sommaire a{display:flex;align-items:center;min-height:36px;color:var(--mb-encre-douce)!important;text-decoration:none}
.mb-legal__sommaire a:hover{color:var(--mb-encre)!important}
.mb-legal section{scroll-margin-top:24px}
@media (max-width:899px){
  .mb-hero-split__grille,.mb-split{grid-template-columns:1fr;gap:var(--mb-espace-4)}
  .mb-split--photo-gauche>:first-child{order:0}
  .mb-hero-split__photo{min-height:300px}
  .mb-cartes--2,.mb-cartes--3,.mb-cartes--4,.mb-etapes4,.mb-etapes4--3,.mb-etapes4--5{grid-template-columns:1fr}
  .mb-legal{grid-template-columns:1fr}.mb-legal__sommaire{position:static}
  .mb-remise{font-size:64px}
}
@media (max-width:599px){.mb-form--court{grid-template-columns:1fr}}

/* 30. Page de campagne : en-tête réduit au logo et au téléphone */
.mb-landing .mb-promo,.mb-landing .mb-nav,.mb-landing .mb-entete__actions .mb-btn,.mb-landing [data-mb-menu-ouvre],.mb-landing .mb-megamenu{display:none!important}
.mb-landing .mb-entete__barre{justify-content:space-between}
@media (max-width:899px){.mb-landing .mb-entete__actions{display:flex}.mb-landing .mb-entete__mobile{display:none}}
.mb-conteneur--etroit.mb-article-entete,.mb-article-entete{max-width:760px}

/* 31. Formulaires Contact Form 7 */
.mb [hidden]{display:none!important}
.wpcf7 form.mb-form,.wpcf7 form.mb-form-etapes{margin:0}
.mb-form .wpcf7-form-control-wrap{display:block;width:100%}
.mb-form .wpcf7-spinner{grid-column:1/-1;justify-self:center;margin:0}
.mb-form input[type=submit]{-webkit-appearance:none;appearance:none}
.mb .mb-form input[type=submit]:hover,.mb .mb-form input[type=submit]:focus,.mb .mb-form-etapes input[type=submit]:hover,.mb .mb-form-etapes input[type=submit]:focus{background:var(--mb-action);color:var(--mb-sur-action);filter:brightness(.95)}
.mb-form .wpcf7-list-item-label{font-weight:500}
.mb-form .wpcf7-radio{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:6px}
.mb-form .wpcf7-radio label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:15px;font-weight:600}
.mb-form .wpcf7-radio input{width:18px;height:18px;accent-color:var(--mb-bleu-bertin)}
.wpcf7 form.mb-form.sent>*:not(.wpcf7-response-output){display:none!important}
.wpcf7 form.sent .wpcf7-response-output{border:1.5px solid var(--mb-bleu-bertin)!important;background:var(--mb-ciel);color:var(--mb-encre);font-weight:700}
.wpcf7 form .wpcf7-response-output{grid-column:1/-1}
.mb-rappel--hero [data-mb-champ-precision],.mb-rappel--hero [data-mb-champ-cp],.mb-rappel--hero .mb-mention{display:none}
.mb-rappel--hero .mb-champ{grid-column:1/-1}
.mb-form--court input[type=submit]{min-height:52px}
.mb-etape{min-width:0;margin:0;padding:0;border:0}
.mb-form--imbrique{margin-top:4px}
.mb-form-etapes .mb-mention{margin-top:12px}
.mb-form-etapes .wpcf7-response-output{margin-top:16px!important;padding:12px 14px!important;border-radius:var(--mb-rayon-champ);font-size:14px}
.mb-form-etapes .mb-etapes__nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.mb-form-etapes .mb-etapes__nav>*{flex:1}
.mb-form-etapes .mb-etapes__nav .mb-btn--contour{flex:0 0 auto}
.mb-form-etapes input[type=submit]{min-height:52px;padding:0 26px;border:0;border-radius:var(--mb-rayon-pilule);background:var(--mb-action);color:var(--mb-sur-action);font:inherit;font-weight:800;cursor:pointer}
.mb-choix-cf7 .wpcf7-checkbox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mb-choix-cf7 .wpcf7-list-item{margin:0}
.mb-choix-cf7 label{position:relative;display:flex;flex-direction:column;gap:8px;height:100%;padding:8px 8px 12px;border:2px solid var(--mb-ligne);border-radius:20px;background:var(--mb-fond);cursor:pointer}
.mb-choix-cf7 .wpcf7-list-item-label{font-size:14px;font-weight:800}
.mb-choix-cf7 label::before{content:"";display:block;aspect-ratio:16/10;border-radius:14px;background:var(--mb-ciel) center/cover no-repeat}
.mb-choix-cf7 .wpcf7-list-item:nth-child(1) label::before{background-image:url(/wp-content/uploads/2026/10/menu-fenetres.webp)}
.mb-choix-cf7 .wpcf7-list-item:nth-child(2) label::before{background-image:url(/wp-content/uploads/2026/10/menu-portes-entree.webp)}
.mb-choix-cf7 .wpcf7-list-item:nth-child(3) label::before{background-image:url(/wp-content/uploads/2026/10/menu-volets.webp)}
.mb-choix-cf7 .wpcf7-list-item:nth-child(4) label::before{background-image:url(/wp-content/uploads/2026/10/menu-portes-garage.webp)}
.mb-choix-cf7 .wpcf7-list-item:nth-child(5) label::before{background-image:url(/wp-content/uploads/2026/10/menu-pergolas-stores.webp)}
.mb-choix-cf7 .wpcf7-list-item:nth-child(6) label::before{background-image:url(/wp-content/uploads/2026/10/menu-portails-clotures.webp)}
.mb-choix-cf7 input{position:absolute;top:16px;right:16px;width:22px;height:22px;margin:0;accent-color:var(--mb-bleu-bertin)}
.mb-choix-cf7 label:has(input:checked){border-color:var(--mb-bleu-bertin);background:var(--mb-ciel)}
@media (max-width:599px){.mb-choix-cf7 .wpcf7-checkbox{grid-template-columns:1fr 1fr}}

/* 32. Fil d'Ariane */
.mb-ariane{padding:12px 0 0;font-size:13px;line-height:1.4;color:var(--mb-encre-douce)}
.mb-ariane a{color:var(--mb-encre-douce)!important;text-decoration:none}
.mb-ariane a:hover{color:var(--mb-encre)!important;text-decoration:underline}
.mb-ariane .breadcrumb_last{color:var(--mb-encre)}
.mb-ariane+.mb-hero-split,.mb-ariane+* .mb-hero-split{padding-top:var(--mb-espace-4)}
/* Hero accueil : l'encart en verre ne déborde plus de la photo quand son texte est long (05/10/2026). */
@media (min-width:900px){.mb-hero__photo{display:flex;align-items:flex-end}.mb-verre{position:relative;left:auto;bottom:auto;margin:var(--mb-espace-4)}}
/* Mosaïque produits de l'accueil en bento, d'après la maquette retenue (05/10/2026). */
.mb-mosaique--bento{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:230px;gap:14px}
.mb-mosaique--bento .mb-tuile--grande{grid-column:span 2;grid-row:span 2}
.mb-mosaique--bento .mb-tuile--large{grid-column:span 2}
@media (max-width:899px){.mb-mosaique--bento{grid-template-columns:1fr 1fr;grid-auto-rows:170px}.mb-mosaique--bento .mb-tuile--grande,.mb-mosaique--bento .mb-tuile--large{grid-column:span 2;grid-row:span 1}}
/* Encadré légal des CGV (garanties légales, article D211-2), 05/10/2026. */
.mb-encart--legal{display:block;background:var(--mb-ciel);color:var(--mb-encre);border:1.5px solid var(--mb-encre)}
.mb-encart--legal p{max-width:none;margin:0 0 10px;font-size:15px;line-height:1.6;font-weight:400}
.mb-encart--legal p:last-child{margin-bottom:0}
/* Photos dans les sections partagées (visuel produit, label, showroom), 05/10/2026. */
.mb-split>figure{margin:0}
.mb-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--mb-rayon-photo)}
.mb-photo--logo{aspect-ratio:auto;width:auto;max-width:320px;height:auto;object-fit:contain;border-radius:0;margin:0 auto}

/* 40. Lot 7 : alignement sur les maquettes validées (05/10/2026) */
/* Encart « Revendeur poseur officiel » posé sur la photo du hero */
.mb-revendeur{display:inline-flex;flex-direction:column;gap:8px;padding:12px 16px;background:var(--mb-verre);-webkit-backdrop-filter:blur(var(--mb-flou-verre));backdrop-filter:blur(var(--mb-flou-verre));border-radius:var(--mb-rayon-champ)}
.mb-revendeur__titre{font-size:12px;font-weight:700;color:var(--mb-encre-douce)}
.mb-revendeur__logos{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px}
.mb-revendeur__logos img{height:28px;width:auto!important;max-width:150px;object-fit:contain}
/* Cartes fabricants avec logo et lien vers l'outil du fabricant */
.mb-carte--marque .mb-carte__surtitre{margin:0;font-size:12px;font-weight:700;color:var(--mb-encre-douce)}
.mb-carte--marque>p:last-child{margin-top:auto}
img.mb-carte__logo{display:block;height:36px;width:auto!important;max-width:180px;object-fit:contain;object-position:left}
.mb-lien--externe::after{content:"";display:inline-block;width:.7em;height:.7em;margin-left:6px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 1h7v7M11 1 1 11' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 1h7v7M11 1 1 11' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
/* Composeur de fenêtre */
.mb-composeur__apercu svg.mb-composeur__svg{max-width:300px}
.mb-composeur__svg[hidden]{display:none}
.mb-composeur__svg .mb-cadre{transition:stroke .2s}
.mb-option--teinte{gap:8px;padding-left:8px}
.mb-pastille{display:inline-block;width:26px;height:26px;border-radius:999px;border:1.5px solid #b9c9d9;flex:none}
/* Schémas explicatifs */
.mb-schema{margin:0;display:flex;flex-direction:column;gap:12px}
.mb-schema svg{width:100%;height:auto;border-radius:var(--mb-rayon-photo);border:1.5px solid var(--mb-ligne)}
.mb-schema figcaption{font-size:13px;color:var(--mb-encre-douce)}
.mb-schema-pose{display:block;width:100%;max-width:340px;height:auto;margin:4px 0 8px;border:1.5px solid var(--mb-ligne);border-radius:20px}
.mb-legende{display:flex;flex-wrap:wrap;gap:8px 20px;margin:20px 0 0;padding:0;list-style:none;font-size:13px;font-weight:600;color:var(--mb-encre-douce)}
.mb-legende li{display:inline-flex;align-items:center;gap:8px}
.mb-legende span{display:inline-block;width:14px;height:14px;border-radius:4px}
/* Bandeau d'appel final (landing) */
.mb-appel{display:flex;align-items:center;justify-content:space-between;gap:var(--mb-espace-3);padding:var(--mb-espace-4);background:var(--mb-ciel);border-radius:var(--mb-rayon-carte)}
.mb-appel .mb-titre-section,.mb-appel .mb-chapo{margin:0}
@media (max-width:899px){.mb-appel{flex-direction:column;align-items:flex-start;padding:var(--mb-espace-3)}}
.mb-landing .mb-pied__grille,.mb-landing .mb-pied__labels{display:none}
/* Nos marques : une famille par bloc, photo en alternance */
.mb-famille{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--mb-espace-4);align-items:start}
.mb-famille--inverse>.mb-famille__photo{order:2}
.mb-famille__photo{position:relative;margin:0;border-radius:var(--mb-rayon-photo);overflow:hidden;aspect-ratio:4/5;background:var(--mb-ciel)}
.mb-famille__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mb-famille__photo figcaption{position:absolute;left:16px;bottom:16px;display:flex;flex-direction:column;gap:2px;padding:12px 16px;background:var(--mb-verre);-webkit-backdrop-filter:blur(var(--mb-flou-verre));backdrop-filter:blur(var(--mb-flou-verre));border-radius:var(--mb-rayon-champ)}
.mb-famille__photo figcaption b{font-size:18px;font-weight:800}
.mb-famille__photo figcaption span{font-size:13px;color:var(--mb-encre-douce)}
.mb-cartes--1{grid-template-columns:1fr}
.mb-marque>p:last-child{margin-top:auto}
@media (max-width:899px){.mb-famille{grid-template-columns:1fr;gap:var(--mb-espace-3)}.mb-famille--inverse>.mb-famille__photo{order:0}.mb-famille__photo{aspect-ratio:16/10}}
/* Qui sommes-nous : chiffres clés, labels, bande de logos */
.mb-chiffres{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:var(--mb-espace-3) 0 0;padding:0;list-style:none}
.mb-chiffres li{padding:14px 16px;background:var(--mb-fond);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-champ);font-size:14px;color:var(--mb-encre-douce)}
.mb-chiffres strong{display:block;font-size:20px;font-weight:800;color:var(--mb-encre)}
.mb-hero-split--page{background:var(--mb-ciel)}
.mb-carte--label img.mb-carte__logo{height:44px}
.mb-carte--label .mb-titre-bloc{margin:0}
.mb-carte--label p{margin:0}
.mb-bande-logos{margin-top:var(--mb-espace-5);padding-top:var(--mb-espace-4);border-top:1.5px solid var(--mb-ligne)}
/* Showrooms : cartes encadrées */
.mb-showroom--cadre{gap:0;background:var(--mb-fond);border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);overflow:hidden}
.mb-showroom--cadre>img{border-radius:0!important}
.mb-showroom__corps{display:flex;flex-direction:column;gap:10px;padding:var(--mb-espace-3)}
.mb-showroom__corps>*{margin:0}
.mb-showroom__tel{font-weight:800;color:var(--mb-encre)!important;text-decoration:none}
.mb-showroom__corps .mb-boutons{align-items:center;margin-top:8px}
/* Offre du moment : produits concernés, conditions */
.mb-carte--offre{text-decoration:none!important;color:var(--mb-encre)!important}
.mb-carte__media{position:relative;display:block}
.mb-carte__media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.mb-pastille-remise{position:absolute;left:14px;top:14px;padding:6px 12px;border-radius:999px;background:var(--mb-action);color:var(--mb-sur-action);font-size:13px;font-weight:800}
.mb-carte--offre:hover .mb-titre-bloc{text-decoration:underline;text-underline-offset:3px}
.mb-section--conditions{padding-top:0}
.mb-section--conditions .mb-titre-bloc{margin:0 0 8px;font-size:16px}
.mb-section--conditions .mb-prose{font-size:13px}

/* 41. Lot 7, corrections après contrôle visuel */
.mb-famille .mb-cartes{grid-template-columns:1fr}
.mb-famille .mb-marque__haut{flex-wrap:wrap}
@media (min-width:900px){.mb-famille__photo{position:sticky;top:110px}}
.mb-badge{background:var(--mb-bleu-pale);color:var(--mb-encre)}
@media (max-width:599px){.mb-revendeur__logos{gap:8px 14px}.mb-revendeur__logos img{height:22px}}

/* 50. Lot 8 : calque maquette (.mq), mise en page reprise des maquettes validées */
.mq{color:#10263B}
.mq a{color:inherit}
.mq .w{max-width:1240px;margin:0 auto;padding:0 40px;box-sizing:border-box}
.mq .g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}
.mq .g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mq .g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.mq .hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}
.mq .lp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:64px;align-items:center}
.mq .tl{list-style:none;margin:0;padding:0}
.mq blockquote:not(.mb-avis){border:0;padding:0;font-style:normal;quotes:none}
.mq blockquote:not(.mb-avis)::before,.mq blockquote:not(.mb-avis)::after{content:none}
.mq figure{margin:0}
.mq h1,.mq h2,.mq h3{color:inherit}
@media (max-width:900px){
  .mq .w{padding:0 20px}
  .mq .g2,.mq .hero,.mq .lp{grid-template-columns:minmax(0,1fr);gap:32px}
  .mq .g3{grid-template-columns:minmax(0,1fr)}
  .mq .g4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .mq .h1{font-size:38px!important}
  .mq .h2{font-size:30px!important}
  .mq .tl li{grid-template-columns:minmax(0,1fr)!important;gap:6px!important}
}
/* Cartes de choix : un seul bouton capsule en bas de carte */
.mb-carte__action{margin-top:auto!important;padding-top:4px}
.mb-carte__action .mb-btn{white-space:nowrap;padding:0 18px;font-size:14px}

/* 51. Lot 8 : gabarits gamme et produit alignés sur les maquettes (GammeFenetres, GammeVolets, ProduitFenetresAlu) */
@media (min-width:900px){
  .mb-hero-split{padding:28px 0 80px}
  .mb-hero-split__grille{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px}
  .mb-hero-split__photo{min-height:0;aspect-ratio:5/6}
}
.mb-hero-split__badges .mb-revendeur{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;width:100%;padding:16px 22px;border-radius:var(--mb-rayon-carte)}
.mb-hero-split__badges .mb-revendeur__titre{font-size:14px;color:var(--mb-encre)}
.mb-hero-split__badges .mb-revendeur__logos{gap:10px 20px}
.mb-hero-split__badges .mb-revendeur__logos img{height:30px}
@media (min-width:600px){
  .mb-hero-split .mb-rappel .mb-form--court{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px;max-width:620px}
  .mb-hero-split .mb-rappel .mb-form--court .mb-champ--large{grid-column:auto}
  .mb-hero-split .mb-rappel .mb-form--court:has([data-mb-champ-precision][hidden]){grid-template-columns:1fr 1fr}
  .mb-hero-split .mb-rappel .mb-form--court input[type=submit],.mb-hero-split .mb-rappel .mb-mention,.mb-hero-split .mb-rappel .wpcf7-response-output{grid-column:1/-1}
}
/* « Bien choisir » : liste numérotée en ligne, schéma dans un cadre ciel */
.mb-split .mb-pile .mb-etapes4{display:flex;flex-direction:column;gap:24px}
.mb-split .mb-pile .mb-etapes4 li{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:16px}
.mb-split .mb-pile .mb-etapes4 li::before{grid-row:1/3;width:34px;height:34px;margin:0;background:var(--mb-action);color:var(--mb-sur-action)}
.mb-split .mb-pile .mb-etapes4 h3{margin:4px 0 6px;font-size:20px}
.mb-split>figure.mb-schema{padding:24px;background:var(--mb-ciel);border-radius:var(--mb-rayon-photo)}
.mb-split>figure.mb-schema svg{border:0}
/* Cartes fabricants */
.mb-carte--marque{gap:14px;padding:40px}
.mb-carte--marque .mb-carte__surtitre{font-size:15px;color:var(--mb-bleu-bertin)}
.mb-carte--marque img.mb-carte__logo{height:52px;max-width:220px}
.mb-carte--marque p{font-size:16px;line-height:1.6;color:var(--mb-encre-douce)}
.mb-cartes--4 .mb-carte--marque{padding:28px}
.mb-cartes--4 .mb-carte--marque img.mb-carte__logo{height:44px}
@media (max-width:899px){.mb-carte--marque{padding:28px}}
/* Cartes de choix avec photo (gammes) */
.mb-cartes--choix .mb-carte--photo{border:0;background:var(--mb-ciel)}
.mb-cartes--choix .mb-carte--photo>img{aspect-ratio:16/10}
.mb-cartes--choix .mb-carte__corps{padding:32px;flex-grow:1}
.mb-cartes--choix .mb-titre-bloc{font-size:30px;letter-spacing:-.035em}
/* Composeur dans une section ciel */
.mb-section--ciel .mb-composeur{padding:0;background:transparent;gap:32px;align-items:stretch}
.mb-composeur__apercu{border-radius:var(--mb-rayon-photo);padding:32px}
.mb-composeur__options .mb-option{min-height:44px;padding:0 16px;font-size:14px;background:#fff}
.mb-option[aria-pressed="true"],.mb .mb-option[aria-pressed="true"]{border-color:var(--mb-encre);background:#fff}
.mb-option.mb-option--teinte{flex-direction:column;justify-content:center;min-width:76px;min-height:0;padding:8px 6px;border-radius:16px;gap:6px;font-size:12px}
.mb-option--teinte .mb-pastille{width:36px;height:36px}
/* Bandeau devis final (maquette) */
.mb-section--appel{padding:88px 0}
.mb-appel-nuit{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.mb-appel-nuit .mb-pile{max-width:680px}
.mb-appel-nuit .mb-titre-section{color:#fff}
.mb-appel-nuit .mb-btn{min-height:54px;padding:0 28px;font-size:16px}
.mb-section--appel a{color:#fff!important;font-weight:700}
/* Rythme vertical et titres de section comme les maquettes */
.mb-section:not(.mb-section--ciel):not(.mb-section--encre)+.mb-section:not(.mb-section--ciel):not(.mb-section--encre){padding-top:0}
.mb-entete-section{max-width:none;margin:0 0 36px}
.mb-entete-section .mb-chapo{max-width:700px}
.mq .ordm{display:contents}
@media (max-width:900px){.mq .ordm{display:block;order:2}}
/* Offre : hero photo et panneau de verre (maquette OffreDuMoment) */
@media (max-width:900px){.mq .mq-offre-hero{min-height:0!important;flex-direction:column;align-items:stretch!important}.mq .mq-offre-hero>img{position:relative!important;height:260px!important}.mq .mq-offre-panneau{margin:0!important;border-radius:0!important;padding:24px!important;background:#fff!important}.mq .mq-remise{font-size:64px!important}.mq .mq-offre-hero .h1{font-size:30px!important}}
/* Formulaires sur fond nuit : carte blanche (maquettes Showrooms, Offre) */
.mb-section--encre .mb-grille--2>[data-contexte]{background:#fff;color:var(--mb-encre);border-radius:var(--mb-rayon-carte);padding:32px}
.mb-section--encre .mb-grille--2>[data-contexte] .mb-form .mb-champ{color:var(--mb-encre)}
.mb-section--encre .mb-grille--2>[data-contexte] .mb-consentement,.mb-section--encre .mb-grille--2>[data-contexte] .mb-mention{color:var(--mb-encre-douce)}
.mb-section--encre .mb-grille--2>[data-contexte] .mb-mention a{color:var(--mb-encre)!important}
.mb-section--encre .mb-grille--2{align-items:start}
/* En-têtes simples : fond blanc comme les maquettes */
.mb-hero-simple{background:#fff;padding:28px 0 40px}
/* Showrooms : photo plus basse, itinéraire en capsule */
.mb-showroom--cadre>img{aspect-ratio:16/10!important}
.mb-showroom__nom{font-size:30px}
.mb-showroom__corps .mb-lien--externe{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1.5px solid var(--mb-encre);border-radius:999px;color:var(--mb-encre)!important;text-decoration:none}
/* Landing : hero photo plein cadre (maquette LandingFenetres) */
.mq-lp-form .mb-form--court{padding:0;border:0;box-shadow:none;grid-template-columns:1fr 1fr}
.mq-lp-form .mb-form--court .mb-champ--large,.mq-lp-form .mb-form--court input[type=submit],.mq-lp-form .mb-mention,.mq-lp-form .wpcf7-response-output{grid-column:1/-1}
@media (max-width:900px){.mq .mq-lp-hero .w{padding-top:24px!important;padding-bottom:24px!important}.mq .mq-lp-hero .h1{font-size:34px!important}}
@media (max-width:599px){.mq-lp-form .mb-form--court{grid-template-columns:1fr}}
.mb-appel{background:var(--mb-encre);color:#fff;padding:40px 48px}
.mb-appel .mb-titre-section{color:#fff}
.mb-appel .mb-chapo{color:var(--mb-nuit-pale)}
/* Demande de devis : formulaire et colonne d'appui (maquette DemandeDevis) */
@media (max-width:900px){.mq .mq-devis{grid-template-columns:minmax(0,1fr)!important}}
/* Pages légales : sommaire en encadré, sections séparées (maquette PageLegale) */
.mb-legal__sommaire{padding:20px;background:var(--mb-ciel);border-radius:var(--mb-rayon-carte);font-weight:600}
.mb-legal__sommaire::before{content:"Sommaire";font-size:14px;font-weight:800;color:var(--mb-encre);margin-bottom:6px}
.mb-legal .mb-prose>section{padding:24px 0;border-top:1.5px solid var(--mb-ligne)}
.mb-legal .mb-prose>section:first-child{padding-top:0;border-top:0}
.mb-legal .mb-prose>section h2{margin-top:0}
/* Accueil : section devis sur fond bleu Bertin (maquette FinaleV1) */
.mb-section--bleu{background:var(--mb-bleu-bertin)}
.mb-section--bleu .mb-chapo,.mb-section--bleu .mb-texte{color:#fff}
/* 52. Visuels provisoires (décision d'Amadou du 05/10 : visuels étiquetés en attendant les vraies photos) */
.mb-carte--provisoire{position:relative}
.mb-badge-photo{position:absolute;left:14px;top:14px;padding:6px 12px;border-radius:999px;background:var(--mb-verre);-webkit-backdrop-filter:blur(var(--mb-flou-verre));backdrop-filter:blur(var(--mb-flou-verre));font-size:12px;font-weight:700;color:var(--mb-encre)}
/* Réalisations : filtres et bascule avant/après */
.mq [data-mb-choix] button[aria-pressed="true"]{border-color:#1668A9!important;background:#EEF5FB!important}
.mq .mq-bascule{min-height:44px;padding:0 20px;border:0;border-radius:999px;background:#fff;color:#10263B;font:inherit;font-weight:700;cursor:pointer}
.mq [data-mb-choix] .mq-bascule[aria-pressed="true"]{background:#10263B!important;color:#fff!important}
.mq [data-vue][hidden]{display:none}
.mq [data-cat][hidden]{display:none!important}
/* 53. Avis Google (widget Trustindex) et bande des marques partenaires (Showrooms) */
.mb-avis-google{margin-top:8px}
.mb-avis-google--etroit{padding:16px;background:#fff;border:1.5px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);overflow:hidden}
.mb-bande-partenaires{padding:40px;background:var(--mb-ciel);border-radius:var(--mb-rayon-carte);text-align:center}
.mb-bande-partenaires .mb-logos{justify-content:center;gap:28px 44px}
.mb-bande-partenaires .mb-logos__titre{font-size:15px}
@media (max-width:599px){.mb-bande-partenaires{padding:24px}}
/* Showrooms : plan d'accès statique (OpenStreetMap, image hébergée sur le site) */
.mb-showroom__carte{margin:6px 0 0;position:relative;border-radius:var(--mb-rayon-champ);overflow:hidden;border:1.5px solid var(--mb-ligne)}
.mb-showroom__carte>img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.mb-showroom__carte figcaption{position:absolute;right:0;bottom:0;padding:2px 8px;background:rgba(255,255,255,.85);font-size:11px;color:var(--mb-encre-douce)}
.mb-showroom__carte figcaption a{color:inherit!important}
/* Cartes des showrooms : Leaflet et marqueur Bertin (remplace le plan statique, gardé en secours sans JavaScript) */
.mb-carte-osm{height:300px;z-index:0;background:var(--mb-ciel)}
.mb-carte-osm>img{width:100%;height:100%;object-fit:cover}
.mb-carte-osm .leaflet-control-attribution{font-size:10px}
.mb-tuiles--osmfr{filter:saturate(.6)}
.mb-pin{background:none;border:0}
.mb-pin__corps{position:relative;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--mb-bleu-bertin);box-shadow:0 6px 16px rgba(16,38,59,.35)}
.mb-pin__corps img{width:36px;height:36px;border-radius:50%;transform:rotate(45deg);background:#fff;padding:3px;box-sizing:border-box}
.leaflet-tooltip.mb-pin__etiquette{padding:8px 12px;border:0;border-radius:12px;background:var(--mb-encre);color:#fff;font:600 13px/1.35 var(--mb-font);box-shadow:0 6px 16px rgba(16,38,59,.25)}
.leaflet-tooltip.mb-pin__etiquette::before{border-top-color:var(--mb-encre)}
.leaflet-tooltip.mb-pin__etiquette strong{font-weight:800}
@media (max-width:599px){.mb-carte-osm{height:260px}}
.mb-showroom .mb-carte-osm img{aspect-ratio:auto;min-height:0;border-radius:0;width:auto;object-fit:initial}
.mb-showroom .mb-carte-osm>img{width:100%;height:100%;object-fit:cover}
.mb-showroom .mb-carte-osm .mb-pin__corps img{width:36px;height:36px;border-radius:50%}
/* Repères autour des showrooms (enseignes voisines) */
.mb-repere{background:none;border:0;display:flex;align-items:center;gap:6px;white-space:nowrap}
.mb-repere__point{flex:none;width:14px;height:14px;border-radius:50%;background:#fff;border:4px solid var(--mb-encre-douce);box-sizing:border-box;box-shadow:0 1px 4px rgba(16,38,59,.3)}
.mb-repere__nom{padding:3px 8px;border-radius:999px;background:rgba(255,255,255,.92);font:700 12px/1.2 var(--mb-font);color:var(--mb-encre);box-shadow:0 1px 4px rgba(16,38,59,.18)}
.mb-repere__point{display:block}
.mb-repere__in{display:flex;align-items:center;gap:6px}
.mb-repere__in--gauche{flex-direction:row-reverse;transform:translateX(calc(-100% + 14px))}
@media (max-width:599px){.mb-repere__in--secondaire{display:none}}
/* Carte unique des deux showrooms */
.mb-carte-showrooms{margin-top:var(--mb-espace-4)}
.mb-carte-showrooms__entete{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.mb-carte-showrooms__entete .mb-titre-bloc{margin:0}
.mb-carte-showrooms__entete button.mb-lien{background:none;border:0;padding:0;font:inherit;font-weight:700;cursor:pointer}
.mb-carte-osm--grande{height:460px;border-radius:var(--mb-rayon-carte);border:1.5px solid var(--mb-ligne);overflow:hidden}
.mb-carte-osm__secours{margin:0;padding:24px}
@media (max-width:599px){.mb-carte-osm--grande{height:380px}}
@media (max-width:599px){.mb-carte-osm--grande .mb-pin__adr{display:none}}
/* Lien Itinéraire dans l'étiquette des marqueurs (05/10/2026) */
.leaflet-tooltip.mb-pin__etiquette{pointer-events:auto}
.mb-pin__iti{display:flex;width:max-content;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:999px;background:#fff;color:var(--mb-encre)!important;font:700 12px/1.3 var(--mb-font);text-decoration:none!important;white-space:nowrap}
.mb-pin__iti::after{content:"";width:.7em;height:.7em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 1h7v7M11 1 1 11' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M4 1h7v7M11 1 1 11' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") center/contain no-repeat}
.mb-pin__iti:hover,.mb-pin__iti:focus-visible{background:var(--mb-ciel)}
@media (max-width:599px){.mb-carte-osm--grande .mb-pin__iti{display:none}.mb-carte-osm--grande .mb-pin__etiquette.is-ouvert .mb-pin__adr{display:inline}.mb-carte-osm--grande .mb-pin__etiquette.is-ouvert .mb-pin__iti{display:flex}}

/* v30 : H1 accueil en deux niveaux (hors Design System, demande Amadou 09/10) */
.mb-titre-hero__sous{display:block;font-size:26px;line-height:1.25;font-weight:600;letter-spacing:-.01em;margin-top:14px;color:inherit}
@media (max-width:899px){.mb-titre-hero__sous{font-size:20px;margin-top:10px}}

/* 54. Demande de devis, version B (maquette DevisV2B, demande d'Amadou du 12/10/2026) */
.mb-devis-hero{background:var(--mb-ciel);padding:40px 0 160px;text-align:center}
.mb-devis-hero .mb-conteneur{max-width:900px}
.mb-devis-hero .mb-titre-hero{margin:0;font-size:50px;line-height:1.06;text-wrap:balance}
.mb-devis-hero .mb-chapo{max-width:720px;margin:16px auto 0}
.mb-devis-hero__pastille{display:inline-flex;margin:0 0 18px;padding:8px 16px;background:#fff;border-radius:var(--mb-rayon-pilule);font-size:14px;font-weight:700;color:var(--mb-encre)}
.mb-devis-hero__preuves{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px 28px;margin:24px 0 0;padding:0;list-style:none;font-size:15px}
.mb-devis-hero__preuves li{display:inline-flex;align-items:center;gap:10px}
.mb-devis-hero__preuves a{font-weight:700;color:var(--mb-bleu-bertin)}
.mb-devis-carte{position:relative;z-index:2;max-width:920px;margin:-120px auto 0}
.mb-section--serre{padding-bottom:0}
.mb-section-etroite .mb-conteneur{max-width:760px}
.mb-section-etroite .mb-titre-section{margin:0 0 32px}
.mb-frise-v{position:relative;margin:0;padding:0;list-style:none;counter-reset:mbfrise}
.mb-frise-v::before{content:"";position:absolute;left:27px;top:28px;bottom:28px;width:2px;background:var(--mb-ligne)}
.mb-frise-v li{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;padding-bottom:32px;counter-increment:mbfrise}
.mb-frise-v li:last-child{padding-bottom:0}
.mb-frise-v li::before{content:counter(mbfrise);position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:56px;height:56px;box-sizing:border-box;border-radius:var(--mb-rayon-pilule);background:#fff;border:2px solid var(--mb-bleu-bertin);color:var(--mb-bleu-bertin);font-weight:800;font-size:18px}
.mb-frise-v h3{margin:12px 0 6px;font-size:20px;line-height:1.25;font-weight:800}
.mb-frise-v p{margin:0;font-size:16px;line-height:1.6;color:var(--mb-encre-douce)}
.mb-photo-panneau{position:relative;min-height:380px;border-radius:var(--mb-rayon-photo);overflow:hidden}
.mb-photo-panneau>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mb-photo-panneau .mb-verre{left:28px;bottom:28px;max-width:560px}
.mb-photo-panneau .mb-titre-bloc{margin:0 0 8px}
.mb-photo-panneau__action{margin:18px 0 0}
.mb-appel-carte{display:flex;justify-content:space-between;align-items:center;gap:24px 40px;flex-wrap:wrap;padding:44px 48px;background:var(--mb-encre);color:#fff;border-radius:var(--mb-rayon-carte)}
.mb-appel-carte__intro{margin:0 0 6px;font-size:17px;color:var(--mb-nuit-pale)}
.mb-appel-carte__tel{font-size:40px;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:#fff;text-decoration:none}
.mb-appel-carte__tel:hover,.mb-appel-carte__tel:focus-visible{color:#fff;text-decoration:underline}
.mb-appel-carte__horaires{margin:6px 0 0;font-size:15px;color:var(--mb-nuit-pale)}
.mb-appel-carte__actions{display:flex;flex-wrap:wrap;gap:12px}
.mb-btn--blanc{background:#fff;color:var(--mb-encre)}
.mb-btn--blanc:hover,.mb-btn--blanc:focus-visible{background:var(--mb-ciel);color:var(--mb-encre)}
@media (max-width:899px){
.mb-devis-hero{padding:28px 0 110px}
.mb-devis-hero .mb-titre-hero{font-size:34px}
.mb-devis-carte{margin-top:-80px}
.mb-photo-panneau{min-height:0;display:flex;flex-direction:column}
.mb-photo-panneau>img{position:relative;height:240px}
.mb-photo-panneau .mb-verre{position:relative;left:auto;bottom:auto;margin:-40px 12px 12px}
.mb-appel-carte{padding:28px 24px}
.mb-appel-carte__tel{font-size:30px}
}

/* v35 : texte du bouton blanc invisible sur fond blanc (mesuré : color #fff) */
.mb .mb-btn--blanc{color:var(--mb-encre)!important}

/* v37 : landing alignée sur la maquette « Landing page publicitaire Fenêtres » (design) */
.mb-pied__adresse{display:none}
.mb-landing .mb-entete__tel{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border:1.5px solid var(--mb-encre);border-radius:var(--mb-rayon-pilule);color:var(--mb-encre)!important;font-weight:700}
.mb-landing .mb-pied{background:var(--mb-fond);color:var(--mb-encre-douce);padding:0;border-top:1px solid var(--mb-ligne)}
.mb-landing .mb-pied__legal{border-top:0;padding:20px 0}
.mb-landing .mb-pied__legal a{color:var(--mb-encre-douce)!important}
.mb-landing .mb-pied__copyright{display:none}
.mb-landing .mb-pied__adresse{display:inline}
.mb-landing .mb-appel .mb-btn{white-space:nowrap}
.mq-lp-form .wpcf7-form.init .wpcf7-response-output{display:none}

/* v41 : tableaux de la page MaPrimeRénov' (page simple, hors maquette, demande Amadou 12/10) */
.mb-tableau-wrap{overflow-x:auto;margin:0 0 var(--mb-espace-2)}
.mb-tableau{width:100%;min-width:560px;border-collapse:collapse;background:var(--mb-fond);font-size:15px;line-height:1.45}
.mb-tableau th,.mb-tableau td{padding:12px 14px;border-bottom:1px solid var(--mb-ligne);text-align:left;vertical-align:top}
.mb-tableau thead th{background:var(--mb-ciel);font-weight:800;color:var(--mb-encre)}
.mb-tableau tbody th{font-weight:700;color:var(--mb-encre)}
.mb-mpr-source{font-size:14px;margin:12px 0 24px}

/* v43 : encart RGE de la page MaPrimeRénov' (demande Amadou 12/10) */
.mb-rge-encart{display:flex;gap:20px;align-items:flex-start;max-width:860px;margin:28px 0 0;padding:20px 24px;background:var(--mb-fond);border:2px solid var(--mb-bleu-bertin);border-radius:var(--mb-rayon-carte)}
.mb-rge-encart img{flex:none;width:57px;height:auto}
.mb-rge-encart p{margin:0;font-size:15px;line-height:1.55;color:var(--mb-encre)}
.mb-rge-encart p.mb-rge-encart__titre{margin:0 0 6px;font-size:19px;line-height:1.25;font-weight:800}
.mb-rge-encart a{color:var(--mb-bleu-bertin);font-weight:600}

/* v44 : mention obligatoire crédit (Code de la consommation), page Financement */
.mb-mention-credit{max-width:760px;margin:0 0 24px;padding:14px 18px;border-left:4px solid var(--mb-encre);background:var(--mb-ciel);font-size:18px;line-height:1.5;font-weight:700;color:var(--mb-encre)}

/* v45 : menu à 6 entrées (MaPrimeRénov et Financement après Showrooms), resserré sous 1280 px (mesuré : débord de 26 px à 1024 px) */
@media (max-width:1279px){.mb-nav{font-size:14px;gap:2px}.mb-nav__item{padding:0 9px}.mb-entete__barre{gap:12px}.mb-entete__actions{gap:12px}}
@media (max-width:1099px){body:not(.mb-landing) .mb-entete__tel{display:none}}

/* v46 : aucune entrée du menu ni bouton d en-tête sur deux lignes (retour Amadou, capture à 1310 px) */
.mb-nav__item,.mb-entete__actions .mb-btn,.mb-entete__tel{white-space:nowrap;flex-shrink:0}
@media (min-width:1280px) and (max-width:1439px){.mb-nav{font-size:14px;gap:2px}.mb-nav__item{padding:0 10px}.mb-entete__barre{gap:14px}}
/* v47 : logo d en-tête déformé (rétréci par le flex après v46) */
.mb-entete__logo{flex-shrink:0;display:inline-flex}
.mb-entete__logo img{max-width:none;flex-shrink:0}
/* v47 bis : sans rétrécissement du logo, le menu ne tient pas sous 1100 px (mesuré : 129 px de trop à 900 px) : menu mobile de 900 à 1099 px, téléphone masqué jusqu à 1279 px, menu resserré au-delà de 1440 px */
@media (min-width:900px) and (max-width:1099px){body:not(.mb-landing) .mb-nav,body:not(.mb-landing) .mb-entete__actions,.mb-megamenu{display:none}body:not(.mb-landing) .mb-entete__mobile{display:flex}}
@media (min-width:1100px) and (max-width:1279px){body:not(.mb-landing) .mb-entete__tel{display:none}}
@media (min-width:1440px){.mb-nav{font-size:14px;gap:2px}.mb-nav__item{padding:0 10px}.mb-entete__barre{gap:14px}}

/* v48 : photo de marque dans le bloc « ce que ça change pour vous » (photos du site actuel, demande Amadou 12/10) */
.mb-photo--marque{display:block;width:100%;height:auto;max-height:560px;aspect-ratio:4/5;object-fit:cover;border-radius:var(--mb-rayon-photo)}
@media (max-width:899px){.mb-photo--marque{aspect-ratio:4/3;max-height:420px}}

/* v52 : mention France Rénov obligatoire dans le pied de page (décision Amadou 12/10) */
.mb-pied__france-renov{margin:0;padding:18px 0 14px;font-size:13px;line-height:1.5;color:var(--mb-nuit-pale)}
.mb-pied__france-renov a{color:#fff!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.mb-landing .mb-pied__france-renov{padding:16px 0 0;color:var(--mb-encre-douce)}
.mb-landing .mb-pied__france-renov a{color:var(--mb-encre)!important}

/* v54 : cartes à photo, bouton aligné en bas de carte */
.mb-cartes .mb-carte--photo{display:flex;flex-direction:column}
.mb-carte--photo .mb-carte__corps .mb-carte__action{margin-top:auto;padding-top:8px}
.mb-cartes .mb-carte--photo>.mb-carte__corps{flex:1 1 auto}
/* v55 : mention France Rénov à droite du label RGE, sur la même ligne (demande Amadou) */
.mb-pied__labels .mb-pied__france-renov{margin:0 0 0 auto;padding:0;max-width:600px;text-align:right}
@media (max-width:899px){.mb-pied__labels .mb-pied__france-renov{margin:0;max-width:none;text-align:left}}
.mb-landing .mb-pied__labels{display:flex;margin-top:0;padding:16px 0 0;border-top:0}
.mb-landing .mb-pied__labels>img,.mb-landing .mb-pied__labels>span{display:none}
.mb-landing .mb-pied__labels .mb-pied__france-renov{margin:0;text-align:left;max-width:none}

/* Couleur d'action verte et bloc offre sur fond vert, bouton bleu nuit (décision du 22/10/2026) */
.mb-offre{background:var(--mb-action);color:var(--mb-encre)}
.mb-offre__surtitre,.mb-offre__desc{color:#2b4057}
.mb-offre .mb-btn--action,.mb .mb-offre .mb-btn--action:hover,.mb .mb-offre .mb-btn--action:focus{background:var(--mb-encre);color:#fff!important}

/* v48 : logo vertical dans l'en-tête (demande de David, 23/10/2026) */
.mb-entete__barre{height:96px}
.mb-entete__logo img{height:80px;width:auto}
@media (max-width:1099px){.mb-entete__barre{height:76px}.mb-entete__logo img{height:60px}}

/* v49 : encart France Rénov' obligatoire (visuel officiel 700 x 150 px, pleine largeur sur mobile) */
.mb-france-renov-zone{padding-top:28px;padding-bottom:4px}
.mb-france-renov-encart{max-width:700px;margin:0 auto}
.mb-france-renov-encart a,.mb-france-renov-encart img{display:block;width:100%;height:auto}
.mb-france-renov-encart a:focus-visible{outline:3px solid #1668A9;outline-offset:3px}
.entry-content > .mb-france-renov-encart:first-child{margin:0 0 28px}
.mb-france-renov-encart img{border-radius:0!important;box-shadow:none!important;margin:0!important}
.mb-france-renov .mb-france-renov-encart,.mb-section .mb-pile > .mb-france-renov-encart,.mb-section .mb-boutons + .mb-france-renov-encart{margin:24px 0 0;max-width:700px}

/* 55. Lot 21 : pages d'atterrissage des offres (gabarit maquette OffreDuMoment, 26/10/2026) */
.mq .mq-remise{margin:0;font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:-.035em;font-size:clamp(56px,8vw,96px);line-height:.95;color:var(--mb-encre)}
.mq .mq-remise--texte{font-size:clamp(40px,5.5vw,66px)}
.mq .mq-remise__prefixe{display:block;font-size:.3em;letter-spacing:0;color:#4D6073}
.mb-carte--offre .mb-carte__corps h3{font-size:19px}
.mb-cartes>.mb-pile{gap:10px;justify-content:flex-start}
.mb-cartes>.mb-pile .mb-form--court{grid-template-columns:1fr}
.mb-cartes>.mb-pile .mb-form--court .mb-champ--large{grid-column:auto}
@media (max-width:900px){.mq .mq-remise{font-size:clamp(44px,13vw,64px)!important}.mq .mq-remise--texte{font-size:clamp(36px,10vw,52px)!important}}

/* 56. Accueil : trois offres en cartes (lot 22, 27/10/2026, demande d'Amadou, hors maquette) */
.mb-offres-accueil__panneau{position:relative;overflow:hidden;padding:56px 48px 40px;border-radius:32px;background:var(--mb-action);color:var(--mb-encre)}
.mb-offres-accueil__panneau::before{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.45),rgba(255,255,255,0) 70%);pointer-events:none}
.mb-offres-accueil__entete{position:relative;max-width:640px;margin-bottom:36px}
.mb-offres-accueil__surtitre{display:inline-block;margin:0 0 14px;padding:6px 12px;border-radius:999px;background:var(--mb-encre);color:#fff;font-size:13px;font-weight:700}
.mb-offres-accueil .mb-titre-section{margin:0 0 10px;color:var(--mb-encre)}
.mb-offres-accueil__chapo{margin:0;font-size:17px;line-height:1.6;color:#2b4057}
.mb-offres-accueil__grille{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mb-offre-carte{display:flex;flex-direction:column;overflow:hidden;border-radius:22px;background:#fff;color:var(--mb-encre)!important;text-decoration:none!important;box-shadow:0 14px 34px rgba(16,38,59,.16);transition:transform .25s ease,box-shadow .25s ease}
.mb-offre-carte:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(16,38,59,.24)}
.mb-offre-carte:focus-visible{outline:3px solid var(--mb-encre);outline-offset:4px}
.mb-offre-carte__media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden}
.mb-offre-carte__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mb-offre-carte:hover .mb-offre-carte__media img{transform:scale(1.05)}
.mb-offre-carte__date{position:absolute;left:14px;bottom:14px;padding:6px 12px;border-radius:999px;background:var(--mb-encre);color:#fff;font-size:12px;font-weight:700}
.mb-offre-carte__corps{display:flex;flex-direction:column;gap:8px;flex:1;padding:22px 24px 24px}
.mb-offre-carte__logo{display:block;height:28px;width:auto!important;max-width:160px;object-fit:contain;object-position:left;margin-bottom:6px}
.mb-offre-carte__remise{font-family:'Manrope',sans-serif;font-weight:800;font-size:44px;line-height:1;letter-spacing:-.035em}
.mb-offre-carte__remise small{display:block;margin-bottom:4px;font-size:14px;letter-spacing:0;font-weight:700;color:#4D6073}
.mb-offre-carte__titre{font-size:18px;line-height:1.3;font-weight:800}
.mb-offre-carte__detail{font-size:14px;color:#4D6073}
.mb-offre-carte__cta{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:auto;padding:12px 20px;border-radius:999px;background:var(--mb-encre);color:#fff;font-size:15px;font-weight:800;transition:gap .2s ease}
.mb-offre-carte:hover .mb-offre-carte__cta{gap:12px}
.mb-offres-accueil__note{position:relative;margin:24px 0 0;font-size:13px;color:#2b4057}
@media (max-width:999px){.mb-offres-accueil__panneau{padding:40px 24px 28px;border-radius:24px}.mb-offre-carte__remise{font-size:38px}}
@media (max-width:759px){.mb-offres-accueil__grille{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;margin:0 -24px;padding-left:24px;padding-right:24px;scroll-padding-left:24px}.mb-offre-carte{scroll-snap-align:start}}
@media (prefers-reduced-motion:reduce){.mb-offre-carte,.mb-offre-carte__media img,.mb-offre-carte__cta{transition:none}.mb-offre-carte:hover{transform:none}.mb-offre-carte:hover .mb-offre-carte__media img{transform:none}}
.mb .mb-offre-carte img.mb-offre-carte__logo{height:26px!important;width:auto!important;max-width:150px!important}
.mb-offre-carte__remise--texte{font-size:34px}
.mb-offres-accueil__panneau{padding:0;border-radius:0;background:none;overflow:visible}
.mb-offres-accueil__panneau::before{content:none}
.mb-offres-accueil__entete{max-width:none;margin-bottom:28px}
.mb-offres-accueil .mb-titre-section{margin:0}
.mb-offre-carte{border:1.5px solid var(--mb-ligne);box-shadow:0 10px 28px rgba(16,38,59,.08)}
.mb-offre-carte:hover{box-shadow:0 18px 40px rgba(16,38,59,.16)}
@media (max-width:999px){.mb-offres-accueil__panneau{padding:0}}

/* Page MaPrimeRénov' : logo officiel en version enrichie près du texte d'introduction, encart France Rénov' dessous (charte France Rénov' acteurs privés, p. 15, 17, 25, 26 ; décision B d'Amadou, 27/10/2026) */
.mb-mpr-intro{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:40px;align-items:center}
.mb-mpr-logo{margin:0}
.mb-mpr-logo img{display:block;width:260px;height:auto}
.mb-hero-simple .mb-france-renov-encart{margin:28px 0 0}
@media (max-width:760px){
.mb-mpr-intro{grid-template-columns:1fr;gap:20px}
.mb-mpr-logo img{width:220px;margin:0 auto}
.mb-hero-simple .mb-france-renov-encart{max-width:none}
.mb-hero-simple .mb-france-renov-encart img{width:100%;height:auto}
}
.mb-hero-simple .mb-france-renov-encart + .mb-boutons{margin-top:24px}

/* 60. Carte produit unique d'une page d'offre, prix et pastilles (lot 27, 28/10/2026, demande d'Amadou, hors maquette) */
.mb-carte--duo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:stretch}
.mb-carte--duo .mb-carte__media img{height:100%;aspect-ratio:auto;min-height:320px}
.mb-carte--duo .mb-carte__corps{justify-content:center;gap:12px}
.mb-prix-offre{font-size:20px;line-height:1.35;font-weight:800;color:var(--mb-encre)}
.mb-prix-offre s{font-weight:600;color:var(--mb-encre-douce)}
.mb-carte__corps .mb-puces{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.mb-puces>span{padding:6px 12px;border-radius:999px;background:var(--mb-ciel);border:1px solid var(--mb-ligne);color:var(--mb-encre);font-size:13px;font-weight:700;line-height:1.3}
@media (max-width:899px){.mb-carte--duo{grid-template-columns:1fr}.mb-carte--duo .mb-carte__media img{height:auto;aspect-ratio:4/3;min-height:0}}

/* 61. Page d'offre en landing : offre et formulaire, réassurance, cartes horizontales, bande newsletter (lot 28, 28/10/2026, maquette validée par Amadou, hors gabarit OffreDuMoment) */
.mb-section--offre-form{padding-bottom:var(--mb-espace-4)}
.mb-offre-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--mb-espace-4);align-items:stretch}
.mb-offre-form__visuel{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:var(--mb-espace-4);background:var(--mb-ciel);border-radius:var(--mb-rayon-carte)}
.mb-offre-form__visuel img{display:block;width:100%;height:auto;border-radius:var(--mb-rayon-champ);background:#fff}
.mb-offre-form__produit{margin:0;font-size:22px;line-height:1.25;font-weight:800;letter-spacing:-.02em;color:var(--mb-encre)}
.mb-prix-bloc{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding:22px 26px;background:var(--mb-encre);color:#fff;border-radius:var(--mb-rayon-carte)}
.mb-prix-bloc__qte{padding:6px 14px;border-radius:var(--mb-rayon-pilule);background:var(--mb-action);color:var(--mb-sur-action);font-size:14px;font-weight:800}
.mb-prix-bloc__prix{font-size:44px;line-height:1;font-weight:800;letter-spacing:-.035em}
.mb-prix-bloc__barre{font-size:16px;color:var(--mb-nuit-pale)}
.mb-offre-form__form{display:flex;flex-direction:column;gap:16px;padding:var(--mb-espace-4);background:var(--mb-fond);border:1px solid var(--mb-ligne);border-radius:var(--mb-rayon-carte);box-shadow:0 12px 40px rgba(16,38,59,.14)}
.mb-offre-form__form>*{margin:0}
.mb-offre-form__form .mb-form{grid-template-columns:1fr}
.mb-section--reassurance{padding-top:0;padding-bottom:0}
.mb-reassurance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:32px 36px;list-style:none;background:var(--mb-ciel);border-radius:var(--mb-rayon-carte)}
.mb-reassurance li{display:flex;gap:14px;align-items:flex-start;color:var(--mb-bleu-bertin)}
.mb-reassurance svg{flex:none}
.mb-reassurance span{display:flex;flex-direction:column;gap:2px;font-size:14px;line-height:1.5;color:var(--mb-encre-douce)}
.mb-reassurance strong{font-size:16px;color:var(--mb-encre)}
.mb-section--sans-haut{padding-top:0}
.mb-cartes--horizontales{grid-template-columns:repeat(2,minmax(0,1fr))}
.mb-carte--horizontale{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.mb-carte--horizontale .mb-carte__media img{height:100%;aspect-ratio:auto;min-height:260px}
.mb-carte__logo{height:26px;width:auto;align-self:flex-start}
.mb-section--bande{padding:var(--mb-espace-5) 0}
.mb-bande-newsletter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px 48px;align-items:center}
.mb-bande-newsletter .mb-pile>*{margin:0}
.mb-bande-newsletter .mb-pile>*+*{margin-top:8px}
.mb-section--conditions-large{padding-top:var(--mb-espace-5)}
.mb-section--conditions-large .mb-prose{max-width:none}
@media (max-width:899px){
.mb-offre-form,.mb-bande-newsletter,.mb-cartes--horizontales{grid-template-columns:1fr}
.mb-reassurance{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px}
.mb-prix-bloc__prix{font-size:36px}
.mb-offre-form__visuel,.mb-offre-form__form{padding:var(--mb-espace-3)}
}
@media (max-width:599px){
.mb-reassurance{grid-template-columns:1fr}
.mb-carte--horizontale{grid-template-columns:1fr}
.mb-carte--horizontale .mb-carte__media img{height:auto;aspect-ratio:4/3;min-height:0}
}
.mb-section--reassurance+.mb-section{padding-top:var(--mb-espace-6)!important}
.mb-carte__corps .mb-carte__logo{height:24px!important;width:auto!important;max-width:160px}
@media (max-width:899px){.mb-section.mb-section--offre-form{padding-top:8px}}

/* 62. Accueil : réassurance au format des pages d'offre, bloc des offres sur fond bleu nuit (test, lot 30, 28/10/2026, demande d'Amadou, hors maquette) */
.mb-section.mb-section--reassurance-accueil{padding:var(--mb-espace-5) 0}
.mb-reassurance li>img{flex:none;height:40px;width:auto}
.mb-offres-accueil--nuit .mb-titre-section{color:#fff!important}
.mb-offres-accueil--nuit .mb-offre-carte{border-color:transparent;box-shadow:0 14px 34px rgba(0,0,0,.25)}
.mb-offres-accueil--nuit .mb-offre-carte:focus-visible{outline-color:var(--mb-action)}
@media (max-width:759px){.mb-offres-accueil__grille{margin:0 calc(-1 * var(--mb-gouttiere));padding-left:var(--mb-gouttiere);padding-right:var(--mb-gouttiere);scroll-padding-left:var(--mb-gouttiere)}}

/* 63. Deux colonnes texte et visuel pour éviter une moitié droite vide (lot 31, 28/10/2026, demande d'Amadou) */
.mb-deux-colonnes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--mb-espace-5);align-items:center}
.mb-deux-colonnes .mb-pile>*{margin:0}
.mb-deux-colonnes .mb-pile>*+*{margin-top:var(--mb-espace-3)}
.mb-france-renov-colonne .mb-france-renov-encart{margin:0!important;max-width:none}
@media (max-width:899px){.mb-deux-colonnes{grid-template-columns:1fr;gap:var(--mb-espace-3)}}

/* 64. FAQ centrées, bande d'appel à l'action horizontale (lot 32, 28/10/2026, demande d'Amadou) */
.mb-faq{margin-left:auto;margin-right:auto}
.mb-entete-section:has(+ .mb-faq){max-width:860px;margin-left:auto;margin-right:auto}
.mb-bande-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--mb-espace-3) var(--mb-espace-5);align-items:center}
.mb-bande-cta .mb-pile{max-width:none}
.mb-bande-cta .mb-pile>*{margin:0}
.mb-bande-cta .mb-pile>*+*{margin-top:var(--mb-espace-2)}
.mb-bande-cta .mb-chapo{max-width:760px}
.mb-bande-cta .mb-boutons{margin:0}
@media (max-width:899px){.mb-bande-cta{grid-template-columns:1fr}}

/* 65. Hero photo de la page Nos marques (lot 33, 28/10/2026, demande d'Amadou, hors maquette) */
.mb-hero-marques__grille{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.mb-hero-marques__texte h1{font-size:46px!important;max-width:none!important}
.mb-hero-marques__texte>p{max-width:none!important}
.mb-hero-marques__photo{min-height:520px}
@media (max-width:899px){.mb-hero-marques__grille{grid-template-columns:1fr;gap:28px}.mb-hero-marques__texte h1{font-size:34px!important}.mb-hero-marques__photo{min-height:300px}}

/* 66. Quatrième offre « Coming soon » et surtitre saisonnier (lot 36, 28/10/2026, demande d'Amadou) */
.mb-surtitre-offres{margin:0 0 8px;font-size:16px;font-weight:800;letter-spacing:.01em;color:var(--mb-action)}
.mb-offres-accueil:not(.mb-offres-accueil--nuit) .mb-surtitre-offres{color:var(--mb-bleu-bertin)}
@media (min-width:760px){.mb-offres-accueil__grille--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.mb-offres-accueil__grille--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mb-offre-carte--bientot .mb-offre-carte__remise{font-size:32px}
.mb-cartes--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1099px){.mb-cartes--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.mb-cartes--4{grid-template-columns:1fr}}
.mq-remise.mq-remise--texte{font-size:64px!important}
@media (max-width:899px){.mq-remise.mq-remise--texte{font-size:44px!important}}

/* 57. Encart France Rénov' des pages d'offre (v57, 28/10/2026) */
.mb-section--france-renov .mb-france-renov-encart{max-width:700px;margin:0 auto}

/* 58. Encart Qualibat RGE en carte (Qui sommes-nous, v60, 28/10/2026) */
.mb-rge-encart--carte{max-width:none;margin:0;padding:32px}
.mb-rge-encart--carte h3.mb-rge-encart__titre{margin:0 0 8px;font-size:22px;line-height:1.2;font-weight:800}

/* 59. MaPrimeRénov' : logo et encarts sous le hero photo (v62, 28/10/2026) */
.mb-mpr-aides{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:start}
.mb-mpr-aides .mb-mpr-logo img{width:220px}
.mb-mpr-aides__encarts .mb-france-renov-encart{margin:0;max-width:700px}
.mb-mpr-aides__encarts .mb-rge-encart{margin:24px 0 0}
@media (max-width:768px){.mb-mpr-aides{grid-template-columns:1fr;gap:24px}.mb-mpr-aides .mb-mpr-logo img{width:200px;margin:0}}
.mb-section--mpr-aides{padding-top:48px}

/* 67. Réalisations : cartes cliquables et visionneuse (lot 44, 29/10/2026, option A d'Amadou, hors maquette) */
.mb-real{display:flex;flex-direction:column;gap:14px}
.mb-real[hidden]{display:none}
.mb-real__ouvrir,.mb-real__ouvrir:hover,.mb-real__ouvrir:focus{display:block;width:100%;padding:0;margin:0;border:0;background:none;border-radius:var(--mb-rayon-carte);cursor:zoom-in;color:inherit}
.mb-real__ouvrir img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--mb-rayon-carte)}
.mb-real__ouvrir:hover img{opacity:.9}
.mb-real__ouvrir:focus-visible{outline:3px solid var(--mb-bleu-bertin);outline-offset:3px}
.mb-real__titre{margin:0 0 4px;font-size:20px;font-weight:800;letter-spacing:-.01em}
.mb-real__nb{margin:0;font-size:14px;color:var(--mb-encre-douce)}
html:has(.mb-visio[open]){overflow:hidden}
.mb-visio{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:rgba(10,22,34,.95);color:#fff}
.mb-visio[open]{display:flex;align-items:center;justify-content:center}
.mb-visio::backdrop{background:rgba(10,22,34,.95)}
.mb-visio__cadre{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:calc(100% - 152px);margin:0}
.mb-visio__img{display:block;max-width:100%;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);width:auto;height:auto;border-radius:12px}
.mb-visio__compte{margin:0;font-size:14px;color:var(--mb-bleu-pale)}
.mb-visio__btn,.mb-visio__btn:hover,.mb-visio__btn:focus{position:absolute;display:flex;align-items:center;justify-content:center;width:52px;height:52px;padding:0;margin:0;border:0;border-radius:var(--mb-rayon-pilule);color:#fff;font:400 34px/1 var(--mb-font);cursor:pointer}
.mb-visio__btn{background:rgba(255,255,255,.14)}
.mb-visio__btn:hover,.mb-visio__btn:focus{background:rgba(255,255,255,.3)}
.mb-visio__btn:focus-visible{outline:3px solid var(--mb-action);outline-offset:2px}
.mb-visio__btn[hidden]{display:none}
.mb-visio__fermer{top:16px;top:max(16px,env(safe-area-inset-top));right:16px}
.mb-visio__prec{left:16px;top:50%;transform:translateY(-50%)}
.mb-visio__suiv{right:16px;top:50%;transform:translateY(-50%)}
@media (max-width:599px){
  .mb-visio__cadre{max-width:100%}
  .mb-visio__img{border-radius:0;max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px)}
  .mb-visio__prec,.mb-visio__suiv{top:auto;bottom:24px;bottom:max(24px,env(safe-area-inset-bottom));transform:none}
  .mb-visio__prec{left:calc(50% - 68px)}
  .mb-visio__suiv{right:calc(50% - 68px)}
}

/* 68. Vignettes de chantiers des pages produits (lot 45, 29/10/2026) : la photo ouvre la visionneuse des Réalisations */
.mb-carte--chantier>.mb-real__ouvrir,.mb-carte--chantier>.mb-real__ouvrir:hover,.mb-carte--chantier>.mb-real__ouvrir:focus{border-radius:0}
.mb-carte--chantier>.mb-real__ouvrir img{border-radius:0;aspect-ratio:4/3}
.mb-carte--chantier>.mb-real__ouvrir:focus-visible{outline-offset:-3px}

/* 69. Lot 46 (09/11/2026) : offres de l accueil a deux cartes, centrees (masquage Bubendorff) */
@media (min-width:760px){.mb-offres-accueil__grille--2{grid-template-columns:repeat(2,minmax(0,384px));justify-content:center}}

/* 70. Hero de l accueil, image IA maison et store (09/11/2026, demande d Amadou) : cadrage decale a droite */
.mb-hero__photo>img.mb-hero__img--droite{object-position:80% 50%}
@media (max-width:899px){.mb-hero__photo>img.mb-hero__img--droite{object-position:75% 50%}}

/* 70. Listes dans les pages légales (v104, lot 50) */
.mb-legal .mb-prose ul{padding-left:1.25em;list-style:disc}
.mb-legal .mb-prose li{margin:0 0 .35em}

/* 71. Agence de Libourne : formulaire de rendez-vous dans la carte du showroom (lot 56, 10/11/2026, hors maquette, demande d'Amadou) */
.mb-showroom__rdv{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-top:var(--mb-espace-3);border-top:1.5px solid var(--mb-ligne)}
.mb-showroom__rdv>*{margin:0}
.mb-showroom__rdv-titre{font-size:22px;line-height:1.2;font-weight:800;letter-spacing:-0.02em;color:var(--mb-encre)}
.mb-showroom__rdv .mb-form{margin-top:6px}
