.mmc-wc-main{padding:58px 0 100px;min-height:60vh}
.mmc-wc-main--product{padding-top:44px}
.woocommerce .woocommerce-breadcrumb{margin:0 0 24px;color:var(--mmc-muted);font-size:.79rem}
.woocommerce .woocommerce-breadcrumb a{color:var(--mmc-berry);text-decoration:none}
.mmc-shop-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:20px 0 32px}
.mmc-shop-intro>div{max-width:780px}
.mmc-shop-intro h1{font-size:clamp(2.9rem,5vw,5.4rem);margin-bottom:10px}
.mmc-shop-intro p:last-child{margin:0;color:var(--mmc-muted)}
.mmc-shop-intro__account{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid var(--mmc-border);background:#fff;border-radius:7px;text-decoration:none;color:var(--mmc-ink);font-weight:700;white-space:nowrap}
.mmc-shop-filter{display:grid;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(155px,.7fr)) auto;gap:12px;align-items:end;padding:18px;background:#fff;border:1px solid var(--mmc-border);border-radius:12px;box-shadow:0 12px 30px rgba(99,31,57,.07);margin-bottom:16px}
.mmc-filter-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.mmc-filter-field label{font-size:.69rem;text-transform:uppercase;letter-spacing:.11em;color:var(--mmc-muted);font-weight:700}
.mmc-filter-field input,.mmc-filter-field select{width:100%;height:46px;border:1px solid rgba(177,43,87,.2);border-radius:7px;background:var(--mmc-cream);color:var(--mmc-ink);padding:0 12px}
.mmc-input-icon{position:relative}.mmc-input-icon .mmc-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--mmc-hot);pointer-events:none}.mmc-input-icon input{padding-left:42px}
.mmc-filter-actions{display:flex;align-items:center;gap:10px}.mmc-filter-actions .mmc-button{white-space:nowrap;min-height:46px}.mmc-filter-reset{font-size:.78rem;font-weight:700}
.mmc-filter-status{min-height:28px;margin:0 0 13px;color:var(--mmc-muted);font-size:.82rem}.mmc-filter-status .woocommerce-result-count{float:none;margin:0}
#mmc-product-results{position:relative;min-height:240px}
#mmc-product-results.is-loading:before{content:"";position:absolute;inset:0;background:rgba(255,247,251,.8);z-index:9;backdrop-filter:blur(2px)}
#mmc-product-results.is-loading:after{content:"";position:absolute;left:50%;top:90px;width:42px;height:42px;margin-left:-21px;border:3px solid var(--mmc-powder);border-top-color:var(--mmc-berry);border-radius:50%;z-index:10;animation:mmc-spin .7s linear infinite}
@keyframes mmc-spin{to{transform:rotate(360deg)}}
.woocommerce ul.products,.woocommerce-page ul.products,.mmc-product-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;padding:0!important;margin:0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none!important;width:auto!important;margin:0!important;position:relative;display:flex;flex-direction:column;min-width:0;padding:10px 10px 14px;background:#fff;border:1px solid var(--mmc-border);border-radius:11px;box-shadow:0 10px 26px rgba(99,31,57,.06);transition:transform .23s ease,box-shadow .23s ease,border-color .23s ease;overflow:hidden}
.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:var(--mmc-shadow);border-color:rgba(218,68,124,.42)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;text-decoration:none}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1;object-fit:cover;margin:0 0 14px!important;border-radius:7px;background:var(--mmc-cream)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 4px!important;margin:0!important;font-family:var(--mmc-font-display);font-size:1.03rem!important;line-height:1.3;color:var(--mmc-ink);min-height:2.6em}
.mmc-product-scent{display:block;padding:4px 4px 0;color:var(--mmc-hot);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.woocommerce ul.products li.product .price{display:block;margin:10px 4px 12px!important;color:var(--mmc-berry)!important;font-size:1rem!important;font-weight:700}
.woocommerce ul.products li.product .price del{color:var(--mmc-muted);opacity:.65;font-size:.85em}.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{width:calc(100% - 8px);margin:auto 4px 0!important;min-height:43px;padding:10px!important;font-size:.82rem!important}
.woocommerce ul.products li.product .added_to_cart{display:block;text-align:center;padding:8px 4px 0;font-size:.76rem;font-weight:700}
.woocommerce span.onsale{left:18px!important;top:18px!important;right:auto!important;min-width:auto!important;min-height:auto!important;line-height:1!important;padding:8px 10px!important;border-radius:5px!important;background:var(--mmc-berry)!important;font-size:.7rem!important;letter-spacing:.06em;text-transform:uppercase;z-index:2}
.woocommerce nav.woocommerce-pagination{margin-top:36px}.woocommerce nav.woocommerce-pagination ul{display:flex;justify-content:center;gap:7px;border:0!important}.woocommerce nav.woocommerce-pagination ul li{border:0!important}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{display:grid;place-items:center;min-width:40px;height:40px;padding:0 12px!important;background:#fff;border:1px solid var(--mmc-border);border-radius:6px;color:var(--mmc-ink)}.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--mmc-berry);color:#fff;border-color:var(--mmc-berry)}

.woocommerce div.product{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:60px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.woocommerce div.product div.images{position:sticky;top:128px;max-width:650px}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--mmc-border)}
.woocommerce div.product div.images img{border-radius:10px}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px!important}.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;float:none!important}.woocommerce div.product div.images .flex-control-thumbs img{border:1px solid var(--mmc-border);border-radius:6px;padding:3px}
.woocommerce div.product .summary{padding:18px 0}
.woocommerce div.product .product_title{font-size:clamp(2.4rem,4vw,4.7rem);margin-bottom:14px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--mmc-berry);font-family:var(--mmc-font-display);font-size:1.7rem;font-weight:700}
.woocommerce-product-details__short-description{font-size:1.03rem;color:var(--mmc-muted)}
.woocommerce div.product form.cart{display:flex;gap:10px;margin:26px 0!important}.woocommerce div.product form.cart .quantity{float:none!important}.woocommerce .quantity .qty{height:50px;width:80px;border:1px solid var(--mmc-border);border-radius:7px;background:#fff}.woocommerce div.product form.cart .button{flex:1;min-height:50px}
.woocommerce div.product form.cart.variations_form{display:block}.woocommerce div.product form.cart .variations{margin-bottom:16px}.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;width:100%;text-align:left}.woocommerce div.product form.cart .variations label{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.woocommerce div.product form.cart .variations select{width:100%;height:48px;border:1px solid var(--mmc-border);border-radius:7px;background:#fff;padding:0 12px;margin:6px 0 12px}
.woocommerce div.product .product_meta{display:grid;gap:6px;padding:18px;background:#fff;border:1px solid var(--mmc-border);border-radius:8px;font-size:.8rem;color:var(--mmc-muted)}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:45px}.woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:6px;padding:0!important;margin:0 0 20px!important;border-bottom:1px solid var(--mmc-border)}.woocommerce div.product .woocommerce-tabs ul.tabs:before{display:none!important}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;margin:0!important;padding:0!important}.woocommerce div.product .woocommerce-tabs ul.tabs li:before,.woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:13px 16px!important;border-bottom:2px solid transparent}.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--mmc-berry);border-color:var(--mmc-hot)}.woocommerce div.product .woocommerce-tabs .panel{padding:28px;background:#fff;border:1px solid var(--mmc-border);border-radius:10px}
.woocommerce div.product .related.products,.woocommerce div.product .upsells.products{grid-column:1/-1;margin-top:55px}.woocommerce div.product .related.products>h2,.woocommerce div.product .upsells.products>h2{text-align:center;margin-bottom:32px}

.woocommerce-message,.woocommerce-info,.woocommerce-error{border:1px solid var(--mmc-border)!important;border-top:4px solid var(--mmc-hot)!important;background:#fff!important;border-radius:8px;box-shadow:0 8px 20px rgba(99,31,57,.06)}
.woocommerce-message:before,.woocommerce-info:before{color:var(--mmc-berry)!important}.woocommerce-error{border-top-color:#b9293b!important}
.woocommerce table.shop_table{border-color:var(--mmc-border)!important;border-radius:10px!important;background:#fff}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px!important}.woocommerce-cart-form__cart-item .product-thumbnail img{width:80px;border-radius:6px}
.woocommerce-cart .cart-collaterals .cart_totals,.woocommerce-checkout-review-order,.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{padding:24px;background:#fff;border:1px solid var(--mmc-border);border-radius:10px;box-shadow:0 10px 26px rgba(99,31,57,.05)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{min-height:48px;border:1px solid var(--mmc-border);border-radius:7px;background:#fff;padding:10px 12px}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:26px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px}
.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:100%!important}.woocommerce-checkout .col-1,.woocommerce-checkout .col-2{float:none!important;width:auto!important;padding:24px;background:#fff;border:1px solid var(--mmc-border);border-radius:10px}.woocommerce-checkout #order_review_heading{margin-top:40px}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:260px 1fr;gap:24px}.woocommerce-account .woocommerce-MyAccount-navigation{width:auto!important;float:none!important}.woocommerce-account .woocommerce-MyAccount-content{width:auto!important;float:none!important}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px;border-bottom:1px solid var(--mmc-border);text-decoration:none;color:var(--mmc-ink);font-weight:700}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--mmc-berry)}

@media(max-width:1180px){.mmc-shop-filter{grid-template-columns:1.3fr repeat(2,1fr);}.mmc-filter-field:nth-child(4){grid-column:1}.mmc-filter-actions{grid-column:2/4;justify-content:flex-end}.woocommerce ul.products,.woocommerce-page ul.products,.mmc-product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.mmc-shop-intro{align-items:flex-start}.mmc-shop-filter{grid-template-columns:1fr 1fr}.mmc-filter-field--search{grid-column:1/-1}.mmc-filter-field:nth-child(4){grid-column:auto}.mmc-filter-actions{grid-column:1/-1;justify-content:flex-start}.woocommerce div.product{grid-template-columns:1fr;gap:28px}.woocommerce div.product div.images{position:static;max-width:none}.woocommerce-checkout .col2-set{grid-template-columns:1fr}.woocommerce-account .woocommerce{grid-template-columns:1fr}}
@media(max-width:640px){.mmc-wc-main{padding:35px 0 70px}.mmc-shop-intro{display:block;padding-top:8px}.mmc-shop-intro h1{font-size:3rem}.mmc-shop-intro__account{margin-top:15px}.mmc-shop-filter{grid-template-columns:1fr;padding:13px}.mmc-filter-field--search,.mmc-filter-field:nth-child(4),.mmc-filter-actions{grid-column:auto}.mmc-filter-actions{display:grid;grid-template-columns:1fr auto}.woocommerce ul.products,.woocommerce-page ul.products,.mmc-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{padding:7px 7px 10px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.88rem!important;min-height:2.8em}.woocommerce ul.products li.product .button{font-size:.72rem!important;padding:8px 5px!important;min-height:40px}.woocommerce ul.products li.product .price{font-size:.9rem!important}.mmc-product-scent{font-size:.6rem}.woocommerce div.product .product_title{font-size:2.7rem}.woocommerce div.product form.cart{flex-wrap:wrap}.woocommerce div.product form.cart .button{min-width:calc(100% - 90px)}.woocommerce div.product .woocommerce-tabs ul.tabs{overflow-x:auto}.woocommerce div.product .woocommerce-tabs ul.tabs li a{white-space:nowrap}.woocommerce table.shop_table_responsive tr td,.woocommerce-page table.shop_table_responsive tr td{padding:12px!important}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{padding:17px}}

/* v1.1 compact shop archive */
.mmc-shop-shell{width:min(1180px,calc(100% - 48px))}
.mmc-shop-intro{padding:10px 0 27px}
.mmc-shop-intro>div{max-width:690px}
.mmc-shop-intro h1{font-size:clamp(2.7rem,4.2vw,4.5rem)}
.mmc-shop-filter{grid-template-columns:minmax(290px,1.55fr) minmax(190px,.8fr) minmax(170px,.7fr) auto;padding:16px;gap:11px}
.mmc-shop-shell .woocommerce ul.products,.mmc-shop-shell.woocommerce ul.products{gap:15px}
.mmc-shop-shell .woocommerce ul.products li.product,.mmc-shop-shell.woocommerce ul.products li.product{padding:8px 8px 12px}
.mmc-shop-shell .woocommerce ul.products li.product a img,.mmc-shop-shell.woocommerce ul.products li.product a img{margin-bottom:11px!important}
.mmc-shop-shell .woocommerce ul.products li.product .woocommerce-loop-product__title,.mmc-shop-shell.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.98rem!important}

@media(max-width:1180px){
  .mmc-shop-shell{width:min(100% - 36px,1080px)}
  .mmc-shop-filter{grid-template-columns:minmax(250px,1.35fr) minmax(170px,.8fr) minmax(160px,.7fr)}
  .mmc-filter-actions{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:900px){
  .mmc-shop-filter{grid-template-columns:1fr 1fr}.mmc-filter-field--search{grid-column:1/-1}.mmc-filter-actions{grid-column:1/-1}
  .mmc-shop-shell .woocommerce ul.products,.mmc-shop-shell.woocommerce ul.products{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:640px){
  .mmc-shop-shell{width:calc(100% - 24px)}.mmc-shop-intro h1{font-size:2.8rem}.mmc-shop-filter{grid-template-columns:1fr;padding:12px}.mmc-filter-field--search,.mmc-filter-actions{grid-column:auto}.mmc-filter-actions{display:grid;grid-template-columns:1fr auto}
  .mmc-shop-shell .woocommerce ul.products,.mmc-shop-shell.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* v1.2 tighter product cards, smaller product text and aligned pricing/actions */
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{padding:10px 10px 14px;border-radius:14px;box-shadow:0 12px 28px rgba(99,31,57,.07)}
.woocommerce ul.products li.product:hover,.woocommerce-page ul.products li.product:hover{transform:translateY(-6px);border-color:rgba(218,68,124,.42);box-shadow:0 18px 42px rgba(218,68,124,.16),0 0 0 1px rgba(218,68,124,.08)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;gap:0;min-height:100%}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.92rem!important;line-height:1.32;min-height:3.7em;padding:0 4px!important;letter-spacing:-.01em}
.mmc-shop-shell .woocommerce ul.products li.product .woocommerce-loop-product__title,.mmc-shop-shell.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.9rem!important}
.woocommerce ul.products li.product .price{display:flex;align-items:center;min-height:2.4em;margin:10px 4px 12px!important;font-size:.95rem!important;line-height:1.25}
.woocommerce ul.products li.product .button{width:calc(100% - 8px);margin:0 4px 0!important;min-height:42px;padding:9px 10px!important;font-size:.76rem!important}
.woocommerce ul.products li.product .added_to_cart{margin-top:8px;padding-top:0;font-size:.72rem}
.woocommerce div.product .product_title{font-size:clamp(1.9rem,3.2vw,3.25rem);line-height:1.08;margin-bottom:12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:1.45rem}
.woocommerce-product-details__short-description{font-size:.98rem;line-height:1.7}
.woocommerce ul.products li.product .star-rating{margin:8px 4px 0!important}

@media(max-width:640px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.82rem!important;min-height:3.55em}
  .woocommerce ul.products li.product .price{font-size:.85rem!important;min-height:2.2em}
  .woocommerce ul.products li.product .button{font-size:.68rem!important;min-height:38px}
}

/* v1.3 compact storefront and WooCommerce block compatibility */
.mmc-shop-shell{width:min(1040px,calc(100% - 48px))}
.mmc-shop-intro.mmc-shop-intro--compact{display:block;text-align:center;padding:4px 0 22px;margin:0 auto;max-width:720px}
.mmc-shop-intro--compact .mmc-script-kicker{margin-bottom:4px}
.mmc-shop-intro--compact h1{font-size:clamp(2.35rem,4vw,3.8rem);margin-bottom:0;color:var(--mmc-berry)}
.mmc-shop-filter{margin-bottom:18px}

/* Classic WooCommerce cards. */
.woocommerce ul.products,.woocommerce-page ul.products,.mmc-product-grid{align-items:stretch!important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{height:100%;padding:10px!important;background:#fff!important;border:1px solid rgba(218,68,124,.18)!important;border-radius:14px!important;box-shadow:0 10px 26px rgba(99,31,57,.07)!important;overflow:hidden!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
.woocommerce ul.products li.product:hover,.woocommerce-page ul.products li.product:hover{transform:translateY(-5px)!important;border-color:rgba(218,68,124,.65)!important;box-shadow:0 18px 42px rgba(218,68,124,.2),0 0 22px rgba(247,168,199,.32)!important}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,.woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link{display:flex!important;flex-direction:column!important;flex:1 1 auto!important;text-decoration:none!important}
.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img{width:100%!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:9px!important;margin:0 0 10px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title{font-family:var(--mmc-font-body)!important;font-size:.82rem!important;font-weight:700!important;line-height:1.38!important;letter-spacing:0!important;color:var(--mmc-berry)!important;text-decoration:none!important;padding:0 3px!important;margin:0!important;min-height:3.45em!important}
.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price{display:flex!important;align-items:center!important;min-height:2.4em!important;margin:8px 3px 10px!important;font-family:var(--mmc-font-body)!important;font-size:.88rem!important;font-weight:700!important;color:var(--mmc-hot)!important}
.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button{margin:auto 3px 0!important;width:calc(100% - 6px)!important;min-height:39px!important;padding:8px 9px!important;font-size:.7rem!important;line-height:1.2!important}

/* WooCommerce Product Collection and legacy product-grid blocks. */
.wc-block-product-template,.wc-block-grid__products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0!important;padding:0!important;list-style:none!important}
.wc-block-product-template>li.wc-block-product,.wc-block-grid__products>.wc-block-grid__product{display:flex!important;flex:none!important;flex-direction:column!important;width:auto!important;max-width:none!important;height:100%!important;margin:0!important;padding:10px!important;background:#fff!important;border:1px solid rgba(218,68,124,.18)!important;border-radius:14px!important;box-shadow:0 10px 26px rgba(99,31,57,.07)!important;overflow:hidden!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;text-align:left!important}
.wc-block-product-template>li.wc-block-product:hover,.wc-block-grid__products>.wc-block-grid__product:hover{transform:translateY(-5px)!important;border-color:rgba(218,68,124,.65)!important;box-shadow:0 18px 42px rgba(218,68,124,.2),0 0 22px rgba(247,168,199,.32)!important}
.wc-block-components-product-image,.wc-block-grid__product-image{margin:0 0 10px!important}
.wc-block-components-product-image img,.wc-block-grid__product-image img{display:block!important;width:100%!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:9px!important}
.wc-block-components-product-name,.wc-block-grid__product-title,.wp-block-post-title.wc-block-components-product-name{display:block!important;min-height:3.45em!important;margin:0!important;padding:0 3px!important;font-family:var(--mmc-font-body)!important;font-size:.82rem!important;font-weight:700!important;line-height:1.38!important;letter-spacing:0!important;color:var(--mmc-berry)!important;text-decoration:none!important}
.wc-block-components-product-name a,.wc-block-grid__product-title a{color:var(--mmc-berry)!important;text-decoration:none!important}
.wc-block-components-product-price,.wc-block-grid__product-price,.wp-block-woocommerce-product-price{display:flex!important;align-items:center!important;min-height:2.4em!important;margin:8px 3px 10px!important;font-family:var(--mmc-font-body)!important;font-size:.88rem!important;font-weight:700!important;color:var(--mmc-hot)!important}
.wc-block-components-product-button,.wc-block-grid__product-add-to-cart,.wp-block-woocommerce-product-button{margin-top:auto!important;width:100%!important}
.wc-block-components-product-button .wc-block-components-product-button__button,.wc-block-grid__product-add-to-cart .wp-block-button__link,.wp-block-woocommerce-product-button .wp-block-button__link{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:39px!important;padding:8px 9px!important;border:0!important;border-radius:7px!important;background:linear-gradient(135deg,var(--mmc-hot),var(--mmc-berry))!important;color:#fff!important;font-family:var(--mmc-font-body)!important;font-size:.7rem!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;box-shadow:0 9px 20px rgba(177,43,87,.2)!important}

/* Cart and checkout storefront treatment. */
.mmc-commerce-intro{max-width:760px;margin:0 auto 32px;text-align:center}
.mmc-commerce-intro .mmc-script-kicker{margin-bottom:4px}
.mmc-commerce-intro h1{font-size:clamp(2.35rem,4vw,3.8rem);color:var(--mmc-berry);margin-bottom:10px}
.mmc-commerce-intro p:last-child{max-width:620px;margin:0 auto;color:var(--mmc-muted)}
.woocommerce-cart .mmc-page-content>.woocommerce,.woocommerce-checkout .mmc-page-content>.woocommerce,.woocommerce-cart .entry-content>.woocommerce,.woocommerce-checkout .entry-content>.woocommerce{width:min(1120px,calc(100% - 40px));margin:58px auto 90px}
.woocommerce-cart table.shop_table,.woocommerce-checkout table.shop_table{border:1px solid rgba(218,68,124,.2)!important;border-radius:14px!important;overflow:hidden!important;box-shadow:0 16px 38px rgba(99,31,57,.08)!important}
.woocommerce-cart table.shop_table thead,.woocommerce-checkout table.shop_table thead{background:linear-gradient(135deg,#fff0f6,#fbd0e0)}
.woocommerce-cart table.shop_table th,.woocommerce-checkout table.shop_table th{font-size:.75rem!important;letter-spacing:.09em;text-transform:uppercase;color:var(--mmc-berry)!important}
.woocommerce-cart table.shop_table td,.woocommerce-checkout table.shop_table td{font-size:.9rem;color:var(--mmc-ink)}
.woocommerce-cart .cart-collaterals .cart_totals{padding:28px!important;border:1px solid rgba(218,68,124,.22)!important;border-radius:14px!important;background:linear-gradient(145deg,#fff,#fff3f8)!important;box-shadow:0 18px 42px rgba(99,31,57,.09)!important}
.woocommerce-cart .cart-collaterals .cart_totals h2,.woocommerce-checkout #order_review_heading,.woocommerce-checkout .woocommerce-billing-fields>h3,.woocommerce-checkout .woocommerce-additional-fields>h3{font-size:1.55rem!important;color:var(--mmc-berry)!important}
.woocommerce-cart .checkout-button,.woocommerce-checkout #place_order{min-height:52px!important;font-size:.86rem!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2,.woocommerce-checkout-review-order{border:1px solid rgba(218,68,124,.2)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 16px 38px rgba(99,31,57,.08)!important}
.woocommerce-checkout #payment{border:1px solid rgba(218,68,124,.2)!important;border-radius:14px!important;background:linear-gradient(145deg,#fff,#fff3f8)!important}
.woocommerce-checkout #payment div.payment_box{background:#fff!important;border:1px solid var(--mmc-border)!important;border-radius:9px!important}
.woocommerce-checkout #payment div.payment_box:before{border-bottom-color:var(--mmc-border)!important}
.woocommerce form.checkout_coupon,.woocommerce form.login{border:1px solid rgba(218,68,124,.2)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 12px 30px rgba(99,31,57,.06)!important}

/* WooCommerce Cart and Checkout blocks, should they be enabled later. */
.wc-block-cart,.wc-block-checkout{width:min(1120px,calc(100% - 40px))!important;margin:58px auto 90px!important;color:var(--mmc-ink)!important}
.wc-block-components-sidebar-layout{gap:24px!important}
.wc-block-cart-items,.wc-block-components-totals-wrapper,.wc-block-checkout__form,.wc-block-checkout__order-notes,.wc-block-components-checkout-step,.wc-block-components-sidebar{border-color:rgba(218,68,124,.2)!important}
.wc-block-components-sidebar{padding:24px!important;border:1px solid rgba(218,68,124,.2)!important;border-radius:14px!important;background:linear-gradient(145deg,#fff,#fff3f8)!important;box-shadow:0 16px 38px rgba(99,31,57,.08)!important}
.wc-block-components-title,.wc-block-components-checkout-step__title{color:var(--mmc-berry)!important;font-family:var(--mmc-font-display)!important}
.wc-block-components-button:not(.is-link){border-radius:7px!important;background:linear-gradient(135deg,var(--mmc-hot),var(--mmc-berry))!important;color:#fff!important;box-shadow:0 10px 24px rgba(177,43,87,.22)!important}

@media(max-width:1050px){
  .mmc-shop-shell{width:min(920px,calc(100% - 36px))}
  .wc-block-product-template,.wc-block-grid__products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .mmc-shop-shell{width:calc(100% - 24px)}
  .wc-block-product-template,.wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .woocommerce-cart .mmc-page-content>.woocommerce,.woocommerce-checkout .mmc-page-content>.woocommerce,.woocommerce-cart .entry-content>.woocommerce,.woocommerce-checkout .entry-content>.woocommerce,.wc-block-cart,.wc-block-checkout{width:calc(100% - 24px)!important;margin:36px auto 64px!important}
}
@media(max-width:480px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title,.wc-block-components-product-name,.wc-block-grid__product-title,.wp-block-post-title.wc-block-components-product-name{font-size:.74rem!important;min-height:3.65em!important}
  .woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price,.wc-block-components-product-price,.wc-block-grid__product-price,.wp-block-woocommerce-product-price{font-size:.8rem!important}
}

/* v1.4 final compact product system and archive width fixes */
body.post-type-archive-product .mmc-shop-shell,
body.tax-product_cat .mmc-shop-shell,
body.tax-product_tag .mmc-shop-shell,
body.woocommerce-shop .mmc-shop-shell{
  width:min(980px,calc(100% - 40px))!important;
  max-width:980px!important;
}
body.post-type-archive-product .mmc-shop-intro,
body.post-type-archive-product .mmc-shop-filter,
body.post-type-archive-product .mmc-filter-status,
body.post-type-archive-product #mmc-product-results,
body.tax-product_cat .mmc-shop-intro,
body.tax-product_cat .mmc-shop-filter,
body.tax-product_cat .mmc-filter-status,
body.tax-product_cat #mmc-product-results,
body.woocommerce-shop .mmc-shop-intro,
body.woocommerce-shop .mmc-shop-filter,
body.woocommerce-shop .mmc-filter-status,
body.woocommerce-shop #mmc-product-results{
  width:100%!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products,
body.woocommerce-shop ul.products{
  width:100%!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  gap:14px!important;
}

/* Theme-generated homepage products are not inside WooCommerce's archive wrapper. */
.mmc-products-section .mmc-shell{width:min(1120px,calc(100% - 48px))}
.mmc-product-grid{align-items:stretch!important;gap:16px!important}
.mmc-product-grid li.product,
.mmc-products-section ul.products li.product,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  display:flex!important;
  flex-direction:column!important;
  align-self:stretch!important;
  height:auto!important;
  min-height:0!important;
  padding:9px 9px 12px!important;
  background:#fff!important;
  border:1px solid rgba(218,68,124,.2)!important;
  border-radius:13px!important;
  box-shadow:0 9px 24px rgba(99,31,57,.065)!important;
  overflow:visible!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.mmc-product-grid li.product:hover,
.mmc-products-section ul.products li.product:hover,
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(218,68,124,.7)!important;
  box-shadow:0 18px 40px rgba(218,68,124,.18),0 0 20px rgba(247,168,199,.34)!important;
}
.mmc-product-grid li.product a,
.mmc-products-section ul.products li.product a{
  text-decoration:none!important;
}
.mmc-product-grid li.product a.woocommerce-LoopProduct-link,
.mmc-products-section ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products li.product a.woocommerce-LoopProduct-link{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-height:0!important;
}
.mmc-product-grid li.product a img,
.mmc-products-section ul.products li.product a img,
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img{
  display:block!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  margin:0 0 9px!important;
  border-radius:8px!important;
}
.mmc-product-grid li.product .woocommerce-loop-product__title,
.mmc-products-section ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title{
  min-height:2.9em!important;
  margin:0!important;
  padding:0 3px!important;
  font-family:var(--mmc-font-body)!important;
  font-size:.76rem!important;
  font-weight:700!important;
  line-height:1.42!important;
  letter-spacing:0!important;
  color:var(--mmc-berry)!important;
  text-decoration:none!important;
}
.mmc-product-grid li.product .price,
.mmc-products-section ul.products li.product .price,
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price{
  display:flex!important;
  align-items:center!important;
  min-height:2.1em!important;
  margin:7px 3px 9px!important;
  font-family:var(--mmc-font-body)!important;
  font-size:.82rem!important;
  font-weight:700!important;
  line-height:1.25!important;
  color:var(--mmc-hot)!important;
}
.mmc-product-grid li.product .button,
.mmc-products-section ul.products li.product .button,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  width:calc(100% - 6px)!important;
  height:auto!important;
  min-height:38px!important;
  margin:auto 3px 1px!important;
  padding:9px 8px!important;
  overflow:visible!important;
  white-space:normal!important;
  font-family:var(--mmc-font-body)!important;
  font-size:.68rem!important;
  font-weight:700!important;
  line-height:1.2!important;
  color:#fff!important;
  text-align:center!important;
  text-decoration:none!important;
  border-radius:7px!important;
  background:linear-gradient(135deg,var(--mmc-hot),var(--mmc-berry))!important;
  box-shadow:0 8px 18px rgba(177,43,87,.2)!important;
}

/* Product Collection / Query Loop title reset for existing homepage content. */
.wp-block-woocommerce-product-collection .wp-block-post-template,
.wp-block-woocommerce-product-template,
.mmc-products-section .wp-block-post-template{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  padding:0!important;
  list-style:none!important;
}
.wp-block-woocommerce-product-collection .wp-block-post,
.wp-block-woocommerce-product-template .wp-block-post,
.mmc-products-section .wp-block-post{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:9px 9px 12px!important;
  background:#fff!important;
  border:1px solid rgba(218,68,124,.2)!important;
  border-radius:13px!important;
  box-shadow:0 9px 24px rgba(99,31,57,.065)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.wp-block-woocommerce-product-collection .wp-block-post:hover,
.wp-block-woocommerce-product-template .wp-block-post:hover,
.mmc-products-section .wp-block-post:hover{
  transform:translateY(-5px)!important;
  border-color:rgba(218,68,124,.7)!important;
  box-shadow:0 18px 40px rgba(218,68,124,.18),0 0 20px rgba(247,168,199,.34)!important;
}
.wp-block-woocommerce-product-collection .wp-block-post-title,
.wp-block-woocommerce-product-template .wp-block-post-title,
.mmc-products-section .wp-block-post-title,
.wc-block-product .wp-block-post-title{
  min-height:2.9em!important;
  margin:0!important;
  padding:0 3px!important;
  font-family:var(--mmc-font-body)!important;
  font-size:.76rem!important;
  font-weight:700!important;
  line-height:1.42!important;
  letter-spacing:0!important;
  color:var(--mmc-berry)!important;
}
.wp-block-woocommerce-product-collection .wp-block-post-title a,
.wp-block-woocommerce-product-template .wp-block-post-title a,
.mmc-products-section .wp-block-post-title a,
.wc-block-product .wp-block-post-title a{
  color:var(--mmc-berry)!important;
  text-decoration:none!important;
}

@media(max-width:1050px){
  body.post-type-archive-product .mmc-shop-shell,
  body.tax-product_cat .mmc-shop-shell,
  body.tax-product_tag .mmc-shop-shell,
  body.woocommerce-shop .mmc-shop-shell{width:min(880px,calc(100% - 36px))!important;max-width:880px!important}
  .mmc-product-grid,
  .wp-block-woocommerce-product-collection .wp-block-post-template,
  .wp-block-woocommerce-product-template,
  .mmc-products-section .wp-block-post-template{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:700px){
  body.post-type-archive-product .mmc-shop-shell,
  body.tax-product_cat .mmc-shop-shell,
  body.tax-product_tag .mmc-shop-shell,
  body.woocommerce-shop .mmc-shop-shell{width:calc(100% - 22px)!important}
  .mmc-products-section .mmc-shell{width:calc(100% - 22px)}
  .mmc-product-grid,
  .wp-block-woocommerce-product-collection .wp-block-post-template,
  .wp-block-woocommerce-product-template,
  .mmc-products-section .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .mmc-product-grid li.product .woocommerce-loop-product__title,
  .mmc-products-section ul.products li.product .woocommerce-loop-product__title,
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .woocommerce-page ul.products li.product .woocommerce-loop-product__title,
  .wp-block-woocommerce-product-collection .wp-block-post-title,
  .wp-block-woocommerce-product-template .wp-block-post-title,
  .mmc-products-section .wp-block-post-title,
  .wc-block-product .wp-block-post-title{font-size:.7rem!important;min-height:3.1em!important}
  .mmc-product-grid li.product .button,
  .mmc-products-section ul.products li.product .button,
  .woocommerce ul.products li.product .button,
  .woocommerce-page ul.products li.product .button{font-size:.64rem!important;min-height:36px!important}
}

/* v1.5 breathing room below shop product grids */
body.post-type-archive-product .mmc-shop-shell,
body.tax-product_cat .mmc-shop-shell,
body.tax-product_tag .mmc-shop-shell,
body.woocommerce-shop .mmc-shop-shell{
  padding-bottom:72px!important;
}
body.post-type-archive-product #mmc-product-results,
body.tax-product_cat #mmc-product-results,
body.tax-product_tag #mmc-product-results,
body.woocommerce-shop #mmc-product-results,
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products,
body.woocommerce-shop ul.products{
  margin-bottom:0!important;
}
@media(max-width:700px){
  body.post-type-archive-product .mmc-shop-shell,
  body.tax-product_cat .mmc-shop-shell,
  body.tax-product_tag .mmc-shop-shell,
  body.woocommerce-shop .mmc-shop-shell{padding-bottom:44px!important}
}

/* v2.1 premium customer account portal */
body.woocommerce-account .mmc-page-main{padding-bottom:100px;background:linear-gradient(180deg,#fffafd 0%,#fff5fa 100%)}
body.woocommerce-account .mmc-page-header{padding-top:54px;padding-bottom:28px}
body.woocommerce-account .mmc-page-header h1{font-size:clamp(2.5rem,4.5vw,4.4rem)}
body.woocommerce-account .mmc-page-content{width:min(1180px,calc(100% - 48px));margin-inline:auto}
body.woocommerce-account .woocommerce::before,body.woocommerce-account .woocommerce::after{display:none!important;content:none!important}
body.woocommerce-account .woocommerce{display:grid!important;grid-template-columns:280px minmax(0,1fr)!important;gap:28px!important;align-items:start!important;width:100%!important;max-width:none!important;margin:0!important}
body.woocommerce-account .woocommerce-MyAccount-navigation{grid-column:1!important;grid-row:1!important;order:1!important;float:none!important;width:100%!important;margin:0!important;padding:16px!important;background:linear-gradient(180deg,#fff 0%,#fff8fb 100%)!important;border:1px solid rgba(218,68,124,.2)!important;border-radius:18px!important;box-shadow:0 18px 48px rgba(99,31,57,.09)!important;overflow:hidden}
body.woocommerce-account .woocommerce-MyAccount-navigation:before{content:"My account";display:block;padding:8px 12px 16px;color:var(--mmc-berry);font-family:var(--mmc-font-display);font-size:1.55rem;font-weight:700;border-bottom:1px solid rgba(218,68,124,.16)}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid!important;gap:5px!important;list-style:none!important;margin:12px 0 0!important;padding:0!important}
body.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0!important;padding:0!important;border:0!important}
body.woocommerce-account .woocommerce-MyAccount-navigation li a{display:flex!important;align-items:center!important;min-height:46px!important;padding:11px 13px!important;border:0!important;border-radius:10px!important;color:#65434f!important;font-size:.84rem!important;font-weight:700!important;line-height:1.25!important;text-decoration:none!important;transition:background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease!important}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{background:#fff0f6!important;color:var(--mmc-berry)!important;transform:translateX(3px)}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:linear-gradient(135deg,var(--mmc-hot),var(--mmc-berry))!important;color:#fff!important;box-shadow:0 10px 22px rgba(177,43,87,.2)!important}
body.woocommerce-account .woocommerce-MyAccount-content{grid-column:2!important;grid-row:1!important;order:2!important;float:none!important;width:100%!important;min-width:0!important;min-height:390px!important;margin:0!important;padding:34px 36px!important;background:#fff!important;border:1px solid rgba(218,68,124,.18)!important;border-radius:18px!important;box-shadow:0 18px 48px rgba(99,31,57,.08)!important;color:#5e414b}
body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{margin-top:0;font-size:1.02rem;line-height:1.75}
body.woocommerce-account .woocommerce-MyAccount-content h2,body.woocommerce-account .woocommerce-MyAccount-content h3{margin-top:0;color:var(--mmc-berry);font-family:var(--mmc-font-display)}
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button){color:var(--mmc-hot);font-weight:600;text-decoration-thickness:1px}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address{float:none!important;width:auto!important;margin:0!important;padding:22px;background:#fff8fb;border:1px solid rgba(218,68,124,.16);border-radius:14px}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table{margin-bottom:0!important;box-shadow:none!important}
body.woocommerce-account .woocommerce-MyAccount-content .button{min-height:42px!important;font-size:.76rem!important}

body.woocommerce-account:not(.logged-in) .woocommerce{display:block!important;max-width:980px!important;margin-inline:auto!important}
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1,body.woocommerce-account:not(.logged-in) .woocommerce .u-column2{float:none!important;width:auto!important;padding:30px!important;background:#fff;border:1px solid rgba(218,68,124,.18);border-radius:18px;box-shadow:0 18px 48px rgba(99,31,57,.08)}

@media(max-width:900px){
  body.woocommerce-account .mmc-page-content{width:min(100% - 32px,760px)}
  body.woocommerce-account .woocommerce{grid-template-columns:1fr!important;gap:20px!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation,body.woocommerce-account .woocommerce-MyAccount-content{grid-column:1!important;grid-row:auto!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation:before{text-align:center}
}
@media(max-width:640px){
  body.woocommerce-account .mmc-page-main{padding-bottom:70px}
  body.woocommerce-account .mmc-page-content{width:calc(100% - 24px)}
  body.woocommerce-account .woocommerce-MyAccount-navigation{padding:12px!important;border-radius:14px!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{grid-template-columns:1fr!important}
  body.woocommerce-account .woocommerce-MyAccount-content{padding:22px 18px!important;border-radius:14px!important}
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr}
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns{grid-template-columns:1fr}
}
