/* MDF Menu 1.0.2 — port de la maquette V4 */
.mdfm{--mdfm-o:#FF6000;--mdfm-o-fonce:#E05500;--mdfm-o-clair:#FFF4EC;--mdfm-encre:#16161A;--mdfm-doux:#6C6C74;--mdfm-ligne:#EAEAEA;--mdfm-fond:#FAF9F8;--mdfm-r:6px;--mdfm-t:170ms cubic-bezier(.4,0,.2,1);font-family:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.4;color:var(--mdfm-encre);display:block;width:100%}
/* Reset contre le kit Elementor (a{color}) et Hello Elementor (button/a) — tous les états */
.mdfm.mdfm a{color:inherit;text-decoration:none;box-shadow:none}
.mdfm.mdfm a:hover,.mdfm.mdfm a:focus,.mdfm.mdfm a:active{text-decoration:none}
.mdfm.mdfm button{color:inherit;background:transparent;border:0;border-radius:0;padding:0;font:inherit;line-height:inherit;text-transform:none;letter-spacing:normal;box-shadow:none;transition:none;-webkit-appearance:none;appearance:none}
.mdfm.mdfm button:focus,.mdfm.mdfm button:active{outline:0}
.mdfm.mdfm *,.mdfm.mdfm *::before,.mdfm.mdfm *::after{box-sizing:border-box}
.mdfm.mdfm a{text-decoration:none;color:inherit}
.mdfm.mdfm ul{list-style:none;margin:0;padding:0}
.mdfm.mdfm li{margin:0;padding:0}
.mdfm.mdfm button{font-family:inherit;cursor:pointer;margin:0}
.mdfm.mdfm img{max-width:100%;height:auto;border:0}
.mdfm.mdfm .mdfm-img-vide{display:block;background:#EEE;border-radius:var(--mdfm-r)}

/* ---------- barre ---------- */
.mdfm.mdfm .mdfm-barre{background:#fff;border-bottom:1px solid var(--mdfm-ligne);position:relative;z-index:40}
.mdfm.mdfm .mdfm-barre-in{max-width:1320px;margin:0 auto;padding:11px 24px;display:flex;align-items:center;gap:8px}
.mdfm.mdfm .mdfm-btn-cat{display:inline-flex;align-items:center;gap:11px;padding:11px 20px;border:1.5px solid var(--mdfm-o);border-radius:var(--mdfm-r);background:#fff;color:var(--mdfm-o);font-size:14.5px;font-weight:600;line-height:1.2;transition:background var(--mdfm-t),color var(--mdfm-t)}
.mdfm.mdfm .mdfm-btn-cat:hover,.mdfm.mdfm .mdfm-btn-cat[aria-expanded=true]{background:var(--mdfm-o);color:#fff}
.mdfm.mdfm .mdfm-burg{display:inline-flex;flex-direction:column;gap:3px;width:16px;flex:0 0 16px}
.mdfm.mdfm .mdfm-burg i{display:block;height:2px;background:currentColor;border-radius:2px}
.mdfm.mdfm .mdfm-l{display:inline-flex;align-items:center;gap:7px;padding:11px 15px;font-size:14.5px;font-weight:500;line-height:1.2;color:var(--mdfm-encre);border-radius:var(--mdfm-r);background:none;border:0;transition:color var(--mdfm-t),background var(--mdfm-t)}
.mdfm.mdfm .mdfm-l:hover,.mdfm.mdfm .mdfm-ev.on>.mdfm-l{color:var(--mdfm-o);background:var(--mdfm-o-clair)}
.mdfm.mdfm .mdfm-l.mdfm-promo{color:var(--mdfm-o);font-weight:600}
.mdfm.mdfm .mdfm-chev{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px;transition:transform var(--mdfm-t)}
.mdfm.mdfm .mdfm-ev.on .mdfm-chev{transform:rotate(225deg);margin-top:3px}
.mdfm.mdfm .mdfm-pousse{flex:1}
.mdfm.mdfm .mdfm-btn-devis{display:inline-flex;align-items:center;padding:11px 18px;background:var(--mdfm-o);color:#fff;border-radius:var(--mdfm-r);font-size:14px;font-weight:500;line-height:1.2;transition:background var(--mdfm-t)}
.mdfm.mdfm .mdfm-btn-devis:hover{background:var(--mdfm-o-fonce);color:#fff}

/* ---------- panneau Événement (desktop) ---------- */
.mdfm.mdfm .mdfm-ev{position:static}
.mdfm.mdfm .mdfm-pan{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--mdfm-ligne);border-bottom:1px solid var(--mdfm-ligne);box-shadow:0 18px 40px rgba(0,0,0,.12);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity var(--mdfm-t),visibility var(--mdfm-t),transform var(--mdfm-t);z-index:45}
.mdfm.mdfm .mdfm-ev.on .mdfm-pan{opacity:1;visibility:visible;transform:none}
.mdfm.mdfm .mdfm-pan-in{max-width:1320px;margin:0 auto;padding:26px 24px 30px}
.mdfm.mdfm .mdfm-themes{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;align-items:start}
.mdfm.mdfm .mdfm-th-carte>a:first-child{display:block;position:relative;border-radius:var(--mdfm-r);overflow:hidden;background:#EEE;aspect-ratio:3/4}
.mdfm.mdfm .mdfm-th-carte>a:first-child img,.mdfm.mdfm .mdfm-th-carte>a:first-child .mdfm-img-vide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform 400ms ease}
.mdfm.mdfm .mdfm-th-carte:hover>a:first-child img{transform:scale(1.04)}
.mdfm.mdfm .mdfm-th-titre{position:absolute;left:0;right:0;bottom:0;padding:38px 12px 12px;color:#fff;font-size:15px;font-weight:600;line-height:1.25;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,0))}
.mdfm.mdfm .mdfm-th-liste{margin-top:10px}
.mdfm.mdfm .mdfm-th-liste a{display:block;padding:5px 0;font-size:13px;line-height:1.35;color:#3C3C42;transition:color var(--mdfm-t)}
.mdfm.mdfm .mdfm-th-liste a:hover{color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-th-liste .mdfm-tout{color:var(--mdfm-o);font-weight:500;font-size:12.5px;margin-top:3px}

/* carte Votre événement */
.mdfm.mdfm .mdfm-themes .mdfm-th-cta>a.mdfm-cta{display:block;position:relative;aspect-ratio:3/4;border-radius:var(--mdfm-r);overflow:hidden;background:#16161A;box-shadow:inset 0 0 0 2px var(--mdfm-o)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta>a.mdfm-cta>img,.mdfm.mdfm .mdfm-themes .mdfm-th-cta>a.mdfm-cta>.mdfm-img-vide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 400ms ease}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta:hover>a.mdfm-cta>img{transform:scale(1.06)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-voile{position:absolute;inset:0;display:block;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.1) 100%);transition:background var(--mdfm-t)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta:hover .mdfm-cta-voile{background:linear-gradient(to top,rgba(224,85,0,.94) 0%,rgba(224,85,0,.6) 45%,rgba(0,0,0,.1) 100%)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-txt{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:6px;padding:14px;color:#fff}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-sur{display:block;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mdfm-o);transition:color var(--mdfm-t)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta:hover .mdfm-cta-sur{color:#fff}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-titre{display:block;font-size:18px;font-weight:600;line-height:1.15}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-desc{display:block;font-size:12.5px;line-height:1.4;opacity:.94}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta .mdfm-cta-btn{display:inline-flex;align-self:flex-start;margin-top:4px;padding:8px 12px;background:var(--mdfm-o);color:#fff;border-radius:var(--mdfm-r);font-size:12.5px;font-weight:600;line-height:1.2;transition:background var(--mdfm-t),color var(--mdfm-t)}
.mdfm.mdfm .mdfm-themes .mdfm-th-cta:hover .mdfm-cta-btn{background:#fff;color:var(--mdfm-o-fonce)}

/* ---------- tiroir ---------- */
.mdfm.mdfm .mdfm-voile{position:fixed;inset:0;background:rgba(10,10,12,.45);opacity:0;visibility:hidden;transition:opacity var(--mdfm-t),visibility var(--mdfm-t);z-index:99990}
.mdfm.mdfm .mdfm-voile.on{opacity:1;visibility:visible}
.mdfm.mdfm .mdfm-tiroir{position:fixed;top:0;left:0;bottom:0;width:440px;max-width:100%;background:#fff;z-index:99995;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform 230ms cubic-bezier(.4,0,.2,1);box-shadow:0 0 40px rgba(0,0,0,.2);visibility:hidden}
.mdfm.mdfm .mdfm-tiroir.on{transform:translateX(0);visibility:visible}
.mdfm.mdfm .mdfm-t-tete{display:flex;align-items:center;justify-content:space-between;padding:14px 12px 14px 20px;border-bottom:1px solid var(--mdfm-ligne);flex:0 0 auto}
.mdfm.mdfm .mdfm-t-tete b{font-size:16px;font-weight:600}
.mdfm.mdfm .mdfm-t-fermer{background:none;border:0;font-size:30px;line-height:1;color:var(--mdfm-doux);padding:8px 14px;min-width:48px;min-height:48px;transition:color var(--mdfm-t)}
.mdfm.mdfm .mdfm-t-fermer:hover{color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-t-corps{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:6px 0 14px}
.mdfm.mdfm .mdfm-t-pied{flex:0 0 auto;padding:14px 20px;border-top:1px solid var(--mdfm-ligne);background:#fff}
.mdfm.mdfm .mdfm-t-pied a{display:flex;align-items:center;justify-content:center;padding:14px;background:var(--mdfm-o);color:#fff;border-radius:var(--mdfm-r);font-size:14.5px;font-weight:500;min-height:48px;transition:background var(--mdfm-t)}
.mdfm.mdfm .mdfm-t-pied a:hover{background:var(--mdfm-o-fonce);color:#fff}
.mdfm.mdfm .mdfm-sec{display:block;padding:16px 20px 7px;font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-direct{display:flex;align-items:center;padding:14px 20px;font-size:15px;font-weight:500;min-height:50px;border-bottom:1px solid var(--mdfm-ligne);transition:background var(--mdfm-t),color var(--mdfm-t)}
.mdfm.mdfm .mdfm-direct:hover{background:var(--mdfm-o-clair);color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-direct.mdfm-promo{color:var(--mdfm-o);font-weight:600}
.mdfm.mdfm .mdfm-acc>li{border-bottom:1px solid var(--mdfm-ligne)}
.mdfm.mdfm .mdfm-acc-btn{display:flex;align-items:center;gap:13px;width:100%;background:none;border:0;padding:10px 18px 10px 20px;min-height:66px;text-align:left;color:var(--mdfm-encre);transition:background var(--mdfm-t)}
.mdfm.mdfm .mdfm-acc-btn:hover{background:var(--mdfm-fond)}
.mdfm.mdfm .mdfm-acc>li.on>.mdfm-acc-btn{background:var(--mdfm-o-clair)}
.mdfm.mdfm .mdfm-acc-btn img,.mdfm.mdfm .mdfm-acc-btn .mdfm-img-vide{width:44px;height:44px;flex:0 0 44px;object-fit:cover;border-radius:var(--mdfm-r);background:#EEE;box-shadow:0 0 0 1px var(--mdfm-ligne);transition:box-shadow var(--mdfm-t)}
.mdfm.mdfm .mdfm-acc>li.on>.mdfm-acc-btn img{box-shadow:0 0 0 2px var(--mdfm-o)}
.mdfm.mdfm .mdfm-acc-nom{flex:1;font-size:14.5px;font-weight:500;line-height:1.3}
.mdfm.mdfm .mdfm-acc>li.on>.mdfm-acc-btn .mdfm-acc-nom{color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-fleche{width:10px;height:10px;flex:0 0 10px;border-right:2px solid var(--mdfm-doux);border-bottom:2px solid var(--mdfm-doux);transform:rotate(-45deg);transition:transform var(--mdfm-t),border-color var(--mdfm-t)}
.mdfm.mdfm .mdfm-acc>li.on>.mdfm-acc-btn .mdfm-fleche{transform:rotate(45deg);border-color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-acc-corps{display:grid;grid-template-rows:0fr;transition:grid-template-rows 190ms cubic-bezier(.4,0,.2,1)}
.mdfm.mdfm .mdfm-acc>li.on>.mdfm-acc-corps{grid-template-rows:1fr}
.mdfm.mdfm .mdfm-acc-corps>div{overflow:hidden;min-height:0}
.mdfm.mdfm .mdfm-acc-liste{padding:0 0 10px}
.mdfm.mdfm .mdfm-acc-liste a{display:flex;align-items:center;gap:8px;padding:10px 20px 10px 46px;min-height:44px;font-size:14.5px;line-height:1.35;color:#3C3C42;transition:color var(--mdfm-t),background var(--mdfm-t)}
.mdfm.mdfm .mdfm-acc-liste a:hover{color:var(--mdfm-o);background:var(--mdfm-o-clair)}
.mdfm.mdfm .mdfm-acc-liste .mdfm-tout{font-size:13px;font-weight:500;color:var(--mdfm-o)}
.mdfm.mdfm .mdfm-grp{display:flex;align-items:center;gap:9px;margin:0;padding:9px 20px;background:#F0EDE9;border-top:1px solid #E3DED8;border-bottom:1px solid #E3DED8;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#55555E;cursor:default;user-select:none;-webkit-user-select:none}
.mdfm.mdfm .mdfm-grp::before{content:'';width:4px;height:14px;flex:0 0 4px;background:var(--mdfm-o);border-radius:2px}
.mdfm.mdfm .mdfm-acc-liste>li:first-child .mdfm-grp{border-top:0}
.mdfm.mdfm .mdfm-past{font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:3px;background:#F0F0F0;color:#6A6A6A;white-space:nowrap}
.mdfm.mdfm .mdfm-mob{display:none}

/* ---------- mobile ---------- */
@media (prefers-reduced-motion:reduce){.mdfm.mdfm *{transition:none !important}}
.mdfm.mdfm a:focus-visible,.mdfm.mdfm button:focus-visible{outline:2px solid var(--mdfm-o);outline-offset:2px;border-radius:3px}
body.mdfm-verrou{overflow:hidden}
