/*
 * MeowMunchBD: WooCommerce pages (shop toolbar, notices, forms, product,
 * cart, checkout, account). WooCommerce's own styles are switched off.
 */

/* Shop toolbar ------------------------------------------------------------ */
.mm-shop { padding-top: 32px; padding-bottom: var(--mm-section); }
.mm-shop .woocommerce-result-count { float: left; margin: 0 0 24px; font: 400 14px/44px var(--mm-sans); color: var(--mm-muted); }
.mm-shop .woocommerce-ordering { float: right; margin: 0 0 24px; }
.mm-shop ul.products { clear: both; }
.woocommerce-ordering select,
.woocommerce select,
.select2-container .select2-selection--single {
	height: 44px; padding: 0 40px 0 16px; border: 1px solid var(--mm-line); border-radius: 999px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23161412' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center / 16px no-repeat;
	font: 600 13px/18px var(--mm-sans); color: var(--mm-ink); appearance: none; cursor: pointer;
}
.woocommerce-info.woocommerce-no-products-found, .woocommerce-no-products-found { clear: both; }

/* Notices ------------------------------------------------------------------ */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
	display: flex; flex-wrap: wrap; align-items: center; gap: 12px; justify-content: space-between;
	margin: 0 0 24px; padding: 16px 20px; list-style: none;
	border-radius: 16px; background: var(--mm-cream); border: 1px solid var(--mm-line);
	font: 400 14px/22px var(--mm-sans); color: var(--mm-ink);
}
.woocommerce-message { border-color: #CBE7D6; background: #F1FAF4; }
.woocommerce-error { border-color: #F6C9CE; background: var(--mm-red-tint); display: block; }
.woocommerce-error li + li { margin-top: 4px; }
.woocommerce-message .button, .woocommerce-info .button { order: 2; }

/* Buttons and forms -------------------------------------------------------- */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
.wc-block-components-button, .woocommerce-Button {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 48px; padding: 14px 24px; border: 0; border-radius: 999px;
	background: var(--mm-ink); color: #fff; font: 600 15px/20px var(--mm-sans);
	text-decoration: none; cursor: pointer; transition: background-color .18s;
}
.woocommerce .button:hover, .woocommerce button.button:hover, .woocommerce a.button:hover { background: #000; color: #fff; }
.woocommerce .button.alt, .single_add_to_cart_button, .checkout-button, #place_order {
	background: var(--mm-red) !important; color: #fff !important;
}
.woocommerce .button.alt:hover, .single_add_to_cart_button:hover, .checkout-button:hover, #place_order:hover { background: var(--mm-red-dark) !important; }
.woocommerce .button:disabled, .woocommerce .button.disabled { opacity: .5; cursor: not-allowed; }

.woocommerce form .form-row { margin: 0 0 18px; }
.woocommerce form .form-row label { display: block; margin-bottom: 8px; font: 600 13px/18px var(--mm-sans); color: var(--mm-ink); }
.woocommerce form .form-row .required { color: var(--mm-red); text-decoration: none; }
.woocommerce form .form-row .optional { color: var(--mm-faint); font-weight: 400; }
.woocommerce input.input-text, .woocommerce textarea, .woocommerce-page input[type="email"], .woocommerce-page input[type="tel"],
.woocommerce-page input[type="text"], .woocommerce-page input[type="password"], .woocommerce-page input[type="number"] {
	width: 100%; min-height: 52px; padding: 13px 16px; border: 1px solid var(--mm-line); border-radius: 14px;
	background: #fff; font: 400 16px/24px var(--mm-sans); color: var(--mm-ink); transition: border-color .18s;
}
.woocommerce textarea { min-height: 96px; resize: vertical; }
.woocommerce input.input-text:focus, .woocommerce textarea:focus { outline: none; border-color: var(--mm-ink); }
.woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: var(--mm-red); }
.form-row-first, .form-row-last { width: calc(50% - 8px); float: left; }
.form-row-last { float: right; }
.form-row-wide { clear: both; }
.woocommerce form .clear, .woocommerce .col2-set::after, .woocommerce form .woocommerce-address-fields__field-wrapper::after { content: ""; display: table; clear: both; }
.select2-container .select2-selection--single { display: flex; align-items: center; height: 52px; border-radius: 14px; font-weight: 400; font-size: 16px; }
.select2-container .select2-selection--single .select2-selection__rendered { padding: 0; line-height: 52px; }
.select2-container .select2-selection--single .select2-selection__arrow { display: none; }
.select2-dropdown { border-color: var(--mm-line); border-radius: 14px; overflow: hidden; }
.select2-results__option--highlighted { background: var(--mm-red) !important; }

/* Quantity ------------------------------------------------------------------ */
.quantity { display: inline-flex; }
.quantity .qty {
	width: 96px; min-height: 52px; padding: 0 12px; border: 1px solid var(--mm-line); border-radius: 999px;
	text-align: center; font: 600 16px/1 var(--mm-sans); background: #fff;
}

/* Single product ------------------------------------------------------------ */
.mm-product-wrap { padding-top: 24px; padding-bottom: var(--mm-section); }
.mm-product-wrap > .mm-crumbs { margin-bottom: 24px; }
.mm-product-wrap div.product { display: grid; grid-template-columns: minmax(0, 660px) minmax(0, 476px); justify-content: space-between; gap: 0 64px; position: relative; }
.mm-product-wrap div.product > .onsale { position: absolute; z-index: 3; top: 20px; left: 20px; padding: 5px 10px; border-radius: 999px; background: var(--mm-red); color: #fff; font: 600 10.5px/16px var(--mm-sans); letter-spacing: .14em; text-transform: uppercase; }
.woocommerce-product-gallery { position: relative; grid-column: 1; margin: 0; }
.woocommerce-product-gallery__wrapper { margin: 0; }
.woocommerce-product-gallery .woocommerce-product-gallery__image, .woocommerce-product-gallery .flex-viewport { border-radius: 28px; overflow: hidden; background: var(--mm-sand); }
.woocommerce-product-gallery img { width: 100%; height: auto; }
.woocommerce-product-gallery__trigger { position: absolute; z-index: 2; top: 20px; right: 20px; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 999px; background: #fff; font-size: 0; }
.woocommerce-product-gallery__trigger::before { content: ""; width: 18px; height: 18px; background: var(--mm-ink); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4M11 8v6M8 11h6'/%3E%3C/svg%3E") center/contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-4-4M11 8v6M8 11h6'/%3E%3C/svg%3E") center/contain no-repeat; }
.woocommerce-product-gallery .flex-control-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 12px; list-style: none; }
.woocommerce-product-gallery .flex-control-thumbs img { border-radius: 16px; cursor: pointer; opacity: .6; transition: opacity .18s; }
.woocommerce-product-gallery .flex-control-thumbs img.flex-active, .woocommerce-product-gallery .flex-control-thumbs img:hover { opacity: 1; }
.mm-product-wrap .summary { grid-column: 2; display: flex; flex-direction: column; gap: 16px; }
.mm-product-wrap .product_title { font: 400 44px/50px var(--mm-serif); letter-spacing: -.005em; color: var(--mm-ink); }
.mm-product-wrap .summary .price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; font: 700 36px/44px var(--mm-sans); color: var(--mm-ink); }
.mm-product-wrap .summary .price ins { order: 1; text-decoration: none; color: var(--mm-red); }
.mm-product-wrap .summary .price del { order: 2; font: 400 22px/29px var(--mm-sans); color: var(--mm-muted); }
.mm-product-wrap .woocommerce-product-details__short-description { color: var(--mm-muted); font-size: 16px; line-height: 26px; padding-bottom: 20px; border-bottom: 1px solid var(--mm-line); }
.mm-product-wrap .woocommerce-product-rating { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--mm-muted); }
.mm-product-wrap .stock { font: 600 13px/18px var(--mm-sans); color: var(--mm-green); }
.mm-product-wrap .stock.out-of-stock { color: var(--mm-red); }
.mm-product-wrap form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.mm-product-wrap form.cart .single_add_to_cart_button { flex: 1; min-height: 56px; }
.mm-product-wrap table.variations { width: 100%; border-collapse: collapse; margin-bottom: 8px; }
.mm-product-wrap table.variations th, .mm-product-wrap table.variations td { display: block; padding: 0; text-align: left; }
.mm-product-wrap table.variations th label { font: 600 13px/18px var(--mm-sans); }
.mm-product-wrap table.variations td { margin: 8px 0 16px; }
.mm-product-wrap table.variations select { width: 100%; border-radius: 14px; height: 52px; }
.mm-product-wrap .reset_variations { display: inline-block; margin-top: 8px; font-size: 13px; color: var(--mm-muted); }
.mm-product-wrap .single_variation_wrap { width: 100%; }
.mm-product-wrap .woocommerce-variation-add-to-cart { display: flex; gap: 12px; margin-top: 12px; }
.mm-product-wrap .product_meta { display: grid; gap: 4px; font-size: 13px; color: var(--mm-muted); }
.mm-product-wrap .product_meta a { color: var(--mm-ink); }
.mm-dcard { display: grid; gap: 16px; padding: 20px; list-style: none; border: 1px solid var(--mm-line); border-radius: 20px; }
.mm-dcard__row { display: flex; align-items: center; gap: 14px; }
.mm-dcard__icon { display: grid; place-items: center; flex: none; width: 40px; height: 40px; border-radius: 999px; background: var(--mm-sand); }
.mm-dcard__icon .mm-icon { width: 18px; height: 18px; }
.mm-dcard__row strong { display: block; font: 600 14px/18px var(--mm-sans); }
.mm-dcard__row span span { display: block; font: 400 12px/16px var(--mm-sans); color: var(--mm-muted); margin-top: 2px; }

.woocommerce-tabs { grid-column: 1 / -1; margin-top: 72px; }
.woocommerce-tabs ul.tabs { display: flex; gap: 36px; list-style: none; border-bottom: 1px solid var(--mm-line); overflow-x: auto; }
.woocommerce-tabs ul.tabs li a { display: block; padding: 0 0 14px; border-bottom: 2px solid transparent; font: 600 15px/20px var(--mm-sans); color: var(--mm-muted); white-space: nowrap; }
.woocommerce-tabs ul.tabs li.active a { color: var(--mm-ink); border-color: var(--mm-red); }
.woocommerce-tabs .panel { max-width: 760px; padding-top: 32px; color: var(--mm-charcoal); }
.woocommerce-tabs .panel > h2:first-child { font: 400 32px/38px var(--mm-serif); margin-bottom: 16px; color: var(--mm-ink); }
.woocommerce-tabs .panel p + p { margin-top: 12px; }
.woocommerce-tabs table.shop_attributes { width: 100%; border-collapse: collapse; }
.woocommerce-tabs table.shop_attributes th, .woocommerce-tabs table.shop_attributes td { padding: 12px 0; border-bottom: 1px solid var(--mm-line); text-align: left; font-size: 14px; }
.woocommerce-tabs table.shop_attributes th { width: 200px; font-weight: 600; }
.related.products, .upsells.products { grid-column: 1 / -1; margin-top: 96px; }
.related.products > h2, .upsells.products > h2, .cross-sells > h2 { margin-bottom: 36px; font: 400 44px/50px var(--mm-serif); color: var(--mm-ink); }

/* Reviews */
#reviews .commentlist { list-style: none; display: grid; gap: 24px; }
#reviews .comment_container { display: flex; gap: 16px; }
#reviews .avatar { border-radius: 999px; width: 48px; height: 48px; }
#reviews .meta { font-size: 13px; color: var(--mm-muted); }
#reviews .star-rating { display: none; }
#review_form .comment-reply-title { display: block; margin: 24px 0 12px; font: 600 20px/28px var(--mm-sans); }
.comment-form-rating .stars a { color: var(--mm-star); }

/* Tables (cart, order review, account) -------------------------------------- */
.woocommerce table.shop_table { width: 100%; border-collapse: collapse; font-size: 15px; }
.woocommerce table.shop_table th { padding: 0 0 12px; text-align: left; font: 600 12px/16px var(--mm-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--mm-muted); border-bottom: 1px solid var(--mm-line); }
.woocommerce table.shop_table td { padding: 18px 0; border-bottom: 1px solid var(--mm-line); vertical-align: middle; }
.woocommerce table.shop_table td + td, .woocommerce table.shop_table th + th { padding-left: 16px; }

/* Cart ----------------------------------------------------------------------- */
.mm-freebar { margin-bottom: 32px; padding: 16px 20px; border-radius: 18px; background: var(--mm-cream); }
.mm-freebar__text { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font: 600 14px/18px var(--mm-sans); }
.mm-freebar__text strong { color: var(--mm-red); }
.mm-freebar__track { display: block; height: 6px; border-radius: 999px; background: var(--mm-sand-dark); overflow: hidden; }
.mm-freebar__track span { display: block; height: 100%; border-radius: 999px; background: var(--mm-red); }
.mm-freebar.is-done .mm-freebar__track span { background: var(--mm-green); }
.woocommerce-cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 0 48px; align-items: start; }
.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper, .woocommerce-cart .woocommerce > .mm-freebar, .woocommerce-cart .woocommerce > .cart-empty, .woocommerce-cart .woocommerce > .return-to-shop, .woocommerce-cart .woocommerce > .wc-empty-cart-message { grid-column: 1 / -1; }
.woocommerce-cart table.cart .product-thumbnail { width: 96px; }
.woocommerce-cart table.cart .product-thumbnail img { width: 80px; height: 80px; object-fit: cover; border-radius: 16px; background: var(--mm-sand); }
.woocommerce-cart table.cart .product-name a { font-weight: 600; color: var(--mm-ink); }
.woocommerce-cart table.cart .product-remove a { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 999px; font-size: 20px; color: var(--mm-muted); }
.woocommerce-cart table.cart .product-remove a:hover { background: var(--mm-red-tint); color: var(--mm-red); }
.woocommerce-cart table.cart .product-subtotal { text-align: right; font-weight: 700; }
.woocommerce-cart table.cart td.actions { padding-top: 24px; border-bottom: 0; }
.woocommerce-cart .coupon { display: inline-flex; gap: 8px; }
.woocommerce-cart .coupon .input-text { width: 200px; min-height: 48px; border-radius: 999px; }
.woocommerce-cart td.actions > .button { float: right; background: transparent; color: var(--mm-ink); border: 1.5px solid var(--mm-ink); }
.woocommerce-cart td.actions > .button:hover { background: var(--mm-ink); color: #fff; }
.cart-collaterals { position: sticky; top: 160px; }
.cart_totals { padding: 28px; border-radius: 24px; background: var(--mm-cream); }
.cart_totals > h2 { margin-bottom: 16px; font: 400 32px/38px var(--mm-serif); }
.cart_totals table.shop_table th { padding: 12px 0; border: 0; font: 400 14px/22px var(--mm-sans); letter-spacing: 0; text-transform: none; color: var(--mm-muted); vertical-align: top; }
.cart_totals table.shop_table td { padding: 12px 0; border: 0; text-align: right; }
.cart_totals .order-total th, .cart_totals .order-total td { padding-top: 18px; border-top: 1px solid var(--mm-line); }
.cart_totals .order-total td { font: 700 28px/38px var(--mm-sans); }
.cart_totals .woocommerce-shipping-methods { list-style: none; display: grid; gap: 6px; }
.cart_totals .woocommerce-shipping-destination, .cart_totals .shipping-calculator-button { font-size: 12px; color: var(--mm-muted); }
.wc-proceed-to-checkout .checkout-button { width: 100%; min-height: 56px; margin-top: 12px; }
.cross-sells { grid-column: 1 / -1; margin-top: 72px; }

/* Checkout ------------------------------------------------------------------- */
.woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 720px) minmax(0, 440px); justify-content: space-between; gap: 0 40px; align-items: start; }
.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; }
.woocommerce-checkout #customer_details { grid-column: 1; display: grid; gap: 20px; }
.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { padding: 32px; border: 1px solid var(--mm-line); border-radius: 24px; background: #fff; }
.woocommerce-checkout #customer_details .col-2:not(:has(.woocommerce-shipping-fields__field-wrapper, #order_comments)) { display: none; }
.woocommerce-checkout #customer_details h3 { margin-bottom: 20px; font: 600 20px/28px var(--mm-sans); }
.woocommerce-checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0; padding: 28px 28px 0; border-radius: 24px 24px 0 0; background: var(--mm-cream); font: 400 32px/38px var(--mm-serif); }
.woocommerce-checkout #order_review { grid-column: 2; grid-row: 2; padding: 16px 28px 28px; border-radius: 0 0 24px 24px; background: var(--mm-cream); }
.woocommerce-checkout #customer_details { grid-row: 1 / span 3; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { font-size: 14px; }
.woocommerce-checkout-review-order-table thead { display: none; }
.woocommerce-checkout-review-order-table td.product-total, .woocommerce-checkout-review-order-table tfoot td { text-align: right; }
.woocommerce-checkout-review-order-table tfoot th { font: 400 14px/22px var(--mm-sans); letter-spacing: 0; text-transform: none; color: var(--mm-muted); border: 0; padding: 10px 0; }
.woocommerce-checkout-review-order-table tfoot td { border: 0; padding: 10px 0; }
.woocommerce-checkout-review-order-table .order-total td { font: 700 26px/36px var(--mm-sans); }
.woocommerce-checkout-review-order-table .woocommerce-shipping-methods { list-style: none; display: grid; gap: 6px; }
#payment { margin-top: 20px; }
#payment ul.payment_methods { display: grid; gap: 10px; list-style: none; padding: 0; }
#payment ul.payment_methods li { padding: 16px; border: 1px solid var(--mm-line); border-radius: 16px; background: #fff; }
#payment ul.payment_methods li label { font-weight: 600; cursor: pointer; }
#payment .payment_box { margin-top: 10px; font-size: 13px; color: var(--mm-muted); }
#payment .place-order { margin-top: 20px; }
#payment #place_order { width: 100%; min-height: 56px; }
.woocommerce-terms-and-conditions-wrapper, .woocommerce-privacy-policy-text { font-size: 12px; color: var(--mm-muted); margin-bottom: 12px; }
.woocommerce-form-coupon-toggle .woocommerce-info, .woocommerce-form-login-toggle .woocommerce-info { display: block; }
.checkout_coupon, .woocommerce-form-login { margin-bottom: 24px; padding: 20px; border: 1px solid var(--mm-line); border-radius: 18px; }

/* Order received and account ------------------------------------------------- */
.woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 16px 32px; list-style: none; margin: 24px 0; padding: 20px; border-radius: 18px; background: var(--mm-cream); }
.woocommerce-order-overview li { font-size: 13px; color: var(--mm-muted); }
.woocommerce-order-overview strong { display: block; color: var(--mm-ink); font-size: 15px; }
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 40px; align-items: start; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { list-style: none; display: grid; gap: 4px; padding: 12px; border-radius: 20px; background: var(--mm-cream); }
.woocommerce-MyAccount-navigation a { display: block; padding: 10px 14px; border-radius: 12px; font: 600 14px/20px var(--mm-sans); color: var(--mm-ink); }
.woocommerce-MyAccount-navigation .is-active a { background: #fff; color: var(--mm-red); }
.woocommerce-account:not(.logged-in) .woocommerce { display: block; max-width: 520px; }
.woocommerce-form-login .woocommerce-form-login__rememberme { display: inline-flex; gap: 8px; align-items: center; font-size: 14px; }

/* Tablet and phone ------------------------------------------------------------ */
@media (max-width: 1099px) {
	.mm-product-wrap div.product { grid-template-columns: 1fr 1fr; gap: 0 32px; }
	.woocommerce-cart .woocommerce, .woocommerce-checkout form.checkout { grid-template-columns: 1fr; }
	.woocommerce-checkout #order_review_heading, .woocommerce-checkout #order_review, .woocommerce-checkout #customer_details { grid-column: 1; grid-row: auto; }
	.woocommerce-checkout #order_review_heading { margin-top: 24px; }
	.cart-collaterals { position: static; margin-top: 32px; }
}

@media (max-width: 767px) {
	.mm-shop { padding-top: 20px; }
	.mm-shop .woocommerce-result-count { display: none; }
	.mm-shop .woocommerce-ordering { float: none; margin-bottom: 20px; }
	.mm-shop .woocommerce-ordering select { width: 100%; }
	.mm-product-wrap div.product { display: block; }
	.mm-product-wrap .summary { margin-top: 24px; }
	.mm-product-wrap .product_title { font-size: 32px; line-height: 38px; }
	.mm-product-wrap .summary .price { font-size: 28px; line-height: 36px; }
	.woocommerce-tabs { margin-top: 44px; }
	.related.products, .upsells.products { margin-top: 56px; }
	.related.products > h2, .upsells.products > h2, .cross-sells > h2 { font-size: 32px; line-height: 38px; margin-bottom: 20px; }
	.form-row-first, .form-row-last { width: 100%; float: none; }
	.woocommerce-cart table.cart thead { display: none; }
	.woocommerce-cart table.cart tr.cart_item { display: grid; grid-template-columns: 88px 1fr auto; gap: 4px 12px; padding: 16px 0; border-bottom: 1px solid var(--mm-line); }
	.woocommerce-cart table.cart tr.cart_item td { display: block; padding: 0; border: 0; }
	.woocommerce-cart table.cart td.product-thumbnail { grid-row: 1 / span 3; width: auto; }
	.woocommerce-cart table.cart td.product-remove { grid-column: 3; grid-row: 1; }
	.woocommerce-cart table.cart td.product-name { grid-column: 2; grid-row: 1; }
	.woocommerce-cart table.cart td.product-price { display: none; }
	.woocommerce-cart table.cart td.product-quantity { grid-column: 2; }
	.woocommerce-cart table.cart td.product-subtotal { grid-column: 2 / -1; text-align: left; }
	.woocommerce-cart table.cart td::before { display: none; }
	.woocommerce-cart table.cart td.actions { display: grid; gap: 12px; }
	.woocommerce-cart td.actions > .button { float: none; width: 100%; }
	.woocommerce-cart .coupon { display: flex; }
	.woocommerce-cart .coupon .input-text { width: auto; flex: 1; }
	.cart_totals { padding: 20px; }
	.woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { padding: 20px; }
	.woocommerce-checkout #order_review_heading { padding: 20px 20px 0; }
	.woocommerce-checkout #order_review { padding: 12px 20px 20px; }
	.woocommerce-account .woocommerce { grid-template-columns: 1fr; gap: 20px; }
}

/* Content-page typography should not leak into WooCommerce blocks. */
.woocommerce h2, .woocommerce h3 { margin-top: 0; }
.mm-content .woocommerce > * + * { margin-top: 0; }
.woocommerce table.shop_table a:not(.button), .woocommerce-MyAccount-navigation a { text-decoration: none !important; color: var(--mm-ink) !important; }
.woocommerce table.shop_table a:not(.button):hover { color: var(--mm-red) !important; }
.woocommerce .quantity .qty { width: 96px; }
.mm-product-wrap form.cart .quantity { flex: none; }
.woocommerce table.shop_table tfoot th { padding: 10px 0; border: 0; font: 400 14px/22px var(--mm-sans); letter-spacing: 0; text-transform: none; color: var(--mm-muted); }
.woocommerce table.shop_table tfoot td { padding: 10px 0; border: 0; }
.woocommerce table.shop_table tfoot .order-total th, .woocommerce table.shop_table tfoot .order-total td { padding-top: 16px; border-top: 1px solid var(--mm-line); }
.mm-product-wrap .woocommerce-product-rating .woocommerce-review-link { color: var(--mm-muted); }
