.mm-stockists{--stores-map-height:560px;margin-block:32px 64px}
.mm-stockists-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr);align-items:end;gap:32px;margin-bottom:26px}
.mm-stockists-heading h1{margin:0;font-size:clamp(36px,4.2vw,52px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
.mm-stockists-heading>p{max-width:48ch;margin:0;font-size:16px;line-height:1.5}
.mm-stockists-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:20px;padding:24px;background:var(--soft);border-radius:var(--radius)}
.mm-stockists-filters[hidden],.mm-stockists-view[hidden],.mm-stockist-pin[hidden],.mm-stockists-empty[hidden]{display:none!important}
.mm-stockists-filters label{display:block;margin-bottom:8px;font-size:14px;font-weight:700}
.mm-stockists-search{position:relative}
.mm-stockists-search>.icon{position:absolute;left:14px;top:15px;width:20px;height:20px;color:var(--muted);pointer-events:none}
.mm-stockists-search>input{width:100%;min-width:0;padding-left:44px;font-size:16px;min-height:50px}
.mm-stockists-filters select{width:100%;min-height:50px;font-size:16px;background-color:var(--background);color:var(--foreground)}
.mm-stockists-results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 14px}
.mm-stockists-results-head>p{margin:0;font-size:14px;color:var(--muted)}
.mm-stockists-mobile-privacy{display:none}
.mm-stockists-view{display:none;gap:4px;background:var(--surface);padding:4px;border-radius:var(--radius)}
.mm-stockists-view>button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 12px;font:700 13px/1.3 var(--font);border:0;background:transparent;color:var(--foreground);border-radius:var(--radius);cursor:pointer}
.mm-stockists-view>button>.icon{width:17px;height:17px}
.mm-stockists-view>button[aria-pressed=true]{background:var(--accent);color:#fff}
.mm-stockists-layout{display:grid;grid-template-columns:minmax(290px,.85fr) minmax(0,1.45fr);gap:24px}
.mm-stockists-list{min-width:0;max-height:var(--stores-map-height);overflow-y:auto;overscroll-behavior-y:contain;padding-right:10px;scrollbar-width:thin;scrollbar-color:var(--accent) var(--soft)}
.mm-stockist{display:flex;justify-content:space-between;gap:16px;padding:22px 18px;border-radius:var(--radius);background:var(--surface);margin-bottom:8px;transition:background-color .25s ease}
.mm-stockist[hidden]{display:none!important}
.mm-stockist.is-active{background:var(--soft)}
.mm-stockist-copy{min-width:0}
.mm-stockist h2{margin:0 0 8px;font-size:18px;line-height:1.25;letter-spacing:-.015em;overflow-wrap:anywhere}
.mm-stockist address{font-style:normal;font-size:14px;line-height:1.5}
.mm-stockist address>span{display:block}
.mm-stockist-country{color:var(--muted)}
.mm-stockist-route{display:inline-flex;min-height:36px;align-items:center;margin-top:8px;color:var(--link);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.mm-stockist-pin{flex:none;color:var(--link);background:var(--background)}
.mm-stockist.is-active .mm-stockist-pin{background:var(--accent);color:#fff}
.mm-stockists-map-panel{position:relative;isolation:isolate;min-width:0;height:var(--stores-map-height);overflow:hidden;border-radius:var(--radius);background:var(--surface)}
.mm-stockists-map{position:absolute;inset:0;z-index:0;width:100%;height:100%;background:var(--surface);font-family:var(--font)}
.mm-stockists-map-intro{position:absolute;z-index:1;inset:0;background:#111;color:#fff;display:flex;align-items:flex-end}
.mm-stockists-map-intro[hidden]{display:none}
.mm-stockists-map-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.54}
.mm-stockists-map-intro>div{position:relative;max-width:38ch;padding:32px}
.mm-stockists-map-intro h2{margin:0 0 22px;font-size:clamp(30px,3vw,44px);line-height:1.05;color:#fff}
.mm-stockists-map-intro .button{font-size:16px;min-height:48px;padding:12px 20px}
.mm-stockists-map-intro p{margin:16px 0 0;font-size:13px;line-height:1.5}
.mm-stockists-map-intro p>a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.mm-stockists-map .leaflet-control-attribution{font-size:11px}
.mm-stockists-map .leaflet-popup-content{margin:16px 20px;font:400 14px/1.45 var(--font);color:#111}
.mm-stockists-popup strong{display:block;font-size:16px;line-height:1.3;margin-bottom:8px}
.mm-stockists-popup p{margin:0;white-space:pre-line}
.mm-stockists-popup small{display:block;margin-top:7px;color:#555}
.mm-stockists-popup a{display:inline-flex;align-items:center;min-height:36px;margin-top:6px;font-weight:700;color:#5820d4;text-decoration:underline;text-underline-offset:3px}
.mm-stockists-marker{display:grid!important;place-items:center;background:var(--accent)!important;border:2px solid #fff;border-radius:50%;transition:background-color .2s ease,transform .2s ease}
.mm-stockists-marker.is-active{background:var(--action)!important}
.mm-stockists-marker img{width:21px;height:21px;object-fit:contain;pointer-events:none}
.mm-stockists-marker:focus-visible{outline:3px solid var(--action);outline-offset:4px}
.mm-stockists-empty{padding:28px 18px}
.mm-stockists-empty h2{margin:0 0 12px;font-size:24px}
.mm-stockists-empty p{margin:0;font-size:15px;line-height:1.5}
.mm-stockists-note{margin:22px 0 0;font-size:14px;line-height:1.5;color:var(--muted)}
@media(max-width:749px){
 .mm-stockists{--stores-map-height:390px;margin-block:28px 48px}
 .mm-stockists-heading{display:block;margin-bottom:24px}
 .mm-stockists-heading h1{font-size:clamp(32px,9vw,40px);max-width:17ch}
 .mm-stockists-heading>p{margin-top:14px;font-size:16px}
 .mm-stockists-filters{grid-template-columns:1fr;gap:16px;padding:18px 16px}
 .mm-stockists-results-head{align-items:center;margin:18px 0 14px;gap:8px}
 .mm-stockists-results-head>p{font-size:13px;flex:none}
 .mm-stockists-mobile-privacy{display:block;margin:-2px 0 18px;font-size:12px;line-height:1.5;color:var(--muted)}
 .mm-stockists-mobile-privacy>a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
 .mm-stockists-view{display:flex}
 .mm-stockists-layout{display:block}
 .mm-stockists-list{max-height:none;overflow:visible;padding:0}
 .mm-stockist{padding:20px 16px}
 .mm-stockist h2{font-size:17px}
 .mm-stockists-layout[data-view=list] .mm-stockists-map-panel{display:none}
 .mm-stockists-layout[data-view=map] .mm-stockists-list{display:none}
 .mm-stockists-map-panel{scroll-margin-top:calc(var(--navigation-space,120px) + 16px)}
 .mm-stockists-map-intro>div{padding:24px}
 .mm-stockists-note{margin-top:18px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){.mm-stockist,.mm-stockists-marker{transition:none}}
