/* Cart, checkout and account pages: the source renders them as a plain 1200px page with a 32px title (2em), 1.5em title gap
   and 60px vertical page margins (none below 921px). Both themes' page chrome is neutralised for these pages. */
body.mevv-woo-page .wp-site-blocks>main{box-sizing:border-box;width:100%;max-width:calc(var(--mevv-content-width,1200px) + 40px);min-height:0;margin:60px auto;padding:0 20px}
body.mevv-woo-page .wp-site-blocks>main>*{margin:0;max-width:none}
body.mevv-woo-page .wp-site-blocks>main .wp-block-post-title{font-size:2em;font-weight:600;line-height:1.2;margin:0 0 .75em;max-width:none;color:var(--mevv-color-heading,#0f172a)}
body.mevv-woo-page .wp-site-blocks>main .wp-block-post-content{max-width:none;margin:0}
body.mevv-woo-page .wp-site-blocks>main .wp-block-post-content>*{max-width:none;margin-left:0;margin-right:0}
body.mevv-woo-page .wp-site-blocks>main .wp-block-post-content>*+*{margin-top:0}
body.mevv-woo-page .mevvtheme-classic-main{padding:60px 20px}
body.mevv-woo-page .mevvtheme-classic-content{width:100%;max-width:var(--mevv-content-width,1200px)}
body.mevv-woo-page h1.mevvtheme-classic-entry-title{font-size:2em;font-weight:600;line-height:1.2;margin:0 0 .75em;color:var(--mevv-color-heading,#0f172a)}
@media(max-width:921px){
body.mevv-woo-page .wp-site-blocks>main{margin:0 auto}
body.mevv-woo-page .mevvtheme-classic-main{padding:0 20px}
}

/* Source side effects kept on purpose: its content list reset gives the steps bar 1em margins and a 20px indent; shipping methods list keeps Astra's hanging indent. */
body.mevv-woo-page .woocommerce ol.mevvcr-steps-bar{margin:0 0 1em;padding:0 0 0 20px}
body.mevv-woo-page ul#shipping_method{margin:0;padding:0;list-style:none}
body.mevv-woo-page ul#shipping_method li{margin:0;padding:.25em 0 .25em 22px;text-indent:-22px;list-style:none outside}
/* Two-column cart: form and cross-sells left (68%), totals right (30%, 28px down), as on the source. */
.mevv-cart-layout{display:flex;flex-wrap:wrap;align-items:flex-start}
.mevv-cart-main{box-sizing:border-box;width:68%}
body.mevv-woo-page .woocommerce .cart-collaterals{box-sizing:border-box;width:30%;margin:28px 0 0 2%;float:none}
body.mevv-woo-page .woocommerce .cart-collaterals .cart_totals{width:100%;float:none}
body.mevv-woo-page .woocommerce .cross-sells{width:100%;float:none}
/* Cross-sells: bordered list box with a surface-coloured heading bar and 70px rows, as on the source. */
body.mevv-woo-page .woocommerce .cross-sells{box-sizing:border-box;padding:0 16px;margin:0 0 2em;border:1px solid var(--mevv-color-border,#f0e6c5)}
body.mevv-woo-page .woocommerce .cross-sells>h2{font-size:1.2em;font-weight:700;line-height:1.2;margin:0 -15px -1px;padding:.7em 1em;background:var(--mevv-color-surface,#faf5e5);border-bottom:1px solid var(--mevv-color-border,#f0e6c5);color:var(--mevv-color-heading,#0f172a)}
body.mevv-woo-page .woocommerce .cross-sells ul.products{display:flow-root;margin:0;padding:0}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product{display:flex;align-items:flex-start;float:none;clear:both;width:100%;margin:0;padding:1em 0;border-bottom:1px solid var(--mevv-color-border,#f0e6c5)}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .mevv-product-image{flex:none;width:70px;margin:0 0 .8em}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .mevv-product-image img{width:70px;height:70px;object-fit:cover}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .mevv-product-summary{position:relative;flex:1 1 auto;min-width:0;padding:0 10em 0 1em}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .woocommerce-loop-product__title{font-size:1em;font-weight:500;line-height:1.2;margin:0 0 8px;padding:0}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .mevv-product-category{font-size:.85em;line-height:1.3;margin:0 0 .5em}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .price{position:absolute;right:0;top:-1px;margin:0;font-size:.9em;font-weight:700;line-height:1.3;text-align:right}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .button{position:absolute;right:0;bottom:0;margin:0;padding:.7em .8em;font-size:.8em;line-height:1;border-radius:50px}
@media(max-width:921px){
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .price{top:.9em}
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .button{bottom:.4em}
}
@media(max-width:544px){
body.mevv-woo-page .woocommerce .cross-sells ul.products li.product .mevv-product-summary{padding-right:7.5em}
}
/* Source button and field geometry on Woo pages (Astra global button: 15px 30px, 50px radius, brand). */
body.mevv-woo-page .woocommerce .button,body.mevv-woo-page .woocommerce a.button,body.mevv-woo-page .woocommerce button.button,body.mevv-woo-page .woocommerce input.button,body.mevv-woo-page .woocommerce #respond input#submit,body.mevv-woo-page .woocommerce button[type=submit]{display:inline-block;padding:15px 30px;border:0;border-radius:50px;background:var(--mevv-color-brand,#dca54a);color:var(--mevv-color-on-brand,#fff);font-family:inherit;font-size:1rem;font-weight:500;line-height:1;text-decoration:none;cursor:pointer}
body.mevv-woo-page .woocommerce .button:hover,body.mevv-woo-page .woocommerce button.button:hover,body.mevv-woo-page .woocommerce a.button:hover{background:var(--mevv-color-brand-hover,#d09a40);color:var(--mevv-color-on-brand,#fff)}
.mevv-cart-coupon{margin:1em 0}.mevv-cart-coupon__trigger{display:inline-block;width:auto;padding:0;border:0;background:none;color:var(--mevv-color-text,#4a4a4a);font:inherit;line-height:1.5;text-align:left;cursor:pointer}
.mevv-cart-coupon__form:not([hidden]){display:flex;gap:8px;margin-top:.5em}.mevv-cart-coupon__form input{flex:1 1 auto;min-width:0;box-sizing:border-box;height:40px;padding:0 12px;border:1px solid var(--mevv-color-border,#f0e6c5);border-radius:0;font:inherit}
body.mevv-woo-page .woocommerce .mevv-cart-coupon__form .button{padding:12px 20px}
body.mevv-woo-page .cart_totals table.shop_table th,body.mevv-woo-page .cart_totals table.shop_table td{padding:.7em 1em;border-bottom-width:0}
body.mevv-woo-page .cart_totals table.shop_table th{font-weight:500}
body.mevv-woo-page .woocommerce a.checkout-button{display:block;box-sizing:border-box;width:100%;padding:1em;font-size:1.1em;line-height:1.8;text-align:center}
body.mevv-woo-page .woocommerce .coupon input.input-text,body.mevv-woo-page .woocommerce .coupon input[type=text],body.mevv-woo-page .woocommerce .mevvcr-cartpage-coupon input,body.mevv-woo-page .woocommerce-cart-form #coupon_code{box-sizing:border-box;height:40px;padding:0 12px;border:1px solid var(--mevv-color-border,#f0e6c5);border-radius:0;font-size:1em}
body.mevv-woo-page .cart-collaterals .cart_totals{padding:0 20px;margin-bottom:2em;border-color:var(--mevv-color-border,#f0e6c5)}
body.mevv-woo-page .cart-collaterals .cart_totals>h2{font-size:17px;font-weight:500;line-height:1.36;margin:0 -20px 20px;padding:.7em 1em}
body.mevv-woo-page .woocommerce-message,body.mevv-woo-page .woocommerce-info{border-top-color:var(--mevv-color-brand,#dca54a)}
body.mevv-woo-page .woocommerce-message::before,body.mevv-woo-page .woocommerce-info::before{color:var(--mevv-color-brand,#dca54a)}
/* Checkout: source hides the coupon toggle (coupon lives in the summary) and uses compact floating labels. */
body.mevv-woo-page .woocommerce-form-coupon-toggle{display:none}
body.mevv-woo-page form.checkout .form-row{position:relative;padding:3px;margin:0 0 6px}
body.mevv-woo-page form.checkout .form-row input.input-text,body.mevv-woo-page form.checkout .form-row textarea,body.mevv-woo-page form.checkout .form-row select{box-sizing:border-box;padding:.9em .8em;border:1px solid var(--mevv-color-border,#f0e6c5);border-radius:4px;background:#fff;font-size:14.5px;line-height:1}
body.mevv-woo-page form.checkout .form-row input.input-text{height:46px}
body.mevv-woo-page form.checkout .form-row select{height:46px;padding:1.45em .8em .35em}
body.mevv-woo-page form.checkout .form-row textarea{height:88px}
body.mevv-woo-page form.checkout .form-row:not(:has(input[type=checkbox],input[type=radio]))>label{position:absolute;top:7px;left:3px;margin:0;padding:0 .77em;font-size:.7em;line-height:1.625;color:var(--mevv-color-text,#4a4a4a);opacity:0;pointer-events:none;transition:opacity .2s}
body.mevv-woo-page form.checkout .form-row.mevv-has-value:not(:has(input[type=checkbox],input[type=radio]))>label,body.mevv-woo-page form.checkout .form-row:focus-within:not(:has(input[type=checkbox],input[type=radio]))>label{opacity:1}
body.mevv-woo-page form.checkout .form-row.mevv-has-value input.input-text,body.mevv-woo-page form.checkout .form-row:focus-within input.input-text{padding-top:1.45em;padding-bottom:.35em}
body.mevv-woo-page form.checkout .form-row .required{color:inherit;text-decoration:none}
body.mevv-woo-page form.checkout h3{font-size:17px;font-weight:500;margin:0 0 20px;padding:20px 0 14px;border-bottom:1px solid var(--mevv-color-border,#f0e6c5)}
body.mevv-woo-page form.checkout .form-row.place-order,body.mevv-woo-page .woocommerce-checkout #payment div.place-order{padding:0 0 2em;margin:0}
body.mevv-woo-page form.checkout #place_order{display:block;width:100%}
@media(max-width:921px){
/* Stacked: a block wrapper lets the cross-sells bottom margin and the totals top margin collapse as on the source. */
.mevv-cart-layout{display:block}
.mevv-cart-main,body.mevv-woo-page .woocommerce .cart-collaterals{width:100%;margin-left:0}
}

/* My Account (logged out): the source shows plain login/register columns with floating labels and 40px fields. */
/* Source account page: content block carries 2em vertical margins (collapsing with the title gap). */
body.woocommerce-account.mevv-woo-page .wp-site-blocks>main .wp-block-post-content,body.woocommerce-account.mevv-woo-page article>.woocommerce{margin:2em 0}
/* The source's content column is a flex item, so that 2em bottom margin stays inside it instead of collapsing into the page gap. */
body.woocommerce-account.mevv-woo-page .wp-site-blocks>main,body.woocommerce-account.mevv-woo-page #primary{display:flow-root}
body.mevv-woo-page .woocommerce-account .col2-set .col-1>h2,body.mevv-woo-page .woocommerce-account .col2-set .col-2>h2,body.mevv-woo-page.woocommerce-account .col2-set h2{margin:0 0 .7em}
body.mevv-woo-page .woocommerce form.login,body.mevv-woo-page .woocommerce form.register{border:0;border-radius:0;padding:0;margin:0}
body.mevv-woo-page form.woocommerce-form .form-row{position:relative;padding:3px;margin:0 0 20px}
body.mevv-woo-page form.woocommerce-form .form-row input.input-text,body.mevv-woo-page form.woocommerce-form .form-row textarea{box-sizing:border-box;height:40px;padding:.9em .8em;border:1px solid var(--mevv-color-border,#f0e6c5);border-radius:4px;background:#fff;font-size:1em;line-height:1}
body.mevv-woo-page form.woocommerce-form .form-row:not(:has(input[type=checkbox],input[type=radio],button[type=submit]))>label{position:absolute;top:7px;left:3px;margin:0;padding:0 .77em;font-size:.7em;line-height:1.625;color:var(--mevv-color-text,#4a4a4a);opacity:0;pointer-events:none;transition:opacity .2s}
body.mevv-woo-page form.woocommerce-form .form-row.mevv-has-value:not(:has(input[type=checkbox],input[type=radio],button[type=submit]))>label,body.mevv-woo-page form.woocommerce-form .form-row:focus-within:not(:has(input[type=checkbox],input[type=radio],button[type=submit]))>label{opacity:1}
body.mevv-woo-page form.woocommerce-form .form-row .required{color:inherit;text-decoration:none}
body.mevv-woo-page form.woocommerce-form .woocommerce-form-login__rememberme{display:block;margin:0;padding:0;font-size:.9em;line-height:2}
body.mevv-woo-page form.woocommerce-form .woocommerce-form-login__rememberme input{margin:0 .35em 0 0;vertical-align:baseline}
body.mevv-woo-page .woocommerce .lost_password a{text-decoration:none}
body.mevv-woo-page form.woocommerce-form .show-password-input{width:16px;height:17px;top:50%;right:11px;transform:translateY(-50%);background-size:contain}
body.mevv-woo-page form.woocommerce-form .mevv-account-switch{margin:0 0 1.6em;font-size:1em;line-height:1.5}
body.mevv-woo-page form.woocommerce-form .mevv-account-switch a{color:var(--mevv-color-brand,#dca54a);font-weight:400;text-decoration:none}
/* Woo's disabled-button rule would shrink padding to .618em/1em; the source keeps the device padding and only fades the button. */
body.mevv-woo-page .woocommerce button.button:disabled,body.mevv-woo-page .woocommerce .button.disabled{padding:15px 30px;opacity:.5}
/* Source button padding steps by device (15/30 → 14/28 → 12/24) instead of scaling with the root font. */
@media(max-width:921px){body.mevv-woo-page .woocommerce .button,body.mevv-woo-page .woocommerce a.button,body.mevv-woo-page .woocommerce button.button,body.mevv-woo-page .woocommerce input.button,body.mevv-woo-page .woocommerce button[type=submit],body.mevv-woo-page .woocommerce button.button:disabled,body.mevv-woo-page .woocommerce .button.disabled{padding:14px 28px}}
@media(max-width:544px){body.mevv-woo-page .woocommerce .button,body.mevv-woo-page .woocommerce a.button,body.mevv-woo-page .woocommerce button.button,body.mevv-woo-page .woocommerce input.button,body.mevv-woo-page .woocommerce button[type=submit],body.mevv-woo-page .woocommerce button.button:disabled,body.mevv-woo-page .woocommerce .button.disabled{padding:12px 24px}}
/* Cart's proceed button keeps 1em padding on every device on the source; the place-order block ends with a centred back link. */
body.mevv-woo-page .woocommerce a.button.checkout-button{padding:1em}
body.mevv-woo-page .mevv-back-to-cart{clear:both;padding:.5em 0 0;text-align:center;line-height:1.5}
/* Source drops the bottom margin of the last field row in each checkout group. */
body.mevv-woo-page form.checkout .form-row:last-child{margin-bottom:0}
body.mevv-woo-page .mevv-back-to-cart a{color:var(--mevv-color-brand,#dca54a);font-weight:400;text-decoration:none}
/* Account forms: plain paragraphs use the source's 1.6em gap regardless of the theme's global paragraph margin. */
body.mevv-woo-page form.login p,body.mevv-woo-page form.register p{margin-bottom:1.6em}
/* Source keeps a 2em gap under the customer details card (matters where the columns stack). */
body.mevv-woo-page form.checkout #customer_details{margin-bottom:2em}
/* Source notices at phone width stack the action button under the text. */
@media(max-width:544px){body.mevv-woo-page .woocommerce-message,body.mevv-woo-page .woocommerce-info,body.mevv-woo-page .woocommerce-error{display:flex;flex-direction:column;align-items:flex-start}body.mevv-woo-page .woocommerce-message .button,body.mevv-woo-page .woocommerce-info .button,body.mevv-woo-page .woocommerce-error .button{float:none;order:1;margin:.5em 0 0}}
