/* ITEMPLS — checkout, payment-first (inc/checkout-ux.php; Benoit, 2026-10-12).
 *
 * Loaded on the cart (step bar only) and on the checkout form, after every other theme sheet.
 * Kirki and Shoptimizer colour and set type per component after the stylesheets, hence the
 * !important on colour and font-family, as in cart.css. Nothing here is sticky or fixed: the
 * Place order button stays in the flow under the Terms box. */

/* One type family. The parent theme names "IBM Plex Sans" alone on several checkout rules; the
 * site no longer loads that font, so the browser fell back to a serif (the warning above Place
 * order, the no-fees line, the order total). */
html body.woocommerce-checkout form.checkout,
html body.woocommerce-checkout form.checkout *:not(svg):not(path),
html body.woocommerce-checkout .woocommerce-form-login-toggle,
html body.woocommerce-checkout .itempls-delivery-notice,
html body .it-costeps { font-family: var(--it-font) !important; }

/* ------------------------------------------------------------- step bar */
.it-costeps {
	list-style: none; margin: var(--it-s4) 0 var(--it-s3); padding: 0;
	display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px;
	font-size: var(--it-fs-sm); color: var(--it-text-muted);
}
.it-costeps__s { display: inline-flex; align-items: center; gap: 6px; margin: 0; }
.it-costeps__s + .it-costeps__s::before {
	content: ""; width: 18px; height: 1px; background: var(--it-line-strong); margin-right: 4px;
}
.it-costeps__s a { color: inherit !important; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.it-costeps__s a:hover { color: var(--it-text) !important; }
.it-costeps__n {
	display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%;
	border: 1px solid var(--it-line-strong); font-size: 11px; font-weight: 700; line-height: 1;
}
.it-costeps__s.is-done .it-costeps__n { border-color: var(--it-ok); color: var(--it-ok); }
.it-costeps__s.is-current { color: var(--it-text) !important; font-weight: 650; }
.it-costeps__s.is-current .it-costeps__n { background: var(--it-accent); border-color: var(--it-accent); color: var(--it-text-on-accent); }

/* --------------------------------------------- the lines above the form */
html body.woocommerce-checkout .itempls-delivery-notice--short {
	border-left: 3px solid var(--it-accent); opacity: 1;
	margin: 0 0 var(--it-s4); padding: 6px 12px;
	font-size: var(--it-fs-base);
}
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info {
	padding: 8px 12px !important; margin: 0 0 var(--it-s4) !important;
	font-size: var(--it-fs-sm) !important; border-left-width: 3px !important;
	background: transparent !important; box-shadow: none !important;
}
html body.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info::before { display: none !important; }

/* --------------------------------------------------------------- headings */
html body.woocommerce-checkout form.checkout h3 {
	font-size: var(--it-fs-lg) !important; line-height: 1.3; font-weight: 700;
	margin: 0 0 var(--it-s3) !important; padding: 0 !important; border: 0 !important;
}

/* ----------------------------------------------------------------- fields */
html body.woocommerce-checkout form.checkout .form-row { margin: 0 0 var(--it-s4) !important; padding: 0 !important; }
html body.woocommerce-checkout form.checkout .form-row label { font-size: var(--it-fs-sm); font-weight: 600; margin-bottom: 4px; color: var(--it-text) !important; }
html body.woocommerce-checkout form.checkout .form-row .input-text {
	min-height: 46px; font-size: 1rem !important; /* 16px: no zoom-on-focus in iOS Safari */
}
html body.woocommerce-checkout form.checkout .form-row .description {
	display: block !important; position: static !important; /* WooCommerce shows it as a focus tooltip */
	margin: 6px 0 0 !important; padding: 0 !important; background: none !important; border: 0 !important;
	color: var(--it-text-muted) !important; font-size: var(--it-fs-sm) !important; line-height: 1.45;
}
html body.woocommerce-checkout form.checkout .form-row .description::after,
html body.woocommerce-checkout form.checkout .form-row .description::before { display: none !important; }

/* The two fields the order depends on: the account we trade to and where we write. */
html body.woocommerce-checkout form.checkout .it-field-key label { font-size: var(--it-fs-base); font-weight: 700; }
html body.woocommerce-checkout form.checkout .it-field-key .input-text {
	min-height: 50px; border-color: var(--it-accent-line) !important; border-width: 1.5px !important;
}
html body.woocommerce-checkout form.checkout .it-field-key .input-text:focus {
	border-color: var(--it-accent) !important; box-shadow: 0 0 0 3px var(--it-accent-soft) !important; outline: none;
}
/* Non-blocking format hint under the tag (assets/js/checkout.js). */
.it-btag-hint { display: block; margin-top: 6px; font-size: var(--it-fs-sm); color: var(--it-warn); }
.it-btag-hint:empty { display: none; }

/* WooCommerce's own invalid state, made visible on the dark and light skins alike. */
html body.woocommerce-checkout form.checkout .woocommerce-invalid .input-text,
html body.woocommerce-checkout form.checkout .woocommerce-invalid select { border-color: var(--it-danger) !important; }
html body.woocommerce-checkout form.checkout .woocommerce-invalid label { color: var(--it-danger) !important; }
html body.woocommerce-checkout form.checkout .checkout-inline-error-message {
	margin: 6px 0 0 !important; color: var(--it-danger) !important; font-size: var(--it-fs-sm) !important; font-weight: 600;
}

/* Create an account: optional, so secondary. */
html body.woocommerce-checkout .woocommerce-account-fields .form-row { margin-bottom: var(--it-s3) !important; }
html body.woocommerce-checkout .woocommerce-account-fields label { font-weight: 400 !important; color: var(--it-text-muted) !important; }

/* Order note: folded behind a button once the script has run; without it, unchanged. */
html body.woocommerce-checkout form.checkout.it-notes-js .woocommerce-additional-fields > h3 { display: none !important; }
.it-notes-toggle {
	display: inline-flex; align-items: center; gap: 6px; margin: 0 0 var(--it-s3);
	padding: 6px 0; background: none !important; border: 0 !important; box-shadow: none !important;
	color: var(--it-text-muted) !important; font-size: var(--it-fs-sm) !important; font-weight: 600;
	text-decoration: underline; text-underline-offset: 3px; cursor: pointer; min-height: 32px;
}
.it-notes-toggle:hover { color: var(--it-text) !important; }
.it-notes-toggle::before { content: "+"; font-weight: 700; text-decoration: none; display: inline-block; width: 1em; }
.it-notes-toggle[aria-expanded="true"]::before { content: "\2212"; }

/* ---------------------------------------------------------- order summary */
html body.woocommerce-checkout #order_review {
	padding: var(--it-s4) !important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table { margin: 0 0 var(--it-s4) !important; border: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table thead {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table th { padding: 8px 0 !important; border: 0 !important; vertical-align: top; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart_item td { padding-top: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total { text-align: right; white-space: nowrap; font-weight: 650; color: var(--it-text) !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name {
	display: grid !important; grid-template-columns: 44px 1fr; column-gap: 12px; align-items: start;
	font-size: var(--it-fs-base) !important; line-height: 1.4;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-item-thumbnail { grid-column: 1; grid-row: 1 / span 2; width: 44px !important; margin: 0 !important; float: none !important; order: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .cg-checkout-table-product-name { grid-column: 2; grid-row: 1; width: auto !important; float: none !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-item-thumbnail img { width: 44px !important; height: 44px !important; border-radius: var(--it-r-sm); }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .cg-checkout-table-product-name { font-weight: 650; color: var(--it-text) !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .cg-checkout-table-product-name br { display: none; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .it-line-mode { margin: 0 4px 0 6px; vertical-align: 1px; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity { font-weight: 400; color: var(--it-text-muted) !important; }
/* The specification on one wrapped line: "Ladder Mode: Ladder · Roll Band: 130-140 Defense". */
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation {
	grid-column: 2; grid-row: 2; display: flex !important; flex-wrap: wrap; gap: 2px 6px; margin: 4px 0 0 !important; padding: 0 !important;
	font-size: var(--it-fs-sm) !important; color: var(--it-text-muted) !important; border: 0 !important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dt,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd {
	float: none !important; display: inline !important; margin: 0 !important; padding: 0 !important;
	font-size: inherit !important; font-weight: 400 !important; color: inherit !important; clear: none !important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd { color: var(--it-text) !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd p { display: inline; margin: 0 !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table dl.variation dd:not(:last-child)::after { content: "\00b7"; margin-left: 6px; color: var(--it-text-faint); }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr { border-top: 1px solid var(--it-line) !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th { text-align: left; font-weight: 400; text-transform: none !important; letter-spacing: 0 !important; font-size: var(--it-fs-sm) !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { text-align: right; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
	color: var(--it-text) !important; font-size: var(--it-fs-md) !important; font-weight: 700 !important;
}

/* ---------------------------------------------------------------- payment */
html body.woocommerce-checkout .it-pay-h { margin-top: var(--it-s2) !important; }
html body.woocommerce-checkout .it-nofees { margin: 0 0 var(--it-s3); }
html body.woocommerce-checkout #payment { background: transparent !important; border: 0 !important; padding: 0 !important; }
html body.woocommerce-checkout #payment ul.payment_methods {
	display: grid; gap: 8px; margin: 0 0 var(--it-s4) !important; padding: 0 !important;
	background: transparent !important; border: 0 !important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
	margin: 0 !important; padding: 0 !important; border: 1.5px solid var(--it-line-strong) !important;
	border-radius: var(--it-r); background: var(--it-surface) !important; overflow: hidden;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(> input:checked) {
	border-color: var(--it-accent) !important; box-shadow: 0 0 0 3px var(--it-accent-soft);
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input.input-radio {
	position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
	display: flex !important; align-items: center; gap: 12px; min-height: 56px; margin: 0 !important;
	padding: 10px 14px 10px 46px !important; position: relative; cursor: pointer;
	font-size: var(--it-fs-md) !important; font-weight: 650; color: var(--it-text) !important;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label::before {
	content: ""; position: absolute; left: 14px; top: 50%; width: 20px; height: 20px; margin-top: -10px;
	border-radius: 50%; border: 2px solid var(--it-line-strong); background: var(--it-surface-3);
	box-sizing: border-box;
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input:checked + label::before {
	border: 6px solid var(--it-accent); background: var(--it-text-on-accent);
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input:focus-visible + label {
	outline: 2px solid var(--it-accent); outline-offset: -4px; border-radius: var(--it-r);
}
html body.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label img {
	max-height: 28px !important; width: auto; margin: 0 0 0 auto !important; float: none !important;
}
html body.woocommerce-checkout #payment div.payment_box {
	margin: 0 !important; padding: 0 14px 12px 46px !important; background: transparent !important;
	font-size: var(--it-fs-sm) !important; color: var(--it-text-muted) !important;
}
html body.woocommerce-checkout #payment div.payment_box p { margin: 0 !important; }
html body.woocommerce-checkout #payment ul.payment_methods li > .woocommerce-info { margin: 0 !important; }

/* ------------------------------------------- before the Terms: what and the warning */
html body.woocommerce-checkout #payment .place-order { padding: 0 !important; margin: 0 !important; background: transparent !important; }
html body.woocommerce-checkout .it-checkout-service { margin: 0 0 var(--it-s2) !important; font-size: var(--it-fs-sm); }
html body.woocommerce-checkout .itempls-mode-warning {
	opacity: 1 !important; margin: 0 0 var(--it-s4) !important; padding: 10px 12px;
	border-left: 3px solid var(--it-warn); background: var(--it-surface-2);
	border-radius: 0 var(--it-r-sm) var(--it-r-sm) 0;
}
html body.woocommerce-checkout .itempls-mode-warning small { font-size: var(--it-fs-sm) !important; line-height: 1.5; color: var(--it-text) !important; }

/* Terms: the box and both links stay; the box is bigger and easier to hit. */
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row { margin: 0 0 var(--it-s4) !important; }
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox {
	display: flex !important; align-items: flex-start; gap: 10px; min-height: 44px; padding: 10px 12px;
	border: 1px solid var(--it-line); border-radius: var(--it-r); cursor: pointer;
	font-size: var(--it-fs-base) !important; font-weight: 400 !important; line-height: 1.45; color: var(--it-text) !important;
}
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input#terms {
	position: static !important; width: 20px; height: 20px; margin: 1px 0 0 !important; flex: none; accent-color: var(--it-accent);
}
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-invalid label.checkbox,
html body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row.woocommerce-invalid label.checkbox { border-color: var(--it-danger); }

/* ------------------------------------------------------------ Place order */
html body.woocommerce-checkout #place_order {
	display: flex !important; align-items: center; justify-content: center; gap: 8px;
	width: 100% !important; min-height: 56px; margin: 0 !important; float: none !important;
	background: var(--it-accent) !important; color: var(--it-text-on-accent) !important; border: 0 !important;
	border-radius: var(--it-r) !important; font-size: var(--it-fs-md) !important; font-weight: 750 !important;
	letter-spacing: .01em; box-shadow: none !important;
}
html body.woocommerce-checkout #place_order:hover { background: var(--it-accent-hover) !important; }
html body.woocommerce-checkout #place_order:active { background: var(--it-accent-press) !important; }
html body.woocommerce-checkout #place_order:focus-visible { outline: 3px solid var(--it-text); outline-offset: 2px; }

/* Errors from WooCommerce, at the top of the form. Each one links to its field, and the parent
 * theme colours links in an error white (made for a red box): on the ITEMPLS pink box every field
 * error was white on pink. Found by this change's QA; it is the same on PROD today. */
html body.woocommerce-checkout .woocommerce-NoticeGroup-checkout .woocommerce-error { font-size: var(--it-fs-base) !important; }
html body.woocommerce-checkout .woocommerce-error a,
html body.woocommerce-checkout .woocommerce-error a strong,
html body.woocommerce-checkout .woocommerce-error strong { color: var(--it-text) !important; }
html body.woocommerce-checkout .woocommerce-error a { text-decoration: underline; text-underline-offset: 3px; }

/* --------------------------------------------- edit the order (inc/checkout-edit.php) */
/* Without JavaScript the summary says "× N" and links to the cart; with it, the controls replace it. */
html body.woocommerce-checkout .it-qty-edit { display: none; }
html body.woocommerce-checkout form.it-cx-js .it-qty-edit {
	grid-column: 2; grid-row: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; margin-top: 6px;
}
/* Shoptimizer lays this table out "fixed", 50/50 with the price column, which left the name (and
 * now the controls) 224px on desktop; the price only needs its own width. */
html body.woocommerce-checkout .woocommerce-checkout-review-order-table { table-layout: auto !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total { width: 1% !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total,
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { white-space: nowrap; }
html body.woocommerce-checkout form.it-cx-js .it-qty-static { display: none; }
.it-qty { display: inline-flex; align-items: stretch; border: 1px solid var(--it-line-strong); border-radius: var(--it-r-sm); overflow: hidden; background: var(--it-surface); }
html body.woocommerce-checkout .it-qty__b {
	all: unset; box-sizing: border-box; width: 44px; height: 44px; display: grid; place-items: center; cursor: pointer;
	font-size: 20px; line-height: 1; color: var(--it-text); background: var(--it-surface-2);
}
html body.woocommerce-checkout .it-qty__b:hover:not([disabled]) { background: var(--it-surface-3); }
html body.woocommerce-checkout .it-qty__b[disabled] { color: var(--it-text-faint); cursor: default; }
html body.woocommerce-checkout .it-qty__b:focus-visible,
html body.woocommerce-checkout .it-qty__rm:focus-visible { outline: 3px solid var(--it-text); outline-offset: -3px; }
html body.woocommerce-checkout input.it-qty__i {
	width: 3.2em !important; min-width: 0; height: 44px !important; margin: 0 !important; padding: 0 !important; border: 0 !important;
	border-left: 1px solid var(--it-line) !important; border-right: 1px solid var(--it-line) !important; border-radius: 0 !important;
	text-align: center; font-size: 16px !important; font-weight: 650; color: var(--it-text) !important; background: var(--it-surface) !important;
	box-shadow: none !important; -moz-appearance: textfield; appearance: textfield;
}
html body.woocommerce-checkout input.it-qty__i::-webkit-inner-spin-button,
html body.woocommerce-checkout input.it-qty__i::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
html body.woocommerce-checkout input.it-qty__i:focus-visible { outline: 3px solid var(--it-text); outline-offset: -3px; }
html body.woocommerce-checkout .it-qty__rm {
	all: unset; box-sizing: border-box; min-height: 44px; padding: 0 2px; cursor: pointer;
	font-size: var(--it-fs-sm); color: var(--it-text-muted); text-decoration: underline; text-underline-offset: 3px;
}
html body.woocommerce-checkout .it-qty__rm:hover { color: var(--it-danger); }
html body.woocommerce-checkout tr.it-cx-removing { opacity: .45; }
html body.woocommerce-checkout form.it-cx-busy .it-qty-edit { pointer-events: none; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.it-cx-min td {
	text-align: left !important; font-size: var(--it-fs-sm) !important; font-weight: 650; color: var(--it-danger) !important;
	border-top: 0 !important; padding-top: 0 !important; white-space: normal !important; width: 100% !important;
}
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.it-cx-meta { display: none !important; }
html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.it-cx-cartlink td {
	padding: 0 0 8px !important; text-align: right; font-size: var(--it-fs-sm) !important;
}
html body.woocommerce-checkout .it-cx-cartlink a { color: var(--it-text-muted); text-decoration: underline; text-underline-offset: 3px; }
.it-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* One line that jumps to the summary, where the columns stack (Shoptimizer: 992px and below). */
.it-cx-anchor { display: none; }
@media (max-width: 992px) {
	html body.woocommerce-checkout .it-cx-anchor:not([hidden]) { display: block; margin: 0 0 var(--it-s4); }
	html body.woocommerce-checkout .it-cx-anchor a {
		display: flex; flex-wrap: wrap; align-items: center; gap: 2px 8px; min-height: 44px; box-sizing: border-box;
		padding: 10px 14px; border: 1px solid var(--it-line); border-radius: var(--it-r); background: var(--it-surface);
		color: var(--it-text); text-decoration: none; font-size: var(--it-fs-sm);
	}
	html body.woocommerce-checkout .it-cx-anchor__t { font-weight: 700; }
	html body.woocommerce-checkout .it-cx-anchor__e { margin-left: auto; color: var(--it-text); text-decoration: underline; text-underline-offset: 3px; font-weight: 650; }
	html body.woocommerce-checkout .it-cx-anchor a:focus-visible { outline: 3px solid var(--it-text); outline-offset: 2px; }
	html body.woocommerce-checkout #order_review_heading { scroll-margin-top: 16px; }
}

/* ------------------------------------------------------------------ phone */
@media (max-width: 767px) {
	html body.woocommerce-checkout .woocommerce { padding-top: 0; }
	html body.woocommerce-checkout .itempls-delivery-notice--short { font-size: var(--it-fs-sm); margin-bottom: var(--it-s3); }
	.it-costeps { margin-bottom: var(--it-s2); }
	.it-costeps__s + .it-costeps__s::before { width: 10px; }
	/* First and last name share a row on phones too: two short fields, one line. */
	html body.woocommerce-checkout form.checkout .form-row-first,
	html body.woocommerce-checkout form.checkout .form-row-last { width: calc(50% - 6px) !important; float: left !important; clear: none !important; }
	html body.woocommerce-checkout form.checkout .form-row-last { margin-left: 12px !important; }
	html body.woocommerce-checkout form.checkout .form-row-first { clear: left !important; }
	html body.woocommerce-checkout #customer_details .col-2 { margin-top: 0 !important; }
	html body.woocommerce-checkout #order_review_heading { margin-top: var(--it-s4) !important; }
	html body.woocommerce-checkout #order_review { padding: var(--it-s3) !important; border-radius: var(--it-r) !important; }
	.it-costeps { flex-wrap: nowrap; gap: 6px; font-size: var(--it-fs-xs); white-space: nowrap; }
	/* Shoptimizer stacks the summary table into blocks on phones; keep each row one line. */
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart_item { display: flex !important; gap: 12px; align-items: flex-start; padding: 0 !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart_item td.product-name { flex: 1 1 auto; min-width: 0; width: auto !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.cart_item td.product-total { flex: none; display: block !important; width: auto !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table,
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody,
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot { display: block !important; width: 100% !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr { width: 100%; display: flex !important; justify-content: space-between; align-items: baseline; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td { display: block !important; width: auto !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table td::before { display: none !important; }
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.it-cx-cartlink,
	html body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.it-cx-cartlink td { display: block !important; width: auto !important; }
}
