/**
 * Cart · Checkout · My Account — branded commerce pages
 * Matches Takiyar / O'Content cream · walnut · rust language.
 */

body.csx-is-cart,
body.csx-is-checkout,
body.csx-is-account {
	--csx-bg: #f7f1e7;
	--csx-cream: #f7f1e7;
	--csx-cream-deep: #efe5d3;
	--csx-white: #fffdf9;
	--csx-ink: #241e19;
	--csx-muted: #6b6156;
	--csx-line: rgba(36, 30, 25, 0.12);
	--csx-rust: #b5552e;
	--csx-rust-deep: #98411f;
	--csx-gold: #eac93b;
	--csx-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
	--csx-sans: 'Poppins', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
	background-color: var(--csx-bg) !important;
}

/* Page shell */
body.csx-is-cart .site-main,
body.csx-is-checkout .site-main,
body.csx-is-account .site-main,
body.csx-is-cart #content,
body.csx-is-checkout #content,
body.csx-is-account #content,
body.csx-is-cart .woocommerce,
body.csx-is-checkout .woocommerce,
body.csx-is-account .woocommerce {
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	float: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

body.csx-is-cart .site-main,
body.csx-is-checkout .site-main,
body.csx-is-account .site-main,
body.csx-is-cart .woocommerce,
body.csx-is-checkout .woocommerce,
body.csx-is-account .woocommerce {
	padding-top: 28px !important;
	padding-bottom: 80px !important;
	font-family: var(--csx-sans) !important;
	color: var(--csx-ink) !important;
}

/* Hide theme/entry titles — we render csx-commerce-header */
body.csx-is-cart .entry-title,
body.csx-is-checkout .entry-title,
body.csx-is-account .entry-title,
body.csx-is-cart .page-header,
body.csx-is-checkout .page-header,
body.csx-is-account .page-header,
body.csx-is-cart h1.wp-block-post-title,
body.csx-is-checkout h1.wp-block-post-title,
body.csx-is-account h1.wp-block-post-title {
	display: none !important;
}

/* ========== Shared header ========== */
.csx-commerce-header {
	max-width: 640px;
	margin: 8px 0 36px;
}

.csx-commerce-eyebrow {
	font-family: var(--csx-sans) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	color: var(--csx-muted) !important;
	margin: 0 0 8px !important;
}

.csx-commerce-title {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	font-size: clamp(32px, 5vw, 46px) !important;
	line-height: 1.12 !important;
	color: var(--csx-ink) !important;
	margin: 0 0 10px !important;
}

.csx-commerce-lead {
	font-family: var(--csx-sans) !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
	color: var(--csx-muted) !important;
	margin: 0 !important;
	max-width: 420px;
}

/* ========== Shared buttons / forms / notices ========== */
body.csx-is-cart .csx-commerce-btn,
body.csx-is-checkout .csx-commerce-btn,
body.csx-is-account .csx-commerce-btn,
body.csx-is-cart .button,
body.csx-is-checkout .button,
body.csx-is-account .button,
body.csx-is-cart button.button,
body.csx-is-checkout button.button,
body.csx-is-account button.button,
body.csx-is-cart a.button,
body.csx-is-checkout a.button,
body.csx-is-account a.button,
body.csx-is-cart input.button,
body.csx-is-checkout #place_order,
body.csx-is-account .woocommerce-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	font-family: var(--csx-sans) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	border-radius: 0 !important;
	border: 1px solid transparent !important;
	padding: 15px 24px !important;
	line-height: 1.2 !important;
	cursor: pointer;
	transition: background-color 0.22s ease, color 0.22s ease, border-color 0.22s ease, transform 0.22s ease !important;
	box-shadow: none !important;
	height: auto !important;
	min-height: 0 !important;
}

body.csx-is-cart .button,
body.csx-is-checkout .button,
body.csx-is-account .button,
body.csx-is-cart a.checkout-button,
body.csx-is-cart .wc-proceed-to-checkout a.checkout-button,
body.csx-is-checkout #place_order,
body.csx-is-account .woocommerce-button.button,
body.csx-is-cart .csx-commerce-btn--primary,
body.csx-is-checkout .csx-commerce-btn--primary,
body.csx-is-account .csx-commerce-btn--primary {
	background: var(--csx-ink) !important;
	color: var(--csx-cream) !important;
	border-color: var(--csx-ink) !important;
}

body.csx-is-cart .button:hover,
body.csx-is-checkout .button:hover,
body.csx-is-account .button:hover,
body.csx-is-cart a.checkout-button:hover,
body.csx-is-checkout #place_order:hover,
body.csx-is-account .woocommerce-button.button:hover {
	background: var(--csx-rust-deep) !important;
	border-color: var(--csx-rust-deep) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

body.csx-is-cart button[name="update_cart"],
body.csx-is-cart .coupon .button,
body.csx-is-cart a.button:not(.checkout-button) {
	background: transparent !important;
	color: var(--csx-ink) !important;
	border-color: var(--csx-ink) !important;
}

body.csx-is-cart button[name="update_cart"]:hover,
body.csx-is-cart .coupon .button:hover {
	background: var(--csx-ink) !important;
	color: var(--csx-cream) !important;
}

body.csx-is-cart .woocommerce-message,
body.csx-is-checkout .woocommerce-message,
body.csx-is-account .woocommerce-message,
body.csx-is-cart .woocommerce-info,
body.csx-is-checkout .woocommerce-info,
body.csx-is-account .woocommerce-info,
body.csx-is-cart .woocommerce-error,
body.csx-is-checkout .woocommerce-error,
body.csx-is-account .woocommerce-error {
	border-radius: 0 !important;
	border: 1px solid var(--csx-line) !important;
	border-top: 3px solid var(--csx-ink) !important;
	background: var(--csx-white) !important;
	color: var(--csx-ink) !important;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
	padding: 14px 18px !important;
	list-style: none !important;
}

body.csx-is-cart .woocommerce-error,
body.csx-is-checkout .woocommerce-error,
body.csx-is-account .woocommerce-error {
	border-top-color: var(--csx-rust) !important;
}

body.csx-is-cart .woocommerce-info,
body.csx-is-checkout .woocommerce-info,
body.csx-is-account .woocommerce-info {
	border-top-color: var(--csx-gold) !important;
}

body.csx-is-cart .input-text,
body.csx-is-checkout .input-text,
body.csx-is-account .input-text,
body.csx-is-cart input[type="text"],
body.csx-is-cart input[type="email"],
body.csx-is-cart input[type="tel"],
body.csx-is-cart input[type="password"],
body.csx-is-cart input[type="number"],
body.csx-is-checkout input[type="text"],
body.csx-is-checkout input[type="email"],
body.csx-is-checkout input[type="tel"],
body.csx-is-checkout input[type="password"],
body.csx-is-checkout input[type="number"],
body.csx-is-checkout textarea,
body.csx-is-checkout select,
body.csx-is-account input[type="text"],
body.csx-is-account input[type="email"],
body.csx-is-account input[type="tel"],
body.csx-is-account input[type="password"],
body.csx-is-account textarea,
body.csx-is-account select,
body.csx-is-checkout .select2-container .select2-selection--single {
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
	color: var(--csx-ink) !important;
	background: var(--csx-white) !important;
	border: 1px solid var(--csx-line) !important;
	border-radius: 0 !important;
	padding: 12px 14px !important;
	height: auto !important;
	min-height: 46px !important;
	box-shadow: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
	outline: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.csx-is-checkout .select2-container .select2-selection--single {
	display: flex !important;
	align-items: center;
	padding: 0 14px !important;
}

body.csx-is-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--csx-ink) !important;
	line-height: 46px !important;
	padding: 0 !important;
}

body.csx-is-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px !important;
}

body.csx-is-cart .input-text:focus,
body.csx-is-checkout .input-text:focus,
body.csx-is-account .input-text:focus,
body.csx-is-cart input:focus,
body.csx-is-checkout input:focus,
body.csx-is-checkout textarea:focus,
body.csx-is-checkout select:focus,
body.csx-is-account input:focus,
body.csx-is-account textarea:focus {
	border-color: var(--csx-ink) !important;
	box-shadow: 0 0 0 3px rgba(36, 30, 25, 0.06) !important;
}

body.csx-is-cart label,
body.csx-is-checkout label,
body.csx-is-account label {
	font-family: var(--csx-sans) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	color: var(--csx-ink) !important;
	margin-bottom: 8px !important;
}

body.csx-is-cart .required,
body.csx-is-checkout .required,
body.csx-is-account .required {
	color: var(--csx-rust) !important;
}

/* =========================================================================
   CART
   ========================================================================= */
body.csx-is-cart .woocommerce {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 400px);
	gap: 28px 40px;
	align-items: start;
}

body.csx-is-cart .csx-commerce-header,
body.csx-is-cart .woocommerce-notices-wrapper,
body.csx-is-cart .woocommerce-info,
body.csx-is-cart .cart-empty,
body.csx-is-cart .csx-empty-cart-actions,
body.csx-is-cart .return-to-shop,
body.csx-is-cart .cross-sells {
	grid-column: 1 / -1;
}

body.csx-is-cart .woocommerce-cart-form {
	margin: 0 !important;
	grid-column: 1;
}

body.csx-is-cart .cart-collaterals {
	width: 100% !important;
	max-width: none;
	margin: 0 !important;
	grid-column: 2;
}

body.csx-is-cart table.shop_table {
	border: 1px solid var(--csx-line) !important;
	border-radius: 0 !important;
	background: var(--csx-white) !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	width: 100% !important;
	margin: 0 0 20px !important;
}

body.csx-is-cart table.shop_table th {
	font-family: var(--csx-sans) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--csx-muted) !important;
	background: var(--csx-cream-deep) !important;
	border: none !important;
	border-bottom: 1px solid var(--csx-line) !important;
	padding: 14px 16px !important;
}

body.csx-is-cart table.shop_table td {
	border: none !important;
	border-bottom: 1px solid var(--csx-line) !important;
	padding: 20px 16px !important;
	vertical-align: middle !important;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
	color: var(--csx-ink) !important;
	background: transparent !important;
}

body.csx-is-cart table.shop_table tr:last-child td {
	border-bottom: none !important;
}

body.csx-is-cart table.shop_table img {
	width: 80px !important;
	height: 100px !important;
	object-fit: cover !important;
	border-radius: 0 !important;
	background: var(--csx-cream-deep);
}

body.csx-is-cart td.product-name a {
	font-family: var(--csx-serif) !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	color: var(--csx-ink) !important;
	text-decoration: none !important;
}

body.csx-is-cart td.product-name a:hover {
	color: var(--csx-rust-deep) !important;
}

body.csx-is-cart td.product-remove a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	color: var(--csx-muted) !important;
	font-size: 18px !important;
	text-decoration: none !important;
	border: 1px solid var(--csx-line) !important;
	background: var(--csx-white) !important;
	transition: all 0.2s ease;
}

body.csx-is-cart td.product-remove a:hover {
	background: var(--csx-rust) !important;
	border-color: var(--csx-rust) !important;
	color: #fff !important;
}

body.csx-is-cart .quantity .qty {
	width: 64px !important;
	text-align: center !important;
	min-height: 40px !important;
	padding: 8px !important;
}

body.csx-is-cart .actions {
	padding: 18px 16px !important;
}

body.csx-is-cart .coupon {
	display: flex !important;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
	float: none !important;
	padding: 0 !important;
}

body.csx-is-cart .coupon label {
	display: none !important;
}

body.csx-is-cart .coupon .input-text {
	width: auto !important;
	min-width: 200px;
	flex: 1 1 180px;
}

body.csx-is-cart .actions .button {
	float: none !important;
}

/* Cart layout: table + totals */
body.csx-is-cart .cart_totals {
	background: var(--csx-white) !important;
	border: 1px solid var(--csx-line) !important;
	padding: 28px !important;
	width: 100% !important;
	float: none !important;
}

body.csx-is-cart .cart_totals h2 {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	font-size: 24px !important;
	margin: 0 0 20px !important;
	color: var(--csx-ink) !important;
}

body.csx-is-cart .cart_totals table {
	border: none !important;
	margin: 0 0 20px !important;
	background: transparent !important;
}

body.csx-is-cart .cart_totals th,
body.csx-is-cart .cart_totals td {
	border: none !important;
	border-bottom: 1px solid var(--csx-line) !important;
	padding: 12px 0 !important;
	background: transparent !important;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
}

body.csx-is-cart .cart_totals .order-total th,
body.csx-is-cart .cart_totals .order-total td {
	border-bottom: none !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	padding-top: 16px !important;
}

body.csx-is-cart .wc-proceed-to-checkout {
	padding: 0 !important;
}

body.csx-is-cart .wc-proceed-to-checkout a.checkout-button {
	display: flex !important;
	width: 100% !important;
	text-align: center;
	margin: 0 !important;
}

body.csx-is-cart .woocommerce-info,
body.csx-is-cart .cart-empty {
	font-family: var(--csx-serif) !important;
	font-size: 22px !important;
	font-weight: 500 !important;
	text-align: center;
	background: transparent !important;
	border: none !important;
	padding: 40px 20px 12px !important;
	color: var(--csx-ink) !important;
}

body.csx-is-cart .return-to-shop,
body.csx-is-cart .csx-empty-cart-actions {
	text-align: center;
	margin: 8px 0 48px !important;
}

body.csx-is-cart .return-to-shop {
	display: none !important; /* we render our own CTA */
}

/* Cross-sells */
body.csx-is-cart .cross-sells {
	margin-top: 48px !important;
}

body.csx-is-cart .cross-sells > h2 {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	font-size: 28px !important;
	margin: 0 0 24px !important;
}

/* =========================================================================
   CHECKOUT
   ========================================================================= */
body.csx-is-checkout form.checkout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 40px;
	align-items: start;
}

body.csx-is-checkout #customer_details {
	width: 100% !important;
	float: none !important;
}

body.csx-is-checkout .col2-set {
	width: 100% !important;
	float: none !important;
	display: grid;
	gap: 28px;
}

body.csx-is-checkout .col2-set .col-1,
body.csx-is-checkout .col2-set .col-2 {
	width: 100% !important;
	float: none !important;
}

body.csx-is-checkout .woocommerce-billing-fields,
body.csx-is-checkout .woocommerce-shipping-fields,
body.csx-is-checkout .woocommerce-additional-fields {
	background: var(--csx-white);
	border: 1px solid var(--csx-line);
	padding: 28px;
	margin-bottom: 0 !important;
}

body.csx-is-checkout .woocommerce-billing-fields h3,
body.csx-is-checkout .woocommerce-shipping-fields h3,
body.csx-is-checkout .woocommerce-additional-fields h3,
body.csx-is-checkout #order_review_heading {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	font-size: 24px !important;
	margin: 0 0 20px !important;
	color: var(--csx-ink) !important;
	border: none !important;
	padding: 0 !important;
}

body.csx-is-checkout .form-row {
	margin: 0 0 16px !important;
	padding: 0 !important;
}

body.csx-is-checkout .form-row-first,
body.csx-is-checkout .form-row-last {
	width: 48% !important;
}

body.csx-is-checkout #order_review_heading {
	margin-bottom: 16px !important;
}

body.csx-is-checkout #order_review {
	background: var(--csx-white);
	border: 1px solid var(--csx-line);
	padding: 28px;
	width: 100% !important;
	float: none !important;
	position: sticky;
	top: 100px;
}

body.csx-is-checkout .woocommerce-checkout-review-order-table {
	border: none !important;
	margin: 0 0 20px !important;
	background: transparent !important;
}

body.csx-is-checkout .woocommerce-checkout-review-order-table th,
body.csx-is-checkout .woocommerce-checkout-review-order-table td {
	border: none !important;
	border-bottom: 1px solid var(--csx-line) !important;
	padding: 12px 0 !important;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
	background: transparent !important;
}

body.csx-is-checkout .woocommerce-checkout-review-order-table thead th {
	font-size: 11px !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--csx-muted) !important;
	font-weight: 600 !important;
}

body.csx-is-checkout .woocommerce-checkout-payment {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.csx-is-checkout .woocommerce-checkout-payment ul.payment_methods {
	border: none !important;
	border-top: 1px solid var(--csx-line) !important;
	padding: 16px 0 !important;
	margin: 0 0 16px !important;
	background: transparent !important;
}

body.csx-is-checkout .woocommerce-checkout-payment ul.payment_methods li {
	padding: 10px 0 !important;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
}

body.csx-is-checkout .woocommerce-checkout-payment div.payment_box {
	background: var(--csx-cream-deep) !important;
	border-radius: 0 !important;
	color: var(--csx-ink) !important;
	font-size: 13px !important;
	line-height: 1.55 !important;
	padding: 12px 14px !important;
	margin: 10px 0 0 !important;
}

body.csx-is-checkout .woocommerce-checkout-payment div.payment_box::before {
	display: none !important;
}

body.csx-is-checkout .woocommerce-privacy-policy-text {
	font-size: 12.5px !important;
	color: var(--csx-muted) !important;
	line-height: 1.55 !important;
}

body.csx-is-checkout #place_order {
	width: 100% !important;
	margin-top: 8px !important;
}

body.csx-is-checkout .woocommerce-form-login-toggle .woocommerce-info,
body.csx-is-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
	background: var(--csx-white) !important;
	border: 1px solid var(--csx-line) !important;
	border-top: 3px solid var(--csx-gold) !important;
	text-align: left;
	font-family: var(--csx-sans) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	padding: 14px 18px !important;
	margin-bottom: 20px !important;
}

/* =========================================================================
   MY ACCOUNT
   ========================================================================= */
body.csx-is-account .u-columns,
body.csx-is-account .col2-set {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px;
	width: 100% !important;
}

body.csx-is-account .u-column1,
body.csx-is-account .u-column2,
body.csx-is-account .col-1,
body.csx-is-account .col-2 {
	width: 100% !important;
	float: none !important;
}

body.csx-is-account .woocommerce-form-login,
body.csx-is-account .woocommerce-form-register,
body.csx-is-account .woocommerce-ResetPassword,
body.csx-is-account .woocommerce-EditAccountForm,
body.csx-is-account .woocommerce-address-fields {
	background: var(--csx-white);
	border: 1px solid var(--csx-line);
	padding: 28px;
}

body.csx-is-account h2,
body.csx-is-account .woocommerce-Address-title h3,
body.csx-is-account .woocommerce-MyAccount-content h2,
body.csx-is-account .woocommerce-MyAccount-content h3 {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	font-size: 24px !important;
	margin: 0 0 18px !important;
	color: var(--csx-ink) !important;
}

body.csx-is-account .woocommerce-form-row {
	margin: 0 0 16px !important;
}

body.csx-is-account .woocommerce-form-login__submit,
body.csx-is-account .woocommerce-form-register__submit,
body.csx-is-account button[name="login"],
body.csx-is-account button[name="register"],
body.csx-is-account button[name="save_account_details"],
body.csx-is-account button[name="save_address"] {
	width: 100% !important;
	margin-top: 8px !important;
}

body.csx-is-account .woocommerce-LostPassword {
	margin: 14px 0 0 !important;
	font-size: 13px !important;
}

body.csx-is-account .woocommerce-LostPassword a {
	color: var(--csx-rust-deep) !important;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Logged-in layout */
body.csx-is-account .woocommerce-MyAccount-navigation {
	float: none !important;
	width: 100% !important;
	margin: 0 0 28px !important;
}

body.csx-is-account .woocommerce-MyAccount-navigation ul {
	display: flex !important;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

body.csx-is-account .woocommerce-MyAccount-navigation ul li {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

body.csx-is-account .woocommerce-MyAccount-navigation ul li a {
	display: inline-flex !important;
	align-items: center;
	font-family: var(--csx-sans) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	color: var(--csx-ink) !important;
	background: var(--csx-white) !important;
	border: 1px solid var(--csx-line) !important;
	padding: 11px 16px !important;
	transition: all 0.2s ease;
}

body.csx-is-account .woocommerce-MyAccount-navigation ul li a:hover,
body.csx-is-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--csx-ink) !important;
	border-color: var(--csx-ink) !important;
	color: var(--csx-cream) !important;
}

body.csx-is-account .woocommerce-MyAccount-content {
	float: none !important;
	width: 100% !important;
	background: var(--csx-white);
	border: 1px solid var(--csx-line);
	padding: 28px;
}

body.csx-is-account .woocommerce-MyAccount-content > .csx-commerce-header {
	margin-top: 0;
}

body.csx-is-account .woocommerce-MyAccount-content a {
	color: var(--csx-rust-deep);
}

body.csx-is-account table.shop_table {
	border: 1px solid var(--csx-line) !important;
	border-radius: 0 !important;
	background: var(--csx-cream) !important;
	width: 100% !important;
}

body.csx-is-account table.shop_table th,
body.csx-is-account table.shop_table td {
	border: none !important;
	border-bottom: 1px solid var(--csx-line) !important;
	padding: 14px 12px !important;
	font-family: var(--csx-sans) !important;
	font-size: 13.5px !important;
	background: transparent !important;
}

body.csx-is-account table.shop_table th {
	font-size: 11px !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	color: var(--csx-muted) !important;
	font-weight: 600 !important;
}

body.csx-is-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

body.csx-is-account .woocommerce-Address {
	background: var(--csx-cream);
	border: 1px solid var(--csx-line);
	padding: 20px;
	margin: 0 !important;
}

/* Order received / thank you */
body.csx-is-checkout.woocommerce-order-received .woocommerce-order {
	background: var(--csx-white);
	border: 1px solid var(--csx-line);
	padding: 36px 32px;
}

body.csx-is-checkout .woocommerce-thankyou-order-received {
	font-family: var(--csx-serif) !important;
	font-size: 28px !important;
	font-weight: 500 !important;
	color: var(--csx-ink) !important;
	margin: 0 0 20px !important;
}

/* Hide leftover Cart block empty-state widgets if shortcode filter fails */
body.csx-is-cart .wp-block-woocommerce-empty-cart-block,
body.csx-is-cart .wp-block-woocommerce-filled-cart-block,
body.csx-is-checkout .wp-block-woocommerce-checkout {
	/* classic shortcode replaces content; keep as soft fallback styles */
}

body.csx-is-cart .wc-block-cart__empty-cart__title,
body.csx-is-cart .wp-block-heading {
	font-family: var(--csx-serif) !important;
	font-weight: 500 !important;
	color: var(--csx-ink) !important;
}

body.csx-is-cart .wc-block-components-button,
body.csx-is-checkout .wc-block-components-button {
	border-radius: 0 !important;
	font-family: var(--csx-sans) !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	background: var(--csx-ink) !important;
	color: var(--csx-cream) !important;
}

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width: 900px) {
	body.csx-is-checkout form.checkout {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	body.csx-is-checkout #order_review {
		position: static;
	}

	body.csx-is-cart .woocommerce {
		grid-template-columns: 1fr;
	}

	body.csx-is-cart .woocommerce-cart-form,
	body.csx-is-cart .cart-collaterals {
		grid-column: 1;
	}

	body.csx-is-account .u-columns,
	body.csx-is-account .col2-set,
	body.csx-is-account .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	body.csx-is-cart .site-main,
	body.csx-is-checkout .site-main,
	body.csx-is-account .site-main,
	body.csx-is-cart .woocommerce,
	body.csx-is-checkout .woocommerce,
	body.csx-is-account .woocommerce {
		padding-top: 16px !important;
		padding-bottom: 56px !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	.csx-commerce-header {
		margin-bottom: 24px;
	}

	body.csx-is-cart table.shop_table_responsive tr,
	body.csx-is-account table.shop_table_responsive tr {
		background: var(--csx-white) !important;
		border: 1px solid var(--csx-line) !important;
		margin-bottom: 12px !important;
		padding: 12px !important;
	}

	body.csx-is-cart table.shop_table_responsive td {
		padding: 10px 0 !important;
	}

	body.csx-is-cart .coupon {
		width: 100%;
	}

	body.csx-is-cart .coupon .input-text {
		min-width: 0;
		width: 100% !important;
	}

	body.csx-is-cart .actions .button,
	body.csx-is-cart .coupon .button {
		width: 100% !important;
	}

	body.csx-is-checkout .form-row-first,
	body.csx-is-checkout .form-row-last {
		width: 100% !important;
	}

	body.csx-is-checkout .woocommerce-billing-fields,
	body.csx-is-checkout .woocommerce-shipping-fields,
	body.csx-is-checkout .woocommerce-additional-fields,
	body.csx-is-checkout #order_review,
	body.csx-is-account .woocommerce-form-login,
	body.csx-is-account .woocommerce-form-register,
	body.csx-is-account .woocommerce-MyAccount-content,
	body.csx-is-cart .cart_totals {
		padding: 20px 16px !important;
	}

	body.csx-is-account .woocommerce-MyAccount-navigation ul {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 4px;
	}

	body.csx-is-account .woocommerce-MyAccount-navigation ul li a {
		white-space: nowrap;
	}

	/* Prevent iOS zoom */
	body.csx-is-cart .input-text,
	body.csx-is-checkout .input-text,
	body.csx-is-account .input-text,
	body.csx-is-cart input,
	body.csx-is-checkout input,
	body.csx-is-checkout textarea,
	body.csx-is-checkout select,
	body.csx-is-account input,
	body.csx-is-account textarea {
		font-size: 16px !important;
	}
}
