/* AVA Shop – WooCommerce in the AVA style. Colours and fonts follow Elementor Site Settings where possible. */
body.maeve-shop { background: var(--maeve-porc); }
.maeve-shop .site-main { padding-top: 72px; padding-bottom: 120px; }
.maeve-shop .site-main, .maeve-shop .page-header, .maeve-shop .page-content { max-width: 1280px; padding-left: 48px; padding-right: 48px; margin-inline: auto; width: 100%; }
.maeve-shop .page-content, .maeve-shop .site-main .page-header { padding-left: 0; padding-right: 0; }
.maeve-shop h1.entry-title, .maeve-shop h1.page-title, .maeve-shop .woocommerce-products-header__title {
	font-family: var(--maeve-serif); font-weight: 400; font-size: clamp(42px, 5vw, 72px); line-height: 1.05; color: var(--maeve-plum); margin: 0 0 18px; letter-spacing: -.5px;
}
.maeve-shop .woocommerce-products-header { text-align: center; padding: 24px 0 40px; margin-bottom: 40px; border-bottom: 1px solid var(--maeve-line); }
.maeve-shop-eyebrow { margin: 0 0 12px; font-family: var(--maeve-sans); font-size: 12px; font-weight: 500; letter-spacing: 3.6px; text-transform: uppercase; color: var(--maeve-olive); }
.maeve-shop-intro { max-width: 620px; margin: 0 auto; font-family: var(--maeve-serif); font-style: italic; font-size: 21px; line-height: 1.55; color: var(--maeve-ink); }
.maeve-shop .woocommerce-products-header .maeve-shop-eyebrow { order: -1; }
.maeve-shop .woocommerce-products-header { display: flex; flex-direction: column; align-items: center; }
.maeve-shop .woocommerce-breadcrumb { font-family: var(--maeve-sans); font-size: 12px; letter-spacing: 1.6px; text-transform: uppercase; color: var(--maeve-olive); margin-bottom: 18px; }
.maeve-shop .woocommerce-breadcrumb a { color: var(--maeve-olive); text-decoration: none; }
.maeve-shop .woocommerce-result-count { font-family: var(--maeve-sans); font-size: 13px; color: #6a646b; }
.maeve-shop .woocommerce-ordering select { padding: 10px 14px; border: 1px solid var(--maeve-line); background: #fff; font-family: var(--maeve-sans); font-size: 14px; border-radius: 2px; }

/* Product grid */
.maeve-shop ul.products { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 56px 36px; margin: 32px 0 0 !important; padding: 0; }
.maeve-shop ul.products::before, .maeve-shop ul.products::after { display: none !important; }
.maeve-shop ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; padding: 0 !important; text-align: left; }
.maeve-shop ul.products li.product a img { aspect-ratio: 4 / 5; object-fit: cover; background: var(--maeve-oat); margin: 0 0 20px !important; transition: transform .8s ease; }
.maeve-shop ul.products li.product a.woocommerce-LoopProduct-link { display: block; overflow: hidden; color: inherit; text-decoration: none; }
.maeve-shop ul.products li.product:hover a img { transform: scale(1.02); }
.maeve-shop ul.products li.product .woocommerce-loop-product__title { font-family: var(--maeve-serif); font-weight: 400; font-size: 25px; line-height: 1.25; color: var(--maeve-plum); padding: 0; margin: 0 0 8px; }
.maeve-shop .price, .maeve-shop ul.products li.product .price { font-family: var(--maeve-sans); font-size: 15px; color: var(--maeve-ink) !important; letter-spacing: .4px; }
.maeve-shop .price ins { text-decoration: none; }

/* Buttons */
.maeve-shop .button, .maeve-shop button.button, .maeve-shop a.button, .maeve-shop input.button, .maeve-shop .single_add_to_cart_button,
.maeve-shop .wc-block-components-button:not(.is-link), .maeve-shop .wc-block-cart__submit-button, .maeve-shop .wc-block-components-checkout-place-order-button,
.maeve-shop .woocommerce-Button, .maeve-shop .woocommerce-button {
	display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 14px 30px !important;
	border: 1px solid var(--maeve-plum) !important; border-radius: 999px !important; background: var(--maeve-plum) !important; color: #fff !important;
	font-family: var(--maeve-sans) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: 2.4px !important; text-transform: uppercase !important;
	text-decoration: none !important; line-height: 1.2 !important; box-shadow: none !important; transition: background-color .3s ease, color .3s ease;
}
.maeve-shop .button:hover, .maeve-shop .single_add_to_cart_button:hover, .maeve-shop .wc-block-components-button:not(.is-link):hover,
.maeve-shop .woocommerce-Button:hover, .maeve-shop .woocommerce-button:hover { background: var(--maeve-ink) !important; border-color: var(--maeve-ink) !important; color: #fff !important; }
.maeve-shop .wc-block-components-button__text { color: inherit !important; }
.maeve-shop ul.products li.product .button { background: transparent !important; color: var(--maeve-plum) !important; margin-top: 14px; }
.maeve-shop ul.products li.product .button:hover { background: var(--maeve-plum) !important; color: #fff !important; }
.maeve-shop a.added_to_cart { display: inline-block; margin: 14px 0 0 14px; font-size: 13px; color: var(--maeve-plum); }

/* Single product */
.maeve-shop div.product { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: start; }
.maeve-shop div.product .woocommerce-product-gallery, .maeve-shop div.product .summary { width: auto !important; float: none !important; margin: 0 !important; }
.maeve-shop div.product .woocommerce-product-gallery img { background: var(--maeve-oat); }
.maeve-shop div.product .product_title { font-family: var(--maeve-serif); font-weight: 400; font-size: clamp(36px, 3.8vw, 54px); line-height: 1.1; color: var(--maeve-plum); margin: 0 0 16px; }
.maeve-shop div.product .summary .price { font-size: 20px !important; margin: 0 0 22px; }
.maeve-shop .woocommerce-product-details__short-description { font-family: var(--maeve-serif); font-style: italic; font-size: 20px; line-height: 1.6; color: var(--maeve-ink); margin-bottom: 28px; }
.maeve-shop form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 12px; }
.maeve-shop form.cart .quantity input { height: 48px; width: 72px; border: 1px solid var(--maeve-line); border-radius: 999px; text-align: center; font-family: var(--maeve-sans); }
.maeve-shop-note { flex-basis: 100%; margin: 6px 0 0; font-family: var(--maeve-sans); font-size: 12px; letter-spacing: 2px; text-transform: uppercase; color: var(--maeve-olive); }
.maeve-shop .product_meta { margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--maeve-line); font-family: var(--maeve-sans); font-size: 13px; color: #6a646b; }
.maeve-shop .product_meta a { color: var(--maeve-plum); }
.maeve-shop .woocommerce-tabs { grid-column: 1 / -1; margin-top: 24px; border-top: 1px solid var(--maeve-line); padding-top: 8px; }
.maeve-shop .woocommerce-tabs ul.tabs { display: flex; gap: 28px; padding: 0 !important; margin: 0 0 28px !important; border: 0 !important; }
.maeve-shop .woocommerce-tabs ul.tabs::before, .maeve-shop .woocommerce-tabs ul.tabs li::before, .maeve-shop .woocommerce-tabs ul.tabs li::after { display: none !important; }
.maeve-shop .woocommerce-tabs ul.tabs li { background: none !important; border: 0 !important; padding: 0 !important; margin: 0 !important; }
.maeve-shop .woocommerce-tabs ul.tabs li a { padding: 16px 0 !important; font-family: var(--maeve-sans); font-size: 12px; letter-spacing: 2.6px; text-transform: uppercase; color: var(--maeve-olive) !important; font-weight: 500 !important; border-bottom: 1px solid transparent; }
.maeve-shop .woocommerce-tabs ul.tabs li.active a { color: var(--maeve-plum) !important; border-bottom-color: var(--maeve-plum); }
.maeve-shop .woocommerce-Tabs-panel { max-width: 760px; font-family: var(--maeve-sans); font-size: 17px; line-height: 1.8; }
.maeve-shop .woocommerce-Tabs-panel h2 { display: none; }
.maeve-shop .related.products, .maeve-shop .upsells.products { grid-column: 1 / -1; margin-top: 40px; padding-top: 56px; border-top: 1px solid var(--maeve-line); }
.maeve-shop .related.products > h2, .maeve-shop .upsells.products > h2 { font-family: var(--maeve-serif); font-weight: 400; font-size: 38px; color: var(--maeve-plum); margin: 0 0 8px; }

/* Notices */
.maeve-shop .woocommerce-message, .maeve-shop .woocommerce-info, .maeve-shop .woocommerce-error, .maeve-shop .wc-block-components-notice-banner {
	border-top: 0 !important; border-left: 2px solid var(--maeve-plum) !important; background: var(--maeve-lav) !important; color: var(--maeve-ink) !important; font-family: var(--maeve-sans); border-radius: 0 !important;
}
.maeve-shop .woocommerce-message::before, .maeve-shop .woocommerce-info::before { color: var(--maeve-plum) !important; }
.maeve-shop .woocommerce-error { border-left-color: #B23A5E !important; background: #E6D9CC !important; }

/* Cart & checkout blocks */
.maeve-shop .wp-block-woocommerce-cart, .maeve-shop .wp-block-woocommerce-checkout { font-family: var(--maeve-sans); color: var(--maeve-ink); }
.maeve-shop .wc-block-components-title, .maeve-shop .wc-block-cart__totals-title, .maeve-shop .wc-block-components-checkout-step__title {
	font-family: var(--maeve-serif) !important; font-weight: 400 !important; font-size: 24px !important; color: var(--maeve-plum) !important; text-transform: none !important; letter-spacing: 0 !important;
}
.maeve-shop .wc-block-cart__totals-title { font-family: var(--maeve-sans) !important; font-size: 12px !important; letter-spacing: 3px !important; text-transform: uppercase !important; color: var(--maeve-olive) !important; }
.maeve-shop .wc-block-components-product-name { font-family: var(--maeve-serif); font-size: 20px; color: var(--maeve-plum) !important; text-decoration: none; }
.maeve-shop .wc-block-components-text-input input, .maeve-shop .wc-block-components-combobox .components-combobox-control input, .maeve-shop .wc-blocks-components-select__select, .maeve-shop .wc-block-components-textarea {
	border-color: var(--maeve-line) !important; border-radius: 2px !important; background: #fff !important; font-family: var(--maeve-sans) !important;
}
.maeve-shop .wc-block-components-sidebar .wc-block-components-panel, .maeve-shop .wc-block-components-order-summary { font-family: var(--maeve-sans); }
.maeve-shop .wc-block-checkout__sidebar, .maeve-shop .wp-block-woocommerce-checkout-order-summary-block { background: #fff; border: 1px solid var(--maeve-line) !important; border-radius: 0 !important; }
.maeve-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__value, .maeve-shop .wc-block-components-totals-footer-item .wc-block-components-totals-item__label { font-family: var(--maeve-serif); font-size: 22px; font-weight: 400; color: var(--maeve-plum); }
.maeve-shop .wc-block-components-radio-control__option, .maeve-shop .wc-block-components-checkbox { font-family: var(--maeve-sans); }
.maeve-shop .wc-block-components-radio-control__input:checked, .maeve-shop .wc-block-components-checkbox__input:checked { background: var(--maeve-plum) !important; border-color: var(--maeve-plum) !important; }
.maeve-shop .wc-block-components-checkout-return-to-cart-button { color: var(--maeve-plum) !important; }

/* Order received & My Account */
.maeve-shop .woocommerce-order { font-family: var(--maeve-sans); color: var(--maeve-ink); }
.maeve-shop .woocommerce-thankyou-order-received, .maeve-shop .wc-block-order-confirmation-status { font-family: var(--maeve-serif) !important; font-size: clamp(28px, 3vw, 40px) !important; line-height: 1.25; color: var(--maeve-plum); margin: 0 0 32px; }
.maeve-shop ul.woocommerce-order-overview, .maeve-shop .wc-block-order-confirmation-summary-list { display: flex; flex-wrap: wrap; gap: 0; padding: 0 !important; margin: 0 0 40px !important; border-top: 1px solid var(--maeve-line); border-bottom: 1px solid var(--maeve-line); list-style: none; }
.maeve-shop ul.woocommerce-order-overview li { padding: 18px 28px 18px 0 !important; margin: 0 28px 0 0 !important; border-right: 1px solid var(--maeve-line) !important; font-size: 11px !important; letter-spacing: 2.6px; text-transform: uppercase; color: var(--maeve-olive); }
.maeve-shop ul.woocommerce-order-overview li strong { display: block; margin-top: 6px; font-size: 16px; letter-spacing: 0; text-transform: none; color: var(--maeve-ink); }
.maeve-shop .woocommerce-order h2, .maeve-shop .woocommerce-MyAccount-content h2, .maeve-shop .wc-block-order-confirmation-downloads h3, .maeve-shop .wp-block-woocommerce-order-confirmation-downloads-wrapper h2, .maeve-shop .wp-block-woocommerce-order-confirmation-totals-wrapper h2 {
	font-family: var(--maeve-serif); font-weight: 400; font-size: 30px; color: var(--maeve-plum); margin: 40px 0 16px;
}
.maeve-shop table.shop_table, .maeve-shop .wc-block-order-confirmation-totals table, .maeve-shop .wc-block-order-confirmation-downloads table { border: 0 !important; border-top: 1px solid var(--maeve-line) !important; border-radius: 0 !important; font-family: var(--maeve-sans); }
.maeve-shop table.shop_table th, .maeve-shop table.shop_table td { border-color: var(--maeve-line) !important; padding: 16px 12px !important; }
.maeve-shop table.shop_table th { font-size: 11px; letter-spacing: 2.4px; text-transform: uppercase; color: var(--maeve-olive); font-weight: 500; }
.maeve-shop .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--maeve-line); }
.maeve-shop .woocommerce-MyAccount-navigation li { border-bottom: 1px solid var(--maeve-line); }
.maeve-shop .woocommerce-MyAccount-navigation li a { display: block; padding: 14px 0; font-family: var(--maeve-sans); font-size: 12px; letter-spacing: 2.4px; text-transform: uppercase; color: var(--maeve-ink); text-decoration: none; }
.maeve-shop .woocommerce-MyAccount-navigation li.is-active a, .maeve-shop .woocommerce-MyAccount-navigation li a:hover { color: var(--maeve-plum); }
.maeve-shop .woocommerce-MyAccount-content { font-family: var(--maeve-sans); font-size: 16px; line-height: 1.7; }
.maeve-shop .woocommerce form .form-row input.input-text, .maeve-shop .woocommerce form .form-row textarea { padding: 13px 16px; border: 1px solid var(--maeve-line); border-radius: 2px; background: #fff; font-family: var(--maeve-sans); font-size: 16px; }
.maeve-shop .woocommerce form.login, .maeve-shop .woocommerce form.register { border: 1px solid var(--maeve-line) !important; border-radius: 0 !important; background: #fff; padding: 36px !important; }
.maeve-shop .woocommerce-account h2 { font-family: var(--maeve-serif); font-weight: 400; color: var(--maeve-plum); }

@media (max-width: 1024px) {
	.maeve-shop ul.products { grid-template-columns: repeat(2, 1fr); }
	.maeve-shop div.product { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 767px) {
	.maeve-shop .site-main, .maeve-shop .page-header { padding-left: 20px; padding-right: 20px; }
	.maeve-shop .site-main { padding-top: 48px; padding-bottom: 80px; }
	.maeve-shop ul.products { grid-template-columns: 1fr 1fr; gap: 36px 16px; }
	.maeve-shop ul.products li.product .woocommerce-loop-product__title { font-size: 19px; }
	.maeve-shop ul.products li.product .button { padding: 12px 16px !important; font-size: 11px !important; letter-spacing: 1.6px !important; }
	.maeve-shop-intro { font-size: 18px; }
	.maeve-shop ul.woocommerce-order-overview li { border-right: 0 !important; width: 50%; margin: 0 !important; }
}
.maeve-shop ul.products li.product { display: flex; flex-direction: column; }
.maeve-shop ul.products li.product .button { margin-top: auto !important; align-self: flex-start; }
.maeve-shop ul.products li.product .price { margin-bottom: 14px; }

/* ── Cart page (classic cart inside the Elementor page) ── */
.maeve-shop .maeve-wc .woocommerce { color: var(--maeve-ink); font-family: var(--maeve-sans); }
.maeve-shop .maeve-wc--cart .woocommerce { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 0 64px; align-items: start; }
.maeve-shop .maeve-wc--cart .woocommerce > .woocommerce-notices-wrapper, .maeve-shop .maeve-wc--cart .woocommerce > .wc-empty-cart-message, .maeve-shop .maeve-wc--cart .woocommerce > .return-to-shop, .maeve-shop .maeve-wc--cart .woocommerce > .cart-empty { grid-column: 1 / -1; }
.maeve-shop .maeve-wc--cart .woocommerce-cart-form { grid-column: 1; margin: 0; }
.maeve-shop .maeve-wc--cart .cart-collaterals { grid-column: 2; width: auto !important; position: sticky; top: 40px; }
.maeve-shop .maeve-wc--cart .cart-collaterals .cart_totals { float: none !important; width: 100% !important; padding: 40px 36px; background: var(--maeve-lav); }
.maeve-shop .maeve-wc--cart .cart-collaterals .cross-sells { display: none; }
.maeve-shop .maeve-wc table.shop_table.cart { border: 0 !important; border-collapse: collapse; margin: 0; }
.maeve-shop .maeve-wc table.shop_table.cart thead th { padding: 0 12px 16px !important; border: 0 !important; border-bottom: 1px solid var(--maeve-line) !important; background: none; font-size: 11px; font-weight: 400; letter-spacing: 2.4px; text-transform: uppercase; color: var(--maeve-ink); }
.maeve-shop .maeve-wc table.shop_table.cart td { padding: 26px 12px !important; border: 0 !important; border-bottom: 1px solid var(--maeve-line) !important; background: none !important; vertical-align: middle; font-size: 15px; }
.maeve-shop .maeve-wc table.cart td.product-thumbnail { width: 108px; }
.maeve-shop .maeve-wc table.cart td.product-thumbnail img { width: 90px !important; height: 112px; object-fit: cover; border-radius: 999px 999px 0 0; background: var(--maeve-lav); }
.maeve-shop .maeve-wc table.cart td.product-name a { font-family: var(--maeve-serif); font-size: 24px; line-height: 1.2; color: var(--maeve-plum); text-decoration: none; }
.maeve-shop .maeve-wc table.cart td.product-name a:hover { color: var(--maeve-sun); }
.maeve-shop .maeve-wc table.cart td.product-remove { width: 40px; padding-left: 0 !important; padding-right: 0 !important; }
.maeve-shop .maeve-wc table.cart a.remove { display: grid !important; place-items: center; width: 30px !important; height: 30px !important; border: 1px solid var(--maeve-butter); border-radius: 50% !important; font-size: 18px !important; font-weight: 300 !important; color: var(--maeve-ink) !important; background: none !important; text-decoration: none; }
.maeve-shop .maeve-wc table.cart a.remove:hover { background: var(--maeve-plum) !important; border-color: var(--maeve-plum); color: #fff !important; }
.maeve-shop .maeve-wc .quantity input.qty { width: 82px; height: 46px; padding: 0 10px; border: 1px solid var(--maeve-butter); border-radius: 999px; background: #fff; text-align: center; font-family: var(--maeve-sans); font-size: 14px; color: var(--maeve-plum); }
.maeve-shop .maeve-wc table.cart td.actions { padding: 30px 0 0 !important; border-bottom: 0 !important; }
.maeve-shop .maeve-wc table.cart td.actions .coupon { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.maeve-shop .maeve-wc table.cart td.actions .coupon .input-text { width: 220px !important; height: 48px; margin: 0 !important; padding: 0 20px !important; border: 1px solid var(--maeve-butter) !important; border-radius: 999px !important; background: #fff; font-family: var(--maeve-sans); font-size: 14px; }
.maeve-shop .maeve-wc table.cart td.actions .button { background: transparent !important; color: var(--maeve-plum) !important; }
.maeve-shop .maeve-wc table.cart td.actions .button:hover { background: var(--maeve-plum) !important; color: #fff !important; }
.maeve-shop .maeve-wc table.cart td.actions > .button[name="update_cart"] { float: right; }
.maeve-shop .maeve-wc table.cart td.actions > .button[name="update_cart"]:disabled { opacity: .4; }
/* Totals card */
.maeve-shop .maeve-wc .cart_totals h2 { margin: 0 0 18px; font-family: var(--maeve-serif); font-size: 34px; font-weight: 300; color: var(--maeve-plum); }
.maeve-shop .maeve-wc .cart_totals table.shop_table { border: 0 !important; margin: 0 0 8px; }
.maeve-shop .maeve-wc .cart_totals table th, .maeve-shop .maeve-wc .cart_totals table td { padding: 16px 0 !important; border: 0 !important; border-top: 1px solid var(--maeve-line) !important; background: none !important; font-size: 14px; vertical-align: top; }
.maeve-shop .maeve-wc .cart_totals table th { width: 40%; font-size: 11px; font-weight: 400; letter-spacing: 2.2px; text-transform: uppercase; }
.maeve-shop .maeve-wc .cart_totals td { text-align: right; }
.maeve-shop .maeve-wc .cart_totals .order-total .amount { font-family: var(--maeve-serif); font-size: 30px; font-weight: 400; color: var(--maeve-plum); }
.maeve-shop .maeve-wc .woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }
.maeve-shop .maeve-wc .woocommerce-shipping-destination, .maeve-shop .maeve-wc .woocommerce-shipping-calculator { font-size: 13px; }
.maeve-shop .maeve-wc .wc-proceed-to-checkout { padding: 14px 0 0 !important; }
.maeve-shop .maeve-wc .wc-proceed-to-checkout .checkout-button { display: flex !important; width: 100%; min-height: 56px; margin: 0 !important; font-size: 12px !important; }
.maeve-wc-reassure { display: flex; flex-direction: column; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; font-size: 13px; color: var(--maeve-ink); }
.maeve-wc-reassure li::before { content: "✦"; margin-right: 10px; color: var(--maeve-sun); font-size: 10px; }
/* Empty cart */
.maeve-shop .maeve-wc .cart-empty.woocommerce-info { padding: 70px 20px 16px !important; border: 0 !important; background: none !important; text-align: center; font-family: var(--maeve-serif); font-size: 34px; font-weight: 300; color: var(--maeve-plum) !important; }
.maeve-shop .maeve-wc .cart-empty.woocommerce-info::before { display: none; }
.maeve-shop .maeve-wc .return-to-shop { text-align: center; margin: 0 0 40px; }
.maeve-shop .maeve-wc .return-to-shop .button { background: transparent !important; color: var(--maeve-plum) !important; }
.maeve-shop .maeve-wc .return-to-shop .button:hover { background: var(--maeve-plum) !important; color: #fff !important; }

/* ── Checkout page (classic checkout inside the Elementor page) ── */
.maeve-shop .maeve-wc--checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); grid-template-rows: auto 1fr; gap: 0 64px; align-items: start; }
.maeve-shop .maeve-wc--checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; }
.maeve-shop .maeve-wc--checkout #customer_details { grid-column: 1; grid-row: 1 / span 2; }
.maeve-shop .maeve-wc--checkout #customer_details .col-1, .maeve-shop .maeve-wc--checkout #customer_details .col-2 { float: none !important; width: 100% !important; max-width: none; }
.maeve-shop .maeve-wc--checkout #order_review_heading { grid-column: 2; grid-row: 1; margin: 0 !important; padding: 40px 36px 0; background: var(--maeve-lav); }
.maeve-shop .maeve-wc--checkout #order_review { grid-column: 2; grid-row: 2; padding: 10px 36px 36px; background: var(--maeve-lav); }
.maeve-shop .maeve-wc--checkout h3 { margin: 0 0 22px; font-family: var(--maeve-serif); font-size: 34px; font-weight: 300; line-height: 1.15; color: var(--maeve-plum); }
.maeve-shop .maeve-wc--checkout .woocommerce-shipping-fields h3, .maeve-shop .maeve-wc--checkout .woocommerce-additional-fields h3 { margin-top: 36px; font-size: 26px; }
.maeve-shop .maeve-wc--checkout #ship-to-different-address label { font-family: var(--maeve-serif); font-size: 26px; font-weight: 300; }
.maeve-shop .maeve-wc .form-row { margin: 0 0 18px !important; padding: 0 !important; }
.maeve-shop .maeve-wc .form-row-first, .maeve-shop .maeve-wc .form-row-last { width: calc(50% - 9px) !important; }
.maeve-shop .maeve-wc .form-row label { display: block; margin: 0 0 8px; font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: var(--maeve-ink); line-height: 1.4; }
.maeve-shop .maeve-wc .form-row label.checkbox, .maeve-shop .maeve-wc .form-row label.woocommerce-form__label-for-checkbox { font-size: 14px; letter-spacing: 0; text-transform: none; }
.maeve-shop .maeve-wc .form-row .required { color: var(--maeve-sun); text-decoration: none; }
.maeve-shop .maeve-wc .form-row input.input-text, .maeve-shop .maeve-wc .form-row textarea, .maeve-shop .maeve-wc .form-row select, .maeve-shop .maeve-wc .select2-container .select2-selection--single { width: 100%; min-height: 50px; padding: 12px 18px !important; border: 1px solid var(--maeve-butter) !important; border-radius: 4px !important; background: #fff !important; font-family: var(--maeve-sans); font-size: 15px; color: var(--maeve-plum); box-shadow: none !important; }
.maeve-shop .maeve-wc .form-row textarea { min-height: 110px; }
.maeve-shop .maeve-wc .form-row input.input-text:focus, .maeve-shop .maeve-wc .form-row textarea:focus { border-color: var(--maeve-plum) !important; outline: none; }
.maeve-shop .maeve-wc .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 !important; line-height: 24px; color: var(--maeve-plum); }
.maeve-shop .maeve-wc .select2-container .select2-selection--single .select2-selection__arrow { top: 12px; right: 12px; }
.maeve-shop .maeve-wc .woocommerce-invalid input.input-text { border-color: #B5614B !important; }
/* Order summary */
.maeve-shop .maeve-wc--checkout table.woocommerce-checkout-review-order-table { border: 0 !important; margin: 0 0 24px; }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table th, .maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table td { padding: 14px 0 !important; border: 0 !important; border-top: 1px solid var(--maeve-line) !important; background: none !important; font-size: 14px; }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table thead th { border-top: 0 !important; font-size: 11px; font-weight: 400; letter-spacing: 2.2px; text-transform: uppercase; }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table td.product-name { font-family: var(--maeve-serif); font-size: 19px; color: var(--maeve-plum); }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table td.product-name .product-quantity { font-family: var(--maeve-sans); font-size: 13px; font-weight: 400; color: var(--maeve-ink); }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table td:last-child, .maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table th:last-child { text-align: right; }
.maeve-shop .maeve-wc--checkout .woocommerce-checkout-review-order-table tfoot th { font-size: 11px; font-weight: 400; letter-spacing: 2.2px; text-transform: uppercase; text-align: left; }
.maeve-shop .maeve-wc--checkout .order-total .amount { font-family: var(--maeve-serif); font-size: 30px; font-weight: 400; color: var(--maeve-plum); }
.maeve-shop .maeve-wc--checkout #payment { border-radius: 4px !important; background: #fff !important; }
.maeve-shop .maeve-wc--checkout #payment ul.payment_methods { padding: 18px 20px !important; border-bottom: 1px solid var(--maeve-line) !important; }
.maeve-shop .maeve-wc--checkout #payment ul.payment_methods li { font-size: 14px; }
.maeve-shop .maeve-wc--checkout #payment div.payment_box { background: var(--maeve-lav) !important; color: var(--maeve-ink) !important; font-size: 13px; border-radius: 4px; }
.maeve-shop .maeve-wc--checkout #payment div.payment_box::before { border-bottom-color: var(--maeve-lav) !important; }
.maeve-shop .maeve-wc--checkout #payment div.form-row.place-order { padding: 20px !important; margin: 0 !important; }
.maeve-shop .maeve-wc--checkout .woocommerce-terms-and-conditions-wrapper { font-size: 12px; line-height: 1.6; }
.maeve-shop .maeve-wc--checkout #place_order { float: none !important; width: 100%; min-height: 56px; margin-top: 14px; }
.maeve-shop .maeve-wc .woocommerce-form-coupon-toggle .woocommerce-info, .maeve-shop .maeve-wc .woocommerce-form-login-toggle .woocommerce-info { margin: 0 0 24px !important; padding: 16px 20px 16px 48px !important; border: 0 !important; border-left: 2px solid var(--maeve-sun) !important; background: var(--maeve-lav) !important; font-size: 14px; color: var(--maeve-ink) !important; }
.maeve-shop .maeve-wc .woocommerce-form-coupon-toggle .woocommerce-info::before, .maeve-shop .maeve-wc .woocommerce-form-login-toggle .woocommerce-info::before { color: var(--maeve-sun) !important; }
.maeve-shop .maeve-wc .woocommerce-info a, .maeve-shop .maeve-wc .woocommerce-privacy-policy-text a, .maeve-shop .maeve-wc .woocommerce-terms-and-conditions-link { color: var(--maeve-plum); text-decoration: underline; text-underline-offset: 3px; }
.maeve-shop .maeve-wc form.checkout_coupon { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin: 0 0 30px !important; padding: 22px !important; border: 1px solid var(--maeve-line) !important; border-radius: 4px !important; }
.maeve-shop .maeve-wc form.checkout_coupon p:not(.form-row) { width: 100%; margin: 0; font-size: 13px; }
.maeve-shop .maeve-wc form.checkout_coupon .form-row { width: auto !important; margin: 0 !important; }

@media (max-width: 1024px) {
	.maeve-shop .maeve-wc--cart .woocommerce { grid-template-columns: 1fr; gap: 40px; }
	.maeve-shop .maeve-wc--checkout form.checkout { grid-template-columns: 1fr; gap: 0; }
	.maeve-shop .maeve-wc--checkout #customer_details { margin-bottom: 40px; }
	.maeve-shop .maeve-wc--cart .woocommerce-cart-form, .maeve-shop .maeve-wc--cart .cart-collaterals, .maeve-shop .maeve-wc--checkout #customer_details, .maeve-shop .maeve-wc--checkout #order_review_heading, .maeve-shop .maeve-wc--checkout #order_review { grid-column: 1; grid-row: auto; position: static; }
	.maeve-shop .maeve-wc--checkout #order_review_heading { margin-top: 10px !important; }
}
@media (max-width: 767px) {
	.maeve-shop .maeve-wc table.shop_table_responsive.cart tr { position: relative; display: grid; grid-template-columns: 90px 1fr; column-gap: 16px; padding: 22px 0; border-bottom: 1px solid var(--maeve-line); }
	.maeve-shop .maeve-wc table.shop_table_responsive.cart tr td { display: block; padding: 4px 0 !important; border: 0 !important; text-align: left !important; }
	.maeve-shop .maeve-wc table.shop_table_responsive.cart tr td::before { display: none; }
	.maeve-shop .maeve-wc table.cart td.product-thumbnail { display: block !important; grid-row: 1 / span 4; width: auto; }
	.maeve-shop .maeve-wc table.cart td.product-thumbnail img { width: 90px !important; height: 110px; }
	.maeve-shop .maeve-wc table.cart td.product-remove { position: absolute; top: 18px; right: 0; width: auto; }
	.maeve-shop .maeve-wc table.cart td.product-name { padding-right: 40px !important; }
	.maeve-shop .maeve-wc table.cart td.product-name a { font-size: 21px; }
	.maeve-shop .maeve-wc table.cart td.product-subtotal { display: none !important; }
	.maeve-shop .maeve-wc table.cart tr.cart_item td.product-thumbnail { grid-column: 1; }
	.maeve-shop .maeve-wc table.cart tr.cart_item td:not(.product-thumbnail):not(.product-remove) { grid-column: 2; }
	.maeve-shop .maeve-wc table.cart tr:last-child { display: block; border: 0; }
	.maeve-shop .maeve-wc table.cart td.actions .coupon { margin-bottom: 12px; }
	.maeve-shop .maeve-wc table.cart td.actions .coupon .input-text { flex: 1; width: auto !important; }
	.maeve-shop .maeve-wc table.cart td.actions > .button[name="update_cart"] { float: none; width: 100%; }
	.maeve-shop .maeve-wc--cart .cart-collaterals .cart_totals, .maeve-shop .maeve-wc--checkout #order_review_heading, .maeve-shop .maeve-wc--checkout #order_review { padding-left: 22px; padding-right: 22px; }
	.maeve-shop .maeve-wc .form-row-first, .maeve-shop .maeve-wc .form-row-last { width: 100% !important; }
}
