/* MM Product Card — grid: max 4 per row, min 250px per card */
@font-face{font-family:"Uncut Sans";src:url("/wp-content/uploads/2026/11/Uncut.ttf") format("truetype");font-weight:100 900;font-style:normal;font-display:swap}
.mm-grid,ul.products:has(>.mm-li){display:grid;grid-template-columns:repeat(auto-fill,minmax(max(250px,(100% - (var(--mm-cols,4) - 1) * 24px) / var(--mm-cols,4)),1fr));gap:24px;list-style:none;margin:0;padding:0}
ul.products:has(>.mm-li)::before,ul.products:has(>.mm-li)::after{display:none}
.mm-grid>li,.mm-li{list-style:none;margin:0;padding:0;min-width:0}

/* Scoped resets: Elementor/Hello global heading, link and button styles must not leak in. */
.mm-card{--mm-font:"Uncut Sans",system-ui,sans-serif;--lime:#eefc8f;--ink:#1a1a1a;--muted:#9a9a9a;--line:#e4e4e4;display:flex;flex-direction:column;height:100%;min-width:0;container-type:inline-size;box-sizing:border-box;padding:16px;background:#fff;border-radius:24px;color:var(--ink)}
.mm-card,.mm-card *{box-sizing:border-box;font-family:var(--mm-font);letter-spacing:normal;text-transform:none}

.mm-card .mm-card__media{position:relative;background:#f6f6f6;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.mm-card .mm-card__media a{display:block;aspect-ratio:1/1}
.mm-card .mm-card__media img{display:block;width:100%;height:100%;margin:0;object-fit:contain;border-radius:0}
.mm-card .mm-card__badge{position:absolute;top:14px;left:14px;padding:3px 9px;background:var(--lime);border:1.5px solid var(--ink);border-radius:999px;font-size:12px;font-weight:700;line-height:1.2}

.mm-card .mm-card__meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:16px 4px 0;font-size:14px;line-height:1.3}
.mm-card .mm-card__cat{display:inline-flex;align-items:center;gap:10px}
.mm-card .mm-card__cat::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--dot) 20%,transparent),0 0 8px var(--dot)}
.mm-card .mm-card__rating{display:inline-flex;align-items:center;gap:5px;margin-left:auto;font-weight:600}
.mm-card .mm-card__rating svg{width:15px;height:15px;fill:var(--ink)}
.mm-card .mm-card__rating span{color:var(--muted);font-weight:400}

.mm-card .mm-card__title{margin:12px 4px 0;padding:0;color:var(--ink);font-size:20px;font-weight:700;line-height:1.15;letter-spacing:-1px}
.mm-card .mm-card__title a{color:inherit;font:inherit;letter-spacing:inherit;text-decoration:none;transition:color .15s}
.mm-card .mm-card__title a:hover,.mm-card .mm-card__title a:focus{color:#1C5B72}
.mm-card .mm-card__sub{margin:2px 4px 0;color:var(--muted);font-size:14px;line-height:1.4}

/* minmax(0,1fr) lets buttons shrink instead of pushing out of the card. */
.mm-card .mm-card__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto;padding-top:16px}
.mm-card .mm-btn{position:relative;grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:2px 6px;min-width:0;min-height:44px;margin:0;padding:8px 18px;background:#fff;border:1.5px solid #cfcfcf;border-radius:999px;box-shadow:none;color:var(--ink);font-size:15px;font-weight:400;line-height:1.2;text-align:center;text-decoration:none;white-space:normal;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.mm-card .mm-btn:hover,.mm-card .mm-btn:focus{background:#fff;border-color:var(--ink);color:var(--ink)}
.mm-card .mm-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.mm-card .mm-btn i{font-style:normal}
.mm-card .mm-btn small{position:absolute;top:auto;bottom:-17px;left:50%;transform:translate(-50%,-50%);padding:2px 8px;background:#c7f7c7;border-radius:30px;color:var(--ink);font-size:10px;font-weight:500;line-height:1.3;white-space:nowrap;pointer-events:none}
.mm-card .mm-btn--primary{background:var(--lime);border-color:#3a3a3a;font-weight:600}
.mm-card .mm-btn--primary:hover,.mm-card .mm-btn--primary:focus{background:var(--ink);border-color:var(--ink);color:var(--lime)}


.mm-card .mm-card__note{grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;color:#555;font-size:13px;font-weight:500;line-height:1.3;text-align:center}
.mm-card .mm-btn.is-loading{opacity:.6;cursor:progress}
.mm-card .mm-btn.is-added{background:var(--ink);border-color:var(--ink);color:#fff}

.mm-pagination{display:flex;justify-content:center;gap:8px;margin-top:32px}

@container (max-width:330px){.mm-card .mm-btn{padding-inline:12px;font-size:14px}}
@media (max-width:480px){.mm-card .mm-card__title{font-size:21px}.mm-card .mm-btn{font-size:14px}}
@media (prefers-reduced-motion:reduce){.mm-card .mm-btn{transition:none}}

/* MM Shop: heading + category tabs */
.mm-shop{--lime:#eefc8f;--ink:#1a1a1a;color:var(--ink)}
.mm-shop,.mm-shop .mm-tab *{font-family:"Uncut Sans",system-ui,sans-serif;box-sizing:border-box}
.mm-shop .mm-shop__eyebrow{margin:0 0 6px;color:#6b6b6b;font-size:12px;font-weight:600;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}
.mm-shop .mm-shop__title{margin:0;padding:0;color:var(--ink);font-family:inherit;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.1;letter-spacing:-1px;text-transform:none}
.mm-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:12px;margin:0 0 20px;padding:2px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none}
.mm-tabs::-webkit-scrollbar{display:none}
.mm-shop .mm-tab{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#ffffff;border:1px solid var(--ink);border-radius:6px;color:var(--ink);text-decoration:none;scroll-snap-align:start;transition:background .15s}
.mm-shop .mm-tab strong{color:var(--ink);font-size:14px;font-weight:700;line-height:1.2}
.mm-shop .mm-tab span{color:#2b2b2b;font-size:11px;line-height:1.35}
.mm-shop .mm-tab.is-active{background:#EEFC8F}
@media (hover:hover){.mm-shop .mm-tab:hover{background:rgba(255,255,255,.5)}.mm-shop .mm-tab.is-active:hover{background:#fff}}
.mm-shop .mm-tab:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
/* Header: heading left, currency chip right (wraps under the heading on small screens). */
.mm-shop .mm-shop__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin:0 0 24px}
.mm-shop .mm-shop__currency{display:inline-flex;align-items:center;gap:8px;margin:0 0 4px;color:#2b2b2b;font-size:13px;line-height:1.3}
.mm-shop .mm-shop__cur-code{padding:3px 9px;border:1px solid var(--ink);border-radius:999px;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.04em}
.mm-shop .mm-shop__grid{transition:opacity .15s}
.mm-shop[aria-busy="true"] .mm-shop__grid{opacity:.45;pointer-events:none}
.mm-shop .mm-shop__empty{padding:40px 0;color:#6f6f6f;text-align:center}
/* @media (max-width:767px){.mm-tabs{grid-auto-columns:minmax(150px,44%);margin-inline:-16px;padding-inline:16px;scroll-padding-inline:16px}} */
@media (max-width:767px){.mm-tabs{grid-auto-columns:minmax(175px,44%)}}
@media (prefers-reduced-motion:reduce){.mm-shop .mm-tab,.mm-shop .mm-shop__grid{transition:none}}

/* MM Carousel — [mm_carousel]. Without JS it's a native swipe row; card.js adds .is-on (drag, arrows, loop). */
.mm-car{--show:1;--gap:24px}
.mm-car[data-show="3"]{--show:3}
.mm-car__vp{container-type:inline-size;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 0}
.mm-car__vp::-webkit-scrollbar{display:none}
.mm-car .mm-car__track{display:flex;gap:var(--gap);width:max-content;margin:0;padding:0;list-style:none}
.mm-car .mm-car__track>li{flex:none;width:calc((100cqw - (var(--show) - 1) * var(--gap)) / var(--show));margin:0;padding:0;list-style:none;scroll-snap-align:start}
.mm-car.is-on .mm-car__vp{overflow:hidden;scroll-snap-type:none;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}
.mm-car.is-on .mm-car__vp:active{cursor:grabbing}
.mm-car.is-on .mm-car__track{will-change:transform}
.mm-car .mm-car__vp img{-webkit-user-drag:none}
.mm-car.is-still .mm-car__track{margin-inline:auto;transform:none!important}
.mm-car.is-still .mm-car__track>[aria-hidden],.mm-car.is-still .mm-car__nav,.mm-car.is-still .mm-car__dots{display:none}
/* Dots: override colours with --mm-dot / --mm-dot-on on the shortcode's parent. */
.mm-car__dots{display:flex;justify-content:center;gap:24px;margin-top:24px}
.mm-car .mm-car__dots button{flex:0 1 100px;max-width:100px;min-width:16px;height:12px;margin:0;padding:0;border:0;border-radius:99px;background:var(--mm-dot,rgba(255,255,255,.3));box-shadow:none;cursor:pointer;transition:background .3s}
.mm-car .mm-car__dots button:hover,.mm-car .mm-car__dots button:focus{background:var(--mm-dot-hover,rgba(255,255,255,.6))}
.mm-car .mm-car__dots button[aria-current]{background:var(--mm-dot-on,#fff)}
.mm-car .mm-car__dots button:focus-visible{outline:2px solid #1a1a1a;outline-offset:2px}
.mm-car__nav{display:flex;justify-content:center;gap:22px;margin-top:24px}
.mm-car .mm-car__nav button{display:grid;place-items:center;width:50px;height:50px;margin:0;padding:0;border:1px solid #1a1a1a;border-radius:50%;background:transparent;box-shadow:none;color:#1a1a1a;cursor:pointer;transition:background .25s,color .25s}
.mm-car .mm-car__nav button:hover,.mm-car .mm-car__nav button:focus-visible{background:#1a1a1a;color:#fff}
.mm-car .mm-car__nav svg{width:20px;height:20px}
@media (max-width:1024px){.mm-car[data-show="3"]{--show:2}}
@media (max-width:767px){.mm-car{--gap:16px}.mm-car[data-show]{--show:1.3}.mm-car__dots{gap:10px}.mm-car .mm-car__dots button{height:8px}}
@media (prefers-reduced-motion:reduce){.mm-car .mm-car__nav button,.mm-car .mm-car__dots button{transition:none}}

/* [mm_needs] — support-need pills + one product carousel per need. */
.mm-needs{--ink:#1a1a1a;--brown:#4A2A1F;--text:#4A3B30;--lime:#EEFC8F;font-family:"Uncut Sans",system-ui,sans-serif;color:var(--ink)}
.mm-needs *{box-sizing:border-box}

/* Pills: 6 across on desktop, 3 on tablet, swipeable chips on mobile. Scoped resets beat Elementor button styles. */
.mm-needs__pills{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.mm-needs .mm-need,.mm-needs .mm-need:focus{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-height:100px;margin:0;padding:18px 16px;background:rgba(255,255,255,.55);border:1.5px solid rgba(74,42,31,.28);border-radius:14px;box-shadow:none;color:var(--brown);font-family:inherit;font-size:15px;font-weight:600;line-height:1.25;letter-spacing:normal;text-align:left;text-transform:none;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s}
.mm-needs .mm-need svg{flex:none;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media (hover:hover){.mm-needs .mm-need:hover{background:rgba(255,255,255,.85);border-color:var(--brown);color:var(--brown);transform:translateY(-2px)}}
.mm-needs .mm-need:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.mm-needs .mm-need.is-active,.mm-needs .mm-need.is-active:hover,.mm-needs .mm-need.is-active:focus{background:var(--lime);border-color:var(--ink);color:var(--ink);font-weight:700;box-shadow:0 8px 20px rgba(74,42,31,.14);transform:none}

.mm-needs__panel[hidden]{display:none}
.mm-needs .mm-needs__desc{max-width:640px;margin:22px auto 0;color:var(--text);font-size:17px;line-height:1.5;text-align:center}
.mm-needs .mm-needs__title{margin:40px 0 20px;padding:0;color:var(--brown);font-family:inherit;font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.5px;text-transform:none}
.mm-needs .mm-needs__title span{color:#5A4A3E;font-weight:400}

.mm-needs .mm-needs__trust{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 36px;margin:36px 0 0;padding:0;list-style:none;color:var(--text);font-size:14px;font-weight:500;line-height:1.4}
.mm-needs .mm-needs__trust li{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;list-style:none}
.mm-needs .mm-needs__trust svg{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:1024px){.mm-needs__pills{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){
	.mm-needs__pills{display:flex;gap:8px;padding:2px;overflow-x:auto;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 88%,transparent);mask:linear-gradient(90deg,#000 88%,transparent)}
	.mm-needs__pills::-webkit-scrollbar{display:none}
	.mm-needs .mm-need,.mm-needs .mm-need:focus{flex:none;flex-direction:row;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border-radius:999px;font-size:14px;white-space:nowrap}
	.mm-needs .mm-need svg{width:18px;height:18px}
	.mm-needs .mm-needs__desc{margin-top:16px;font-size:15px}
	.mm-needs .mm-needs__title{margin:24px 0 14px;font-size:18px;text-align:center}
	.mm-needs .mm-needs__trust{flex-direction:column;align-items:center;gap:10px;margin-top:28px}
}
@media (prefers-reduced-motion:reduce){.mm-needs .mm-need{transition:none}}
