/* 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:#173F68;--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:#173F68}

/* 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:#173F68!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:#173F68!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:#173F68!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-mv-20 */
/* 2026-10-28 : trop de vide sous le simulateur de prix.
   Pages Saint-Priest, Vaulx-en-Velin, Givors : la carte blanche qui entoure le
   quiz gardait 52 px en bas, en plus du bas du quiz. */
.d80:has(.opm-quiz){padding-bottom:clamp(20px,2.2vw,32px)}

/* La balise <noscript> du quiz comptait comme une ligne de la grille :
   20 px d'écart en plus sous les réponses, sur toutes les pages. */
.opm-quiz>noscript{display:contents}

/* 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 #173F68 pour les repères, vert #D4483A 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 Catamaran 600 / 700 depuis le 2026-10-28 (proposition A3 retenue sur le site, parmi
   huit ; avant : Mona Sans 700 du 2026-10-05, Excon 500 jugée trop fine). Fichiers latins hébergés ici.
   Les noms Mona Sans, Excon et Bricolage Grotesque, utilisés partout dans les feuilles et les
   contenus, pointent sur Catamaran : 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/catamaran-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/catamaran-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/catamaran-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/catamaran-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/catamaran-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/catamaran-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:#173F68" 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 #173F68 pour les repères (sur-titres, numéros,
   liens, choix actifs), vert #D4483A 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:#173F68;--op-petrole-fonce:#102E4D;--op-petrole-voile:#F1EBE0;
  --op-vert:#E17F75;--op-vert-bouton:#D4483A;--op-vert-fonce:#B4392D;--op-vert-clair:#F0BFBA;--op-vert-voile:#FAE9E7;
  --op-braise:#E8823A;
  --op-feutre:none;

  --pl-nuit:#15191A;--pl-bleu:#D4483A;--pl-bleu-fonce:#B4392D;
  --pl-orange:#173F68;--pl-orange-fonce:#102E4D;--pl-orange-txt:#173F68;
  --pl-encre:#15191A;--pl-texte:#15191A;--pl-faible:#56625F;--pl-filet:#E6DFD0;--pl-sable:#173F68;
  --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:#173F68;
  --red:#D4483A;--red-2:#B4392D;--accent:#D4483A;--line-soft:#E6DFD0;--ambre:#173F68;
}
::selection{background:#173F68;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:#173F68;
  --sec-eb-bg:transparent;
  --sec-eb-txt:#173F68;
  --sec-acc:#173F68;
  --sec-surl:var(--op-feutre);
}
.opm-mv{
  --mv-acc:#173F68;--mv-acc-2:#102E4D;--mv-ambre:#E8823A;
  --mv-bleu:#173F68;--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(23,63,104,.09);color:#173F68;
  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:#173F68}

/* 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:#D4483A !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:#B4392D !important}
.opm-mv .mv-cta[href^="tel:"],
header a.opm-cta[href^="tel:"],
.opm-pied .opm-cta[href^="tel:"]{background:#173F68 !important}
.opm-mv .mv-cta[href^="tel:"]:hover,
header a.opm-cta[href^="tel:"]:hover,
.opm-pied .opm-cta[href^="tel:"]:hover{background:#102E4D !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:#D4483A !important}
a[href^="tel:"][style*="background:#C96A00" i]{background:#173F68 !important}
[style*="color:#173F68" i]{color:#173F68 !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:#173F68 !important}
header .r-desknav a.opm-cta,header .r-desknav a.opm-cta:hover{color:#FFFFFF !important}
header .r-mobcall{background:#173F68 !important}
header .r-burger{background:#173F68 !important;border-radius:12px}
header .r-burger:focus-visible{outline-color:#173F68}

/* 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:#F1EBE0}
header #opm-mobile-menu .opm-mob-plus::before,
header #opm-mobile-menu .opm-mob-plus::after{background:#173F68}
header #opm-mobile-menu .opm-mob-deplier[aria-expanded="true"] .opm-mob-plus{background:#173F68}
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:#173F68 !important}
header #opm-mobile-menu .opm-mob-actions .opm-mob-devis{background:#D4483A !important}
.opm-mob-titre{color:#173F68}

/* ---------- 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:#173F68}
.opm-mv .mv-stat-n em{color:#173F68;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:#E17F75;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:#173F68}
.opm-mv .mv-flotte-2 .mv-flotte-ico{background:#D4483A}
@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:#173F68}
.opm-mv .mv-presta-pour{color:#173F68}

/* Tuiles des services : flèche verte. */
.opm-mv .opm-tuile{background:#15191A}
.opm-mv .opm-tuile-fl{background:#D4483A}
.opm-mv .opm-tuile:hover .opm-tuile-fl{background:#B4392D}
.opm-mv .opm-tuile:focus-visible{outline-color:#173F68}

/* 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:#173F68;font-family:'Excon',sans-serif;font-weight:900}
.opm-mv .mv-formule-fort{background:#FFFFFF;border:2px solid #D4483A}
.opm-mv .mv-formule-fort h3{color:#15191A}
.opm-mv .mv-formule-fort .mv-formule-prix b{color:#173F68}
.opm-mv .mv-carte-tag,
.opm-mv .mv-chip:hover,
.opm-mv details.mv-plus>summary:hover{background:#173F68;border-color:#173F68 !important;color:#FFFFFF !important}

/* Numéros, pastilles, avatar. */
.opm-mv .mv-num{background:#173F68;border-radius:50%}
.opm-mv .mv-avatar{background:#173F68}
.opm-mv .mv-sig-nom{color:#15191A}
.opm-mv .mv-flag-info .mv-flag-ico{background-color:#173F68}
.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:#173F68;text-decoration-color:#E17F75}

/* Avant / après des réalisations : étiquettes bleu-vert et vertes, poignée bleu-vert. */
.opm-mv .mv-ba-tag{background:rgba(16,46,77,.92) !important;color:#FFFFFF !important}
.opm-mv .mv-ba-tag-ap{background:#D4483A !important}
.opm-mv .mv-ba-poignee{background:#173F68 !important}
.opm-mv .mv-ba-choix button.is-on{background:#173F68 !important;border-color:#173F68 !important;color:#FFFFFF !important}
.opm-mv .mv-ba-choix button::after{color:#173F68}

/* 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:#173F68}

/* ---------- Zone d'intervention ---------- */
.opm-mv .opm-zone-sec,.opm-zone-sec{--mv-acc:#173F68;--mv-acc-2:#102E4D;--mv-bleu:#173F68;--mv-filet:#E6DFD0}
.opm-zone-villes li>a,.opm-zone-sec a:not(.mv-cta){color:#173F68}
.opm-zone-tr{border-color:#173F68}
.opm-zone-dep{color:#173F68;border-color:#173F68}
.opm-zone-sec .mv-cta{background:#D4483A;border-radius:14px}
.opm-zone-sec .mv-cta:hover{background:#B4392D}
.opm-zone-sec .mv-cta[href^="tel:"]{background:#173F68}
/* Carte dessinée : bleus remplacés par le bleu-vert, sans toucher au plugin. */
.opm-zone-sec svg stop[stop-color="#2C7BD6"]{stop-color:#173F68}
.opm-zone-sec svg stop[stop-color="#173F68"]{stop-color:#173F68}
.opm-zone-sec svg stop[stop-color="#0E4585"]{stop-color:#102E4D}
.opm-zone-sec svg [stroke="#0E4585"]{stroke:#102E4D}
.opm-zone-sec svg [fill="#0E4585"]{fill:#102E4D}
.opm-zone-sec svg [stroke="#6FA8DF"]{stroke:#8FC1C6}
.opm-zone-sec svg [fill="#2A6BA8"]{fill:#173F68}
.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:#173F68 !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(16,46,77,.80) 0%,rgba(16,46,77,.92) 45%,rgba(16,46,77,.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:#B4392D !important}
.opm-mv #devis .mv-form .mv-submit:hover{background:#FAE9E7 !important}
.opm-mv .mv-coord-ico{background-color:#173F68}
.opm-mv .mv-coord-lab{color:#173F68}
.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:#173F68 !important}
.opm-pied .opm-foot-col>p:first-child{color:#173F68 !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:#173F68}
.opm-carbone:hover .wcb-marque{background:#102E4D}
.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:#173F68 !important}
.opm-surligne{color:#173F68 !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:#173F68 !important}
.d264 .d176,.d51 .d34{color:#173F68 !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:#173F68 !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:#173F68 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:#F0BFBA}
/* 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(16,46,77,.92) !important}
.opm-ba .d40{background:#D4483A !important}
.opm-ba-handle{background:#173F68 !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:#D4483A;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:#B4392D}

/* ==================================================================
   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:#173F68;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:#F1EBE0;border-color:rgba(23,63,104,.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:#173F68;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:#173F68;background:#F1EBE0}
.opm-simu-compteur button:focus-visible{outline:3px solid #173F68;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:#173F68}
.opm-simu-choix button[aria-checked="true"]{padding:13px 39px 13px 15px;background:#FFFFFF;border:2px solid #173F68}
.opm-simu-choix button[aria-checked="true"]::after{content:"";position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:#173F68 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 #173F68;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:#173F68}

.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:#173F68}
.opm-simu-ascenseur input:checked+.opm-simu-bascule::after{transform:translateX(20px)}
.opm-simu-ascenseur input:focus-visible+.opm-simu-bascule{outline:3px solid #173F68;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:#173F68;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:#173F68;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:#173F68}
.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:#173F68;text-decoration:underline;text-decoration-color:#E17F75;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:#E17F75}
.opm-simu-gratuit[data-niveau="3"] .opm-simu-gratuit-jauge i{background:#D4483A}
.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:#173F68}

@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:#F1EBE0}
.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(16,46,77,.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:#D4483A}
.opm-deroule-etape:last-child .opm-deroule-photo figcaption::before{background:#F0BFBA}
.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:#173F68;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,#173F68 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:#D4483A}
.opm-avap-tag-ap::before{background:#F0BFBA}
.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:#F1EBE0}
.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:#173F68}

/* ---------- 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:#D4483A;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:#173F68}
.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:#173F68;background:#F1EBE0}
.opm-quiz-reponses button:focus-visible{outline:3px solid #173F68;outline-offset:2px}
.opm-quiz-reponses button.est-choisi{border-color:#173F68;background:#F1EBE0}
.opm-quiz-reponses--types button svg{width:38px;height:38px;fill:none;stroke:#173F68;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:#173F68}
.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:#173F68 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:#173F68;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(16,46,77,.86),rgba(16,46,77,.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:#D4483A !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 #173F68;border-left:0}
.opm-avap-poignee::after{right:7px;border-left:7px solid #173F68;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:#173F68}
.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:#F1EBE0;color:#173F68;font-size:19px;transition:background-color .2s ease,color .2s ease,transform .2s ease}
.opm-mv .opm-tuile-in:hover .opm-tuile-fl{background:#D4483A;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:#D4483A !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:#173F68 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:#173F68}
.opm-mv .opm-hero3-tel:hover,.opm-mv .opm-hero3-tel:focus-visible{border-color:#173F68}
.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(16,46,77,.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:#D4483A}
@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:#D4483A !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(16,46,77,.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:#D4483A}
.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:#D4483A}
@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}

/* 2026-10-28 : titres agrandis d'environ 12 % avec Catamaran (« agrandis un peu les titres H1, H2,
   H3 »), plus étroite que Mona Sans : les titres gardent à peu près leur largeur. Une seule taille
   de H2 sur tout le site. :not(#_) passe devant les anciennes règles en !important. */
html body .opm-mv .opm-hero3 .mv-h1:not(#_){font-size:clamp(44px,5vw,76px) !important}
html body h1:not(#_){font-size:clamp(44px,5.8vw,86px) !important}
html body h1.d136:not(#_),html body h1.d182:not(#_){font-size:clamp(40px,5.6vw,84px) !important}
html body .opm-rv h1:not(#_){font-size:clamp(34px,3.7vw,56px) !important}
html body h2:not(#_),html body .opm-prose h2:not(#_){font-size:clamp(31px,3.6vw,58px) !important}
html body .opm-mv .mv-carte-in h3:not(#_){font-size:clamp(22px,2.1vw,30px) !important}
html body .opm-mv .mv-formule h3:not(#_),html body .opm-mv .mv-presta-in > h3:not(#_){font-size:clamp(23px,1.9vw,29px) !important}
html body .opm-deroule-etape h3:not(#_),html body .opm-raison h3:not(#_){font-size:clamp(20px,1.6vw,23px) !important}
html body .opm-piece-txt h3:not(#_){font-size:clamp(19px,1.7vw,24px) !important}
html body h3.d47:not(#_){font-size:clamp(27px,2.7vw,38px) !important}

@media (max-width:900px){
  html body .opm-mv .opm-hero3 .mv-h1:not(#_){font-size:clamp(41px,11.2vw,56px) !important}
  html body h1:not(#_){font-size:clamp(44px,12.4vw,60px) !important}
  html body h1.d136:not(#_),html body h1.d182:not(#_){font-size:clamp(38px,10.2vw,52px) !important}
  html body .opm-rv h1:not(#_){font-size:clamp(34px,9vw,44px) !important}
  html body h2:not(#_),html body .opm-prose h2:not(#_){font-size:clamp(31px,6.6vw,40px) !important}
  html body .opm-mv .mv-carte-in h3:not(#_){font-size:22px !important}
  html body .opm-mv .mv-formule h3:not(#_),html body .opm-mv .mv-presta-in > h3:not(#_){font-size:23px !important}
  html body .opm-deroule-etape h3:not(#_){font-size:20px !important}
  html body .opm-raison h3:not(#_){font-size:17.5px !important}
  html body .opm-piece-txt h3:not(#_){font-size:19px !important}
  html body h3.d47:not(#_){font-size:27px !important}
}

/* 2026-10-28 : avant / après de la bannière de l'accueil en fondu (hero-avap.php, propositions
   ?avap=1…6) : deux photos au même cadrage, l'après posé sur l'avant avec un masque dégradé. */
.opm-mv .opm-fondu img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.opm-mv .opm-fondu .opm-fondu-apres{-webkit-mask-image:linear-gradient(90deg,transparent 32%,#000 68%);mask-image:linear-gradient(90deg,transparent 32%,#000 68%)}
.opm-mv .opm-fondu--diag .opm-fondu-apres{-webkit-mask-image:linear-gradient(118deg,transparent 36%,#000 64%);mask-image:linear-gradient(118deg,transparent 36%,#000 64%)}
.opm-mv .opm-fondu--diag .opm-hero3-etq--ap{top:auto;bottom:14px}
.opm-mv .opm-fondu--nb .opm-fondu-avant{filter:grayscale(1) brightness(.8) contrast(1.06)}
.opm-mv .opm-fondu--nb .opm-fondu-apres{filter:brightness(1.05) saturate(1.12)}
.opm-mv .opm-fondu--glisser{--pos:50%;touch-action:pan-y;cursor:ew-resize;-webkit-user-select:none;user-select:none}
.opm-mv .opm-fondu--glisser .opm-fondu-apres{-webkit-mask-image:linear-gradient(90deg,transparent calc(var(--pos) - 15%),#000 calc(var(--pos) + 15%));mask-image:linear-gradient(90deg,transparent calc(var(--pos) - 15%),#000 calc(var(--pos) + 15%))}
.opm-mv .opm-fondu-poignee{position:absolute;top:50%;left:var(--pos);transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;background:#D4483A;color:#FFFFFF;display:flex;align-items:center;justify-content:center;font:700 26px/1 system-ui,sans-serif;pointer-events:none}
.opm-mv .opm-fondu--toucher{cursor:pointer}
.opm-mv .opm-fondu--toucher .opm-fondu-apres{-webkit-mask-image:none;mask-image:none;opacity:0;transition:opacity .7s ease}
.opm-mv .opm-fondu--toucher.est-apres .opm-fondu-apres{opacity:1}
.opm-mv .opm-fondu--toucher .opm-hero3-etq{transition:opacity .4s ease}
.opm-mv .opm-fondu--toucher .opm-hero3-etq--ap,.opm-mv .opm-fondu--toucher.est-apres .opm-hero3-etq--av{opacity:0}
.opm-mv .opm-fondu--toucher.est-apres .opm-hero3-etq--ap{opacity:1;right:auto;left:14px}
.opm-mv .opm-fondu-bouton{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);min-height:56px;padding:0 26px;border:0;border-radius:14px;background:#D4483A;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:18px;line-height:1;white-space:nowrap;cursor:pointer}
@media (max-width:900px){
  .opm-mv .opm-fondu-poignee{width:50px;height:50px;font-size:22px}
  .opm-mv .opm-fondu-bouton{min-height:52px;font-size:17px;bottom:14px}
}

/* ==================================================================
   41. Plus d'appels et accueil refait (2026-10-28, « la cliente se plaint qu'il n'y ait
   pas d'appel », « rajouter un peu plus de CTA », « augmente un peu la taille des CTA »,
   « faire les effets fondus comme dans la bannière… le texte directement sur l'image »).
   Boutons par paire : appeler = vert #D4483A (couleur chaude dans les propositions de
   palettes.php), devis = bleu canard #173F68. Un bouton seul garde le vert.
   :not(#_) passe devant les anciennes règles en !important.
   ================================================================== */

/* ---------- Boutons d'action : 19 px / 58 px, 18 px / 56 px sur téléphone ---------- */
html body .opm-mv .mv-cta:not(#_),
html body .opm-mv .mv-submit:not(#_),
html body .opm-mv .opm-hero3-tel:not(#_),
html body .opm-mv .opm-fondu-bouton:not(#_){display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:58px;padding:0 28px !important;font-family:'Excon',sans-serif !important;font-weight:700 !important;font-size:19px !important;line-height:1.15 !important;letter-spacing:0 !important;border-radius:14px !important;text-align:center;text-decoration:none !important;box-sizing:border-box}
html body .opm-mv .mv-cta:not(#_) svg,html body .opm-mv .opm-hero3-tel:not(#_) svg{flex:none;width:20px;height:20px}
@media (max-width:900px){
  html body .opm-mv .mv-cta:not(#_),
  html body .opm-mv .mv-submit:not(#_),
  html body .opm-mv .opm-hero3-tel:not(#_),
  html body .opm-mv .opm-fondu-bouton:not(#_){min-height:56px;padding:0 22px !important;font-size:18px !important}
}

/* Appeler en vert ; le devis à côté en bleu canard. */
html body .opm-mv a.mv-cta[href^="tel:"]:not(#_),
html body .opm-mv .opm-hero3-tel:not(#_),
html body .opm-mv .opm-appels-tel:not(#_),
html body .opm-mv .opm-quiz-appeler:not(#_){background:#D4483A !important;border:0 !important;color:#FFFFFF !important}
html body .opm-mv a.mv-cta[href^="tel:"]:not(#_):hover,
html body .opm-mv .opm-hero3-tel:not(#_):hover,
html body .opm-mv .opm-appels-tel:not(#_):hover,
html body .opm-mv .opm-quiz-appeler:not(#_):hover{background:#B4392D !important}
html body .opm-mv .opm-hero3-tel:not(#_) svg{color:#FFFFFF}
html body .opm-mv .opm-hero3-boutons .mv-cta:not([href^="tel:"]):not(#_),
html body .opm-mv .opm-appels-devis:not(#_),
html body .opm-mv .opm-quiz-envoyer:not(#_){background:#173F68 !important;color:#FFFFFF !important;border:0 !important}
html body .opm-mv .opm-hero3-boutons .mv-cta:not([href^="tel:"]):not(#_):hover,
html body .opm-mv .opm-appels-devis:not(#_):hover,
html body .opm-mv .opm-quiz-envoyer:not(#_):hover{background:#102E4D !important}

/* ---------- Rangée « Appeler / Devis gratuit » sous une section ---------- */
.opm-appels{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 14px;margin:clamp(30px,3.4vw,46px) 0 0}
.opm-appels--gauche{justify-content:flex-start;margin-top:clamp(22px,2.4vw,30px)}
@media (max-width:600px){
  .opm-appels{flex-direction:column;align-items:stretch}
  html body .opm-mv .opm-appels .mv-cta:not(#_){width:100%}
}

/* ---------- En-tête : téléphone en bouton plein, liens plus lisibles ---------- */
html body header .r-desknav:not(#_){gap:clamp(14px,1.5vw,26px) !important}
html body header .r-desknav>a:not(.opm-cta):not(.opm-entete-tel):not(#_),html body header .r-desknav .opm-nav-top:not(#_){font-size:clamp(15px,1.05vw,16.5px) !important}
html body header .r-desknav a.opm-entete-tel:not(#_),
html body header .r-desknav a.opm-cta:not(#_){display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:clamp(50px,3.9vw,56px);padding:0 clamp(16px,1.3vw,22px) !important;border-radius:14px !important;font-family:'Excon',sans-serif !important;font-weight:700 !important;font-size:clamp(16.5px,1.25vw,18px) !important;letter-spacing:0 !important;color:#FFFFFF !important;white-space:nowrap;text-decoration:none}
html body header .r-desknav a.opm-entete-tel:not(#_){background:#D4483A !important}
html body header .r-desknav a.opm-entete-tel:not(#_):hover{background:#B4392D !important}
html body header .r-desknav a.opm-cta:not(#_){background:#173F68 !important}
html body header .r-desknav a.opm-cta:not(#_):hover{background:#102E4D !important}
html body header .r-mobcall:not(#_){width:50px !important;height:50px !important;border-radius:14px !important;background:#D4483A !important}
@media (min-width:961px) and (max-width:1240px){
  html body header .r-desknav>a.opm-nav-contact:not(#_){display:none !important}
}

/* ---------- Pied de page : téléphone, adresse et e-mail plus grands ---------- */
html body .opm-pied .opm-cta:not(#_){min-height:58px;padding:0 26px !important;font-size:19px !important;border-radius:14px !important;background:#D4483A !important}
html body .opm-pied .opm-cta:not(#_):hover{background:#B4392D !important}
html body .opm-pied .opm-cta:not(#_) svg{width:20px;height:20px}
html body .opm-pied .opm-pied-adresse:not(#_){font-size:18.5px !important;line-height:1.6 !important}
html body .opm-pied .opm-pied-adresse a:not(#_){font-size:18.5px !important;font-weight:700 !important;color:#102E4D !important;text-underline-offset:4px;overflow-wrap:anywhere}
html body .opm-pied .opm-pied-horaires:not(#_){font-size:17px !important}

/* ---------- Barre d'appel fixe sur téléphone : retirée le 2026-10-28 ----------
   (« arrête de mettre appeler devis gratuit en bas, je t'ai jamais demandé »).
   Plus aucune barre fixe en bas de l'écran ; appels.php ne la pose plus. */

/* ---------- Bannière : rond photo du camion à côté de l'avant / après ---------- */
.opm-mv .opm-hero3-rond{position:absolute;left:-30px;bottom:-26px;z-index:3;width:clamp(130px,11vw,176px);aspect-ratio:1;margin:0;border-radius:50%;overflow:hidden;border:6px solid #FFFFFF;background:#E6DFD0}
.opm-mv .opm-hero3-rond img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:900px){
  .opm-mv .opm-hero3-media{margin-bottom:28px}
  .opm-mv .opm-hero3-rond{left:12px;bottom:-28px;width:108px;border-width:5px}
}

/* ---------- Services : six tuiles en fondu, texte posé sur la photo ---------- */
.opm-svc-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.4vw,22px);margin-top:clamp(26px,3vw,40px)}
.opm-svc{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(380px,30vw,460px);border-radius:22px;overflow:hidden;background:#15191A;color:#FFFFFF;text-decoration:none !important;isolation:isolate}
.opm-svc-photo,.opm-pp-photo{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.opm-svc-photo img,.opm-pp-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.opm-svc-photo .opm-fondu-avant,.opm-pp-photo .opm-fondu-avant{filter:grayscale(1) brightness(.8) contrast(1.06)}
.opm-svc-photo .opm-fondu-apres,.opm-pp-photo .opm-fondu-apres{-webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 70%);mask-image:linear-gradient(90deg,transparent 30%,#000 70%);filter:brightness(1.05) saturate(1.12)}
.opm-svc-photo::after,.opm-pp-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,25,26,0) 30%,rgba(21,25,26,.55) 58%,rgba(21,25,26,.9) 100%)}
.opm-svc:hover .opm-svc-photo img,.opm-pp:hover .opm-pp-photo img{transform:scale(1.05)}
.opm-svc-etq{position:absolute;top:14px;z-index:2;padding:7px 13px;border-radius:999px;background:rgba(21,25,26,.78);color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:12.5px;line-height:1;letter-spacing:.08em;text-transform:uppercase}
.opm-svc-etq--av{left:14px}
.opm-svc-etq--ap{right:14px;background:#D4483A}
.opm-svc-txt{position:relative;z-index:1;display:grid;gap:8px;padding:clamp(20px,1.8vw,28px)}
.opm-svc-titre{font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(23px,1.9vw,29px);line-height:1.12;color:#FFFFFF}
.opm-svc-phrase{font-family:'Switzer',sans-serif;font-size:16.5px;line-height:1.45;color:rgba(255,255,255,.92)}
.opm-svc-lien{display:inline-flex;align-items:center;gap:8px;justify-self:start;margin-top:6px;padding:11px 16px;border-radius:12px;background:#FFFFFF;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:16.5px;line-height:1;transition:background-color .2s ease,color .2s ease}
.opm-svc:hover .opm-svc-lien,.opm-svc:focus-visible .opm-svc-lien{background:#D4483A;color:#FFFFFF}
.opm-svc:focus-visible{outline:3px solid #173F68;outline-offset:3px}
@media (max-width:1100px){.opm-svc-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){
  .opm-svc-grille{grid-template-columns:minmax(0,1fr);gap:14px}
  .opm-svc{min-height:340px}
  .opm-svc-titre{font-size:24px}
}

/* ---------- Particuliers / Professionnels : même fondu, texte et liste sur la photo ---------- */
.opm-pp-grille{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,1.6vw,24px);margin-top:clamp(26px,3vw,40px)}
.opm-pp{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(540px,42vw,640px);margin:0;border-radius:24px;overflow:hidden;background:#15191A;color:#FFFFFF;isolation:isolate}
.opm-pp-photo::after{background:linear-gradient(180deg,rgba(21,25,26,0) 18%,rgba(21,25,26,.6) 46%,rgba(21,25,26,.92) 100%)}
.opm-pp-txt{position:relative;z-index:1;padding:clamp(22px,2.4vw,38px)}
.opm-pp-pour{margin:0 0 10px;font-family:'Excon',sans-serif;font-weight:700;font-size:13.5px;letter-spacing:.12em;text-transform:uppercase;color:#F0BFBA}
html body .opm-mv .opm-pp h3:not(#_){margin:0 0 16px;font-size:clamp(28px,2.6vw,40px) !important;line-height:1.08;color:#FFFFFF !important}
.opm-pp-liste{list-style:none;margin:0 0 22px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px}
.opm-pp-liste li{position:relative;padding-left:30px;font-family:'Switzer',sans-serif;font-weight:600;font-size:17.5px;line-height:1.4;color:#FFFFFF}
.opm-pp-liste li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:#D4483A 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/11px no-repeat}
.opm-pp-boutons{display:flex;flex-wrap:wrap;gap:10px 12px}
@media (max-width:900px){
  .opm-pp-grille{grid-template-columns:minmax(0,1fr)}
  .opm-pp{min-height:600px}
}
@media (max-width:440px){
  .opm-pp-liste{grid-template-columns:minmax(0,1fr);gap:7px}
  .opm-pp{min-height:660px}
  .opm-pp-boutons{flex-direction:column;align-items:stretch}
}

/* ---------- Estimation : panneau bleu canard, réponses en cartes blanches ---------- */
html body .opm-quiz:not(#_){gap:22px;padding:clamp(24px,3.4vw,54px);border:0;border-radius:26px;color:#FFFFFF;background-color:#173F68;background-image:radial-gradient(circle 300px at right -90px top -110px,rgba(255,255,255,.1) 99.4%,transparent 100%),radial-gradient(circle 120px at left 6% bottom -70px,rgba(255,255,255,.08) 99.4%,transparent 100%);background-repeat:no-repeat}
html body .opm-quiz:not(#_) .opm-quiz-tete{border-bottom:2px dashed rgba(255,255,255,.3);padding-bottom:20px}
html body .opm-quiz:not(#_) .opm-quiz-titre{font-size:clamp(26px,2.5vw,38px);line-height:1.12;color:#FFFFFF}
html body .opm-quiz:not(#_) .opm-quiz-progression{font-size:16px;color:rgba(255,255,255,.88)}
html body .opm-quiz:not(#_) .opm-quiz-progression b{color:#FFFFFF}
html body .opm-quiz:not(#_) .opm-quiz-barre{width:160px;height:8px;background:rgba(255,255,255,.25)}
html body .opm-quiz:not(#_) .opm-quiz-barre i{background:#FFFFFF}
html body .opm-quiz:not(#_) .opm-quiz-question>span:last-child{padding:16px 20px;background:#FFFFFF;color:#15191A;font-size:clamp(17px,1.35vw,20px)}
html body .opm-quiz:not(#_) .opm-quiz-avatar{width:48px;height:48px;background:#15191A}
html body .opm-quiz:not(#_) .opm-quiz-reponses{gap:12px;padding-left:60px}
html body .opm-quiz:not(#_) .opm-quiz-reponses button{min-height:76px;padding:18px 16px;border:3px solid #FFFFFF;border-radius:18px;background:#FFFFFF;color:#15191A;font-size:17.5px}
html body .opm-quiz:not(#_) .opm-quiz-reponses button:hover,
html body .opm-quiz:not(#_) .opm-quiz-reponses button:focus-visible,
html body .opm-quiz:not(#_) .opm-quiz-reponses button.est-choisi{border-color:#D4483A;background:#FFFFFF}
html body .opm-quiz:not(#_) .opm-quiz-reponses button:focus-visible{outline:3px solid #FFFFFF;outline-offset:3px}
html body .opm-quiz:not(#_) .opm-quiz-reponses--types button svg{width:46px;height:46px}
html body .opm-quiz:not(#_) .opm-quiz-resultat{margin-left:60px;padding:clamp(22px,2.4vw,36px);background:#FFFFFF;border-radius:20px;color:#15191A}
html body .opm-quiz:not(#_) .opm-quiz-prix strong{font-size:clamp(40px,4.4vw,64px);color:#15191A}
html body .opm-quiz:not(#_) .opm-quiz-prix>span,html body .opm-quiz:not(#_) .opm-quiz-prix small{font-size:16px}
html body .opm-quiz:not(#_) .opm-quiz-inclus li{font-size:16.5px}
html body .opm-quiz:not(#_) .opm-quiz-actions{gap:12px 14px}
html body .opm-quiz:not(#_) .opm-quiz-recommencer{color:#56625F;font-size:16px}
html body .opm-quiz:not(#_) .opm-quiz-retour{min-height:44px;margin-top:4px;padding:0 4px;color:#FFFFFF;font-size:16.5px;text-decoration:underline;text-underline-offset:4px}
html body .opm-quiz:not(#_) .opm-quiz-note{font-size:15px;color:rgba(255,255,255,.88)}
html body .opm-quiz:not(#_) .opm-quiz-note strong{color:#FFFFFF}
@media (max-width:900px){
  html body .opm-quiz:not(#_) .opm-quiz-reponses,html body .opm-quiz:not(#_) .opm-quiz-resultat{padding-left:0;margin-left:0}
  html body .opm-quiz:not(#_) .opm-quiz-resultat{padding:20px}
  html body .opm-quiz:not(#_) .opm-quiz-barre{width:96px}
  html body .opm-quiz:not(#_) .opm-quiz-actions{flex-direction:column;align-items:stretch}
  html body .opm-quiz:not(#_) .opm-quiz-actions .mv-cta{width:100%}
  html body .opm-quiz:not(#_) .opm-quiz-reponses button{min-height:64px;font-size:16.5px}
}

/* ---------- Le mot de Josette : sa photo de dos à gauche, à la hauteur du texte ---------- */
.opm-mot-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(26px,3.4vw,56px);align-items:stretch}
.opm-mot-photo{position:relative;min-height:420px;margin:0;border-radius:22px;overflow:hidden;background:#E6DFD0}
.opm-mot-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}
.opm-mot-grid .mv-methode{margin-top:clamp(22px,2.4vw,32px)}
@media (max-width:900px){
  .opm-mot-grid{grid-template-columns:minmax(0,1fr)}
  .opm-mot-photo{min-height:0;height:clamp(280px,70vw,400px)}
}

/* ---------- 42. Palette P5 retenue (2026-10-28), air au-dessus des boutons, propositions d'avant / après ---------- */
/* Le mot en couleur des titres reste en bleu marine : jamais de corail dans un titre. */
html body .mv-surl,html body .opm-mv .mv-surl,html body .opm-mv .mv-h1 .mv-surl,html body .opm-art .mv-surl{color:#173F68 !important}
/* Carte de zone (feuille de l'extension carte, pas touchée ici). */
.opm-zone-leaflet{background:#F1EBE0}
.opm-zone-leaflet .leaflet-popup-content a{color:#173F68}
.opm-zone-pt{background:#173F68}
.opm-zone-tr{border-top-color:#173F68}
/* « Plus d'espace par rapport aux colonnes au-dessus » : boutons Appeler / Devis. */
html body .opm-mv .opm-appels:not(#_){margin-top:clamp(40px,4.4vw,64px) !important}
html body .opm-mv .opm-appels.opm-appels--gauche:not(#_){margin-top:clamp(30px,3vw,42px) !important}

/* Propositions d'avant / après (?av=1…6) : bannière, tuiles des services, cartes Particuliers / Professionnels. */
/* V2 : coupé net au milieu, tout en couleur. */
html body.opm-av-2 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:linear-gradient(90deg,transparent 50%,#000 50%) !important;mask-image:linear-gradient(90deg,transparent 50%,#000 50%) !important;filter:none !important}
html body.opm-av-2 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{filter:none !important}
html body.opm-av-2 :is(.opm-hero3-etq,.opm-svc-etq){background:#FFFFFF !important;color:#15191A !important;border-radius:8px !important}
/* V3 : après en grand, avant en vignette blanche dans le coin. */
html body.opm-av-3 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:none !important;mask-image:none !important;z-index:0}
html body.opm-av-3 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{inset:auto !important;top:14px !important;left:14px !important;width:40% !important;height:auto !important;aspect-ratio:4/3;z-index:1;border:4px solid #FFFFFF;border-radius:14px;box-sizing:border-box;filter:none !important;transform:none !important}
html body.opm-av-3 :is(.opm-hero3-etq--av,.opm-svc-etq--av){top:26px !important;left:26px !important;z-index:3}
html body.opm-av-3 .opm-hero3-etq{z-index:3}
/* V4 : fondu de haut en bas, avant en noir et blanc. */
html body.opm-av-4 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:linear-gradient(180deg,transparent 26%,#000 60%) !important;mask-image:linear-gradient(180deg,transparent 26%,#000 60%) !important}
html body.opm-av-4 .opm-hero3-etq--ap{top:auto !important;bottom:14px}
html body.opm-av-4 .opm-svc-etq--ap{top:calc(46% - 14px) !important}
/* V5 : fondu court, avant et après en couleur. */
html body.opm-av-5 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:linear-gradient(90deg,transparent 42%,#000 58%) !important;mask-image:linear-gradient(90deg,transparent 42%,#000 58%) !important;filter:none !important}
html body.opm-av-5 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{filter:saturate(.85) !important}
/* V6 : coupé net en diagonale, avant en noir et blanc. */
html body.opm-av-6 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:linear-gradient(115deg,transparent 49.7%,#000 50.3%) !important;mask-image:linear-gradient(115deg,transparent 49.7%,#000 50.3%) !important}
@media (max-width:900px){
  html body.opm-av-3 :is(.opm-fondu,.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{width:42% !important;border-width:3px;border-radius:12px}
}

/* =====================================================================
   43. Bannière de l'accueil : camion en fond, formulaire de devis à
   droite (2026-10-28, « mets le camion en photo en background… à droite
   un truc obtenir un devis et un petit formulaire de contact »). Plus
   d'avant / après dans la bannière (gardés dans les services). Champs
   posés directement sur la photo voilée, sans boîte, aucun
   backdrop-filter. Marges haute et basse agrandies (« augmente le
   padding top et bottom »). Sur téléphone, la photo passe au-dessus
   du texte, nette, et le texte suit sur le bleu marine.
   ===================================================================== */
html body .opm-mv>section.opm-hero4:not(#_){position:relative;isolation:isolate;overflow:hidden;background-color:#102E4D !important;background-image:none !important;padding-top:clamp(64px,6.6vw,104px) !important;padding-bottom:clamp(72px,7.4vw,116px) !important}
.opm-hero4-fond{position:absolute;inset:0;z-index:-2;margin:0}
.opm-hero4-fond picture,.opm-hero4-fond img{display:block;width:100%;height:100%}
.opm-hero4-fond img{object-fit:cover;object-position:50% 62%}
.opm-hero4-fond source{display:none}
.opm-hero4::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,46,77,.95) 0%,rgba(16,46,77,.9) 48%,rgba(16,46,77,.82) 60%,rgba(16,46,77,.6) 72%,rgba(16,46,77,.66) 100%)}
.opm-hero4-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:clamp(40px,5.5vw,104px);align-items:center}
html body .opm-mv .opm-hero4 .mv-h1:not(#_){color:#FFFFFF !important}
html body .opm-mv .opm-hero4 .mv-h1 .mv-surl:not(#_){color:#A9CBF0 !important}
html body .opm-mv .opm-hero4 .mv-lead:not(#_),
html body .opm-mv .opm-hero4 .opm-hero3-liste li:not(#_){color:rgba(255,255,255,.88) !important}
html body .opm-mv .opm-hero4 strong:not(#_){color:#FFFFFF !important}
html body .opm-mv .opm-hero4 .opm-hero3-liste li:not(#_)::before{background-color:#D4483A}
html body .opm-mv .opm-hero4 .mv-badge:not(#_){background:rgba(255,255,255,.12) !important;color:#FFFFFF !important}
html body .opm-mv .opm-hero4 .opm-avis--discret:not(#_),
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-txt:not(#_),
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-txt span:not(#_),
html body .opm-mv .opm-hero4 .opm-avis--discret b:not(#_){color:#FFFFFF !important}
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-g:not(#_){background:#FFFFFF;border-color:#FFFFFF}
html body .opm-mv .opm-hero4 .opm-hero3-boutons:not(#_){margin-top:clamp(26px,2.6vw,34px)}

/* Formulaire de la bannière, dans un cadre blanc (« entoure dans un background blanc
   le truc pour capter les leads », même jour) */
html body .opm-mv .opm-hf:not(#_){position:relative;box-sizing:border-box;padding:clamp(24px,2.4vw,36px);border-radius:22px;background:#FFFFFF;color:#15191A}
html body .opm-mv .opm-hf-titre:not(#_){margin:0 0 18px;font-family:'Excon',sans-serif;font-weight:800;font-size:clamp(28px,2.3vw,34px);line-height:1.08;letter-spacing:0;text-transform:none;color:#102E4D}
.opm-hf form{display:grid;gap:12px;margin:0}
.opm-hf-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
html body .opm-mv .opm-hf-lab:not(#_){display:grid;gap:6px;margin:0}
html body .opm-mv .opm-hf-txt:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:14.5px;line-height:1.2;letter-spacing:0;text-transform:none;color:#1B2229}
html body .opm-mv .opm-hf-input:not(#_){box-sizing:border-box;display:block;width:100%;min-height:50px;margin:0;padding:12px 14px;border:1.5px solid #DCD3C2;border-radius:12px;background:#FFFFFF;color:#15191A;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:16px;line-height:1.4}
html body .opm-mv .opm-hf-area:not(#_){min-height:0;resize:vertical}
html body .opm-mv .opm-hf-input:not(#_):focus{border-color:#173F68;outline:2px solid #173F68;outline-offset:0}
html body .opm-mv .opm-hf-envoyer:not(#_){display:flex;align-items:center;justify-content:center;width:100%;min-height:58px;margin:6px 0 0;padding:0 24px;border:0;border-radius:14px;background:#D4483A;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:19px;line-height:1.2;cursor:pointer}
html body .opm-mv .opm-hf-envoyer:not(#_):hover,html body .opm-mv .opm-hf-envoyer:not(#_):focus-visible{background:#B4392D}
html body .opm-mv .opm-hf .opm-dv2-rgpd:not(#_){color:#56625F;opacity:1 !important}
html body .opm-mv .opm-hf .opm-dv2-rgpd a:not(#_){color:#173F68}
html body .opm-mv .opm-hf .opm-devis-msg:not(#_){margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#F1EBE0;color:#102E4D;font-weight:600}
html body .opm-mv .opm-hf .opm-devis-msg.is-err:not(#_){color:#B4392D}

@media (max-width:900px){
  html body .opm-mv>section.opm-hero4:not(#_){padding-top:0 !important;padding-bottom:48px !important}
  .opm-hero4::before{display:none}
  .opm-hero4-fond{position:relative;inset:auto;z-index:0;height:clamp(230px,62vw,420px);margin:0 0 30px}
  .opm-hero4-fond::after{content:"";position:absolute;left:0;right:0;bottom:0;height:36%;background:linear-gradient(180deg,rgba(16,46,77,0),#102E4D)}
  .opm-hero4-fond img{object-position:50% 58%}
  .opm-hero4-grid{grid-template-columns:minmax(0,1fr);gap:40px}
}
@media (max-width:520px){
  .opm-hf-row{grid-template-columns:minmax(0,1fr)}
}

/* =====================================================================
   44. Ronds du fond plus visibles (2026-10-28, « rajoute un peu des ronds
   plus visibles ») : corail pâle et sable, plus grands et moins coupés,
   et aussi sur une section blanche sur deux. Jamais dans la bannière.
   ===================================================================== */
:root{--op-rond-grand:#F2D7CF;--op-rond-petit:#E2D2B5;--op-rond-blanc:#FBE6E1;--op-rond-blanc-petit:#EFE6D6}
body .opm-mv>section:not(.mv-hero):nth-of-type(4n+3){
  background-image:
    radial-gradient(circle 320px at right -110px top -130px,var(--op-rond-grand) 99.4%,transparent 100%),
    radial-gradient(circle 130px at left 6% bottom -64px,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 330px at left -130px bottom -150px,var(--op-rond-grand) 99.4%,transparent 100%),
    radial-gradient(circle 120px at right 7% top -56px,var(--op-rond-petit) 99%,transparent 100%) !important;
}
body .opm-mv>section:not(.mv-hero):nth-of-type(4n){
  background-image:
    radial-gradient(circle 300px at right -120px bottom -140px,var(--op-rond-blanc) 99.4%,transparent 100%),
    radial-gradient(circle 110px at left 5% top -54px,var(--op-rond-blanc-petit) 99%,transparent 100%) !important;
}
@media (max-width:900px){
  body .opm-mv>section:not(.mv-hero):nth-of-type(4n+3){
    background-image:
      radial-gradient(circle 180px at right -80px top -96px,var(--op-rond-grand) 99.2%,transparent 100%),
      radial-gradient(circle 78px at left 6% bottom -46px,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 184px at left -92px bottom -110px,var(--op-rond-grand) 99.2%,transparent 100%),
      radial-gradient(circle 74px at right 7% top -44px,var(--op-rond-petit) 99%,transparent 100%) !important;
  }
  body .opm-mv>section:not(.mv-hero):nth-of-type(4n){
    background-image:
      radial-gradient(circle 170px at right -90px bottom -104px,var(--op-rond-blanc) 99.2%,transparent 100%),
      radial-gradient(circle 70px at left 5% top -42px,var(--op-rond-blanc-petit) 99%,transparent 100%) !important;
  }
}

/* =====================================================================
   45. Icônes bicolores des coordonnées, façon Jungle LAB. (2026-10-28) :
   pastille ronde pâle, trait bleu marine, détail corail. Balisage :
   opm_icone() dans icones.php (pages et pied de page).
   ===================================================================== */
.opm-ico{display:block;width:24px;height:24px;overflow:visible}
.opm-ico-a{stroke:#173F68}
.opm-ico-b{stroke:#D4483A}
.opm-ico-b .opm-ico-plein{fill:#D4483A;stroke:none}
.opm-pastille{display:inline-flex;align-items:center;justify-content:center;flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:#FBE4DF;box-sizing:border-box}
html body .opm-mv .mv-coord-ico.opm-pastille:not(#_){flex:0 0 52px;width:52px;height:52px;border-radius:50%;background-color:#FBE4DF !important;background-image:none !important}
html body .opm-mv .mv-coord>div:nth-child(even) .mv-coord-ico.opm-pastille:not(#_){background-color:#EFE6D6 !important}
.opm-pied-coord{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:14px}
html body .opm-pied .opm-pied-coord li:not(#_){display:flex;align-items:center;gap:14px;margin:0;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:17.5px;line-height:1.45}
.opm-pied-coord .opm-pastille{flex:0 0 46px;width:46px;height:46px;background:#FFFFFF}
.opm-pied-coord li:nth-child(even) .opm-pastille{background:#FBE4DF}
.opm-pied-coord .opm-ico{width:22px;height:22px}
html body .opm-pied .opm-pied-coord .opm-pied-fort:not(#_){font-weight:700 !important;color:#102E4D !important;text-decoration:none;overflow-wrap:anywhere}
html body .opm-pied .opm-pied-coord .opm-pied-fort:not(#_):hover{text-decoration:underline;text-underline-offset:4px}
html body .opm-pied .opm-pied-coord .opm-pied-adresse:not(#_){font-size:17.5px !important;line-height:1.45 !important}
html body .opm-pied .opm-pied-coord .opm-pied-horaires:not(#_){font-size:17.5px !important}

/* =====================================================================
   46. « Notre façon de fonctionner » : le camion à gauche (2026-10-28)
   ===================================================================== */
.opm-mot-photo img{object-position:40% 70%}

/* =====================================================================
   47. Retouches du 2026-10-28 (suite) : cadre du formulaire de la
   bannière légèrement transparent (« un truc avec légèrement
   d'opacité »), H1 et textes du dessous plus grands, coordonnées du
   bloc « Contacter notre entreprise » agrandies (« c'est trop petit »),
   et deux nouvelles propositions d'avant / après (V7, V8).
   ===================================================================== */
html body .opm-mv .opm-hf:not(#_){background:rgba(255,255,255,.9)}
html body .opm-mv .opm-hero4 .mv-h1:not(#_){font-size:clamp(50px,5.7vw,88px) !important;line-height:1.02 !important}
html body .opm-mv .opm-hero4 .mv-lead:not(#_){font-size:clamp(18.5px,1.45vw,21px) !important;line-height:1.55 !important;margin-top:18px}
html body .opm-mv .opm-hero4 .opm-hero3-liste:not(#_){gap:10px;margin-top:20px}
html body .opm-mv .opm-hero4 .opm-hero3-liste li:not(#_){font-size:clamp(17px,1.3vw,18.5px) !important;line-height:1.5;padding-left:36px}
html body .opm-mv .opm-hero4 .opm-hero3-liste li:not(#_)::before{width:24px;height:24px;top:2px}
html body .opm-mv .opm-hero4 .mv-badge:not(#_){font-size:13px !important}
@media (max-width:900px){
  html body .opm-mv .opm-hero4 .mv-h1:not(#_){font-size:clamp(44px,12vw,62px) !important}
}

/* Coordonnées (accueil, pages de service, contact) */
html body .opm-mv .mv-coord:not(#_){gap:14px}
html body .opm-mv .mv-coord>div:not(#_){gap:18px;padding:20px 22px}
html body .opm-mv .mv-coord-ico.opm-pastille:not(#_){flex:0 0 64px;width:64px;height:64px}
html body .opm-mv .mv-coord-ico.opm-pastille .opm-ico{width:30px;height:30px}
html body .opm-mv .mv-coord-lab:not(#_){font-size:14px !important;letter-spacing:.08em}
html body .opm-mv .mv-coord-val:not(#_),html body .opm-mv .mv-coord-val a:not(#_){font-size:clamp(19px,1.5vw,22px) !important;line-height:1.35;overflow-wrap:anywhere}

/* V7 : l'avant en vignette ronde dans le coin */
html body.opm-av-7 :is(.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{-webkit-mask-image:none !important;mask-image:none !important;z-index:0}
html body.opm-av-7 :is(.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{inset:auto !important;top:16px !important;left:16px !important;width:36% !important;height:auto !important;aspect-ratio:1;z-index:1;border:4px solid #FFFFFF;border-radius:50%;box-sizing:border-box;filter:none !important;transform:none !important}
html body.opm-av-7 .opm-svc-etq--av{top:10px !important;left:calc(16px + 18%) !important;transform:translateX(-50%);z-index:3}
@media (max-width:900px){
  html body.opm-av-7 :is(.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{width:38% !important;border-width:3px}
  html body.opm-av-7 .opm-svc-etq--av{left:calc(16px + 19%) !important}
}
/* V8 : avant et après côte à côte, deux photos entières */
html body.opm-av-8 :is(.opm-svc-photo,.opm-pp-photo){background:#FFFFFF}
html body.opm-av-8 :is(.opm-svc-photo,.opm-pp-photo) .opm-fondu-avant{inset:0 auto 0 0 !important;width:calc(50% - 2px) !important;filter:none !important}
html body.opm-av-8 :is(.opm-svc-photo,.opm-pp-photo) .opm-fondu-apres{inset:0 0 0 auto !important;width:calc(50% - 2px) !important;-webkit-mask-image:none !important;mask-image:none !important}

/* =====================================================================
   48. Retouches du 2026-10-28 (fin) : badge Google de la bannière plus
   visible (« mettre un autre logo Google qui ressort plus, en plus
   gros »), tuiles des services avec la seule photo après (« mets pas le
   avant, tu mets juste le après »), chantiers en avant / après avec
   l'avant en vignette en haut à gauche de l'après, camion entier dans
   « Notre façon de fonctionner », rubrique Actualités et conseils
   au-dessus du formulaire de contact.
   ===================================================================== */
/* Logo Google en couleurs (SVG posé par opm-avis-google) */
.opm-avis-g svg{display:block;width:64%;height:64%}
html body .opm-mv .opm-hero4 .opm-avis--discret:not(#_){gap:12px;padding:8px 20px 8px 8px;border-radius:999px;background:#FFFFFF !important}
html body .opm-mv .opm-hero4 .opm-avis--discret:not(#_):hover{background:#FFFFFF !important}
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-g:not(#_){width:46px;height:46px;background:#FFFFFF;border:1px solid #E6DFD0}
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-etoiles:not(#_){width:105px;height:19px;background-size:21px 19px}
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-txt:not(#_){gap:8px;color:#15191A !important}
html body .opm-mv .opm-hero4 .opm-avis--discret b:not(#_){font-size:21px;color:#102E4D !important}
html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-txt span:not(#_){font-size:16px;font-weight:600;color:#3D4A58 !important}
@media (max-width:520px){
  html body .opm-mv .opm-hero4 .opm-avis--discret:not(#_){gap:9px;padding:6px 14px 6px 6px}
  html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-g:not(#_){width:38px;height:38px}
  html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-etoiles:not(#_){width:85px;height:16px;background-size:17px 16px}
  html body .opm-mv .opm-hero4 .opm-avis--discret b:not(#_){font-size:18px}
  html body .opm-mv .opm-hero4 .opm-avis--discret .opm-avis-txt span:not(#_){font-size:14.5px}
}

/* Services : une seule photo, celle d'après */
.opm-svc-photo .opm-svc-img{filter:none}

/* Chantiers : l'après en grand, l'avant en vignette dans le coin, sans curseur */
.opm-mv .mv-ba--vignette .mv-ba-stage{cursor:default}
.opm-mv .mv-ba--vignette .mv-ba-stage .mv-ba-av{inset:auto;top:16px;left:16px;width:36%;height:auto;aspect-ratio:4/3;clip-path:none;z-index:1;border:4px solid #FFFFFF;border-radius:14px;box-sizing:border-box}
.opm-mv .mv-ba--vignette .mv-ba-tag{z-index:2}
.opm-mv .mv-ba--vignette .mv-ba-tag-av{top:30px;left:30px}
@media (max-width:900px){
  .opm-mv .mv-ba--vignette .mv-ba-stage .mv-ba-av{top:12px;left:12px;width:42%;border-width:3px;border-radius:12px}
  .opm-mv .mv-ba--vignette .mv-ba-tag-av{top:22px;left:22px}
  .opm-mv .mv-ba--vignette .mv-ba-tag{padding:6px 11px;font-size:11.5px}
}

/* « Notre façon de fonctionner » : camion en portrait, entier */
.opm-mot-photo img{object-position:50% 52%}

/* Actualités et conseils (cartes de [opm_articles], comme sur /conseils/) */
.opm-cartes-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.opm-carte-art{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E6DFD0;border-radius:22px;overflow:hidden;text-decoration:none !important;color:#15191A}
.opm-carte-art-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#F3EFE6}
.opm-carte-art-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.opm-carte-art:hover .opm-carte-art-photo img{transform:scale(1.04)}
html body .opm-mv .opm-carte-art-corps:not(#_){display:flex;flex-direction:column;gap:10px;flex:1;padding:22px 24px 24px}
html body .opm-mv .opm-carte-art-date:not(#_){font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:14px;font-weight:600;line-height:1.3;color:#56625F}
html body .opm-mv .opm-carte-art-titre:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(22px,1.8vw,26px);line-height:1.2;color:#15191A}
html body .opm-mv .opm-carte-art-texte:not(#_){font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:16.5px;line-height:1.6;color:#3D4A58}
html body .opm-mv .opm-carte-art-suite:not(#_){margin-top:auto;font-family:'Hanken Grotesk',system-ui,sans-serif;font-weight:700;font-size:17px;color:#173F68}
.opm-conseils-tous{margin:clamp(26px,2.6vw,36px) 0 0;text-align:center}
@media (max-width:1000px){
  .opm-cartes-art{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .opm-cartes-art{grid-template-columns:minmax(0,1fr)}
}

/* =====================================================================
   49. En-tête transparent sur la bannière photo de l'accueil
   (2026-10-28, « que le header soit transparent quand on est en haut
   avec la bannière »). Classe opm-transp posée par header.php quand la
   page s'ouvre sur .opm-hero4 ; opm-plein ajoutée par footer.php dès
   qu'on défile. L'en-tête reste collant ; sa marge négative fait passer
   la bannière dessous, et la bannière reprend sa hauteur en haut.
   ===================================================================== */
html body header.opm-transp:not(#_){margin-bottom:calc(-1 * var(--opm-entete-h,85px));transition:background-color .25s ease,border-color .25s ease}
/* Depuis la bannière taupe crème (section 56), l'en-tête transparent laisse
   voir le fond de la bannière : logo et liens gardent leurs couleurs. */
html body header.opm-transp:not(.opm-plein):not(:has(.opm-mob.open)):not(#_){background:transparent !important;border-bottom-color:transparent !important}

/* =====================================================================
   50. Services : « Voir le service » en simple lien blanc souligné avec
   sa flèche, plus de bouton blanc (2026-10-28, « plutôt un texte blanc
   souligné avec une flèche, ça suffira »). La flèche en inline-block ne
   prend pas le soulignement et glisse un peu au survol de la carte.
   ===================================================================== */
html body .opm-mv .opm-svc-lien:not(#_){display:inline-block;padding:2px 0;border-radius:0;background:none;color:#FFFFFF;font-size:17px;line-height:1.3;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
html body .opm-mv .opm-svc:hover .opm-svc-lien:not(#_),html body .opm-mv .opm-svc:focus-visible .opm-svc-lien:not(#_){background:none;color:#FFFFFF}
.opm-svc-lien>span{display:inline-block;margin-left:8px;text-decoration:none;transition:transform .2s ease}
.opm-svc:hover .opm-svc-lien>span,.opm-svc:focus-visible .opm-svc-lien>span{transform:translateX(4px)}

/* =====================================================================
   51. Formules : propositions F1 à F5 (2026-10-28, « fais-moi plusieurs
   propositions que je peux choisir… un peu plus complet, un peu plus
   sympa »). Balisage : formules.php, [opm_formules], ?formules=N.
   ===================================================================== */
:root{--fx-check: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");--fx-horloge:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23173F68' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
#formules .mv-tete+*{margin-top:clamp(22px,2.6vw,34px)}
html body .opm-mv .opm-fx-pour:not(#_){margin:8px 0 0;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:16.5px;line-height:1.5;color:#3D4A58}
html body .opm-mv .opm-fx-compris:not(#_){margin:22px 0 0;font-family:'Excon',sans-serif;font-weight:700;font-size:13px;line-height:1.2;letter-spacing:.09em;text-transform:uppercase;color:#56625F}
html body .opm-mv .opm-fx-delai:not(#_){display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:15.5px;line-height:1.5;color:#3D4A58}
.opm-fx-delai::before{content:"";flex:0 0 20px;height:20px;margin-top:1px;background:var(--fx-horloge) center/contain no-repeat}

/* F1 : cartes photo détaillées */
html body .opm-mv .opm-fx1 .mv-puces:not(#_){margin:12px 0 0}
html body .opm-mv .opm-fx1 .opm-fx-delai:not(#_){margin-top:auto;padding-top:20px}
html body .opm-mv .opm-fx1 .mv-cta:not(#_){margin-top:20px;justify-content:center}

/* F2 : tableau comparatif */
.opm-fx2{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;overflow:hidden}
.opm-fx2-ligne{display:contents}
.opm-fx2-ligne>*{display:flex;align-items:center;justify-content:center;min-width:0;box-sizing:border-box;padding:15px clamp(14px,1.6vw,24px);border-top:1px solid #EFE8DC}
html body .opm-mv .opm-fx2-ligne>.opm-fx2-lib:not(#_){justify-content:flex-start;font-family:'Hanken Grotesk',system-ui,sans-serif;font-weight:600;font-size:17px;line-height:1.4;color:#15191A}
.opm-fx2-tete>*{border-top:0;flex-direction:column;justify-content:flex-start;text-align:center;padding-top:clamp(16px,1.6vw,22px);padding-bottom:20px}
.opm-fx2-photo{position:relative;width:100%;aspect-ratio:16/10;margin:0 0 16px;border-radius:14px;overflow:hidden;background:#F1EBE0}
.opm-fx2-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
html body .opm-mv .opm-fx2-col h3:not(#_){margin:0;font-size:clamp(20px,1.55vw,24px) !important;line-height:1.2;color:#15191A}
html body .opm-mv .opm-fx2 .mv-formule-prix:not(#_){align-items:center;margin:10px 0 0}
html body .opm-mv .opm-fx2 .mv-formule-prix b:not(#_){font-size:clamp(36px,3vw,46px)}
.opm-fx2-fort{background:#F8F3EB}
.opm-fx2-oui{display:block;width:30px;height:30px;border-radius:50%;background:#173F68 var(--fx-check) center/15px 15px no-repeat}
.opm-fx2-non{display:block;width:18px;height:2px;border-radius:2px;background:#C9BFAE}
.opm-fx2-pied>*{padding-top:20px;padding-bottom:clamp(20px,2vw,26px)}
html body .opm-mv .opm-fx2-pied .mv-cta:not(#_){width:100%;justify-content:center;padding:15px 12px}
.opm-fx2-cache{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html body .opm-mv .opm-fx2-note:not(#_){justify-content:center;margin-top:18px}

/* F3 : onglets */
.opm-fx3-onglets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
html body .opm-mv .opm-fx3-onglets button:not(#_){display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:0;padding:17px 22px;border:1.5px solid #DCD3C2;border-radius:16px;background:#FFFFFF;color:#15191A;text-align:left;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}
html body .opm-mv .opm-fx3-onglets button:not(#_):hover{border-color:#173F68}
html body .opm-mv .opm-fx3-onglets b:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(18px,1.4vw,21px);line-height:1.2}
html body .opm-mv .opm-fx3-onglets button span:not(#_){font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:15px;line-height:1.35;color:#56625F}
html body .opm-mv .opm-fx3-onglets [aria-selected="true"]:not(#_){background:#102E4D;border-color:#102E4D;color:#FFFFFF}
html body .opm-mv .opm-fx3-onglets [aria-selected="true"] span:not(#_){color:rgba(255,255,255,.82)}
.opm-fx3-onglets button:focus-visible{outline:3px solid #D4483A;outline-offset:2px}
.opm-fx3-panneau{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;overflow:hidden}
.opm-fx3-panneau[hidden]{display:none !important}
.opm-fx3-photo{position:relative;min-height:340px;margin:0;overflow:hidden;background:#F1EBE0}
.opm-fx3-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.opm-fx3-texte{display:flex;flex-direction:column;padding:clamp(26px,3vw,48px)}
html body .opm-mv .opm-fx3-texte h3:not(#_){margin:0;font-size:clamp(26px,2.2vw,34px) !important;line-height:1.15;color:#15191A}
html body .opm-mv .opm-fx3-texte .mv-formule-prix:not(#_){margin-top:12px}
html body .opm-mv .opm-fx3-texte .opm-fx-pour:not(#_){margin-top:14px;font-size:17.5px}
html body .opm-mv .opm-fx3 .mv-puces:not(#_){grid-template-columns:minmax(0,1fr);margin:18px 0 0}
.opm-fx-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:auto;padding-top:24px}
html body .opm-mv .opm-fx-tel:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:19px;color:#173F68;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}

/* F4 : en escalier */
.opm-fx4{list-style:none;margin:0;padding:0;display:grid;gap:36px}
.opm-fx4-ligne{position:relative;display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr) minmax(0,270px);gap:clamp(20px,2.6vw,40px);align-items:stretch;padding:clamp(14px,1.3vw,18px);background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px}
.opm-fx4-fort{border:2px solid #D4483A}
.opm-fx4-ligne+.opm-fx4-ligne::before{content:"+";position:absolute;left:50%;top:-37px;z-index:1;display:flex;align-items:center;justify-content:center;width:38px;height:38px;margin-left:-19px;border-radius:50%;background:#173F68;color:#FFFFFF;font:700 26px/1 'Excon',sans-serif}
.opm-fx4-photo{position:relative;min-height:210px;margin:0;border-radius:14px;overflow:hidden;background:#F1EBE0}
.opm-fx4-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.opm-fx4-corps{align-self:center;padding:8px 0}
html body .opm-mv .opm-fx4-corps h3:not(#_){margin:0;color:#15191A}
html body .opm-mv .opm-fx4-plus:not(#_){margin:16px 0 0;font-family:'Excon',sans-serif;font-weight:700;font-size:16.5px;line-height:1.3;color:#173F68}
html body .opm-mv .opm-fx4 .mv-puces:not(#_){grid-template-columns:minmax(0,1fr);margin:12px 0 0}
.opm-fx4-prix{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:clamp(18px,2vw,28px);border-radius:14px;background:#F7F2EA}
html body .opm-mv .opm-fx4-prix .mv-formule-prix:not(#_){margin:0}
html body .opm-mv .opm-fx4-prix .mv-cta:not(#_){width:100%;justify-content:center;padding:15px 18px}
html body .opm-mv .opm-fx4-note:not(#_){justify-content:center;margin-top:20px}

/* F5 : cartes à pictogramme */
.opm-fx5{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,24px);align-items:stretch}
.opm-fx5-carte{display:flex;flex-direction:column;min-width:0;padding:clamp(26px,2.6vw,38px);background:#FFFFFF;border:1px solid #DCD3C2;border-radius:22px;color:#15191A}
.opm-fx5-ico{display:inline-flex;align-items:center;justify-content:center;width:66px;height:66px;margin:0 0 22px;border-radius:50%;background:#FBE4DF;color:#173F68}
.opm-fx5-ico svg{width:32px;height:32px}
html body .opm-mv .opm-fx5-carte h3:not(#_){margin:0;color:#15191A}
.opm-fx5-liste{list-style:none;display:grid;gap:12px;margin:22px 0 28px;padding:22px 0 0;border-top:1px solid #E6DFD0}
html body .opm-mv .opm-fx5-liste li:not(#_){position:relative;padding-left:34px;font-family:'Hanken Grotesk',system-ui,sans-serif;font-size:16.5px;line-height:1.45;color:#3D4A58}
.opm-fx5-liste li::before{content:"";position:absolute;left:0;top:1px;width:23px;height:23px;border-radius:50%;background:#173F68 var(--fx-check) center/12px 12px no-repeat}
html body .opm-mv .opm-fx5-carte .mv-cta:not(#_){margin-top:auto;justify-content:center}
.opm-fx5-fort{background:#102E4D;border-color:#102E4D;color:#FFFFFF}
.opm-fx5-fort .opm-fx5-ico{background:rgba(255,255,255,.12);color:#FFFFFF}
html body .opm-mv .opm-fx5-fort h3:not(#_),html body .opm-mv .opm-fx5-fort .mv-formule-prix b:not(#_){color:#FFFFFF !important}
html body .opm-mv .opm-fx5-fort .opm-fx-pour:not(#_),html body .opm-mv .opm-fx5-fort .mv-formule-prix span:not(#_){color:rgba(255,255,255,.8) !important}
.opm-fx5-fort .opm-fx5-liste{border-top-color:rgba(255,255,255,.18)}
html body .opm-mv .opm-fx5-fort .opm-fx5-liste li:not(#_){color:rgba(255,255,255,.92)}
.opm-fx5-fort .opm-fx5-liste li::before{background-color:#D4483A}
html body .opm-mv .opm-fx5-fort .mv-cta:not(#_){background:#D4483A !important;color:#FFFFFF !important}
html body .opm-mv .opm-fx5-note:not(#_){justify-content:center;margin-top:20px}

@media (max-width:1000px){
  .opm-fx4-ligne{grid-template-columns:minmax(0,240px) minmax(0,1fr)}
  .opm-fx4-prix{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
  html body .opm-mv .opm-fx4-prix .mv-cta:not(#_){width:auto}
}
@media (max-width:900px){
  .opm-fx3-onglets{grid-template-columns:minmax(0,1fr);gap:8px}
  html body .opm-mv .opm-fx3-onglets button:not(#_){padding:13px 18px}
  .opm-fx3-panneau{grid-template-columns:minmax(0,1fr)}
  .opm-fx3-photo{min-height:240px}
  .opm-fx5{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .opm-fx2{grid-template-columns:repeat(3,minmax(0,1fr))}
  .opm-fx2-tete>.opm-fx2-lib,.opm-fx2-pied>.opm-fx2-lib{display:none}
  .opm-fx2-photo{display:none}
  .opm-fx2-tete>*{padding:16px 6px 14px}
  html body .opm-mv .opm-fx2-col h3:not(#_){font-size:15.5px !important;hyphens:none;overflow-wrap:normal}
  html body .opm-mv .opm-fx2 .mv-formule-prix span:not(#_){font-size:10.5px;letter-spacing:.06em}
  html body .opm-mv .opm-fx2 .mv-formule-prix b:not(#_){font-size:27px}
  html body .opm-mv .opm-fx2-ligne>.opm-fx2-lib:not(#_){grid-column:1/-1;justify-content:center;text-align:center;padding:14px 14px 2px;font-size:15.5px}
  .opm-fx2-ligne>.opm-fx2-cel{border-top:0;padding:8px 6px 14px}
  .opm-fx2-oui{width:26px;height:26px;background-size:13px 13px}
  .opm-fx2-pied>*{border-top:1px solid #EFE8DC;padding:14px 5px 16px}
  html body .opm-mv .opm-fx2-pied .mv-cta:not(#_){padding:12px 4px;font-size:13.5px;border-radius:12px}
  .opm-fx4-ligne{grid-template-columns:minmax(0,1fr)}
  .opm-fx4-photo{min-height:220px}
  .opm-fx4-corps{padding:0 4px}
  .opm-fx4-prix{flex-direction:column;align-items:stretch}
  html body .opm-mv .opm-fx4-prix .mv-cta:not(#_){width:100%}
}

/* =====================================================================
   52. « Le débarras gratuit, dans quels cas ? » : texte un peu plus
   petit (2026-10-28, « réduis un tout petit peu la taille du texte »).
   ===================================================================== */
html body .opm-mv #gratuit .mv-lead:not(#_){font-size:17.5px !important;line-height:1.6 !important}
html body .opm-mv #gratuit .mv-p:not(#_){font-size:16.5px !important;line-height:1.6 !important}
html body .opm-mv #gratuit .mv-oui li:not(#_){font-size:15.5px !important;line-height:1.5 !important}
html body .opm-mv #gratuit .mv-flag-txt:not(#_){font-size:15.5px !important;line-height:1.55 !important}

/* =====================================================================
   53. « Notre façon de fonctionner » : plus de cadre ni de bordure, la
   photo à gauche et le texte à droite, tout simplement (2026-10-28).
   Même hauteur pour la photo et le texte (grille étirée).
   ===================================================================== */
html body .opm-mv #methode .mv-mot:not(#_){background:none !important;border:0 !important;border-radius:0 !important;padding:0 !important}
html body .opm-mv #methode .opm-mot-grid:not(#_){grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,4.6vw,84px);align-items:stretch}
/* téléphone et tablette : une colonne, les photos au-dessus du texte (deux colonnes étroites jusqu'au 2026-10-28) */
@media (max-width:900px){
  html body .opm-mv #methode .opm-mot-grid:not(#_){grid-template-columns:minmax(0,1fr);gap:28px}
}
html body .opm-mv #methode .mv-methode:not(#_){background:none !important;border:0 !important;border-radius:0 !important;padding:clamp(20px,2vw,26px) 0 0 !important;border-top:1px solid #E6DFD0 !important}

/* =====================================================================
   54. « Quelques chantiers menés à Lyon » : plus d'onglets pour changer
   de photo, les six avant / après visibles en grille (2026-10-28).
   L'après en grand, l'avant en vignette dans le coin, comme avant.
   ===================================================================== */
.opm-chantiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.8vw,26px)}
.opm-chantier{min-width:0;margin:0}
.opm-chantier-photos{position:relative;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#F1EBE0}
.opm-chantier-photos picture{display:contents}
.opm-chantier-ap{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.opm-chantier-av{position:absolute;top:12px;left:12px;z-index:1;display:block;width:38%;height:auto;aspect-ratio:4/3;object-fit:cover;border:3px solid #FFFFFF;border-radius:12px;box-sizing:border-box}
html body .opm-mv .opm-chantier-tag:not(#_){position:absolute;z-index:2;padding:6px 11px;border-radius:999px;font-family:'Excon',sans-serif;font-weight:700;font-size:11.5px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}
html body .opm-mv .opm-chantier-tag-av:not(#_){top:20px;left:20px;background:#FFFFFF;color:#15191A}
html body .opm-mv .opm-chantier-tag-ap:not(#_){top:12px;right:12px;background:#D4483A;color:#FFFFFF}
html body .opm-mv .opm-chantier figcaption:not(#_){margin:12px 2px 0;font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(19px,1.4vw,21px);line-height:1.25;color:#15191A}
.opm-chantiers+*{margin-top:clamp(24px,2.6vw,34px)}
@media (max-width:1100px){
  .opm-chantiers{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .opm-chantiers{grid-template-columns:minmax(0,1fr);gap:22px}
  .opm-chantier-av{width:42%}
}

/* =====================================================================
   55. Formules F1, F3, F4 : un filet sous chaque ligne de la liste (le
   filet blanc des anciennes cartes était invisible sur la carte du
   milieu), et prix alignés d'une carte à l'autre en F1.
   ===================================================================== */
html body .opm-mv :is(.opm-fx1,.opm-fx3,.opm-fx4) .mv-puces li:not(#_){border-bottom:1px solid #EFE8DC}
html body .opm-mv :is(.opm-fx1,.opm-fx3,.opm-fx4) .mv-puces li:last-child:not(#_){border-bottom:0}
@media (min-width:901px){
  html body .opm-mv .opm-fx1 .opm-fx-pour:not(#_){min-height:3em}
}

/* =====================================================================
   56. Bannière de l'accueil refaite (2026-10-28, après-midi) : plus de
   photo en fond, plus de formulaire ni d'avis Google, fond taupe crème,
   texte à gauche et à droite une mosaïque camion + avant / après aux
   formes arrondies « comme sur Tammaia » (« un bento un peu sympa, pas
   le format de HK »). Photos à la hauteur du texte, grand rond pâle
   derrière la mosaïque, petit rond en bas à gauche.
   ===================================================================== */
html body .opm-mv>section.opm-hero5:not(#_){position:relative;background-color:#F3EFE6 !important;background-image:radial-gradient(circle 340px at right -70px top 6%,#EADFCB 99.4%,transparent 100%),radial-gradient(circle 120px at left 3% bottom -70px,#F2D7CF 99%,transparent 100%) !important;background-repeat:no-repeat !important;padding-top:calc(var(--opm-entete-h,85px) + clamp(30px,3.4vw,56px)) !important;padding-bottom:clamp(56px,5.6vw,88px) !important}
.opm-hero5-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,4.6vw,80px);align-items:stretch}
.opm-hero5-grid .opm-hero3-texte{align-self:center}
html body .opm-mv .opm-hero5 .mv-h1:not(#_){color:#15191A !important;font-size:clamp(44px,4.6vw,72px) !important;line-height:1.02 !important}
html body .opm-mv .opm-hero5 .mv-h1 .mv-surl:not(#_){color:#173F68 !important}
html body .opm-mv .opm-hero5 .mv-lead:not(#_){font-size:clamp(18px,1.4vw,20px) !important;line-height:1.55 !important;color:#3D4A58 !important;margin-top:18px}
html body .opm-mv .opm-hero5 .opm-hero3-liste:not(#_){gap:10px;margin-top:20px}
html body .opm-mv .opm-hero5 .opm-hero3-liste li:not(#_){font-size:clamp(16.5px,1.25vw,18px) !important;line-height:1.5;color:#3D4A58 !important;padding-left:34px}
html body .opm-mv .opm-hero5 .opm-hero3-liste strong:not(#_){color:#15191A}
html body .opm-mv .opm-hero5 .opm-hero3-liste li:not(#_)::before{width:23px;height:23px;background-color:#D4483A}
html body .opm-mv .opm-hero5 .mv-badge:not(#_){background:#FFFFFF !important;color:#15191A !important}
html body .opm-mv .opm-hero5 .opm-hero3-boutons:not(#_){gap:12px;margin-top:clamp(26px,2.6vw,34px)}
html body .opm-mv .opm-hero5 .opm-hero3-tel:not(#_){min-height:58px;padding:0 26px;border:0;border-radius:14px;background:#D4483A;color:#FFFFFF;font-size:18px}
html body .opm-mv .opm-hero5 .opm-hero3-tel svg:not(#_){color:#FFFFFF}
html body .opm-mv .opm-hero5 .opm-hero3-tel:not(#_):hover{background:#B4392D}
html body .opm-mv .opm-hero5 .opm-hero5-devis:not(#_){min-height:58px;padding:0 26px;border-radius:14px;background:#173F68 !important;color:#FFFFFF !important;font-family:'Excon',sans-serif;font-weight:700;font-size:18px}
html body .opm-mv .opm-hero5 .opm-hero5-devis:not(#_):hover{background:#102E4D !important}

/* Mosaïque : camion en large au-dessus, avant (en noir et blanc) et après dessous */
.opm-hero5-mosaique{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1.2fr) minmax(0,1fr);gap:14px;min-height:clamp(480px,40vw,620px)}
.opm-hero5-mosaique figure{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:#E6DFD0}
.opm-hero5-mosaique picture{display:contents}
.opm-hero5-mosaique img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.opm-hero5-mosaique figure:hover img{transform:scale(1.04)}
.opm-hero5-camion{grid-column:1 / -1;border-radius:clamp(90px,10vw,170px) 26px 26px 26px}
.opm-hero5-camion img{object-position:50% 62%}
.opm-hero5-avant{border-radius:26px 26px 26px clamp(70px,8vw,140px)}
.opm-hero5-avant img{filter:grayscale(1) contrast(1.05)}
.opm-hero5-apres{border-radius:26px clamp(70px,8vw,140px) clamp(70px,8vw,140px) 26px}
html body .opm-mv .opm-hero5-etq:not(#_){position:absolute;top:14px;left:14px;z-index:1;padding:6px 12px;border-radius:999px;background:#FFFFFF;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:12px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}
html body .opm-mv .opm-hero5-etq--ap:not(#_){background:#D4483A;color:#FFFFFF}

@media (max-width:900px){
  html body .opm-mv>section.opm-hero5:not(#_){padding-top:calc(var(--opm-entete-h,74px) + 14px) !important;padding-bottom:48px !important;background-image:radial-gradient(circle 170px at right -80px top 38%,#EADFCB 99.2%,transparent 100%),radial-gradient(circle 74px at left 4% bottom -44px,#F2D7CF 99%,transparent 100%) !important}
  .opm-hero5-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .opm-hero5-mosaique{order:-1;min-height:0;height:clamp(380px,100vw,560px)}
  html body .opm-mv .opm-hero5 .mv-h1:not(#_){font-size:clamp(40px,11vw,60px) !important}
}
/* Téléphone : jamais deux photos côte à côte, l'avant passe en vignette sur l'après */
@media (max-width:600px){
  .opm-hero5-mosaique{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:12px;height:clamp(420px,118vw,520px)}
  .opm-hero5-camion{grid-column:1;grid-row:1;border-radius:80px 22px 22px 22px}
  .opm-hero5-apres{grid-column:1;grid-row:2;border-radius:22px 22px 80px 22px}
  .opm-hero5-avant{grid-column:1;grid-row:2;z-index:1;align-self:start;justify-self:start;width:44%;aspect-ratio:4/3;margin:12px 0 0 12px;border:3px solid #FFFFFF;border-radius:14px}
  .opm-hero5-apres .opm-hero5-etq{left:auto !important;right:14px}
  html body .opm-mv .opm-hero5-avant .opm-hero5-etq:not(#_){top:8px;left:8px;padding:4px 9px;font-size:10.5px}
  html body .opm-mv .opm-hero5 .opm-hero3-boutons:not(#_){flex-direction:column;align-items:stretch}
  html body .opm-mv .opm-hero5 .opm-hero3-tel:not(#_),html body .opm-mv .opm-hero5 .opm-hero5-devis:not(#_){justify-content:center;width:100%}
}

/* F4 : le bouton tient sur une ligne */
.opm-fx4-ligne{grid-template-columns:minmax(0,300px) minmax(0,1fr) minmax(0,290px)}
html body .opm-mv .opm-fx4-prix .mv-cta:not(#_){white-space:nowrap;padding:15px 14px}
@media (max-width:1000px){.opm-fx4-ligne{grid-template-columns:minmax(0,240px) minmax(0,1fr)}}
@media (max-width:760px){.opm-fx4-ligne{grid-template-columns:minmax(0,1fr)}}

/* =====================================================================
   57. Composition à trois photos [opm_mosaique] (2026-10-28) : bannières
   de toutes les pages (camion + avant / après de la page), FAQ et
   « Notre façon de fonctionner » de l'accueil. Coins très arrondis
   « comme sur Tammaia », avant en noir et blanc. Bannière : H1 plus
   grand, rond plus visible en bas à droite, fil d'Ariane dans la
   bannière des pages intérieures (l'en-tête est transparent dessus).
   ===================================================================== */
.opm-mosaique{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1.2fr) minmax(0,1fr);gap:14px;min-width:0;min-height:clamp(440px,38vw,600px)}
.opm-mosaique figure{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:#E6DFD0}
.opm-mosaique picture{display:contents}
.opm-mosaique img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.opm-mosaique figure:hover img{transform:scale(1.04)}
.opm-mosaique--haut .opm-mosaique-a{grid-column:1 / -1;border-radius:clamp(90px,10vw,170px) 26px 26px 26px}
.opm-mosaique--haut .opm-mosaique-a img{object-position:50% 62%}
.opm-mosaique--haut .opm-mosaique-b{border-radius:26px 26px 26px clamp(70px,8vw,140px)}
.opm-mosaique--haut .opm-mosaique-c{border-radius:26px clamp(70px,8vw,140px) clamp(70px,8vw,140px) 26px}
.opm-mosaique--gauche{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr)}
.opm-mosaique--gauche .opm-mosaique-a{grid-row:1 / -1;border-radius:999px 999px 26px 26px}
.opm-mosaique--gauche .opm-mosaique-b{border-radius:26px clamp(70px,8vw,140px) 26px 26px}
.opm-mosaique--gauche .opm-mosaique-c{border-radius:26px 26px clamp(70px,8vw,140px) 26px}
.opm-mosaique--avap .opm-mosaique-b img{filter:grayscale(1) contrast(1.05)}
html body .opm-mosaique-etq:not(#_){position:absolute;top:14px;left:14px;z-index:1;padding:6px 12px;border-radius:999px;background:#FFFFFF;color:#15191A;font-family:'Excon',sans-serif;font-weight:700;font-size:12px;line-height:1.2;letter-spacing:.1em;text-transform:uppercase;pointer-events:none}
html body .opm-mosaique-etq--ap:not(#_){background:#D4483A;color:#FFFFFF}

/* Bannière (accueil et pages intérieures) */
html body .opm-mv>section.opm-hero5:not(#_){background-image:radial-gradient(circle 340px at right -70px top 6%,#EADFCB 99.4%,transparent 100%),radial-gradient(circle 230px at right -50px bottom -110px,#EBCBBF 99.4%,transparent 100%),radial-gradient(circle 120px at left 3% bottom -70px,#F2D7CF 99%,transparent 100%) !important}
html body .opm-mv .opm-hero5 .mv-h1:not(#_){font-size:clamp(48px,5.3vw,84px) !important}
.opm-hero5-grid>.opm-mosaique{align-self:stretch}
html body .opm-mv .opm-hero5 .mv-p:not(#_){margin-top:14px;font-size:clamp(16.5px,1.25vw,18px);line-height:1.55;color:#3D4A58}
.opm-hero5 nav[aria-label="Fil d'Ariane"]{margin:0 0 18px;background:none !important;border:0 !important}
.opm-hero5 nav[aria-label="Fil d'Ariane"]>div{max-width:none !important;padding:0 !important;font-family:'Hanken Grotesk',system-ui,sans-serif !important;font-size:14.5px !important;color:#56625F !important}
.opm-hero5 nav[aria-label="Fil d'Ariane"] a{color:#173F68 !important;font-weight:700}

/* « Notre façon de fonctionner » et FAQ */
html body .opm-mv #methode .opm-mot-grid>.opm-mosaique:not(#_){align-self:stretch;min-height:clamp(480px,42vw,680px)}
html body .opm-mv .opm-faq-grid>.opm-mosaique:not(#_){align-self:stretch;min-height:clamp(480px,40vw,640px)}

@media (max-width:900px){
  html body .opm-mv>section.opm-hero5:not(#_){background-image:radial-gradient(circle 170px at right -80px top 38%,#EADFCB 99.2%,transparent 100%),radial-gradient(circle 120px at right -40px bottom -60px,#EBCBBF 99.2%,transparent 100%),radial-gradient(circle 74px at left 4% bottom -44px,#F2D7CF 99%,transparent 100%) !important}
  html body .opm-mv .opm-hero5 .mv-h1:not(#_){font-size:clamp(42px,12vw,64px) !important}
  .opm-hero5-grid>.opm-mosaique{order:-1;min-height:0;height:clamp(380px,100vw,560px)}
  html body .opm-mv #methode .opm-mot-grid>.opm-mosaique:not(#_),html body .opm-mv .opm-faq-grid>.opm-mosaique:not(#_){min-height:0;height:clamp(420px,100vw,600px)}
}
/* Téléphone : la même composition que sur ordinateur, l'avant et l'après côte à côte
   (2026-10-28, « les deux photos côte à côte et pas la photo dans la photo » : exception
   voulue à la règle « jamais deux photos côte à côte sur téléphone »). */
@media (max-width:600px){
  .opm-mosaique,html body .opm-mv .opm-mosaique:not(#_){gap:10px;height:clamp(360px,104vw,480px) !important;min-height:0 !important}
  .opm-mosaique--haut .opm-mosaique-a{border-radius:70px 20px 20px 20px}
  .opm-mosaique--haut .opm-mosaique-b{border-radius:20px 20px 20px 56px}
  .opm-mosaique--haut .opm-mosaique-c{border-radius:20px 56px 56px 20px}
  .opm-mosaique--gauche .opm-mosaique-b{border-radius:20px 56px 20px 20px}
  .opm-mosaique--gauche .opm-mosaique-c{border-radius:20px 20px 56px 20px}
  html body .opm-mosaique-etq:not(#_){top:10px;left:10px;padding:5px 10px;font-size:10.5px}
}

/* =====================================================================
   58. Correctifs de la mosaïque : une règle plus ancienne posait 14 px
   au-dessus des photos b et c (décalage dans la FAQ) ; fil d'Ariane de
   la bannière sans le fond ni le filet de l'ancien bandeau.
   ===================================================================== */
html body .opm-mv .opm-mosaique>figure:not(#_){margin:0}
html body .opm-mv .opm-hero5 nav[aria-label="Fil d'Ariane"]:not(#_){margin:0 0 18px !important;padding:0 !important;background:none !important;border:0 !important}
html body .opm-mv .opm-hero5 nav[aria-label="Fil d'Ariane"]>div:not(#_){max-width:none !important;padding:0 !important;font-family:'Hanken Grotesk',system-ui,sans-serif !important;font-size:14.5px !important;color:#56625F !important}
html body .opm-mv .opm-hero5 nav[aria-label="Fil d'Ariane"] a:not(#_){color:#173F68 !important;font-weight:700}

/* =====================================================================
   59. « Quelques chantiers menés » : le nom du chantier posé sur la
   photo, en bas à gauche (2026-10-28, « intègre le texte directement
   sur l'image en bas à gauche »), sur un dégradé sombre pour la lecture.
   ===================================================================== */
.opm-chantier{position:relative}
.opm-chantier-photos::after{content:"";position:absolute;left:0;right:0;bottom:0;z-index:1;height:42%;background:linear-gradient(180deg,rgba(16,25,32,0),rgba(16,25,32,.72));pointer-events:none}
html body .opm-mv .opm-chantier figcaption:not(#_){position:absolute;left:20px;bottom:16px;z-index:2;margin:0;color:#FFFFFF;font-size:clamp(22px,1.7vw,26px);line-height:1.2;pointer-events:none}
@media (max-width:700px){
  html body .opm-mv .opm-chantier figcaption:not(#_){left:16px;bottom:14px;font-size:22px}
}

/* =====================================================================
   60. « Seul ou avec nous » (2026-10-28, « comme sur Vendi, pourquoi
   louer une benne plutôt que faire la déchèterie, la même chose pour le
   débarras, avec les couleurs du site ») : deux cartes face à face, la
   carte « sans » en blanc, la carte « avec » en bleu marine, « ou » entre
   les deux. Une note sourcée dessous (règles de la Métropole).
   ===================================================================== */
html body .opm-mv .opm-duel:not(#_){display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(14px,2vw,26px);align-items:stretch;margin-top:clamp(26px,3vw,40px)}
html body .opm-mv .opm-duel-cote:not(#_){display:flex;flex-direction:column;margin:0;padding:clamp(26px,3vw,44px);border-radius:26px}
html body .opm-mv .opm-duel-cote--sans:not(#_){background:#FFFFFF;border:1px solid #E6DFD0;color:#56625F}
html body .opm-mv .opm-duel-cote--avec:not(#_){background:#173F68;color:#FFFFFF}
html body .opm-mv .opm-duel-etq:not(#_){align-self:flex-start;margin:0 0 16px;padding:6px 14px;border-radius:999px;background:#F3EFE6;color:#56625F;font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.3}
html body .opm-mv .opm-duel-cote--avec .opm-duel-etq:not(#_){background:#D4483A;color:#FFFFFF}
html body .opm-mv .opm-duel-cote h3:not(#_){margin:0 0 24px;font-size:clamp(24px,2vw,30px);line-height:1.15;color:#5C6B7B}
html body .opm-mv .opm-duel-cote--avec h3:not(#_){color:#FFFFFF}
html body .opm-mv .opm-duel-liste:not(#_){display:grid;gap:16px;margin:0;padding:0;list-style:none}
html body .opm-mv .opm-duel-liste li:not(#_){display:flex;gap:12px;align-items:flex-start;margin:0;padding:0;font-size:clamp(17px,1.25vw,19px);line-height:1.4;color:inherit}
html body .opm-mv .opm-duel-liste li::before,html body .opm-mv .opm-duel-liste li::marker{content:none !important;display:none !important}
html body .opm-mv .opm-duel-cote--sans strong:not(#_){color:#15191A}
html body .opm-mv .opm-duel-cote--avec strong:not(#_){color:#FFFFFF}
html body .opm-mv .opm-duel-ic:not(#_){flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-top:-1px;border-radius:50%;background:#C9574A;color:#FFFFFF}
html body .opm-mv .opm-duel-cote--avec .opm-duel-ic:not(#_){background:#3E8E4F}
html body .opm-mv .opm-duel-ic svg:not(#_){width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
html body .opm-mv .opm-duel-ou:not(#_){align-self:center;display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0;border-radius:50%;background:#15191A;color:#F3EFE6;font-size:22px;font-weight:800;line-height:1}
html body .opm-mv .opm-duel-cote--avec .opm-duel-cta:not(#_){align-self:flex-start;margin-top:30px;background:#D4483A !important;color:#FFFFFF !important}
html body .opm-mv .opm-duel-cote--avec .opm-duel-cta:not(#_):hover{background:#B4392D !important}
html body .opm-mv .opm-duel-source:not(#_){display:flex;gap:10px;align-items:flex-start;max-width:none;margin:clamp(20px,2.2vw,28px) 0 0;font-size:15.5px;line-height:1.55;color:#56625F}
html body .opm-mv .opm-duel-source svg:not(#_){flex:none;width:20px;height:20px;margin-top:1px;fill:none;stroke:#D4483A;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html body .opm-mv .opm-duel-source a:not(#_){color:#173F68;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media (max-width:860px){
  html body .opm-mv .opm-duel:not(#_){grid-template-columns:minmax(0,1fr);gap:0}
  html body .opm-mv .opm-duel-ou:not(#_){width:52px;height:52px;margin:-14px auto;position:relative;z-index:1;font-size:19px;border:4px solid #F3EFE6}
  html body .opm-mv .opm-duel-cote:not(#_){padding:28px 22px}
  html body .opm-mv .opm-duel-cote--avec .opm-duel-cta:not(#_){align-self:stretch;justify-content:center;text-align:center}
}

/* comparatif posé seul sur une page (ancien gabarit des villes) : fond blanc fixe */
html body .opm-mv>section.opm-duel-sec.opm-duel-blanc:not(#_){background-color:#FFFFFF !important;background-image:none !important}

/* =====================================================================
   61. Zone d'intervention : petit encart météo et lien de la mairie
   (2026-10-28, « trop de contenu… fais plus simple, comme sur AKL, un
   petit encart météo… juste le lien de la mairie ») dans la colonne de
   texte, sous les communes. [opm_carte … infos="lyon|givors|…"],
   opm-carte-zone/infos.php et opm_meteo_mini() d'opm-meteo.
   ===================================================================== */
html body .opm-mv .opm-meteo-mini:not(#_),.opm-zone-col .opm-meteo-mini{margin:26px 0 0;padding:22px clamp(18px,2.2vw,28px);background:#FFFFFF;border:1px solid #E6DFD0;border-radius:22px}
.opm-zone-col .opm-meteo-mini-titre{margin:0 0 14px;font-size:clamp(20px,1.6vw,23px);line-height:1.2;color:#15191A}
.opm-meteo-mini-auj{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:6px 14px}
.opm-meteo-mini .mv-meteo-ico{width:52px;height:52px}
.opm-meteo-mini-temp{margin:0;font-size:clamp(34px,3vw,42px);font-weight:700;line-height:1;color:#173F68;white-space:nowrap}
.opm-meteo-mini-etat{margin:0;font-size:16px;line-height:1.45;color:#3D4A58}
.opm-meteo-mini-etat strong{color:#15191A}
.opm-meteo-mini-jours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 0;padding:16px 0 0;border-top:1px solid #EFE8DA;list-style:none}
html body .opm-meteo-mini-jours li:not(#_){display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;padding:0;text-align:center;font-size:14.5px;line-height:1.3;color:#5C6B7B}
.opm-meteo-mini-jours li::before{content:none !important}
.opm-meteo-mini-jours .mv-meteo-ico{width:34px;height:34px}
.opm-meteo-mini-jour{font-weight:700;color:#15191A}
.opm-meteo-mini-jours strong{color:#15191A}
.opm-zone-col .opm-mairie{margin:16px 0 0}
.opm-zone-col .opm-mairie a{display:inline-flex;gap:8px;align-items:center;font-weight:700;color:#173F68;text-decoration:underline;text-underline-offset:3px}
.opm-zone-col .opm-mairie a:hover{color:#D4483A}
.opm-zone-col .opm-mairie svg{flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.opm-zone-col .opm-meteo-mini+.opm-mairie+.mv-cta,.opm-zone-col .opm-mairie+.mv-cta{margin-top:22px}
@media (max-width:600px){
  .opm-meteo-mini-auj{grid-template-columns:auto minmax(0,1fr)}
  .opm-meteo-mini-etat{grid-column:1/-1}
  .opm-meteo-mini-jours{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}
}

/* icônes de l'encart aussi hors du gabarit .opm-mv (pages de ville à l'ancien gabarit) */
.opm-meteo-mini .mv-meteo-ico{display:block;background-position:center;background-size:contain;background-repeat:no-repeat}
.opm-meteo-mini .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-meteo-mini .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-meteo-mini .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-meteo-mini .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")}
.opm-meteo-mini .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-meteo-mini .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")}

/* 62. En-tête bleu foncé sur téléphone : essayé puis retiré le 2026-10-28 (« remets header clair »). */

/* =====================================================================
   63. Plus aucun rond en fond (2026-10-28, « retire les ronds dans le
   background pour améliorer un peu la lisibilité ») : sections, bannière
   et panneau d'estimation passent en aplat. Remplace les sections 43, 44
   et les ronds de la bannière opm-hero5. Le pointillé entre les étapes du
   déroulé reste (c'est un lien entre les étapes, pas un décor).
   La carte des cartes « Pour les particuliers / professionnels » finit
   sur la liste depuis que ses boutons sont retirés.
   ===================================================================== */
html body .opm-mv>section:not(#_):not(#_),
html body .opm-mv>section.opm-hero5:not(#_):not(#_),
html body .opm-quiz:not(#_):not(#_){background-image:none !important}
.opm-pp-liste:last-child{margin-bottom:0}

/* opm-blog */
/* Rubrique « Conseils » d'OPM Débarras (2026-10-28) : page /conseils/ et articles.
   L'article tient sur une feuille blanche posée sur le fond crème, sans bannière ; une photo
   au-dessus de chaque H2 ; quiz sur un fond vert vif ; petits conteneurs blancs à bord fin.
   Chargée après plumber-N.css : les titres H2 gardent la taille du site, le H1 est réglé ici. */

.opm-art-fond{background:#F3EFE6;padding:clamp(18px,4vw,56px) clamp(10px,3vw,40px) clamp(48px,6vw,90px)}
.opm-art-feuille{box-sizing:border-box;max-width:1000px;margin:0 auto;background:#FFFFFF;border:1px solid #E6DFD0;border-radius:28px;padding:clamp(22px,5vw,64px) clamp(20px,5vw,72px)}
.opm-art,.opm-art p,.opm-art li,.opm-art td,.opm-art th{font-family:'Switzer','Hanken Grotesk',system-ui,sans-serif;color:#15191A}
.opm-art p,.opm-art li{font-size:18px;line-height:1.7}
.opm-art p{margin:0 0 18px}
.opm-art strong{font-weight:700;color:#15191A}
.opm-art a{color:#173F68;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.opm-art a:hover{color:#D4483A}

/* Fil d'Ariane, en-tête de publication */
.opm-art-fil{font-family:'Switzer',system-ui,sans-serif;font-size:14px;color:#56625F;margin:0 0 22px;line-height:1.5}
.opm-art-fil a{color:#173F68;font-weight:600;text-decoration:none}
.opm-art-fil a:hover{text-decoration:underline}
.opm-art .opm-art-meta{font-size:15px;line-height:1.5;color:#56625F;margin:0 0 16px}
.opm-art .opm-art-meta strong{color:#15191A}

/* Titres */
html body .opm-art h1:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(38px,4.6vw,62px) !important;line-height:1.06;letter-spacing:-.02em;color:#15191A;margin:0 0 22px}
html body .opm-art h2:not(#_){font-family:'Excon',sans-serif;font-weight:700;line-height:1.1;letter-spacing:-.02em;color:#15191A;margin:22px 0 18px}
html body .opm-art h3:not(#_){font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(23px,2vw,27px) !important;line-height:1.2;color:#15191A;margin:30px 0 12px}
.opm-art .mv-surl{color:#D4483A !important}
.opm-art .opm-art-chapo{font-size:20px;line-height:1.65;margin:0 0 22px}

/* Listes */
.opm-art ul,.opm-art ol{margin:0 0 22px;padding:0;list-style:none}
.opm-art ul>li{position:relative;padding-left:30px;margin:0 0 10px}
.opm-art ul>li::before{content:"";position:absolute;left:4px;top:.62em;width:10px;height:10px;border-radius:50%;background:#D4483A}
.opm-art ol{counter-reset:opm-ol}
.opm-art ol>li{position:relative;padding-left:44px;margin:0 0 14px;counter-increment:opm-ol}
.opm-art ol>li::before{content:counter(opm-ol);position:absolute;left:0;top:.1em;width:30px;height:30px;border-radius:50%;background:#173F68;color:#FFFFFF;font:700 15px/30px 'Excon',sans-serif;text-align:center}

/* Photos : ouverture sous le chapô, puis une au-dessus de chaque H2 */
.opm-art-photo{margin:46px 0 0;border-radius:22px;overflow:hidden;aspect-ratio:16/9;background:#F3EFE6}
.opm-art-photo img,.opm-art-photo picture{display:block;width:100%;height:100%}
.opm-art-photo img{object-fit:cover}
.opm-art-photo--ouverture{margin:26px 0 30px}

/* Résumer avec Claude, ChatGPT, Gemini */
.opm-resumer{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:0 0 6px}
.opm-art .opm-resumer-titre{margin:0;font-size:15px;font-weight:600;color:#56625F}
.opm-art .opm-resumer-liens{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.opm-art .opm-resumer-liens>li{padding:0;margin:0}
.opm-art .opm-resumer-liens>li::before{display:none}
.opm-art .opm-resumer-liens a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #DCD3C2;border-radius:999px;background:#FFFFFF;color:#15191A;font-size:16px;font-weight:600;text-decoration:none}
.opm-art .opm-resumer-liens a:hover{border-color:#173F68;color:#173F68}
.opm-resumer-logo{flex:none}

/* Encarts blancs à bord fin : infos essentielles, bon à savoir, attention, avis */
.opm-encart{margin:26px 0;padding:22px 26px;background:#FFFFFF;border:1px solid #DCD3C2;border-radius:20px}
.opm-art .opm-encart-titre{margin:0 0 10px;font-family:'Excon',sans-serif;font-weight:700;font-size:21px;line-height:1.25;color:#15191A}
.opm-encart>*:last-child{margin-bottom:0}
.opm-encart--essentiel{border:2px solid #173F68;margin-top:34px}

/* Quiz : fond vert vif, réponses en boutons blancs, réponse choisie en foncé */
.opm-quiz-art{margin:34px 0;padding:clamp(22px,4vw,40px);background:#D4483A;border-radius:24px;color:#FFFFFF}
.opm-quiz-art,.opm-art .opm-quiz-art p,.opm-art .opm-quiz-art li,.opm-art .opm-quiz-art legend,.opm-art .opm-quiz-art strong{color:#FFFFFF}
.opm-art .opm-quiz-art-label{margin:0 0 6px;font-size:14px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.9}
html body .opm-art .opm-quiz-art-titre:not(#_){margin:0 0 10px;font-family:'Excon',sans-serif;font-weight:700;color:#FFFFFF;font-size:clamp(26px,2.6vw,34px) !important;line-height:1.15}
.opm-art .opm-quiz-art a{color:#FFFFFF}
.opm-quiz-art-progres{margin:18px 0 6px}
.opm-art .opm-quiz-art-etape{margin:0 0 8px;font-size:15px;font-weight:600}
.opm-quiz-art-barre{display:block;height:8px;border-radius:99px;background:rgba(255,255,255,.28);overflow:hidden}
.opm-quiz-art-barre>span{display:block;height:100%;width:0;background:#FFFFFF;border-radius:99px;transition:width .25s}
.opm-art .opm-quiz-art-questions{margin:16px 0 0}
.opm-art .opm-quiz-art-questions>li{padding:0;margin:0 0 22px}
.opm-art .opm-quiz-art-questions>li::before{display:none}
.opm-quiz-art fieldset{border:0;margin:0;padding:0;min-width:0}
.opm-quiz-art fieldset:focus{outline:none}
.opm-quiz-art legend{display:flex;gap:12px;align-items:flex-start;padding:0;margin:0 0 14px;font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(21px,1.9vw,24px);line-height:1.25}
.opm-quiz-art-num{flex:none;width:32px;height:32px;border-radius:50%;background:#FFFFFF;color:#D4483A;font-size:16px;line-height:32px;text-align:center}
.opm-quiz-art-choix{display:grid;gap:10px}
.opm-quiz-art-choix label{position:relative;display:block;cursor:pointer}
.opm-quiz-art-choix input{position:absolute;opacity:0;width:1px;height:1px}
.opm-quiz-art-choix span{display:flex;align-items:center;min-height:56px;box-sizing:border-box;padding:12px 18px;background:#FFFFFF;border:2px solid #FFFFFF;border-radius:14px;color:#15191A;font-size:18px;font-weight:600;line-height:1.35;transition:background .15s,color .15s}
.opm-quiz-art-choix label:hover span{border-color:#15191A}
.opm-quiz-art-choix input:checked+span{background:#15191A;border-color:#15191A;color:#FFFFFF}
.opm-quiz-art-choix input:focus-visible+span{outline:3px solid #FFFFFF;outline-offset:3px}
.opm-art .opm-quiz-art [hidden]{display:none !important}
.opm-quiz-art-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between;margin:26px 0 0}
.opm-quiz-art button{min-height:52px;padding:0 22px;border-radius:999px;font:700 17px/1 'Switzer',system-ui,sans-serif;cursor:pointer}
.opm-quiz-art .opm-quiz-art-retour{min-height:44px;padding:0 4px;background:transparent;color:#FFFFFF;border:0;border-radius:8px;font-size:16px;text-decoration:underline;text-underline-offset:4px}
.opm-quiz-art-retour::before{content:"90 a0"}
.opm-quiz-art-retour:hover{text-decoration-thickness:2px}
.opm-quiz-art-suite,.opm-quiz-art-refaire{background:#FFFFFF;color:#15191A;border:2px solid #FFFFFF;margin-left:auto}
.opm-quiz-art-refaire{margin:18px 0 0}
.opm-quiz-art-resultat{margin-top:18px;padding:22px 24px;background:#FFFFFF;border-radius:18px}
.opm-art .opm-quiz-art-resultat p,.opm-art .opm-quiz-art-resultat li,.opm-art .opm-quiz-art-resultat strong{color:#15191A}
.opm-art .opm-quiz-art-resultat a{color:#173F68}
.opm-art .opm-quiz-art-verdict{margin:0 0 12px;font-family:'Excon',sans-serif;font-weight:700;font-size:24px;line-height:1.25;color:#D4483A}
.opm-quiz-art-verdict:focus{outline:none}
.opm-art .opm-quiz-art-note{margin:16px 0 0;font-size:15px;opacity:.92}
.opm-quiz-art--etapes .opm-quiz-art-questions>li{margin:0}

/* Tableau : en carte blanche par ligne sur téléphone */
.opm-art-tableau{margin:22px 0 26px;overflow-x:auto}
.opm-art-tableau table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #DCD3C2;border-radius:18px;overflow:hidden;background:#FFFFFF}
.opm-art-tableau th,.opm-art-tableau td{padding:15px 18px;text-align:left;vertical-align:top;font-size:16.5px;line-height:1.5;border:0}
.opm-art .opm-art-tableau th{background:#173F68;color:#FFFFFF;font-family:'Excon',sans-serif;font-weight:700;font-size:17.5px;line-height:1.3;padding-top:17px;padding-bottom:17px}
.opm-art-tableau tbody tr:nth-child(even) td{background:#F6F2EA}
.opm-art .opm-art-tableau td:first-child{font-family:'Excon',sans-serif;font-weight:700;font-size:18px;color:#173F68}

/* Boutons vers une page de service ou le devis */
.opm-art-bouton{margin:24px 0 8px}
.opm-art .opm-art-bouton a{display:inline-flex;align-items:center;gap:10px;min-height:58px;box-sizing:border-box;padding:0 28px;border-radius:999px;background:#D4483A;color:#FFFFFF;font-size:19px;font-weight:700;text-decoration:none}
.opm-art .opm-art-bouton a:hover{background:#B4392D;color:#FFFFFF}

/* Questions fréquentes */
.opm-art-faq details{border:1px solid #DCD3C2;border-radius:16px;margin:0 0 12px;background:#FFFFFF}
.opm-art-faq summary{list-style:none;cursor:pointer;padding:18px 54px 18px 22px;position:relative;font-family:'Excon',sans-serif;font-weight:700;font-size:20px;line-height:1.3;color:#15191A}
.opm-art-faq summary::-webkit-details-marker{display:none}
.opm-art-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:600;color:#173F68}
.opm-art-faq details[open] summary::after{content:"\2212"}
.opm-art-faq summary:focus,.opm-art-faq summary:focus-visible{outline:none}
.opm-art-faq details>div{padding:0 22px 6px}

/* Autrice et sources */
.opm-art-auteur{display:flex;gap:18px;align-items:flex-start;margin:44px 0 18px;padding:22px 24px;border:1px solid #DCD3C2;border-radius:20px}
.opm-art-auteur-initiales{flex:none;width:56px;height:56px;border-radius:50%;background:#173F68;color:#FFFFFF;font:700 20px/56px 'Excon',sans-serif;text-align:center}
.opm-art .opm-art-auteur p{margin:0;font-size:16.5px;line-height:1.6}
.opm-art-sources{padding:20px 24px;border:1px solid #DCD3C2;border-radius:20px}
.opm-art .opm-art-sources-titre{margin:0 0 10px;font-family:'Excon',sans-serif;font-weight:700;font-size:19px}
.opm-art .opm-art-sources li{font-size:16px;line-height:1.55;margin-bottom:8px}

/* Page Conseils : cartes des articles */
.opm-conseils-tete{max-width:1000px;margin:0 auto clamp(26px,3vw,40px)}
.opm-cartes-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);max-width:1320px;margin:0 auto}
.opm-carte-art{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E6DFD0;border-radius:22px;overflow:hidden;text-decoration:none !important;color:#15191A}
.opm-carte-art-photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#F3EFE6}
.opm-carte-art-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.opm-carte-art:hover .opm-carte-art-photo img{transform:scale(1.04)}
.opm-carte-art-corps{display:flex;flex-direction:column;gap:10px;flex:1;padding:22px 24px 24px}
.opm-carte-art-date{font-size:14px;font-weight:600;color:#56625F}
.opm-carte-art-titre{font-family:'Excon',sans-serif;font-weight:700;font-size:clamp(22px,1.8vw,26px);line-height:1.2;color:#15191A}
.opm-carte-art-texte{font-size:16.5px;line-height:1.6;color:#3D4A58}
.opm-carte-art-suite{margin-top:auto;font-weight:700;font-size:17px;color:#173F68}

@media (max-width:1000px){
	.opm-cartes-art{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
	.opm-art-feuille{border-radius:20px}
	html body .opm-art h1:not(#_){font-size:clamp(34px,9.4vw,44px) !important}
	html body .opm-art h3:not(#_){font-size:22px !important}
	.opm-art p,.opm-art li{font-size:17.5px}
	.opm-art .opm-art-chapo{font-size:18.5px}
	.opm-art-photo{margin-top:36px;border-radius:16px;aspect-ratio:4/3}
	.opm-encart{padding:18px 18px}
	.opm-quiz-art{margin-left:-6px;margin-right:-6px;border-radius:20px}
	.opm-quiz-art button{min-height:50px;padding:0 18px;font-size:17px}
	.opm-art .opm-art-bouton a{font-size:18px;min-height:56px;padding:0 22px}
	.opm-art .opm-resumer-liens{gap:6px}
	.opm-art .opm-resumer-liens a{padding:0 11px;font-size:15px;gap:6px}
	.opm-art-tableau{overflow:visible}
	.opm-art-tableau table,.opm-art-tableau tbody,.opm-art-tableau tr,.opm-art-tableau td{display:block;width:100%;box-sizing:border-box}
	.opm-art-tableau table{border:0;border-radius:0}
	.opm-art-tableau thead{display:none}
	.opm-art-tableau tr{border:1px solid #DCD3C2;border-radius:16px;margin:0 0 14px;padding:0 0 10px;background:#FFFFFF;overflow:hidden}
	.opm-art-tableau tbody tr:nth-child(even) td{background:transparent}
	.opm-art-tableau td{border:0;padding:6px 16px}
	.opm-art .opm-art-tableau td:first-child{background:#173F68;color:#FFFFFF;padding:14px 16px;margin:0 0 6px}
	.opm-art-tableau td[data-col]::before{content:attr(data-col);display:block;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#56625F;margin-bottom:2px}
	.opm-art-tableau td:first-child{font-family:'Excon',sans-serif;font-size:20px}
	.opm-art-tableau td:first-child::before{display:none}
	.opm-cartes-art{grid-template-columns:1fr}
	.opm-art-faq summary{font-size:18.5px;padding:16px 48px 16px 18px}
	.opm-art-faq details>div{padding:0 18px 4px}
}

