.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Arial, Helvetica, sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Arial, Helvetica, sans-serif;font-weight:var( --e-global-typography-text-font-weight );}/* Start custom CSS *//* Breadcrumb on All Products (/shop/): the page title is already All Products, so hide the repeated All Products link and its separator */
body.post-type-archive-product .elementor-7546 [data-id="7fcf6684"],body.post-type-archive-product .elementor-7546 [data-id="209fb3b4"]{display:none!important}
/* 2.1.19: tabs touch the panel (no gap between the tab row and the content box). */
.elementor-7546 [data-id="20ef4cd7"]{gap:0!important}
/* 2.1.27: intro from the ACF "Intro" field (Products > Categories > edit). Hidden when empty. */
.elementor-7546 [data-id="6d97efda"]:empty{display:none}.elementor-7546 [data-id="6d97efda"] p{margin:0}.elementor-7546 [data-id="6d97efda"] p+p{margin-top:12px}
/* 2.1.28: moved from the mbv3 plugin (category header layout and image). */
.mbv3-cat-heroimg{margin:0;padding:0;border-radius:20px;overflow:hidden;border:1px solid #d0d5dd;background:#fff;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.mbv3-cat-heroimg img{width:100%;height:100%;object-fit:contain;display:block}
body.tax-product_cat .e-paragraph-base:empty{display:none}
html[data-mbv3-theme=dark] .mbv3-cat-heroimg{border-color:#2e323a}
body.tax-product_cat [data-id="37e927de"]{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,440px);column-gap:40px;row-gap:16px;align-items:center}
body.tax-product_cat [data-id="5338cf50"]{grid-column:1/-1}
body.tax-product_cat [data-id="446b501"]{grid-column:1;grid-row:2}
body.tax-product_cat [data-id="60bbd733"]{grid-column:2;grid-row:2;padding:0!important}
body.tax-product_cat [data-id="13e8fe76"]{grid-column:1/-1;grid-row:3}
@media(max-width:767px){
body.tax-product_cat [data-id="37e927de"]{grid-template-columns:minmax(0,1fr);row-gap:16px}
body.tax-product_cat [data-id="446b501"],body.tax-product_cat [data-id="60bbd733"],body.tax-product_cat [data-id="13e8fe76"]{grid-column:1}
body.tax-product_cat [data-id="60bbd733"]{grid-row:3}
body.tax-product_cat [data-id="13e8fe76"]{grid-row:4}
.mbv3-cat-heroimg{aspect-ratio:16/10;max-height:240px}
}
/* 2.1.28: image and description are Elementor widgets. No image -> the image column is hidden. */
body.tax-product_cat [data-id="60bbd733"]:not(:has(.mbv3-cat-heroimg img:not([src*="placeholder"]))){display:none!important}
body.tax-product_cat [data-id="37e927de"]:not(:has(.mbv3-cat-heroimg img:not([src*="placeholder"]))){grid-template-columns:minmax(0,1fr)!important}
.elementor-7546 .mbv3-cat-desc-w{margin:12px 0}.elementor-7546 .mbv3-cat-desc-w p{margin:0 0 12px}.elementor-7546 .mbv3-cat-desc-w p:last-child{margin-bottom:0}.mbv3-cat-missing{color:var(--mbv3-text-secondary,#5b5e66)}
/* 2.1.30: Shop category directory = 2-column cards (1 column on phones). The list itself is automatic: every top-level product category, in the Products > Categories order. */
.elementor-7546 .mbv3-mb-dir{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.elementor-7546 .mbv3-mb-dir .mbv3-mb-dirrow{flex-direction:column;align-items:stretch;gap:16px;padding:20px;height:100%;box-sizing:border-box}.elementor-7546 .mbv3-mb-dir .mbv3-mb-img{flex:0 0 auto;width:100%;min-height:0}.elementor-7546 .mbv3-mb-dir .mbv3-mb-img.has-img{aspect-ratio:16/10;background:#fff}.elementor-7546 .mbv3-mb-dir .mbv3-mb-img.has-img img{object-fit:contain}.elementor-7546 .mbv3-mb-dir .mbv3-mb-dirtxt{flex:1}.elementor-7546 .mbv3-mb-dir .mbv3-mb-dirtxt .act{margin-top:auto}@media(max-width:767px){.elementor-7546 .mbv3-mb-dir{grid-template-columns:minmax(0,1fr);gap:16px}.elementor-7546 .mbv3-mb-dir .mbv3-mb-dirrow{padding:16px}}
/* 2.1.31: Shop category cards, design C (3 columns, 2 on tablet, 1 on phone). Cards are built automatically from Products > Categories. */
.elementor-7546 .mbv3-dir-c{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.elementor-7546 .mbv3-dc{display:flex;flex-direction:column;gap:12px;min-width:0;padding:20px;border:1px solid var(--mbv3-border-decorative,#d0d5dd);border-radius:16px;background:var(--mbv3-surface-card,#fff)}.elementor-7546 .mbv3-dc-top{display:flex;gap:14px;align-items:center}.elementor-7546 .mbv3-dc-img{flex:0 0 88px;height:88px;border-radius:12px;border:1px solid #eceef2;overflow:hidden;background:#fff}.elementor-7546 .mbv3-dc-img img{display:block;width:100%;height:100%;object-fit:contain}.elementor-7546 .mbv3-dc-ttl{min-width:0}.elementor-7546 .mbv3-dc-h{margin:0;font-family:var(--mbv3-font-heading,"Space Grotesk",sans-serif);font-size:20px;line-height:1.15}.elementor-7546 .mbv3-dc-h a{color:inherit;text-decoration:none}.elementor-7546 .mbv3-dc-h a:hover{color:var(--mbv3-text-accent,#cb2127)}.elementor-7546 .mbv3-dc-cnt{margin:4px 0 0;font-size:13px;font-weight:700;color:var(--mbv3-text-secondary,#5b5e66)}.elementor-7546 .mbv3-dc-d{margin:0;font-size:14px;line-height:1.55;color:var(--mbv3-text-secondary,#5b5e66);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.elementor-7546 .mbv3-dc-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.elementor-7546 .mbv3-dc-chips a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--mbv3-border-decorative,#d0d5dd);background:var(--mbv3-surface-page,#f2f3f7);color:var(--mbv3-text-primary,#0a0b0d);font-size:13px;font-weight:700;text-decoration:none}.elementor-7546 .mbv3-dc-chips a:hover{border-color:#cb2127;color:#cb2127}.elementor-7546 .mbv3-dc-chips a:focus-visible{outline:3px solid #0a0b0d;outline-offset:2px}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-chips a{background:#1d2026;border-color:#2e323a;color:#f2f3f7}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-chips a:hover{border-color:#ff7b80;color:#ff7b80}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-chips a:focus-visible{outline-color:#f2f3f7}.elementor-7546 .mbv3-dc-act{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.elementor-7546 .mbv3-dc-act .mbv3-mb-btn{flex:1 1 140px}@media(max-width:1024px){.elementor-7546 .mbv3-dir-c{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.elementor-7546 .mbv3-dir-c{grid-template-columns:minmax(0,1fr);gap:16px}.elementor-7546 .mbv3-dc{padding:16px}}
/* 2.1.32: card title uses the theme text colour (light in dark mode); dark chips. */
.elementor-7546 .mbv3-dc-h,.elementor-7546 .mbv3-dc-h a.mbv3-dc-link{color:var(--mbv3-text-primary,#0a0b0d)}.elementor-7546 .mbv3-dc-h a.mbv3-dc-link:hover{color:var(--mbv3-text-accent,#cb2127)}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-h,html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-h a.mbv3-dc-link{color:#f2f3f7!important}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-h a.mbv3-dc-link:hover{color:#ff7b80!important}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-chips a.mbv3-dc-chip{background:#1d2026!important;border-color:#2e323a!important;color:#f2f3f7!important}html[data-mbv3-theme=dark] .elementor-7546 .mbv3-dc-chips a.mbv3-dc-chip:hover{border-color:#ff7b80!important;color:#ff7b80!important}
/* 2.1.33: larger card photo. */
.elementor-7546 .mbv3-dc-img{flex:0 0 128px;height:128px}@media(max-width:767px){.elementor-7546 .mbv3-dc-img{flex-basis:112px;height:112px}}
/* 2.1.34: card photo fills its box (cover), no frame. */
.elementor-7546 .mbv3-dir-c .mbv3-dc-img{border:0}.elementor-7546 .mbv3-dir-c .mbv3-dc-img img{object-fit:cover}
/* 2.1.35: tab panel padding on every page that uses this template (Shop included). */
.elementor-7546 [role=tabpanel].mbv3-panel{padding:28px 30px!important}@media(max-width:767px){.elementor-7546 [role=tabpanel].mbv3-panel{padding:20px 16px!important}}
/* 2.1.36: All Products (Shop) only: no tab section, description under the title, one card per row. */
body:not(.woocommerce-shop) .elementor-7546 .mbv3-shop-desc{display:none!important}body.woocommerce-shop .elementor-7546 [data-id="d463c8f"]{display:none!important}.elementor-7546 .mbv3-shop-desc{margin:0;max-width:820px;font-size:16px;line-height:1.6;color:var(--mbv3-text-secondary,#5b5e66)}.elementor-7546 .mbv3-shop-desc p{margin:0 0 12px}.elementor-7546 .mbv3-dir-c{grid-template-columns:minmax(0,1fr)!important;gap:16px}@media(min-width:768px){.elementor-7546 .mbv3-dir-c .mbv3-dc{display:grid;grid-template-columns:160px minmax(0,1fr) 200px;grid-template-areas:"img ttl act" "img d act" "img chips act";column-gap:24px;row-gap:8px;align-items:start}.elementor-7546 .mbv3-dir-c .mbv3-dc-top{display:contents}.elementor-7546 .mbv3-dir-c .mbv3-dc-img{grid-area:img;width:160px;height:160px;flex:none}.elementor-7546 .mbv3-dir-c .mbv3-dc-ttl{grid-area:ttl}.elementor-7546 .mbv3-dir-c .mbv3-dc-d{grid-area:d;-webkit-line-clamp:2}.elementor-7546 .mbv3-dir-c .mbv3-dc-chips{grid-area:chips}.elementor-7546 .mbv3-dir-c .mbv3-dc-act{grid-area:act;flex-direction:column;align-self:center;margin:0}.elementor-7546 .mbv3-dir-c .mbv3-dc-act .mbv3-mb-btn{flex:0 0 auto;width:100%}}
/* 2.1.37: Shop cards design D2 (large photo, zig-zag on desktop/tablet, stacked on phones). */
.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2{display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden;border-radius:20px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img{width:100%;height:auto;aspect-ratio:16/10;flex:none;border:0;border-radius:0;background:var(--mbv3-surface-skeleton,#f2f3f7)}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img img{width:100%;height:100%;object-fit:cover;display:block}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-body{display:flex;flex-direction:column;justify-content:center;gap:12px;min-width:0;padding:20px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-cnt{margin:0}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-h{font-size:24px;line-height:1.15}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-d{display:block;-webkit-line-clamp:unset;overflow:visible;font-size:15px;line-height:1.6}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;margin:6px 0 0;align-self:stretch}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act .mbv3-mb-btn{flex:1 1 140px;width:auto}@media(min-width:768px){.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:none;align-items:stretch}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img{grid-area:auto;aspect-ratio:auto;height:100%;min-height:280px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2:nth-child(even) .mbv3-dc-img{order:2}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-body{padding:28px 32px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-h{font-size:28px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act{align-self:flex-start}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act .mbv3-mb-btn{flex:0 0 auto;padding:0 22px}}
/* 2.1.38: D2 photo column 5/12 on both sides; photo fills the card height (min 280px). */
@media(min-width:768px){.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2:nth-child(even){grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img{position:relative;height:auto;min-height:280px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img img{position:absolute;inset:0;width:100%;height:100%}}
/* 2.1.39: D2 compact on mobile. */
@media(max-width:767px){.elementor-7546 .mbv3-dir-c{gap:16px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2{border-radius:16px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-img{aspect-ratio:2/1}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-body{padding:14px 16px 16px;gap:6px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-cnt{font-size:12px;margin:0}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-h{font-size:20px;line-height:1.25;margin:0}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-d{font-size:14px;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-chips{gap:6px;margin:2px 0 0}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-chip{font-size:13px;padding:6px 10px;min-height:32px}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act{gap:8px;margin-top:6px;flex-wrap:nowrap}.elementor-7546 .mbv3-dir-c .mbv3-dc.mbv3-dc2 .mbv3-dc-act .mbv3-mb-btn{flex:1 1 0;min-height:44px;padding:10px 12px;font-size:14px;white-space:nowrap}}
/* 2.1.41: breadcrumb spacing = site standard. */
.elementor-7546 [data-id="4157cb13"]{padding-top:40px!important}.elementor-7546 [data-id="5338cf50"]{margin-bottom:6px!important}.elementor-7546 [data-id="446b501"],.elementor-7546 [data-id="60bbd733"]{align-self:start}@media(max-width:767px){.elementor-7546 [data-id="4157cb13"]{padding-top:20px!important}.elementor-7546 [data-id="5338cf50"]{margin-bottom:-4px!important}}/* End custom CSS */