/**
 * Posh cart, checkout, and shop mobile styles.
 * Body-class prefixes raise specificity above Elementor/EAE defaults.
 * No !important. Unresolved conflicts are noted in the file footer.
 */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');

/* ------------------------------------------------------------------
   Cart page redesign (page 412, .woocommerce-cart)
   ------------------------------------------------------------------ */

body.woocommerce-cart.eael-woo-cart .elementor-412 .elementor-element.elementor-element-776e7a4 .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button.button:not(:hover):not(:active),
body.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	display: block;
	width: 100%;
	background-color: #E0457B;
	color: #ffffff;
	font-family: 'Poppins', sans-serif;
	font-weight: 700;
	font-size: 16px;
	text-align: center;
	padding: 16px;
	border-radius: 999px;
	border: none;
	text-decoration: none;
	box-sizing: border-box;
}

body.woocommerce-cart.eael-woo-cart .elementor-412 .elementor-element.elementor-element-776e7a4 .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button.button:hover,
body.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background-color: #c73a6a;
	color: #ffffff;
}

.woocommerce-cart .afterpay-paragraph,
.woocommerce-cart .klarna-payments-cart-messaging,
.woocommerce-cart .wcpay-express-checkout-wrapper,
.woocommerce-cart .ppc-button-wrapper,
.woocommerce-cart #ppc-button-ppcp-gateway {
	display: none;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr.cart_item,
.woocommerce-cart .eael-woo-cart-wrapper .cart_item,
.woocommerce-cart table.woocommerce-cart-form__cart-table tbody tr.cart_item {
	background: #ffffff;
	border: 1px solid #eeeeee;
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 12px;
	font-family: 'Poppins', sans-serif;
	box-sizing: border-box;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr.cart_item .eael-woo-cart-td.product-thumbnail img,
.woocommerce-cart .eael-woo-cart-wrapper .product-thumbnail img {
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 8px;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr.cart_item .eael-woo-cart-td.product-name,
.woocommerce-cart .eael-woo-cart-wrapper .product-name {
	font-family: 'Poppins', sans-serif;
	font-weight: 600;
	font-size: 15px;
	color: #375275;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr.cart_item .eael-woo-cart-td.product-name .variation,
.woocommerce-cart .eael-woo-cart-wrapper .product-name .variation {
	font-size: 12px;
	color: #999999;
	font-weight: 400;
}

body.woocommerce-cart .eael-woo-cart-wrapper .cart-subtotal-label-inline,
body.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr .eael-woo-cart-tr-left .eael-woo-cart-td.product-subtotal:not([data-title]),
body.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tbody .eael-woo-cart-tr .eael-woo-cart-tr-right .eael-woo-cart-td.product-subtotal:not([data-title]) {
	display: none;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals,
.woocommerce-cart .cart_totals {
	background: #ffffff;
	border: 1px solid #eeeeee;
	border-radius: 12px;
	padding: 16px;
	font-family: 'Poppins', sans-serif;
	margin-top: 16px;
	box-sizing: border-box;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals table.shop_table th,
.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	color: #375275;
	padding: 8px 0;
	border: none;
}

.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals table.shop_table tr.order-total th,
.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals table.shop_table tr.order-total td,
.woocommerce-cart .cart_totals table.shop_table tr.order-total th,
.woocommerce-cart .cart_totals table.shop_table tr.order-total td {
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #375275;
	border-top: 2px solid #E0457B;
	padding-top: 12px;
}

@media (max-width: 768px) {
	/* ------------------------------------------------------------------
	   Global: prevent horizontal page scroll
	   ------------------------------------------------------------------ */
	body.woocommerce-cart,
	body.woocommerce-checkout,
	body.page-id-564 {
		overflow-x: hidden;
		max-width: 100vw;
	}

	/* ------------------------------------------------------------------
	   Cart (page 412): Elementor section padding safety net
	   Primary fix: _elementor_data padding_mobile on section 57a4707d
	   ------------------------------------------------------------------ */
	.woocommerce-cart .elementor-412 .elementor-element.elementor-element-57a4707d {
		padding-top: 0;
		padding-right: 16px;
		padding-bottom: 0;
		padding-left: 16px;
	}

	.woocommerce-cart .elementor-412 .elementor-element.elementor-element-2634799b > .elementor-widget-wrap {
		padding-left: 0;
		padding-right: 0;
	}

	.woocommerce-cart .elementor-412 .elementor-widget-eael-woo-cart,
	.woocommerce-cart .elementor-412 .elementor-widget-eael-woo-cart .elementor-widget-container {
		width: 100%;
		max-width: 100%;
	}

	.woocommerce-cart .elementor-section .elementor-container {
		flex-wrap: wrap;
		max-width: 100%;
	}

	.woocommerce-cart .elementor-column {
		width: 100%;
	}

	/* ------------------------------------------------------------------
	   Cart: EAE Woo Cart style-2 refinements (page 412 renderer)
	   EAE base mobile layout lives in eael-412.css @767px; these tune it.
	   ------------------------------------------------------------------ */
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper form.eael-woo-cart-form,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-table-warp,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-table {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-x: hidden;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 .woocommerce-notices-wrapper:not(:empty) {
		padding: 16px 16px 0;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-left > .product-thumbnail,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-right > .eael-woo-cart-td.product-thumbnail {
		width: 80px;
		max-width: 80px;
		height: 80px;
		min-height: 0;
		margin: 0 0 12px;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-left > .product-name,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-right .eael-woo-cart-td.product-name {
		word-wrap: break-word;
		overflow-wrap: break-word;
		white-space: normal;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-left .eael-woo-cart-td.product-subtotal,
	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper.eael-woo-style-2 form.eael-woo-cart-form .eael-woo-cart-table .eael-woo-cart-tr .eael-woo-cart-tr-right .eael-woo-cart-td.product-subtotal {
		float: none;
		padding-left: 0;
		position: static;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .cart-collaterals .cart_totals {
		float: none;
		max-width: 100%;
	}

	.woocommerce-cart.eael-woo-cart .eael-woo-cart-wrapper .eael-cart-coupon-and-collaterals .eael-cart-coupon-wrapper .coupon {
		max-width: 100%;
	}

	/* ------------------------------------------------------------------
	   Cart: native theme cart.php width guards
	   ------------------------------------------------------------------ */
	.woocommerce-cart .checkout3-container,
	.woocommerce-cart .checkout3-content,
	.woocommerce-cart .checkout3-section,
	.woocommerce-cart .cart-items,
	.woocommerce-cart .cart-item-card {
		max-width: 100%;
		box-sizing: border-box;
	}

	.woocommerce-cart .wc-proceed-to-checkout,
	.woocommerce-cart .cart-collaterals,
	.woocommerce-cart .cart_totals,
	.woocommerce-cart .cross-sells {
		width: 100%;
		float: none;
	}

	/* ------------------------------------------------------------------
	   Checkout (page 60357): stack billing + order review
	   ------------------------------------------------------------------ */
	body.woocommerce-checkout form.checkout.woocommerce-checkout {
		display: flex;
		flex-direction: column;
		width: 100%;
		max-width: 100%;
		padding: 12px;
		box-sizing: border-box;
	}

	body.woocommerce-checkout form.checkout .col2-set,
	body.woocommerce-checkout form.checkout #order_review {
		width: 100%;
		max-width: 100%;
		float: none;
		position: static;
		box-sizing: border-box;
	}

	body.woocommerce-checkout .col2-set .col-1,
	body.woocommerce-checkout .col2-set .col-2 {
		width: 100%;
		float: none;
	}

	body.woocommerce-checkout #order_review .shop_table {
		width: 100%;
		table-layout: fixed;
	}

	body.woocommerce-checkout #order_review table th,
	body.woocommerce-checkout #order_review table td {
		word-wrap: break-word;
		overflow-wrap: break-word;
	}

	body.woocommerce-checkout .woocommerce-form-coupon-toggle,
	body.woocommerce-checkout .woocommerce-form-login-toggle,
	body.woocommerce-checkout .woocommerce-account-fields {
		width: 100%;
	}

	body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info,
	body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-message,
	body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
		flex-wrap: wrap;
		white-space: normal;
		padding-left: 16px;
	}

	/* ------------------------------------------------------------------
	   Shop New (page 564): Elementor loop grid
	   ------------------------------------------------------------------ */
	.page-id-564 .elementor-564 .e-con,
	.page-id-564 .elementor-564 .e-con-inner,
	.page-id-564 .elementor-564 .elementor-widget-wrap {
		max-width: 100%;
		min-width: 0;
	}

	.page-id-564 .elementor-564 .elementor-element.elementor-element-7ff918c .e-loop-item {
		min-width: 0;
	}

	.page-id-564 .elementor-section .elementor-container {
		flex-wrap: wrap;
		max-width: 100%;
	}

	.page-id-564 .elementor-column {
		width: 100%;
	}
}

/*
 * Specificity notes: rules intentionally omitted (cannot beat upstream !important):
 *
 * 1. EAE tr-left/tr-right width, display, padding (eael-412.css @767px uses !important).
 *    Fix: Elementor padding_mobile on section 57a4707d. Container is full width; EAE mobile CSS applies.
 *
 * 2. checkout3 spacing (cart.php): inline style in template wins over this file.
 *    Fix: cart.php @media block (already present).
 *
 * 3. checkout.css coupon/login nowrap @768-640px: body.woocommerce-checkout rules above
 *    outrank (0,2,0) vs (0,1,0). Below 640px checkout.css also sets width:100%.
 */
