.xks-woocommerce-main {
	background: var(--xks-color-surface);
}

.woocommerce .woocommerce-notices-wrapper,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
	border-radius: var(--xks-radius-base);
	font-family: var(--xks-font-body);
}

.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-primary);
	color: var(--xks-color-white);
	font-weight: 700;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	background: var(--xks-color-primary-bright);
	color: var(--xks-color-white);
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--xks-color-outline-soft);
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-white);
	padding: 0.8rem 0.9rem;
	color: var(--xks-color-charcoal);
}

.woocommerce-checkout-review-order,
.woocommerce table.shop_table {
	border-color: rgba(110, 121, 125, 0.24);
	border-radius: var(--xks-radius-lg);
	background: var(--xks-color-cream);
}

.woocommerce table.shop_table {
	width: 100%;
	border-spacing: 0;
	overflow: hidden;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border: 0;
	border-bottom: 1px solid rgba(110, 121, 125, 0.16);
	padding: var(--xks-space-3);
	text-align: left;
	vertical-align: top;
}

.woocommerce table.shop_table tr:last-child th,
.woocommerce table.shop_table tr:last-child td {
	border-bottom: 0;
}

.woocommerce-cart-form,
.woocommerce-checkout {
	display: grid;
	gap: var(--xks-space-5);
	margin-block: var(--xks-space-5);
}

.woocommerce-cart-form__cart-item .product-name a,
.woocommerce-checkout-review-order-table .product-name {
	color: var(--xks-color-charcoal);
	font-family: var(--xks-font-heading);
	font-weight: 700;
	text-decoration: none;
}

.woocommerce .cart-collaterals,
.woocommerce-checkout-review-order,
.woocommerce-checkout-payment,
.woocommerce-billing-fields,
.woocommerce-additional-fields,
.woocommerce-shipping-fields {
	border: 1px solid rgba(110, 121, 125, 0.18);
	border-radius: var(--xks-radius-lg);
	background: var(--xks-color-white);
	padding: var(--xks-space-4);
	box-shadow: var(--xks-shadow-soft);
}

.woocommerce .cart-collaterals .cart_totals {
	float: none;
	width: 100%;
}

.woocommerce .cart-collaterals h2,
.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3,
.woocommerce-checkout h3 {
	margin-bottom: var(--xks-space-3);
	font-size: var(--xks-size-heading-sm);
}

.woocommerce form .form-row {
	margin: 0 0 var(--xks-space-3);
	padding: 0;
}

.woocommerce form .form-row label {
	display: block;
	margin-bottom: var(--xks-space-1);
	color: var(--xks-color-charcoal);
	font-size: var(--xks-size-label);
	font-weight: 800;
}

.woocommerce form .form-row .required {
	color: var(--xks-color-primary);
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
	float: none;
	width: 100%;
}

.woocommerce-checkout-payment ul.payment_methods {
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-checkout-payment .place-order {
	margin-bottom: 0;
}

.woocommerce a.remove {
	display: inline-grid;
	width: 2rem;
	height: 2rem;
	place-items: center;
	border-radius: 999px;
	background: rgba(197, 101, 71, 0.12);
	color: var(--xks-color-primary);
	font-weight: 800;
	text-decoration: none;
}

.woocommerce-cart-form .product-name,
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-quantity,
.woocommerce-cart-form .product-subtotal,
.woocommerce-checkout-review-order-table .product-name {
	overflow-wrap: anywhere;
}

.woocommerce-NoticeGroup,
.woocommerce-checkout-payment {
	border-radius: var(--xks-radius-lg);
}

.xks-is-deposit-flow .entry-content {
	max-width: none;
}

.xks-deposit-payment-hero {
	display: grid;
	gap: var(--xks-space-5);
	margin: var(--xks-space-6) 0 var(--xks-space-6);
	border: 1px solid rgba(110, 121, 125, 0.18);
	border-radius: var(--xks-radius-xl);
	background:
		linear-gradient(135deg, rgba(172, 237, 255, 0.48), rgba(255, 253, 247, 0.92) 42%, rgba(245, 201, 74, 0.18)),
		var(--xks-color-cream);
	padding: clamp(1.25rem, 4vw, 2.5rem);
	box-shadow: var(--xks-shadow-soft);
}

.xks-deposit-payment-hero__content {
	max-width: 42rem;
}

.xks-deposit-payment-hero__kicker,
.xks-deposit-payment-guidance__eyebrow {
	margin: 0 0 var(--xks-space-2);
	color: var(--xks-color-primary);
	font-size: var(--xks-size-label);
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.xks-deposit-payment-hero h1 {
	margin-bottom: var(--xks-space-4);
	font-size: clamp(2rem, 7vw, 3.75rem);
}

.xks-deposit-payment-hero p {
	color: var(--xks-color-muted);
	font-size: var(--xks-size-body-lg);
}

.xks-deposit-payment-summary {
	display: grid;
	gap: var(--xks-space-3);
	margin: 0;
}

.xks-deposit-payment-summary > div {
	border: 1px solid rgba(110, 121, 125, 0.16);
	border-radius: var(--xks-radius-base);
	background: rgba(255, 255, 255, 0.72);
	padding: var(--xks-space-4);
}

.xks-deposit-payment-summary dt {
	margin-bottom: var(--xks-space-1);
	color: var(--xks-color-muted);
	font-size: var(--xks-size-caption);
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.xks-deposit-payment-summary dd {
	margin: 0;
	color: var(--xks-color-charcoal);
	font-weight: 800;
}

.xks-is-deposit-flow .wp-block-woocommerce-cart,
.xks-is-deposit-flow .wp-block-woocommerce-checkout {
	margin-block: var(--xks-space-6);
}

.xks-is-deposit-flow .wc-block-components-sidebar,
.xks-is-deposit-flow .wc-block-cart__totals-title,
.xks-is-deposit-flow .wp-block-woocommerce-cart-order-summary-block,
.xks-is-deposit-flow .wp-block-woocommerce-checkout-order-summary-block {
	border-color: rgba(110, 121, 125, 0.18);
	border-radius: var(--xks-radius-lg);
	background: var(--xks-color-cream);
	box-shadow: var(--xks-shadow-soft);
}

.xks-is-deposit-flow .wc-block-components-product-name,
.xks-is-deposit-flow .wc-block-cart-item__product .wc-block-components-product-name,
.xks-is-deposit-flow .wc-block-components-order-summary-item__description .wc-block-components-product-name {
	color: var(--xks-color-charcoal);
	font-family: var(--xks-font-heading);
	font-size: var(--xks-size-heading-sm);
	font-weight: 700;
	line-height: var(--xks-line-heading);
	text-decoration: none;
}

.xks-is-deposit-flow .wc-block-components-product-metadata,
.xks-is-deposit-flow .wc-block-components-product-metadata__description,
.xks-is-deposit-flow .wc-block-components-product-details {
	color: var(--xks-color-muted);
	font-size: var(--xks-size-label);
}

.xks-is-deposit-flow .wc-block-components-product-details__name {
	color: var(--xks-color-primary);
	font-weight: 800;
}

.xks-is-deposit-flow .wc-block-components-product-details__value {
	color: var(--xks-color-charcoal);
	font-weight: 700;
}

.xks-is-deposit-flow .wc-block-components-button:not(.is-link),
.xks-is-deposit-flow .wc-block-cart__submit-button,
.xks-is-deposit-flow .wc-block-components-checkout-place-order-button {
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-primary);
	color: var(--xks-color-white);
	font-weight: 800;
	box-shadow: var(--xks-shadow-action);
}

.xks-is-deposit-flow .wc-block-components-button:not(.is-link):hover,
.xks-is-deposit-flow .wc-block-cart__submit-button:hover,
.xks-is-deposit-flow .wc-block-components-checkout-place-order-button:hover {
	background: var(--xks-color-primary-bright);
	color: var(--xks-color-white);
}

.xks-is-deposit-flow .wc-block-components-text-input input,
.xks-is-deposit-flow .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.xks-is-deposit-flow .wc-block-components-form .wc-block-components-text-input input[type="email"],
.xks-is-deposit-flow .wc-block-components-form .wc-block-components-text-input input[type="tel"],
.xks-is-deposit-flow .wc-block-components-form .wc-block-components-text-input input[type="text"] {
	border-color: rgba(110, 121, 125, 0.42);
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-white);
	color: var(--xks-color-charcoal);
}

.xks-is-deposit-flow .wp-block-woocommerce-product-collection {
	display: none;
}

.xks-deposit-payment-guidance {
	display: grid;
	gap: var(--xks-space-5);
	margin: var(--xks-space-6) 0 var(--xks-space-8);
	border-top: 1px solid rgba(110, 121, 125, 0.18);
	padding-top: var(--xks-space-6);
}

.xks-deposit-payment-guidance h2 {
	max-width: 42rem;
	margin-bottom: 0;
	font-size: var(--xks-size-heading-md);
}

.xks-deposit-payment-steps {
	display: grid;
	gap: var(--xks-space-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.xks-deposit-payment-steps li {
	display: grid;
	gap: var(--xks-space-2);
	border: 1px solid rgba(110, 121, 125, 0.16);
	border-radius: var(--xks-radius-base);
	background: var(--xks-color-white);
	padding: var(--xks-space-4);
}

.xks-deposit-payment-steps strong {
	color: var(--xks-color-charcoal);
	font-family: var(--xks-font-heading);
	font-size: 1.2rem;
}

.xks-deposit-payment-steps span {
	color: var(--xks-color-muted);
}

@media (max-width: 47.9375rem) {
	.woocommerce-cart-form table.shop_table,
	.woocommerce-cart-form table.shop_table tbody,
	.woocommerce-cart-form table.shop_table tfoot,
	.woocommerce-cart-form table.shop_table tr,
	.woocommerce-cart-form table.shop_table th,
	.woocommerce-cart-form table.shop_table td {
		display: block;
		width: 100%;
	}

	.woocommerce-cart-form table.shop_table thead {
		display: none;
	}

	.woocommerce-cart-form table.shop_table {
		border: 0;
		background: transparent;
	}

	.woocommerce-cart-form table.shop_table tr.cart_item {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		gap: var(--xks-space-3);
		margin-bottom: var(--xks-space-4);
		border: 1px solid rgba(110, 121, 125, 0.18);
		border-radius: var(--xks-radius-lg);
		background: var(--xks-color-white);
		padding: var(--xks-space-4);
		box-shadow: var(--xks-shadow-soft);
	}

	.woocommerce-cart-form table.shop_table tr.cart_item td {
		border: 0;
		padding: 0;
	}

	.woocommerce-cart-form table.shop_table td.product-remove {
		grid-row: 1 / span 5;
		width: auto;
	}

	.woocommerce-cart-form table.shop_table td.product-thumbnail {
		display: none;
	}

	.woocommerce-cart-form table.shop_table td.product-name,
	.woocommerce-cart-form table.shop_table td.product-price,
	.woocommerce-cart-form table.shop_table td.product-quantity,
	.woocommerce-cart-form table.shop_table td.product-subtotal {
		grid-column: 2;
	}

	.woocommerce-cart-form table.shop_table td.product-price::before,
	.woocommerce-cart-form table.shop_table td.product-quantity::before,
	.woocommerce-cart-form table.shop_table td.product-subtotal::before {
		content: attr(data-title);
		display: block;
		margin-bottom: 0.2rem;
		color: var(--xks-color-muted);
		font-size: var(--xks-size-caption);
		font-weight: 800;
		letter-spacing: 0.04em;
		text-transform: uppercase;
	}

	.woocommerce-cart-form table.shop_table td.actions {
		display: grid;
		gap: var(--xks-space-3);
		border: 1px solid rgba(110, 121, 125, 0.18);
		border-radius: var(--xks-radius-lg);
		background: var(--xks-color-white);
		padding: var(--xks-space-4);
	}

	.woocommerce-cart-form table.shop_table td.actions .coupon {
		display: grid;
		gap: var(--xks-space-2);
	}

	.woocommerce-cart-form table.shop_table td.actions .input-text,
	.woocommerce-cart-form table.shop_table td.actions .button {
		width: 100%;
	}

	.woocommerce .cart-collaterals {
		padding: var(--xks-space-4);
	}

	.woocommerce .cart-collaterals table.shop_table th,
	.woocommerce .cart-collaterals table.shop_table td {
		display: block;
		width: 100%;
		padding-inline: 0;
	}
}

@media (min-width: 48rem) {
	.xks-deposit-payment-hero {
		grid-template-columns: minmax(0, 1.3fr) minmax(18rem, 0.7fr);
		align-items: end;
	}

	.xks-deposit-payment-steps {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last {
		width: calc(50% - var(--xks-space-2));
	}

	.woocommerce form .form-row-first {
		float: left;
	}

	.woocommerce form .form-row-last {
		float: right;
	}
}

@media (min-width: 64rem) {
	.xks-deposit-payment-guidance {
		grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
		align-items: start;
	}

	.woocommerce-cart-form {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-checkout {
		grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
		align-items: start;
	}

	.woocommerce-checkout #customer_details {
		display: grid;
		gap: var(--xks-space-4);
	}

	.woocommerce-checkout #order_review_heading,
	.woocommerce-checkout #order_review {
		grid-column: 2;
	}
}
