/* MJ Boutique - NE PAS MODIFIER. Valeurs reprises de la maquette v9. */
html.mjb-no-scroll,html.mjb-no-scroll body{overflow:hidden;}

/* Fleches de la barre de categories (>= 900px) */
.elementor-location-archive nav{position:relative;}
nav .mjb-ql-arrow{position:absolute;top:0;bottom:0;width:auto;min-width:56px;display:none;align-items:center;background:#FFFFFF;border:0 !important;border-radius:0 !important;box-shadow:none !important;z-index:2;cursor:pointer;color:#111111 !important;padding:0;margin:0;}
nav .mjb-ql-arrow:hover,nav .mjb-ql-arrow:focus{border:0 !important;color:#111111 !important;}
nav .mjb-ql-arrow:focus-visible{outline:2px solid #111111;outline-offset:-4px;}
nav .mjb-ql-arrow.prev,nav .mjb-ql-arrow.prev:hover,nav .mjb-ql-arrow.prev:focus{left:0;justify-content:flex-start;padding:0 0 0 clamp(16px,5vw,64px);background:linear-gradient(90deg,#FFFFFF 55%,transparent) !important;}
nav .mjb-ql-arrow.next,nav .mjb-ql-arrow.next:hover,nav .mjb-ql-arrow.next:focus{right:0;justify-content:flex-end;padding:0 clamp(16px,5vw,64px) 0 0;background:linear-gradient(270deg,#FFFFFF 55%,transparent) !important;}
nav .mjb-ql-arrow svg{width:22px;height:8px;stroke:#111111;stroke-width:1;fill:none;}
@media(min-width:900px){nav .mjb-ql-arrow{display:flex;}nav .mjb-ql-arrow.mjb-off{display:none;}}

/* Trier par */
.mjb-sortsel{position:relative;display:inline-block;}
.mjb-sortsel select{-webkit-appearance:none;appearance:none;border:none;background:none;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:14px;letter-spacing:.03em;line-height:1.2;padding:0 20px 0 0;margin:0;cursor:pointer;color:#111111;border-radius:0;}
.mjb-sortsel select:focus{outline:none;}
.mjb-sortsel select:focus-visible{outline:2px solid #111111;outline-offset:3px;}
.mjb-sortsel::after{content:'';position:absolute;right:2px;top:50%;width:7px;height:7px;border-right:1px solid #111111;border-bottom:1px solid #111111;transform:translateY(-70%) rotate(45deg);pointer-events:none;}

/* Voile + tiroir */
.mjb-scrim{position:fixed;inset:0;background:rgba(20,18,15,.44);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s;z-index:9980;}
.mjb-scrim.open{opacity:1;visibility:visible;}
.mjb-drawer{position:fixed;top:0;right:0;height:100%;width:min(430px,100%);background:#FFFFFF;z-index:9990;transform:translateX(100%);transition:transform .42s cubic-bezier(.5,0,.2,1);display:flex;flex-direction:column;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.55;color:#111111;}
.mjb-drawer.open{transform:none;}
.mjb-drawer *{box-sizing:border-box;}
.mjb-drawer button,.mjb-drawer button:hover,.mjb-drawer button:focus{font-family:inherit;font-weight:300;cursor:pointer;border:0;border-radius:0 !important;background:none;color:#111111;line-height:1.2;box-shadow:none;text-transform:none;white-space:normal;}
.mjb-drawer button:focus{outline:none;}
.mjb-drawer button:focus-visible{outline:2px solid #111111;outline-offset:3px;}
.mjb-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid #E6E6E4;flex:0 0 auto;}
.mjb-drawer-head h3{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:20px;letter-spacing:.01em;margin:0;color:#111111;}
.mjb-drawer-head h3 span{font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:13px;color:#6B6B6B;letter-spacing:0;}
.mjb-x,.mjb-x:hover,.mjb-x:focus{font-size:22px !important;line-height:1 !important;padding:0 !important;background:none !important;border:0 !important;color:#111111 !important;}
.mjb-drawer-body{overflow-y:auto;flex:1 1 auto;padding:0;}
.mjb-acc{border-bottom:1px solid #E6E6E4;}
.mjb-acc-title{margin:0;padding:20px 26px 12px;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.55;letter-spacing:.02em;color:#111111;}
.mjb-acc-panel{display:block;padding:0 26px 22px;}
.mjb-fopt{display:block;padding:7px 0;font-size:14.5px;color:#6B6B6B;cursor:pointer;position:relative;}
.mjb-fopt input{position:absolute;opacity:0;pointer-events:none;}
.mjb-box{display:inline-block;width:14px;height:14px;border:1px solid #6B6B6B;margin-right:10px;vertical-align:-2px;position:relative;}
.mjb-fopt input:checked+.mjb-box{background:#111111;border-color:#111111;}
.mjb-fopt input:checked+.mjb-box::after{content:'';position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid #FFFFFF;border-width:0 1px 1px 0;transform:rotate(45deg);}
.mjb-fopt input:checked~.mjb-txt{color:#111111;}
.mjb-fopt input:focus-visible+.mjb-box{outline:2px solid #111111;outline-offset:3px;}
.mjb-prix{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;}
.mjb-prix label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6B6B6B;}
.mjb-prix label span{display:block;margin-bottom:8px;}
.mjb-prix input{width:100%;border:1px solid #E6E6E4;background:#FFFFFF;padding:12px;font-family:inherit;font-weight:300;font-size:14px;color:#111111;border-radius:0;text-transform:none;letter-spacing:0;}
.mjb-prix input:focus{outline:none;border-color:#111111;}
.mjb-drawer-foot{border-top:1px solid #E6E6E4;padding:18px 26px;display:grid;gap:10px;flex:0 0 auto;}
.mjb-drawer .mjb-btn-solid,.mjb-drawer .mjb-btn-solid:focus{background:#111111 !important;color:#FFFFFF !important;border:0 !important;padding:15px !important;font-size:14px;letter-spacing:.05em;width:100%;transition:.2s;}
.mjb-drawer .mjb-btn-solid:hover{background:#333333 !important;color:#FFFFFF !important;}
.mjb-drawer .mjb-btn-ghost,.mjb-drawer .mjb-btn-ghost:focus{border:1px solid #111111 !important;padding:14px !important;font-size:14px;letter-spacing:.05em;width:100%;background:#FFFFFF !important;color:#111111 !important;transition:.25s;}
.mjb-drawer .mjb-btn-ghost:hover{background:#111111 !important;color:#FFFFFF !important;}

@media(prefers-reduced-motion:reduce){.mjb-drawer,.mjb-scrim,nav .mjb-ql-arrow,.mjb-btn-solid,.mjb-btn-ghost{transition:none !important;animation:none !important;}}

/* 2e image au survol (maquette : fondu .6s) */
.elementor-location-archive [role="listitem"] a:has(> img.mjb-alt){position:relative;display:block;}
.elementor-location-archive img.mjb-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;pointer-events:none;z-index:1;}
.elementor-location-archive [role="listitem"].mjb-has-alt:hover img.mjb-alt{opacity:1;}
@media(prefers-reduced-motion:reduce){.elementor-location-archive img.mjb-alt{transition:none !important;}}
