/**
 * GC Revamp Core: native WooCommerce purchase flow.
 *
 * Presentation only. WooCommerce, WoodMart, and installed gateways retain
 * ownership of cart, shipping, payment, order, and customer behaviour.
 */

/* 1. Tokens and shared foundation */
body.gc-purchase-flow-active {
	--gc-purchase-ink: #18161b;
	--gc-purchase-soft-black: #232128;
	--gc-purchase-leaf: #9cc43c;
	--gc-purchase-ivory: #f8f4ec;
	--gc-purchase-porcelain: #fffdf8;
	--gc-purchase-stone: #e8ded3;
	--gc-purchase-mist: #f1eae1;
	--gc-purchase-muted: #7b746d;
	--gc-purchase-error: #a8443a;
	--gc-purchase-body-font: "Hanken Grotesk", Arial, sans-serif;
	--gc-purchase-heading-font: "EB Garamond", Georgia, serif;
	--gc-purchase-content-width: 1180px;
	--gc-purchase-reading-width: 760px;
	--gc-purchase-panel-radius: 8px;
	--gc-purchase-control-radius: 6px;
	--gc-purchase-toolbar-height: 70px;
	--gc-purchase-safe-bottom: env(safe-area-inset-bottom, 0px);
	color: var(--gc-purchase-soft-black);
	background: var(--gc-purchase-porcelain);
	font-family: var(--gc-purchase-body-font);
}

body.gc-purchase-flow-active .main-page-wrapper,
body.gc-purchase-flow-active .main-page-wrapper::before,
body.gc-purchase-flow-active .main-page-wrapper::after,
body.gc-purchase-flow-active .main-page-wrapper *,
body.gc-purchase-flow-active .main-page-wrapper *::before,
body.gc-purchase-flow-active .main-page-wrapper *::after,
body.gc-purchase-flow-active .page-title,
body.gc-purchase-flow-active .page-title::before,
body.gc-purchase-flow-active .page-title::after,
body.gc-purchase-flow-active .page-title *,
body.gc-purchase-flow-active .page-title *::before,
body.gc-purchase-flow-active .page-title *::after {
	box-sizing: border-box;
}

body.gc-purchase-flow-active .main-page-wrapper {
	min-width: 0;
	padding-bottom: 44px;
	color: var(--gc-purchase-soft-black);
	background: var(--gc-purchase-porcelain);
}

body.gc-purchase-flow-active .main-page-wrapper > .container,
body.gc-purchase-flow-active .main-page-wrapper .site-content {
	width: min(100%, var(--gc-purchase-content-width));
	max-width: var(--gc-purchase-content-width);
	min-width: 0;
	margin-right: auto;
	margin-left: auto;
}

body.gc-purchase-flow-active .main-page-wrapper .site-content {
	padding-right: clamp(18px, 3vw, 30px);
	padding-left: clamp(18px, 3vw, 30px);
}

body.gc-purchase-flow-active .woocommerce,
body.gc-purchase-flow-active .wp-block-woocommerce-cart,
body.gc-purchase-flow-active .wp-block-woocommerce-checkout {
	min-width: 0;
	color: var(--gc-purchase-soft-black);
	font-family: var(--gc-purchase-body-font);
}

body.gc-purchase-flow-active .woocommerce h1,
body.gc-purchase-flow-active .woocommerce h2,
body.gc-purchase-flow-active .woocommerce h3,
body.gc-purchase-flow-active .woocommerce h4,
body.gc-purchase-flow-active .wp-block-woocommerce-cart h1,
body.gc-purchase-flow-active .wp-block-woocommerce-cart h2,
body.gc-purchase-flow-active .wp-block-woocommerce-cart h3,
body.gc-purchase-flow-active .wp-block-woocommerce-checkout h1,
body.gc-purchase-flow-active .wp-block-woocommerce-checkout h2,
body.gc-purchase-flow-active .wp-block-woocommerce-checkout h3 {
	color: var(--gc-purchase-ink);
	text-wrap: balance;
}

body.gc-purchase-flow-active .woocommerce a,
body.gc-purchase-flow-active .wp-block-woocommerce-cart a,
body.gc-purchase-flow-active .wp-block-woocommerce-checkout a {
	text-underline-offset: 3px;
}

/* 2. Purchase-flow page title without legacy image layers */
body.gc-purchase-flow-active .page-title,
body.gc-purchase-flow-active .page-title-default,
body.gc-purchase-flow-active .wd-page-title,
body.gc-purchase-flow-active .title-design-centered,
body.gc-purchase-flow-active .title-design-disable {
	min-height: 0 !important;
	margin: 0 0 clamp(28px, 4vw, 48px);
	padding: clamp(22px, 3vw, 34px) 0 !important;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-ink);
	background: var(--gc-purchase-ivory) !important;
	background-image: none !important;
	box-shadow: none;
}

body.gc-purchase-flow-active .page-title::before,
body.gc-purchase-flow-active .page-title::after,
body.gc-purchase-flow-active .page-title-default::before,
body.gc-purchase-flow-active .page-title-default::after,
body.gc-purchase-flow-active .wd-page-title::before,
body.gc-purchase-flow-active .wd-page-title::after,
body.gc-purchase-flow-active .page-title .title-bg::before,
body.gc-purchase-flow-active .page-title .title-bg::after,
body.gc-purchase-flow-active .page-title .page-title-bg::before,
body.gc-purchase-flow-active .page-title .page-title-bg::after,
body.gc-purchase-flow-active .wd-page-title .title-bg::before,
body.gc-purchase-flow-active .wd-page-title .title-bg::after,
body.gc-purchase-flow-active .wd-page-title .page-title-bg::before,
body.gc-purchase-flow-active .wd-page-title .page-title-bg::after {
	content: none !important;
	display: none !important;
	background: none !important;
	opacity: 0 !important;
}

body.gc-purchase-flow-active .page-title .title-bg,
body.gc-purchase-flow-active .page-title .page-title-bg,
body.gc-purchase-flow-active .page-title .wd-page-title-bg,
body.gc-purchase-flow-active .wd-page-title .title-bg,
body.gc-purchase-flow-active .wd-page-title .page-title-bg,
body.gc-purchase-flow-active .wd-page-title .wd-page-title-bg,
body.gc-purchase-flow-active .page-title > [style*="background-image"],
body.gc-purchase-flow-active .page-title > [style*="background:"],
body.gc-purchase-flow-active .wd-page-title > [style*="background-image"],
body.gc-purchase-flow-active .wd-page-title > [style*="background:"] {
	background: none !important;
	background-image: none !important;
	box-shadow: none !important;
}

body.gc-purchase-flow-active .page-title .title-bg,
body.gc-purchase-flow-active .page-title .page-title-bg,
body.gc-purchase-flow-active .page-title .wd-page-title-bg,
body.gc-purchase-flow-active .wd-page-title .title-bg,
body.gc-purchase-flow-active .wd-page-title .page-title-bg,
body.gc-purchase-flow-active .wd-page-title .wd-page-title-bg {
	display: none !important;
	opacity: 0 !important;
	pointer-events: none;
}

body.gc-purchase-flow-active .page-title .container,
body.gc-purchase-flow-active .wd-page-title .container {
	width: min(100%, var(--gc-purchase-content-width));
	max-width: var(--gc-purchase-content-width);
	min-height: 0;
	margin: 0 auto;
	padding-right: clamp(18px, 3vw, 30px);
	padding-left: clamp(18px, 3vw, 30px);
}

body.gc-purchase-flow-active .page-title .entry-title,
body.gc-purchase-flow-active .page-title .title,
body.gc-purchase-flow-active .wd-page-title .entry-title,
body.gc-purchase-flow-active .wd-page-title .title {
	margin: 0;
	color: var(--gc-purchase-ink) !important;
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(32px, 4.5vw, 50px);
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.025em;
	text-shadow: none;
	text-transform: none;
}

body.gc-purchase-flow-active .page-title .breadcrumbs,
body.gc-purchase-flow-active .page-title .woocommerce-breadcrumb,
body.gc-purchase-flow-active .wd-page-title .breadcrumbs,
body.gc-purchase-flow-active .wd-page-title .woocommerce-breadcrumb {
	margin-top: 9px;
	color: var(--gc-purchase-muted);
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.04em;
	text-shadow: none;
}

body.gc-purchase-flow-active .wd-checkout-steps,
body.gc-purchase-flow-active .checkout-steps {
	min-height: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 7px 16px;
	margin: 10px 0 0;
	padding: 0;
	color: var(--gc-purchase-muted);
	font-family: var(--gc-purchase-body-font);
	font-size: 11px;
	font-weight: 650;
	line-height: 1.35;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

body.gc-purchase-flow-active .wd-checkout-steps .step-active,
body.gc-purchase-flow-active .checkout-steps .step-active,
body.gc-purchase-flow-active .wd-checkout-steps .active,
body.gc-purchase-flow-active .checkout-steps .active {
	color: var(--gc-purchase-ink);
}

/* 3. Native Cart block */
body.gc-cart-active .wp-block-woocommerce-cart,
body.gc-cart-active .wc-block-cart {
	width: 100%;
	max-width: var(--gc-purchase-content-width);
	margin: 0 auto;
}

body.gc-cart-active .wc-block-cart .wc-block-components-sidebar-layout,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-sidebar-layout {
	width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(310px, 0.78fr);
	align-items: start;
	gap: clamp(28px, 4vw, 52px);
	margin: 0;
}

body.gc-cart-active .wc-block-cart__main,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__main {
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0;
	padding: 0;
}

body.gc-cart-active .wc-block-cart__sidebar,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__sidebar {
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0;
	padding: clamp(21px, 3vw, 28px);
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	box-shadow: none;
}

body.gc-cart-active .wc-block-cart-items,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: transparent;
	table-layout: auto;
}

body.gc-cart-active .wc-block-cart-items th,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items th {
	padding: 0 11px 12px;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-muted);
	font-family: var(--gc-purchase-body-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: uppercase;
	letter-spacing: 0.075em;
}

body.gc-cart-active .wc-block-cart-items td,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items td {
	min-width: 0;
	padding: 21px 11px;
	border: 0;
	vertical-align: middle;
}

body.gc-cart-active .wc-block-cart-items tbody tr:not(:last-child),
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items tbody tr:not(:last-child) {
	border-bottom: 1px solid var(--gc-purchase-stone);
}

body.gc-cart-active .wc-block-cart-item__image,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image {
	width: 110px;
}

body.gc-cart-active .wc-block-cart-item__image a,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image a {
	width: 94px;
	height: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	overflow: hidden;
	isolation: isolate;
}

body.gc-cart-active .wc-block-cart-item__image img,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image img {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 8px;
	border: 0;
	border-radius: 0;
	object-fit: contain;
	object-position: center;
	background: transparent !important;
	mix-blend-mode: multiply !important;
}

body.gc-cart-active .wc-block-cart-item__product,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__product {
	min-width: 0;
	padding-right: 18px;
}

body.gc-cart-active .wc-block-components-product-name,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-product-name,
body.gc-cart-active .wc-block-cart-item__product > a {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-body-font);
	font-size: 15px;
	font-weight: 650;
	line-height: 1.42;
	letter-spacing: -0.01em;
	text-decoration: none;
	overflow-wrap: anywhere;
}

body.gc-cart-active .wc-block-components-product-name:hover,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-product-name:hover,
body.gc-cart-active .wc-block-cart-item__product > a:hover {
	color: var(--gc-purchase-muted);
}

body.gc-cart-active .wc-block-components-product-metadata,
body.gc-cart-active .wc-block-components-product-details,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-product-metadata,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-product-details {
	margin-top: 6px;
	color: var(--gc-purchase-muted);
	font-size: 12px;
	line-height: 1.45;
}

body.gc-cart-active .wc-block-components-product-price,
body.gc-cart-active .wc-block-cart-item__prices,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-product-price,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__prices {
	margin-top: 6px;
	color: var(--gc-purchase-ink);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.35;
}

body.gc-cart-active .wc-block-cart-item__total,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__total {
	min-width: 105px;
	color: var(--gc-purchase-ink);
	font-size: 14px;
	font-weight: 700;
	text-align: right;
	white-space: normal;
}

body.gc-cart-active .wc-block-components-quantity-selector,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector {
	width: max-content;
	max-width: 100%;
	min-height: 38px;
	display: inline-flex;
	align-items: stretch;
	margin: 11px 0 0;
	border: 1px solid var(--gc-purchase-stone) !important;
	border-radius: var(--gc-purchase-control-radius);
	background: var(--gc-purchase-porcelain);
	box-shadow: none !important;
	overflow: hidden;
}

body.gc-cart-active .wc-block-components-quantity-selector::before,
body.gc-cart-active .wc-block-components-quantity-selector::after,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector::before,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.gc-cart-active .wc-block-components-quantity-selector input,
body.gc-cart-active .wc-block-components-quantity-selector button,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector input,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector button {
	min-width: 38px;
	min-height: 38px;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-radius: 0;
	color: var(--gc-purchase-ink);
	background: transparent;
	font-family: var(--gc-purchase-body-font);
	box-shadow: none !important;
}

body.gc-cart-active .wc-block-components-quantity-selector input,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-quantity-selector input {
	border-right: 1px solid var(--gc-purchase-stone) !important;
	border-left: 1px solid var(--gc-purchase-stone) !important;
}

body.gc-cart-active .wc-block-cart-item__remove-link,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__remove-link {
	min-height: 30px;
	margin-top: 7px;
	padding: 3px 0;
	border: 0;
	border-radius: 2px;
	color: var(--gc-purchase-muted);
	background: transparent;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: underline;
	text-underline-offset: 3px;
	box-shadow: none;
}

body.gc-cart-active .wc-block-cart__totals-title,
body.gc-cart-active .wc-block-components-totals-wrapper h2,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__totals-title {
	display: block;
	margin: 0 0 16px;
	padding: 0 0 14px;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.02em;
	text-transform: none;
}

body.gc-cart-active .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block,
body.gc-cart-active .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-totals-block,
body.gc-cart-active .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
	border: 0 !important;
	outline: 0;
	background-image: none;
	box-shadow: none;
}

body.gc-cart-active .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block::before,
body.gc-cart-active .wc-block-cart__sidebar > .wp-block-woocommerce-cart-order-summary-block::after,
body.gc-cart-active .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-totals-block::before,
body.gc-cart-active .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-totals-block::after,
body.gc-cart-active .wc-block-cart__sidebar .wc-block-components-totals-wrapper::before,
body.gc-cart-active .wc-block-cart__sidebar .wc-block-components-totals-wrapper::after {
	content: none;
	display: none;
	border: 0;
	background: none;
	box-shadow: none;
}

body.gc-cart-active .wc-block-components-totals-wrapper,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-wrapper {
	margin: 0;
	padding: 8px 0;
}

body.gc-cart-active .wc-block-components-totals-item,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-item {
	gap: 16px;
	padding: 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.45;
}

body.gc-cart-active .wc-block-components-totals-item__label,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-item__label {
	min-width: 0;
	font-weight: 600;
}

body.gc-cart-active .wc-block-components-totals-item__value,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-item__value {
	min-width: 0;
	color: var(--gc-purchase-ink);
	font-weight: 700;
	text-align: right;
	overflow-wrap: anywhere;
}

body.gc-cart-active .wc-block-components-totals-footer-item,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-footer-item {
	align-items: baseline;
	margin-top: 8px;
	padding-top: 17px;
	border-top: 1px solid var(--gc-purchase-ink);
}

body.gc-cart-active .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 21px;
	font-weight: 500;
}

body.gc-cart-active .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 24px;
	font-weight: 600;
	letter-spacing: -0.02em;
}

body.gc-cart-active .wc-block-cart__submit,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__submit {
	margin: 20px 0 0;
}

body.gc-cart-active .wc-block-cart__submit-button,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__submit-button {
	width: 100%;
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 19px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-porcelain) !important;
	background: var(--gc-purchase-ink) !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

body.gc-cart-active .wc-block-cart__submit-button:hover,
body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__submit-button:hover {
	border-color: var(--gc-purchase-soft-black) !important;
	background: var(--gc-purchase-soft-black) !important;
}

/* 4. Classic Cart fallback */
body.gc-cart-active .woocommerce-cart-form,
body.gc-cart-active .cart-collaterals {
	min-width: 0;
	font-family: var(--gc-purchase-body-font);
}

body.gc-cart-active .woocommerce-cart-form {
	width: min(100%, 780px);
	float: left;
	padding-right: clamp(0px, 3vw, 38px);
}

body.gc-cart-active .woocommerce-cart-form table.shop_table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: transparent;
}

body.gc-cart-active .woocommerce-cart-form table.shop_table th {
	padding: 0 11px 12px;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-muted);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.075em;
}

body.gc-cart-active .woocommerce-cart-form table.shop_table td {
	padding: 20px 11px;
	border: 0;
	vertical-align: middle;
}

body.gc-cart-active .woocommerce-cart-form table.shop_table tr.cart_item:not(:last-child) {
	border-bottom: 1px solid var(--gc-purchase-stone);
}

body.gc-cart-active .woocommerce-cart-form .product-thumbnail a {
	width: 92px;
	height: 108px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	overflow: hidden;
	isolation: isolate;
}

body.gc-cart-active .woocommerce-cart-form .product-thumbnail img {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 8px;
	border: 0;
	border-radius: 0;
	object-fit: contain;
	background: transparent !important;
	mix-blend-mode: multiply !important;
}

body.gc-cart-active .woocommerce-cart-form .product-name a {
	color: var(--gc-purchase-ink);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.4;
	text-decoration: none;
	overflow-wrap: anywhere;
}

body.gc-cart-active .woocommerce-cart-form .product-remove a {
	min-width: 32px;
	min-height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: 50%;
	color: var(--gc-purchase-muted) !important;
	background: transparent !important;
	box-shadow: none;
}

body.gc-cart-active .woocommerce-cart-form .quantity {
	width: max-content;
	max-width: 100%;
	display: inline-flex;
	border: 1px solid var(--gc-purchase-stone) !important;
	border-radius: var(--gc-purchase-control-radius);
	background: var(--gc-purchase-porcelain);
	box-shadow: none !important;
	overflow: hidden;
}

body.gc-cart-active .woocommerce-cart-form .quantity::before,
body.gc-cart-active .woocommerce-cart-form .quantity::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
}

body.gc-cart-active .woocommerce-cart-form .quantity input,
body.gc-cart-active .woocommerce-cart-form .quantity button {
	min-width: 38px;
	min-height: 38px;
	margin: 0;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none !important;
}

body.gc-cart-active .woocommerce-cart-form .quantity input.qty {
	border-right: 1px solid var(--gc-purchase-stone) !important;
	border-left: 1px solid var(--gc-purchase-stone) !important;
}

body.gc-cart-active .cart-collaterals {
	width: min(100%, 370px);
	float: right;
}

body.gc-cart-active .cart-collaterals .cart_totals {
	width: 100%;
	margin: 0;
	padding: clamp(21px, 3vw, 28px);
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	box-shadow: none;
}

body.gc-cart-active .cart-collaterals .cart_totals h2 {
	margin: 0 0 14px;
	font-family: var(--gc-purchase-heading-font);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.1;
}

body.gc-cart-active .cart-collaterals .cart_totals table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
}

body.gc-cart-active .cart-collaterals .cart_totals th,
body.gc-cart-active .cart-collaterals .cart_totals td {
	padding: 9px 0;
	border: 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.45;
	vertical-align: top;
}

body.gc-cart-active .cart-collaterals .cart_totals td {
	color: var(--gc-purchase-ink);
	font-weight: 650;
	text-align: right;
}

body.gc-cart-active .cart-collaterals .order-total th,
body.gc-cart-active .cart-collaterals .order-total td {
	padding-top: 17px;
	border-top: 1px solid var(--gc-purchase-ink);
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 21px;
	font-weight: 600;
}

body.gc-cart-active .cart-collaterals .wc-proceed-to-checkout {
	margin: 19px 0 0;
	padding: 0;
}

body.gc-cart-active .cart-collaterals .checkout-button {
	width: 100%;
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 12px 19px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-porcelain) !important;
	background: var(--gc-purchase-ink) !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

/* 5. Empty Cart and native recommendations */
body.gc-cart-active .wp-block-woocommerce-empty-cart-block,
body.gc-cart-active .wc-block-cart__empty-cart,
body.gc-cart-active .cart-empty {
	width: min(100%, 680px);
	margin-right: auto;
	margin-left: auto;
	color: var(--gc-purchase-muted);
	font-family: var(--gc-purchase-body-font);
	font-size: 15px;
	line-height: 1.65;
	text-align: center;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block > .wp-block-heading:first-child,
body.gc-cart-active .wc-block-cart__empty-cart__title {
	margin: 0 0 13px;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(30px, 5vw, 43px);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block > .wp-block-heading:first-child::before,
body.gc-cart-active .wc-block-cart__empty-cart__title::before {
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 18px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: 50%;
	color: var(--gc-purchase-leaf);
	background: var(--gc-purchase-ivory);
	font-size: 26px;
}

body.gc-cart-active .return-to-shop {
	margin: 21px 0 0;
	text-align: center;
}

body.gc-cart-active .return-to-shop .button,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-components-button {
	min-height: 46px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 11px 21px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-ink) !important;
	background: transparent !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block > .wp-block-heading:not(:first-child),
body.gc-cart-active .cross-sells > h2,
body.gc-cart-active .woocommerce:has(.cart-empty) > h2 {
	margin: clamp(50px, 8vw, 76px) 0 22px;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(28px, 4vw, 37px);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: -0.02em;
	text-align: center;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__products,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .products,
body.gc-cart-active .cross-sells .products,
body.gc-cart-active .woocommerce:has(.cart-empty) .products {
	width: 100%;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(16px, 2.5vw, 28px);
	margin: 0;
	padding: 0;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product,
body.gc-cart-active .cross-sells .product,
body.gc-cart-active .woocommerce:has(.cart-empty) .product {
	width: 100% !important;
	min-width: 0;
	max-width: 280px;
	margin: 0 auto !important;
	padding: 0 0 12px;
	border: 0;
	background: transparent;
	text-align: left;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product-image-link,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product-element-top,
body.gc-cart-active .cross-sells .product-image-link,
body.gc-cart-active .cross-sells .product-element-top,
body.gc-cart-active .woocommerce:has(.cart-empty) .product-image-link,
body.gc-cart-active .woocommerce:has(.cart-empty) .product-element-top {
	aspect-ratio: 4 / 5;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 13px;
	border: 0;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	overflow: hidden;
	isolation: isolate;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product-image-link img,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product-element-top img,
body.gc-cart-active .cross-sells .product-image-link img,
body.gc-cart-active .cross-sells .product-element-top img,
body.gc-cart-active .woocommerce:has(.cart-empty) .product-image-link img,
body.gc-cart-active .woocommerce:has(.cart-empty) .product-element-top img {
	width: 100%;
	height: 100%;
	padding: 9%;
	border: 0;
	object-fit: contain;
	object-position: center;
	background: transparent !important;
	mix-blend-mode: multiply !important;
	transition: transform 260ms ease;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .hover-img,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wd-product-img-hover,
body.gc-cart-active .cross-sells .hover-img,
body.gc-cart-active .cross-sells .wd-product-img-hover,
body.gc-cart-active .woocommerce:has(.cart-empty) .hover-img,
body.gc-cart-active .woocommerce:has(.cart-empty) .wd-product-img-hover {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wd-entities-title,
body.gc-cart-active .cross-sells .wd-entities-title,
body.gc-cart-active .woocommerce:has(.cart-empty) .wd-entities-title {
	margin: 0 0 6px;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-body-font);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.4;
	text-align: left;
	overflow-wrap: anywhere;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .price,
body.gc-cart-active .cross-sells .price,
body.gc-cart-active .woocommerce:has(.cart-empty) .price {
	margin: 0 0 11px;
	color: var(--gc-purchase-ink);
	font-size: 13px;
	font-weight: 700;
}

body.gc-cart-active .wp-block-woocommerce-empty-cart-block .add_to_cart_button,
body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wp-block-button__link,
body.gc-cart-active .cross-sells .add_to_cart_button,
body.gc-cart-active .woocommerce:has(.cart-empty) .add_to_cart_button {
	min-height: 40px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 9px 15px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-ink) !important;
	background: transparent !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.055em;
	box-shadow: none;
}

@media (hover: hover) and (pointer: fine) {
	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover .wc-block-grid__product-image img,
	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product:hover .product-element-top > a > img:first-child,
	body.gc-cart-active .cross-sells .product:hover .product-element-top > a > img:first-child,
	body.gc-cart-active .woocommerce:has(.cart-empty) .product:hover .product-element-top > a > img:first-child {
		transform: scale(1.035);
	}
}

/* 6. Native Checkout block information architecture */
body.gc-checkout-active .wp-block-woocommerce-checkout,
body.gc-checkout-active .wc-block-checkout {
	width: 100%;
	max-width: var(--gc-purchase-content-width);
	margin: 0 auto;
	padding: 0;
}

body.gc-checkout-active .wc-block-checkout.wc-block-components-sidebar-layout,
body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout {
	width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(330px, 0.78fr);
	align-items: start;
	gap: clamp(32px, 5vw, 62px);
	margin: 0;
}

body.gc-checkout-active .wc-block-checkout__main,
body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-checkout__main {
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0;
	padding: 0 clamp(4px, 1.5vw, 18px) 0 0;
	border: 0;
	border-radius: 0;
	background: var(--gc-purchase-porcelain);
	box-shadow: none;
}

body.gc-checkout-active .wc-block-checkout__sidebar,
body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-checkout__sidebar {
	position: relative;
	top: auto;
	width: auto;
	max-width: none;
	min-width: 0;
	margin: 0;
	padding: clamp(21px, 3vw, 28px);
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	box-shadow: none;
	overflow: visible;
}

body.gc-checkout-active .wc-block-components-checkout-step {
	margin: 0;
	padding: 0 0 clamp(28px, 3.5vw, 34px);
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-checkout-step + .wc-block-components-checkout-step {
	padding-top: clamp(28px, 3.5vw, 34px);
}

body.gc-checkout-active .wc-block-components-checkout-step:last-child {
	padding-bottom: 0;
}

body.gc-checkout-active .wc-block-components-checkout-step__heading {
	margin: 0 0 16px;
}

body.gc-checkout-active .wc-block-components-checkout-step__title,
body.gc-checkout-active .wc-block-components-title {
	margin: 0;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(25px, 3vw, 30px);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

body.gc-checkout-active .wc-block-components-checkout-step__description {
	margin: 6px 0 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.55;
}

body.gc-checkout-active .wc-block-components-checkout-step__container,
body.gc-checkout-active .wc-block-checkout__add-note,
body.gc-checkout-active .wc-block-checkout__terms,
body.gc-checkout-active .wc-block-checkout__actions,
body.gc-checkout-active .wc-block-checkout__actions_row {
	border: 0;
	outline: 0;
	background: transparent;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-checkout-step__container::before,
body.gc-checkout-active .wc-block-components-checkout-step__container::after,
body.gc-checkout-active .wc-block-checkout__add-note::before,
body.gc-checkout-active .wc-block-checkout__add-note::after,
body.gc-checkout-active .wc-block-checkout__terms::before,
body.gc-checkout-active .wc-block-checkout__terms::after,
body.gc-checkout-active .wc-block-checkout__actions::before,
body.gc-checkout-active .wc-block-checkout__actions::after,
body.gc-checkout-active .wc-block-checkout__actions_row::before,
body.gc-checkout-active .wc-block-checkout__actions_row::after {
	content: none;
	display: none;
	border: 0;
	background: none;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-address-form,
body.gc-checkout-active .wc-block-components-address-address-wrapper,
body.gc-checkout-active .wc-block-components-text-input,
body.gc-checkout-active .wc-block-components-combobox {
	min-width: 0;
}

body.gc-checkout-active .wc-block-components-text-input input,
body.gc-checkout-active .wc-block-components-text-input textarea,
body.gc-checkout-active .wc-block-components-combobox .components-combobox-control__input,
body.gc-checkout-active .wc-block-components-combobox input,
body.gc-checkout-active .wc-block-components-address-form select {
	width: 100%;
	min-height: 56px;
	margin: 0;
	padding: 18px 14px 8px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-ink);
	background: var(--gc-purchase-porcelain);
	font-family: var(--gc-purchase-body-font);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-text-input textarea {
	min-height: 112px;
	padding-top: 22px;
	resize: vertical;
}

body.gc-checkout-active .wc-block-components-text-input label,
body.gc-checkout-active .wc-block-components-combobox label {
	color: var(--gc-purchase-muted);
	font-family: var(--gc-purchase-body-font);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
}

body.gc-checkout-active .wc-block-components-text-input input::placeholder,
body.gc-checkout-active .wc-block-components-text-input textarea::placeholder,
body.gc-checkout-active .wc-block-components-combobox input::placeholder {
	color: #8e8780;
	opacity: 1;
}

body.gc-checkout-active .wc-block-components-text-input input:focus,
body.gc-checkout-active .wc-block-components-text-input textarea:focus,
body.gc-checkout-active .wc-block-components-combobox input:focus,
body.gc-checkout-active .wc-block-components-address-form select:focus {
	border-color: var(--gc-purchase-leaf);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(156, 196, 60, 0.18);
}

body.gc-checkout-active .wc-block-components-checkbox,
body.gc-checkout-active .wc-block-components-radio-control {
	color: var(--gc-purchase-soft-black);
	font-family: var(--gc-purchase-body-font);
	font-size: 13px;
	line-height: 1.5;
}

body.gc-checkout-active .wc-block-components-checkbox input[type="checkbox"] {
	accent-color: var(--gc-purchase-leaf);
}

body.gc-checkout-active .wc-block-components-checkbox label {
	color: var(--gc-purchase-soft-black);
}

/* 7. Checkout order summary */
body.gc-checkout-active .wc-block-components-order-summary {
	min-width: 0;
	color: var(--gc-purchase-soft-black);
}

body.gc-checkout-active .wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-order-summary-block,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary__content,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel__content,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-wrapper {
	border: 0 !important;
	outline: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-item {
	border: 0;
	outline: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-order-summary-block::before,
body.gc-checkout-active .wc-block-checkout__sidebar > .wp-block-woocommerce-checkout-order-summary-block::after,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary::before,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary::after,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary__content::before,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-order-summary__content::after,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel::before,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel::after,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel__content::before,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-panel__content::after,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-wrapper::before,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-wrapper::after {
	content: none;
	display: none;
	border: 0;
	background: none;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-order-summary__button-text,
body.gc-checkout-active .wc-block-components-order-summary__title-text {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 26px;
	font-weight: 500;
	line-height: 1.1;
}

body.gc-checkout-active .wc-block-components-order-summary-item {
	min-width: 0;
	display: grid;
	grid-template-columns: 66px minmax(0, 1fr) auto;
	gap: 12px;
	padding: 16px 0;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
}

body.gc-checkout-active .wc-block-components-order-summary-item:last-child {
	border-bottom: 0;
}

body.gc-checkout-active .wc-block-components-order-summary-item__image {
	width: 66px;
	height: 78px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	border: 0;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	overflow: hidden;
	isolation: isolate;
}

body.gc-checkout-active .wc-block-components-order-summary-item__image img {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 6px;
	border: 0;
	border-radius: 0;
	object-fit: contain;
	object-position: center;
	background: transparent !important;
	mix-blend-mode: multiply !important;
}

body.gc-checkout-active .wc-block-components-order-summary-item__description {
	min-width: 0;
	padding: 0;
}

body.gc-checkout-active .wc-block-components-order-summary-item__description .wc-block-components-product-name,
body.gc-checkout-active .wc-block-components-order-summary-item__description a {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-body-font);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.4;
	text-decoration: none;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .wc-block-components-order-summary-item__individual-price,
body.gc-checkout-active .wc-block-components-order-summary-item__total-price,
body.gc-checkout-active .wc-block-components-order-summary-item__quantity {
	color: var(--gc-purchase-muted);
	font-size: 12px;
	line-height: 1.4;
}

body.gc-checkout-active .wc-block-components-order-summary-item__total-price {
	min-width: 0;
	color: var(--gc-purchase-ink);
	font-weight: 700;
	text-align: right;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector {
	width: max-content;
	max-width: 100%;
	min-height: 34px;
	display: inline-flex;
	margin: 8px 0 0;
	border: 1px solid var(--gc-purchase-stone) !important;
	border-radius: var(--gc-purchase-control-radius);
	background: var(--gc-purchase-porcelain);
	box-shadow: none !important;
	overflow: hidden;
}

body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector::before,
body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector::after {
	content: none !important;
	display: none !important;
	border: 0 !important;
}

body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector input,
body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector button {
	min-width: 34px;
	min-height: 34px;
	margin: 0;
	border: 0 !important;
	border-radius: 0;
	color: var(--gc-purchase-ink);
	background: transparent;
	font-family: var(--gc-purchase-body-font);
	box-shadow: none !important;
}

body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-quantity-selector input {
	border-right: 1px solid var(--gc-purchase-stone) !important;
	border-left: 1px solid var(--gc-purchase-stone) !important;
}

body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-product-details__remove-item,
body.gc-checkout-active .wc-block-components-order-summary-item .wc-block-components-product-details__remove-item-button {
	min-height: 30px;
	margin-top: 6px;
	padding: 3px 0;
	border: 0;
	border-radius: 2px;
	color: var(--gc-purchase-muted);
	background: transparent;
	font-family: var(--gc-purchase-body-font);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: underline;
	text-underline-offset: 3px;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-wrapper {
	margin: 0;
	padding: 7px 0;
	border: 0;
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-item {
	gap: 15px;
	padding: 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.45;
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-item__value {
	min-width: 0;
	color: var(--gc-purchase-ink);
	font-weight: 700;
	text-align: right;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-footer-item {
	align-items: baseline;
	margin-top: 8px;
	padding: 17px 8px 0;
	border-top: 1px solid var(--gc-purchase-ink);
}

body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.gc-checkout-active .wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 21px;
	font-weight: 600;
}

body.gc-checkout-active .wc-block-components-checkout-place-order-button {
	width: 100%;
	min-height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 17px;
	padding: 13px 21px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-porcelain) !important;
	background: var(--gc-purchase-ink) !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-checkout-place-order-button:hover {
	border-color: var(--gc-purchase-soft-black) !important;
	background: var(--gc-purchase-soft-black) !important;
}

/* 8. Shipping and payment choices */
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option {
	padding-block: 14px;
	padding-inline-end: 15px;
	padding-inline-start: 52px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-control-radius);
	outline: 0;
	background: var(--gc-purchase-porcelain);
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option::before,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option::after,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option::before,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option::after {
	content: none;
	display: none;
	border: 0;
	background: none;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option:focus-within,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option:focus-within {
	outline: 0;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option--checked,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option--checked,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option:has(input:checked),
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option:has(input:checked) {
	border-color: var(--gc-purchase-leaf);
	background: rgba(248, 244, 236, 0.72);
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option {
	padding: 0;
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option,
body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option:has(input:checked) {
	padding-block: 14px;
	padding-inline-end: 15px;
	padding-inline-start: 52px;
	border: 0;
	border-radius: 0;
	outline: 0;
	background: transparent;
	box-shadow: none;
}

body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control-accordion-content {
	padding: 0 15px 14px 52px;
}

body.gc-checkout-active .wc-block-components-radio-control__label,
body.gc-checkout-active .wc-block-components-radio-control-accordion-option label,
body.gc-checkout-active .wc-block-components-payment-method-label {
	min-width: 0;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-body-font);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .wc-block-components-radio-control-accordion-content {
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.6;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .wc-block-checkout__payment-method img,
body.gc-checkout-active .wc-block-components-payment-methods img,
body.gc-checkout-active .payment_methods img {
	flex: 0 1 auto;
	width: auto;
	max-width: min(120px, 40%);
	height: auto;
	max-height: 32px;
	margin: 0 0 0 8px;
	object-fit: contain;
	vertical-align: middle;
}

/* 9. Classic Checkout fallback */
body.gc-checkout-active form.checkout,
body.gc-checkout-active form.woocommerce-checkout {
	width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(330px, 0.78fr);
	align-items: start;
	column-gap: clamp(32px, 5vw, 62px);
	margin: 0;
}

body.gc-checkout-active form.checkout > .woocommerce-NoticeGroup,
body.gc-checkout-active form.woocommerce-checkout > .woocommerce-NoticeGroup {
	grid-column: 1 / -1;
}

body.gc-checkout-active form.checkout > .col2-set,
body.gc-checkout-active form.woocommerce-checkout > .col2-set,
body.gc-checkout-active form.checkout > #customer_details,
body.gc-checkout-active form.woocommerce-checkout > #customer_details {
	grid-column: 1;
	grid-row: 1 / span 3;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0 clamp(4px, 1.5vw, 18px) 0 0;
	border: 0;
	border-radius: 0;
	background: var(--gc-purchase-porcelain);
	box-shadow: none;
}

body.gc-checkout-active form.checkout > #order_review_heading,
body.gc-checkout-active form.woocommerce-checkout > #order_review_heading {
	grid-column: 2;
	margin: 0;
	padding: 22px 24px 0;
	border: 1px solid var(--gc-purchase-stone);
	border-bottom: 0;
	border-radius: var(--gc-purchase-panel-radius) var(--gc-purchase-panel-radius) 0 0;
	background: var(--gc-purchase-ivory);
	font-family: var(--gc-purchase-heading-font);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.1;
}

body.gc-checkout-active form.checkout > #order_review,
body.gc-checkout-active form.woocommerce-checkout > #order_review,
body.gc-checkout-active .woocommerce-checkout-review-order {
	grid-column: 2;
	min-width: 0;
	margin: 0;
	padding: 17px 24px 24px;
	border: 1px solid var(--gc-purchase-stone);
	border-top: 0;
	border-radius: 0 0 var(--gc-purchase-panel-radius) var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	box-shadow: none;
	overflow: visible;
}

body.gc-checkout-active .woocommerce-billing-fields h3,
body.gc-checkout-active .woocommerce-shipping-fields h3,
body.gc-checkout-active .woocommerce-additional-fields h3 {
	margin: 0 0 18px;
	font-family: var(--gc-purchase-heading-font);
	font-size: 28px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

body.gc-checkout-active .woocommerce-shipping-fields,
body.gc-checkout-active .woocommerce-additional-fields {
	margin-top: 25px;
	padding-top: 23px;
	border-top: 1px solid var(--gc-purchase-stone);
}

body.gc-checkout-active form.checkout .form-row,
body.gc-checkout-active form.woocommerce-checkout .form-row {
	min-width: 0;
	margin-bottom: 15px;
}

body.gc-checkout-active form.checkout .form-row label,
body.gc-checkout-active form.woocommerce-checkout .form-row label {
	margin-bottom: 6px;
	color: var(--gc-purchase-soft-black);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
}

body.gc-checkout-active form.checkout .form-row .required,
body.gc-checkout-active form.woocommerce-checkout .form-row .required {
	color: var(--gc-purchase-error);
	text-decoration: none;
}

body.gc-checkout-active form.checkout input.input-text,
body.gc-checkout-active form.checkout textarea,
body.gc-checkout-active form.checkout select,
body.gc-checkout-active form.checkout .select2-selection,
body.gc-checkout-active form.woocommerce-checkout input.input-text,
body.gc-checkout-active form.woocommerce-checkout textarea,
body.gc-checkout-active form.woocommerce-checkout select,
body.gc-checkout-active form.woocommerce-checkout .select2-selection {
	width: 100%;
	min-height: 50px;
	margin: 0;
	padding: 11px 13px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-ink);
	background: var(--gc-purchase-porcelain);
	font-family: var(--gc-purchase-body-font);
	font-size: 14px;
	line-height: 1.35;
	box-shadow: none;
}

body.gc-checkout-active form.checkout textarea,
body.gc-checkout-active form.woocommerce-checkout textarea {
	min-height: 108px;
	resize: vertical;
}

body.gc-checkout-active form.checkout .select2-selection,
body.gc-checkout-active form.woocommerce-checkout .select2-selection {
	display: flex;
	align-items: center;
}

body.gc-checkout-active form.checkout input.input-text:focus,
body.gc-checkout-active form.checkout textarea:focus,
body.gc-checkout-active form.checkout select:focus,
body.gc-checkout-active form.checkout .select2-container--focus .select2-selection,
body.gc-checkout-active form.woocommerce-checkout input.input-text:focus,
body.gc-checkout-active form.woocommerce-checkout textarea:focus,
body.gc-checkout-active form.woocommerce-checkout select:focus,
body.gc-checkout-active form.woocommerce-checkout .select2-container--focus .select2-selection {
	border-color: var(--gc-purchase-leaf);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(156, 196, 60, 0.18);
}

body.gc-checkout-active .woocommerce-checkout-review-order-table {
	width: 100%;
	margin: 0 0 19px;
	border: 0;
	border-collapse: collapse;
	table-layout: fixed;
}

body.gc-checkout-active .woocommerce-checkout-review-order-table th,
body.gc-checkout-active .woocommerce-checkout-review-order-table td {
	min-width: 0;
	padding: 10px 0;
	border: 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.45;
	vertical-align: top;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .woocommerce-checkout-review-order-table th:last-child,
body.gc-checkout-active .woocommerce-checkout-review-order-table td:last-child {
	color: var(--gc-purchase-ink);
	font-weight: 650;
	text-align: right;
}

body.gc-checkout-active .woocommerce-checkout-review-order-table .order-total th,
body.gc-checkout-active .woocommerce-checkout-review-order-table .order-total td {
	padding-top: 17px;
	border-top: 1px solid var(--gc-purchase-ink);
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 20px;
	font-weight: 600;
}

body.gc-checkout-active .woocommerce-checkout-payment,
body.gc-checkout-active #payment {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	height: auto;
	max-height: none;
	padding: 0;
	border: 0;
	background: transparent;
	overflow: visible;
}

body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods,
body.gc-checkout-active #payment ul.payment_methods,
body.gc-checkout-active #shipping_method {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	overflow: visible;
}

body.gc-checkout-active #shipping_method > li,
body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods > li,
body.gc-checkout-active #payment ul.payment_methods > li {
	position: relative;
	width: 100%;
	min-width: 0;
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0 0 9px;
	padding: 14px 15px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-control-radius);
	background: var(--gc-purchase-porcelain);
	overflow: visible;
}

body.gc-checkout-active #shipping_method > li:has(input:checked),
body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods > li:has(input:checked),
body.gc-checkout-active #payment ul.payment_methods > li:has(input:checked) {
	border-color: var(--gc-purchase-leaf);
	background: rgba(248, 244, 236, 0.72);
}

body.gc-checkout-active #shipping_method > li > input[type="radio"],
body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods > li > input[type="radio"],
body.gc-checkout-active #payment ul.payment_methods > li > input[type="radio"] {
	position: static !important;
	inset: auto !important;
	grid-column: 1;
	width: 18px;
	height: 18px;
	margin: 2px 0 0 !important;
	border-radius: 50%;
	opacity: 1 !important;
	transform: none !important;
	accent-color: var(--gc-purchase-leaf);
}

body.gc-checkout-active #shipping_method > li > label,
body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods > li > label,
body.gc-checkout-active #payment ul.payment_methods > li > label {
	grid-column: 2;
	min-width: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 7px 11px;
	margin: 0;
	color: var(--gc-purchase-ink);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .woocommerce-checkout-payment .payment_box,
body.gc-checkout-active #payment .payment_box {
	position: relative;
	grid-column: 1 / -1;
	width: 100%;
	max-width: 100%;
	height: auto;
	max-height: none;
	margin: 8px 0 0;
	padding: 0 0 1px 28px;
	border: 0;
	border-radius: 0;
	color: var(--gc-purchase-muted);
	background: transparent;
	font-size: 13px;
	line-height: 1.6;
	overflow: visible;
	overflow-wrap: anywhere;
}

body.gc-checkout-active .woocommerce-checkout-payment .payment_box::before,
body.gc-checkout-active #payment .payment_box::before {
	content: none;
	display: none;
}

body.gc-checkout-active .woocommerce-checkout-payment .payment_box p,
body.gc-checkout-active #payment .payment_box p {
	margin: 0 0 9px;
}

body.gc-checkout-active .woocommerce-checkout-payment .payment_box p:last-child,
body.gc-checkout-active #payment .payment_box p:last-child {
	margin-bottom: 0;
}

body.gc-checkout-active .woocommerce-checkout-payment .place-order,
body.gc-checkout-active #payment .place-order {
	margin: 19px 0 0;
	padding: 0;
}

body.gc-checkout-active #place_order {
	width: 100%;
	min-height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	float: none;
	margin: 0;
	padding: 13px 21px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-porcelain) !important;
	background: var(--gc-purchase-ink) !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

body.gc-checkout-active .woocommerce-privacy-policy-text,
body.gc-checkout-active .wc-block-checkout__terms,
body.gc-checkout-active .woocommerce-terms-and-conditions-wrapper {
	margin: 15px 0;
	color: var(--gc-purchase-muted);
	font-size: 12px;
	line-height: 1.6;
}

/* 10. Notices and validation */
body.gc-purchase-flow-active .woocommerce-error,
body.gc-purchase-flow-active .woocommerce-message,
body.gc-purchase-flow-active .woocommerce-info,
body.gc-purchase-flow-active .wc-block-components-notice-banner {
	width: 100%;
	margin: 0 0 21px;
	padding: 14px 16px;
	border: 1px solid var(--gc-purchase-stone);
	border-left: 3px solid var(--gc-purchase-leaf);
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-soft-black) !important;
	background: var(--gc-purchase-ivory);
	font-family: var(--gc-purchase-body-font);
	font-size: 13px;
	line-height: 1.55;
	box-shadow: none;
}

body.gc-purchase-flow-active .woocommerce-error > li,
body.gc-purchase-flow-active .woocommerce-message > li,
body.gc-purchase-flow-active .woocommerce-info > li,
body.gc-purchase-flow-active .woocommerce-error li,
body.gc-purchase-flow-active .woocommerce-message li,
body.gc-purchase-flow-active .woocommerce-info li,
body.gc-purchase-flow-active .wc-block-components-notice-banner__content,
body.gc-purchase-flow-active .wc-block-components-notice-banner__content > * {
	color: var(--gc-purchase-soft-black) !important;
}

body.gc-purchase-flow-active .woocommerce-error::before,
body.gc-purchase-flow-active .wc-block-components-notice-banner.is-error > svg {
	color: var(--gc-purchase-error) !important;
	fill: currentColor;
}

body.gc-purchase-flow-active .woocommerce-message::before,
body.gc-purchase-flow-active .woocommerce-info::before,
body.gc-purchase-flow-active .wc-block-components-notice-banner:not(.is-error) > svg {
	color: var(--gc-purchase-leaf) !important;
	fill: currentColor;
}

body.gc-purchase-flow-active .woocommerce-error .close,
body.gc-purchase-flow-active .woocommerce-message .close,
body.gc-purchase-flow-active .woocommerce-info .close,
body.gc-purchase-flow-active .woocommerce-error .wd-notice-close,
body.gc-purchase-flow-active .woocommerce-message .wd-notice-close,
body.gc-purchase-flow-active .woocommerce-info .wd-notice-close,
body.gc-purchase-flow-active .wc-block-components-notice-banner__dismiss {
	color: var(--gc-purchase-ink) !important;
	opacity: 0.72;
}

body.gc-purchase-flow-active .woocommerce-error,
body.gc-purchase-flow-active .wc-block-components-notice-banner.is-error {
	border-left-color: var(--gc-purchase-error);
	background: #fff8f6;
}

body.gc-purchase-flow-active .woocommerce-error a,
body.gc-purchase-flow-active .woocommerce-message a,
body.gc-purchase-flow-active .woocommerce-info a,
body.gc-purchase-flow-active .wc-block-components-notice-banner a {
	color: var(--gc-purchase-ink);
	font-weight: 700;
}

body.gc-checkout-active .woocommerce-invalid input.input-text,
body.gc-checkout-active .woocommerce-invalid select,
body.gc-checkout-active .wc-block-components-validation-error input {
	border-color: var(--gc-purchase-error);
}

body.gc-checkout-active .wc-block-components-validation-error,
body.gc-checkout-active .woocommerce-invalid-required-field label {
	color: var(--gc-purchase-error);
	font-size: 12px;
	line-height: 1.45;
}

/* 11. Native order-pay endpoint */
body.gc-order-pay-active .main-page-wrapper .woocommerce {
	width: min(100%, var(--gc-purchase-reading-width));
	max-width: var(--gc-purchase-reading-width);
	min-width: 0;
	margin-right: auto;
	margin-left: auto;
	padding: clamp(22px, 4vw, 34px);
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	box-shadow: none;
	overflow-wrap: anywhere;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce > p {
	max-width: 100%;
	margin: 0 0 20px;
	color: var(--gc-purchase-muted);
	font-size: 14px;
	line-height: 1.65;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details,
body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details {
	width: 100%;
	max-width: 100%;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
	gap: 0;
	margin: 0 0 24px;
	padding: 18px 0;
	border: 0;
	border-top: 1px solid var(--gc-purchase-stone);
	border-bottom: 1px solid var(--gc-purchase-stone);
	border-radius: 0;
	background: transparent;
	list-style: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li,
body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li {
	min-width: 0;
	margin: 0;
	padding: 0 16px;
	border: 0;
	border-right: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	overflow-wrap: anywhere;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li:last-child,
body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li:last-child {
	border-right: 0;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li strong,
body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li strong {
	display: block;
	margin-top: 6px;
	color: var(--gc-purchase-ink);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
	text-transform: none;
	letter-spacing: 0;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce form {
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form form,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-form,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-wrapper,
body.gc-order-pay-active .main-page-wrapper .woocommerce .woocommerce-payment-form,
body.gc-order-pay-active .main-page-wrapper .woocommerce [class*="paystack"][class*="mount"],
body.gc-order-pay-active .main-page-wrapper .woocommerce [class*="paystack"][class*="loading"] {
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	background-image: none !important;
	box-shadow: none;
	overflow: visible;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form form::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form form::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-form::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-form::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-wrapper::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce .paystack-receipt-wrapper::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce .woocommerce-payment-form::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce .woocommerce-payment-form::after {
	content: none !important;
	display: none !important;
	border: 0;
	background: none !important;
	box-shadow: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce table {
	width: 100%;
	max-width: 100%;
	margin: 0 0 22px;
	border: 0;
	border-collapse: collapse;
	table-layout: fixed;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce table th,
body.gc-order-pay-active .main-page-wrapper .woocommerce table td {
	min-width: 0;
	padding: 10px 0;
	border: 0;
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.5;
	vertical-align: top;
	overflow-wrap: anywhere;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce table th:last-child,
body.gc-order-pay-active .main-page-wrapper .woocommerce table td:last-child {
	color: var(--gc-purchase-ink);
	font-weight: 650;
	text-align: right;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce table tr:last-child th,
body.gc-order-pay-active .main-page-wrapper .woocommerce table tr:last-child td {
	padding-top: 16px;
	border-top: 1px solid var(--gc-purchase-ink);
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 20px;
	font-weight: 600;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment {
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods > li {
	width: 100%;
	min-width: 0;
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0 0 9px;
	padding: 14px 15px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-control-radius);
	background: var(--gc-purchase-porcelain);
	overflow: visible;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods > li:has(input:checked) {
	border-color: var(--gc-purchase-leaf);
	background: rgba(255, 253, 248, 0.78);
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods > li > input[type="radio"] {
	position: static !important;
	inset: auto !important;
	grid-column: 1;
	width: 18px;
	height: 18px;
	margin: 2px 0 0 !important;
	border-radius: 50%;
	opacity: 1 !important;
	transform: none !important;
	accent-color: var(--gc-purchase-leaf);
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods > li > label {
	grid-column: 2;
	min-width: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 7px 11px;
	margin: 0;
	color: var(--gc-purchase-ink);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.45;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods img {
	width: auto;
	max-width: min(120px, 32vw);
	height: auto;
	max-height: 38px;
	margin: 0 0 0 8px;
	object-fit: contain;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .payment_box {
	grid-column: 1 / -1;
	width: 100%;
	margin: 8px 0 0;
	padding: 0 0 1px 28px;
	border: 0;
	border-radius: 0;
	color: var(--gc-purchase-muted);
	background: transparent;
	font-size: 13px;
	line-height: 1.6;
	overflow: visible;
	overflow-wrap: anywhere;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .payment_box::before {
	content: none;
	display: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .form-row,
body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .place-order,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .form-row,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .place-order,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .form-row,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .place-order {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #place_order,
body.gc-order-pay-active .main-page-wrapper .woocommerce .button.pay,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack-payment-button,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button.alt,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.alt,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review button[type="submit"],
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review input[type="submit"] {
	flex: 1 1 220px;
	order: 0;
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 12px 20px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-porcelain) !important;
	background: var(--gc-purchase-ink) !important;
	background-image: none !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	box-shadow: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce .cancel,
body.gc-order-pay-active .main-page-wrapper .woocommerce .button.cancel,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button.cancel,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.cancel {
	flex: 0 1 auto;
	order: 1;
	min-height: 50px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 12px 20px;
	border: 1px solid var(--gc-purchase-ink) !important;
	border-radius: var(--gc-purchase-control-radius);
	color: var(--gc-purchase-ink) !important;
	background: transparent !important;
	font-family: var(--gc-purchase-body-font);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.055em;
	box-shadow: none;
}

body.gc-order-pay-active .main-page-wrapper .woocommerce #place_order::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce #place_order::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce .button.pay::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce .button.pay::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack-payment-button::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack-payment-button::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button::after,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.alt::before,
body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.alt::after {
	content: none;
	display: none;
	background: none;
	box-shadow: none;
}

/* 12. Native order-received endpoint */
body.gc-order-received-active .main-page-wrapper .woocommerce,
body.gc-order-received-active .woocommerce-order {
	width: min(100%, 900px);
	max-width: 900px;
	min-width: 0;
	margin-right: auto;
	margin-left: auto;
}

body.gc-order-received-active .woocommerce-thankyou-order-received,
body.gc-order-received-active .woocommerce-notice--success {
	margin: 0 0 26px;
	padding: clamp(18px, 4vw, 25px);
	border: 1px solid var(--gc-purchase-stone) !important;
	border-left: 4px solid var(--gc-purchase-leaf) !important;
	border-radius: var(--gc-purchase-panel-radius);
	color: var(--gc-purchase-ink);
	background: var(--gc-purchase-ivory);
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(23px, 4vw, 32px);
	font-weight: 500;
	line-height: 1.25;
	box-shadow: none;
}

body.gc-order-received-active .woocommerce-order-overview,
body.gc-order-received-active ul.order_details {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
	gap: 0;
	margin: 0 0 31px;
	padding: 0;
	border: 1px solid var(--gc-purchase-stone) !important;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-porcelain);
	list-style: none;
	overflow: hidden;
}

body.gc-order-received-active .woocommerce-order-overview li,
body.gc-order-received-active ul.order_details li {
	min-width: 0;
	margin: 0;
	padding: 17px;
	border: 0 !important;
	border-right: 1px solid var(--gc-purchase-stone) !important;
	color: var(--gc-purchase-muted);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
	letter-spacing: 0.065em;
	overflow-wrap: anywhere;
}

body.gc-order-received-active .woocommerce-order-overview li:last-child,
body.gc-order-received-active ul.order_details li:last-child {
	border-right: 0 !important;
}

body.gc-order-received-active .woocommerce-order-overview li strong,
body.gc-order-received-active ul.order_details li strong {
	display: block;
	margin-top: 6px;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-body-font);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
	text-transform: none;
	letter-spacing: 0;
	overflow-wrap: anywhere;
}

body.gc-order-received-active .woocommerce-order-details,
body.gc-order-received-active .woocommerce-customer-details {
	margin: 0 0 31px;
}

body.gc-order-received-active .woocommerce-order-details__title,
body.gc-order-received-active .woocommerce-column__title,
body.gc-order-received-active .woocommerce-customer-details > h2 {
	margin: 0 0 14px;
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: clamp(26px, 4vw, 33px);
	font-weight: 500;
	line-height: 1.12;
	letter-spacing: -0.02em;
}

body.gc-order-received-active .woocommerce-table--order-details,
body.gc-order-received-active .woocommerce-order-details table.shop_table {
	width: 100%;
	margin: 0;
	border: 1px solid var(--gc-purchase-stone) !important;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-porcelain);
	table-layout: fixed;
	overflow: hidden;
}

body.gc-order-received-active .woocommerce-table--order-details th,
body.gc-order-received-active .woocommerce-table--order-details td,
body.gc-order-received-active .woocommerce-order-details table.shop_table th,
body.gc-order-received-active .woocommerce-order-details table.shop_table td {
	min-width: 0;
	padding: 14px 17px;
	border: 0;
	border-bottom: 1px solid var(--gc-purchase-stone);
	color: var(--gc-purchase-muted);
	font-size: 13px;
	line-height: 1.5;
	vertical-align: top;
	overflow-wrap: anywhere;
}

body.gc-order-received-active .woocommerce-table--order-details th:last-child,
body.gc-order-received-active .woocommerce-table--order-details td:last-child,
body.gc-order-received-active .woocommerce-order-details table.shop_table th:last-child,
body.gc-order-received-active .woocommerce-order-details table.shop_table td:last-child {
	width: 34%;
	color: var(--gc-purchase-ink);
	font-weight: 650;
	text-align: right;
}

body.gc-order-received-active .woocommerce-table--order-details tbody tr:last-child td,
body.gc-order-received-active .woocommerce-table--order-details tfoot tr:last-child th,
body.gc-order-received-active .woocommerce-table--order-details tfoot tr:last-child td,
body.gc-order-received-active .woocommerce-order-details table.shop_table tbody tr:last-child td,
body.gc-order-received-active .woocommerce-order-details table.shop_table tfoot tr:last-child th,
body.gc-order-received-active .woocommerce-order-details table.shop_table tfoot tr:last-child td {
	border-bottom: 0;
}

body.gc-order-received-active .woocommerce-table--order-details .product-name a,
body.gc-order-received-active .woocommerce-order-details table.shop_table .product-name a {
	color: var(--gc-purchase-ink);
	font-weight: 650;
	line-height: 1.45;
	text-decoration: none;
	overflow-wrap: anywhere;
}

body.gc-order-received-active .woocommerce-table--order-details tfoot tr:last-child th,
body.gc-order-received-active .woocommerce-table--order-details tfoot tr:last-child td,
body.gc-order-received-active .woocommerce-order-details table.shop_table tfoot tr:last-child th,
body.gc-order-received-active .woocommerce-order-details table.shop_table tfoot tr:last-child td {
	color: var(--gc-purchase-ink);
	font-family: var(--gc-purchase-heading-font);
	font-size: 20px;
	font-weight: 600;
}

body.gc-order-received-active .woocommerce-columns--addresses,
body.gc-order-received-active .woocommerce-customer-details .woocommerce-columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 21px;
	border: 1px solid var(--gc-purchase-stone);
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
}

body.gc-order-received-active .woocommerce-column--billing-address,
body.gc-order-received-active .woocommerce-column--shipping-address {
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0 21px;
	border: 0;
	border-radius: 0;
	background: transparent;
}

body.gc-order-received-active .woocommerce-column--billing-address {
	padding-left: 0;
	border-right: 1px solid var(--gc-purchase-stone);
}

body.gc-order-received-active .woocommerce-column--shipping-address {
	padding-right: 0;
}

body.gc-order-received-active .woocommerce-customer-details address {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--gc-purchase-soft-black);
	font-family: var(--gc-purchase-body-font);
	font-size: 14px;
	font-style: normal;
	line-height: 1.7;
	overflow-wrap: anywhere;
}

body.gc-order-received-active .woocommerce-customer-details address p {
	margin: 7px 0 0;
}

body.gc-order-received-active .woocommerce .button {
	border-radius: var(--gc-purchase-control-radius);
}

/* 13. Optional native product images on payment and confirmation pages */
body.gc-order-pay-active .woocommerce .product-thumbnail,
body.gc-order-pay-active .woocommerce .woocommerce-order-item__product-image,
body.gc-order-pay-active .woocommerce .product-name a:has(> img),
body.gc-order-received-active .woocommerce .product-thumbnail,
body.gc-order-received-active .woocommerce .woocommerce-order-item__product-image,
body.gc-order-received-active .woocommerce .product-name a:has(> img) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: var(--gc-purchase-panel-radius);
	background: var(--gc-purchase-ivory);
	overflow: hidden;
	isolation: isolate;
}

body.gc-order-pay-active .woocommerce .product-thumbnail img,
body.gc-order-pay-active .woocommerce .woocommerce-order-item__product-image img,
body.gc-order-pay-active .woocommerce .product-name a:has(> img) > img,
body.gc-order-received-active .woocommerce .product-thumbnail img,
body.gc-order-received-active .woocommerce .woocommerce-order-item__product-image img,
body.gc-order-received-active .woocommerce .product-name a:has(> img) > img {
	max-width: 72px;
	height: auto;
	margin: 0;
	padding: 6px;
	border: 0;
	border-radius: 0;
	object-fit: contain;
	background: transparent !important;
	mix-blend-mode: multiply !important;
}

/* 14. Mobile toolbar clearance */
body.gc-purchase-flow-active .footer-container,
body.gc-purchase-flow-active footer.footer-container {
	position: relative;
}

body.gc-purchase-flow-active .wd-toolbar {
	max-width: 100vw;
}

/* 15. Responsive layouts */
@media (max-width: 1024px) {
	body.gc-cart-active .wc-block-cart .wc-block-components-sidebar-layout,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-components-sidebar-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 27px;
	}

	body.gc-cart-active .wc-block-cart__sidebar,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__sidebar {
		width: 100%;
	}

	body.gc-cart-active .woocommerce-cart-form,
	body.gc-cart-active .cart-collaterals {
		width: 100%;
		float: none;
		padding-right: 0;
	}

	body.gc-cart-active .cart-collaterals {
		margin-top: 27px;
	}

	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__products,
	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .products,
	body.gc-cart-active .cross-sells .products,
	body.gc-cart-active .woocommerce:has(.cart-empty) .products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 960px) {
	body.gc-checkout-active .wc-block-checkout.wc-block-components-sidebar-layout,
	body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
	body.gc-checkout-active form.checkout,
	body.gc-checkout-active form.woocommerce-checkout {
		grid-template-columns: minmax(0, 1fr);
		gap: 27px;
	}

	body.gc-checkout-active .wc-block-checkout__main,
	body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-checkout__main {
		padding-right: 0;
	}

	body.gc-checkout-active .wc-block-checkout__sidebar,
	body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-checkout__sidebar {
		position: static;
		top: auto;
		width: 100%;
	}

	body.gc-checkout-active form.checkout > .col2-set,
	body.gc-checkout-active form.woocommerce-checkout > .col2-set,
	body.gc-checkout-active form.checkout > #customer_details,
	body.gc-checkout-active form.woocommerce-checkout > #customer_details,
	body.gc-checkout-active form.checkout > #order_review_heading,
	body.gc-checkout-active form.woocommerce-checkout > #order_review_heading,
	body.gc-checkout-active form.checkout > #order_review,
	body.gc-checkout-active form.woocommerce-checkout > #order_review {
		grid-column: 1;
		grid-row: auto;
	}

	body.gc-checkout-active form.checkout > .col2-set,
	body.gc-checkout-active form.woocommerce-checkout > .col2-set,
	body.gc-checkout-active form.checkout > #customer_details,
	body.gc-checkout-active form.woocommerce-checkout > #customer_details {
		padding-right: 0;
	}
}

@media (max-width: 767px) {
	body.gc-purchase-flow-active .main-page-wrapper {
		padding-bottom: 30px;
		overflow-x: clip;
	}

	body.gc-purchase-flow-active .main-page-wrapper > .container,
	body.gc-purchase-flow-active .main-page-wrapper .site-content {
		width: 100%;
		max-width: 100%;
		padding-right: max(16px, env(safe-area-inset-right, 0px));
		padding-left: max(16px, env(safe-area-inset-left, 0px));
	}

	body.gc-purchase-flow-active .page-title,
	body.gc-purchase-flow-active .page-title-default,
	body.gc-purchase-flow-active .wd-page-title,
	body.gc-purchase-flow-active .title-design-centered,
	body.gc-purchase-flow-active .title-design-disable {
		margin-bottom: 26px;
		padding: 20px 0 !important;
	}

	body.gc-purchase-flow-active .page-title .container,
	body.gc-purchase-flow-active .wd-page-title .container {
		padding-right: max(16px, env(safe-area-inset-right, 0px));
		padding-left: max(16px, env(safe-area-inset-left, 0px));
	}

	body.gc-purchase-flow-active .page-title .entry-title,
	body.gc-purchase-flow-active .page-title .title,
	body.gc-purchase-flow-active .wd-page-title .entry-title,
	body.gc-purchase-flow-active .wd-page-title .title {
		font-size: 34px;
	}

	body.gc-purchase-flow-active .wd-checkout-steps,
	body.gc-purchase-flow-active .checkout-steps {
		gap: 6px 10px;
		font-size: 10px;
	}

	body.gc-cart-active .wc-block-cart__sidebar,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__sidebar,
	body.gc-checkout-active .wc-block-checkout__sidebar,
	body.gc-checkout-active .wp-block-woocommerce-checkout .wc-block-checkout__sidebar {
		padding: 19px 16px;
		border-radius: var(--gc-purchase-panel-radius);
	}

	body.gc-cart-active .wc-block-cart__totals-title,
	body.gc-cart-active .wc-block-components-totals-wrapper h2,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart__totals-title {
		font-size: 25px;
	}

	body.gc-cart-active .wc-block-cart-items thead,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items thead {
		display: none;
	}

	body.gc-cart-active .wc-block-cart-items tbody,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items tbody {
		width: 100%;
		display: block;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-items__row,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row {
		width: 100%;
		display: grid;
		grid-template-columns: 82px minmax(0, 1fr);
		align-items: start;
		column-gap: 13px;
		padding: 16px 0;
		border: 0;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-items__row:not(:last-child),
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row:not(:last-child) {
		border-bottom: 1px solid var(--gc-purchase-stone);
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-items__row td,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row td {
		width: auto;
		min-width: 0;
		padding: 0;
		border: 0;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-item__image,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-item__image {
		grid-column: 1;
		grid-row: 1 / span 2;
		width: 82px;
	}

	body.gc-cart-active .wc-block-cart-item__image a,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image a {
		width: 82px;
		height: 98px;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-item__product,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-item__product {
		grid-column: 2;
		grid-row: 1;
		padding: 0;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-item__total,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-item__total {
		grid-column: 2;
		grid-row: 2;
		min-width: 0;
		margin-top: 9px;
		padding: 0;
		text-align: left;
	}

	body.gc-cart-active .wc-block-cart-item__total .wc-block-components-product-price,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price {
		text-align: left;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table,
	body.gc-cart-active .woocommerce-cart-form table.shop_table tbody,
	body.gc-cart-active .woocommerce-cart-form table.shop_table tr,
	body.gc-cart-active .woocommerce-cart-form table.shop_table td {
		width: 100%;
		display: block;
	}

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

	body.gc-cart-active .woocommerce-cart-form table.shop_table tr.cart_item {
		position: relative;
		margin: 0;
		padding: 16px 0;
		border: 0;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table tr.cart_item:not(:last-child) {
		border-bottom: 1px solid var(--gc-purchase-stone);
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table td {
		min-width: 0;
		padding: 5px 0 5px 98px;
		border: 0;
		text-align: left;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table td.product-thumbnail {
		position: absolute;
		top: 16px;
		left: 0;
		width: 82px;
		padding: 0;
	}

	body.gc-cart-active .woocommerce-cart-form .product-thumbnail a {
		width: 82px;
		height: 98px;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table td.product-remove {
		position: absolute;
		top: 15px;
		right: 0;
		width: 32px;
		padding: 0;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table td.product-name {
		padding-right: 39px;
	}

	body.gc-cart-active .woocommerce-cart-form table.shop_table td.actions {
		position: static;
		padding: 17px 0 0;
	}

	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__products,
	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .products,
	body.gc-cart-active .cross-sells .products,
	body.gc-cart-active .woocommerce:has(.cart-empty) .products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 17px 12px;
	}

	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .wc-block-grid__product,
	body.gc-cart-active .wp-block-woocommerce-empty-cart-block .product,
	body.gc-cart-active .cross-sells .product,
	body.gc-cart-active .woocommerce:has(.cart-empty) .product {
		max-width: 210px;
	}

	body.gc-checkout-active .wc-block-components-checkout-step {
		padding-bottom: 26px;
	}

	body.gc-checkout-active .wc-block-components-checkout-step + .wc-block-components-checkout-step {
		padding-top: 26px;
	}

	body.gc-checkout-active .wc-block-components-checkout-step__title,
	body.gc-checkout-active .wc-block-components-title {
		font-size: 26px;
	}

	body.gc-checkout-active .wc-block-components-order-summary-item {
		grid-template-columns: 58px minmax(0, 1fr) auto;
		gap: 10px;
	}

	body.gc-checkout-active .wc-block-components-order-summary-item__image {
		width: 58px;
		height: 70px;
	}

	body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control__option {
		padding-block: 12px;
		padding-inline-end: 13px;
		padding-inline-start: 50px;
	}

	body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option {
		padding: 0;
	}

	body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option,
	body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option:has(input:checked) {
		padding-block: 12px;
		padding-inline-end: 13px;
		padding-inline-start: 50px;
	}

	body.gc-checkout-active .wc-block-components-radio-control .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control-accordion-content {
		padding: 0 13px 12px 50px;
	}

	body.gc-checkout-active #shipping_method > li,
	body.gc-checkout-active .woocommerce-checkout-payment ul.payment_methods > li,
	body.gc-checkout-active #payment ul.payment_methods > li {
		padding: 12px 13px;
		gap: 10px;
	}

	body.gc-checkout-active form.checkout > #order_review_heading,
	body.gc-checkout-active form.woocommerce-checkout > #order_review_heading {
		padding: 19px 17px 0;
		font-size: 26px;
	}

	body.gc-checkout-active form.checkout > #order_review,
	body.gc-checkout-active form.woocommerce-checkout > #order_review,
	body.gc-checkout-active .woocommerce-checkout-review-order {
		padding: 15px 17px 19px;
	}

	body.gc-checkout-active .wc-block-checkout__payment-method img,
	body.gc-checkout-active .wc-block-components-payment-methods img,
	body.gc-checkout-active .payment_methods img,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #payment ul.payment_methods img {
		max-width: min(108px, 30vw);
		max-height: 32px;
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce {
		padding: 20px 17px;
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .form-row,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #payment .place-order,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .form-row,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .place-order,
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .form-row,
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .place-order {
		flex-direction: column;
		align-items: stretch;
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce #place_order,
	body.gc-order-pay-active .main-page-wrapper .woocommerce .button.pay,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack-payment-button,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button.alt,
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.alt,
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review button[type="submit"],
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review input[type="submit"],
	body.gc-order-pay-active .main-page-wrapper .woocommerce .cancel,
	body.gc-order-pay-active .main-page-wrapper .woocommerce .button.cancel,
	body.gc-order-pay-active .main-page-wrapper .woocommerce #paystack_form .button.cancel,
	body.gc-order-pay-active .main-page-wrapper .woocommerce form#order_review .button.cancel {
		width: 100%;
	}

	body.gc-order-received-active .woocommerce-order-overview,
	body.gc-order-received-active ul.order_details {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.gc-order-received-active .woocommerce-order-overview li:nth-child(2n),
	body.gc-order-received-active ul.order_details li:nth-child(2n) {
		border-right: 0 !important;
	}

	body.gc-order-received-active .woocommerce-order-overview li,
	body.gc-order-received-active ul.order_details li {
		border-bottom: 1px solid var(--gc-purchase-stone) !important;
	}

	body.gc-order-received-active .woocommerce-order-overview li:nth-last-child(-n + 2),
	body.gc-order-received-active ul.order_details li:nth-last-child(-n + 2) {
		border-bottom: 0 !important;
	}

	body.gc-order-received-active .woocommerce-columns--addresses,
	body.gc-order-received-active .woocommerce-customer-details .woocommerce-columns {
		grid-template-columns: minmax(0, 1fr);
		gap: 20px;
		padding: 19px;
	}

	body.gc-order-received-active .woocommerce-column--billing-address,
	body.gc-order-received-active .woocommerce-column--shipping-address {
		padding: 0;
		border: 0;
	}

	body.gc-order-received-active .woocommerce-column--billing-address {
		padding-bottom: 20px;
		border-bottom: 1px solid var(--gc-purchase-stone);
	}

	body.gc-order-received-active .woocommerce-table--order-details th,
	body.gc-order-received-active .woocommerce-table--order-details td,
	body.gc-order-received-active .woocommerce-order-details table.shop_table th,
	body.gc-order-received-active .woocommerce-order-details table.shop_table td {
		padding: 12px 11px;
		font-size: 12px;
	}

	body.gc-purchase-flow-active .footer-container,
	body.gc-purchase-flow-active footer.footer-container {
		padding-bottom: 0 !important;
	}

	body.gc-purchase-flow-active .footer-container:not(:has(.gc-footer-v1)),
	body.gc-purchase-flow-active footer.footer-container:not(:has(.gc-footer-v1)) {
		padding-bottom: calc(var(--gc-purchase-toolbar-height) + var(--gc-purchase-safe-bottom)) !important;
	}

	body.gc-purchase-flow-active .footer-container:has(.gc-footer-v1) .gc-footer-v1__bottom,
	body.gc-purchase-flow-active footer.footer-container:has(.gc-footer-v1) .gc-footer-v1__bottom {
		padding-bottom: max(
			calc(86px + var(--gc-purchase-safe-bottom)),
			calc(var(--gc-purchase-toolbar-height) + 16px + var(--gc-purchase-safe-bottom))
		) !important;
	}
}

@media (max-width: 479px) {
	body.gc-cart-active .wc-block-cart-items .wc-block-cart-items__row,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row {
		grid-template-columns: 74px minmax(0, 1fr);
		column-gap: 10px;
	}

	body.gc-cart-active .wc-block-cart-items .wc-block-cart-item__image,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-items .wc-block-cart-item__image,
	body.gc-cart-active .wc-block-cart-item__image a,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image a {
		width: 74px;
	}

	body.gc-cart-active .wc-block-cart-item__image a,
	body.gc-cart-active .wp-block-woocommerce-cart .wc-block-cart-item__image a {
		height: 90px;
	}

	body.gc-checkout-active .wc-block-components-order-summary-item {
		grid-template-columns: 52px minmax(0, 1fr);
	}

	body.gc-checkout-active .wc-block-components-order-summary-item__image {
		width: 52px;
		height: 64px;
	}

	body.gc-checkout-active .wc-block-components-order-summary-item__total-price {
		grid-column: 2;
		text-align: left;
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details,
	body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details,
	body.gc-order-received-active .woocommerce-order-overview,
	body.gc-order-received-active ul.order_details {
		grid-template-columns: minmax(0, 1fr);
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li,
	body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li {
		padding: 10px 0;
		border-right: 0;
		border-bottom: 1px solid var(--gc-purchase-stone);
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li:first-child,
	body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li:first-child {
		padding-top: 0;
	}

	body.gc-order-pay-active .main-page-wrapper .woocommerce > .order_details li:last-child,
	body.gc-order-pay-active .main-page-wrapper .woocommerce > ul.order_details li:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}

	body.gc-order-received-active .woocommerce-order-overview li,
	body.gc-order-received-active ul.order_details li,
	body.gc-order-received-active .woocommerce-order-overview li:nth-child(2n),
	body.gc-order-received-active ul.order_details li:nth-child(2n),
	body.gc-order-received-active .woocommerce-order-overview li:nth-last-child(-n + 2),
	body.gc-order-received-active ul.order_details li:nth-last-child(-n + 2) {
		border-right: 0 !important;
		border-bottom: 1px solid var(--gc-purchase-stone) !important;
	}

	body.gc-order-received-active .woocommerce-order-overview li:last-child,
	body.gc-order-received-active ul.order_details li:last-child {
		border-bottom: 0 !important;
	}

	body.gc-order-received-active .woocommerce-table--order-details th:last-child,
	body.gc-order-received-active .woocommerce-table--order-details td:last-child,
	body.gc-order-received-active .woocommerce-order-details table.shop_table th:last-child,
	body.gc-order-received-active .woocommerce-order-details table.shop_table td:last-child {
		width: 38%;
	}
}

/* 16. Focus, disabled controls, and reduced motion */
body.gc-purchase-flow-active .main-page-wrapper a:focus-visible,
body.gc-purchase-flow-active .main-page-wrapper button:focus-visible,
body.gc-purchase-flow-active .main-page-wrapper input:focus-visible,
body.gc-purchase-flow-active .main-page-wrapper select:focus-visible,
body.gc-purchase-flow-active .main-page-wrapper textarea:focus-visible {
	outline: 2px solid var(--gc-purchase-leaf);
	outline-offset: 2px;
}

body.gc-purchase-flow-active .main-page-wrapper [aria-disabled="true"],
body.gc-purchase-flow-active .main-page-wrapper button:disabled {
	cursor: not-allowed;
	opacity: 0.58;
}

@media (prefers-reduced-motion: reduce) {
	body.gc-purchase-flow-active .main-page-wrapper *,
	body.gc-purchase-flow-active .main-page-wrapper *::before,
	body.gc-purchase-flow-active .main-page-wrapper *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
