/* Chargé sur toutes les pages (Elementor compris) : boutons, WhatsApp flottant, barre d'appel mobile,
   encadré [erm_appel], formulaire [erm_formulaire]. Couleurs en dur pour ne dépendre d'aucun thème. */

.erm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-weight:600;font-size:1rem;line-height:1.2;border-radius:999px;padding:.95rem 1.5rem;border:0;cursor:pointer;text-decoration:none!important;font-family:inherit;transition:transform .25s cubic-bezier(.22,.9,.24,1),background .25s,box-shadow .25s}
.erm-btn:hover{transform:translateY(-2px)}
.erm-btn svg{width:18px;height:18px;flex:0 0 auto}
.erm-btn-r{background:#B11226;color:#fff!important;box-shadow:0 14px 30px -14px rgba(177,18,38,.7)}
.erm-btn-r:hover,.erm-btn-r:focus-visible{background:#8E0E1E}
.erm-btn-o{background:#fff;color:#1E293B!important;border:1.5px solid #E3DED2}
.erm-btn-wa{background:#128C4A;color:#fff!important}
.erm-btn-wa:hover{background:#0E7a3f}
.erm-btn-wa svg{width:20px;height:20px}
.erm-btn:disabled{opacity:.6;cursor:wait;transform:none}

/* WhatsApp flottant (ordinateur) */
.erm-wa{position:fixed;right:22px;bottom:22px;z-index:9990;display:flex;align-items:center;gap:.7rem;background:#25D366;color:#fff!important;border-radius:999px;height:60px;max-width:60px;overflow:hidden;text-decoration:none!important;box-shadow:0 10px 26px -8px rgba(0,0,0,.45);transition:max-width .5s cubic-bezier(.22,.9,.24,1),opacity .4s,transform .4s;opacity:0;transform:translateY(20px);pointer-events:none}
.erm-wa.on{opacity:1;transform:none;pointer-events:auto}
.erm-wa svg{flex:0 0 60px;width:60px;height:30px}
.erm-wa span{white-space:nowrap;font-weight:600;font-size:.95rem;padding-right:1.3rem;opacity:0;transition:opacity .3s;color:#0b3d1f}
.erm-wa:hover,.erm-wa:focus-visible,.erm-wa.peek{max-width:420px}
.erm-wa:hover span,.erm-wa:focus-visible span,.erm-wa.peek span{opacity:1}

/* barre d'appel (mobile) */
.erm-callbar{display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:9991;gap:.6rem;transform:translateY(150%);transition:transform .4s cubic-bezier(.22,.9,.24,1)}
.erm-callbar.on{transform:none}
.erm-callbar .erm-btn{flex:1}
@media (max-width:760px){
  .erm-callbar{display:flex}
  .erm-wa{display:none}
  body{padding-bottom:84px}
}

/* encadré d'appel [erm_appel] */
.erm-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem;background:#1E293B;color:#e2e8f0;border-radius:20px;padding:24px 28px;margin:2.2rem 0}
.erm-cta p{margin:0}
.erm-cta .erm-cta-t{font-weight:800;font-size:1.2rem;color:#fff;margin-bottom:.2rem}
.erm-cta-b{display:flex;flex-wrap:wrap;gap:.6rem}

/* formulaire de demande */
.erm-form{display:grid;gap:.8rem;max-width:480px}
.erm-demande [hidden],.erm [hidden]{display:none!important}
.erm-champ{display:grid;gap:.3rem;font-size:.92rem;font-weight:500;color:#1E293B}
.erm-champ em{font-style:normal;font-weight:400;color:#64748B}
.erm-form input,.erm-form select,.erm-form textarea{font:inherit;font-size:1rem;padding:.85rem 1rem;border-radius:12px;border:1.5px solid #E3DED2;background:#fff;color:#1A2130;width:100%}
.erm-form input:focus,.erm-form select:focus,.erm-form textarea:focus{outline:2px solid #B11226;outline-offset:1px;border-color:#B11226}
.erm-form input[type=file]{padding:.6rem;font-size:.9rem}
.erm-accord{display:flex;gap:.6rem;align-items:flex-start;font-size:.85rem;color:#475569;line-height:1.45}
.erm-accord input{width:18px;height:18px;flex:0 0 18px;margin-top:.15rem;accent-color:#B11226}
.erm-accord a{color:#B11226;text-decoration:underline}
.erm-piege{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.erm-err{color:#B11226;font-weight:600;font-size:.92rem;margin:0}
.erm-ok{background:#fff;border:1.5px solid #128C4A;border-radius:16px;padding:18px 20px;max-width:480px}
.erm-ok p{margin:0}
.erm-ok .erm-ok-t{font-weight:800;color:#0E7a3f;margin-bottom:.3rem}
.erm-ok a{color:#B11226;font-weight:600}

/* [erm_coordonnees] et [erm_volets] (pages Elementor) */
.erm-coord{max-width:560px;font-size:1.05rem;line-height:1.7}
.erm-coord address{font-style:normal;margin-bottom:.8rem}
.erm-coord p{margin:0 0 .8rem}
.erm-coord a:not(.erm-btn){color:#B11226;font-weight:600}
.erm-volets{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:900px;margin:1.5rem auto}
.erm-volets a{display:flex;flex-direction:column;gap:.4rem;background:#fff;border:1.5px solid #E3DED2;border-radius:18px;padding:22px;text-decoration:none!important;color:#1A2130;transition:transform .25s,border-color .25s}
.erm-volets a:hover,.erm-volets a:focus-visible{transform:translateY(-3px);border-color:#B11226}
.erm-volets strong{font-size:1.15rem;color:#1E293B}
.erm-volets em{font-style:normal;font-weight:600;color:#B11226;margin-top:.3rem}
@media (max-width:760px){.erm-volets{grid-template-columns:1fr}}

/* ===== En-tête du site (toutes les pages) ===== */
.erm-hd{position:sticky;top:0;z-index:9980;background:#fff;border-bottom:1px solid #E3DED2;font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;transition:box-shadow .3s}
.erm-hd.sc{box-shadow:0 10px 30px -18px rgba(15,22,34,.35)}
.admin-bar .erm-hd{top:32px}
.erm-hd *{box-sizing:border-box}
.erm-hd-in{max-width:1240px;margin:0 auto;padding:0 20px;height:76px;display:flex;align-items:center;gap:16px}
.erm-hd-logo{flex:0 0 auto}
.erm-hd .erm-hd-logo img{height:50px;width:auto;max-width:none;display:block}
.erm-nav{margin-left:auto}
.erm-nav ul{list-style:none;margin:0;padding:0}
.erm-nav-l{display:flex;align-items:center;gap:2px}
.erm-nav-l>li{position:relative}
.erm-nav-l a,.erm-nav-b{display:flex;align-items:center;gap:5px;padding:10px 9px;font-weight:600;font-size:.93rem;line-height:1.2;color:#1E293B!important;background:none;border:0;border-radius:10px;cursor:pointer;text-decoration:none!important;white-space:nowrap;font-family:inherit}
.erm-nav-l a:hover,.erm-nav-b:hover,.erm-nav-l a:focus-visible,.erm-nav-b:focus-visible{background:#FAF7F0;color:#B11226!important}
.erm-nav-l a[aria-current=page]{color:#B11226!important}
.erm-chev{width:15px;height:15px;transition:transform .25s}
.erm-nav-b[aria-expanded=true] .erm-chev{transform:rotate(180deg)}
.erm-sm{display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:270px;background:#fff;border:1px solid #E3DED2;border-radius:16px;box-shadow:0 24px 48px -24px rgba(15,22,34,.45);padding:8px;z-index:2}
.erm-sm::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}
.erm-sm a{padding:11px 14px;font-weight:500}
.erm-nav-g.ouvert>.erm-sm{display:block}
@media (min-width:1100px) and (hover:hover){.erm-nav-g:hover .erm-sm{display:block}}
.erm-hd-tel{display:flex;align-items:center;gap:10px;flex:0 0 auto;background:#B11226;color:#fff!important;border-radius:999px;padding:8px 18px 8px 14px;text-decoration:none!important;font-weight:700;font-size:1rem;line-height:1.15;box-shadow:0 12px 26px -14px rgba(177,18,38,.8)}
.erm-hd-tel:hover{background:#8E0E1E}
.erm-hd-tel svg{width:20px;height:20px;flex:0 0 20px}
.erm-hd-tel small{display:block;font-size:.66rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.85}
.erm-burger,.erm-nav-cta{display:none}
@media (max-width:1399px){.erm-hd-tel small{display:none}.erm-hd-tel{padding:11px 18px 11px 14px}}

@media (max-width:1099px){
  .erm-hd-in{height:64px;gap:10px}
  .erm-hd .erm-hd-logo img{height:40px}
  .erm-hd-tel{margin-left:auto;width:46px;height:46px;padding:0;justify-content:center}
  .erm-hd-tel span{display:none}
  .erm-burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;padding:0 12px;border:1.5px solid #E3DED2;border-radius:12px;background:#fff;cursor:pointer}
  .erm-burger span{display:block;height:2px;border-radius:2px;background:#1E293B;transition:transform .3s,opacity .3s}
  .erm-burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .erm-burger[aria-expanded=true] span:nth-child(2){opacity:0}
  .erm-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .erm-nav{position:fixed;left:0;right:0;top:64px;bottom:0;margin:0;background:#fff;overflow-y:auto;overscroll-behavior:contain;padding:8px 20px 40px;transform:translateX(100%);visibility:hidden;transition:transform .35s cubic-bezier(.22,.9,.24,1),visibility 0s .35s}
  .admin-bar .erm-nav{top:110px}
  .erm-nav.open{transform:none;visibility:visible;transition:transform .35s cubic-bezier(.22,.9,.24,1)}
  .erm-nav-l{flex-direction:column;align-items:stretch;gap:0}
  .erm-nav-l>li{border-bottom:1px solid #EFEBE2}
  .erm-nav-l a,.erm-nav-b{width:100%;justify-content:space-between;padding:16px 4px;font-size:1.1rem;border-radius:0}
  .erm-sm{position:static;min-width:0;border:0;box-shadow:none;border-radius:0;padding:0 0 10px 12px}
  .erm-sm a{font-size:1rem;padding:12px 4px;color:#334155!important}
  .erm-nav-cta{display:grid;gap:10px;margin-top:24px}
  .erm-nav-cta .erm-btn{width:100%}
  .erm-nav-cta p{margin:6px 0 0;font-size:.9rem;color:#64748B;text-align:center;line-height:1.5}
  body.erm-menu-ouvert{overflow:hidden}
  body.erm-menu-ouvert .erm-callbar,body.erm-menu-ouvert .erm-wa{display:none}
}
@media (max-width:782px){.admin-bar .erm-hd{top:46px}.admin-bar .erm-nav{top:110px}}
@media (max-width:600px){.admin-bar .erm-hd{top:0}}
@media (prefers-reduced-motion:reduce){.erm-nav,.erm-burger span,.erm-chev{transition:none!important}}

/* menu : parent avec son propre lien (Dépannage) + entrée urgence mise en avant */
.erm-nav-ligne{display:flex;align-items:center}
.erm-nav-l .erm-nav-ligne a{justify-content:flex-start;gap:8px}
.erm-nav-l .erm-nav-b-seul{padding:10px 6px 10px 2px}
.erm-nav-urg>.erm-nav-ligne>a{color:#B11226!important;font-weight:700}
.erm-pouls{width:8px;height:8px;border-radius:50%;background:#B11226;box-shadow:0 0 0 0 rgba(177,18,38,.55);animation:erm-pouls 1.8s infinite;flex:0 0 8px}
@keyframes erm-pouls{70%{box-shadow:0 0 0 8px rgba(177,18,38,0)}100%{box-shadow:0 0 0 0 rgba(177,18,38,0)}}
.erm-sm-info{font-size:.78rem;color:#64748B;padding:8px 14px 10px;border-bottom:1px solid #EFEBE2;margin-bottom:4px}
@media (max-width:1099px){
  .erm-nav-ligne a{flex:1}
  .erm-nav-l .erm-nav-b-seul{width:auto;padding:16px 4px 16px 16px}
  .erm-nav-urg{background:#FDF2F3;margin:0 -20px;padding:0 20px}
  .erm-sm-info{padding:0 4px 8px;border:0}
}
@media (prefers-reduced-motion:reduce){.erm-pouls{animation:none}}

/* sous-menus : icône + titre + ligne de description (mini mega-menu) */
.erm-sm{min-width:340px;padding:10px}
.erm-nav-l .erm-sm-a{display:flex;align-items:center;gap:12px;padding:9px 10px;white-space:normal;border-radius:12px}
.erm-sm-ic{flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:#FAF7F0;border:1px solid #EFEBE2;display:grid;place-items:center;color:#B11226;transition:background .2s,color .2s}
.erm-sm-ic .erm-ico{width:20px;height:20px}
.erm-sm-t{display:flex;flex-direction:column;gap:1px;line-height:1.25;font-weight:600;color:#1E293B}
.erm-sm-t small{font-size:.8rem;font-weight:400;color:#64748B}
.erm-nav-l .erm-sm-a:hover .erm-sm-ic,.erm-nav-l .erm-sm-a:focus-visible .erm-sm-ic{background:#B11226;border-color:#B11226;color:#fff}
.erm-nav-l .erm-sm-a:hover .erm-sm-t,.erm-nav-l .erm-sm-a[aria-current=page] .erm-sm-t{color:#B11226}
@media (max-width:1099px){
  .erm-sm{min-width:0;padding:0 0 10px}
  .erm-nav-l .erm-sm-a{padding:10px 4px;justify-content:flex-start}
  .erm-sm-ic{flex-basis:34px;width:34px;height:34px}
  .erm-sm-t small{display:none}
}
