/* Wearseraiah — Block checkout
 *
 * Palette + page shell. Do NOT restyle WC internal flex/grid scaffolding
 * (radio option-layout, order-summary flex children) except where
 * theme.json heading defaults break narrow summary columns.
 */

/* ------------------------------------------------------------------ */
/* Page shell — single wide rail, left-aligned title                    */
/* ------------------------------------------------------------------ */

body.woocommerce-checkout,
body.woocommerce-checkout .wp-site-blocks {
	background: var(--wp--preset--color--base, #F7F3EB);
}

body.woocommerce-checkout main.wsr-checkout {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	/* Kill core constrained centering leftovers if a DB template reintroduces them */
	padding-inline: 0 !important;
}

/* One rail for title + form + summary — full-bleed shell, pad only
 * (same formula as header/hero). Do NOT also max-width+center or the
 * gutter doubles and drifts off the header edge. */
body.woocommerce-checkout .wsr-checkout__rail {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	padding-inline: var(--wsr-rail-pad, 1.5rem);
	box-sizing: border-box;
}

/* Intro sits on the same left edge as Contact information. */
body.woocommerce-checkout .wsr-checkout__intro {
	width: 100%;
	max-width: none;
	margin: 0 0 var(--wp--preset--spacing--m, 1.5rem);
	padding: 0;
	text-align: left;
}

body.woocommerce-checkout .wsr-checkout__title,
body.woocommerce-checkout .wsr-checkout__lede {
	width: 100% !important;
	max-width: none !important;
	margin-inline: 0 !important;
	text-align: left;
}

body.woocommerce-checkout .wsr-checkout__title {
	color: var(--wp--preset--color--ink, #3A3228);
	line-height: 1.15;
}

body.woocommerce-checkout .wsr-checkout__lede {
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif);
	letter-spacing: 0.02em;
}

/* Post content / notices inherit the rail — no second max-width/pad. */
body.woocommerce-checkout main.wsr-checkout .wsr-checkout__rail > .entry-content,
body.woocommerce-checkout main.wsr-checkout .wsr-checkout__rail > .wp-block-post-content,
body.woocommerce-checkout main.wsr-checkout .wsr-checkout__rail > .wp-block-woocommerce-store-notices,
body.woocommerce-checkout main.wsr-checkout .wsr-checkout__rail > .wc-block-components-notices {
	width: 100%;
	max-width: none;
	margin-inline: 0;
	padding-inline: 0;
	box-sizing: border-box;
}

/* Fallback when template lacks .wsr-checkout__rail (older cache). */
body.woocommerce-checkout main.wsr-checkout > .entry-content,
body.woocommerce-checkout main.wsr-checkout > .wp-block-post-content,
body.woocommerce-checkout main.wsr-checkout > .wp-block-woocommerce-store-notices,
body.woocommerce-checkout main.wsr-checkout > .wc-block-components-notices,
body.woocommerce-checkout main.wsr-checkout > .wsr-checkout__intro {
	width: 100%;
	max-width: var(--wsr-wide-size, 1320px);
	margin-inline: auto;
	padding-inline: var(--wsr-rail-pad, 1.5rem);
	box-sizing: border-box;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-checkout .wc-block-checkout {
	width: 100%;
	max-width: none;
	color: var(--wp--preset--color--ink, #3A3228);
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif);
}

/*
 * Two-column ratio: WC default is 65/35 which starves the summary on
 * our wide rail. Give the order summary more room (~58/42).
 */
@media (min-width: 782px) {
	body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
	body.woocommerce-checkout .wc-block-checkout__main {
		width: 58% !important;
		padding-right: 2.5% !important;
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar,
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		width: 42% !important;
		/* Only clear WC's % side gutters — keep our card padding below. */
		padding-left: 1.4rem !important;
		padding-right: 1.4rem !important;
	}
}


/* ------------------------------------------------------------------ */
/* Order summary card — ONE border, not sidebar + inner block           */
/* ------------------------------------------------------------------ */

/* Kill WC's own card border on the order-summary block (we own chrome). */
body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
}

/* Single surface card on the sidebar column. */
body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block,
body.woocommerce-checkout .wc-block-checkout__sidebar {
	background: var(--wp--preset--color--surface, #EFE8DB);
	border: 1px solid var(--wp--preset--color--sand, #DDD2BE);
	border-radius: 0;
	padding: 1.35rem 1.4rem 1.5rem;
	box-sizing: border-box;
}

body.woocommerce-checkout .wc-block-components-order-summary {
	background: transparent;
}

/*
 * Line items: keep WC's image | description | total row.
 * Force description to take remaining width (WC leaves flex-grow:0),
 * and kill theme.json h3 (display / x-large) on product names —
 * that combo + overflow-wrap:anywhere stacks words in the sidebar.
 */
body.woocommerce-checkout .wc-block-components-order-summary-item {
	align-items: flex-start;
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
	color: var(--wp--preset--color--ink, #3A3228);
	gap: 0;
	min-width: 0;
	width: 100%;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image {
	flex: 0 0 48px !important;
	width: 48px !important;
	min-width: 48px !important;
	max-width: 48px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: none !important;
	word-break: normal;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
	flex: 0 0 auto !important;
	min-width: max-content;
	padding-left: 0.5rem;
	text-align: right;
	white-space: nowrap;
}

/* Beat theme.json `h3` (display + x-large) and WC max-width:max-content */
body.woocommerce-checkout .wc-block-components-order-summary-item__description h3,
body.woocommerce-checkout .wc-block-components-order-summary-item__description h3.wc-block-components-product-name,
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-product-name,
body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-product-name {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 0.2rem !important;
	padding: 0 !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.9375rem !important;
	font-weight: 500 !important;
	font-style: normal !important;
	letter-spacing: 0.01em !important;
	line-height: 1.35 !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	text-transform: none !important;
	overflow-wrap: break-word !important;
	word-break: normal !important;
	hyphens: manual;
}

body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-details,
body.woocommerce-checkout .wc-block-components-product-metadata__description,
body.woocommerce-checkout .wc-block-components-product-metadata__description p {
	color: var(--wp--preset--color--muted, #756B58) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	overflow-wrap: break-word;
	word-break: normal;
}

/* Clamp long product blurbs in the summary — titles + price matter more. */
body.woocommerce-checkout .wc-block-components-product-metadata__description {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

body.woocommerce-checkout .wc-block-components-totals-item,
body.woocommerce-checkout .wc-block-components-totals-wrapper {
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
	color: var(--wp--preset--color--ink, #3A3228);
}

body.woocommerce-checkout .wc-block-components-totals-item__label {
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted, #756B58);
}

body.woocommerce-checkout .wc-block-components-totals-item__value,
body.woocommerce-checkout .wc-block-components-product-price,
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
	color: var(--wp--preset--color--ink, #3A3228);
	font-weight: 500;
}

body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink, #3A3228);
}

/* "Add coupons" panel toggle — text control, not a solid CTA. */
body.woocommerce-checkout .wc-block-components-panel__button {
	color: var(--wp--preset--color--ink, #3A3228) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.75rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-panel__button:hover {
	color: var(--wp--preset--color--bronze, #A08F6E) !important;
}

/*
 * Coupon Apply — WC marks it .contained + .wp-element-button, so core
 * global button grey (#32373c) wins unless background is forced.
 * Earlier rule only set text color → ink on charcoal (illegible).
 */
body.woocommerce-checkout .wc-block-components-totals-coupon__button,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.wc-block-components-button,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.contained,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.wp-element-button,
body.woocommerce-checkout button.wc-block-components-totals-coupon__button {
	appearance: none !important;
	background: var(--wp--preset--color--ink, #3A3228) !important;
	background-color: var(--wp--preset--color--ink, #3A3228) !important;
	border: 1px solid var(--wp--preset--color--ink, #3A3228) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.6875rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.16em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	min-height: 3.15rem !important;
	padding: 0.75rem 1.25rem !important;
	opacity: 1 !important;
	cursor: pointer;
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

body.woocommerce-checkout .wc-block-components-totals-coupon__button:hover,
body.woocommerce-checkout .wc-block-components-totals-coupon__button:focus,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.contained:hover,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.contained:focus,
body.woocommerce-checkout .wc-block-components-totals-coupon__button.wp-element-button:hover {
	background: var(--wp--preset--color--bronze, #A08F6E) !important;
	background-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	border-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
}

body.woocommerce-checkout .wc-block-components-totals-coupon__button:disabled,
body.woocommerce-checkout .wc-block-components-totals-coupon__button[disabled] {
	background: var(--wp--preset--color--ink, #3A3228) !important;
	background-color: var(--wp--preset--color--ink, #3A3228) !important;
	border-color: var(--wp--preset--color--ink, #3A3228) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
	opacity: 0.45 !important;
	cursor: not-allowed;
}

/* Coupon field matches checkout inputs. */
body.woocommerce-checkout .wc-block-components-totals-coupon__input input,
body.woocommerce-checkout .wc-block-components-totals-coupon .wc-block-components-text-input input {
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
	border-radius: 0 !important;
	background: var(--wp--preset--color--base, #F7F3EB) !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	min-height: 3.15rem !important;
}

/* Sidebar section title ("Order summary") — display face is fine here. */
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title,
body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-panel__button,
body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title {
	font-family: var(--wp--preset--font-family--display, "Cormorant Garamond", serif);
	color: var(--wp--preset--color--ink, #3A3228);
}

/* ------------------------------------------------------------------ */
/* Step titles (left column only)                                       */
/* ------------------------------------------------------------------ */

body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step__title {
	font-family: var(--wp--preset--font-family--display, "Cormorant Garamond", serif) !important;
	font-size: clamp(1.35rem, 1.1rem + 0.7vw, 1.75rem) !important;
	font-weight: 500 !important;
	letter-spacing: -0.01em;
	line-height: 1.2;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	text-transform: none !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step__description {
	color: var(--wp--preset--color--muted, #756B58);
	font-size: 0.9375rem;
	line-height: 1.55;
}

body.woocommerce-checkout .wc-block-components-checkout-step {
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
}

/* ------------------------------------------------------------------ */
/* Form controls — colour only; leave WC field layout alone             */
/* ------------------------------------------------------------------ */

body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-textarea textarea,
body.woocommerce-checkout .wc-block-components-combobox input,
body.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
body.woocommerce-checkout .wc-block-components-select select,
body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select,
body.woocommerce-checkout .wc-block-components-text-input input[type="text"],
body.woocommerce-checkout .wc-block-components-text-input input[type="email"],
body.woocommerce-checkout .wc-block-components-text-input input[type="tel"],
body.woocommerce-checkout .wc-block-components-text-input input[type="number"],
body.woocommerce-checkout .wc-block-components-text-input input[type="password"] {
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
	border-radius: 0 !important;
	background: var(--wp--preset--color--base, #F7F3EB) !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-combobox label,
body.woocommerce-checkout .wc-block-components-textarea label,
body.woocommerce-checkout .wc-blocks-components-select label {
	color: var(--wp--preset--color--muted, #756B58) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
}

body.woocommerce-checkout .wc-block-components-text-input.is-active input,
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-textarea textarea:focus,
body.woocommerce-checkout .wc-block-components-combobox input:focus,
body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select:focus {
	outline: none !important;
	border-color: var(--wp--preset--color--ink, #3A3228) !important;
	box-shadow: 0 0 0 1px var(--wp--preset--color--ink, #3A3228) !important;
}

body.woocommerce-checkout .wc-block-components-text-input input:hover,
body.woocommerce-checkout .wc-block-components-textarea textarea:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--gold, #C9BDA4) 70%, var(--wp--preset--color--sand, #DDD2BE)) !important;
}

/* ------------------------------------------------------------------ */
/* Shipping / payment radios
 * WC structure:
 *   div.radio-control.--highlight-checked  (::after = group outline)
 *     label.option  (radio + padding)
 *       > input
 *       > div.option-layout
 *
 * Group ::after + per-option borders + gaps = misaligned extra lines.
 * Kill WC highlight chrome; each option is one square card.
 * ------------------------------------------------------------------ */

/* Never chrome the inner layout row. */
body.woocommerce-checkout .wc-block-components-radio-control__option-layout {
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Kill WC group outline + divider pseudos (source of stray bottom line). */
body.woocommerce-checkout .wc-block-components-radio-control--highlight-checked:after,
body.woocommerce-checkout .wc-block-components-radio-control__option:after,
body.woocommerce-checkout .wc-block-components-radio-control__option:before,
body.woocommerce-checkout .wc-block-components-radio-control__option-layout:after {
	content: none !important;
	display: none !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-radio-control {
	position: relative;
	border: 0 !important;
	box-shadow: none !important;
}

/* Option card — border-box so 1px borders share the same outer edge. */
body.woocommerce-checkout .wc-block-components-radio-control__option {
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	border: 1px solid var(--wp--preset--color--sand, #DDD2BE) !important;
	border-radius: 0 !important;
	background: var(--wp--preset--color--base, #F7F3EB) !important;
	box-shadow: none !important;
	margin: 0 0 0.5rem !important;
	/* WC radio gutter (circle sits in the left pad). */
	padding: 0.95rem 1rem 0.95rem 3rem !important;
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

body.woocommerce-checkout .wc-block-components-radio-control__option:last-child {
	margin-bottom: 0 !important;
}

body.woocommerce-checkout .wc-block-components-radio-control__option:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--ink, #3A3228) 45%, var(--wp--preset--color--sand, #DDD2BE)) !important;
}

/* Selected: same box model, ink edge + surface fill (no extra inset ring). */
body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout .wc-block-components-radio-control__option--checked-option-highlighted {
	border: 1px solid var(--wp--preset--color--ink, #3A3228) !important;
	background: var(--wp--preset--color--surface, #EFE8DB) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}


body.woocommerce-checkout .wc-block-components-radio-control__label,
body.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
	color: var(--wp--preset--color--ink, #3A3228) !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.9375rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}

body.woocommerce-checkout .wc-block-components-radio-control__secondary-label {
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

body.woocommerce-checkout .wc-block-components-radio-control__description,
body.woocommerce-checkout .wc-block-components-radio-control__secondary-description {
	color: var(--wp--preset--color--muted, #756B58) !important;
}

body.woocommerce-checkout .wc-block-components-checkbox label,
body.woocommerce-checkout .wc-block-components-checkbox__label {
	color: var(--wp--preset--color--ink, #3A3228);
	font-size: 0.9375rem;
	line-height: 1.45;
}

body.woocommerce-checkout .wc-block-components-checkbox__input,
body.woocommerce-checkout input[type="checkbox"] {
	accent-color: var(--wp--preset--color--ink, #3A3228);
	border-radius: 0;
}

/* Payment methods use accordion wrappers — put the card on the wrapper
 * so selected descriptions stay inside one bordered unit. */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option {
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	border: 1px solid var(--wp--preset--color--sand, #DDD2BE) !important;
	border-radius: 0 !important;
	background: var(--wp--preset--color--base, #F7F3EB) !important;
	box-shadow: none !important;
	margin: 0 0 0.5rem !important;
	padding: 0 !important;
	overflow: hidden;
}

body.woocommerce-checkout .wc-block-components-radio-control-accordion-option:last-child {
	margin-bottom: 0 !important;
}

body.woocommerce-checkout .wc-block-components-radio-control-accordion-option:hover {
	border-color: color-mix(in srgb, var(--wp--preset--color--ink, #3A3228) 45%, var(--wp--preset--color--sand, #DDD2BE)) !important;
}

body.woocommerce-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option:has(.wc-block-components-radio-control__option-checked) {
	border-color: var(--wp--preset--color--ink, #3A3228) !important;
	background: var(--wp--preset--color--surface, #EFE8DB) !important;
}

/* Inner radio label — no second border; keep radio gutter padding. */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	margin: 0 !important;
	width: 100% !important;
	padding: 0.95rem 1rem 0.95rem 3rem !important;
}

body.woocommerce-checkout .wc-block-components-radio-control-accordion-content {
	border: 0 !important;
	border-top: 1px solid var(--wp--preset--color--sand, #DDD2BE) !important;
	border-radius: 0 !important;
	background: transparent !important;
	margin: 0 !important;
	padding: 0.75rem 1rem 1rem 3rem !important;
	color: var(--wp--preset--color--muted, #756B58);
	font-size: 0.875rem;
	line-height: 1.5;
}

/* Empty payment description panels — no phantom divider. */
body.woocommerce-checkout .wc-block-components-radio-control-accordion-content:empty,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-content:has(> div:empty:only-child) {
	display: none !important;
	border: 0 !important;
	padding: 0 !important;
}


/* ------------------------------------------------------------------ */
/* Buttons                                                              */
/* ------------------------------------------------------------------ */

body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button,
body.woocommerce-checkout .wc-block-components-button:not(.is-link):not(.wc-block-components-panel__button),
body.woocommerce-checkout .wc-block-components-totals-coupon__button.wc-block-components-button {
	border-radius: 0 !important;
	font-family: var(--wp--preset--font-family--body, "Jost", sans-serif) !important;
	font-size: 0.6875rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.16em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	min-height: 3.15rem;
	padding: 0.9rem 1.5rem !important;
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

/* Any solid contained WC button in checkout (incl. coupon Apply). */
body.woocommerce-checkout .wc-block-components-button.contained:not(.is-link):not(.wc-block-components-panel__button),
body.woocommerce-checkout .wc-block-components-button.wp-element-button.contained {
	background: var(--wp--preset--color--ink, #3A3228) !important;
	background-color: var(--wp--preset--color--ink, #3A3228) !important;
	border: 1px solid var(--wp--preset--color--ink, #3A3228) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-button.contained:not(.is-link):not(.wc-block-components-panel__button):hover,
body.woocommerce-checkout .wc-block-components-button.contained:not(.is-link):not(.wc-block-components-panel__button):focus,
body.woocommerce-checkout .wc-block-components-button.wp-element-button.contained:hover,
body.woocommerce-checkout .wc-block-components-button.wp-element-button.contained:focus {
	background: var(--wp--preset--color--bronze, #A08F6E) !important;
	background-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	border-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button.contained {
	background: var(--wp--preset--color--ink, #3A3228) !important;
	border: 1px solid var(--wp--preset--color--ink, #3A3228) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
	box-shadow: none !important;
	width: 100%;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button.contained:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button.contained:focus {
	background: var(--wp--preset--color--bronze, #A08F6E) !important;
	border-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
}

body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button,
body.woocommerce-checkout .wc-block-components-button.outlined,
body.woocommerce-checkout .wc-block-components-button.is-style-outline {
	background: transparent !important;
	border: 1px solid var(--wp--preset--color--ink, #3A3228) !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-checkout-return-to-cart-button:hover,
body.woocommerce-checkout .wc-block-components-button.outlined:hover,
body.woocommerce-checkout .wc-block-components-button.is-style-outline:hover {
	background: var(--wp--preset--color--bronze, #A08F6E) !important;
	border-color: var(--wp--preset--color--bronze, #A08F6E) !important;
	color: var(--wp--preset--color--base, #F7F3EB) !important;
}

body.woocommerce-checkout .wc-block-components-button.is-link,
body.woocommerce-checkout a.wc-block-components-button.is-link {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	font-size: 0.8125rem !important;
	letter-spacing: 0.06em;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	min-height: 0;
	padding: 0 !important;
}

body.woocommerce-checkout .wc-block-components-button.is-link:hover {
	color: var(--wp--preset--color--bronze, #A08F6E) !important;
}

/* ------------------------------------------------------------------ */
/* Empty / notices / misc                                               */
/* ------------------------------------------------------------------ */

body.woocommerce-checkout .wc-block-checkout-empty,
body.woocommerce-checkout .wp-block-woocommerce-checkout-empty-cart-block,
body.woocommerce-checkout .wc-block-checkout__empty-cart {
	text-align: center;
	padding: clamp(2.5rem, 6vw, 4rem) 1rem;
	color: var(--wp--preset--color--ink, #3A3228);
}

body.woocommerce-checkout .wc-block-checkout-empty__title,
body.woocommerce-checkout .wc-block-checkout__empty-cart h2 {
	font-family: var(--wp--preset--font-family--display, "Cormorant Garamond", serif);
	font-size: clamp(1.75rem, 1.3rem + 1.2vw, 2.25rem);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--ink, #3A3228);
}

body.woocommerce-checkout .wc-block-checkout-empty__description,
body.woocommerce-checkout .wc-block-checkout__empty-cart p {
	color: var(--wp--preset--color--muted, #756B58);
	font-size: 0.975rem;
	line-height: 1.55;
	max-width: 28rem;
	margin-inline: auto;
}

body.woocommerce-checkout .wc-block-components-notice-banner {
	border-radius: 0 !important;
	border: 1px solid var(--wp--preset--color--sand, #DDD2BE) !important;
	border-top: 2px solid var(--wp--preset--color--gold, #C9BDA4) !important;
	background: var(--wp--preset--color--surface, #EFE8DB) !important;
	color: var(--wp--preset--color--ink, #3A3228) !important;
	box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-notice-banner.is-error {
	border-top-color: #A85A4A !important;
	background: color-mix(in srgb, var(--wp--preset--color--surface, #EFE8DB) 88%, #A85A4A 12%) !important;
}

body.woocommerce-checkout .wc-block-components-validation-error,
body.woocommerce-checkout .wc-block-components-validation-error p {
	color: #A85A4A !important;
	font-size: 0.8125rem;
}

body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-components-express-payment__event-buttons {
	border-color: var(--wp--preset--color--sand, #DDD2BE) !important;
}

body.woocommerce-checkout .wc-block-components-express-payment__title-container {
	color: var(--wp--preset--color--muted, #756B58);
}

body.woocommerce-checkout .wc-block-checkout__actions,
body.woocommerce-checkout .wc-block-checkout__actions_row {
	gap: 0.85rem;
}

body.woocommerce-checkout .wc-block-components-checkout-policies,
body.woocommerce-checkout .wc-block-components-checkbox a {
	color: var(--wp--preset--color--ink, #3A3228);
	text-underline-offset: 0.18em;
}

body.woocommerce-checkout .wc-block-components-checkout-policies a:hover,
body.woocommerce-checkout .wc-block-components-checkbox a:hover {
	color: var(--wp--preset--color--bronze, #A08F6E);
}

body.woocommerce-checkout .wc-block-components-skeleton,
body.woocommerce-checkout .wc-block-components-skeleton__element {
	background: var(--wp--preset--color--surface, #EFE8DB) !important;
}

@media (max-width: 781px) {
	body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block,
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		padding: 1.1rem 1rem 1.25rem;
	}

	body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
		min-height: 3rem;
	}
}
