/* opm-main */
/* ===== OPM Débarras — feuille principale (design moderne navy/rouge/crème) ===== */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
img{display:block;max-width:100%}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--red)}
summary{outline:none!important;border:0!important;list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
summary:focus,summary:focus-visible{outline:none!important;box-shadow:none!important}

:root{--paper:#FFFBF4;--paper-2:#FDF3E6;--surface:#FFFFFF;--ink:#1B2229;--ink-soft:#5A6672;--navy:#0E4585;--navy-2:#0A3466;--blue:#1257AD;--red:#C96A00;--red-2:#A85700;--line:#1B2229;--line-soft:#E7DDD0;--accent:#C96A00;--ambre:#FFD9AC}

/* --- Polices : les styles en ligne en Excon gardent leur espacement ; Spectral -> Hanken Grotesk (texte) --- */
[style*="font-family:'Excon'"]{letter-spacing:-.01em}
[style*="Spectral"]{font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,Roboto,sans-serif!important}

/* --- Suppression des cadres et traits (look moderne) --- */
img.r-img{border:0!important;border-radius:16px}
[style*="border:2px solid var(--red)"]{border:0!important}
[style*="border-left:3px solid var(--red)"]{border-left:0!important}
[style*="border-bottom:2px solid var(--red)"]{border-bottom-color:transparent!important}
header[style*="border-bottom:3px solid var(--red)"]{border-bottom:1px solid rgba(246,239,226,.12)!important}
#realisations [style*="position:relative"]{border:0!important;border-radius:14px;overflow:hidden}

/* Grilles décoratives : plus de filets, cartes espacées et arrondies */
[style*="border-left:2px solid var(--line)"]{border:0!important;gap:16px!important}
[style*="border-right:2px solid var(--line)"][style*="border-bottom:2px solid var(--line)"]{border:0!important;border-radius:16px!important;box-shadow:0 12px 30px rgba(10,35,64,.08)}
[style*="border-left:1px solid rgba(246,239,226,.25)"]{border:0!important;gap:10px!important}
[style*="border-right:1px solid rgba(246,239,226,.25)"]{border:0!important;background:var(--navy-2)!important;border-radius:12px!important}
[style*="border:2px solid #F6EFE2"]{border:0!important;border-radius:16px!important;overflow:hidden}

@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* CTA arrondis, sans bordure */
.opm-cta,.opm-cta-solid,.opm-cta-ghost{border:0!important;border-radius:999px!important}
.opm-cta,.opm-cta-solid{background:var(--red)!important;color:#F6EFE2!important}
.opm-cta-ghost{background:rgba(246,239,226,.14)!important;color:#F6EFE2!important}
.opm-cta:hover,.opm-cta-solid:hover{background:var(--red-2)!important}
.opm-cta-ghost:hover{background:rgba(246,239,226,.26)!important}
#opm-mobile-menu a[href^="tel:"]{border-radius:12px}

/* Estimateur : curseur + boutons segmentés */
.opm-seg{display:flex;flex-wrap:wrap;gap:10px}
.opm-seg button{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:14px;padding:11px 18px;border-radius:999px;border:1.5px solid var(--line-soft);background:#fff;color:var(--navy);cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.opm-seg button:hover{border-color:var(--navy)}
.opm-seg button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.opm-range{width:100%;accent-color:var(--red);height:6px;cursor:pointer}

/* Formulaire de contact : version sombre */
#contact [style*="background:var(--surface)"]{background:linear-gradient(rgba(16,44,76,.84),rgba(16,44,76,.9)),url('https://opm-debarras.fr/wp-content/uploads/2026/07/a75cf17e-05ae-457b-8241-14d3b5fb6f0d.png') center/cover!important;border:1px solid rgba(246,239,226,.12)!important;border-radius:24px!important;overflow:hidden;box-shadow:0 30px 64px rgba(0,0,0,.32)}

/* Animations : révélation au scroll + survol des cartes */
.opm-rv{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.opm-rv.opm-in{opacity:1;transform:none}
.opm-svc,.opm-int-card{transition:transform .28s ease,box-shadow .28s ease}
.opm-svc:hover,.opm-int-card:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(10,35,64,.16)}
.opm-cta,.opm-cta-solid{transition:background .2s ease,transform .18s ease}
.opm-cta:hover,.opm-cta-solid:hover{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.opm-rv{opacity:1!important;transform:none!important}}
#contact form label span{color:#DCE4EE!important}
#contact form input,#contact form textarea{background:#FFFFFF!important;color:var(--ink)!important;border:1px solid rgba(28,27,25,.18)!important;border-radius:10px!important}
#contact form input:focus,#contact form textarea:focus{border-color:var(--red)!important;outline:none}
#contact form input::placeholder,#contact form textarea::placeholder{color:#8A8F98!important}

/* Comparateur avant / après (glissant) */
.opm-ba{position:relative;width:100%;aspect-ratio:4/3;border-radius:16px;overflow:hidden;user-select:none;touch-action:pan-y;--p:50%}
.opm-ba-card{aspect-ratio:auto;height:clamp(200px,22vw,280px);border-radius:14px;margin-bottom:24px}

/* ===== Header blanc ===== */
header[style*="position:sticky"]{position:sticky!important;top:0!important;background:#FFFFFF!important;border-bottom:1px solid rgba(28,27,25,.08)!important;box-shadow:0 2px 14px rgba(15,46,82,.07)}
header .r-desknav a{color:var(--ink)!important}
header .r-desknav a:hover{color:var(--red)!important}
header .r-desknav a.opm-cta,header .r-desknav a.opm-cta:hover{color:#F6EFE2!important}
header .r-burger{border-color:rgba(28,27,25,.22)!important;color:var(--ink)!important}
header .r-burger svg{stroke:var(--ink)!important}
#opm-mobile-menu{background:#FFFFFF!important;border-top-color:rgba(28,27,25,.08)!important}
#opm-mobile-menu a{color:var(--ink)!important;border-bottom-color:rgba(28,27,25,.08)!important}
#opm-mobile-menu a[href^="tel:"]{color:#F6EFE2!important}

/* Padding vertical des sections un peu réduit */
[style*="clamp(64px,8vw,120px)"]{padding-top:clamp(46px,5.5vw,84px)!important;padding-bottom:clamp(46px,5.5vw,84px)!important}
[style*="clamp(56px,7vw,100px)"]{padding-top:clamp(42px,5vw,74px)!important;padding-bottom:clamp(42px,5vw,74px)!important}

/* Grille services : 3 colonnes, photo en tête pleine largeur */
.opm-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2vw,26px)}
.opm-svc{background:var(--surface);border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(10,35,64,.08);display:flex;flex-direction:column}
.opm-svc>img{width:100%;height:clamp(180px,15vw,220px);object-fit:cover;display:block}
.opm-svc-body{padding:clamp(22px,2.2vw,30px)}
.opm-svc-body strong{color:var(--navy);font-weight:700}
@media(max-width:900px){.opm-svc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.opm-svc-grid{grid-template-columns:1fr}}

/* Étapes en accordéon (Comment se déroule un débarras) */
.opm-step{border-bottom:1px solid var(--line-soft)}
.opm-step summary{display:flex;align-items:center;gap:18px;padding:18px 4px;cursor:pointer}
.opm-step-num{flex:0 0 auto;width:38px;height:38px;border-radius:999px;background:var(--red);color:#F6EFE2;display:grid;place-items:center;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:17px}
.opm-step-title{flex:1;font-family:'Bricolage Grotesque',sans-serif;font-weight:700;font-size:clamp(16px,1.5vw,19px);color:var(--navy);letter-spacing:-.01em}
.opm-step-plus{flex:0 0 auto;font-family:'Bricolage Grotesque',sans-serif;font-weight:900;font-size:24px;line-height:1;color:var(--red);transition:transform .2s}
.opm-step[open] .opm-step-plus{transform:rotate(45deg)}
.opm-step-desc{font-family:'Hanken Grotesk',sans-serif;font-size:16px;line-height:1.6;color:var(--ink-soft);margin:0;padding:0 4px 20px 56px}

/* Grille avant/après (réalisations) */
.opm-ba-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2vw,26px)}
@media(max-width:900px){.opm-ba-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.opm-ba-grid{grid-template-columns:1fr}}
.opm-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.opm-ba .opm-ba-before{clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.opm-ba-line{position:absolute;top:0;bottom:0;left:var(--p);width:3px;background:#F6EFE2;transform:translateX(-1.5px);pointer-events:none;z-index:2}
.opm-ba-handle{position:absolute;top:50%;left:var(--p);width:46px;height:46px;border-radius:999px;background:var(--red);color:#F6EFE2;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:none;z-index:3;box-shadow:0 6px 18px rgba(0,0,0,.4)}
.opm-ba-tag{position:absolute;top:12px;font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:11px;letter-spacing:.1em;padding:6px 11px;border-radius:999px;color:#F6EFE2;z-index:2}
.opm-ba-range{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;background:transparent;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.opm-ba-range::-webkit-slider-thumb{-webkit-appearance:none;width:46px;height:100%}
.opm-ba-range::-moz-range-thumb{width:46px;height:100%;border:0;background:transparent}
.opm-int-card li strong{color:var(--navy);font-weight:700}
#faq strong{color:var(--navy);font-weight:700}

/* Menu mobile */
#opm-mobile-menu{display:none}
#opm-mobile-menu.open{display:flex}

/* Hero : image contenue, même hauteur que le texte */
.opm-hero-imgwrap{display:flex;align-items:stretch;padding:clamp(48px,6vw,92px) 0}
.opm-hero-imgwrap img.r-img{max-height:none;height:100%}

/* Cartes « Nos interventions » */
.opm-int-card{background:var(--surface);border:0;border-radius:20px;padding:clamp(22px,2.5vw,32px);box-shadow:0 16px 40px rgba(0,0,0,.28);display:flex;flex-direction:column}
.opm-int-card img.r-img{border-radius:14px;margin-bottom:24px!important}
.opm-int-card h3{color:var(--navy)!important}
.opm-int-card li{border-bottom-color:var(--line-soft)!important}
.opm-int-card li>span:last-child{color:var(--ink)!important}
.opm-int-card p{color:var(--ink-soft)!important}

/* Flip-box (3 solutions) */
.opm-flip{perspective:1400px;cursor:pointer}
.opm-flip-inner{position:relative;width:100%;min-height:clamp(320px,30vw,380px);transition:transform .6s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.opm-flip:hover .opm-flip-inner,.opm-flip.on .opm-flip-inner{transform:rotateY(180deg)}
.opm-flip-face{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:20px;overflow:hidden;display:flex;flex-direction:column}
.opm-flip-front{justify-content:flex-end;padding:clamp(24px,2.6vw,32px);color:#F6EFE2}
.opm-flip-front::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 30%,rgba(0,0,0,.48) 60%,rgba(0,0,0,.92) 100%)}
.opm-flip-front>*{position:relative;z-index:1}
.opm-flip-back{transform:rotateY(180deg);background:var(--navy-2);color:#C9D6E6;justify-content:center;padding:clamp(24px,2.6vw,34px)}
.opm-flip-reco .opm-flip-back{background:var(--red);color:#FBEFE9}
.opm-flip-back p{font-size:14.5px}
@media(max-width:720px){
  .opm-flip{cursor:default;perspective:none}
  .opm-flip-inner{min-height:0!important;transform:none!important;transform-style:flat}
  .opm-flip-face{position:relative;inset:auto;-webkit-backface-visibility:visible;backface-visibility:visible;transform:none!important}
  .opm-flip-front{min-height:220px;border-radius:20px 20px 0 0}
  .opm-flip-back{border-radius:0 0 20px 20px}
}

/* ===== Harmonisation horizontale : tous les conteneurs à la même largeur ===== */
[style*="max-width:900px"][style*="margin:0 auto"],
[style*="max-width:920px"][style*="margin:0 auto"],
[style*="max-width:1120px"][style*="margin:0 auto"],
[style*="max-width:1200px"][style*="margin:0 auto"],
[style*="max-width:1280px"][style*="margin:0 auto"],
[style*="max-width:1360px"][style*="margin:0 auto"]{max-width:1280px!important}
@media(min-width:1500px){
  [style*="max-width:900px"][style*="margin:0 auto"],
  [style*="max-width:920px"][style*="margin:0 auto"],
  [style*="max-width:1120px"][style*="margin:0 auto"],
  [style*="max-width:1200px"][style*="margin:0 auto"],
  [style*="max-width:1280px"][style*="margin:0 auto"],
  [style*="max-width:1360px"][style*="margin:0 auto"]{max-width:1440px!important}
}
@media(min-width:1800px){
  [style*="max-width:900px"][style*="margin:0 auto"],
  [style*="max-width:920px"][style*="margin:0 auto"],
  [style*="max-width:1120px"][style*="margin:0 auto"],
  [style*="max-width:1200px"][style*="margin:0 auto"],
  [style*="max-width:1280px"][style*="margin:0 auto"],
  [style*="max-width:1360px"][style*="margin:0 auto"]{max-width:1580px!important}
}
@media(min-width:2200px){
  [style*="max-width:900px"][style*="margin:0 auto"],
  [style*="max-width:920px"][style*="margin:0 auto"],
  [style*="max-width:1120px"][style*="margin:0 auto"],
  [style*="max-width:1200px"][style*="margin:0 auto"],
  [style*="max-width:1280px"][style*="margin:0 auto"],
  [style*="max-width:1360px"][style*="margin:0 auto"]{max-width:1720px!important}
}

/* Garde-fou : empêche une image de forcer une colonne de grille plus large que l'écran (mobile) */
.r-hero>*,.r-2col>*{min-width:0}
.r-hero img.r-img,.opm-hero-imgwrap img.r-img{max-width:100%}

/* ===== Réactif ===== */
@media(max-width:1080px){.r-hero{grid-template-columns:1fr .82fr!important}}
@media(max-width:960px){.r-desknav{display:none!important}.r-burger{display:inline-flex!important}.r-mobactions{display:flex!important}.r-mobcall{display:inline-flex!important}}
@media(max-width:900px){.r-2col{grid-template-columns:1fr!important}.opm-2col-textfirst>.opm-ba{order:-1}}
@media(max-width:860px){
  .r-2col{grid-template-columns:1fr!important}
  .r-2col img.r-img{height:auto!important;aspect-ratio:4/3}
  .r-hero{grid-template-columns:1fr!important}
  .r-hero img.r-img{height:auto!important;aspect-ratio:4/3;max-height:none!important}
  .opm-hero-imgwrap{padding:clamp(24px,6vw,40px) 0 clamp(10px,2.5vw,16px)}
  .opm-2col-textfirst > img.r-img,
  .opm-2col-textfirst > .opm-hero-imgwrap{order:-1}
  #top .r-hero>div:not(.opm-hero-imgwrap){padding-top:clamp(12px,4vw,22px)!important}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ================================================================
   Design v2 : surcharges stables (les classes .dNN sont regenerees,
   on ne cible donc que la structure)
   ================================================================ */

/* Les tailles de CTA et la hauteur des visuels sont desormais gerees par
   assets/design-v2.css (genere). Les anciennes regles !important de ce fichier
   ont ete retirees : elles ecrasaient la feuille generee. */

/* --- Pastille posee sur l'image de la banniere --- */
.opm-hero-badge{
  position:absolute;z-index:2;
  left:clamp(14px,2vw,26px);bottom:clamp(14px,2vw,26px);
  max-width:calc(100% - 2*clamp(14px,2vw,26px));
  background:#db3f27;color:#fff;
  font-weight:800;font-size:clamp(14px,1.1vw,17px);line-height:1.35;
  padding:13px 20px;border-radius:16px;
}

@media(max-width:900px){
  section:has(> div > div > h1) div:has(> img){min-height:clamp(300px,62vw,480px)!important}
  section a[href="#devis"],section a[href="#contact"],
  section a[href="#estimation"],section a[href="#tarifs"],
  section form button[type="submit"]{font-size:17px!important;padding:17px 26px!important}
}

/* opm-design-v2 */
.d1{color:#0D1218}
.d2{color:#fff}
.d3{display:block}
.d4{flex:none;width:7px;height:7px;border-radius:2px;background:var(--accent,#C96A00);margin-top:9px}
.d5{padding:11px 18px;border-radius:999px;font-weight:600;font-size:15px;cursor:pointer;font-family:inherit;border:1.5px solid #ddd4c0;background:#fffdf8;color:#0D1218}
.d6{display:block;font-size:13px;color:rgba(255,255,255,0.7);margin-bottom:8px}
.d7{display:flex;gap:13px;font-size:16.5px;line-height:1.55;color:#1B2229}
.d8{width:100%;box-sizing:border-box;padding:13px 15px;border-radius:10px;border:1px solid rgba(255,255,255,0.14);background:#fff;color:#0D1218;font-family:inherit;font-size:15px}
.d9{border-top:1px solid #e2d8c2}
.d10{color:#fff;font-weight:700}
.d11{display:flex;align-items:center;gap:16px;padding:22px 2px;cursor:pointer;font-weight:700;font-size:18px;line-height:1.4;color:#0D1218;list-style:none}
.d12{margin:0;padding:0 2px 24px;color:#55637a;font-size:16.5px;line-height:1.65}
.d13{display:flex;gap:18px;align-items:center;background:#0A3466;border:1px solid rgba(255,255,255,0.14);border-radius:16px;padding:20px 22px}
.d14{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--accent,#C96A00)}
.d15{display:block;font-size:12px;font-weight:700;letter-spacing:0.1em;color:var(--accent,#C96A00);margin-bottom:4px}
.d16{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.d17{margin:0 0 12px;color:var(--accent,#C96A00);font-weight:700;letter-spacing:0.2em;font-size:13px}
.d18{max-width:1180px;margin:0 auto}
.d19{color:#ffffff}
.d20{display:block;font-size:16.5px;font-weight:500;color:#fff}
.d21{background:#f4ecda;padding:92px 24px}
.d22{margin:0 0 8px}
.d23{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:var(--accent,#C96A00);color:#fff;font-weight:800;font-size:15px;margin-bottom:16px}
.d24{margin:0 0 12px;font-size:14px;font-weight:600;color:#1B2229}
.d25{display:flex;flex-wrap:wrap;gap:10px}
.d26{display:inline-flex;align-items:center;gap:9px;background:transparent;border:1px solid rgba(255,255,255,0.3);color:#fff;font-weight:600;font-size:15px;padding:10px 18px;border-radius:999px}
.d27{font-size:12.5px;color:rgba(255,255,255,0.55)}
.d28{color:var(--accent,#C96A00);font-weight:700}
.d29{color:#0D1218;font-style:normal}
.d30{width:100%;height:100%;object-fit:cover;display:block}
.d31{background:#fff;border:1px solid #E7DDD0;border-radius:14px;margin:0 0 12px}
.d32{display:flex;align-items:center;gap:16px;padding:18px 20px;cursor:pointer;font-weight:700;font-size:18px;line-height:1.4;color:#0D1218;list-style:none}
.d33{margin:0;padding:0 20px 20px;color:#55637a;font-size:16.5px;line-height:1.65}
.d34{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.d35{flex:none;width:7px;height:7px;border-radius:2px;background:var(--accent,#C96A00);margin-top:8px}
.d36{color:#0D1218;font-weight:700}
.d37{--p:50%;position:relative;width:100%;aspect-ratio:4/3.4;overflow:hidden;border-radius:16px;background:#0E4585}
.d38{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.d39{position:absolute;top:16px;left:16px;padding:8px 16px;border-radius:999px;background:rgba(14,41,73,.88);color:#fff;font-size:12px;font-weight:800;letter-spacing:.1em}
.d40{position:absolute;top:16px;right:16px;padding:8px 16px;border-radius:999px;background:#C96A00;color:#fff;font-size:12px;font-weight:800;letter-spacing:.1em}
.d41{position:absolute;top:0;bottom:0;left:var(--p);width:3px;background:#fff;transform:translateX(-1.5px);pointer-events:none}
.d42{position:absolute;top:50%;left:var(--p);width:46px;height:46px;border-radius:999px;background:#C96A00;color:#fff;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:none}
.d43{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.d44{margin-bottom:26px}
.d45{background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:28px 26px 30px}
.d46{margin:0;font-size:16.5px;line-height:1.55;color:rgba(255,255,255,0.86)}
.d47{margin:0 0 24px;font-size:34px;line-height:1.12;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d48{background:#fffdf8;padding:92px 24px}
.d49{display:flex;gap:12px;font-size:16px;line-height:1.5;color:#1B2229}
.d50{font-size:14px;font-weight:700;color:var(--accent,#C96A00)}
.d51{background:#0E4585;color:#fff;padding:92px 24px}
.d52{margin:0 0 22px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d53{font-weight:700}
.d54{display:block;margin-bottom:18px}
.d55{flex:none;display:block}
.d56{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:22px}
.d57{display:inline-flex;align-items:center;gap:9px;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px 26px;border-radius:999px}
.d58{display:inline-flex;align-items:center;background:rgba(255,255,255,0.07);border:1.5px solid rgba(255,255,255,0.22);color:#fff;font-weight:700;font-size:15px;padding:15px 26px;border-radius:999px}
.d59{margin:0;font-size:13px;color:rgba(255,255,255,0.5);letter-spacing:0.01em}
.d60{position:relative}
.d61{position:relative;z-index:1;border-radius:20px;overflow:hidden;aspect-ratio:4 / 3.3}
.d62{background:#0A3466;border:1px solid rgba(255,255,255,0.09);border-radius:24px;padding:38px}
.d63{margin:0 0 24px;color:var(--accent,#C96A00);font-weight:700;letter-spacing:0.14em;font-size:12px}
.d64{width:100%;box-sizing:border-box;padding:13px 15px;border-radius:10px;border:1px solid rgba(255,255,255,0.14);background:#fff;color:#0D1218;font-family:inherit;font-size:15px;resize:vertical}
.d65{display:block;margin-bottom:22px}
.d66{width:100%;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px;border:none;border-radius:999px;cursor:pointer;font-family:inherit}
.d67{background:#fff;border:1px solid #E7DDD0;border-radius:18px;overflow:hidden}
.d68{display:flex;flex-direction:column;gap:10px;background:#0A3466;border:1px solid rgba(255,255,255,0.12);border-radius:var(--radius,18px);padding:24px 24px 22px;color:#fff}
.d69{font-size:12px;font-weight:700;letter-spacing:0.14em;color:var(--accent,#C96A00)}
.d70{font-size:20px;font-weight:800;letter-spacing:-0.01em;color:#fff}
.d71{margin:0 0 22px;font-size:40px;line-height:1.1;font-weight:800;letter-spacing:-0.02em}
.d72{list-style:none;margin:0 0 28px;padding:0;display:flex;flex-direction:column;gap:16px}
.d73{border-radius:18px;overflow:hidden}
.d74{display:block;font-size:22px;font-weight:800;color:#fff}
.d75{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.78fr 1.22fr;gap:52px;align-items:stretch}
.d76{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.95fr 1.05fr;gap:56px;align-items:stretch}
.d77{margin:0 0 34px;font-size:17px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:36em}
.d78{display:flex;flex-direction:column;gap:14px}
.d79{margin:0 0 34px;font-size:18px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:34em}
.d80{background:#fff;border-radius:24px;padding:48px 48px 52px}
.d81{margin:0 0 40px;font-size:38px;line-height:1.1;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d82{margin-bottom:30px}
.d83{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}
.d84{font-size:14px;font-weight:600;color:#1B2229}
.d85{font-size:20px;font-weight:800;color:var(--accent,#C96A00)}
.d86{width:100%;accent-color:var(--accent,#C96A00);cursor:pointer}
.d87{display:flex;justify-content:space-between;margin-top:6px;font-size:12px;color:#8b93a1}
.d88{background:#0E4585;border-radius:20px;padding:36px 34px;color:#fff}
.d89{margin:0 0 14px;color:rgba(255,255,255,0.55);font-weight:700;letter-spacing:0.16em;font-size:12px}
.d90{margin:0 0 16px;font-size:44px;font-weight:800;letter-spacing:-0.02em;line-height:1}
.d91{margin:0 0 26px;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,0.66)}
.d92{display:block;text-align:center;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px;border-radius:999px}
.d93{margin:0 0 30px;font-size:17.5px;line-height:1.65;color:#1B2229}
.d94{margin:0 0 20px;color:var(--accent,#C96A00);font-weight:700;letter-spacing:0.2em;font-size:13px}
.d95{position:absolute;inset:-14px -14px auto auto;width:120px;height:120px;background:var(--accent,#C96A00);border-radius:20px;opacity:0.16;z-index:0}
.d96{margin:0 0 10px;font-size:20px;font-weight:800;color:#fff}
.d97{margin:0 0 16px;font-size:15px;line-height:1.55;color:rgba(255,255,255,0.68)}
.d98{margin:0;font-size:16px;line-height:1.6;color:#5A6672}
.d99{background:#ece0c6;padding:88px 24px}
.d100{display:grid;grid-template-columns:1.1fr 0.9fr;gap:44px;align-items:stretch}
.d101{background:#0E4585;color:#fff;padding:90px 24px}
.d102{background:#0E4585;color:#fff}
.d103{max-width:1180px;margin:0 auto;padding:34px 24px 88px;display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center}
.d104{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.08fr 0.92fr;gap:56px;align-items:stretch}
.d105{margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent,#C96A00)}
.d106{margin:0 0 26px;font-size:19px;line-height:1.6;font-style:italic;color:#1B2229;border-top:3px solid var(--accent,#C96A00);padding-top:22px}
.d107{margin:0 0 16px;font-size:15px;font-weight:700;color:#0D1218}
.d108{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:14px}
.d109{margin:0 0 22px;font-size:16px;line-height:1.6;color:#5A6672}
.d110{margin:0;font-size:15px;font-weight:700;color:var(--accent,#C96A00)}
.d111{margin:14px 0 0;padding-left:20px}
.d112{margin:0;font-size:16.5px;line-height:1.55;color:#1B2229}
.d113{display:flex;gap:13px;font-size:16.5px;line-height:1.55;color:rgba(255,255,255,0.84)}
.d114{margin:0;font-size:16px;line-height:1.55;color:#1B2229}
.d115{padding:16px;padding-bottom:0}
.d116{padding:26px 28px 30px}
.d117{display:flex;gap:12px;font-size:15.5px;line-height:1.5;color:#1B2229}
.d118{font-size:15px;line-height:1.5;color:rgba(255,255,255,0.7)}
.d119{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.15fr 0.85fr;gap:56px;align-items:center}
.d120{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.d121{padding:24px 24px 28px}
.d122{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:center}
.d123{display:block;color:inherit;background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:var(--radius,18px);padding:26px 26px 30px}
.d124{background:#fff;border:1px solid #E7DDD0;border-radius:16px;padding:28px 26px 30px}
.d125{margin:0 0 8px;font-size:20px;line-height:1.2;font-weight:800;letter-spacing:-0.01em;color:#0D1218}
.d126{font-size:14px;font-weight:700;color:rgba(255,255,255,0.72)}
.d127{margin:0 0 40px;font-size:17.5px;line-height:1.65;color:#1B2229;max-width:52em}
.d128{margin:0 0 20px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em}
.d129{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,0.62);max-width:52em}
.d130{margin:0 0 18px;font-size:34px;line-height:1.12;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d131{margin:0 0 30px;font-size:17px;line-height:1.65;color:#1B2229;max-width:52em}
.d132{margin:0;font-size:16px;line-height:1.6;color:#5A6672;max-width:52em}
.d133{display:inline-flex;align-items:center;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px 28px;border-radius:999px}
.d134{background:#0E4585;color:#fff;padding:0}
.d135{max-width:1180px;margin:0 auto;padding:78px 24px 88px;display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center}
.d136{margin:0 0 24px;font-size:56px;line-height:1.04;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d137{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.d138{display:block;color:inherit;background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:var(--radius,18px);overflow:hidden}
.d139{height:190px;overflow:hidden}
.d140{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:36px}
.d141{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.85fr 1.15fr;gap:56px;align-items:stretch}
.d142{margin:0 0 22px;font-size:38px;line-height:1.1;font-weight:800;letter-spacing:-0.02em;color:#fff}
.d143{margin:0 0 30px;font-size:17px;line-height:1.65;color:rgba(255,255,255,0.8);max-width:46em}
.d144{margin:0 0 16px;font-size:15px;font-weight:700;color:#fff}
.d145{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:12px;margin-bottom:30px}
.d146{display:flex;gap:12px;font-size:16px;line-height:1.55;color:#1B2229}
.d147{aspect-ratio:4 / 3;overflow:hidden}
.d148{padding:22px 22px 26px}
.d149{display:flex;gap:13px;font-size:16.5px;line-height:1.55;color:rgba(255,255,255,0.82)}
.d150{background:#fff;border:1px solid #E7DDD0;border-radius:999px;padding:11px 20px;font-size:15px;font-weight:600;color:#0D1218}
.d151{margin:0 0 14px;font-size:15px;font-weight:700;color:#0D1218}
.d152{width:100%;display:flex;align-items:center;gap:16px;background:none;border:none;padding:19px 2px;cursor:pointer;text-align:left;font-family:inherit;list-style:none}
.d153{flex:none;width:30px;height:30px;border-radius:999px;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}
.d154{flex:1;font-weight:700;font-size:18px;color:#0D1218}
.d155{margin:0;padding:0 2px 22px 58px;color:#55637a;font-size:15.5px;line-height:1.6}
.d156{margin:0 0 30px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:52em}
.d157{margin:0 0 22px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#fff}
.d158{margin:0 0 22px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em}
.d159{margin:0 0 40px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:52em}
.d160{margin:0 0 44px;font-size:17.5px;line-height:1.65;color:#1B2229;max-width:52em}
.d161{background:#fff;border:1px solid #E7DDD0;border-radius:16px;padding:26px 22px 28px}
.d162{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:var(--accent,#C96A00);color:#fff;font-weight:800;font-size:14px;margin-bottom:16px}
.d163{margin:0;font-size:15.5px;line-height:1.55;color:#1B2229}
.d164{margin:0 0 30px;font-size:17.5px;line-height:1.65;color:#1B2229;max-width:52em}
.d165{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:16px}
.d166{margin:0;font-size:16.5px;line-height:1.6;color:#1B2229;max-width:52em}
.d167{background:#0A3466;border:1px solid rgba(255,255,255,0.1);border-radius:16px;padding:28px 26px 30px}
.d168{margin:0;font-size:16.5px;line-height:1.55;color:rgba(255,255,255,0.82)}
.d169{margin:0 0 18px;font-size:22px;font-weight:800;color:#0D1218}
.d170{background:rgba(255,255,255,0.16);border:1px solid rgba(255,255,255,0.3);border-radius:999px;padding:11px 20px;font-size:15px;font-weight:700;color:#fff}
.d171{margin:0 0 22px;font-size:38px;line-height:1.12;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d172{margin:0 0 24px;font-size:19px;line-height:1.6;font-style:italic;color:#1B2229;border-top:3px solid var(--accent,#C96A00);padding-top:22px}
.d173{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:12px}
.d174{margin:0;font-size:15.5px;line-height:1.6;color:#5A6672}
.d175{margin:22px 0 0;font-size:15px;font-weight:700;color:var(--accent,#C96A00)}
.d176{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:999px;padding:9px 17px;font-size:14px;font-weight:600;color:rgba(255,255,255,0.8)}
.d177{display:flex;gap:20px;align-items:baseline}
.d178{flex:none;width:88px;font-size:12px;font-weight:700;letter-spacing:0.1em;color:var(--accent,#C96A00)}
.d179{margin:0 0 26px;font-size:54px;line-height:1.05;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d180{margin:0 0 46px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:52em}
.d181{display:inline-flex;align-items:center;margin-top:26px;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px 28px;border-radius:999px}
.d182{margin:0 0 26px;font-size:58px;line-height:1.04;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d183{margin:0 0 12px;font-size:22px;font-weight:800;color:#0D1218}
.d184{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:34px}
.d185{background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:26px 24px}
.d186{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,0.86)}
.d187{margin:0 0 20px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d188{height:160px}
.d189{background:#fff;border:1px solid #e2d8c2;border-radius:16px;padding:28px 26px 30px}
.d190{border-radius:var(--radius,18px);overflow:hidden}
.d191{margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:0.14em;color:var(--accent,#C96A00)}
.d192{font-size:16px;font-weight:400;color:#0D1218}
.d193{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:32px}
.d194{margin:0 0 26px;font-size:52px;line-height:1.05;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d195{margin:0 0 30px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.78)}
.d196{height:190px}
.d197{padding:26px 26px 30px}
.d198{margin:0 0 10px;font-size:20px;font-weight:800;color:#0D1218}
.d199{margin:0 0 26px;font-size:56px;line-height:1.04;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d200{flex:none;color:#0e7c66;font-weight:800;font-size:15px;margin-top:1px}
.d201{flex:none;color:#a4adbb;font-weight:800;font-size:15px;margin-top:1px}
.d202{background:#fff;border:1px solid #E7DDD0;border-radius:16px;padding:28px 26px}
.d203{margin:0;font-size:16.5px;line-height:1.6;color:#1B2229}
.d204{background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:28px 26px}
.d205{display:inline-block;font-size:12px;font-weight:700;letter-spacing:0.16em;color:var(--accent,#C96A00);margin-bottom:14px}
.d206{margin:0;font-size:16.5px;line-height:1.6;color:rgba(255,255,255,0.86)}
.d207{background:#0E4585;padding:92px 24px}
.d208{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:stretch}
.d209{position:relative;display:inline-block;z-index:0}
.d210{background:#fff;border:1px solid #E7DDD0;border-radius:var(--radius,18px);overflow:hidden}
.d211{background:#f4ecda;padding:88px 24px}
.d212{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:center}
.d213{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.95fr 1.05fr;gap:56px;align-items:start}
.d214{display:flex;flex-direction:column;gap:22px}
.d215{background:#fffdf8;padding:88px 24px}
.d216{position:relative;background:#0E4585;color:#fff;padding:0}
.d217{position:absolute;inset:0;overflow:hidden}
.d218{width:100%;height:100%;object-fit:cover;display:block;opacity:0.28}
.d219{position:relative;max-width:1180px;margin:0 auto;padding:96px 24px}
.d220{margin:0 0 10px;color:var(--accent,#C96A00);font-weight:700;letter-spacing:0.2em;font-size:13px}
.d221{margin:0 0 12px;font-size:32px;line-height:1.12;font-weight:800;letter-spacing:-0.02em;color:#fff;max-width:22em}
.d222{margin:0;font-size:17px;line-height:1.6;color:#fff;max-width:46em}
.d223{margin:0 0 40px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d224{margin:0 0 20px;font-size:16px;line-height:1.6;color:#1B2229}
.d225{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:34px}
.d226{margin:0 0 22px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218;max-width:24em}
.d227{margin:0 0 22px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d228{margin:0 0 20px;font-size:17px;line-height:1.55;color:#1B2229}
.d229{color:#0D1218;font-weight:800}
.d230{margin:-8px 0 22px;border-radius:14px;overflow:hidden;aspect-ratio:16 / 7}
.d231{margin:0 0 18px;font-size:24px;line-height:1.2;font-weight:800;color:#0D1218}
.d232{margin:0 0 24px;font-size:16.5px;line-height:1.6;color:#1B2229}
.d233{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:14px}
.d234{margin:0;font-size:15.5px;line-height:1.55;color:#5A6672}
.d235{background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:18px;padding:32px 30px 34px}
.d236{margin:0 0 22px;font-size:19px;font-weight:800;color:#fff}
.d237{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px}
.d238{background:#0A3466;border:1px solid rgba(255,255,255,0.08);border-radius:18px;overflow:hidden}
.d239{margin:0 0 14px;font-size:22px;font-weight:800;color:#fff}
.d240{margin:0;font-size:16.5px;line-height:1.65;color:rgba(255,255,255,0.86)}
.d241{margin:0 0 20px;font-size:16.5px;line-height:1.6;color:#1B2229}
.d242{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.9fr 1.1fr;gap:52px;align-items:stretch}
.d243{margin:0 0 30px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.82);max-width:52em}
.d244{margin:0;font-size:16.5px;line-height:1.6;color:rgba(255,255,255,0.82);max-width:52em}
.d245{margin:0 0 44px;font-size:42px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d246{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.d247{display:grid;grid-template-columns:1.1fr 0.9fr;gap:44px;align-items:start}
.d248{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:0.9fr 1.1fr;gap:56px;align-items:center}
.d249{margin:0 0 22px;font-size:17px;line-height:1.65;color:#1B2229}
.d250{list-style:none;margin:0 0 26px;padding:0;display:flex;flex-direction:column;gap:13px}
.d251{margin:0 0 28px;font-size:15px;line-height:1.6;color:#5A6672}
.d252{display:inline-flex;align-items:center;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:15px 28px;border-radius:999px}
.d253{margin:0 0 44px;font-size:42px;line-height:1.08;font-weight:800;letter-spacing:-0.02em}
.d254{background:#C96A00;color:#fff;padding:72px 24px}
.d255{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.25fr 0.75fr;gap:40px;align-items:center}
.d256{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:0.18em;color:rgba(255,255,255,0.75)}
.d257{margin:0 0 14px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#fff}
.d258{margin:0;font-size:17.5px;line-height:1.6;color:rgba(255,255,255,0.92)}
.d259{display:inline-flex;align-items:center;gap:9px;margin-top:26px;background:#fff;color:#c3341c;font-weight:800;font-size:15px;padding:16px 28px;border-radius:999px}
.d260{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:10px}
.d261{margin:0 0 10px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d262{margin:0 0 26px;font-size:16px;color:#5A6672}
.d263{aspect-ratio:4 / 4.2;border-radius:14px;overflow:hidden}
.d264{background:#0E4585;color:#fff;padding:88px 24px}
.d265{margin:0 0 22px;font-size:42px;line-height:1.08;font-weight:800;letter-spacing:-0.02em}
.d266{margin:0 0 8px;font-size:17px;line-height:1.6;color:rgba(255,255,255,0.78);max-width:52em}
.d267{margin:0 0 24px;font-size:17px;color:rgba(255,255,255,0.78)}
.d268{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}
.d269{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:30px}
.d270{font-size:14px;color:rgba(255,255,255,0.5)}
.d271{margin:0;font-size:15px;line-height:1.6;color:rgba(255,255,255,0.6);max-width:52em}
.d272{margin:0 0 8px;font-size:42px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d273{margin:0 0 40px;font-size:16px;color:#5A6672}
.d274{margin:0 0 40px;font-size:17px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:36em}
.d275{margin:0 0 22px;font-size:40px;line-height:1.1;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d276{margin:0 0 40px;font-size:17px;line-height:1.65;color:#1B2229;max-width:36em}
.d277{font-size:22px;font-weight:800;color:#0D1218}
.d278{margin-top:34px}
.d279{color:#0D1218;font-weight:700;border-bottom:1px solid rgba(14,41,73,0.4)}
.d280{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.d281{margin:0 0 26px;font-size:40px;line-height:1.08;font-weight:800;letter-spacing:-0.02em}
.d282{margin:0 0 24px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.8)}
.d283{margin:0;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.8)}
.d284{border-radius:18px;overflow:hidden}
.d285{border-radius:18px;overflow:hidden}
.d286{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:30px}
.d287{margin:0 0 40px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218;max-width:26em}
.d288{margin:0 0 24px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d289{margin:0;font-size:17.5px;line-height:1.65;color:#1B2229}
.d290{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:34px}
.d291{background:#fff;border:1px solid #E7DDD0;border-radius:18px;padding:34px 34px 36px}
.d292{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:0.16em;color:var(--accent,#C96A00)}
.d293{background:#fff;border:1px solid #E7DDD0;border-top:4px solid #a4adbb;border-radius:18px;padding:34px 34px 36px}
.d294{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:0.16em;color:#8b93a1}
.d295{margin:0 0 32px;font-size:16px;line-height:1.6;color:rgba(255,255,255,0.62)}
.d296{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.d297{margin:0;font-size:15px;color:rgba(255,255,255,0.7)}
.d298{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;margin-bottom:32px}
.d299{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}
.d300{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:30px}
.d301{margin:0 0 44px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.78);max-width:52em}
.d302{margin:0 0 26px;font-size:48px;line-height:1.06;font-weight:800;letter-spacing:-0.02em;text-wrap:balance}
.d303{margin:0 0 20px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218;max-width:26em}
.d304{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-bottom:34px}
.d305{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,0.62)}
.d306{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}
.d307{margin:0 0 20px;font-size:38px;line-height:1.08;font-weight:800;letter-spacing:-0.02em;color:#0D1218}
.d308{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;margin-bottom:32px}
.d309{margin:0 0 40px;font-size:17.5px;line-height:1.65;color:rgba(255,255,255,0.82);max-width:52em}
.d310{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,0.82);max-width:52em}
.d311{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.1fr 0.9fr;gap:52px;align-items:stretch}
.d312{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-bottom:26px}
.d313{margin:0;font-size:15px;line-height:1.6;color:#5A6672;max-width:52em}
.d314{display:flex;flex-wrap:wrap;gap:12px}
.d315{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.d316{display:flex;flex-wrap:wrap;gap:14px}
.d317{display:inline-flex;align-items:center;gap:9px;background:var(--accent,#C96A00);color:#fff;font-weight:700;font-size:15px;padding:16px 28px;border-radius:999px}
/* ---- composants (etat pilote par le plugin) ---- */
.opm-est-opt.is-on{border-color:#0D1218;background:#0E4585;color:#fff}
/* accordeons : on doit voir au premier coup d'oeil que ca s'ouvre */
summary{outline:none!important;border:0!important;box-shadow:none!important}
summary:focus,summary:focus-visible{outline:none!important}
summary::-webkit-details-marker{display:none}
summary::marker{content:''}
/* chaque accordeon est un encart blanc detache, pas une simple ligne */
details[class]{
  background:#fff;border:1px solid #e1e7ed;border-radius:14px;
  margin:0 0 12px;overflow:hidden;transition:border-color .15s ease;
}
details[class]:last-of-type{margin-bottom:0}
details[class][open]{border-color:#ddd4c0}
details[class]:hover{border-color:#d9c9a8}
details[class]>summary{padding:18px 46px 18px 20px!important}
details[class]>p{padding:0 20px 20px!important}
summary{position:relative;transition:background-color .15s ease}
summary::after{
  content:'';position:absolute;right:14px;top:50%;width:11px;height:11px;
  border-right:2.5px solid var(--accent,#C96A00);
  border-bottom:2.5px solid var(--accent,#C96A00);
  transform:translateY(-70%) rotate(45deg);
  transition:transform .18s ease;
}
details[open]>summary::after{transform:translateY(-20%) rotate(-135deg)}
/* pas de fond teinte au survol : seuls le chevron et la bordure de la carte bougent */
summary:focus-visible{background:transparent}
summary:hover::after{border-color:#b8321f}
details[class]:hover{border-color:#d9c9a8}
.opm-devis-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.opm-devis-msg{margin:0 0 18px;padding:14px 16px;border-radius:10px;font-size:15px;background:#0e7c66;color:#fff}
.opm-devis-msg.is-err{background:#b3261e}
/* mot mis en avant dans un titre (le design le prevoyait via style-after, inerte) */
.opm-surligne{
  background:var(--accent,#C96A00);color:#fff;
  padding:0 .16em;border-radius:10px;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}
/* deux cartes illustrees cote a cote : pistes egales, donc photos de meme
   hauteur, et cartes etirees pour finir au meme niveau */
.opm-duo{grid-template-columns:1fr 1fr!important;align-items:stretch!important}
.opm-duo>*{display:flex;flex-direction:column}
.opm-duo>*>*:last-child{flex:1}
@media(max-width:900px){.opm-duo{grid-template-columns:1fr!important}}

/* carte d'itineraire : ratio stable, coins arrondis, pas de bordure du navigateur */
.opm-carte-plan{position:relative;width:100%;aspect-ratio:16 / 7;border-radius:18px;overflow:hidden}
.opm-carte-plan iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
@media(max-width:700px){.opm-carte-plan{aspect-ratio:4 / 3}}

/* mot-cle trop long pour un fond plein : la couleur suffit a le detacher */
.opm-surligne-texte{color:var(--accent,#C96A00)}

/* texte fonce pose sur une section foncee : illisible. La passe contraste()
   marque ces mots pour qu'ils reprennent la couleur du texte environnant. */
.opm-fort-clair{color:#fff!important}

/* tous les liens de texte du site ont le meme habillage */
.opm-lien,.opm-lien-int,.opm-lien-ext{
  color:inherit!important;font-weight:700;
  text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;
  text-decoration-color:rgba(219,63,39,.6);
}
.opm-lien:hover,.opm-lien-int:hover,.opm-lien-ext:hover,
.opm-lien:focus,.opm-lien-int:focus,.opm-lien-ext:focus{
  color:var(--accent,#C96A00)!important;text-decoration-color:currentColor;
}
/* un <strong> colorie en bleu nuit dans (ou autour d')un lien rendait le lien
   invisible sur une section bleu nuit : la couleur vient toujours du contexte */
:is(.opm-lien,.opm-lien-int,.opm-lien-ext) strong{color:inherit!important}
strong:has(>:is(.opm-lien,.opm-lien-int,.opm-lien-ext)){color:inherit!important}

/* curseur avant / apres : poignee et zone de glissement (comme avant la refonte) */
.opm-ba-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:46px;height:100%}
.opm-ba-range::-moz-range-thumb{width:46px;height:100%;border:0;background:transparent}
.opm-ba-handle svg{display:block}

/* colonne visuelle d'une section image + texte : hors flux, donc c'est le texte
   qui fixe la hauteur de la ligne, et le visuel la remplit exactement */
/* La colonne elle-meme ne doit avoir AUCUNE hauteur propre : le design lui pose
   souvent un aspect-ratio (ex. 4 / 4.3), qui calcule sa hauteur depuis sa largeur
   et la fait depasser la colonne de texte. On neutralise ratio, hauteur et
   hauteur minimale imposees par le design, ici comme sur les autres visuels. */
.opm-col-visuel,.opm-faq-visuel,.opm-apropos-visuel,.opm-zone-visuel,.opm-sec-visuel{
  aspect-ratio:auto!important;height:auto!important;
  max-height:none!important;align-self:stretch!important;
}
.opm-col-visuel{position:relative;overflow:hidden;min-height:200px}
.opm-col-visuel>*{
  position:absolute!important;inset:0!important;
  width:auto!important;height:auto!important;
  aspect-ratio:auto!important;min-height:0!important;
}
.opm-col-visuel div:has(img),.opm-col-visuel .opm-ba{
  height:100%!important;aspect-ratio:auto!important;min-height:0!important;
}
/* une image posee directement dans la colonne : inset:0 + height:auto lui ferait
   garder son ratio naturel, il faut lui imposer la hauteur de la boite */
.opm-col-visuel>img{width:100%!important;height:100%!important;object-fit:cover}

/* Colonnes visuelles reconstruites (FAQ, à propos, zone d'intervention).
   REGLE : aucune hauteur propre. La photo est hors flux (absolue), la boite est
   etiree par la grille (align-items:stretch), donc sa hauteur est EXACTEMENT
   celle de la colonne de texte d'a cote. Le seul plancher sert au cas ou le
   texte serait tres court ; toute autre valeur (clamp, vw, aspect-ratio) ferait
   depasser l'image et rouvrirait le probleme de hauteur. */
.opm-faq-visuel,.opm-apropos-visuel,.opm-zone-visuel,.opm-sec-visuel{
  position:relative;min-height:200px;border-radius:18px;overflow:hidden;
}
.opm-faq-visuel img,.opm-apropos-visuel img,.opm-zone-visuel img,.opm-sec-visuel img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
}
/* sur une seule colonne, plus de texte a cote : la photo reprend une hauteur lisible */
@media(max-width:900px){
  .opm-faq-visuel,.opm-apropos-visuel,.opm-zone-visuel,.opm-sec-visuel{min-height:clamp(220px,52vw,340px)}
}

/* fonds de section : jamais deux fois le meme a la suite */
.opm-fond-blanc{background:#ffffff!important}
.opm-fond-gris{background:#f1f4f7!important}
.opm-col-visuel img{width:100%;height:100%;object-fit:cover}

/* cartes : appel a l'action aligne en bas, en bouton rouge, et clic bien visible */
.opm-carte{display:flex;flex-direction:column;transition:transform .15s ease,border-color .15s ease}
.opm-carte:hover,.opm-carte:focus-visible{transform:translateY(-3px);border-color:var(--accent,#C96A00)}

/* pastille de commune : legere, la fleche indique le clic */
.opm-chip{transition:background-color .15s ease,border-color .15s ease}
.opm-chip:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.55)!important}
.opm-carte>div:last-child{display:flex;flex-direction:column;flex:1}
.opm-carte-cta{
  margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;
  background:var(--accent,#C96A00);color:#fff;font-weight:700;
  padding:11px 20px;border-radius:999px;
}
.opm-carte:hover .opm-carte-cta{background:#b8321f}

/* ---- responsive : ces regles doivent rester en fin de fichier ---- */
.d182{font-size:clamp(30px,4.0vw,58px)}
.d136{font-size:clamp(29px,3.9vw,56px)}
.d199{font-size:clamp(29px,3.9vw,56px)}
.d179{font-size:clamp(28px,3.8vw,54px)}
.d194{font-size:clamp(27px,3.6vw,52px)}
.d302{font-size:clamp(25px,3.3vw,48px)}
.d90{font-size:clamp(24px,3.1vw,44px)}
.d245{font-size:clamp(24px,2.9vw,42px)}
.d253{font-size:clamp(24px,2.9vw,42px)}
.d265{font-size:clamp(24px,2.9vw,42px)}
.d272{font-size:clamp(24px,2.9vw,42px)}
.d52{font-size:clamp(24px,2.8vw,40px)}
.d71{font-size:clamp(24px,2.8vw,40px)}
.d128{font-size:clamp(24px,2.8vw,40px)}
.d157{font-size:clamp(24px,2.8vw,40px)}
.d158{font-size:clamp(24px,2.8vw,40px)}
.d187{font-size:clamp(24px,2.8vw,40px)}
.d223{font-size:clamp(24px,2.8vw,40px)}
.d226{font-size:clamp(24px,2.8vw,40px)}
.d261{font-size:clamp(24px,2.8vw,40px)}
.d275{font-size:clamp(24px,2.8vw,40px)}
.d281{font-size:clamp(24px,2.8vw,40px)}
.d81{font-size:clamp(24px,2.6vw,38px)}
.d142{font-size:clamp(24px,2.6vw,38px)}
.d171{font-size:clamp(24px,2.6vw,38px)}
.d227{font-size:clamp(24px,2.6vw,38px)}
.d257{font-size:clamp(24px,2.6vw,38px)}
.d287{font-size:clamp(24px,2.6vw,38px)}
.d288{font-size:clamp(24px,2.6vw,38px)}
.d303{font-size:clamp(24px,2.6vw,38px)}
.d307{font-size:clamp(24px,2.6vw,38px)}
.d47{font-size:clamp(24px,2.4vw,34px)}
.d130{font-size:clamp(24px,2.4vw,34px)}
.d221{font-size:clamp(24px,2.2vw,32px)}

/* ---- plus aucun beige : fonds et bordures passent au gris ---- */
.d21,.d211,.d215,.d48,.d5,.d99{background:#f1f4f7}
.d124,.d150,.d161,.d189,.d202,.d210,.d291,.d293,.d31,.d5,.d67,.d9{border-color:#e1e7ed}

/* ---- cartes : pas de liseré d'accent detache en haut ---- */
.d291{border-top-width:1px;border-top-color:#E7DDD0}
.d293{border-top-width:1px;border-top-color:#E7DDD0}

/* ---- relief des cartes dans les sections claires ---- */
.opm-fond-blanc :is(.d124,.d13,.d150,.d161,.d167,.d185,.d189,.d202,.d204,.d235,.d259,.d291,.d293,.d40,.d45,.d5,.d62,.d80,.d88),.opm-fond-gris :is(.d124,.d13,.d150,.d161,.d167,.d185,.d189,.d202,.d204,.d235,.d259,.d291,.d293,.d40,.d45,.d5,.d62,.d80,.d88){box-shadow:0 12px 34px rgba(14,41,73,.10)}
.opm-fond-blanc details[class],.opm-fond-gris details[class]{box-shadow:0 6px 18px rgba(14,41,73,.07)}
.opm-fond-blanc .opm-carte:hover,.opm-fond-gris .opm-carte:hover{box-shadow:0 18px 44px rgba(14,41,73,.16)}
.d136{font-size:clamp(34px,5.2vw,72px)}
.d179{font-size:clamp(34px,5.2vw,69px)}
.d182{font-size:clamp(34px,5.2vw,74px)}
.d194{font-size:clamp(34px,5.2vw,67px)}
.d199{font-size:clamp(34px,5.2vw,72px)}
.d302{font-size:clamp(34px,5.2vw,61px)}

/* ---- survol : le texte garde sa couleur (le theme force un a:hover) ---- */
.d123:hover,.d123:focus{color:inherit}
.d133:hover,.d133:focus{color:#fff}
.d138:hover,.d138:focus{color:inherit}
.d181:hover,.d181:focus{color:#fff}
.d2:hover,.d2:focus{color:#fff}
.d252:hover,.d252:focus{color:#fff}
.d259:hover,.d259:focus{color:#c3341c}
.d26:hover,.d26:focus{color:#fff}
.d279:hover,.d279:focus{color:#0D1218}
.d317:hover,.d317:focus{color:#fff}
.d36:hover,.d36:focus{color:#0D1218}
.d5:hover,.d5:focus{color:#0D1218}
.d57:hover,.d57:focus{color:#fff}
.d58:hover,.d58:focus{color:#fff}
.d68:hover,.d68:focus{color:#fff}
.d92:hover,.d92:focus{color:#fff}
.d133:hover,.d181:hover,.d252:hover,.d317:hover,.d57:hover,.d58:hover,.d92:hover{filter:brightness(.92)}
.opm-est-opt.is-on:hover,.opm-est-opt.is-on:focus{color:#fff;background:#0E4585}
.opm-carte:hover .opm-carte-cta,.opm-carte-cta:hover{color:#fff}

/* ---- largeur : le contenu suit la taille de l'ecran ---- */
.d103,.d104,.d119,.d122,.d135,.d141,.d18,.d208,.d212,.d213,.d219,.d242,.d248,.d255,.d311,.d315,.d75,.d76{max-width:min(1600px,100%);box-sizing:border-box;padding-left:clamp(18px,4vw,56px);padding-right:clamp(18px,4vw,56px)}
.d127,.d129,.d131,.d132,.d143,.d156,.d159,.d160,.d164,.d166,.d180,.d221,.d222,.d226,.d243,.d244,.d266,.d271,.d274,.d276,.d287,.d301,.d303,.d309,.d310,.d313,.d77,.d79{max-width:none}
.d103{padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(48px,6vw,88px)}
.d135{padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(48px,6vw,88px)}
.d254{padding:clamp(48px,6vw,72px) 0}
.d99{padding:clamp(48px,6vw,88px) 0}
.d211{padding:clamp(48px,6vw,88px) 0}
.d215{padding:clamp(48px,6vw,88px) 0}
.d264{padding:clamp(48px,6vw,88px) 0}
.d101{padding:clamp(48px,6vw,90px) 0}
.d21{padding:clamp(48px,6vw,92px) 0}
.d48{padding:clamp(48px,6vw,92px) 0}
.d51{padding:clamp(48px,6vw,92px) 0}
.d207{padding:clamp(48px,6vw,92px) 0}

/* ---- hauteur du visuel calee sur le texte ---- */
.d100,.d103,.d104,.d119,.d122,.d135,.d141,.d193,.d208,.d212,.d213,.d242,.d246,.d247,.d248,.d255,.d290,.d298,.d299,.d308,.d311,.d315,.d34,.d75,.d76{align-items:stretch}
.d100 img,.d103 img,.d104 img,.d119 img,.d122 img,.d135 img,.d141 img,.d193 img,.d208 img,.d212 img,.d213 img,.d242 img,.d246 img,.d247 img,.d248 img,.d255 img,.d290 img,.d298 img,.d299 img,.d308 img,.d311 img,.d315 img,.d34 img,.d75 img,.d76 img{width:100%;height:100%;object-fit:cover}
@media(max-width:900px){
.d100,.d103,.d104,.d119,.d122,.d135,.d137,.d140,.d141,.d184,.d193,.d208,.d212,.d213,.d225,.d242,.d246,.d247,.d248,.d255,.d268,.d280,.d286,.d290,.d298,.d299,.d300,.d304,.d306,.d308,.d311,.d312,.d315,.d34,.d75,.d76{grid-template-columns:1fr!important;gap:32px!important}
.d100>div:has(img),.d100>div:has(.opm-ba),.d103>div:has(img),.d103>div:has(.opm-ba),.d104>div:has(img),.d104>div:has(.opm-ba),.d119>div:has(img),.d119>div:has(.opm-ba),.d122>div:has(img),.d122>div:has(.opm-ba),.d135>div:has(img),.d135>div:has(.opm-ba),.d141>div:has(img),.d141>div:has(.opm-ba),.d193>div:has(img),.d193>div:has(.opm-ba),.d208>div:has(img),.d208>div:has(.opm-ba),.d212>div:has(img),.d212>div:has(.opm-ba),.d213>div:has(img),.d213>div:has(.opm-ba),.d242>div:has(img),.d242>div:has(.opm-ba),.d246>div:has(img),.d246>div:has(.opm-ba),.d247>div:has(img),.d247>div:has(.opm-ba),.d248>div:has(img),.d248>div:has(.opm-ba),.d255>div:has(img),.d255>div:has(.opm-ba),.d290>div:has(img),.d290>div:has(.opm-ba),.d298>div:has(img),.d298>div:has(.opm-ba),.d299>div:has(img),.d299>div:has(.opm-ba),.d308>div:has(img),.d308>div:has(.opm-ba),.d311>div:has(img),.d311>div:has(.opm-ba),.d315>div:has(img),.d315>div:has(.opm-ba),.d34>div:has(img),.d34>div:has(.opm-ba),.d75>div:has(img),.d75>div:has(.opm-ba),.d76>div:has(img),.d76>div:has(.opm-ba){order:-1}
}
@media(min-width:900px){
.d133,.d181,.d252,.d317,.d57,.d58,.d92{font-size:18.5px;padding:20px 36px}
.opm-carte-cta{font-size:16px;padding:14px 26px}
}
@media(max-width:560px){
.d116,.d123,.d124,.d133,.d167,.d181,.d189,.d197,.d202,.d204,.d235,.d252,.d259,.d291,.d293,.d317,.d45,.d57,.d58,.d62,.d80,.d88{padding-left:20px!important;padding-right:20px!important}
}
[class*='d']{min-width:0}
.opm-ba img{max-width:100%}

/* opm-nav */
/* Menu du site : sous-menu en CSS pur (aucun JS), ouvert au survol et au clavier.
   L'en-tete est blanc (main.css force header{background:#FFF}), le sous-menu
   reprend donc le meme fond clair, sinon le texte du theme (var(--ink), pose en
   !important sur .r-desknav a) devient illisible. */
.opm-nav-item{position:relative;align-self:stretch;display:flex;align-items:center}

/* pont invisible : la souris peut descendre du lien vers le panneau */
.opm-nav-item::after{content:'';position:absolute;left:0;right:0;top:100%;height:16px}

.opm-nav-panel{
  position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%);
  min-width:17rem;max-width:min(22rem,90vw);
  background:#fff;
  border:1px solid rgba(28,27,25,.10);
  border-radius:14px;
  padding:8px 0;display:none;z-index:60;
}
.opm-nav-item:hover>.opm-nav-panel,
.opm-nav-item:focus-within>.opm-nav-panel{display:block}

header .r-desknav .opm-nav-panel a{
  display:block;padding:11px 22px;
  font-family:'Excon',system-ui,sans-serif;font-weight:600;font-size:14.5px;
  white-space:nowrap;
}
header .r-desknav .opm-nav-panel a:hover,
header .r-desknav .opm-nav-panel a:focus{
  background:rgba(201,106,0,.08);
  color:#C96A00!important;
}

/* fleche du menu deroulant */
.opm-nav-top::after{
  content:'';display:inline-block;margin-left:7px;
  border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px);
}

/* Pied de page : colonnes de liens */
.opm-foot-col a{display:block;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:15px;color:#1B2229;padding:4px 0}
.opm-foot-col a:hover{color:#1257AD}

/* Menu mobile : intitules de rubriques */
.opm-mob-titre{
  font-family:'Excon',system-ui,sans-serif;font-weight:700;font-size:11.5px;
  letter-spacing:.14em;text-transform:uppercase;color:#C96A00;
  padding:16px 0 6px;margin:0;
}

/* opm-mv-0 */
/* ==================================================================
   OPM Debarras - page "Debarras de maison a Lyon"
   Fonds : uniquement du blanc et un degrade orange, en alternance stricte.
   Bleu vif reserve aux titres et aux liens. Texte en noir.
   Tout est scope sous .opm-mv : aucune autre page du site n'est touchee.
   ================================================================== */
.opm-mv{
  --mv-acc:#C96A00;          /* orange brule : boutons, puces, chiffres */
  --mv-acc-2:#A85700;
  --mv-ambre:#FFD9AC;
  --mv-bleu:#1257AD;         /* bleu profond des titres et des liens */
  --mv-bleu-2:#0E4585;
  --mv-titre:#0D1218;        /* noir des titres */
  --mv-texte:#1B2229;        /* noir du texte courant */
  --mv-gris:#5A6672;
  --mv-clair:#FBF1E4;
  --mv-clair-2:#FBF8F3;
  --mv-filet:#E7DDD0;
  --mv-shell:1560px;
  --mv-lisible:1060px;
  color:var(--mv-texte);
  font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  text-wrap:pretty;
}
.opm-mv *{box-sizing:border-box;min-width:0}
.opm-mv img{display:block;max-width:100%}
.opm-mv strong{font-weight:700;color:var(--mv-titre)}
.opm-mv h2,.opm-mv h3,.opm-mv h4{font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;letter-spacing:-.02em}

/* ---------- ossature ---------- */
.mv-pad{max-width:var(--mv-shell);margin:0 auto;padding-left:clamp(22px,5vw,72px);padding-right:clamp(22px,5vw,72px)}
.mv-sec{padding-top:clamp(56px,7vw,92px);padding-bottom:clamp(56px,7vw,92px)}
.mv-blanc{background:#FFFFFF}
.mv-clair,.mv-fonce{background:linear-gradient(180deg,#FFFBF4 0%,#FDF3E6 100%)}
.mv-hero{background:linear-gradient(155deg,#FFFEFC 0%,#FEF8EF 48%,#FCEEDC 100%)}

/* Alternance stricte blanc / orange, pilotee section par section :
   deux sections voisines n'ont jamais le meme fond. */
.opm-mv>section:nth-of-type(odd){background:linear-gradient(180deg,#FFFBF4 0%,#FDF3E6 100%)}
.opm-mv>section:nth-of-type(even){background:#FFFFFF}
.opm-mv>section.mv-hero{background:linear-gradient(155deg,#FFFEFC 0%,#FEF8EF 48%,#FCEEDC 100%)}

.mv-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(28px,4vw,56px);align-items:stretch}
.mv-grid-inv{grid-template-columns:.94fr 1.06fr}
.mv-tete{max-width:900px;margin-bottom:clamp(26px,3vw,38px)}
.opm-mv .mv-pad>.mv-p,
.opm-mv .mv-pad>.mv-lead,
.opm-mv .mv-pad>.mv-liste,
.opm-mv .mv-pad>.mv-note,
.opm-mv .mv-pad>h3{max-width:var(--mv-lisible)}

.mv-eyebrow,.mv-eyebrow-f{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:12px;color:var(--mv-acc);margin:0}

.opm-mv h2{font-weight:800;font-size:clamp(28px,3.4vw,48px);line-height:1.05;margin:10px 0 18px;color:var(--mv-titre)}
.opm-mv .mv-h2-f{color:var(--mv-titre)!important}
.opm-mv h3{font-weight:800;font-size:clamp(19px,1.7vw,23px);line-height:1.2;margin:0 0 10px;color:var(--mv-titre)}
.opm-mv .mv-h3-f{color:var(--mv-titre)!important}

.mv-lead,.mv-lead-f{font-size:clamp(17px,1.35vw,19px);line-height:1.6;color:var(--mv-texte);font-weight:500;margin:0 0 20px}
.mv-p,.mv-p-f{font-size:clamp(16px,1.25vw,18px);line-height:1.65;color:var(--mv-texte);margin:0 0 18px}
.mv-p:last-child,.mv-lead:last-child{margin-bottom:0}
.opm-mv .mv-acc+.mv-p{margin-top:24px}

/* ---------- liens du contenu : surlignes, en bleu, avec une fleche ---- */
.opm-mv .mv-p a,
.opm-mv .mv-lead a,
.opm-mv .mv-liste a,
.opm-mv .mv-liste-nue a,
.opm-mv .mv-acc-corps a,
.opm-mv .mv-note-txt a,
.opm-mv .mv-etapes a{
  color:var(--mv-bleu);font-weight:700;background:none;padding:0;
  text-decoration:underline;text-decoration-color:var(--mv-ambre);
  text-decoration-thickness:3px;text-underline-offset:4px;
  text-decoration-skip-ink:none;
}
.opm-mv .mv-p a::after,
.opm-mv .mv-lead a::after,
.opm-mv .mv-liste a::after,
.opm-mv .mv-liste-nue a::after,
.opm-mv .mv-acc-corps a::after,
.opm-mv .mv-note-txt a::after,
.opm-mv .mv-etapes a::after{content:'\00A0\2192';font-weight:800;color:var(--mv-acc)}
.opm-mv .mv-p a:hover,
.opm-mv .mv-lead a:hover,
.opm-mv .mv-liste a:hover,
.opm-mv .mv-liste-nue a:hover,
.opm-mv .mv-acc-corps a:hover,
.opm-mv .mv-note-txt a:hover,
.opm-mv .mv-etapes a:hover{color:var(--mv-acc-2);text-decoration-color:var(--mv-acc)}
.opm-mv .mv-tel a{color:var(--mv-bleu);font-weight:800;text-decoration:none;background:none;padding:0}
.opm-mv .mv-tel a::after{content:''}

/* ---------- visuels ---------- */
.mv-media{position:relative;min-height:340px;border-radius:22px;overflow:hidden;background:var(--mv-clair)}
.mv-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.mv-hero-media{min-height:440px;border-radius:22px;overflow:visible}
.mv-hero-media img{border-radius:22px}
.opm-mv .opm-hero-badge{display:none}

/* cartouches flottants poses sur l'image du hero */
.mv-flotte{
  position:absolute;z-index:3;display:flex;align-items:center;gap:11px;
  background:#FFFFFF;border:1px solid #E4E9EF;border-radius:14px;
  padding:11px 16px 11px 12px;max-width:min(78%,290px);
}
.mv-flotte-1{top:clamp(-14px,-1vw,0px);left:clamp(-16px,-1.2vw,0px)}
.mv-flotte-2{bottom:clamp(-14px,-1vw,0px);right:clamp(-16px,-1.2vw,0px)}
.mv-flotte-ico{
  flex:none;width:38px;height:38px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:12.5px;
  background:var(--mv-acc);color:#FFFFFF;letter-spacing:.02em;
}
.mv-flotte-2 .mv-flotte-ico{background:var(--mv-bleu)}
.mv-flotte b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:13.5px;color:var(--mv-titre);line-height:1.25}
.mv-flotte i{display:block;font-style:normal;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--mv-gris);line-height:1.3;margin-top:2px}

/* ---------- puces ---------- */
.mv-liste,.mv-liste-f{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:12px}
.mv-liste li,.mv-liste-f li{display:flex;gap:14px;align-items:flex-start;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:16px;padding:17px 20px;font-size:16.5px;line-height:1.55;color:var(--mv-texte)}
.mv-liste li::before,.mv-liste-f li::before{content:'';flex:none;width:9px;height:9px;margin-top:.45em;border-radius:50%;background:var(--mv-acc)}

.mv-liste-nue,.mv-liste-nue-f{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}
.mv-liste-nue li,.mv-liste-nue-f li{position:relative;padding-left:20px;font-size:16.5px;line-height:1.6;color:var(--mv-texte)}
.mv-liste-nue li::before,.mv-liste-nue-f li::before{content:'';position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--mv-acc)}

/* ---------- encadres ---------- */
.mv-note,.mv-note-f{display:flex;gap:14px;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:18px;padding:22px 26px;margin:0 0 18px}
.opm-mv #quand .mv-note,.opm-mv #prestations .mv-note,.opm-mv #deroule .mv-note,
.opm-mv #tarifs .mv-note,.opm-mv #zone .mv-note,.opm-mv #faq .mv-note,
.opm-mv #maillage .mv-note{background:var(--mv-clair);border-color:#EFDFC9}
.mv-note-ico{flex:none;font-weight:800;color:var(--mv-acc);line-height:1.4}
.mv-note-txt{font-size:16.5px;line-height:1.6;color:var(--mv-texte)}
.mv-note:last-child{margin-bottom:0}

/* ---------- boutons ---------- */
.opm-mv .mv-cta,.opm-mv .mv-cta-clair{display:inline-flex;align-items:center;gap:10px;background:var(--mv-acc);color:#FFFFFF!important;padding:17px 32px;border-radius:999px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:16px;line-height:1.2;text-decoration:none}
.opm-mv .mv-cta:hover,.opm-mv .mv-cta-clair:hover{background:var(--mv-acc-2);color:#FFFFFF!important}
.mv-cta-ligne{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:26px 0 0}
.mv-tel,.mv-tel-f{font-size:16px;line-height:1.5;color:var(--mv-gris);font-weight:500;max-width:320px}

/* ---------- hero ---------- */
.mv-badge{display:inline-flex;align-items:center;gap:9px;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:999px;padding:9px 18px;margin:0 0 22px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mv-titre)}
.mv-badge::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--mv-acc)}
.opm-mv .mv-h1{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(34px,4.6vw,62px);line-height:1.02;letter-spacing:-.035em;margin:0 0 24px;color:var(--mv-titre)}
.mv-surl{color:var(--mv-bleu)}
.mv-hero-meta{font-size:15px;line-height:1.6;color:var(--mv-gris);margin:20px 0 0}

.mv-stats{display:flex;flex-wrap:wrap;gap:clamp(22px,3.2vw,48px);margin:34px 0 0;padding-top:26px;border-top:1px solid var(--mv-filet)}
.mv-stats>div{display:flex;flex-direction:column;gap:5px}
.mv-stat-n{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em;color:var(--mv-titre);line-height:1}
.mv-stat-n em{font-style:normal;color:var(--mv-acc)}
.mv-stat-l{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--mv-gris)}

/* ---------- cartes ---------- */
.mv-cartes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}
.mv-cartes-4{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.mv-carte{background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}
.mv-carte-img{width:100%;height:210px;object-fit:cover}
.mv-carte-in{padding:26px 28px 30px}
.mv-carte-f{background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:22px;padding:26px 28px 30px}
.opm-mv .mv-carte-f h3{color:var(--mv-titre)}
.mv-carte-tag{display:inline-block;background:var(--mv-ambre);color:var(--mv-acc-2);border-radius:999px;padding:6px 14px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px}
/* sur fond blanc, les cartes prennent le fond creme pour se detacher */
.opm-mv #prestations .mv-carte,
.opm-mv #zone .mv-carte,
.opm-mv #faq .mv-carte{background:#FFFFFF}

/* ---------- accordeons ----------
   design-v2.css pose des regles globales sur details[class] et summary::after
   (chevron rouge). On les neutralise ici, dans le scope de la page. */
.mv-acc{display:flex;flex-direction:column;gap:12px}
.opm-mv details.mv-item,
.opm-mv details.mv-item:hover,
.opm-mv details.mv-item[open]{background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:18px;margin:0;overflow:hidden}
.opm-mv details.mv-item[open]{border-color:var(--mv-acc)}
.opm-mv details.mv-item>summary{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:20px clamp(20px,2.2vw,28px)!important;cursor:pointer;list-style:none;position:static;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:clamp(16.5px,1.5vw,20px);line-height:1.3;color:var(--mv-titre);
  outline:none!important;border:0!important;box-shadow:none!important;
}
.opm-mv details.mv-item>summary::-webkit-details-marker{display:none}
.opm-mv details.mv-item>summary::marker{content:''}
.opm-mv details.mv-item>summary:focus,
.opm-mv details.mv-item>summary:focus-visible{outline:none!important;box-shadow:none!important;background:transparent}
.opm-mv details.mv-item>summary::after{
  content:'+';position:static;right:auto;top:auto;
  flex:none;width:auto;height:auto;border:0;transform:none;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:26px;line-height:1;
  color:var(--mv-acc);
}
.opm-mv details.mv-item[open]>summary::after{content:'\2212';transform:none;border:0}
.opm-mv details.mv-item>summary:hover::after{color:var(--mv-acc-2);border:0}
.mv-etape{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mv-acc);margin:0 0 5px}
.opm-mv .mv-acc-corps{padding:0 clamp(20px,2.2vw,28px) 24px!important;font-size:16.5px;line-height:1.65;color:var(--mv-texte)}
.mv-acc-corps p{margin:0 0 12px}
.mv-acc-corps p:last-child,.mv-acc-corps ul:last-child{margin-bottom:0}

/* ---------- tableaux ---------- */
.mv-tab-wrap,.mv-tab-wrap.mv-tab-f{overflow-x:auto;border:1px solid var(--mv-filet);border-radius:18px;background:#FFFFFF;margin:0 0 18px}
.mv-tab{width:100%;border-collapse:collapse;min-width:560px;font-size:16px}
.opm-mv .mv-tab th,.opm-mv .mv-tab td{text-align:left;padding:15px 20px;border-bottom:1px solid var(--mv-filet);color:var(--mv-texte);line-height:1.5;background:transparent}
.opm-mv .mv-tab th{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--mv-acc-2);background:var(--mv-clair)}
.opm-mv .mv-tab tr:last-child td{border-bottom:0}

/* ---------- pastilles ---------- */
.mv-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.opm-mv .mv-chip{display:inline-flex;align-items:center;gap:8px;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:999px;padding:11px 20px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:15px;color:var(--mv-titre)!important;text-decoration:none}
.opm-mv .mv-chip:hover{background:var(--mv-ambre);border-color:var(--mv-ambre);color:var(--mv-acc-2)!important}
.opm-mv .mv-chip span{font-weight:600;color:var(--mv-acc)}
.opm-mv .mv-chip-plein{background:var(--mv-acc);border-color:var(--mv-acc);color:#FFFFFF!important}
.opm-mv .mv-chip-plein:hover{background:var(--mv-acc-2);border-color:var(--mv-acc-2);color:#FFFFFF!important}

/* ---------- mot de la fondatrice ---------- */
.mv-mot{background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:22px;padding:clamp(28px,3.6vw,52px)}
.mv-mot-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,52px);align-items:center}
.mv-cite{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:500;font-size:clamp(18px,1.6vw,23px);line-height:1.45;color:var(--mv-titre);margin:0 0 24px}
.mv-signature{display:flex;align-items:center;gap:14px;border-top:1px solid var(--mv-filet);padding-top:20px;margin-top:22px}
.mv-avatar{width:46px;height:46px;flex:none;border-radius:50%;background:var(--mv-bleu);color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800}
.mv-sig-nom{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:17px;color:var(--mv-titre)}
.mv-sig-role{font-size:14px;color:var(--mv-gris)}
.mv-methode{background:var(--mv-clair);border:1px solid #EFDFC9;border-radius:18px;padding:clamp(24px,3vw,36px)}
.mv-methode-titre{font-size:15px;color:var(--mv-gris);font-weight:700;margin:0 0 18px}
.mv-etapes{display:grid;gap:18px}
.mv-etapes>div{display:flex;gap:14px}
.mv-num{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:18px;color:var(--mv-acc);flex:none}
.mv-etapes span+span{font-size:16px;line-height:1.6;color:var(--mv-texte)}

/* ---------- contact ---------- */
.mv-contact{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,4vw,52px);align-items:start}
.mv-coord{display:grid;gap:12px;margin:24px 0 0}
.mv-coord>div{display:flex;gap:16px;align-items:center;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:16px;padding:17px 20px}
.mv-coord-ico{width:42px;height:42px;flex:none;border-radius:12px;background-color:var(--mv-acc);background-repeat:no-repeat;background-position:center;background-size:21px 21px}
.mv-coord-lab{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mv-gris)}
.mv-coord-val{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:17px;color:var(--mv-titre)}
.opm-mv .mv-coord-val a{color:var(--mv-titre);text-decoration:none;background:none;padding:0}
.opm-mv .mv-coord-val a::after{content:''}
.opm-mv .mv-coord-val a:hover{color:var(--mv-acc)}
.mv-coord>div:nth-child(1) .mv-coord-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3 19.5 19.5 0 0 1-6-6 19.8 19.8 0 0 1-3-8.6A2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E")}
.mv-coord>div:nth-child(2) .mv-coord-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E")}
.mv-coord>div:nth-child(3) .mv-coord-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-5.6 7-11a7 7 0 1 0-14 0c0 5.4 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.6'/%3E%3C/svg%3E")}
.mv-coord>div:nth-child(4) .mv-coord-ico{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3.5 2'/%3E%3C/svg%3E")}

/* formulaire (shortcode opm_devis) */
.mv-form{position:relative;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:22px;padding:clamp(26px,3vw,42px)}
.mv-form-titre{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:20px;color:var(--mv-titre);margin:0 0 20px}
.mv-form form{display:flex;flex-direction:column;gap:16px}
.mv-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:16px}
.mv-lab{display:flex;flex-direction:column;gap:7px}
.mv-lab-txt{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--mv-gris)}
.mv-input{background:var(--mv-clair-2);border:1px solid var(--mv-filet);border-radius:10px;padding:13px 15px;font-size:15px;font-family:inherit;color:var(--mv-texte);width:100%}
.mv-input:focus{outline:2px solid var(--mv-acc);outline-offset:1px}
.mv-area{min-height:110px;resize:vertical}
.mv-submit{background:var(--mv-acc);color:#FFFFFF;border:0;border-radius:10px;padding:16px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:16px;cursor:pointer}
.mv-submit:hover{background:var(--mv-acc-2)}
.opm-mv .opm-devis-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.opm-mv .opm-devis-msg{background:var(--mv-clair);border:1px solid #EFDFC9;border-radius:12px;padding:14px 16px;font-size:15px;color:var(--mv-acc-2);margin:0 0 16px}
.opm-mv .opm-devis-msg.is-err{background:#FBECEA;border-color:#F0C9C4;color:#A62C21}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .opm-mv .mv-grid,.opm-mv .mv-grid-inv,.opm-mv .mv-mot-grid,.opm-mv .mv-contact{grid-template-columns:1fr;gap:32px}
  .opm-mv .mv-grid>.mv-media,.opm-mv .mv-grid-inv>.mv-media{order:-1}
  .opm-mv .mv-media{min-height:0;aspect-ratio:4/3}
  .opm-mv .mv-hero-media{aspect-ratio:4/5;margin-bottom:26px}
  .opm-mv .mv-flotte-1{top:8px;left:8px}
  .opm-mv .mv-flotte-2{bottom:-16px;right:8px}
}
@media(max-width:560px){
  .opm-mv .mv-cta{width:100%;justify-content:center}
  .opm-mv .mv-carte-in,.opm-mv .mv-carte-f{padding-left:20px;padding-right:20px}
  .opm-mv .mv-note{padding:18px 20px}
  .opm-mv .mv-tel{max-width:none}
  .opm-mv .mv-flotte{max-width:min(88%,250px);padding:9px 13px 9px 10px}
  .opm-mv .mv-stats{gap:20px}
}

/* opm-mv-1 */
/* ==================================================================
   OPM Debarras - mises en avant scannables (complement de mv-5.css)
   Encadres et listes typees : conseil (ambre), point favorable (vert),
   point defavorable ou piege (rouge), information (bleu).
   ================================================================== */

/* ---------- encadres types ---------- */
.opm-mv .mv-flag{
  display:flex;gap:14px;align-items:flex-start;
  border:1px solid;border-radius:18px;padding:20px 24px;margin:0 0 18px;
}
.opm-mv .mv-flag:last-child{margin-bottom:0}
.opm-mv .mv-flag-ico{
  flex:none;width:36px;height:36px;border-radius:10px;
  background-repeat:no-repeat;background-position:center;background-size:20px 20px;
}
.opm-mv .mv-flag-txt{font-size:16.5px;line-height:1.6;color:var(--mv-texte)}
.opm-mv .mv-flag-txt b{
  display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px;
}

.opm-mv .mv-flag-astuce{background:#FFF6E4;border-color:#F2DCB2}
.opm-mv .mv-flag-astuce .mv-flag-txt b{color:#9A6600}
.opm-mv .mv-flag-astuce .mv-flag-ico{background-color:#E8A317;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3Cpath d='M12 2a7 7 0 0 0-4 12.7V17h8v-2.3A7 7 0 0 0 12 2z'/%3E%3C/svg%3E")}

.opm-mv .mv-flag-ok{background:#EDF8F1;border-color:#C6E4D1}
.opm-mv .mv-flag-ok .mv-flag-txt b{color:#1F6B44}
.opm-mv .mv-flag-ok .mv-flag-ico{background-color:#2E8B57;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}

.opm-mv .mv-flag-non{background:#FDF0EE;border-color:#F2CCC6}
.opm-mv .mv-flag-non .mv-flag-txt b{color:#A62C21}
.opm-mv .mv-flag-non .mv-flag-ico{background-color:#C4362A;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E")}

.opm-mv .mv-flag-info{background:#EFF5FD;border-color:#CDDFF6}
.opm-mv .mv-flag-info .mv-flag-txt b{color:#0E4585}
.opm-mv .mv-flag-info .mv-flag-ico{background-color:#1257AD;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 16v-5'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E")}

/* ---------- listes typees : coche verte ou croix rouge ---------- */
.opm-mv ul.mv-oui li::before,
.opm-mv ul.mv-non li::before{
  width:19px;height:19px;border-radius:50%;background-size:12px 12px;
  background-repeat:no-repeat;background-position:center;top:.18em;
}
.opm-mv ul.mv-oui li,
.opm-mv ul.mv-non li{padding-left:29px}
.opm-mv ul.mv-oui li::before{background-color:#2E8B57;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.opm-mv ul.mv-non li::before{background-color:#C4362A;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E")}

/* variantes de la pastille de carte */
.opm-mv .mv-tag-ok{background:#DCF0E4;color:#1F6B44}
.opm-mv .mv-tag-non{background:#FADFDB;color:#A62C21}
.opm-mv .mv-tag-info{background:#DDE9FA;color:#0E4585}

/* liseré de couleur sur le haut interieur des cartes typees : un bandeau
   plein a l'interieur de la carte, jamais une bordure posee sur le bord */
.opm-mv .mv-carte-ok,.opm-mv .mv-carte-non{position:relative;overflow:hidden}
.opm-mv .mv-carte-ok::before,.opm-mv .mv-carte-non::before{
  content:'';position:absolute;left:0;right:0;top:0;height:5px;
}
.opm-mv .mv-carte-ok::before{background:#2E8B57}
.opm-mv .mv-carte-non::before{background:#C4362A}

/* ligne de reperes rapides : trois faits scannables */
.opm-mv .mv-reperes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:14px;margin:0 0 20px}
.opm-mv .mv-repere{display:flex;gap:13px;align-items:center;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:16px;padding:16px 18px}
.opm-mv .mv-repere .mv-flag-ico{width:34px;height:34px;background-size:19px 19px}
.opm-mv .mv-repere span+span{font-size:15.5px;line-height:1.45;color:var(--mv-texte)}
.opm-mv .mv-repere b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:15.5px;color:var(--mv-titre)}

/* opm-mv-2 */
/* ==================================================================
   OPM Debarras - titres plus grands + simulateur de prix
   (complement de mv-5.css et mv-6.css)
   ================================================================== */

/* ---------- fil d'Ariane raccorde a la charte de la page ----------
   Le gabarit du theme pose ses couleurs en ligne : on les ecrase, et
   uniquement sur cette page, pour ne pas toucher au reste du site. */
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"],
body.page-id-83 nav[aria-label="Fil d'Ariane"]{
  background:linear-gradient(180deg,#FFFEFC 0%,#FFFAF2 100%)!important;
  border-top:1px solid #EFE3D3!important;border-bottom:1px solid #EFE3D3!important;
}
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"]>div,
body.page-id-83 nav[aria-label="Fil d'Ariane"]>div{
  font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,sans-serif!important;
  font-weight:700!important;font-size:13.5px!important;letter-spacing:.01em;
  color:#5A6672!important;padding-top:14px!important;padding-bottom:14px!important;
}
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] a,
body.page-id-83 nav[aria-label="Fil d'Ariane"] a{color:#1257AD!important;text-decoration:none}
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] a:hover,
body.page-id-83 nav[aria-label="Fil d'Ariane"] a:hover{color:#C96A00!important}
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"],
body.page-id-83 nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"]{color:#C96A00!important;margin:0 4px}
body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] span:not([aria-hidden]),
body.page-id-83 nav[aria-label="Fil d'Ariane"] span:not([aria-hidden]){color:#0D1218!important}

/* ---------- titres plus grands ---------- */
/* Bricolage Grotesque a une chasse serree : sans cela, l'espace insecable
   avant les deux-points et le point d'interrogation ne se voit plus. */
.opm-mv .mv-h1,.opm-mv h2,.opm-mv h3{word-spacing:.05em}
.opm-mv .mv-h1{font-size:clamp(42px,5.8vw,76px);line-height:1;letter-spacing:-.035em}
.opm-mv h2{font-size:clamp(31px,4vw,56px);line-height:1.02;margin:12px 0 20px}
.opm-mv h3{font-size:clamp(20px,1.9vw,26px)}
.opm-mv details.mv-item>summary{font-size:clamp(17px,1.6vw,21px)}

/* ---------- respirations manquantes ---------- */
.opm-mv .mv-cartes+.mv-p,
.opm-mv .mv-cartes+.mv-lead,
.opm-mv .mv-cartes+.mv-flag,
.opm-mv .mv-cartes+.mv-tab-wrap,
.opm-mv .mv-tab-wrap+.mv-p,
.opm-mv .mv-acc+.mv-p{margin-top:clamp(26px,3vw,38px)}
.opm-mv .mv-acc+.mv-flag,
.opm-mv .mv-acc+.mv-note,
.opm-mv .mv-acc+.mv-cta-ligne,
.opm-mv .mv-sim+.mv-flag,
.opm-mv .mv-liste+.mv-flag,
.opm-mv .mv-liste-nue+.mv-flag,
.opm-mv .mv-cartes+.mv-flag,
.opm-mv .mv-tab-wrap+.mv-flag,
.opm-mv .mv-chips+.mv-flag,
.opm-mv .mv-flag+.mv-cta-ligne,
.opm-mv .mv-flag+.mv-p{margin-top:clamp(22px,2.6vw,32px)}

/* ---------- simulateur de prix ---------- */
.opm-mv .mv-sim{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(26px,3.4vw,44px);
  align-items:center;background:#FFFFFF;border:1px solid var(--mv-filet);
  border-radius:22px;padding:clamp(26px,3.2vw,44px);margin:0 0 22px;
}
.opm-mv .mv-sim-titre{
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:clamp(21px,2.1vw,28px);letter-spacing:-.02em;color:var(--mv-titre);
  margin:0 0 24px;
}
.opm-mv .mv-sim-bloc{margin:0 0 22px}
.opm-mv .mv-sim-bloc:last-child{margin-bottom:0}
.opm-mv .mv-sim-lab{
  display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--mv-gris);margin:0 0 11px;
}
.opm-mv .mv-sim-ligne{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:0 0 8px}
.opm-mv .mv-sim-ligne .mv-sim-lab{margin:0}
.opm-mv .mv-sim-val{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:22px;color:var(--mv-acc);letter-spacing:-.02em}
.opm-mv .mv-sim-bornes{display:flex;justify-content:space-between;font-size:12px;color:var(--mv-gris);margin-top:4px}

.opm-mv .mv-range{-webkit-appearance:none;appearance:none;width:100%;background:transparent;cursor:pointer;height:24px}
.opm-mv .mv-range::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#EFE3D3}
.opm-mv .mv-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--mv-acc);border:4px solid #FFFFFF;outline:1px solid #E7DDD0;margin-top:-9px}
.opm-mv .mv-range::-moz-range-track{height:6px;border-radius:999px;background:#EFE3D3}
.opm-mv .mv-range::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--mv-acc);border:4px solid #FFFFFF}

.opm-mv .mv-seg{display:flex;flex-wrap:wrap;gap:9px}
.opm-mv .mv-seg .opm-est-opt{
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:14.5px;
  padding:11px 18px;border-radius:999px;cursor:pointer;
  background:#FFFFFF;color:var(--mv-titre);border:1.5px solid var(--mv-filet);
  transition:background .15s,border-color .15s,color .15s;
}
.opm-mv .mv-seg .opm-est-opt:hover{border-color:var(--mv-acc)}
.opm-mv .mv-seg .opm-est-opt.is-on{background:var(--mv-acc);border-color:var(--mv-acc);color:#FFFFFF}

.opm-mv .mv-sim-res{background:linear-gradient(160deg,#FFFAF2 0%,#FCEEDC 100%);border:1px solid #F1E2CE;border-radius:18px;padding:clamp(24px,3vw,36px);text-align:center}
.opm-mv .mv-sim-res-lab{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mv-acc-2);margin:0}
.opm-mv .mv-sim-prix{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(30px,3.4vw,46px);letter-spacing:-.03em;color:var(--mv-titre);margin:10px 0 12px;line-height:1}
.opm-mv .mv-sim-note{font-size:13.5px;line-height:1.5;color:var(--mv-gris);margin:0 auto 20px;max-width:380px}

@media(max-width:900px){
  .opm-mv .mv-sim{grid-template-columns:1fr;gap:28px}
}

/* opm-mv-3 */
/* ==================================================================
   OPM Debarras - corrections d'usage (complement de mv-5/6/7)
   Pastilles visiblement cliquables, tableau comparatif contraste,
   accordeon « En savoir plus » dans les cartes, respirations.
   ================================================================== */

/* ---------- pastilles : on doit voir que c'est un lien ---------- */
.opm-mv .mv-chip{
  color:var(--mv-bleu)!important;
  border-color:#CFE0F5;
  gap:9px;
}
.opm-mv .mv-chip::after{
  content:'\2192';
  font-weight:800;color:var(--mv-acc);line-height:1;
}
.opm-mv .mv-chip span{color:var(--mv-titre);font-weight:700}
.opm-mv .mv-chip:hover{
  background:var(--mv-bleu);border-color:var(--mv-bleu);color:#FFFFFF!important;
}
.opm-mv .mv-chip:hover span{color:#FFFFFF}
.opm-mv .mv-chip:hover::after{color:#FFFFFF}
.opm-mv .mv-chip-plein{color:#FFFFFF!important;border-color:var(--mv-acc)}
.opm-mv .mv-chip-plein::after{color:#FFFFFF}
.opm-mv .mv-chip-plein span{color:#FFFFFF}

/* ---------- tableau comparatif : la colonne OPM ressort ---------- */
.opm-mv .mv-tab th:first-child,
.opm-mv .mv-tab td:first-child{background:#FFFAF3;width:22%}
.opm-mv .mv-tab thead th:last-child{background:var(--mv-acc);color:#FFFFFF}
.opm-mv .mv-tab tbody td:last-child{
  background:#FFF7EC;color:var(--mv-titre);font-weight:600;
}
.opm-mv .mv-tab tbody td:nth-child(2){color:#6C7885}
.opm-mv .mv-tab tbody tr:hover td{background:#FFFAF2}
.opm-mv .mv-tab tbody tr:hover td:last-child{background:#FCEEDC}

/* ---------- « En savoir plus » dans les cartes ---------- */
.opm-mv details.mv-plus{
  border:0;background:transparent;margin:0;padding:0;overflow:visible;
}
.opm-mv details.mv-plus>summary{
  display:inline-flex;align-items:center;gap:8px;
  padding:9px 16px!important;margin:2px 0 0;border-radius:999px;
  background:#FFF7EC;border:1px solid #F1E2CE!important;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:13.5px;letter-spacing:.02em;color:var(--mv-acc-2);
  cursor:pointer;list-style:none;position:static;width:auto;
  outline:none!important;box-shadow:none!important;
}
.opm-mv details.mv-plus>summary::-webkit-details-marker{display:none}
.opm-mv details.mv-plus>summary::marker{content:''}
.opm-mv details.mv-plus>summary::after{
  content:'+';position:static;border:0;transform:none;
  width:auto;height:auto;flex:none;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:17px;line-height:1;
  color:var(--mv-acc);
}
.opm-mv details.mv-plus[open]>summary::after{content:'\2212'}
.opm-mv details.mv-plus>summary:hover{background:var(--mv-ambre);border-color:var(--mv-ambre)!important}
.opm-mv details.mv-plus>ul{margin-top:16px}
.opm-mv details.mv-plus+.mv-p{margin-top:18px}

/* ---------- listes a puces : de vraies petites cartes ----------
   Les puces nues faisaient trop plat. Chaque point devient un bloc
   lisible, avec sa pastille coloree. */
.opm-mv .mv-liste-nue{gap:9px}
.opm-mv .mv-liste-nue li{
  background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:14px;
  padding:13px 18px 13px 44px;font-size:16px;line-height:1.5;
}
.opm-mv .mv-liste-nue li::before{left:17px;top:1.15em}
.opm-mv ul.mv-oui li,.opm-mv ul.mv-non li{padding-left:48px}
.opm-mv ul.mv-oui li::before,.opm-mv ul.mv-non li::before{left:16px;top:.95em}
.opm-mv ul.mv-oui li{border-color:#CDE7D7}
.opm-mv ul.mv-non li{border-color:#F2CFC9}
/* sur une section blanche, la carte prend un fond creme pour se detacher */
.opm-mv>section:nth-of-type(even) .mv-liste-nue li{background:#FDF7EF;border-color:#EFE3D3}
.opm-mv>section:nth-of-type(even) ul.mv-oui li{background:#F1F9F4;border-color:#CDE7D7}
.opm-mv>section:nth-of-type(even) ul.mv-non li{background:#FDF2F0;border-color:#F2CFC9}
/* dans une carte blanche, meme logique */
.opm-mv .mv-carte .mv-liste-nue li,
.opm-mv .mv-carte-f .mv-liste-nue li{background:#FDF7EF;border-color:#EFE3D3}
.opm-mv .mv-carte ul.mv-oui li,
.opm-mv .mv-carte-f ul.mv-oui li{background:#F1F9F4;border-color:#CDE7D7}
.opm-mv .mv-carte ul.mv-non li,
.opm-mv .mv-carte-f ul.mv-non li{background:#FDF2F0;border-color:#F2CFC9}

/* ---------- respirations manquantes ---------- */
.opm-mv .mv-liste-nue+.mv-p,
.opm-mv .mv-liste+.mv-p,
.opm-mv .mv-liste-nue+h3,
.opm-mv .mv-liste+h3,
.opm-mv .mv-p+h3,
.opm-mv .mv-lead+h3{margin-top:clamp(22px,2.6vw,32px)}
.opm-mv .mv-tab-wrap+.mv-p{margin-top:clamp(22px,2.6vw,32px)}

/* opm-mv-4 */
/* ==================================================================
   OPM Debarras - rythme vertical unifie, comparatif visuel,
   cartes illustrees, estimateur « gratuit ou payant »
   (complement de mv-5/6/7/8)
   ================================================================== */

/* ---------- rythme vertical : plus jamais deux blocs colles ----------
   On remet a zero la marge basse des enfants directs des conteneurs de
   contenu, puis on pose une marge haute entre freres. Les titres
   recoivent une respiration plus large. La colonne image (.mv-media)
   est exclue : ses enfants sont positionnes en absolu. */
.opm-mv .mv-pad>*,
.opm-mv .mv-tete>*,
.opm-mv .mv-grid>div:not(.mv-media)>*,
.opm-mv .mv-grid-inv>div:not(.mv-media)>*,
.opm-mv .mv-contact>div>*,
.opm-mv .mv-carte-in>*,
.opm-mv .mv-carte-f>*,
.opm-mv .mv-mot-grid>div>*,
.opm-mv .mv-methode>*,
.opm-mv .mv-acc-corps>*{margin-bottom:0}

.opm-mv .mv-pad>*+*,
.opm-mv .mv-tete>*+*,
.opm-mv .mv-grid>div:not(.mv-media)>*+*,
.opm-mv .mv-grid-inv>div:not(.mv-media)>*+*,
.opm-mv .mv-contact>div>*+*,
.opm-mv .mv-carte-in>*+*,
.opm-mv .mv-carte-f>*+*,
.opm-mv .mv-mot-grid>div>*+*,
.opm-mv .mv-methode>*+*,
.opm-mv .mv-acc-corps>*+*{margin-top:14px}

.opm-mv .mv-pad>*+h2,
.opm-mv .mv-grid>div:not(.mv-media)>*+h2,
.opm-mv .mv-grid-inv>div:not(.mv-media)>*+h2,
.opm-mv .mv-carte-in>*+h2{margin-top:clamp(24px,2.6vw,34px)}

.opm-mv .mv-pad>*+h3,
.opm-mv .mv-grid>div:not(.mv-media)>*+h3,
.opm-mv .mv-grid-inv>div:not(.mv-media)>*+h3,
.opm-mv .mv-carte-in>*+h3,
.opm-mv .mv-mot-grid>div>*+h3{margin-top:clamp(20px,2.2vw,28px)}

.opm-mv .mv-pad>*+.mv-cta-ligne,
.opm-mv .mv-grid>div:not(.mv-media)>*+.mv-cta-ligne,
.opm-mv .mv-grid-inv>div:not(.mv-media)>*+.mv-cta-ligne,
.opm-mv .mv-pad>*+.mv-cartes,
.opm-mv .mv-pad>*+.mv-eg,
.opm-mv .mv-pad>*+.mv-tab-wrap,
.opm-mv .mv-pad>*+.mv-acc{margin-top:clamp(20px,2.2vw,28px)}

/* le surtitre colle a son titre : c'est une etiquette, pas un bloc a part */
.opm-mv .mv-pad>.mv-eyebrow+h2,
.opm-mv .mv-grid>div:not(.mv-media)>.mv-eyebrow+h2,
.opm-mv .mv-grid-inv>div:not(.mv-media)>.mv-eyebrow+h2,
.opm-mv .mv-mot-grid>div>.mv-eyebrow+h2,
.opm-mv .mv-tete>.mv-eyebrow+h2,
.opm-mv .mv-carte-in>.mv-carte-tag+h3{margin-top:6px}

/* l'entete de section garde sa respiration propre */
.opm-mv .mv-tete{margin-bottom:0}
.opm-mv .mv-pad>*+.mv-tete{margin-top:clamp(26px,3vw,36px)}
.opm-mv .mv-tete>*+*{margin-top:8px}

/* sections un cran moins hautes */
.opm-mv .mv-sec{padding-top:clamp(42px,5vw,68px);padding-bottom:clamp(42px,5vw,68px)}

/* ---------- listes oui / non : toujours teintees ----------
   (mv-8 ne les teintait que dans les sections a fond blanc) */
.opm-mv .mv-pad ul.mv-liste-nue.mv-oui li{background:#F1F9F4;border-color:#C6E4D1}
.opm-mv .mv-pad ul.mv-liste-nue.mv-non li{background:#FDF2F0;border-color:#F2CCC6}

/* ---------- comparatif : coches vertes et croix rouges ---------- */
.opm-mv .mv-tab td.mv-td-non::before,
.opm-mv .mv-tab td.mv-td-ok::before{
  content:'';display:inline-block;vertical-align:-5px;
  width:21px;height:21px;border-radius:50%;margin-right:11px;
  background-repeat:no-repeat;background-position:center;background-size:12px 12px;
}
.opm-mv .mv-tab td.mv-td-non::before{
  background-color:#C4362A;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E");
}
.opm-mv .mv-tab td.mv-td-ok::before{
  background-color:#2E8B57;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
}
.opm-mv .mv-tab td.mv-td-non{color:#8A7F7A}
.opm-mv .mv-tab td.mv-td-ok{color:var(--mv-titre)}

/* ---------- cartes illustrees ----------
   (l'image porte elle-meme .mv-carte-img, defini dans mv-5.css) */
.opm-mv .mv-carte-img{height:clamp(235px,19vw,300px)}

/* ---------- puces des listes typees : des pastilles, plus de pictogrammes ---------- */
.opm-mv ul.mv-oui li::before,
.opm-mv ul.mv-non li::before{
  background-image:none!important;
  width:10px!important;height:10px!important;
  border-radius:50%!important;
  left:20px!important;
  top:calc(13px + .52em)!important;
}
.opm-mv ul.mv-oui li::before{background-color:#2E8B57!important;border:4px solid #D5EBDF!important}
.opm-mv ul.mv-non li::before{background-color:#C4362A!important;border:4px solid #F6D8D3!important}
.opm-mv ul.mv-oui li,.opm-mv ul.mv-non li{padding:13px 20px 13px 52px!important}

/* hors carte, la pastille reste calee sur la premiere ligne */
.opm-mv .mv-carte-fond ul.mv-oui li,.opm-mv .mv-carte-fond ul.mv-non li{padding:0 0 0 32px!important}
.opm-mv .mv-carte-fond ul.mv-oui li::before,.opm-mv .mv-carte-fond ul.mv-non li::before{left:0!important;top:.42em!important}

/* ---------- avis clients ---------- */
.opm-mv .mv-avis-zone{position:relative}
.opm-mv .mv-avis{
  display:flex;gap:clamp(16px,1.8vw,24px);
  overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;
  padding-bottom:4px;
}
.opm-mv .mv-avis::-webkit-scrollbar{display:none}
.opm-mv .mv-avis>.mv-avis-carte{
  flex:0 0 calc((100% - 2*clamp(16px,1.8vw,24px)) / 3);
  scroll-snap-align:start;
}
@media(max-width:1100px){.opm-mv .mv-avis>.mv-avis-carte{flex-basis:calc((100% - clamp(16px,1.8vw,24px)) / 2)}}
@media(max-width:720px){.opm-mv .mv-avis>.mv-avis-carte{flex-basis:100%}}

/* fleches du carrousel */
.opm-mv .mv-avis-nav{display:flex;gap:10px;justify-content:flex-end;margin-bottom:14px}
.opm-mv .mv-avis-nav button{
  width:44px;height:44px;border-radius:50%;cursor:pointer;
  background:#FFFFFF;border:1.5px solid var(--mv-filet);color:var(--mv-titre);
  display:flex;align-items:center;justify-content:center;
  font-size:19px;line-height:1;transition:border-color .15s,background .15s,opacity .15s;
}
.opm-mv .mv-avis-nav button:hover:not(:disabled){border-color:var(--mv-acc);color:var(--mv-acc)}
.opm-mv .mv-avis-nav button:disabled{opacity:.35;cursor:default}
.opm-mv .mv-avis-carte{
  display:flex;flex-direction:column;gap:12px;
  background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:18px;
  padding:clamp(22px,2.2vw,28px);
}
.opm-mv .mv-avis-tete{display:flex;align-items:center;gap:12px}
.opm-mv .mv-avis-ini{
  flex:none;width:42px;height:42px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#FFF3E2;color:#8A5200;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:15px;
}
.opm-mv .mv-avis-nom{
  display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:16px;color:var(--mv-titre);line-height:1.25;
}
.opm-mv .mv-avis-meta{display:block;font-size:12.5px;color:var(--mv-gris);line-height:1.4}
.opm-mv .mv-avis-txt{margin:0;font-size:15.5px;line-height:1.6;color:var(--mv-texte)}
.opm-mv .mv-avis-src{
  margin-top:auto;padding-top:4px;font-size:12.5px;color:var(--mv-gris);
}
/* marque Google, citee comme source des avis */
.opm-mv .mv-avis-g{
  display:inline-block;width:20px;height:20px;vertical-align:-4px;margin-right:8px;
  background-repeat:no-repeat;background-position:center;background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3C/svg%3E");
}

/* ---------- carte a fond legerement teinte ---------- */
/* toujours blanche : le beige sur fond clair a ete refuse */
.opm-mv .mv-carte-fond{
  background:#FFFFFF!important;
  border:1px solid var(--mv-filet)!important;
}
/* dans une carte, les listes restent plates : pas de boite dans la boite */
.opm-mv .mv-carte-fond .mv-liste li,
.opm-mv .mv-carte-fond .mv-liste-nue li{
  background:none!important;border:0!important;border-radius:0!important;
  padding:0!important;gap:12px;font-size:16px;color:var(--mv-texte);
}
.opm-mv .mv-carte-fond .mv-liste{gap:12px;margin-bottom:0}
.opm-mv .mv-carte-fond .mv-liste-nue li::before{position:static;margin-top:.5em}

/* ---------- grille de cartes : trois par ligne ---------- */
.opm-mv .mv-cartes-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1100px){.opm-mv .mv-cartes-3{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.opm-mv .mv-cartes-3{grid-template-columns:1fr!important}}

/* ---------- carte d'itineraire des pages villes ---------- */
.opm-mv .mv-carte-map{
  border:1px solid var(--mv-filet);border-radius:18px;overflow:hidden;background:#FFFFFF;
}
.opm-mv .mv-carte-map iframe{
  display:block;width:100%;height:clamp(260px,26vw,380px);border:0;
}

/* ---------- panneau de resultat du simulateur : bien plus visible ---------- */
.opm-mv .mv-sim-res{
  background:linear-gradient(165deg,#FFEFD8 0%,#F9DCB2 100%)!important;
  border:1px solid #EFC89A!important;
}

/* ---------- estimateur « votre debarras peut-il etre gratuit ? » ---------- */
.opm-mv .mv-eg{
  display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(26px,3.4vw,44px);
  align-items:center;background:#FFFFFF;border:1px solid var(--mv-filet);
  border-radius:22px;padding:clamp(26px,3.2vw,44px);
}
.opm-mv .mv-eg-q+.mv-eg-q{margin-top:24px}
.opm-mv .mv-eg-lab{
  display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--mv-gris);margin:0 0 12px;
}
.opm-mv .mv-eg-opts{display:flex;flex-wrap:wrap;gap:9px}
.opm-mv .mv-eg-opt{
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:14.5px;
  line-height:1.25;text-align:left;padding:11px 18px;border-radius:999px;cursor:pointer;
  background:#FFFFFF;color:var(--mv-titre);border:1.5px solid var(--mv-filet);
  transition:background .15s,border-color .15s,color .15s;
}
.opm-mv .mv-eg-opt:hover{border-color:var(--mv-acc)}
.opm-mv .mv-eg-opt.is-on{background:var(--mv-acc);border-color:var(--mv-acc);color:#FFFFFF}

.opm-mv .mv-eg-res{border-radius:18px;padding:clamp(24px,3vw,34px);text-align:center;border:1px solid}
.opm-mv .mv-eg-res.is-ok{background:#EDF8F1;border-color:#C6E4D1}
.opm-mv .mv-eg-res.is-mid{background:#FFF6E4;border-color:#F1DDB6}
.opm-mv .mv-eg-res.is-non{background:#FDF1EF;border-color:#F2CCC6}
.opm-mv .mv-eg-pastille{
  display:block;width:54px;height:54px;border-radius:50%;margin:0 auto 15px;
  background-repeat:no-repeat;background-position:center;background-size:27px 27px;
}
.opm-mv .mv-eg-res.is-ok .mv-eg-pastille{background-color:#2E8B57;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
.opm-mv .mv-eg-res.is-mid .mv-eg-pastille{background-color:#E8A317;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 5v9'/%3E%3Cpath d='M12 18h.01'/%3E%3C/svg%3E")}
.opm-mv .mv-eg-res.is-non .mv-eg-pastille{background-color:#C4362A;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18'/%3E%3Cpath d='m6 6 12 12'/%3E%3C/svg%3E")}
.opm-mv .mv-eg-titre{
  font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;
  font-size:clamp(21px,2.2vw,29px);letter-spacing:-.02em;line-height:1.15;
  color:var(--mv-titre);margin:0 0 12px;
}
.opm-mv .mv-eg-txt{font-size:15.5px;line-height:1.55;color:var(--mv-texte);margin:0 auto 22px;max-width:400px}
.opm-mv .mv-eg-note{font-size:13px;line-height:1.5;color:var(--mv-gris);margin:18px auto 0;max-width:400px}

@media(max-width:900px){
  .opm-mv .mv-eg{grid-template-columns:1fr;gap:28px}
}

/* opm-mv-5 */
/* ==================================================================
   OPM Debarras - charte « mv » etendue au reste du site
   (accueil, pages communes, contact, histoire, zones)
   Regle de base : aucune section sombre. On alterne blanc et degrade
   orange tres clair, le bleu ne sert qu'aux titres et aux liens.
   ================================================================== */

/* ---------- sections autrefois bleu fonce ---------- */
.d134,.d101,.d264,.d51,.d207,.d216,.d102{
  background:linear-gradient(180deg,#FFFBF4 0%,#FDF3E6 100%)!important;
  color:#1B2229!important;
}

/* tout le texte de ces sections repasse en noir de charte */
.d134 *,.d101 *,.d264 *,.d51 *,.d207 *,.d216 *,.d102 *{color:#1B2229!important}

.d134 h1,.d134 h2,.d134 h3,.d134 h4,
.d101 h1,.d101 h2,.d101 h3,.d101 h4,
.d264 h1,.d264 h2,.d264 h3,.d264 h4,
.d51 h1,.d51 h2,.d51 h3,.d51 h4,
.d207 h2,.d207 h3,.d216 h2,.d216 h3,.d102 h2,.d102 h3{color:#0D1218!important}

/* surtitres en orange, mot mis en avant du H1 en bleu */
.d134 .d94,.d101 .d17,.d264 .d17,.d51 .d17,.d207 .d17,.d216 .d17{color:#C96A00!important}
.d134 .d209,.opm-surligne{color:#1257AD!important;background:none!important}

/* ---------- cartes autrefois bleu nuit : blanches ---------- */
.d13,.d45,.d62,.d68,.d88,.d123,.d138,.d167,.d185,.d204,.d235,.d238{
  background:#FFFFFF!important;
  border:1px solid #E7DDD0!important;
  color:#1B2229!important;
}
.d138 *,.d68 *,.d13 *,.d62 *,.d45 *,.d88 *,.d123 *,.d167 *,.d185 *,.d204 *,.d235 *,.d238 *{color:#1B2229!important}
.d138 h3,.d68 h3,.d88 h3,.d123 h3,.d167 h3,.d185 h3,.d204 h3,.d235 h3,.d238 h3,
.d101 .d96,.d264 .d70,.d51 .d74{color:#0D1218!important}

/* fond neutre derriere les images */
.d37{background:#FDF3E6!important}

/* ---------- boutons : l'orange garde son texte blanc ---------- */
.d134 .d57,.d134 .d57 *,
.d51 .d66,.d51 .d66 *,
.d101 .d133,.d101 .d133 *,
.d264 .d133,.d264 .d133 *,
.d51 .d133,.d51 .d133 *,
.d134 .d317,.d134 .d317 *{color:#FFFFFF!important}

/* bouton secondaire : il etait blanc translucide sur fond sombre */
.d134 .d58,.d134 .d58 *,.d51 .d58,.d51 .d58 *{
  background:#FFFFFF!important;
  border:1.5px solid #E7DDD0!important;
  color:#0D1218!important;
}
.d134 .d58:hover{border-color:#C96A00!important}

/* pastilles translucides posees sur fond clair */
.d264 .d176,.d51 .d34{background:#FFF3E2!important;border:1px solid #F1E2CE!important;color:#8A5200!important}

/* ---------- en-tete : plus d'ombre portee, filet de charte ---------- */
header[style*="position:sticky"]{
  background:#FFFFFF!important;
  border-bottom:1px solid #E7DDD0!important;
  box-shadow:none!important;
}
header .r-desknav a{color:#1B2229!important}
header .r-desknav a:hover{color:#C96A00!important}
header .r-desknav a.opm-cta,header .r-desknav a.opm-cta:hover{color:#FFFFFF!important}
header .r-burger{border-color:#E7DDD0!important;color:#1B2229!important}
header .r-burger svg{stroke:#1B2229!important}
#opm-mobile-menu{background:#FFFFFF!important;border-top-color:#E7DDD0!important}
#opm-mobile-menu a{color:#1B2229!important;border-bottom-color:#E7DDD0!important}
#opm-mobile-menu a[href^="tel:"]{color:#FFFFFF!important}

/* ---------- badge Website Carbon, fait maison ----------
   Deux cellules comme le badge officiel : la mesure a gauche, la signature
   a droite. Chiffres releves le 2026-08-28 sur websitecarbon.com. */
.opm-carbone{
  display:inline-flex;align-items:stretch;max-width:100%;
  border:1px solid #E7DDD0;border-radius:10px;overflow:hidden;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;
  font-size:12.5px;font-weight:700;line-height:1.2;text-decoration:none;
}
.opm-carbone .wcb-mesure{
  display:flex;flex-direction:column;justify-content:center;gap:3px;
  padding:9px 15px;background:#FFFFFF;color:#1B2229;
}
.opm-carbone .wcb-sous{font-weight:600;font-size:11.5px;color:#5A6672}
.opm-carbone .wcb-marque{
  display:flex;align-items:center;padding:10px 15px;
  background:#C96A00;color:#FFFFFF;white-space:nowrap;transition:background .2s ease;
}
.opm-carbone:hover .wcb-marque{background:#A85700}
.opm-carbone sub{font-size:.75em;line-height:0}

/* ---------- pied de page en charte claire ---------- */
.opm-pied .opm-foot-col nav a{
  display:block;
  font-family:'Hanken Grotesk',system-ui,sans-serif;
  font-size:15px;line-height:1.5;padding:5px 0;
  color:#1B2229!important;
}
.opm-pied .opm-foot-col nav a:hover{color:#1257AD!important}
.opm-pied a:hover{color:#C96A00}

/* ---------- liens du contenu : bleu de charte ---------- */
.d264 a:not([class*="cta"]),.d51 a:not([class*="cta"]),.d101 a:not([class*="cta"]){color:#1257AD!important}
.d138:hover,.d68:hover{border-color:#C96A00!important}

/* opm-mv-6 */
/* ==================================================================
   OPM Debarras - accueil : « Ce que nous debarrassons » en tuiles,
   avant / apres des cartes services, comparateur des realisations.
   Complement de mv-5 a mv-9 et mv-site. Aucune ombre, aucun liseré
   pose sur un bord de carte.
   ================================================================== */

/* ---------- Ce que nous debarrassons : deux cartes, tuiles illustrees ---------- */
.opm-mv .mv-pad>*+.mv-presta{margin-top:clamp(22px,2.6vw,34px)}
.opm-mv .mv-presta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,28px);align-items:start}
.opm-mv .mv-presta>*{min-width:0}
.opm-mv .mv-presta-carte{background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:24px;overflow:hidden}
.opm-mv .mv-presta-media{position:relative;overflow:hidden;height:clamp(190px,16vw,250px);background:#FDF3E6}
.opm-mv .mv-presta-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.opm-mv .mv-presta-pour{position:absolute;left:18px;bottom:18px;margin:0;display:inline-flex;align-items:center;gap:9px;background:#FFFFFF;border-radius:999px;padding:9px 16px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:13px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;color:var(--mv-titre)}
.opm-mv .mv-presta-pour::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--mv-acc)}
.opm-mv .mv-presta-in{padding:clamp(20px,2.2vw,30px)}
.opm-mv .mv-presta-in>h3{margin:0}
.opm-mv .mv-presta-liste{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.opm-mv .mv-presta-liste li{display:flex;flex-direction:column;gap:12px;min-width:0;background:#FDF7EF;border:1px solid #EFE3D3;border-radius:16px;padding:16px 16px 18px;font-size:15.5px;line-height:1.5;color:var(--mv-texte);transition:background-color .3s ease,border-color .3s ease}
.opm-mv .mv-presta-liste li:hover{background:#FFF1DE;border-color:#EBC795}
.opm-mv .mv-presta-liste li::before{content:'';flex:none;width:46px;height:46px;border-radius:13px;border:1px solid #EFE3D3;background:#FFFFFF var(--ico) center/24px 24px no-repeat}
.opm-mv .mv-presta-liste strong{color:var(--mv-titre);font-weight:800}

.opm-mv .mv-ico-maison{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-7 9 7'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-appart{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='18' rx='1.5'/%3E%3Cpath d='M9 7h2M13 7h2M9 11h2M13 11h2M9 15h2M13 15h2'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-deces{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-cave{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8l9-4 9 4-9 4-9-4z'/%3E%3Cpath d='M3 8v8l9 4 9-4V8'/%3E%3Cpath d='M12 12v8'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-diogene{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v4M12 17v4M3 12h4M17 12h4M6.3 6.3l2.5 2.5M15.2 15.2l2.5 2.5M6.3 17.7l2.5-2.5M15.2 8.8l2.5-2.5'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-squat{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='15' r='4'/%3E%3Cpath d='M11 12l9-9M16 7l3 3M14 9l2 2'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-bureau{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='1.5'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-commerce{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9l2-5h12l2 5M4 9h16M5 9v11h14V9M10 20v-5h4v5'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-hotel{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 18V7M3 13h18v5M21 13v-1a3 3 0 0 0-3-3h-7v4'/%3E%3Ccircle cx='7' cy='10' r='2'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-archives{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-copro{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20h5v-5h5v-5h5V5h3'/%3E%3C/svg%3E")}
.opm-mv .mv-ico-sinistre{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3s6 6.5 6 11a6 6 0 0 1-12 0c0-4.5 6-11 6-11z'/%3E%3C/svg%3E")}

/* ---------- Nos services : avant / apres cote a cote, bouton en bas ---------- */
.opm-mv .mv-duo{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#FFFFFF}
.opm-mv .mv-duo figure{position:relative;margin:0;overflow:hidden;aspect-ratio:1/1;background:#FDF3E6}
.opm-mv .mv-duo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.opm-mv .mv-duo-tag{position:absolute;left:10px;top:10px;padding:5px 11px;border-radius:999px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:11.5px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase}
.opm-mv .mv-duo figure:first-child .mv-duo-tag{background:#FFFFFF;color:var(--mv-titre)}
.opm-mv .mv-duo figure+figure .mv-duo-tag{background:var(--mv-acc);color:#FFFFFF}
.opm-mv #services .mv-carte-in{display:flex;flex-direction:column;flex:1}
.opm-mv #services .mv-carte-cta{margin-top:auto;padding-top:20px}
.opm-mv .mv-cta.mv-cta-carte{padding:13px 22px;font-size:15px}

/* ---------- Estimateur : sous-titre conserve sous le H2 ---------- */
.opm-mv .mv-tete .mv-sous-titre{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:clamp(19px,1.7vw,24px);line-height:1.3;color:var(--mv-titre)}

/* ---------- Realisations : comparateur avant / apres ---------- */
.opm-mv .mv-pad>*+.mv-ba{margin-top:clamp(22px,2.6vw,34px)}
.opm-mv .mv-ba{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:clamp(18px,2.2vw,32px);align-items:start}
.opm-mv .mv-ba>*{min-width:0}
.opm-mv .mv-ba:not(.is-js){grid-template-columns:1fr}
.opm-mv .mv-ba:not(.is-js) .mv-ba-item+.mv-ba-item{margin-top:clamp(28px,3vw,40px)}
.opm-mv .mv-ba:not(.is-js) .mv-ba-choix{display:none}
.opm-mv .mv-ba-item[hidden]{display:none!important}

.opm-mv .mv-ba-stage{--p:50%;position:relative;margin:0;aspect-ratio:3/2;border-radius:22px;overflow:hidden;background:#1B2229;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.opm-mv .mv-ba-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;-webkit-user-drag:none}
.opm-mv .mv-ba-stage .mv-ba-av{clip-path:inset(0 calc(100% - var(--p)) 0 0)}
.opm-mv .mv-ba-ligne{position:absolute;top:0;bottom:0;left:var(--p);width:3px;margin-left:-1.5px;background:#FFFFFF;pointer-events:none}
.opm-mv .mv-ba-poignee{position:absolute;top:50%;left:var(--p);width:58px;height:58px;margin:-29px 0 0 -29px;box-sizing:border-box;border-radius:50%;background:var(--mv-acc);border:3px solid #FFFFFF;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:9px;transition:transform .25s ease}
.opm-mv .mv-ba-poignee::before,.opm-mv .mv-ba-poignee::after{content:'';width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent}
.opm-mv .mv-ba-poignee::before{border-right:8px solid #FFFFFF}
.opm-mv .mv-ba-poignee::after{border-left:8px solid #FFFFFF}
.opm-mv .mv-ba-stage:hover .mv-ba-poignee,.opm-mv .mv-ba-stage.is-drag .mv-ba-poignee{transform:scale(1.08)}
.opm-mv .mv-ba-tag{position:absolute;top:16px;padding:7px 14px;border-radius:999px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:12.5px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;pointer-events:none}
.opm-mv .mv-ba-tag-av{left:16px;background:#FFFFFF;color:var(--mv-titre)}
.opm-mv .mv-ba-tag-ap{right:16px;background:var(--mv-acc);color:#FFFFFF}
.opm-mv .mv-ba-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;pointer-events:none}
.opm-mv .mv-ba-stage:has(.mv-ba-range:focus-visible){outline:3px solid var(--mv-bleu);outline-offset:3px}

.opm-mv .mv-ba-aide{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:700;font-size:14.5px;color:var(--mv-acc-2)}
.opm-mv .mv-ba-aide::before{content:'';width:26px;height:14px;flex:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 14' fill='none' stroke='%23C96A00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 7h24M6 2L1 7l5 5M20 2l5 5-5 5'/%3E%3C/svg%3E") center/contain no-repeat}
.opm-mv .mv-ba-txt{margin-top:18px}
.opm-mv .mv-ba-txt h3{margin:0}
.opm-mv .mv-ba-txt .mv-p{margin:8px 0 0;max-width:62ch}

.opm-mv .mv-ba-choix{display:grid;gap:10px}
.opm-mv .mv-ba-choix button{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:14px;width:100%;margin:0;text-align:left;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:16px;padding:8px 16px 8px 8px;cursor:pointer;font:inherit;color:var(--mv-texte);transition:background-color .3s ease,border-color .3s ease}
.opm-mv .mv-ba-choix button:hover{border-color:#EBC795}
.opm-mv .mv-ba-choix button.is-on{background:#FFF1DE;border-color:var(--mv-acc)}
.opm-mv .mv-ba-choix button:focus-visible{outline:3px solid var(--mv-bleu);outline-offset:2px}
.opm-mv .mv-ba-choix img{width:78px;height:60px;object-fit:cover;border-radius:10px;display:block}
.opm-mv .mv-ba-choix b{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:15.5px;line-height:1.3;color:var(--mv-titre)}
.opm-mv .mv-ba-choix small{display:block;margin-top:3px;font-size:13px;line-height:1.35;color:#5A6672}

/* ---------- surcharges responsive : toujours en dernier ---------- */
@media (max-width:1100px){
  .opm-mv .mv-presta{grid-template-columns:1fr}
  .opm-mv .mv-ba{grid-template-columns:1fr}
  .opm-mv .mv-ba-choix{grid-auto-flow:column;grid-auto-columns:minmax(min(250px,82%),1fr);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
  .opm-mv .mv-ba-choix button{scroll-snap-align:start}
}
@media (max-width:640px){
  .opm-mv .mv-presta-liste{grid-template-columns:1fr}
  .opm-mv .mv-presta-liste li{flex-direction:row;align-items:center;gap:14px;padding:12px 14px}
  .opm-mv .mv-presta-liste li::before{width:42px;height:42px}
  .opm-mv .mv-ba-stage{aspect-ratio:1/1;border-radius:18px}
  .opm-mv .mv-ba-poignee{width:50px;height:50px;margin:-25px 0 0 -25px}
  .opm-mv .mv-ba-tag{top:12px;font-size:11.5px;padding:6px 11px}
  .opm-mv .mv-ba-tag-av{left:12px}
  .opm-mv .mv-ba-tag-ap{right:12px}
}

/* opm-mv-7 */
/* ==================================================================
   OPM Debarras - « Ce que nous debarrassons » : puces courtes qui tapent.
   Un mot ou deux par ligne, en gros, lisible en deux secondes.
   ================================================================== */
.opm-mv .mv-puces{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:30px}
.opm-mv .mv-puces li{position:relative;min-width:0;padding:14px 0 14px 34px;border-bottom:1px solid var(--mv-filet);font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(18px,1.45vw,21px);line-height:1.2;color:var(--mv-titre)}
.opm-mv .mv-puces li::before{content:'';position:absolute;left:0;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--mv-acc) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px 13px no-repeat}
.opm-mv .mv-puces li:nth-last-child(-n+2){border-bottom:0}

@media (max-width:640px){
  .opm-mv .mv-puces{grid-template-columns:1fr}
  .opm-mv .mv-puces li:nth-last-child(2){border-bottom:1px solid var(--mv-filet)}
  .opm-mv .mv-puces li{padding:12px 0 12px 32px}
}

/* opm-mv-8 */
/* ==================================================================
   OPM Debarras - accueil : nos formules (prix a partir de) et bloc
   meteo « Bon jour pour un debarras ? ». Visuel d'abord, peu de texte.
   ================================================================== */

/* ---------- Nos formules ---------- */
.opm-mv .mv-pad>*+.mv-formules{margin-top:clamp(22px,2.6vw,34px)}
.opm-mv .mv-formules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,24px);align-items:stretch}
.opm-mv .mv-formules>*{min-width:0}
.opm-mv .mv-formule{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:24px;padding:clamp(24px,2.4vw,34px)}
.opm-mv .mv-formule h3{margin:0;font-size:clamp(21px,1.7vw,26px);line-height:1.15;color:var(--mv-titre)}
.opm-mv .mv-formule-prix{margin:16px 0 0;display:flex;flex-direction:column;gap:4px;font-family:'Bricolage Grotesque',system-ui,sans-serif}
.opm-mv .mv-formule-prix span{font-size:13px;font-weight:800;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;color:#5A6672}
.opm-mv .mv-formule-prix b{font-size:clamp(46px,4.6vw,68px);line-height:1;font-weight:800;color:var(--mv-acc)}
.opm-mv .mv-formule .mv-puces{grid-template-columns:1fr;margin:20px 0 26px}
.opm-mv .mv-formule .mv-puces li{font-size:17px;padding:11px 0 11px 32px}
.opm-mv .mv-formule .mv-puces li:nth-last-child(2){border-bottom:1px solid var(--mv-filet)}
.opm-mv .mv-formule .mv-cta{margin-top:auto;justify-content:center;width:100%;box-sizing:border-box}

/* formule du milieu : fond orange plein, texte blanc (jamais de liseré sur un bord) */
.opm-mv .mv-formule-fort{background:var(--mv-acc);border-color:var(--mv-acc)}
.opm-mv .mv-formule-fort h3,.opm-mv .mv-formule-fort .mv-formule-prix b{color:#FFFFFF}
.opm-mv .mv-formule-fort .mv-formule-prix span{color:#FFE7C7}
.opm-mv .mv-formule-fort .mv-puces li{color:#FFFFFF;border-bottom-color:rgba(255,255,255,.28)}
.opm-mv .mv-formule-fort .mv-puces li:nth-last-child(2){border-bottom-color:rgba(255,255,255,.28)}
.opm-mv .mv-formule-fort .mv-puces li::before{background:#FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C96A00' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px 13px no-repeat}
.opm-mv .mv-formule-fort .mv-cta{background:#FFFFFF;color:var(--mv-acc)!important}
.opm-mv .mv-formule-fort .mv-cta:hover{background:#FFF1DE;color:var(--mv-acc-2)!important}

/* ---------- Meteo ---------- */
.opm-mv .mv-pad>*+.mv-meteo{margin-top:clamp(22px,2.6vw,34px)}
.opm-mv .mv-meteo-jours{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.opm-mv .mv-meteo-jour{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;background:#FFFFFF;border:1px solid var(--mv-filet);border-radius:22px;padding:18px 18px 20px}
.opm-mv .mv-meteo-jour>*{margin:0}
.opm-mv .mv-meteo-date{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:13px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;color:#5A6672}
.opm-mv .mv-meteo-ico{display:block;width:54px;height:54px;background-position:center;background-size:contain;background-repeat:no-repeat}
.opm-mv .mv-meteo-temp{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(30px,2.6vw,40px);line-height:1;color:var(--mv-titre)}
.opm-mv .mv-meteo-det{font-size:13.5px;line-height:1.45;color:#5A6672}
.opm-mv .mv-meteo-verdict{margin-top:auto!important;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:14px;line-height:1.1}
.opm-mv .mv-meteo-verdict::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}
.opm-mv .is-ok .mv-meteo-verdict{background:#E3F4EA;color:#1E6B40}
.opm-mv .is-mid .mv-meteo-verdict{background:#FFF1DE;color:#8A5200}
.opm-mv .is-non .mv-meteo-verdict{background:#FBE4E1;color:#A62C21}

.opm-mv .mv-meteo-jour.is-auj{padding:22px 24px 24px}
.opm-mv .mv-meteo-jour.is-auj .mv-meteo-ico{width:84px;height:84px}
.opm-mv .mv-meteo-jour.is-auj .mv-meteo-temp{font-size:clamp(48px,4.4vw,66px)}
.opm-mv .mv-meteo-jour.is-auj .mv-meteo-verdict{font-size:16px;padding:10px 18px}
.opm-mv .mv-meteo-jour.is-auj.is-ok{background:#F1F9F4;border-color:#C6E4D1}
.opm-mv .mv-meteo-jour.is-auj.is-mid{background:#FFF7EC;border-color:#F0D9B5}
.opm-mv .mv-meteo-jour.is-auj.is-non{background:#FDF2F0;border-color:#F2CCC6}

.opm-mv .mv-meteo-src{margin:14px 0 0;font-size:13px;line-height:1.5;color:#5A6672}
.opm-mv .mv-meteo-src a{color:var(--mv-bleu);font-weight:700}
.opm-mv .mv-meteo+.mv-cta-ligne{margin-top:clamp(20px,2.2vw,28px)}

.opm-mv .mv-meteo-ico-soleil{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E08A00' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4.5'/%3E%3Cpath d='M12 2.5v2.5M12 19v2.5M2.5 12H5M19 12h2.5M5.3 5.3l1.8 1.8M16.9 16.9l1.8 1.8M5.3 18.7l1.8-1.8M16.9 7.1l1.8-1.8'/%3E%3C/svg%3E")}
.opm-mv .mv-meteo-ico-eclaircie{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='%23E08A00' d='M8 2.5V4M2.5 8H4M4.1 4.1l1 1M11.9 4.1l-1 1M10.8 9.4A3.2 3.2 0 0 0 5 9.6'/%3E%3Cpath stroke='%235A6672' d='M8 20h9.5a3.8 3.8 0 0 0 .4-7.6 5.3 5.3 0 0 0-10.2 1.4A3.1 3.1 0 0 0 8 20z'/%3E%3C/svg%3E")}
.opm-mv .mv-meteo-ico-nuage{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A6672' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 19h10a4 4 0 0 0 .5-8 5.5 5.5 0 0 0-10.6 1.5A3.3 3.3 0 0 0 7 19z'/%3E%3C/svg%3E")}
.opm-mv .mv-meteo-ico-pluie{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='%235A6672' d='M7 15h10a4 4 0 0 0 .5-8 5.5 5.5 0 0 0-10.6 1.5A3.3 3.3 0 0 0 7 15z'/%3E%3Cpath stroke='%231257AD' d='M8.5 18l-1 3M12.5 18l-1 3M16.5 18l-1 3'/%3E%3C/svg%3E")}
.opm-mv .mv-meteo-ico-neige{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='%235A6672' stroke-width='1.8' d='M7 15h10a4 4 0 0 0 .5-8 5.5 5.5 0 0 0-10.6 1.5A3.3 3.3 0 0 0 7 15z'/%3E%3Cpath stroke='%231257AD' stroke-width='3' d='M8.5 19h.01M12.5 21h.01M16.5 19h.01'/%3E%3C/svg%3E")}
.opm-mv .mv-meteo-ico-orage{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='%235A6672' d='M7 15h10a4 4 0 0 0 .5-8 5.5 5.5 0 0 0-10.6 1.5A3.3 3.3 0 0 0 7 15z'/%3E%3Cpath stroke='%23E08A00' d='M13 15l-3 4h4l-3 4'/%3E%3C/svg%3E")}

/* ---------- surcharges responsive : toujours en dernier ---------- */
@media (max-width:1100px){
  .opm-mv .mv-meteo-jours{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opm-mv .mv-meteo-jour.is-auj{grid-column:1/-1}
}
@media (max-width:980px){
  .opm-mv .mv-formules{grid-template-columns:1fr}
}
@media (max-width:640px){
  .opm-mv .mv-meteo-jour{padding:14px 14px 16px}
  .opm-mv .mv-meteo-ico{width:44px;height:44px}
  .opm-mv .mv-meteo-jour.is-auj .mv-meteo-ico{width:68px;height:68px}
}

/* opm-mv-9 */
/* ==================================================================
   OPM Debarras - responsive mobile de l'accueil :
   zone d'intervention en grille, « Ce que nous debarrassons » compact.
   ================================================================== */
@media (max-width:640px){
  /* communes : deux colonnes egales, code postal sous le nom, fleche a droite */
  .opm-mv #zone .mv-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .opm-mv #zone .mv-chip{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-width:0;min-height:58px;box-sizing:border-box;padding:9px 30px 9px 14px;border-radius:14px;font-size:15px;line-height:1.2;overflow-wrap:anywhere}
  .opm-mv #zone .mv-chip span{font-size:12.5px;font-weight:600}
  .opm-mv #zone .mv-chip::after{position:absolute;right:12px;top:50%;transform:translateY(-50%)}

  /* ce que nous debarrassons : image moins haute, puces sur deux colonnes */
  .opm-mv .mv-presta{gap:14px}
  .opm-mv .mv-presta-media{height:150px}
  .opm-mv .mv-presta-pour{left:12px;bottom:12px;padding:7px 13px;font-size:12px}
  .opm-mv .mv-presta-in{padding:16px 16px 12px}
  .opm-mv .mv-presta .mv-puces{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;margin-top:10px}
  .opm-mv .mv-presta .mv-puces li{font-size:15.5px;padding:10px 0 10px 27px;border-bottom:1px solid var(--mv-filet)}
  .opm-mv .mv-presta .mv-puces li:nth-last-child(-n+2){border-bottom:0}
  .opm-mv .mv-presta .mv-puces li::before{width:19px;height:19px;margin-top:-9.5px;background-size:11px 11px}
}

/* opm-mv-10 */
/* ==================================================================
   OPM Debarras - formules : plus de bleu de charte (#1257AD).
   Carte du milieu en bleu profond (jamais de bleu clair en fond),
   titres des cartes laterales en bleu, boutons orange conserves.
   ================================================================== */
.opm-mv .mv-formule h3{color:var(--mv-bleu)}
.opm-mv .mv-formule .mv-formule-prix span{color:var(--mv-bleu)}

.opm-mv .mv-formule-fort{background:var(--mv-bleu);border-color:var(--mv-bleu)}
.opm-mv .mv-formule-fort h3,.opm-mv .mv-formule-fort .mv-formule-prix b{color:#FFFFFF}
.opm-mv .mv-formule-fort .mv-formule-prix span{color:#FFD9AC}
.opm-mv .mv-formule-fort .mv-puces li::before{background:#FFFFFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231257AD' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/13px 13px no-repeat}
.opm-mv .mv-formule-fort .mv-cta{background:var(--mv-acc);color:#FFFFFF!important}
.opm-mv .mv-formule-fort .mv-cta:hover{background:var(--mv-acc-2);color:#FFFFFF!important}

/* opm-mv-11 */
/* ==================================================================
   OPM Debarras - realisations : comparateur pleine largeur, chantiers
   en simples boutons texte sous la photo (plus de miniature a cote),
   identique sur ordinateur et sur mobile.
   ================================================================== */
.opm-mv .mv-ba{grid-template-columns:1fr!important;gap:18px}
.opm-mv .mv-ba-scenes{width:100%;max-width:1100px;margin:0 auto}
.opm-mv .mv-ba-choix{display:flex!important;flex-wrap:wrap;justify-content:center;gap:10px;overflow:visible!important;padding:0!important}
.opm-mv .mv-ba-choix button{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:46px;margin:0;padding:11px 24px;border-radius:999px;background:#FFFFFF;border:1px solid var(--mv-filet)}
.opm-mv .mv-ba-choix button img{display:none}
.opm-mv .mv-ba-choix b{font-size:16px;line-height:1.2}
.opm-mv .mv-ba-choix button:hover{border-color:var(--mv-acc)}
.opm-mv .mv-ba-choix button.is-on{background:var(--mv-acc);border-color:var(--mv-acc)}
.opm-mv .mv-ba-choix button.is-on b{color:#FFFFFF}

@media (max-width:640px){
  .opm-mv .mv-ba-choix{gap:8px}
  .opm-mv .mv-ba-choix button{flex:0 0 calc((100% - 16px) / 3);padding:10px 8px;min-height:44px}
  .opm-mv .mv-ba-choix b{font-size:15px}
}

/* opm-mv-12 */
/* ==================================================================
   OPM Debarras - realisations : choix du chantier de nouveau a droite
   de la photo sur grand ecran (boutons texte empiles, sans miniature).
   Sur mobile, les boutons restent sous la photo (voir mv-15).
   ================================================================== */
@media (min-width:901px){
  .opm-mv .mv-ba{grid-template-columns:minmax(0,1fr) minmax(220px,300px)!important;gap:clamp(18px,2.2vw,32px);align-items:stretch}
  .opm-mv .mv-ba-scenes{max-width:none;margin:0}
  .opm-mv .mv-ba-choix{flex-direction:column;flex-wrap:nowrap;justify-content:center;gap:10px}
  .opm-mv .mv-ba-choix button{display:flex;justify-content:flex-start;width:100%;min-height:58px;padding:14px 22px;border-radius:16px;text-align:left}
  .opm-mv .mv-ba-choix button::after{content:'';margin-left:auto;width:9px;height:9px;border-top:2.5px solid currentColor;border-right:2.5px solid currentColor;transform:rotate(45deg);color:var(--mv-acc)}
  .opm-mv .mv-ba-choix button.is-on::after{color:#FFFFFF}
  .opm-mv .mv-ba-choix b{font-size:18px}
}

/* opm-mv-13 */
/* ==================================================================
   OPM Debarras - cartes a retourner (flip) : une photo et un titre,
   le texte au dos. Survol, clic ou tabulation retournent la carte.
   ================================================================== */
.opm-mv .mv-pad>*+.mv-flips{margin-top:clamp(22px,2.6vw,34px)}
.opm-mv .mv-flips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.opm-mv .mv-flip{position:relative;min-width:0;height:clamp(300px,26vw,380px);perspective:1400px;cursor:pointer;border-radius:22px;outline:none}
.opm-mv .mv-flip:focus-visible{outline:3px solid var(--mv-bleu);outline-offset:3px}
.opm-mv .mv-flip-in{position:relative;width:100%;height:100%;transition:transform .7s cubic-bezier(.22,1,.36,1);transform-style:preserve-3d}
.opm-mv .mv-flip:hover .mv-flip-in,.opm-mv .mv-flip:focus .mv-flip-in,.opm-mv .mv-flip:focus-within .mv-flip-in{transform:rotateY(180deg)}
.opm-mv .mv-flip-face,.opm-mv .mv-flip-dos{position:absolute;inset:0;border-radius:22px;overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.opm-mv .mv-flip-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.opm-mv .mv-flip-face::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,18,24,0) 42%,rgba(13,18,24,.8) 100%)}
.opm-mv .mv-flip-face h3{position:absolute;left:20px;right:64px;bottom:20px;z-index:1;margin:0;color:#FFFFFF;font-size:clamp(21px,1.7vw,26px);line-height:1.15}
.opm-mv .mv-flip-plus{position:absolute;right:16px;bottom:18px;z-index:1;width:38px;height:38px;border-radius:50%;background:var(--mv-acc);color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:24px;line-height:1}
.opm-mv .mv-flip-dos{transform:rotateY(180deg);background:#FFFFFF;border:1px solid var(--mv-filet);padding:clamp(20px,2vw,28px);display:flex;flex-direction:column;justify-content:center;gap:12px}
.opm-mv .mv-flip-titre{margin:0;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-weight:800;font-size:clamp(21px,1.7vw,26px);line-height:1.15;color:var(--mv-bleu)}
.opm-mv .mv-flip-dos .mv-p{margin:0;font-size:16.5px;line-height:1.55}

@media (max-width:1100px){
  .opm-mv .mv-flips{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .opm-mv .mv-flips{grid-template-columns:1fr}
  .opm-mv .mv-flip{height:270px}
}
@media (prefers-reduced-motion:reduce){
  .opm-mv .mv-flip-in{transition:none}
}

/* opm-mv-14 */
/* ==================================================================
   OPM Debarras - dos des cartes a retourner : bleu plein, texte blanc.
   ================================================================== */
.opm-mv .mv-flip-dos{background:var(--mv-bleu);border-color:var(--mv-bleu)}
.opm-mv .mv-flip-dos .mv-flip-titre{color:#FFFFFF}
.opm-mv .mv-flip-dos .mv-p{color:#FFFFFF}
.opm-mv .mv-flip-dos .mv-p strong{color:#FFFFFF}
.opm-mv .mv-flip-dos .mv-p a{color:#FFFFFF;font-weight:800;text-decoration:underline;text-decoration-color:var(--mv-ambre);text-decoration-thickness:3px;text-underline-offset:4px}
.opm-mv .mv-flip-dos .mv-p a::after{color:var(--mv-ambre)}
.opm-mv .mv-flip-dos .mv-p a:hover{color:var(--mv-ambre)}

/* opm-mv-15 */
/* ==================================================================
   OPM Debarras - comparateur avant / apres dans la banniere : le bloc
   occupe toute la colonne image, sans liste de chantiers a cote.
   ================================================================== */
.opm-mv .mv-hero-media .mv-ba{display:block!important;grid-template-columns:none!important;gap:0}
.opm-mv .mv-hero-media .mv-ba-scenes{max-width:none;margin:0;width:100%}
.opm-mv .mv-hero-media .mv-ba-choix{display:none!important}
.opm-mv .mv-hero-media .mv-ba-stage{aspect-ratio:4/3;border-radius:18px;margin:0}
.opm-mv .mv-hero-media .mv-ba-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.opm-mv .mv-hero-media .mv-ba-item{height:100%}

@media (max-width:640px){
  .opm-mv .mv-hero-media .mv-ba-stage{aspect-ratio:1/1}
}

/* opm-mv-16 */
/* ==================================================================
   OPM Debarras - banniere : l'etiquette « Avant » descend en bas a
   gauche, la pastille flottante occupe le coin haut gauche.
   ================================================================== */
.opm-mv .mv-hero-media .mv-ba-tag-av{top:auto;bottom:16px;left:16px}

@media (max-width:640px){
  .opm-mv .mv-hero-media .mv-ba-tag-av{bottom:12px;left:12px}
}

/* opm-mv-17 */
/* ==================================================================
   OPM Debarras - bandeau bleu au-dessus de l'en-tete : nom et ville,
   adresse, telephone, note Google. Sur telephone, les quatre
   informations restent affichees, sur trois lignes.
   ================================================================== */
.opm-bandeau{background:#1257AD;color:#FFFFFF}
.opm-bandeau-in{
  max-width:min(1600px,100%);box-sizing:border-box;margin:0 auto;
  padding:9px clamp(18px,4vw,56px);
  display:flex;align-items:center;gap:8px 26px;flex-wrap:wrap;
  font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,sans-serif;
  font-size:13.5px;line-height:1.3;
}
.opm-bandeau-nom{font-weight:800;letter-spacing:.02em}
.opm-bandeau-adr{font-weight:600;color:rgba(255,255,255,.92)}
.opm-bandeau-tel{color:#FFFFFF;font-weight:800;text-decoration:none;white-space:nowrap}
.opm-bandeau-tel:hover{text-decoration:underline}
.opm-bandeau .opm-avis{margin-left:auto}

@media (max-width:900px){
  .opm-bandeau-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:8px clamp(18px,5vw,40px)}
  .opm-bandeau-nom{align-self:center}
  .opm-bandeau-tel{justify-self:end}
  .opm-bandeau-adr{grid-column:1/-1;font-size:13px}
  .opm-bandeau .opm-avis{grid-column:1/-1;justify-self:start;margin-left:0}
}

/* opm-mv-18 */
/* ==================================================================
   OPM Debarras - bandeau bleu sur telephone : trois lignes seulement.
   Ligne 1 : nom et telephone. Ligne 2 : adresse. Ligne 3 : note Google.
   ================================================================== */
@media (max-width:900px){
  .opm-bandeau-nom{grid-row:1;grid-column:1}
  .opm-bandeau-tel{grid-row:1;grid-column:2}
  .opm-bandeau-adr{grid-row:2;grid-column:1/-1}
  .opm-bandeau .opm-avis{grid-row:3;grid-column:1/-1}
}

/* opm-mv-19 */
/* ==================================================================
   OPM Debarras - banniere : le comparateur remplit exactement le cadre
   image du hero. Sans cela, le cadre (4/5) reste plus haut que le
   comparateur et les pastilles flottantes se posent dans le vide.
   ================================================================== */
.opm-mv .mv-hero-media .mv-ba,
.opm-mv .mv-hero-media .mv-ba-scenes,
.opm-mv .mv-hero-media .mv-ba-item{height:100%}
.opm-mv .mv-hero-media .mv-ba-stage{height:100%;aspect-ratio:auto;border-radius:22px}

@media (max-width:640px){
  .opm-mv .mv-hero-media .mv-ba-stage{aspect-ratio:auto;border-radius:18px}
}

/* opm-charte */
/* ==================================================================
   charte-1 — couleurs du site.
   Les fonds de section sont calculés page par page par le plugin
   (opm_charte_rythme), qui écrit une poignée de règles en ligne.
   Ce fichier porte tout le reste : variables, textes, boutons, cartes.
   ================================================================== */

:root{
  --fond-nuit:
    radial-gradient(680px 430px at 92% 0%, rgba(242,116,12,.26), transparent 62%),
    radial-gradient(580px 370px at 2% 100%, rgba(58,140,224,.26), transparent 66%),
    linear-gradient(155deg,#0A2E5C 0%,#123C73 54%,#0E3F7E 100%);
  /* Le fond ambre tirait sur le jaune, refuse par le client le 16/09/2026
     (« on n'est pas au kebab »). Le second fond clair est desormais une
     teinte pierre, tres neutre, qui se distingue du blanc sans colorer. */
  --fond-ambre:linear-gradient(180deg,#F7F5F1 0%,#EFECE6 100%);

  --fond-ciel:linear-gradient(180deg,#E9F0FA 0%,#DFEAF7 100%);
  --surl-orange:none;
  --surl-ambre:none;
}

/* Valeurs claires par défaut. Les mêmes valeurs sont remises dans les
   blocs blancs posés sur une bande bleu nuit : une carte garde toujours
   son texte noir, même au milieu d'une section foncée. */
.opm-mv,
.opm-mv .mv-mot,
.opm-mv .mv-methode,
.opm-mv .mv-form,
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv details.mv-item,
.opm-mv .mv-meteo-jour,
.opm-mv .mv-flag,
.opm-mv .mv-sim,
.opm-mv .mv-coord>div,
.opm-mv .opm-zone-carte,
.opm-mv .mv-flip-face,
.opm-mv .mv-flip-dos,
.opm-mv .mv-liste-nue.mv-oui li,
.opm-mv .mv-liste-nue.mv-non li,
.opm-mv .mv-liste li,
.opm-mv .mv-note,
.opm-mv .mv-chip,
.opm-mv .mv-duo,
.opm-mv .mv-tab-wrap,
.opm-mv .mv-eg-res,
.opm-mv .mv-blanc,
.opm-mv .mv-badge,
.opm-mv .mv-lab{
  --sec-titre:#0D1218;
  --sec-texte:#1B2229;
  --sec-faible:#5A6672;
  --sec-lien:#0E3F7E;
  --sec-eb-bg:rgba(226,102,10,.13);
  --sec-eb-txt:#B85507;
  --sec-acc:#B85507;
  --sec-surl:var(--surl-orange);
}
.opm-mv .mv-stat-n em{color:var(--sec-acc)}

/* ---------- Les sections respirent ---------- */
.opm-mv .mv-sec,
.opm-zone-sec{
  padding-top:clamp(60px,7vw,96px);
  padding-bottom:clamp(60px,7vw,96px);
}

/* ---------- Les textes suivent la couleur de leur section ---------- */
.opm-mv h2,
.opm-mv h3,
.opm-mv .mv-h1{color:var(--sec-titre)}
.opm-mv strong{color:var(--sec-titre)}
.opm-mv .mv-lead,
.opm-mv .mv-p,
.opm-mv .mv-cite,
.opm-mv .mv-liste-nue li{color:var(--sec-texte)}
.opm-mv .mv-stat-n{color:var(--sec-titre)}
.opm-mv .mv-tel,
.opm-mv .mv-stat-l,
.opm-mv .mv-meteo-src,
.opm-mv .mv-sim-note{color:var(--sec-faible)}
.opm-mv .mv-tel a,
.opm-mv .mv-lead a,
.opm-mv .mv-p a,
.opm-mv .mv-meteo-src a{color:var(--sec-lien)}
.opm-mv .mv-eyebrow{
  display:inline-block;
  background:var(--sec-eb-bg);
  color:var(--sec-eb-txt);
  padding:7px 15px;
  border-radius:999px;
  margin-bottom:6px;
}

/* ---------- Le mot-clé des titres : plus de trait dessous (2026-10-02) ---------- */
.opm-mv .mv-surl{color:inherit;padding:0;background:none}

/* ---------- Boutons ---------- */
/* Boutons en aplat, pas de dégradé. */
.opm-mv .mv-cta,
.opm-mv .mv-submit{
  background:#C25E06;
  box-shadow:0 16px 28px -16px rgba(185,82,0,.85);
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.opm-mv .mv-cta:hover,
.opm-mv .mv-submit:hover{
  background:#A34800;
  transform:translateY(-2px);
  box-shadow:0 20px 32px -16px rgba(185,82,0,.9);
}

/* ==================================================================
   Pied de page en bleu nuit. Le gabarit pose ses couleurs en style
   en ligne : on repasse par-dessus, d'où les !important.
   ================================================================== */
.opm-pied{
  background:linear-gradient(180deg,#0B3163 0%,#082448 100%) !important;
  border-top:1px solid rgba(255,255,255,.14) !important;
  color:#CFE0F3 !important;
}
.opm-pied p,
.opm-pied span:not(.opm-avis-g):not(.opm-avis-etoiles),
.opm-pied li,
.opm-pied div{color:#C3D6EC !important}
.opm-pied strong,
.opm-pied b{color:#FFFFFF !important}
.opm-pied a{color:#E8F0FA !important}
.opm-pied a:hover,
.opm-pied a:focus{color:#FFFFFF !important}
.opm-pied .opm-foot-col nav a,
.opm-pied nav a{color:#C3D6EC !important}
.opm-pied .opm-foot-col nav a:hover,
.opm-pied .opm-foot-col nav a:focus,
.opm-pied nav a:hover,
.opm-pied nav a:focus{color:#FFFFFF !important}
/* Les titres de colonne restent en orange clair, lisibles sur le bleu. */
.opm-pied .opm-foot-col>p:first-child{color:#FFC489 !important}
/* Le logo est sombre : on le passe en blanc. */
.opm-pied img[alt*="OPM"]{filter:brightness(0) invert(1)}
/* Bouton téléphone et badge avis gardent leur couleur. */
.opm-pied .opm-cta{background:#C25E06 !important;color:#FFFFFF !important}
.opm-pied .opm-cta span,
.opm-pied .opm-cta b{color:#FFFFFF !important}
.opm-pied .opm-avis{
  background:rgba(255,255,255,.1) !important;
  border-color:rgba(255,255,255,.24) !important;
}
.opm-pied .opm-avis .opm-avis-txt,
.opm-pied .opm-avis .opm-avis-txt span,
.opm-pied .opm-avis b{color:#FFFFFF !important}
/* Filets de séparation du bas de page. */
.opm-pied [style*="border-top"]{border-top-color:rgba(255,255,255,.14) !important}

/* ---------- Le formulaire de devis est posé sur une photo de chantier ---------- */
.opm-mv #devis .mv-form{
  background:
    linear-gradient(158deg,rgba(7,26,52,.88) 0%,rgba(10,38,74,.92) 100%),
    url("https://opm-debarras.fr/wp-content/uploads/2026/07/fd05bf71-b8b5-4a96-b324-b7775a2ebef3.png") center/cover no-repeat;
  border-color:rgba(255,255,255,.18);
  box-shadow:0 34px 64px -34px rgba(4,18,38,.9);
}
.opm-mv #devis .mv-form .mv-form-titre{color:#FFFFFF}
.opm-mv #devis .mv-form .mv-lab-txt{color:#FFFFFF;font-weight:700}
.opm-mv #devis .mv-form .mv-input{
  background:#FFFFFF;
  border-color:rgba(255,255,255,.4);
  color:#1B2229;
}
.opm-mv #devis .mv-form .mv-input::placeholder{color:#7B8794}
.opm-mv #devis .mv-form .opm-devis-msg{color:#FFFFFF}

/* ---------- Tuiles de services : l'image porte le titre, tout est cliquable ---------- */
.opm-mv .opm-tuiles{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));
  gap:clamp(14px,1.5vw,20px);
}
.opm-mv .opm-tuile{
  position:relative;
  display:block;
  aspect-ratio:4/3;
  border-radius:20px;
  overflow:hidden;
  background:#0A2E5C;
  text-decoration:none;
  box-shadow:0 24px 44px -32px rgba(10,46,92,.75);
}
.opm-mv .opm-tuile img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s ease;
}
.opm-mv .opm-tuile::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(9,28,54,0) 32%,rgba(9,28,54,.86) 100%);
}
.opm-mv .opm-tuile-in{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 18px 20px;
}
.opm-mv .opm-tuile-titre{
  font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-weight:800;
  font-size:clamp(18px,1.4vw,21px);
  line-height:1.2;
  letter-spacing:-.01em;
  color:#FFFFFF;
}
.opm-mv .opm-tuile-fl{
  flex:none;
  width:38px;
  height:38px;
  border-radius:50%;
  background:#C25E06;
  color:#FFFFFF;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:18px;
  line-height:1;
  transition:transform .2s ease, background-color .2s ease;
}
.opm-mv .opm-tuile:hover img{transform:scale(1.06)}
.opm-mv .opm-tuile:hover .opm-tuile-fl{transform:translateX(3px);background:#A34800}
.opm-mv .opm-tuile:focus-visible{outline:3px solid #C25E06;outline-offset:3px}

/* ---------- Cartes ---------- */
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv .mv-meteo-jour{
  box-shadow:0 26px 48px -36px rgba(10,46,92,.65);
  transition:transform .2s ease, box-shadow .2s ease;
}
.opm-mv .mv-carte:hover,
.opm-mv .mv-formule:hover{
  transform:translateY(-3px);
  box-shadow:0 30px 56px -34px rgba(10,46,92,.7);
}

/* ---------- La formule mise en avant passe en orange ---------- */
.opm-mv .mv-formule-fort{
  background:linear-gradient(150deg,#F0781A 0%,#DA6208 55%,#B95200 100%);
  border-color:#B95200;
  box-shadow:0 30px 56px -30px rgba(185,82,0,.85);
}
.opm-mv .mv-formule-fort h3,
.opm-mv .mv-formule-fort .mv-formule-prix b{color:#FFFFFF}
.opm-mv .mv-formule-fort .mv-formule-prix span{color:#FFE7C7}
.opm-mv .mv-formule-fort .mv-puces li{color:#FFFFFF}
.opm-mv .mv-formule-fort .mv-cta{
  background:#FFFFFF;
  color:#B95200 !important;
  box-shadow:0 14px 24px -18px rgba(10,46,92,.7);
}
.opm-mv .mv-formule-fort .mv-cta:hover{background:#FFF2E3;transform:translateY(-2px)}

/* ---------- Accordéons ---------- */
.opm-mv details.mv-item{
  border-color:#E1E8F2;
  box-shadow:0 16px 30px -28px rgba(10,46,92,.55);
}
.opm-mv details.mv-item[open]{
  border-color:#E2660A;
  box-shadow:0 20px 34px -24px rgba(226,102,10,.5);
}

/* ---------- Pointillés entre les étapes ----------
   La ligne est peinte sur le conteneur : les cartes blanches la masquent,
   il n'en reste que des pointillés dans l'espace entre deux étapes. */
.opm-mv .mv-acc:has(.mv-etape){
  background-image:repeating-linear-gradient(to bottom,var(--sec-acc,#B85507) 0 4px,transparent 4px 11px);
  background-size:2px 100%;
  background-position:clamp(20px,2.2vw,28px) 0;
  background-repeat:no-repeat;
}

/* ---------- Numéros d'étapes ---------- */
.opm-mv .mv-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:12px;
  background:linear-gradient(140deg,#F0781A,#B95200);
  color:#FFFFFF;
  font-size:15px;
}

/* ---------- Le bloc zone reste sur fond blanc ---------- */
.opm-mv>section.opm-zone-sec{background:#FFFFFF}

/* ---------- Titres de section ----------
   Les H2 faisaient 56 px au maximum et paraissaient petits face aux photos :
   on remonte l'echelle. Dans les sections a deux colonnes, le titre reste un
   cran en dessous, sinon il part sur quatre lignes dans une colonne etroite. */
.opm-mv h2{font-size:clamp(34px,4.6vw,66px);line-height:1.02;letter-spacing:-.015em}
.opm-mv .mv-grid h2,
.opm-mv .mv-contact h2{font-size:clamp(32px,3.9vw,56px)}

/* ---------- Cartes « ce que nous debarrassons » ----------
   La photo mangeait la carte et la liste finissait en petit : le client ne
   lisait plus ce qu'on sort de chez lui. Photo plus basse, texte plus gros,
   une seule colonne de puces pour que chaque ligne se lise d'un coup. */
.opm-mv .mv-presta-media{height:clamp(230px,18vw,310px)}
.opm-mv .mv-presta-in{padding:clamp(18px,1.9vw,28px)}
.opm-mv .mv-presta-in>h3{font-size:clamp(21px,1.7vw,27px);line-height:1.18}
.opm-mv .mv-presta .mv-puces{margin-top:14px;column-gap:26px}
.opm-mv .mv-presta .mv-puces li{font-size:17.5px;line-height:1.45;padding:12px 0 12px 31px}
.opm-mv .mv-presta .mv-puces li::before{width:21px;height:21px;margin-top:-10.5px;background-size:12px 12px}

/* ---------- Cartes a retourner : le texte du dos doit se lire ---------- */
.opm-mv .mv-flip-face h3{font-size:clamp(20px,1.6vw,25px);line-height:1.18}
.opm-mv .mv-flip-dos .mv-flip-titre{font-size:clamp(18px,1.4vw,21px)}
.opm-mv .mv-flip-dos .mv-p{font-size:16.5px;line-height:1.55}

/* opm-animations */
/* ==================================================================
   OPM Animations 2 (02/10/2026) : « le site est lent, les animations
   peut-être ». La version 1 masquait tout le contenu jusqu'au script,
   faisait monter chaque bloc en 1,4 s, zoomait la photo du hero 3,4 s
   et retardait chaque clic de lien de 0,45 s pour un fondu. Tout ça
   est retiré : la page s'affiche d'un coup, les liens partent tout de
   suite. Restent l'interface (sous-menus, menu mobile) et le zoom au
   survol des photos de cartes, à la souris seulement.
   ================================================================== */
@keyframes opm-fade{from{opacity:0}to{opacity:1}}
@keyframes opm-panel-in{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}

@media (prefers-reduced-motion:no-preference){
  .opm-nav-item:hover>.opm-nav-panel,.opm-nav-item:focus-within>.opm-nav-panel{animation:opm-panel-in .22s ease-out both}
  #opm-mobile-menu.open{animation:opm-fade .22s ease-out both}
}

@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .opm-zoom .opm-zoom__img{transition:transform .6s cubic-bezier(.22,1,.36,1)}
  .opm-zoom:hover .opm-zoom__img{transform:scale(1.07)}
}

/* opm-avis */
/* ==================================================================
   OPM Avis Google - badge de preuve sociale : note, nombre d'avis,
   lien vers la fiche. Variante « barre » pour le bandeau bleu.
   ================================================================== */
.opm-avis{
  display:inline-flex;align-items:center;gap:9px;
  padding:7px 14px;border:1px solid #E7DDD0;border-radius:999px;background:#FFFFFF;
  font-family:'Bricolage Grotesque',system-ui,-apple-system,Segoe UI,sans-serif;
  font-weight:700;font-size:13.5px;line-height:1.1;color:#1B2229;text-decoration:none;
  transition:border-color .2s ease,background-color .2s ease;
}
.opm-avis:hover{border-color:#C96A00;background:#FFF6EA}
.opm-avis b{font-weight:800;font-size:15px;color:#0D1218}
.opm-avis-etoiles{
  flex:none;width:86px;height:15px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='15' viewBox='0 0 17 15'%3E%3Cpath fill='%23F5A623' d='M8.5 1.6l1.8 3.7 4.1.6-3 2.9.7 4.1-3.6-1.9-3.6 1.9.7-4.1-3-2.9 4.1-.6z'/%3E%3C/svg%3E") repeat-x left center;
}
.opm-avis-g{
  flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;background:#FFFFFF;border:1px solid #E7DDD0;
  font-family:Arial,system-ui,sans-serif;font-weight:700;font-size:13px;color:#4285F4;
}
.opm-avis-txt{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.opm-avis-txt span{font-weight:600;color:#5A6672}

/* --- variante bandeau bleu : texte blanc, fond transparent --- */
.opm-avis--barre{
  padding:4px 12px 4px 4px;gap:8px;
  background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35);
  color:#FFFFFF;font-size:13px;
}
.opm-avis--barre:hover{background:rgba(255,255,255,.2);border-color:#FFFFFF}
.opm-avis--barre b{color:#FFFFFF;font-size:14px}
.opm-avis--barre .opm-avis-txt span{color:rgba(255,255,255,.85)}
.opm-avis--barre .opm-avis-g{width:20px;height:20px;font-size:12px;border-color:transparent}
.opm-avis--barre .opm-avis-etoiles{width:69px;height:12px;background-size:14px 12px}

/* --- pied de page --- */
.opm-avis--pied{margin:0 0 18px}

@media (max-width:420px){
  .opm-avis--barre .opm-avis-txt span{display:none}
}

/* opm-plumber */
/* ==================================================================
   plumber-33 : habillage « crème et pétrole » d'AMB Location Benne et de
   Bru Bennes (2026-10-01), posé sur la base plumber-17 (2026-09-22).
   Chargée en dernier. Textes inchangés.

   - Polices : Excon (titres, boutons) et Switzer (texte), comme AMB et
     Brumath, hébergées dans le plugin (Fontshare, usage commercial libre).
     Les anciens noms (Bricolage Grotesque, Source Sans 3, Hanken Grotesk)
     pointent vers ces fichiers (polices standard retirées le 2026-10-02) : les
     styles existants, y compris ceux écrits en ligne, basculent seuls.
   - Couleurs : crème #F3EFE6 et blanc en alternance, plus aucune section
     bleu nuit ; bleu-vert #1F6E7A pour les repères, vert #3E7B25 pour les
     boutons de devis, orange #E8823A pour les petits détails, pied de page
     sable #E6DFD0. Le bloc « Crème et pétrole » en fin de feuille fait foi.
   - Changer le NOM du fichier à chaque modification (plumber-34.css…) :
     le cache statique d'o2switch ignore ?ver=.
   ================================================================== */

/* ---------- 1. Polices ---------- */
/* Titres en Mona Sans 700 (2026-10-05) : Excon 500 trouvée trop fine, Mona Sans 600 pas assez grasse,
   police de Google Fonts demandée, puis « plus grasse ». Fichiers latins hébergés ici.
   Les noms Excon et Bricolage Grotesque, utilisés partout dans les feuilles et les contenus,
   pointent sur Mona Sans : graisse demandée jusqu'à 600 → 600 (citation, menu), au-delà → 700
   (titres, boutons, chiffres), sans gras simulé. */
@font-face{font-family:'Mona Sans';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-600.woff2) format('woff2');font-weight:100 600;font-style:normal;font-display:swap}
@font-face{font-family:'Mona Sans';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-700.woff2) format('woff2');font-weight:601 1000;font-style:normal;font-display:swap}
@font-face{font-family:'Excon';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-600.woff2) format('woff2');font-weight:100 600;font-style:normal;font-display:swap}
@font-face{font-family:'Excon';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-700.woff2) format('woff2');font-weight:601 1000;font-style:normal;font-display:swap}
@font-face{font-family:'Bricolage Grotesque';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-600.woff2) format('woff2');font-weight:100 600;font-style:normal;font-display:swap}
@font-face{font-family:'Bricolage Grotesque';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/mona-sans-700.woff2) format('woff2');font-weight:601 1000;font-style:normal;font-display:swap}
body{font-synthesis-weight:none}
@font-face{font-family:'Switzer';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-400.woff2) format('woff2');font-weight:100 450;font-style:normal;font-display:swap}
@font-face{font-family:'Switzer';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-500.woff2) format('woff2');font-weight:451 550;font-style:normal;font-display:swap}
@font-face{font-family:'Switzer';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-600.woff2) format('woff2');font-weight:551 650;font-style:normal;font-display:swap}
@font-face{font-family:'Switzer';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-700.woff2) format('woff2');font-weight:651 1000;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-400.woff2) format('woff2');font-weight:100 450;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-500.woff2) format('woff2');font-weight:451 550;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-600.woff2) format('woff2');font-weight:551 650;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-700.woff2) format('woff2');font-weight:651 1000;font-style:normal;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-400.woff2) format('woff2');font-weight:100 450;font-style:normal;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-500.woff2) format('woff2');font-weight:451 550;font-style:normal;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-600.woff2) format('woff2');font-weight:551 650;font-style:normal;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(https://opm-debarras.fr/wp-content/plugins/opm-design-v2/assets/polices/switzer-700.woff2) format('woff2');font-weight:651 1000;font-style:normal;font-display:swap}

/* Switzer est plus large que Source Sans 3 à corps égal. */
body{background:#FFFFFF;font-size:17px}

/* ---------- 2. Palette ---------- */
:root{
  --pl-nuit:#0B2545;
  --pl-bleu:#1173D4;
  --pl-bleu-fonce:#0D5FB3;
  --pl-orange:#F26B1D;
  --pl-orange-fonce:#DB5A0E;
  --pl-orange-txt:#B9480A;
  --pl-encre:#16222E;
  --pl-texte:#3D4A58;
  --pl-faible:#5C6B7B;
  --pl-filet:#DCE6F2;
  --pl-sable:#F26B1D;

  --fond-nuit:#0B2545;
  /* Second fond clair : la teinte pierre choisie par le client le
     16/09/2026, gardée mais en aplat (plus de dégradé). */
  --fond-ambre:#F5F3EF;
  /* Plus aucun trait sous les mots (2026-10-02). */
  --surl-orange:none;
  --surl-ambre:none;
}

/* Valeurs des blocs clairs (même liste que charte-1, pour la même priorité). */
.opm-mv,
.opm-mv .mv-mot,
.opm-mv .mv-methode,
.opm-mv .mv-form,
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv details.mv-item,
.opm-mv .mv-meteo-jour,
.opm-mv .mv-flag,
.opm-mv .mv-sim,
.opm-mv .mv-coord>div,
.opm-mv .opm-zone-carte,
.opm-mv .mv-flip-face,
.opm-mv .mv-flip-dos,
.opm-mv .mv-liste-nue.mv-oui li,
.opm-mv .mv-liste-nue.mv-non li,
.opm-mv .mv-liste li,
.opm-mv .mv-note,
.opm-mv .mv-chip,
.opm-mv .mv-duo,
.opm-mv .mv-tab-wrap,
.opm-mv .mv-eg-res,
.opm-mv .mv-blanc,
.opm-mv .mv-badge,
.opm-mv .mv-lab{
  --sec-titre:#0B2545;
  --sec-texte:#3D4A58;
  --sec-faible:#5C6B7B;
  --sec-lien:#1173D4;
  --sec-eb-bg:transparent;
  --sec-eb-txt:#B9480A;
  --sec-acc:#B9480A;
}

/* Variables du design (mv-5.css) et du thème (main.css) : même palette. */
.opm-mv{
  --mv-acc:#F26B1D;
  --mv-acc-2:#DB5A0E;
  --mv-ambre:#F26B1D;
  --mv-bleu:#1173D4;
  --mv-bleu-2:#0B2545;
  --mv-titre:#0B2545;
  --mv-texte:#3D4A58;
  --mv-gris:#5C6B7B;
  --mv-clair:#F5F3EF;
  --mv-clair-2:#F5F3EF;
  --mv-filet:#DCE6F2;
}
:root{
  --paper:#FFFFFF;
  --paper-2:#F5F3EF;
  --navy:#0B2545;
  --navy-2:#0B2545;
  --blue:#1173D4;
  --red:#F26B1D;
  --red-2:#DB5A0E;
  --accent:#F26B1D;
  --line-soft:#DCE6F2;
  --ambre:#F26B1D;
}

/* Choix actif (estimateur, comparateur) : bleu franc, comme les choix du quiz de Plumber. */
.opm-mv .mv-seg .opm-est-opt.is-on,
.opm-mv .mv-ba-choix button.is-on{background:var(--pl-bleu) !important;border-color:var(--pl-bleu) !important;color:#FFFFFF !important}
.opm-mv .mv-ba-choix button.is-on *{color:#FFFFFF !important}

/* Couleurs écrites en ligne dans l'en-tête et le menu mobile. */
[style*="background:#C96A00" i]{background:var(--pl-bleu) !important}
a[href^="tel:"][style*="background:#C96A00" i]{background:var(--pl-orange) !important}
[style*="#E7DDD0" i]{border-color:var(--pl-filet) !important}
[style*="color:#1257AD" i]{color:var(--pl-bleu) !important}

/* Pages à l'ancien balisage (contact, histoire, zones) : règles de mv-site.css
   reprises à l'identique, couleurs remplacées par celles de Plumber. */
/* ---------- sections autrefois bleu fonce ---------- */
.d134,.d101,.d264,.d51,.d207,.d216,.d102{
  background:#0B2545!important;
  color:#E3EEFB!important;
}

/* tout le texte de ces sections repasse en noir de charte */
.d134 *,.d101 *,.d264 *,.d51 *,.d207 *,.d216 *,.d102 *{color:#E3EEFB!important}

.d134 h1,.d134 h2,.d134 h3,.d134 h4,
.d101 h1,.d101 h2,.d101 h3,.d101 h4,
.d264 h1,.d264 h2,.d264 h3,.d264 h4,
.d51 h1,.d51 h2,.d51 h3,.d51 h4,
.d207 h2,.d207 h3,.d216 h2,.d216 h3,.d102 h2,.d102 h3{color:#FFFFFF!important}

/* surtitres en orange, mot mis en avant du H1 en bleu */
.d134 .d94,.d101 .d17,.d264 .d17,.d51 .d17,.d207 .d17,.d216 .d17{color:#F26B1D!important}
.d134 .d209{color:#FFFFFF!important;background:none!important}
.opm-surligne{color:#1173D4!important;background:none!important}

/* ---------- cartes autrefois bleu nuit : blanches ---------- */
.d13,.d45,.d62,.d68,.d88,.d123,.d138,.d167,.d185,.d204,.d235,.d238{
  background:#FFFFFF!important;
  border:1px solid #DCE6F2!important;
  color:#1B2229!important;
}
.d138 *,.d68 *,.d13 *,.d62 *,.d45 *,.d88 *,.d123 *,.d167 *,.d185 *,.d204 *,.d235 *,.d238 *{color:#1B2229!important}
.d138 h3,.d68 h3,.d88 h3,.d123 h3,.d167 h3,.d185 h3,.d204 h3,.d235 h3,.d238 h3,
.d101 .d96,.d264 .d70,.d51 .d74{color:#0B2545!important}

/* fond neutre derriere les images */
.d37{background:#F5F3EF!important}

/* ---------- boutons : l'orange garde son texte blanc ---------- */
.d134 .d57,.d134 .d57 *,
.d51 .d66,.d51 .d66 *,
.d101 .d133,.d101 .d133 *,
.d264 .d133,.d264 .d133 *,
.d51 .d133,.d51 .d133 *,
.d134 .d317,.d134 .d317 *{color:#FFFFFF!important}

/* bouton secondaire : il etait blanc translucide sur fond sombre */
.d134 .d58,.d134 .d58 *,.d51 .d58,.d51 .d58 *{
  background:#FFFFFF!important;
  border:1.5px solid #DCE6F2!important;
  color:#0B2545!important;
}
.d134 .d58:hover{border-color:#B9480A!important}

/* pastilles translucides posees sur fond clair */
.d264 .d176,.d51 .d34{background:#FFFFFF!important;border:1px solid #DCE6F2!important;color:#B9480A!important}

/* ---------- en-tete : plus d'ombre portee, filet de charte ---------- */
header[style*="position:sticky"]{
  background:#FFFFFF!important;
  border-bottom:1px solid #DCE6F2!important;
  box-shadow:none!important;
}
header .r-desknav a{color:#1B2229!important}
header .r-desknav a:hover{color:#B9480A!important}
header .r-desknav a.opm-cta,header .r-desknav a.opm-cta:hover{color:#FFFFFF!important}
header .r-burger{border-color:#DCE6F2!important;color:#1B2229!important}
header .r-burger svg{stroke:#1B2229!important}
#opm-mobile-menu{background:#FFFFFF!important;border-top-color:#DCE6F2!important}
#opm-mobile-menu a{color:#1B2229!important;border-bottom-color:#DCE6F2!important}
#opm-mobile-menu a[href^="tel:"]{color:#FFFFFF!important}

/* ---------- badge Website Carbon, fait maison ----------
   Deux cellules comme le badge officiel : la mesure a gauche, la signature
   a droite. Chiffres releves le 2026-08-28 sur websitecarbon.com. */
.opm-carbone{
  display:inline-flex;align-items:stretch;max-width:100%;
  border:1px solid #DCE6F2;border-radius:10px;overflow:hidden;
  font-family:'Bricolage Grotesque',system-ui,sans-serif;
  font-size:12.5px;font-weight:700;line-height:1.2;text-decoration:none;
}
.opm-carbone .wcb-mesure{
  display:flex;flex-direction:column;justify-content:center;gap:3px;
  padding:9px 15px;background:#FFFFFF;color:#1B2229;
}
.opm-carbone .wcb-sous{font-weight:600;font-size:11.5px;color:#5A6672}
.opm-carbone .wcb-marque{
  display:flex;align-items:center;padding:10px 15px;
  background:#F26B1D;color:#FFFFFF;white-space:nowrap;transition:background .2s ease;
}
.opm-carbone:hover .wcb-marque{background:#DB5A0E}
.opm-carbone sub{font-size:.75em;line-height:0}

/* ---------- liens du contenu : bleu de charte ---------- */
.d264 a:not([class*="cta"]),.d51 a:not([class*="cta"]),.d101 a:not([class*="cta"]){color:#9DC8FF!important}
.d138:hover,.d68:hover{border-color:#B9480A!important}

/* ---------- 3. Titres : une seule échelle de H2 ---------- */
.opm-mv h1,.opm-mv h2,.opm-mv h3,.opm-mv .mv-h1{font-family:'Excon',system-ui,sans-serif;font-weight:800;letter-spacing:-.015em}
.opm-mv h2,
.opm-mv .mv-grid h2,
.opm-mv .mv-contact h2,
.opm-mv .opm-zone-sec .mv-tete h2{font-size:clamp(30px,3.2vw,52px);line-height:1.08}

/* ---------- 4. Étiquettes au-dessus des titres ----------
   Plus de pastille en capitales : une ligne courte, en gras, en casse normale. */
.opm-mv .mv-eyebrow{
  background:none;
  padding:0;
  border-radius:0;
  text-transform:none;
  letter-spacing:0;
  font-family:'Excon',system-ui,sans-serif;
  font-size:16px;
  font-weight:700;
  color:var(--sec-eb-txt);
}
.opm-mv .mv-etape{color:var(--sec-acc)}

/* Pastille de la bannière : comme celle de Plumber, translucide sur le bleu nuit. */
.opm-mv .mv-hero .mv-badge{
  --sec-titre:#FFFFFF;
  --sec-texte:#FFFFFF;
  background:rgba(255,255,255,.12);
  border-color:transparent;
  color:#FFFFFF;
  font-family:'Excon',system-ui,sans-serif;
  font-weight:800;
}

/* ---------- 5. Boutons ----------
   Comme sur Plumber : bleu franc pour le devis, orange pour le téléphone. */
.opm-mv .mv-cta,
.opm-mv .mv-submit,
header a.opm-cta,
.opm-pied .opm-cta{
  background:var(--pl-bleu) !important;
  color:#FFFFFF !important;
  border-radius:8px !important;
  box-shadow:none !important;
  font-family:'Excon',system-ui,sans-serif;
  font-weight:800;
  transform:none;
}
.opm-mv .mv-cta:hover,
.opm-mv .mv-submit:hover,
header a.opm-cta:hover,
.opm-pied .opm-cta:hover{background:var(--pl-bleu-fonce) !important;transform:none;box-shadow:none !important}

.opm-mv .mv-cta[href^="tel:"],
header a.opm-cta[href^="tel:"],
.opm-pied .opm-cta[href^="tel:"]{background:var(--pl-orange) !important}
.opm-mv .mv-cta[href^="tel:"]:hover,
header a.opm-cta[href^="tel:"]:hover,
.opm-pied .opm-cta[href^="tel:"]:hover{background:var(--pl-orange-fonce) !important}

/* ---------- 6. Cartes : filet fin, arrondi modéré, aucune ombre ---------- */
.opm-mv *,
.opm-mv *::before,
.opm-mv *::after{box-shadow:none !important}
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv .mv-sim{border-radius:18px;border-color:var(--pl-filet)}
.opm-mv details.mv-item,
.opm-mv .mv-form,
.opm-mv .mv-meteo-jour{border-radius:12px}
.opm-mv details.mv-item{border-color:var(--pl-filet)}
.opm-mv details.mv-item[open]{border-color:var(--pl-bleu)}
.opm-mv .mv-carte:hover,
.opm-mv .mv-formule:hover{transform:none}
.opm-mv .opm-tuile{border-radius:16px;background:var(--pl-nuit)}
.opm-mv .opm-tuile-fl{background:var(--pl-orange)}
.opm-mv .opm-tuile:hover .opm-tuile-fl{background:var(--pl-orange-fonce)}
.opm-mv .opm-tuile:focus-visible{outline-color:var(--pl-bleu)}

/* La formule mise en avant reste une carte blanche, cerclée d'orange. */
.opm-mv .mv-formule-fort{
  background:#FFFFFF;
  border:2px solid var(--pl-orange);
}
.opm-mv .mv-formule-fort h3,
.opm-mv .mv-formule-fort .mv-formule-prix b{color:var(--pl-nuit)}
.opm-mv .mv-formule-fort .mv-formule-prix span{color:var(--pl-faible)}
.opm-mv .mv-formule-fort .mv-puces li{color:var(--pl-texte)}
.opm-mv .mv-formule-fort .mv-cta{background:var(--pl-bleu) !important;color:#FFFFFF !important}

/* Numéros d'étapes : pastille orange en aplat. */
.opm-mv .mv-num{background:var(--pl-orange);border-radius:8px}
.opm-mv .mv-acc:has(.mv-etape){
  background-image:repeating-linear-gradient(to bottom,var(--sec-acc,#B9480A) 0 4px,transparent 4px 11px);
}

/* Formulaire de devis sur photo : même rendu, sans ombre ni coins ronds marqués. */
.opm-mv #devis .mv-form .mv-input{border-radius:8px}

/* ---------- 7. En-tête ---------- */
.opm-bandeau{background:var(--pl-nuit) !important}
header[style*="border-bottom"]{border-bottom-color:var(--pl-filet) !important}
header .opm-nav-top{color:var(--pl-nuit);font-family:'Excon',system-ui,sans-serif;font-weight:700}
header .opm-nav-top:hover,
header .opm-nav-top:focus-visible{color:var(--pl-bleu)}

/* ---------- 8. Pied de page en aplat bleu nuit ---------- */
.opm-pied{background:var(--pl-nuit) !important}
.opm-pied .opm-foot-col>p:first-child{color:var(--pl-sable) !important}
.opm-pied .opm-cta span,
.opm-pied .opm-cta b{color:#FFFFFF !important}

/* ---------- 9. Composants qui portent leurs propres couleurs ---------- */
/* Carte de la zone d'intervention (plugin opm-carte-zone). */
.opm-mv .opm-zone-sec{--mv-acc:#F26B1D;--mv-acc-2:#DB5A0E;--mv-bleu:#1173D4;--mv-filet:#DCE6F2}
.opm-mv .opm-zone-sec .mv-eyebrow{
  text-transform:none;
  letter-spacing:0;
  font-size:16px;
  font-weight:700;
  color:var(--pl-orange-txt);
}
.opm-zone-villes li>a{color:var(--pl-bleu)}
.opm-zone-tr{border-color:var(--pl-bleu)}

/* La même carte posée hors du nouveau balisage (page contact). */
.opm-zone-sec{--mv-acc:#F26B1D;--mv-acc-2:#DB5A0E;--mv-bleu:#1173D4;--mv-filet:#DCE6F2}
.opm-zone-sec .mv-eyebrow{text-transform:none;letter-spacing:0;font-size:16px;font-weight:700;color:var(--pl-orange-txt)}
.opm-zone-sec a:not(.mv-cta){color:var(--pl-bleu)}
.opm-zone-dep{color:var(--pl-bleu);border-color:var(--pl-bleu)}
.opm-zone-sec .mv-cta{background:var(--pl-bleu);color:#FFFFFF;border-radius:8px;box-shadow:none}
.opm-zone-sec .mv-cta:hover{background:var(--pl-bleu-fonce)}
.opm-zone-sec .mv-cta[href^="tel:"]{background:var(--pl-orange)}

/* Fil d'Ariane (couleur écrite en ligne par l'animation d'entrée). */
html body nav[aria-label="Fil d'Ariane"] a,
html body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] a{color:var(--pl-bleu) !important}
html body nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"],
html body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"]{color:var(--pl-orange-txt) !important}

/* Encadré d'information, fond derrière les photos des prestations. */
.opm-mv .mv-flag-info .mv-flag-ico{background-color:var(--pl-bleu)}
.opm-mv .mv-flag-info .mv-flag-txt b{color:var(--pl-nuit)}
.opm-mv .mv-presta-media{background:var(--fond-ambre)}

/* Menu mobile, badge avis, badge carbone. */
.opm-mob-titre{color:var(--pl-orange-txt)}
.opm-avis-g{border-color:var(--pl-filet)}
.opm-carbone{border-color:var(--pl-filet)}
.opm-carbone .wcb-marque{background:var(--pl-orange)}

/* Pages de texte et pages à l'ancien balisage : même échelle de H2 partout. */
html body h2[class],
html body .opm-zone-sec .mv-tete h2,
body .opm-prose h2{font-family:'Excon',system-ui,sans-serif;font-weight:800;letter-spacing:-.015em;font-size:clamp(30px,3.2vw,52px);line-height:1.08}

/* ---------- 10. Petits écrans : échelle des titres, en dernier ---------- */
@media (max-width:900px){
  html body h2[class],
  html body .opm-zone-sec .mv-tete h2,
  body .opm-prose h2,
  .opm-mv h2,
  .opm-mv .mv-grid h2,
  .opm-mv .mv-contact h2,
  .opm-mv .opm-zone-sec .mv-tete h2{font-size:clamp(28px,5.8vw,36px);line-height:1.1}
}

/* ---------- 11. Plus d'orange pâle (22/09/2026) ----------
   Les accents sur bleu nuit passent à l'orange vif ; les rares fonds
   qui utilisaient l'orange pâle gardent un texte blanc lisible. */
.opm-mv .mv-carte-tag,
.opm-mv .mv-chip:hover,
.opm-mv details.mv-plus>summary:hover{background:var(--pl-orange);border-color:var(--pl-orange) !important;color:#FFFFFF !important}
/* Résultat de l'estimateur : plus de dégradé orange clair. */
.opm-mv .mv-sim-res{background:var(--fond-ambre);border-color:var(--pl-filet)}

/* ---------- 12. La photo de la bannière ne sort plus de l'écran ----------
   Le cadre de la bannière laisse déborder son contenu (les pastilles
   « Visite gratuite » et « Assurance pro » dépassent volontairement).
   Le zoom lent de l'animation (scale 1.14) faisait donc sortir la photo
   de son cadre et de l'écran : la page glissait de côté sur téléphone.
   On garde la photo à sa taille ; le zoom reste sur les autres images,
   dont les cadres coupent ce qui dépasse. */
.opm-mv .mv-hero-media .opm-hero__media,
img.opm-hero__media{scale:none !important;transform:none !important}

/* ---------- 13. Menu mobile, sur le modèle de La Médaille du Travail ----------
   Panneau bleu nuit posé sous l'en-tête (il ne pousse pas la page),
   rubriques repliées qui s'ouvrent d'un toucher, téléphone et devis en
   bas. Balisage dans header.php, script dans footer.php. Les anciennes
   règles de main.css et mv-site.css visent #opm-mobile-menu en !important :
   d'où les sélecteurs renforcés. */
header .r-mobactions{gap:10px}
header .r-mobcall{border-radius:10px !important;background:var(--pl-orange) !important}

/* Bouton : carré bleu nuit plein, trois traits qui deviennent une croix. */
header .r-burger{
  width:46px;height:46px;padding:0 12px;
  flex-direction:column;align-items:stretch;justify-content:center;gap:5px;
  background:var(--pl-nuit) !important;
  border:0 !important;border-radius:10px;cursor:pointer;
}
header .r-burger span{display:block;height:2px;border-radius:2px;background:#FFFFFF;transition:transform .2s ease,opacity .2s ease}
header .r-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
header .r-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
header .r-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
header .r-burger:focus-visible{outline:3px solid var(--pl-bleu);outline-offset:2px}

/* Panneau */
header #opm-mobile-menu.opm-mob{
  display:none !important;
  position:absolute;left:0;right:0;top:100%;
  overflow-y:auto;overscroll-behavior:contain;
  background:var(--pl-nuit) !important;
  border-top:0 !important;
  padding:0;
}
header #opm-mobile-menu.opm-mob.open{display:block !important}
@media (min-width:961px){header #opm-mobile-menu.opm-mob.open{display:none !important}}

header #opm-mobile-menu .opm-mob-liste,
header #opm-mobile-menu .opm-mob-sous{list-style:none;margin:0;padding:0}
header #opm-mobile-menu .opm-mob-liste>li{border-bottom:1px solid rgba(255,255,255,.1)}

/* Lien de premier niveau et bouton de rubrique : même allure. */
header #opm-mobile-menu .opm-mob-liste>li>a,
header #opm-mobile-menu .opm-mob-deplier{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  width:100%;min-height:54px;
  padding:0 var(--gutter,clamp(18px,5vw,40px));
  background:transparent;border:0 !important;
  font-family:'Excon',system-ui,sans-serif;font-weight:700;font-size:15px;
  letter-spacing:.05em;text-transform:uppercase;text-align:left;
  color:#FFFFFF !important;cursor:pointer;
}
header #opm-mobile-menu .opm-mob-liste>li>a.actif{background:rgba(255,255,255,.08)}
header #opm-mobile-menu .opm-mob-liste>li>a:focus-visible,
header #opm-mobile-menu .opm-mob-deplier:focus-visible{outline:3px solid var(--pl-bleu);outline-offset:-3px}

/* Le « + » rond qui devient « × » quand la rubrique est ouverte. */
header #opm-mobile-menu .opm-mob-plus{
  position:relative;flex:none;width:28px;height:28px;border-radius:50%;
  background:rgba(255,255,255,.16);transition:transform .2s ease,background-color .2s ease;
}
header #opm-mobile-menu .opm-mob-plus::before,
header #opm-mobile-menu .opm-mob-plus::after{
  content:'';position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;
  border-radius:2px;background:#FFFFFF;
}
header #opm-mobile-menu .opm-mob-plus::after{transform:rotate(90deg)}
header #opm-mobile-menu .opm-mob-deplier[aria-expanded="true"] .opm-mob-plus{transform:rotate(45deg);background:var(--pl-orange)}

/* Sous-liste repliée par défaut. */
header #opm-mobile-menu .opm-mob-sous{display:none;padding:0 0 10px;background:rgba(0,0,0,.14)}
header #opm-mobile-menu .opm-mob-groupe.deplie>.opm-mob-sous{display:block}
header #opm-mobile-menu .opm-mob-sous a{
  display:flex;align-items:center;min-height:46px;
  padding:0 var(--gutter,clamp(18px,5vw,40px)) 0 calc(var(--gutter,clamp(18px,5vw,40px)) + 14px);
  border:0 !important;
  font-family:'Source Sans 3',system-ui,sans-serif;font-weight:600;font-size:16.5px;
  letter-spacing:0;text-transform:none;
  color:#E3EEFB !important;
}
header #opm-mobile-menu .opm-mob-sous a.actif{color:#FFFFFF !important;background:rgba(255,255,255,.08)}

/* Boutons du bas : téléphone orange, devis bleu, pleine largeur. */
header #opm-mobile-menu .opm-mob-actions{display:flex;flex-direction:column;gap:10px;padding:18px var(--gutter,clamp(18px,5vw,40px)) 24px}
header #opm-mobile-menu .opm-mob-actions a{
  display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;
  border-radius:8px !important;border:0 !important;
  font-family:'Excon',system-ui,sans-serif;font-weight:800;font-size:16px;
  color:#FFFFFF !important;text-transform:none;
}
header #opm-mobile-menu .opm-mob-actions .opm-mob-tel{background:var(--pl-orange) !important}
header #opm-mobile-menu .opm-mob-actions .opm-mob-devis{background:var(--pl-bleu) !important}

/* ---------- 14. Plus de sections bleu nuit (22/09/2026) ----------
   Une section sur deux passe en bleu nuit : les cartes blanches posées
   dessus gardent leur texte foncé. */
.opm-mv .mv-presta-carte{
  --sec-titre:#0B2545;
  --sec-texte:#3D4A58;
  --sec-faible:#5C6B7B;
  --sec-lien:#1173D4;
  --sec-eb-txt:#B9480A;
  --sec-acc:#B9480A;
  --sec-surl:var(--surl-orange);
  color:#3D4A58;
}

/* Pages à l'ancien balisage (contact, histoire) : les sections d'origine
   repassent en bleu nuit et alternent avec les sections blanches. Les
   cartes blanches posées dessus gardent leur texte foncé (règle .d13 *…
   placée plus haut, même priorité, plus tardive). Plus de fond gris. */
.opm-fond-gris{background:var(--fond-ambre) !important}
/* Liens dans une carte blanche posée sur ces sections : bleu franc. */
:is(.d264,.d51,.d101) :is(.d13,.d45,.d62,.d68,.d88,.d123,.d138,.d167,.d185,.d204,.d235,.d238) a:not([class*="cta"]){color:#1173D4 !important}

/* ---------- 15. Lisibilité (relevé automatique du 22/09/2026, 20 pages) ---------- */
/* Badge Website Carbon du pied : la case blanche garde un texte foncé
   (le pied de page passe tous ses span en bleu pâle). */
html body .opm-pied .opm-carbone .wcb-mesure,
html body .opm-pied .opm-carbone .wcb-mesure *{color:#16222E !important}
html body .opm-pied .opm-carbone .wcb-sous{color:#5C6B7B !important}
html body .opm-pied .opm-carbone .wcb-marque{color:#FFFFFF !important}

/* Bouton orange des bannières à l'ancien balisage (pages ville). */
a.d57,a.d57 *{color:#FFFFFF !important}

/* Section « À propos » sur fond clair (Givors) : titres foncés, accents orange lisibles. */
.opm-fond-gris .d105{color:#0B2545 !important}
.opm-fond-gris .d110,
.opm-fond-gris .d17{color:#B9480A !important}

/* ---------- 16. Page Contact, sur le modèle de celle de Plumber (22/09/2026) ----------
   Bannière bleu nuit (texte + photo), puis coordonnées et plan à gauche,
   formulaire à droite, sur fond blanc. */
.opm-mv .opm-contact-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.opm-mv .mv-cta.mv-cta-ghost{
  background:transparent !important;
  border:2px solid rgba(255,255,255,.55);
  color:#FFFFFF !important;
}
.opm-mv .mv-cta.mv-cta-ghost:hover{background:rgba(255,255,255,.1) !important;border-color:#FFFFFF}

/* Coordonnées : cartes blanches à filet fin, comme le bloc adresse de Plumber. */
.opm-mv .opm-contact-nap>div{background:#FFFFFF;border:1px solid var(--pl-filet);border-radius:12px;padding:15px 18px}
.opm-mv .opm-contact-nap .mv-coord-lab{color:var(--pl-orange-txt);font-family:'Excon',system-ui,sans-serif;font-weight:700}
.opm-mv .opm-contact-nap .mv-coord-val,
.opm-mv .opm-contact-nap .mv-coord-val a{color:var(--pl-nuit);font-weight:700;text-decoration:none}
.opm-mv .opm-contact-nap .mv-coord-val a:hover{color:var(--pl-bleu)}
.opm-mv .opm-contact-plan{margin-top:20px;border-radius:12px;border:1px solid var(--pl-filet);aspect-ratio:16/9}

/* Deux colonnes de même hauteur : le formulaire s'étire, pas de vide sous la colonne courte. */
.opm-mv .opm-contact-bloc{align-items:stretch}
.opm-mv .opm-contact-bloc>.mv-form{height:100%}
/* Le formulaire étiré ne laisse pas de vide en bas : la zone de message
   prend la hauteur restante (sur grand écran seulement, deux colonnes). */
@media (min-width:901px){
  .opm-mv .opm-contact-bloc>.mv-form{display:flex;flex-direction:column}
  .opm-mv .opm-contact-bloc>.mv-form>form{flex:1 1 auto}
  .opm-mv .opm-contact-bloc>.mv-form label:has(textarea){flex:1 1 auto}
  .opm-mv .opm-contact-bloc>.mv-form textarea{flex:1 1 auto;min-height:140px;resize:vertical}
}

/* ==================================================================
   17. CRÈME ET PÉTROLE (01/10/2026), comme AMB Location Benne et Bru Bennes
   Mêmes couleurs que ces deux sites : crème #F3EFE6 et blanc en
   alternance, bleu-vert #1F6E7A pour les repères (sur-titres, numéros,
   liens, choix actifs), vert #3E7B25 pour les boutons de devis, orange
   #E8823A pour les petits détails, pied de page sable #E6DFD0, texte
   encre #15191A. Les variables des feuilles précédentes sont remappées,
   les couleurs écrites en dur sont reprises une à une.
   ================================================================== */
:root{
  --op-encre:#15191A;--op-faible:#56625F;
  --op-lin:#F3EFE6;--op-lin-fonce:#E6DFD0;--op-bord:#DCD3C2;
  --op-petrole:#1F6E7A;--op-petrole-fonce:#175761;--op-petrole-voile:#E6F1F1;
  --op-vert:#6BAB45;--op-vert-bouton:#3E7B25;--op-vert-fonce:#33681E;--op-vert-clair:#BCE3A6;--op-vert-voile:#E3F1D8;
  --op-braise:#E8823A;
  --op-feutre:none;

  --pl-nuit:#15191A;--pl-bleu:#3E7B25;--pl-bleu-fonce:#33681E;
  --pl-orange:#1F6E7A;--pl-orange-fonce:#175761;--pl-orange-txt:#1F6E7A;
  --pl-encre:#15191A;--pl-texte:#15191A;--pl-faible:#56625F;--pl-filet:#E6DFD0;--pl-sable:#1F6E7A;
  --fond-nuit:#F3EFE6;--fond-ambre:#F3EFE6;
  --surl-orange:var(--op-feutre);--surl-ambre:var(--op-feutre);
  --paper:#FFFFFF;--paper-2:#F3EFE6;--navy:#15191A;--navy-2:#15191A;--blue:#1F6E7A;
  --red:#3E7B25;--red-2:#33681E;--accent:#3E7B25;--line-soft:#E6DFD0;--ambre:#1F6E7A;
}
::selection{background:#1F6E7A;color:#FFFFFF}
body{color:#15191A}

/* Valeurs des blocs : plus aucune section foncée, texte encre partout. */
.opm-mv,
.opm-mv>section,
.opm-mv .mv-mot,
.opm-mv .mv-methode,
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv details.mv-item,
.opm-mv .mv-meteo-jour,
.opm-mv .mv-flag,
.opm-mv .mv-coord>div,
.opm-mv .opm-zone-carte,
.opm-mv .mv-flip-face,
.opm-mv .mv-flip-dos,
.opm-mv .mv-liste-nue.mv-oui li,
.opm-mv .mv-liste-nue.mv-non li,
.opm-mv .mv-liste li,
.opm-mv .mv-note,
.opm-mv .mv-chip,
.opm-mv .mv-duo,
.opm-mv .mv-tab-wrap,
.opm-mv .mv-eg-res,
.opm-mv .mv-blanc,
.opm-mv .mv-badge,
.opm-mv .mv-presta-carte{
  --sec-titre:#15191A;
  --sec-texte:#15191A;
  --sec-faible:#56625F;
  --sec-lien:#1F6E7A;
  --sec-eb-bg:transparent;
  --sec-eb-txt:#1F6E7A;
  --sec-acc:#1F6E7A;
  --sec-surl:var(--op-feutre);
}
.opm-mv{
  --mv-acc:#1F6E7A;--mv-acc-2:#175761;--mv-ambre:#E8823A;
  --mv-bleu:#1F6E7A;--mv-bleu-2:#15191A;
  --mv-titre:#15191A;--mv-texte:#15191A;--mv-gris:#56625F;
  --mv-clair:#F3EFE6;--mv-clair-2:#F3EFE6;--mv-filet:#E6DFD0;
}
.opm-mv>section{color:#15191A}

/* Titres : Excon, comme AMB (H1 très gras, H2 et H3 gras). */
.opm-mv h1,.opm-mv .mv-h1{font-family:'Excon',sans-serif;font-weight:900;letter-spacing:-.028em;color:#15191A}
.opm-mv h2,.opm-mv h3,html body h2[class],body .opm-prose h2{font-family:'Excon',sans-serif;font-weight:700;letter-spacing:-.02em;color:#15191A}
.opm-mv h3{letter-spacing:-.01em}

/* Mot-clé des titres : plus de trait dessous (2026-10-02), couleur en section 24. */
.opm-mv .mv-surl,.mv-surl{color:inherit;padding:0;background:none !important}

/* Sur-titres en pastille bleu-vert, en capitales espacées. */
.opm-mv .mv-eyebrow,
.opm-mv .opm-zone-sec .mv-eyebrow,
.opm-zone-sec .mv-eyebrow,
.opm-mv .mv-hero .mv-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 14px;border-radius:999px;border:0;
  background:rgba(31,110,122,.09);color:#1F6E7A;
  font-family:'Excon',sans-serif;font-weight:700;font-size:12px;line-height:1.2;
  letter-spacing:.14em;text-transform:uppercase;
}
.opm-mv .mv-hero .mv-badge::before{background:#E8823A}
.opm-mv .mv-etape{color:#1F6E7A}

/* Boutons : vert plein pour le devis, bleu-vert pour le téléphone, coins de 14 px. */
.opm-mv .mv-cta,
.opm-mv .mv-submit,
header a.opm-cta,
.opm-pied .opm-cta{background:#3E7B25 !important;color:#FFFFFF !important;border-radius:14px !important;font-family:'Excon',sans-serif;font-weight:700}
.opm-mv .mv-cta:hover,
.opm-mv .mv-submit:hover,
header a.opm-cta:hover,
.opm-pied .opm-cta:hover{background:#33681E !important}
.opm-mv .mv-cta[href^="tel:"],
header a.opm-cta[href^="tel:"],
.opm-pied .opm-cta[href^="tel:"]{background:#1F6E7A !important}
.opm-mv .mv-cta[href^="tel:"]:hover,
header a.opm-cta[href^="tel:"]:hover,
.opm-pied .opm-cta[href^="tel:"]:hover{background:#175761 !important}
.opm-mv .mv-cta.mv-cta-ghost{background:transparent !important;border:2px solid #15191A;color:#15191A !important}
.opm-mv .mv-cta.mv-cta-ghost:hover{background:#F3EFE6 !important;border-color:#15191A}
[style*="background:#C96A00" i]{background:#3E7B25 !important}
a[href^="tel:"][style*="background:#C96A00" i]{background:#1F6E7A !important}
[style*="color:#1257AD" i]{color:#1F6E7A !important}

/* ---------- En-tête et menu mobile ---------- */
.opm-bandeau{background:#E6DFD0 !important;color:#15191A}
.opm-bandeau-nom,.opm-bandeau-adr,.opm-bandeau-tel{color:#15191A !important}
header .opm-nav-top{font-family:'Excon',sans-serif;color:#15191A}
header .opm-nav-top:hover,header .opm-nav-top:focus-visible,header .r-desknav a:hover{color:#1F6E7A !important}
header .r-desknav a.opm-cta,header .r-desknav a.opm-cta:hover{color:#FFFFFF !important}
header .r-mobcall{background:#1F6E7A !important}
header .r-burger{background:#1F6E7A !important;border-radius:12px}
header .r-burger:focus-visible{outline-color:#1F6E7A}

/* Panneau du menu mobile : blanc, texte encre, comme le reste du site. */
header #opm-mobile-menu.opm-mob{background:#FFFFFF !important;border-top:1px solid #E6DFD0 !important}
header #opm-mobile-menu .opm-mob-liste>li{border-bottom:1px solid #E6DFD0}
header #opm-mobile-menu .opm-mob-liste>li>a,
header #opm-mobile-menu .opm-mob-deplier{font-family:'Excon',sans-serif;color:#15191A !important}
header #opm-mobile-menu .opm-mob-liste>li>a.actif,
header #opm-mobile-menu .opm-mob-sous a.actif{background:#F3EFE6;color:#15191A !important}
header #opm-mobile-menu .opm-mob-plus{background:#E6F1F1}
header #opm-mobile-menu .opm-mob-plus::before,
header #opm-mobile-menu .opm-mob-plus::after{background:#1F6E7A}
header #opm-mobile-menu .opm-mob-deplier[aria-expanded="true"] .opm-mob-plus{background:#1F6E7A}
header #opm-mobile-menu .opm-mob-deplier[aria-expanded="true"] .opm-mob-plus::before,
header #opm-mobile-menu .opm-mob-deplier[aria-expanded="true"] .opm-mob-plus::after{background:#FFFFFF}
header #opm-mobile-menu .opm-mob-sous{background:#F3EFE6}
header #opm-mobile-menu .opm-mob-sous a{color:#15191A !important}
header #opm-mobile-menu .opm-mob-actions a{border-radius:14px !important;font-family:'Excon',sans-serif;font-weight:700}
header #opm-mobile-menu .opm-mob-actions .opm-mob-tel{background:#1F6E7A !important}
header #opm-mobile-menu .opm-mob-actions .opm-mob-devis{background:#3E7B25 !important}
.opm-mob-titre{color:#1F6E7A}

/* ---------- Bannière ---------- */
.opm-mv .mv-hero .mv-lead,.opm-mv .mv-hero .mv-p{color:#15191A}
.opm-mv .mv-tel{color:#56625F}
.opm-mv .mv-tel a{color:#15191A;font-weight:700}
.opm-mv .mv-stats{border-top-color:#DCD3C2}
.opm-mv .mv-stat-n{font-family:'Excon',sans-serif;font-weight:900;color:#1F6E7A}
.opm-mv .mv-stat-n em{color:#1F6E7A;opacity:.7}
.opm-mv .mv-stat-l{color:#56625F}
.opm-mv .mv-hero-media{isolation:isolate}
.opm-mv .mv-hero-media::before{content:"";position:absolute;right:-22px;bottom:-22px;width:56%;height:60%;border-radius:22px;background:#6BAB45;z-index:-1}
.opm-mv .mv-flotte{background:#FFFFFF;border:0;border-radius:16px}
.opm-mv .mv-flotte b{color:#15191A}
.opm-mv .mv-flotte i{color:#56625F}
.opm-mv .mv-flotte-1 .mv-flotte-ico{background:#1F6E7A}
.opm-mv .mv-flotte-2 .mv-flotte-ico{background:#3E7B25}
@media (max-width:900px){.opm-mv .mv-hero-media::before{display:none}}

/* ---------- Cartes et boîtes : blanches à bordure fine ---------- */
.opm-mv .mv-carte,
.opm-mv .mv-formule,
.opm-mv .mv-presta-carte,
.opm-mv details.mv-item,
.opm-mv .mv-meteo-jour,
.opm-mv .mv-coord>div,
.opm-mv .mv-avis-carte{background:#FFFFFF;border-color:#DCD3C2}
.opm-mv .mv-carte,.opm-mv .mv-formule,.opm-mv .mv-presta-carte{border-radius:22px}
.opm-mv details.mv-item[open]{border-color:#1F6E7A}
.opm-mv .mv-presta-pour{color:#1F6E7A}

/* Tuiles des services : flèche verte. */
.opm-mv .opm-tuile{background:#15191A}
.opm-mv .opm-tuile-fl{background:#3E7B25}
.opm-mv .opm-tuile:hover .opm-tuile-fl{background:#33681E}
.opm-mv .opm-tuile:focus-visible{outline-color:#1F6E7A}

/* Formules : prix bleu-vert, formule du milieu cerclée de vert. */
.opm-mv .mv-formule h3{color:#15191A}
.opm-mv .mv-formule-prix span{color:#56625F}
.opm-mv .mv-formule-prix b{color:#1F6E7A;font-family:'Excon',sans-serif;font-weight:900}
.opm-mv .mv-formule-fort{background:#FFFFFF;border:2px solid #3E7B25}
.opm-mv .mv-formule-fort h3{color:#15191A}
.opm-mv .mv-formule-fort .mv-formule-prix b{color:#1F6E7A}
.opm-mv .mv-carte-tag,
.opm-mv .mv-chip:hover,
.opm-mv details.mv-plus>summary:hover{background:#1F6E7A;border-color:#1F6E7A !important;color:#FFFFFF !important}

/* Numéros, pastilles, avatar. */
.opm-mv .mv-num{background:#1F6E7A;border-radius:50%}
.opm-mv .mv-avatar{background:#1F6E7A}
.opm-mv .mv-sig-nom{color:#15191A}
.opm-mv .mv-flag-info .mv-flag-ico{background-color:#1F6E7A}
.opm-mv .mv-flag-info .mv-flag-txt b{color:#15191A}
.opm-mv .mv-presta-media{background:#F3EFE6}

/* Liens du contenu. */
.opm-mv>section a:not([class]),
.opm-mv .mv-p a:not([class]),
.opm-mv .mv-lead a:not([class]),
.opm-mv .mv-acc-corps a:not([class]){color:#1F6E7A;text-decoration-color:#6BAB45}

/* Avant / après des réalisations : étiquettes bleu-vert et vertes, poignée bleu-vert. */
.opm-mv .mv-ba-tag{background:rgba(23,87,97,.92) !important;color:#FFFFFF !important}
.opm-mv .mv-ba-tag-ap{background:#3E7B25 !important}
.opm-mv .mv-ba-poignee{background:#1F6E7A !important}
.opm-mv .mv-ba-choix button.is-on{background:#1F6E7A !important;border-color:#1F6E7A !important;color:#FFFFFF !important}
.opm-mv .mv-ba-choix button::after{color:#1F6E7A}

/* Avis, météo. */
.opm-mv .mv-avis-nom{color:#15191A}
.opm-mv .mv-meteo-temp{color:#15191A}
.opm-mv .mv-meteo-src a{color:#1F6E7A}

/* ---------- Zone d'intervention ---------- */
.opm-mv .opm-zone-sec,.opm-zone-sec{--mv-acc:#1F6E7A;--mv-acc-2:#175761;--mv-bleu:#1F6E7A;--mv-filet:#E6DFD0}
.opm-zone-villes li>a,.opm-zone-sec a:not(.mv-cta){color:#1F6E7A}
.opm-zone-tr{border-color:#1F6E7A}
.opm-zone-dep{color:#1F6E7A;border-color:#1F6E7A}
.opm-zone-sec .mv-cta{background:#3E7B25;border-radius:14px}
.opm-zone-sec .mv-cta:hover{background:#33681E}
.opm-zone-sec .mv-cta[href^="tel:"]{background:#1F6E7A}
/* Carte dessinée : bleus remplacés par le bleu-vert, sans toucher au plugin. */
.opm-zone-sec svg stop[stop-color="#2C7BD6"]{stop-color:#1F6E7A}
.opm-zone-sec svg stop[stop-color="#1257AD"]{stop-color:#1F6E7A}
.opm-zone-sec svg stop[stop-color="#0E4585"]{stop-color:#175761}
.opm-zone-sec svg [stroke="#0E4585"]{stroke:#175761}
.opm-zone-sec svg [fill="#0E4585"]{fill:#175761}
.opm-zone-sec svg [stroke="#6FA8DF"]{stroke:#8FC1C6}
.opm-zone-sec svg [fill="#2A6BA8"]{fill:#1F6E7A}
.opm-zone-sec svg [fill="#E07404"]{fill:#E8823A}
.opm-zone-sec svg [fill="#0B1B2E"]{fill:#15191A}
.opm-zone-sec svg feDropShadow{flood-color:#15191A}

/* Fil d'Ariane. */
html body nav[aria-label="Fil d'Ariane"] a,
html body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] a{color:#1F6E7A !important}
html body nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"],
html body:has(.opm-mv) nav[aria-label="Fil d'Ariane"] span[aria-hidden="true"]{color:#56625F !important}

/* ---------- Formulaire de devis : photo sous un voile bleu-vert ---------- */
.opm-mv #devis .mv-form{
  background:linear-gradient(160deg,rgba(23,87,97,.80) 0%,rgba(23,87,97,.92) 45%,rgba(23,87,97,.97) 100%),url("https://opm-debarras.fr/wp-content/uploads/2026/10/opm-benne-immeuble-01.jpg") center/cover no-repeat;
  border:0;border-radius:22px;
}
.opm-mv #devis .mv-form .mv-input{background:#FFFFFF;border-color:transparent;border-radius:12px}
.opm-mv #devis .mv-form .mv-submit{background:#FFFFFF !important;color:#33681E !important}
.opm-mv #devis .mv-form .mv-submit:hover{background:#E3F1D8 !important}
.opm-mv .mv-coord-ico{background-color:#1F6E7A}
.opm-mv .mv-coord-lab{color:#1F6E7A}
.opm-mv .mv-coord-val,.opm-mv .mv-coord-val a{color:#15191A}

/* ---------- Pied de page sable, titres bleu-vert ---------- */
.opm-pied{background:#E6DFD0 !important;border-top:0 !important}
.opm-pied p,
.opm-pied span:not(.opm-avis-g):not(.opm-avis-etoiles),
.opm-pied li,
.opm-pied div,
.opm-pied strong,
.opm-pied b,
.opm-pied a,
.opm-pied .opm-foot-col nav a,
.opm-pied nav a{color:#15191A !important}
.opm-pied a:hover,.opm-pied a:focus,
.opm-pied .opm-foot-col nav a:hover,.opm-pied nav a:hover{color:#1F6E7A !important}
.opm-pied .opm-foot-col>p:first-child{color:#1F6E7A !important}
.opm-pied img[alt*="OPM"]{filter:none}
.opm-pied .opm-cta,
.opm-pied .opm-cta span,
.opm-pied .opm-cta b{color:#FFFFFF !important}
.opm-pied [style*="border-top"]{border-top-color:#D6CFBF !important}
html body .opm-pied .opm-carbone .wcb-mesure,
html body .opm-pied .opm-carbone .wcb-mesure *{color:#15191A !important}
html body .opm-pied .opm-carbone .wcb-sous{color:#56625F !important}
html body .opm-pied .opm-carbone .wcb-marque{color:#FFFFFF !important}
.opm-carbone{border-color:#D6CFBF}
.opm-carbone .wcb-marque{background:#1F6E7A}
.opm-carbone:hover .wcb-marque{background:#175761}
.opm-pied .opm-avis .opm-avis-txt,
.opm-pied .opm-avis .opm-avis-txt span,
.opm-pied .opm-avis b{color:#15191A !important}

/* ---------- Pages à l'ancien balisage (ville, histoire) : sections claires ---------- */
.d134,.d101,.d264,.d51,.d207,.d216,.d102{background:#F3EFE6 !important;color:#15191A !important}
.d134 *,.d101 *,.d264 *,.d51 *,.d207 *,.d216 *,.d102 *{color:#15191A !important}
.d134 .d94,.d101 .d17,.d264 .d17,.d51 .d17,.d207 .d17,.d216 .d17,
.opm-fond-gris .d110,.opm-fond-gris .d17{color:#1F6E7A !important}
.opm-surligne{color:#1F6E7A !important}
.d264 a:not([class*="cta"]),.d51 a:not([class*="cta"]),.d101 a:not([class*="cta"]),
:is(.d264,.d51,.d101) :is(.d13,.d45,.d62,.d68,.d88,.d123,.d138,.d167,.d185,.d204,.d235,.d238) a:not([class*="cta"]){color:#1F6E7A !important}
.d264 .d176,.d51 .d34{color:#1F6E7A !important;border-color:#DCD3C2 !important}
.d13,.d45,.d62,.d68,.d88,.d123,.d138,.d167,.d185,.d204,.d235,.d238{border-color:#DCD3C2 !important}
.d138:hover,.d68:hover,.d134 .d58:hover{border-color:#1F6E7A !important}
.d37{background:#F3EFE6 !important}
.d134 .d57,.d134 .d57 *,.d51 .d66,.d51 .d66 *,.d101 .d133,.d101 .d133 *,.d264 .d133,.d264 .d133 *,
.d51 .d133,.d51 .d133 *,.d134 .d317,.d134 .d317 *,a.d57,a.d57 *{color:#FFFFFF !important}

/* Retouches après relecture (01/10/2026). */
/* Note Google du bandeau : badge blanc, texte encre (il était blanc sur bleu). */
.opm-bandeau .opm-avis{background:#FFFFFF !important;border-color:#DCD3C2 !important}
.opm-bandeau .opm-avis-txt,
.opm-bandeau .opm-avis-txt *,
.opm-bandeau .opm-avis b{color:#15191A !important}
/* « Soyons clairs » : boîte blanche à bordure fine, croix orange, plus de rose. */
.opm-mv .mv-flag-non{background:#FFFFFF;border-color:#DCD3C2}
.opm-mv .mv-flag-non .mv-flag-ico{background-color:#E8823A}
.opm-mv .mv-flag-non .mv-flag-txt b{color:#A24E17}
/* Formule du milieu : mêmes coches que les deux autres. */
.opm-mv .mv-formule-fort .mv-puces li::before{background:#1F6E7A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat !important}

/* Cartes retournées (pages maison, appartement) : dos bleu-vert, liens blancs. */
.opm-mv .mv-flip-dos a,
.opm-mv .mv-flip-dos a:not([class]){color:#FFFFFF !important;text-decoration-color:#BCE3A6}
/* Pages à l'ancien balisage : bouton secondaire et titres en encre. */
.d134 .d58,.d134 .d58 *,.d51 .d58,.d51 .d58 *{color:#15191A !important;border-color:#DCD3C2 !important}
.opm-fond-gris .d105{color:#15191A !important}
/* Avant / après des pages ville (Givors) : mêmes étiquettes que l'accueil. */
.opm-ba .d39{background:rgba(23,87,97,.92) !important}
.opm-ba .d40{background:#3E7B25 !important}
.opm-ba-handle{background:#1F6E7A !important}
/* Titres des anciennes sections bleu nuit (Notre histoire, villes) : encre. */
.d134 h1,.d134 h2,.d134 h3,.d134 h4,
.d101 h1,.d101 h2,.d101 h3,.d101 h4,
.d264 h1,.d264 h2,.d264 h3,.d264 h4,
.d51 h1,.d51 h2,.d51 h3,.d51 h4,
.d207 h2,.d207 h3,.d216 h2,.d216 h3,.d102 h2,.d102 h3,
.d134 .d209,.d101 .d96,.d264 .d70,.d51 .d74{color:#15191A !important}
/* Simulateur posé sur les pages ville à l'ancien balisage. */
.opm-simu-intro{max-width:72ch;margin:12px 0 0;font-size:17px;line-height:1.6;color:#15191A}
.opm-simu-cta,a.opm-simu-cta{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:16px;padding:15px 20px;box-sizing:border-box;border-radius:14px;background:#3E7B25;color:#FFFFFF !important;font-family:'Excon',sans-serif;font-weight:700;font-size:16px;line-height:1.2;text-decoration:none}
.opm-simu-cta:hover{background:#33681E}

/* ==================================================================
   18. Simulateur de prix pièce par pièce (01/10/2026)
   ================================================================== */
.opm-simu{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,390px);gap:clamp(18px,2.2vw,32px);align-items:start;margin-top:clamp(26px,3vw,40px)}
.opm-simu-etapes{display:grid;gap:16px;min-width:0}
.opm-simu-bloc{margin:0;min-width:0;padding:22px clamp(18px,2vw,26px) 24px;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px}
.opm-simu-bloc legend{float:left;width:100%;display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:0;font-family:'Excon',sans-serif;font-weight:700;font-size:19px;line-height:1.25;color:#15191A}
.opm-simu-bloc legend+*{clear:both}
.opm-simu-n{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:50%;background:#1F6E7A;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:900;font-size:15px}

.opm-simu-pieces{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(205px,100%),1fr));gap:10px}
.opm-simu-piece{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 10px 10px 12px;border:1px solid #E6DFD0;border-radius:16px;background:#FBF9F5;transition:background-color .2s ease,border-color .2s ease}
.opm-simu-piece.is-on{background:#E6F1F1;border-color:rgba(31,110,122,.35)}
.opm-simu-ico{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#FFFFFF;border:1px solid #E6DFD0}
.opm-simu-ico svg{width:22px;height:22px;fill:none;stroke:#1F6E7A;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.opm-simu-pnom{font-weight:600;font-size:16px;line-height:1.2;color:#15191A}
.opm-simu-pnom small{display:block;margin-top:3px;font-weight:500;font-size:13px;color:#56625F}
.opm-simu-compteur{display:inline-flex;align-items:center;gap:4px}
.opm-simu-compteur button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border-radius:50%;border:1px solid #DCD3C2;background:#FFFFFF;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:19px;line-height:1;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}
.opm-simu-compteur button:hover{border-color:#1F6E7A;background:#E6F1F1}
.opm-simu-compteur button:focus-visible{outline:3px solid #1F6E7A;outline-offset:2px}
.opm-simu-compteur output{min-width:24px;text-align:center;font-family:'Excon',sans-serif;font-weight:700;font-size:17px;color:#15191A}

.opm-simu-choix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.opm-simu-choix button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 40px 14px 16px;border:1px solid #E6DFD0;border-radius:16px;background:#FBF9F5;color:#15191A;text-align:left;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}
.opm-simu-choix button b{font-family:'Excon',sans-serif;font-weight:700;font-size:16px;line-height:1.25}
.opm-simu-choix button small{font-size:13.5px;line-height:1.4;color:#56625F}
.opm-simu-choix button:hover{border-color:#1F6E7A}
.opm-simu-choix button[aria-checked="true"]{padding:13px 39px 13px 15px;background:#FFFFFF;border:2px solid #1F6E7A}
.opm-simu-choix button[aria-checked="true"]::after{content:"";position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:#1F6E7A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat}
.opm-simu-choix button:focus-visible{outline:3px solid #1F6E7A;outline-offset:2px}
.opm-simu-jauge{display:inline-flex;gap:3px;margin-bottom:4px}
.opm-simu-jauge i{width:16px;height:6px;border-radius:3px;background:#E6DFD0}
.opm-simu-jauge[data-n="1"] i:nth-child(-n+1),
.opm-simu-jauge[data-n="2"] i:nth-child(-n+2),
.opm-simu-jauge[data-n="3"] i{background:#1F6E7A}

.opm-simu-acces{display:flex;flex-wrap:wrap;align-items:center;gap:14px 32px}
.opm-simu-etage{display:inline-flex;align-items:center;gap:14px}
.opm-simu-etage-lab{font-weight:600;font-size:16px}
.opm-simu-etage output{min-width:66px}
.opm-simu-ascenseur{display:inline-flex;align-items:center;gap:12px;font-weight:600;font-size:16px;cursor:pointer}
.opm-simu-ascenseur input{position:absolute;opacity:0;width:1px;height:1px}
.opm-simu-bascule{position:relative;flex:none;width:48px;height:28px;border-radius:999px;background:#DCD3C2;transition:background-color .2s ease}
.opm-simu-bascule::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#FFFFFF;transition:transform .2s ease}
.opm-simu-ascenseur input:checked+.opm-simu-bascule{background:#1F6E7A}
.opm-simu-ascenseur input:checked+.opm-simu-bascule::after{transform:translateX(20px)}
.opm-simu-ascenseur input:focus-visible+.opm-simu-bascule{outline:3px solid #1F6E7A;outline-offset:2px}

/* Le ticket : reste en vue pendant qu'on coche les pièces. */
.opm-simu-ticket{position:sticky;top:110px;overflow:hidden;padding:0 26px 24px;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px}
.opm-simu-ticket-titre{margin:0 -26px 16px;padding:16px 26px;background:#1F6E7A;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:17px}
.opm-simu-lignes{list-style:none;margin:0;padding:0}
.opm-simu-lignes li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:15.5px;color:#15191A}
.opm-simu-lignes li b{font-family:'Excon',sans-serif;font-weight:700;white-space:nowrap}
.opm-simu-lignes .opm-simu-vide{color:#56625F;font-style:italic}
.opm-simu-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:8px 0 0;padding-top:12px;border-top:2px dashed #E6DFD0;font-weight:600}
.opm-simu-total b{font-family:'Excon',sans-serif;font-weight:900;font-size:22px;color:#1F6E7A;white-space:nowrap}
.opm-simu-prix-lab{margin:20px 0 4px;font-family:'Excon',sans-serif;font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#1F6E7A}
.opm-simu-prix{margin:0;font-family:'Excon',sans-serif;font-weight:900;font-size:clamp(30px,2.6vw,40px);line-height:1.05;letter-spacing:-.02em;color:#15191A}
.opm-simu-gratuit{display:flex;align-items:center;gap:12px;margin:16px 0 12px;padding:12px 14px;border-radius:14px;background:#F3EFE6}
.opm-simu-gratuit>span:last-child{display:flex;flex-direction:column;gap:2px}
.opm-simu-gratuit b{font-weight:600;font-size:15px;line-height:1.35;color:#15191A}
.opm-simu-gratuit a{font-size:13.5px;color:#1F6E7A;text-decoration:underline;text-decoration-color:#6BAB45;text-underline-offset:3px}
.opm-simu-gratuit-jauge{display:inline-flex;gap:4px;flex:none}
.opm-simu-gratuit-jauge i{width:10px;height:10px;border-radius:50%;background:#DCD3C2}
.opm-simu-gratuit[data-niveau="1"] .opm-simu-gratuit-jauge i:first-child{background:#E8823A}
.opm-simu-gratuit[data-niveau="2"] .opm-simu-gratuit-jauge i:nth-child(-n+2){background:#6BAB45}
.opm-simu-gratuit[data-niveau="3"] .opm-simu-gratuit-jauge i{background:#3E7B25}
.opm-simu-note{margin:0;font-size:13.5px;line-height:1.5;color:#56625F}
.opm-mv .opm-simu-cta{display:flex;justify-content:center;width:100%;margin-top:16px;box-sizing:border-box}
.opm-simu-tel{display:block;margin-top:10px;text-align:center;font-size:14.5px;color:#56625F;text-decoration:none}
.opm-simu-tel b{color:#15191A}
.opm-simu-tel:hover b{color:#1F6E7A}

@media (max-width:1000px){
  .opm-simu{grid-template-columns:1fr}
  .opm-simu-ticket{position:relative;top:auto}
}
@media (max-width:640px){
  .opm-simu-choix{grid-template-columns:1fr}
  .opm-simu-bloc{padding:18px 16px 20px}
  .opm-simu-ticket{padding:0 18px 20px}
  .opm-simu-ticket-titre{margin:0 -18px 14px;padding:14px 18px}
  .opm-simu-acces{flex-direction:column;align-items:flex-start}
}

/* ==================================================================
   19. Déroulement en cartes photo (01/10/2026), sur le modèle de Bru Bennes
   Étiquette sur la photo, numéro à cheval, titre, une phrase, cartes
   reliées par des points. Photos : avant à l'étape 1, après à l'étape 5.
   ================================================================== */
.opm-deroule{--g:clamp(14px,1.6vw,26px);list-style:none;margin:clamp(30px,3.6vw,48px) 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--g)}
.opm-deroule-etape{position:relative;display:flex;flex-direction:column;padding-bottom:24px;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;container-type:inline-size}
.opm-deroule-photo{position:relative;margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:21px 21px 0 0;background:#E6F1F1}
.opm-deroule-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.opm-deroule-etape:hover .opm-deroule-photo img{transform:scale(1.07)}
.opm-deroule-photo figcaption{position:absolute;left:12px;top:12px;z-index:1;display:inline-flex;align-items:center;gap:7px;padding:7px 12px 7px 10px;border-radius:999px;background:rgba(23,87,97,.92);color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:12px;line-height:1;letter-spacing:.1em;text-transform:uppercase}
.opm-deroule-photo figcaption::before{content:"";width:7px;height:7px;border-radius:50%;background:#E8823A}
.opm-deroule-etape:first-child .opm-deroule-photo figcaption{background:rgba(21,25,26,.82)}
.opm-deroule-etape:last-child .opm-deroule-photo figcaption{background:#3E7B25}
.opm-deroule-etape:last-child .opm-deroule-photo figcaption::before{background:#BCE3A6}
.opm-deroule-num{position:relative;z-index:1;align-self:flex-start;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin:-26px 0 12px 18px;border-radius:50%;background:#1F6E7A;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:900;font-size:18px;border:4px solid #FFFFFF}
.opm-mv .opm-deroule-etape h3{margin:0 18px 8px;font-size:clamp(18px,1.3vw,20px);line-height:1.25;color:#15191A}
.opm-deroule-etape p{margin:0 18px;font-size:15.5px;line-height:1.55;color:#15191A}
.opm-deroule-etape:not(:last-child)::after{content:"";position:absolute;z-index:2;top:calc(75cqw - 2px);right:calc(-1 * var(--g) - 1px);width:var(--g);height:4px;background-image:radial-gradient(circle,#1F6E7A 1.7px,transparent 2.3px);background-size:10px 4px}

@media (max-width:1180px){
  .opm-deroule{grid-template-columns:repeat(3,minmax(0,1fr))}
  .opm-deroule-etape:nth-child(3n)::after{display:none}
}
@media (max-width:820px){
  .opm-deroule{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opm-deroule-etape:nth-child(3n):not(:last-child)::after{display:block}
  .opm-deroule-etape:nth-child(2n)::after{display:none}
}
@media (max-width:600px){
  .opm-deroule{--g:34px;grid-template-columns:1fr;max-width:520px}
  .opm-deroule-etape:not(:last-child)::after,
  .opm-deroule-etape:nth-child(2n):not(:last-child)::after,
  .opm-deroule-etape:nth-child(3n):not(:last-child)::after{display:block;top:100%;left:44px;right:auto;width:4px;height:var(--g);background-size:4px 10px;background-repeat:repeat-y}
}

/* Petits écrans : échelle des titres, en dernier. */
@media (max-width:900px){
  html body h2[class],
  html body .opm-zone-sec .mv-tete h2,
  body .opm-prose h2,
  .opm-mv h2,
  .opm-mv .mv-grid h2,
  .opm-mv .mv-contact h2,
  .opm-mv .opm-zone-sec .mv-tete h2{font-size:clamp(28px,5.8vw,36px);line-height:1.1}
}

/* ==================================================================
   20. Avant / après sur les tuiles des services et les cartes
       Particuliers / Professionnels (02/10/2026)
   La photo « après » est en dessous ; la photo « avant » est posée par-
   dessus dans une enveloppe coupée à moitié (la coupe est sur l'enveloppe,
   pas sur l'image : l'animation d'apparition du site anime le clip-path
   des images). Au survol, l'avant s'efface et laisse voir le résultat.
   ================================================================== */
.opm-avap{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.opm-avap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.opm-avap-cache{position:absolute;inset:0;z-index:1;display:block;clip-path:inset(0 50% 0 0);transition:clip-path .7s cubic-bezier(.2,.7,.2,1)}
.opm-avap-trait{position:absolute;top:0;bottom:0;left:50%;z-index:2;width:3px;margin-left:-1.5px;background:#FFFFFF;transition:left .7s cubic-bezier(.2,.7,.2,1),opacity .4s ease}
.opm-avap-tag{position:absolute;top:12px;z-index:3;display:inline-flex;align-items:center;gap:7px;padding:7px 12px 7px 10px;border-radius:999px;font-family:'Excon',sans-serif;font-weight:700;font-size:12px;line-height:1;letter-spacing:.1em;text-transform:uppercase;color:#FFFFFF;transition:opacity .4s ease}
.opm-avap-tag::before{content:"";width:7px;height:7px;border-radius:50%}
.opm-avap-tag-av{left:12px;background:rgba(21,25,26,.82)}
.opm-avap-tag-av::before{background:#E8823A}
.opm-avap-tag-ap{right:12px;background:#3E7B25}
.opm-avap-tag-ap::before{background:#BCE3A6}
.opm-mv .opm-tuile:hover .opm-avap-cache,
.opm-mv .mv-presta-carte:hover .opm-avap-cache{clip-path:inset(0 100% 0 0)}
.opm-mv .opm-tuile:hover .opm-avap-trait,
.opm-mv .mv-presta-carte:hover .opm-avap-trait{left:0;opacity:0}
.opm-mv .opm-tuile:hover .opm-avap-tag-av,
.opm-mv .mv-presta-carte:hover .opm-avap-tag-av{opacity:0}
.opm-mv .opm-tuile{background:#15191A}
.opm-mv .mv-presta-media .mv-presta-pour{z-index:4}
@media (prefers-reduced-motion:reduce){
  .opm-avap-cache,.opm-avap-trait,.opm-avap-tag{transition:none}
}

/* ---------- Formules : une photo en tête de carte ---------- */
.opm-mv .mv-formule{overflow:hidden}
.opm-mv .mv-formule-photo{position:relative;margin:calc(-1 * clamp(24px,2.4vw,34px)) calc(-1 * clamp(24px,2.4vw,34px)) 22px;aspect-ratio:16/10;overflow:hidden;background:#E6F1F1}
.opm-mv .mv-formule-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.opm-mv .mv-formule:hover .mv-formule-photo img{transform:scale(1.07)}

/* ---------- Note Google discrète, sous les boutons de la bannière ---------- */
.opm-mv .opm-hero-avis{margin-top:14px}
.opm-avis--discret{padding:0;gap:8px;border:0;background:none;font-family:'Switzer',sans-serif;font-weight:500;font-size:13.5px;color:#56625F}
.opm-avis--discret:hover{background:none;border:0}
.opm-avis--discret:hover .opm-avis-txt span{text-decoration:underline;text-underline-offset:3px}
.opm-avis--discret .opm-avis-g{width:20px;height:20px;font-size:11px;border-color:#DCD3C2}
.opm-avis--discret .opm-avis-etoiles{width:69px;height:12px;background-size:14px 12px}
.opm-avis--discret b{font-family:'Switzer',sans-serif;font-weight:700;font-size:14px;color:#15191A}
.opm-avis--discret .opm-avis-txt span{font-weight:500;color:#56625F}

/* ==================================================================
   21. Fond des sections (2026-10-02, « dans le background uniquement les
   ronds, comme sur le site Tigmi ») : plus d'anneau en pointillés, de
   trame de points, d'étoile ni de carton au trait. Une section sur deux
   reçoit un grand rond très pâle coupé dans un coin et un petit rond coupé
   sur le bord opposé ; les coins alternent d'une section décorée à la
   suivante. Ronds nets en CSS pur (dégradé à bord franc). La bannière
   garde seulement son grand rond pâle.
   ================================================================== */
:root{
  --op-rond-grand:#EAE2D4;   /* sable pâle (plus de bleu clair en fond, 2026-10-02) */
  --op-rond-petit:#E6F0DE;   /* vert très pâle */
}
body .opm-mv>section{background-repeat:no-repeat !important}
/* zone d'intervention : la carte descend jusqu'au bas de la section, pas de rond */
body .opm-mv>section#zone{background-image:none !important}
body .opm-mv>section.mv-hero{
  background-image:radial-gradient(circle 300px at right -120px top -150px,var(--op-rond-grand) 99.4%,transparent 100%) !important;
}
body .opm-mv>section:not(.mv-hero):nth-of-type(4n+3){
  background-image:
    radial-gradient(circle 300px at right -190px top -200px,var(--op-rond-grand) 99.4%,transparent 100%),
    radial-gradient(circle 120px at left 6% bottom -96px,var(--op-rond-petit) 99%,transparent 100%) !important;
}
body .opm-mv>section:not(.mv-hero):nth-of-type(4n+1){
  background-image:
    radial-gradient(circle 310px at left -220px bottom -230px,var(--op-rond-grand) 99.4%,transparent 100%),
    radial-gradient(circle 110px at right 7% top -86px,var(--op-rond-petit) 99%,transparent 100%) !important;
}
@media (max-width:900px){
  body .opm-mv>section.mv-hero{
    background-image:radial-gradient(circle 170px at right -80px top -96px,var(--op-rond-grand) 99.2%,transparent 100%) !important;
  }
  body .opm-mv>section:not(.mv-hero):nth-of-type(4n+3){
    background-image:
      radial-gradient(circle 170px at right -96px top -112px,var(--op-rond-grand) 99.2%,transparent 100%),
      radial-gradient(circle 74px at left 6% bottom -62px,var(--op-rond-petit) 99%,transparent 100%) !important;
  }
  body .opm-mv>section:not(.mv-hero):nth-of-type(4n+1){
    background-image:
      radial-gradient(circle 176px at left -110px bottom -124px,var(--op-rond-grand) 99.2%,transparent 100%),
      radial-gradient(circle 70px at right 7% top -58px,var(--op-rond-petit) 99%,transparent 100%) !important;
  }
  /* la FAQ finit près du bord sur téléphone et tablette : pas de rond, il passerait sous le texte */
  body .opm-mv>section#faq,body .opm-mv>section#deroule{background-image:none !important}
}

/* ---------- Déroulement en quatre étapes (02/10/2026) ---------- */
.opm-deroule--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.opm-mv .opm-deroule--4 .opm-deroule-etape h3{font-size:clamp(18px,1.4vw,21px)}
@media (max-width:1180px){
  .opm-deroule--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opm-deroule--4 .opm-deroule-etape:nth-child(3)::after{display:block}
  .opm-deroule--4 .opm-deroule-etape:nth-child(2)::after{display:none}
}
@media (max-width:600px){
  .opm-deroule--4{grid-template-columns:1fr}
  .opm-deroule--4 .opm-deroule-etape:nth-child(2)::after{display:block}
}

/* Encadré « assurés » de la zone : plus de liseré orange sur le bord gauche. */
.opm-zone-plus{padding:12px 16px !important;border:1px solid #DCD3C2 !important;border-radius:14px;background:#FFFFFF}
.opm-zone-note a{color:#1F6E7A}

/* ---------- FAQ : deux photos à gauche, questions à droite (02/10/2026) ----------
   Les deux colonnes finissent à la même hauteur : les photos s'étirent
   (object-fit:cover), même quand une question est ouverte. */
.opm-mv .opm-faq-grid{align-items:stretch}
.opm-mv .opm-faq-photos{display:flex;flex-direction:column;gap:16px;min-width:0}
.opm-mv .opm-faq-photos img{display:block;flex:1 1 0;width:100%;min-height:240px;height:auto;object-fit:cover;border-radius:22px}
.opm-mv .opm-faq-col{min-width:0}
.opm-mv .opm-faq-col .mv-tete{margin-bottom:22px}
@media (max-width:900px){
  .opm-mv .opm-faq-photos{order:-1}
  .opm-mv .opm-faq-photos img{flex:none;min-height:0;aspect-ratio:4/3}
  .opm-mv .opm-faq-photos img+img{display:none}
}

/* ==================================================================
   22. Estimation en trois questions (02/10/2026), à la place du
   simulateur pièce par pièce (passé sur SAD Débarras). Carte claire,
   bulles de conversation, une question à la fois.
   ================================================================== */
.opm-quiz{position:relative;display:grid;gap:20px;margin-top:clamp(24px,3vw,38px);padding:clamp(22px,2.8vw,42px);background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;color:#15191A}
.opm-quiz-tete{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-bottom:18px;border-bottom:2px dashed #E6DFD0}
.opm-quiz-titre{margin:0;font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(21px,1.9vw,28px);line-height:1.2;color:#15191A}
.opm-quiz-progression{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;color:#56625F}
.opm-quiz-progression b{color:#15191A}
.opm-quiz-barre{position:relative;display:block;width:140px;height:6px;border-radius:99px;background:#E6DFD0;overflow:hidden}
.opm-quiz-barre i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:99px;background:#3E7B25;transition:width .4s cubic-bezier(.2,.7,.2,1)}
.opm-quiz-ecran{display:grid;gap:18px}
.opm-quiz [hidden]{display:none !important}
/* plus d’animation d’entrée des questions (2026-10-02, « retire les animations ») */
@media (prefers-reduced-motion:reduce){.opm-quiz-ecran.est-actif{animation:none}}
.opm-quiz-question{display:flex;align-items:flex-end;gap:12px;margin:0}
.opm-quiz-question>span:last-child{padding:14px 18px;border-radius:18px 18px 18px 4px;background:#F3EFE6;color:#15191A;font-weight:600;font-size:clamp(16px,1.2vw,18px);line-height:1.45}
.opm-quiz-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#1F6E7A}
.opm-quiz-avatar svg{width:24px;height:24px;fill:none;stroke:#FFFFFF;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.opm-quiz-reponses{display:grid;gap:10px;padding-left:56px}
.opm-quiz-reponses--types{grid-template-columns:repeat(4,minmax(0,1fr))}
.opm-quiz-reponses--surfaces{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr))}
.opm-quiz-reponses--remplissage{grid-template-columns:repeat(3,minmax(0,1fr))}
.opm-quiz-reponses button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:16px 14px;border-radius:16px;border:1.5px solid #E6DFD0;background:#FBF9F5;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:15.5px;line-height:1.3;text-align:center;cursor:pointer;transition:border-color .2s,background-color .2s}
.opm-quiz-reponses button:hover,.opm-quiz-reponses button:focus-visible{border-color:#1F6E7A;background:#E6F1F1}
.opm-quiz-reponses button:focus-visible{outline:3px solid #1F6E7A;outline-offset:2px}
.opm-quiz-reponses button.est-choisi{border-color:#1F6E7A;background:#E6F1F1}
.opm-quiz-reponses--types button svg{width:38px;height:38px;fill:none;stroke:#1F6E7A;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.opm-quiz-piece{display:grid;grid-template-columns:repeat(3,18px);grid-template-rows:repeat(2,18px);gap:4px;padding:8px;border:2px solid #CFC6B5;border-top-width:5px;border-radius:4px;background:#FFFFFF}
.opm-quiz-piece i{border-radius:3px;background:#F3EFE6}
.opm-quiz-piece.niveau-1 i:nth-child(4){background:#E8823A}
.opm-quiz-piece.niveau-2 i:nth-child(n+4),.opm-quiz-piece.niveau-2 i:nth-child(1){background:#E8823A}
.opm-quiz-piece.niveau-3 i{background:#E8823A}
.opm-quiz-resultat{display:grid;gap:14px;margin-left:56px;padding:clamp(20px,2vw,30px);border-radius:18px;background:#F3EFE6}
.opm-quiz-recap{margin:0;font-family:'Excon',sans-serif;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#1F6E7A}
.opm-quiz-prix{display:grid;gap:4px;margin:0}
.opm-quiz-prix>span{font-size:14px;color:#56625F}
.opm-quiz-prix strong{font-family:'Excon',sans-serif;font-weight:900;font-size:clamp(32px,3.4vw,50px);line-height:1;letter-spacing:-.02em;color:#15191A}
.opm-quiz-prix small{font-size:14.5px;color:#56625F}
.opm-quiz-prix small b{color:#15191A}
.opm-quiz-inclus{list-style:none;margin:0;padding:12px 0 0;border-top:2px dashed #DCD3C2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px}
.opm-quiz-inclus li{position:relative;padding-left:26px;font-size:15px;line-height:1.45;color:#15191A}
.opm-quiz-inclus li::before{content:"";position:absolute;left:0;top:2px;width:18px;height:18px;border-radius:50%;background:#1F6E7A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/11px no-repeat}
.opm-quiz-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.opm-quiz-recommencer{padding:10px 4px;border:0;background:none;color:#56625F;font-family:'Switzer',sans-serif;font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.opm-quiz-tel{margin:0;font-size:14.5px;color:#56625F}
.opm-quiz-tel a{color:#15191A;font-weight:700;text-decoration:none}
.opm-quiz-retour{justify-self:start;padding:6px 0;border:0;background:none;color:#1F6E7A;font-family:'Switzer',sans-serif;font-weight:600;font-size:15px;cursor:pointer}
.opm-quiz-note{margin:0;font-size:14px;line-height:1.6;color:#56625F}
.opm-quiz-note strong{color:#15191A}
@media (max-width:900px){
  .opm-quiz-reponses--types{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opm-quiz-reponses,.opm-quiz-resultat{padding-left:0;margin-left:0}
  .opm-quiz-resultat{padding:20px}
}
@media (max-width:560px){
  .opm-quiz-reponses--remplissage{grid-template-columns:1fr}
  .opm-quiz-reponses--remplissage button{flex-direction:row;justify-content:flex-start}
  .opm-quiz-inclus{grid-template-columns:1fr}
  .opm-quiz-barre{width:90px}
}

/* Ancien bloc contact (pages à l'ancien balisage) : nouvelle photo du camion
   sous un voile bleu-vert, sans ombre (02/10/2026). */
#contact [style*="background:var(--surface)"]{background:linear-gradient(rgba(23,87,97,.86),rgba(23,87,97,.93)),url('https://opm-debarras.fr/wp-content/uploads/2026/10/opm-camion-quai-01.jpg') center/cover !important;box-shadow:none !important}

/* Bannières à l'ancien balisage (villes, Notre histoire) : comparateur
   avant / après sur toute la hauteur du cadre (02/10/2026). */
.d61 .opm-ba-hero{aspect-ratio:auto;height:100%;border-radius:0}
.d61 .opm-ba-hero .d39,.d61 .opm-ba-hero .d40{font-family:'Excon',sans-serif}
.d61 .opm-ba-hero .d39{background:rgba(21,25,26,.82) !important}
/* Étiquettes et badge lisibles dans ces bannières (le texte des anciennes
   sections est forcé en encre plus haut). */
.d61 .opm-ba-hero .d39,.d61 .opm-ba-hero .d40{color:#FFFFFF !important}
.d61 .opm-ba-hero .d40{background:#3E7B25 !important}
.d61 .opm-hero-badge{z-index:4;background:#FFFFFF !important;color:#15191A !important;font-family:'Excon',sans-serif;font-weight:700;font-size:15px;border-radius:14px;pointer-events:none}

/* ---------- Avant / après dans les cartes, photos de section et FAQ (02/10/2026) ----------
   Même composant que les tuiles : la photo « après » dessous, l'« avant » coupée à moitié
   par-dessus ; au survol, l'avant s'efface et laisse voir le résultat. */
.opm-avap--bloc{z-index:0}
.mv-flip-face .opm-avap--bloc{z-index:0}
.opm-mv .mv-flip-face::after{z-index:1}
.opm-mv .mv-flip-face h3,.opm-mv .mv-flip-face .mv-flip-plus{z-index:2}
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-cache,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-cache,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-cache{clip-path:inset(0 100% 0 0)}
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-trait,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-trait,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-trait{left:0;opacity:0}
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-tag-av,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-tag-av,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-tag-av{opacity:0}

/* ==================================================================
   23. Avant / après classiques, à glisser (02/10/2026)
   « Au passage de la souris ça ne va pas : un truc classique, le client
   appuie avec la souris ou le doigt. » Script : opm-avap-curseur-1.js.
   La séparation suit la variable --p (50 % au départ) ; poignée ronde au
   centre ; on attrape n'importe où sur la photo. Plus aucun effet au survol.
   ================================================================== */
.opm-avap{--p:50%;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.opm-avap img{pointer-events:none;-webkit-user-drag:none}
.opm-avap .opm-avap-cache,
.opm-mv .opm-tuile:hover .opm-avap-cache,
.opm-mv .mv-presta-carte:hover .opm-avap-cache,
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-cache,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-cache,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-cache{clip-path:inset(0 calc(100% - var(--p)) 0 0) !important;transition:none !important}
.opm-avap .opm-avap-trait,
.opm-mv .opm-tuile:hover .opm-avap-trait,
.opm-mv .mv-presta-carte:hover .opm-avap-trait,
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-trait,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-trait,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-trait{left:var(--p) !important;opacity:1 !important;width:2px;margin-left:-1px;background:rgba(255,255,255,.95);transition:none !important}
.opm-avap .opm-avap-tag-av,
.opm-mv .opm-tuile:hover .opm-avap-tag-av,
.opm-mv .mv-presta-carte:hover .opm-avap-tag-av,
.opm-mv .mv-media:hover .opm-avap--bloc .opm-avap-tag-av,
.opm-faq-visuel:hover .opm-avap--bloc .opm-avap-tag-av,
.opm-apropos-visuel:hover .opm-avap--bloc .opm-avap-tag-av{opacity:1 !important}
.opm-avap-poignee{position:absolute;top:50%;left:var(--p);z-index:3;width:44px;height:44px;margin:-22px 0 0 -22px;border-radius:50%;background:#FFFFFF;pointer-events:none;transition:transform .15s ease}
.opm-avap-poignee::before,.opm-avap-poignee::after{content:"";position:absolute;top:50%;width:0;height:0;margin-top:-6px;border:6px solid transparent}
.opm-avap-poignee::before{left:7px;border-right:7px solid #1F6E7A;border-left:0}
.opm-avap-poignee::after{right:7px;border-left:7px solid #1F6E7A;border-right:0}
.opm-avap.is-glisse .opm-avap-poignee{transform:scale(1.1)}
.opm-avap:hover .opm-avap-poignee{transform:scale(1.06)}

/* Tuiles de l'accueil : photo en haut, titre et flèche dans une boîte blanche dessous. */
.opm-mv .opm-tuile{display:flex;flex-direction:column;aspect-ratio:auto;overflow:hidden;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;text-decoration:none;transition:border-color .2s ease}
.opm-mv .opm-tuile::after{display:none}
.opm-mv .opm-tuile:hover{border-color:#1F6E7A}
.opm-mv .opm-tuile .opm-avap{position:relative;inset:auto;flex:none;aspect-ratio:4/3;width:100%}
.opm-mv .opm-tuile .opm-tuile-in{position:static;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px 20px;background:#FFFFFF;cursor:pointer}
.opm-mv .opm-tuile .opm-tuile-titre{color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(18px,1.35vw,21px);line-height:1.25}
.opm-mv .opm-tuile .opm-tuile-fl{flex:none;width:42px;height:42px;border-radius:50%;background:#E6F1F1;color:#1F6E7A;font-size:19px;transition:background-color .2s ease,color .2s ease,transform .2s ease}
.opm-mv .opm-tuile-in:hover .opm-tuile-fl{background:#3E7B25;color:#FFFFFF;transform:translateX(3px)}
.opm-mv .opm-tuile:hover img{transform:none}

/* Cartes qui se retournent : plus de retournement au survol, c'est le « + » qui retourne. */
.opm-mv .mv-flip-face::after,.opm-mv .mv-flip-face h3{pointer-events:none}
.opm-mv .mv-flip.mv-flip--avap:hover .mv-flip-in,
.opm-mv .mv-flip.mv-flip--avap:focus .mv-flip-in,
.opm-mv .mv-flip.mv-flip--avap:focus-within .mv-flip-in{transform:none}
.opm-mv .mv-flip.mv-flip--avap.is-retourne .mv-flip-in{transform:rotateY(180deg)}
.opm-mv .mv-flip--avap .mv-flip-plus{z-index:4;cursor:pointer}
.opm-mv .mv-flip--avap .mv-flip-dos{cursor:pointer}
.opm-mv .mv-flip--avap .mv-flip-face .opm-avap-poignee{top:42%}
.opm-mv .mv-flip--avap:not(.is-retourne) .mv-flip-dos{pointer-events:none}
.opm-mv .mv-flip--avap.is-retourne .mv-flip-face{pointer-events:none}

/* ============================================================
   23. Rien ne sort du cadre (2026-10-02, capture téléphone de « Débarras maison » :
   « Électroménager » et « Encombrants du jardin » dépassaient de la carte).
   Les listes à coches des cartes de prestations passent sur une colonne dès que la carte
   est trop étroite pour deux colonnes (requête de conteneur : vaut au téléphone comme sur
   une tablette à deux cartes par rangée). Filet de sécurité partout : un mot trop long
   se coupe au lieu de déborder.
   ============================================================ */
.opm-mv .mv-presta-in{container:mvpresta/inline-size}
@container mvpresta (max-width:430px){
  .opm-mv .mv-presta .mv-puces{grid-template-columns:minmax(0,1fr)!important;column-gap:0}
  .opm-mv .mv-presta .mv-puces li{padding-top:9px;padding-bottom:9px}
}
.opm-mv .mv-puces,.opm-mv .mv-puces li{min-width:0}
.opm-mv .mv-puces li,.opm-mv h1,.opm-mv h2,.opm-mv h3,.opm-mv h4,.opm-mv p,.opm-mv .mv-flag-txt,.opm-mv summary{overflow-wrap:break-word;hyphens:auto}

/* ============================================================
   24. Titres (2026-10-02, « rajoute marge sous les H2 au lieu de mettre trait mais un
   mot en vert ») : plus de trait de feutre sous le mot clé, un seul mot passe en vert
   (vert des boutons, lisible sur crème comme sur blanc) ; un vrai souffle sous chaque H2.
   ============================================================ */
.opm-mv .mv-surl,.mv-surl,.opm-mv .mv-h1 .mv-surl{background:none !important;padding:0 !important;color:#3E7B25 !important}
.opm-mv h2,.opm-zone-sec h2,.opm-trajet-sec h2{margin-bottom:26px !important}
@media (max-width:767px){
  .opm-mv h2,.opm-zone-sec h2,.opm-trajet-sec h2{margin-bottom:18px !important}
}

/* ============================================================
   25. Rien qui « fasse IA » (2026-10-02) : plus d'aplat vert décalé derrière la photo
   de la bannière (le fond se limite aux ronds pâles de la section 21).
   ============================================================ */
.opm-mv .mv-hero-media::before{content:none !important;display:none !important}

/* ============================================================
   26. Rien de posé sur les photos (2026-10-02) : plus de vignettes « Visite gratuite /
   Assurance pro / 0 € / 90 € » sur la photo de bannière, plus de pastille de ville sur la
   bannière, plus d'étiquettes de catégorie sur les photos des cartes ni sur celles du
   déroulé. Les informations restent dans les textes. Gardés : le numéro d'étape et les
   repères « Avant / Après » du curseur à glisser (interface).
   Le balisage reste dans les pages (consigne : ne pas toucher au contenu des pages).
   ============================================================ */
.opm-mv .mv-flotte,
.opm-hero-badge,
.opm-mv .mv-presta-pour,
.opm-mv .opm-deroule-photo figcaption{display:none !important}

/* ============================================================
   27. Moins de blocs, plus de phrases (2026-10-02) : les chiffres de la bannière
   (« 2023 · Année de création », « 9 Arrondissements couverts »…) ne sont plus des
   statistiques géantes : ils se lisent comme une phrase, mêmes mots, même ordre.
   ============================================================ */
.opm-mv .mv-stats{display:block !important;gap:0 !important;font-size:16px;line-height:1.65;color:#15191A}
.opm-mv .mv-stats>div{display:inline !important;padding:0 !important;margin:0 !important;border:0 !important;background:none !important}
.opm-mv .mv-stats>div+div::before{content:"\00a0· "}
.opm-mv .mv-stat-n,
.opm-mv .mv-stat-l{display:inline !important;font-family:inherit !important;font-size:inherit !important;line-height:inherit !important;letter-spacing:normal !important;color:inherit !important;margin:0 !important}
.opm-mv .mv-stat-n{font-weight:700 !important;white-space:nowrap}
.opm-mv .mv-stat-n em{color:inherit !important;opacity:1 !important}
.opm-mv .mv-stat-l{font-weight:400 !important;text-transform:lowercase !important}
.opm-mv .mv-stat-n+.mv-stat-l::before{content:" "}
.opm-mv .mv-stats>div:first-child>.mv-stat-n>em:only-child{display:none !important}
/* Distance des pages ville (« 3,7 km soit environ 10 minutes de route ») : une phrase,
   plus un chiffre géant. */
.opm-trajet-chiffres{display:block !important;font-size:1.0625rem;line-height:1.6;color:var(--sec-faible,#5A6672)}
.opm-trajet-chiffres b{display:inline !important;font-family:inherit !important;font-size:inherit !important;line-height:inherit !important;letter-spacing:normal !important;font-weight:700 !important;color:var(--sec-titre,#15191A) !important}
.opm-trajet-chiffres b::after{content:" "}
.opm-trajet-chiffres span{font-size:inherit !important}

/* ============================================================
   28. Bannière de l'accueil façon HK Démolition (2026-10-05, « des bannières proches du
   site HK Démolition avec moins de hauteur et 3 images ») : texte à gauche (sur-titre,
   H1 sur 3 lignes au plus, introduction, liste cochée, deux boutons côte à côte, note
   Google en petite ligne), mosaïque de 3 photos à droite (une grande sur toute la
   hauteur, deux empilées), rien posé sur les photos. Le curseur avant / après reste
   dans les cartes des services. Sur téléphone, la mosaïque passe au-dessus du texte.
   ============================================================ */
.opm-mv>section.opm-hero3{padding-top:40px !important;padding-bottom:40px !important}
.opm-mv .opm-hero3-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:center}
.opm-mv .opm-hero3 .mv-h1{font-size:clamp(36px,3.5vw,52px) !important;line-height:1.02 !important;margin-top:14px}
.opm-mv .opm-hero3 .mv-lead{font-size:17px;line-height:1.6;margin:14px 0 0}
.opm-mv .opm-hero3-liste{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.opm-mv .opm-hero3-liste li{position:relative;padding-left:32px;font-size:16px;line-height:1.5;color:#15191A}
.opm-mv .opm-hero3-liste li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#1F6E7A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat}
.opm-mv .opm-hero3-boutons{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:22px 0 0}
.opm-mv .opm-hero3-boutons .mv-cta{width:auto}
.opm-mv .opm-hero3-tel{display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border:1.5px solid #DCD3C2;border-radius:14px;background:#FFFFFF;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:16px;line-height:1.2;text-decoration:none;transition:border-color .2s ease}
.opm-mv .opm-hero3-tel svg{flex:none;color:#1F6E7A}
.opm-mv .opm-hero3-tel:hover,.opm-mv .opm-hero3-tel:focus-visible{border-color:#1F6E7A}
.opm-mv .opm-hero3 .opm-hero-avis{margin-top:14px}
.opm-mv .opm-hero3-mosaique{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);grid-template-rows:1fr 1fr;gap:12px;height:clamp(420px,33vw,480px)}
.opm-mv .opm-hero3-mosaique img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;border-radius:22px}
.opm-mv .opm-hero3-mosaique .opm-hero3-grande{grid-row:1 / 3;object-position:62% 60%}
.opm-mv .opm-hero3-mosaique .opm-hero3-haut{object-position:58% 72%}
.opm-mv .opm-hero3-mosaique .opm-hero3-bas{object-position:50% 50%}
.opm-mv .opm-hero3-mosaique picture{display:contents}
@media (max-width:900px){
  .opm-mv>section.opm-hero3{padding-top:22px !important;padding-bottom:44px !important}
  .opm-mv .opm-hero3-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .opm-mv .opm-hero3-mosaique{order:-1;height:clamp(280px,52vw,400px);gap:10px}
  .opm-mv .opm-hero3-mosaique img{border-radius:18px}
  .opm-mv .opm-hero3 .mv-h1{font-size:clamp(32px,8.6vw,44px) !important}
}
@media (max-width:600px){
  .opm-mv .opm-hero3-mosaique{height:300px}
  .opm-mv .opm-hero3-boutons{flex-direction:column;align-items:stretch}
  .opm-mv .opm-hero3-boutons .mv-cta,.opm-mv .opm-hero3-tel{width:100%;justify-content:center}
}

/* 05/10/2026 : H1 de la bannière agrandi (« augmente taille du H1 »). */
.opm-mv .opm-hero3 .mv-h1{font-size:clamp(42px,4.4vw,68px) !important;line-height:1.02 !important}
@media (max-width:900px){
  .opm-mv .opm-hero3 .mv-h1{font-size:clamp(37px,10vw,50px) !important}
}
/* 05/10/2026 : les <source> des <picture> (MP Images) devenaient des cases de la
   mosaïque et écrasaient la grande photo (« c'est bugué »). */
.opm-mv .opm-hero3-mosaique source{display:none !important}

/* 05/10/2026 : bannière = un seul avant / après à glisser, à la hauteur du bloc de
   texte (« ça fait fake, mets un avant après », « même hauteur bloc de gauche »). */
.opm-mv .opm-hero3-grid{align-items:stretch}
.opm-mv .opm-hero3-media{position:relative;min-height:440px}
.opm-mv .opm-hero3-media .mv-ba{position:absolute;inset:0;margin:0;display:block !important}
.opm-mv .opm-hero3-media .mv-ba-scenes,
.opm-mv .opm-hero3-media .mv-ba-item{height:100%;margin:0}
.opm-mv .opm-hero3-media .mv-ba-stage{height:100%;aspect-ratio:auto !important;border-radius:22px;margin:0}
@media (max-width:900px){
  .opm-mv .opm-hero3-media{order:-1;min-height:0;height:clamp(280px,70vw,440px)}
  .opm-mv .opm-hero3-media .mv-ba-stage{border-radius:18px}
}
/* Les <source> ajoutés par MP Images ne comptent plus comme des éléments de mise en
   page : dans l'en-tête ils décalaient le logo de 24 px sur téléphone. */
picture>source{display:none !important}
/* Mention sous le formulaire : blanche sur le panneau bleu-vert (illisible en noir). */
.opm-mv .mv-form .opm-dv2-rgpd{color:#FFFFFF !important;opacity:.92 !important}
.opm-mv .mv-form .opm-dv2-rgpd a{color:#FFFFFF !important}

/* 05/10/2026 (suite) : pas de curseur dans la bannière, une seule image fixe, moitié
   avant / moitié après (« je veux un avant après direct dans une seule img »). */
.opm-mv .opm-hero3-avap{position:absolute;inset:0;margin:0;border-radius:22px;overflow:hidden}
.opm-mv .opm-hero3-avap img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.opm-mv .opm-hero3-etq{position:absolute;top:14px;padding:7px 14px;border-radius:999px;background:rgba(23,87,97,.92);color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:13px;line-height:1;letter-spacing:.06em;text-transform:uppercase}
.opm-mv .opm-hero3-etq--av{left:14px}
.opm-mv .opm-hero3-etq--ap{right:14px;background:#3E7B25}
@media (max-width:900px){
  .opm-mv .opm-hero3-avap{border-radius:18px}
}

/* 05/10/2026 : tuiles de services et cartes Particuliers / Professionnels en image
   fixe moitié avant / moitié après, comme la bannière (plus de curseur ici). */
.opm-avap1{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.opm-avap1 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block}
.opm-mv .opm-tuile .opm-avap1{position:relative;inset:auto;flex:none;aspect-ratio:4/3;width:100%}

/* 05/10/2026 : en-tête mobile, le téléphone en orange pour le distinguer du menu
   (« tél et menu hamburger même couleur, c'est dommage »). */
html body header a.r-mobcall[href^="tel:"][style]{background:#E8823A !important;color:#FFFFFF !important}

/* 05/10/2026 : plus de coupure de mot avec trait d'union dans les titres (« mai-son »). */
html body h1,html body h2,html body h3,html body h4,
.opm-mv h1,.opm-mv h2,.opm-mv h3,.opm-mv h4,.opm-mv .mv-h1{hyphens:manual !important;-webkit-hyphens:manual !important}

/* 05/10/2026 : au survol d'une tuile, la flèche passe en blanc sur le rond vert. */
html body .opm-mv .opm-tuile:hover .opm-tuile-fl,
html body .opm-mv .opm-tuile:focus-visible .opm-tuile-fl,
html body .opm-mv .opm-tuile-in:hover .opm-tuile-fl{background:#3E7B25 !important;color:#FFFFFF !important}
html body .opm-mv .opm-tuile:hover .opm-tuile-fl *,
html body .opm-mv .opm-tuile-in:hover .opm-tuile-fl *{color:#FFFFFF !important;stroke:#FFFFFF}

/* 05/10/2026 : toutes les pages passent aux avant / après en image fixe (comme
   l'accueil) : bannières, blocs et anciens comparateurs des pages ville. */
.opm-mv .mv-hero-media .opm-hero-avap1,.opm-hero-avap1{position:relative;display:block;margin:0;height:100%;min-height:clamp(280px,32vw,460px);border-radius:22px;overflow:hidden}
.opm-hero-avap1 img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.opm-hero-avap1 .opm-hero3-etq{position:absolute;top:14px;padding:7px 14px;border-radius:999px;background:rgba(23,87,97,.92);color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:13px;line-height:1;letter-spacing:.06em;text-transform:uppercase}
.opm-hero-avap1 .opm-hero3-etq--av{left:14px}
.opm-hero-avap1 .opm-hero3-etq--ap{right:14px;background:#3E7B25}
.opm-avap1--bloc{z-index:0}
.opm-ba--fixe{cursor:default !important}
@media (max-width:900px){
  .opm-hero-avap1{border-radius:18px;min-height:clamp(240px,62vw,400px)}
}

/* 06/10/2026 : sur téléphone et tablette, la photo de la bannière a la même hauteur
   sur toutes les pages que sur l accueil (« harmonise les bannières du haut sur toutes
   les pages, même hauteur sur mobile »). Avant : 409 px sur les pages de service
   (ratio 4/5), 200 px sur Notre histoire, Saint-Priest, Vaulx-en-Velin et Givors. */
@media (max-width:900px){
  .mv-hero .mv-hero-media{aspect-ratio:auto !important;height:clamp(280px,70vw,440px) !important;min-height:0 !important}
  .mv-hero .mv-hero-media .opm-hero-avap1{height:100% !important;min-height:0 !important}
  .opm-col-visuel:has(.opm-ba-hero){height:clamp(280px,70vw,440px) !important;min-height:0 !important;aspect-ratio:auto !important}
  .opm-col-visuel:has(.opm-ba-hero) > div:has(.opm-ba-hero){height:100% !important;aspect-ratio:auto !important}
}

/* 06/10/2026 (suite) : mêmes marges autour de la photo de bannière que sur l accueil
   (« le padding est pas le même que sur la homepage ») : 22 px au-dessus, 22 px sur
   les côtés, 24 px entre la photo et le texte, 44 px sous le bloc. Avant : 60 px
   au-dessus et 58 px sous la photo (pages de service), 48 px au-dessus, 18 px sur les
   côtés et 32 px sous la photo (Notre histoire, Saint-Priest, Vaulx, Givors). */
@media (max-width:900px){
  html body .opm-mv>section.mv-hero:not(.opm-hero3){padding-top:22px !important;padding-bottom:44px !important}
  html body .mv-hero:not(.opm-hero3) .mv-grid{row-gap:24px !important}
  html body .mv-hero .mv-hero-media{margin:0 !important}
  html body div:has(> .opm-col-visuel .opm-ba-hero){padding:22px clamp(22px,5vw,72px) 44px !important;row-gap:24px !important}
}

/* 06/10/2026 : « Ce que nous vidons » des pages de service en une carte par pièce, à la
   place des deux cartes avant / après à listes de mots (« c'est pas clair », « plutôt
   les pièces que nous pouvons vider »). Puis « trop de texte, garde l'esprit texte simple
   lisible » : comme les cartes Particuliers / Professionnels de l'accueil, photo, titre
   et quatre mots cochés, sans phrase. */
.opm-pieces{list-style:none;margin:clamp(26px,3vw,40px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.opm-pieces--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.opm-piece{display:flex;flex-direction:column;margin:0;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:20px;overflow:hidden}
.opm-piece-photo{position:relative;margin:0;aspect-ratio:4/3;overflow:hidden;background:#E6DFD0}
.opm-piece-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.opm-piece:hover .opm-piece-photo img{transform:scale(1.07)}
.opm-piece-txt{flex:1 1 auto;min-width:0;padding:18px 20px 10px;container:opmpiece/inline-size}
.opm-mv .opm-piece h3{margin:0;font-size:clamp(19px,1.5vw,22px);line-height:1.2;color:#15191A}
.opm-mv .opm-piece .mv-puces{margin:8px 0 0;column-gap:16px}
.opm-mv .opm-piece .mv-puces li{font-size:15.5px;line-height:1.3;padding:10px 0 10px 27px}
.opm-mv .opm-piece .mv-puces li::before{width:19px;height:19px;margin-top:-9.5px;background-size:11px 11px}
.opm-pieces + .mv-flag{margin-top:clamp(22px,2.6vw,32px)}
/* Liste sur une colonne dès que la carte est étroite (4 cartes par rangée, tablette,
   petit écran) : jamais un mot coupé sur deux lignes. */
@container opmpiece (max-width:320px){
  .opm-mv .opm-piece .mv-puces{grid-template-columns:minmax(0,1fr)}
  .opm-mv .opm-piece .mv-puces li:nth-last-child(2){border-bottom:1px solid var(--mv-filet)}
  .opm-mv .opm-piece .mv-puces li:last-child{border-bottom:0}
}
@media (max-width:1100px){.opm-pieces--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.opm-pieces{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){
  .opm-pieces,.opm-pieces--4{grid-template-columns:minmax(0,1fr);gap:12px}
  .opm-piece{flex-direction:row}
  .opm-piece-photo{flex:0 0 40%;aspect-ratio:auto;min-height:150px}
  .opm-piece-txt{padding:14px 14px 6px}
  .opm-mv .opm-piece h3{font-size:17px}
  .opm-mv .opm-piece .mv-puces{grid-template-columns:minmax(0,1fr);margin-top:4px}
  .opm-mv .opm-piece .mv-puces li{font-size:14.5px;padding:7px 0 7px 25px}
  .opm-mv .opm-piece .mv-puces li:nth-last-child(2){border-bottom:1px solid var(--mv-filet)}
  .opm-mv .opm-piece .mv-puces li:last-child{border-bottom:0}
}

/* 06/10/2026 : « Pourquoi on nous appelle » sans cartes à retourner (« mets plus de flip
   box page service, laisse juste le titre », puis « laisse des images ») : photo avant /
   après et titre, rien d'autre. */
.opm-raisons{list-style:none;margin:clamp(26px,3vw,40px) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.opm-raison{display:flex;flex-direction:column;margin:0;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:20px;overflow:hidden}
.opm-raison-photo{position:relative;margin:0;aspect-ratio:4/3;overflow:hidden;background:#E6DFD0}
.opm-raison-photo img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.opm-raison:hover .opm-raison-photo img{transform:scale(1.07)}
.opm-mv .opm-raison h3{margin:0;padding:16px 18px 18px;font-size:clamp(18px,1.4vw,21px);line-height:1.25;color:#15191A}
.opm-mv .opm-raison h3 a{color:inherit;text-decoration:none}
.opm-mv .opm-raison h3 a:hover{color:#3E7B25}
@media (max-width:1100px){.opm-raisons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){
  .opm-raisons{gap:10px}
  .opm-mv .opm-raison h3{padding:12px 12px 14px;font-size:15.5px}
  .opm-raison .opm-avap-tag{top:8px;padding:5px 8px 5px 7px;font-size:10px;gap:5px}
  .opm-raison .opm-avap-tag-av{left:8px}
  .opm-raison .opm-avap-tag-ap{right:8px}
}

/* 06/10/2026 : le déroulé de l'accueil (4 étapes en photos) sur toutes les pages
   (« sur toutes les pages comme homepage en 4 étapes avec les photos »), y compris les
   pages ville à l'ancien balisage (Saint-Priest, Vaulx-en-Velin, Givors). */
.opm-deroule-etape h3{margin:0 18px 8px;font-size:clamp(18px,1.4vw,21px);line-height:1.25;color:#15191A}
.opm-deroule + .mv-flag{margin-top:clamp(22px,2.6vw,32px)}
.d18 .opm-deroule{margin-top:clamp(24px,3vw,36px)}
.d18 .opm-deroule + p{margin-top:clamp(22px,2.6vw,32px)}
.d18 .opm-deroule-etape{margin:0}

/* 06/10/2026 : aucun mot coupé avec un trait d union, nulle part (« arrête de couper les
   mots », « j ai jamais dit de faire ça, vire »). Remplace le hyphens:auto des titres,
   paragraphes, listes et encadrés. */
html body,html body *{hyphens:manual !important;-webkit-hyphens:manual !important}

