/*
 * Homegrown Builders checkout surface
 *
 * This stylesheet is intentionally scoped to .hgb-checkout-surface. It keeps
 * WooCommerce's form structure, field names, payment elements, and actions
 * intact while giving a one-product course checkout its own visual hierarchy.
 */

:root {
	--hgb-checkout-ink: #1c1712;
	--hgb-checkout-forest: #203d2e;
	--hgb-checkout-forest-deep: #172d22;
	--hgb-checkout-paper: #fffaf1;
	--hgb-checkout-paper-soft: #f3eee4;
	--hgb-checkout-paper-warm: #ece1d1;
	--hgb-checkout-brass: #c88f4c;
	--hgb-checkout-brass-light: #edbe69;
	--hgb-checkout-muted: #5d554b;
	--hgb-checkout-line: #d7c8b5;
	--hgb-checkout-danger: #9e3e24;
}

body.hgb-checkout-surface {
	background: var(--hgb-checkout-paper-soft) !important;
	color: var(--hgb-checkout-ink) !important;
	font-family: "Source Sans 3", "Segoe UI", system-ui, sans-serif !important;
	font-size: 17px;
	line-height: 1.55;
	text-rendering: optimizeLegibility;
}

body.hgb-checkout-surface #masthead,
body.hgb-checkout-surface #colophon,
body.hgb-checkout-surface .site-footer,
body.hgb-checkout-surface .ast-breadcrumbs-wrapper,
body.hgb-checkout-surface .entry-header {
	display: none !important;
}

body.hgb-checkout-surface #page,
body.hgb-checkout-surface #content,
body.hgb-checkout-surface .site-content,
body.hgb-checkout-surface .site-content > .ast-container,
body.hgb-checkout-surface #primary,
body.hgb-checkout-surface .content-area,
body.hgb-checkout-surface .site-main,
body.hgb-checkout-surface .ast-article-single,
body.hgb-checkout-surface .entry-content {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.hgb-checkout-surface #content {
	padding: 0 0 clamp(3rem, 7vw, 6rem) !important;
}

body.hgb-checkout-surface .site-content > .ast-container,
body.hgb-checkout-surface .ast-page-builder-template .site-content > .ast-container {
	width: min(1180px, calc(100% - 48px)) !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.hgb-checkout-surface .entry-content {
	margin: 0 !important;
	padding: 0 !important;
}

/* Focused checkout bar */
.hgb-checkout-bar {
	position: relative;
	z-index: 10;
	background: var(--hgb-checkout-forest-deep);
	color: var(--hgb-checkout-paper);
	border-bottom: 4px solid var(--hgb-checkout-brass);
}

.hgb-checkout-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	width: min(1180px, calc(100% - 48px));
	min-height: 78px;
	margin: 0 auto;
}

.hgb-checkout-bar__brand {
	display: inline-flex;
	align-items: center;
	gap: .75rem;
	color: var(--hgb-checkout-paper) !important;
	text-decoration: none !important;
}

.hgb-checkout-bar__brand img {
	display: block;
	width: 48px;
	height: 48px;
}

.hgb-checkout-bar__brand span {
	display: grid;
	gap: .04rem;
}

.hgb-checkout-bar__brand strong {
	font: 700 1.08rem/1 "Source Sans 3", sans-serif;
	letter-spacing: .01em;
}

.hgb-checkout-bar__brand small {
	color: #d6e2d1;
	font: 700 .72rem/1.2 "DM Mono", monospace;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.hgb-checkout-bar__right {
	display: flex;
	align-items: center;
	gap: 1.15rem;
	font-size: .93rem;
	font-weight: 700;
}

.hgb-checkout-bar__right a {
	color: var(--hgb-checkout-brass-light) !important;
	text-underline-offset: .2em;
}

.hgb-checkout-bar__secure {
	color: #d6e2d1;
	white-space: nowrap;
}

.hgb-checkout-bar__secure span {
	display: inline-grid;
	width: 1.2rem;
	height: 1.2rem;
	margin-right: .25rem;
	place-items: center;
	border: 1px solid var(--hgb-checkout-brass-light);
	border-radius: 50%;
	color: var(--hgb-checkout-brass-light);
	font-size: .75rem;
}

/* The first screen should answer: what am I buying, and what happens next? */
body.hgb-checkout-surface .woocommerce {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	color: var(--hgb-checkout-ink) !important;
}

.hgb-checkout-intro {
	max-width: 790px;
	margin: clamp(2.7rem, 6vw, 5.4rem) 0 clamp(1.6rem, 3vw, 2.5rem);
}

.hgb-checkout-intro__eyebrow {
	margin: 0 0 .75rem;
	color: #9b6332;
	font: 700 .78rem/1.2 "DM Mono", monospace;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hgb-checkout-intro h1 {
	max-width: 12ch;
	margin: 0;
	color: var(--hgb-checkout-ink) !important;
	font: 400 clamp(2.9rem, 6vw, 5.8rem)/.94 "DM Serif Display", Georgia, serif !important;
	letter-spacing: -.045em;
}

.hgb-checkout-intro__lead {
	max-width: 650px;
	margin: 1.15rem 0 0;
	color: var(--hgb-checkout-muted) !important;
	font-size: clamp(1.08rem, 1.8vw, 1.27rem);
	font-weight: 600;
	line-height: 1.5;
}

.hgb-checkout-intro__proof {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem 1.4rem;
	margin-top: 1.45rem;
	color: var(--hgb-checkout-forest);
	font-size: .92rem;
	font-weight: 700;
}

.hgb-checkout-intro__proof span {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
}

.hgb-checkout-intro__proof b {
	color: #a86f34;
	font: 700 .72rem/1 "DM Mono", monospace;
}

/* WooCommerce notices become quiet, helpful signposts rather than giant bars. */
body.hgb-checkout-surface .woocommerce-notices-wrapper {
	margin-top: 1.4rem;
}

body.hgb-checkout-surface .woocommerce-message,
body.hgb-checkout-surface .woocommerce-info,
body.hgb-checkout-surface .woocommerce-error {
	display: flex;
	align-items: center;
	gap: .8rem;
	min-height: 0 !important;
	margin: 0 0 .8rem !important;
	padding: .95rem 1.1rem .95rem 1.2rem !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	border-left: 5px solid var(--hgb-checkout-brass) !important;
	background: var(--hgb-checkout-paper) !important;
	box-shadow: 0 8px 24px rgba(42, 31, 19, .05) !important;
	color: var(--hgb-checkout-muted) !important;
	font-size: .98rem;
	font-weight: 600;
}

body.hgb-checkout-surface .woocommerce-message::before,
body.hgb-checkout-surface .woocommerce-info::before,
body.hgb-checkout-surface .woocommerce-error::before {
	position: static !important;
	margin: 0 !important;
	color: var(--hgb-checkout-forest) !important;
}

body.hgb-checkout-surface .woocommerce-message a.button,
body.hgb-checkout-surface .woocommerce-info a.button,
body.hgb-checkout-surface .woocommerce-error a.button {
	order: 2;
	margin-left: auto !important;
	padding: .55rem .85rem !important;
	border: 1px solid var(--hgb-checkout-forest) !important;
	border-radius: 999px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--hgb-checkout-forest) !important;
	font-size: .86rem !important;
	font-weight: 800 !important;
	white-space: nowrap;
}

body.hgb-checkout-surface .woocommerce-message a.button:hover,
body.hgb-checkout-surface .woocommerce-info a.button:hover,
body.hgb-checkout-surface .woocommerce-error a.button:hover {
	background: var(--hgb-checkout-forest) !important;
	color: var(--hgb-checkout-paper) !important;
}

body.hgb-checkout-surface .woocommerce-info a:not(.button),
body.hgb-checkout-surface .woocommerce-message a:not(.button),
body.hgb-checkout-surface .woocommerce-error a:not(.button) {
	color: var(--hgb-checkout-forest) !important;
	font-weight: 800;
	text-underline-offset: .16em;
}

/* Login and coupon remain available, but no longer dominate the page. */
body.hgb-checkout-surface .woocommerce-form-login-toggle,
body.hgb-checkout-surface .woocommerce-form-coupon-toggle {
	margin: .8rem 0;
}

body.hgb-checkout-surface .woocommerce-form-login-toggle .woocommerce-info,
body.hgb-checkout-surface .woocommerce-form-coupon-toggle .woocommerce-info {
	margin-bottom: 0 !important;
	padding: .75rem 1rem !important;
	border-left-width: 3px !important;
	background: rgba(255, 250, 241, .65) !important;
	box-shadow: none !important;
	font-size: .93rem;
}

body.hgb-checkout-surface form.login,
body.hgb-checkout-surface form.checkout_coupon {
	max-width: 100% !important;
	margin: 0 0 1rem !important;
	padding: 1.25rem !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	background: var(--hgb-checkout-paper) !important;
	box-shadow: none !important;
}

/* A neutral frame lets Apple Pay / Google Pay / Amazon Pay keep their own
 * recognizable button colors without making the page look like three brands
 * fighting for the same space. */
body.hgb-checkout-surface .wcpay-express-checkout-wrapper {
	clear: both;
	margin: 1.6rem 0 1.7rem !important;
	padding: 1.15rem !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	background: var(--hgb-checkout-paper) !important;
	box-shadow: 0 10px 28px rgba(42, 31, 19, .05) !important;
}

body.hgb-checkout-surface .wcpay-express-checkout-wrapper::before {
	content: "Pay quickly with";
	display: block;
	margin: 0 0 .8rem;
	color: var(--hgb-checkout-forest);
	font: 800 .82rem/1.2 "DM Mono", monospace;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.hgb-checkout-surface #wcpay-express-checkout-element {
	min-height: 48px;
}

body.hgb-checkout-surface #wcpay-express-checkout-button-separator {
	margin: 1rem 0 0 !important;
	color: var(--hgb-checkout-muted) !important;
	font-size: .86rem;
	font-weight: 700;
}

/* Billing is the left workbench; the order and payment are the right handoff. */
body.hgb-checkout-surface form.checkout {
	margin: 0 !important;
	font-family: "Source Sans 3", "Segoe UI", system-ui, sans-serif !important;
}

body.hgb-checkout-surface form.checkout::after {
	content: "";
	display: table;
	clear: both;
}

body.hgb-checkout-surface #customer_details {
	float: left !important;
	width: 59% !important;
	margin: 0 3.2% 0 0 !important;
	padding: clamp(1.35rem, 3vw, 2.25rem) !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	border-top: 6px solid var(--hgb-checkout-forest) !important;
	background: var(--hgb-checkout-paper) !important;
	box-shadow: 0 16px 38px rgba(42, 31, 19, .07) !important;
}

body.hgb-checkout-surface #customer_details .col-1,
body.hgb-checkout-surface #customer_details .col-2 {
	float: none !important;
	width: 100% !important;
	padding: 0 !important;
}

body.hgb-checkout-surface #customer_details .col-2 {
	display: none !important;
}

body.hgb-checkout-surface .woocommerce-billing-fields h3,
body.hgb-checkout-surface .woocommerce-additional-fields h3 {
	margin: 0 0 1.35rem !important;
	padding: 0 0 .9rem !important;
	border-bottom: 1px solid var(--hgb-checkout-line) !important;
	color: var(--hgb-checkout-forest) !important;
	font: 400 clamp(1.8rem, 3vw, 2.45rem)/1 "DM Serif Display", Georgia, serif !important;
	letter-spacing: -.02em;
}

body.hgb-checkout-surface .woocommerce-additional-fields {
	margin-top: 1.6rem;
	padding-top: 1.6rem;
	border-top: 1px solid var(--hgb-checkout-line);
}

body.hgb-checkout-surface .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	column-gap: 1rem;
}

body.hgb-checkout-surface .woocommerce form .form-row {
	float: none !important;
	width: auto !important;
	margin: 0 0 1.05rem !important;
	padding: 0 !important;
}

body.hgb-checkout-surface .woocommerce form .form-row.form-row-wide {
	grid-column: 1 / -1;
}

body.hgb-checkout-surface .woocommerce form .form-row label {
	display: block;
	margin: 0 0 .35rem !important;
	color: var(--hgb-checkout-forest) !important;
	font-size: .94rem !important;
	font-weight: 800 !important;
	line-height: 1.3;
}

body.hgb-checkout-surface .woocommerce form .form-row label .required {
	color: var(--hgb-checkout-danger) !important;
}

body.hgb-checkout-surface .woocommerce form .form-row label .optional {
	color: var(--hgb-checkout-muted) !important;
	font-weight: 600;
}

body.hgb-checkout-surface .woocommerce form .form-row input.input-text,
body.hgb-checkout-surface .woocommerce form .form-row select,
body.hgb-checkout-surface .woocommerce form .form-row textarea,
body.hgb-checkout-surface .woocommerce form .form-row .select2-selection--single {
	box-sizing: border-box;
	width: 100% !important;
	min-height: 3.15rem !important;
	padding: .7rem .82rem !important;
	border: 1px solid #b8aa97 !important;
	border-radius: 3px !important;
	background: #fffdf8 !important;
	box-shadow: none !important;
	color: var(--hgb-checkout-ink) !important;
	font: 600 1rem/1.35 "Source Sans 3", sans-serif !important;
}

body.hgb-checkout-surface .woocommerce form .form-row textarea {
	min-height: 6rem !important;
}

body.hgb-checkout-surface .woocommerce form .form-row input::placeholder,
body.hgb-checkout-surface .woocommerce form .form-row textarea::placeholder {
	color: #74695b !important;
	opacity: 1;
}

body.hgb-checkout-surface .woocommerce form .form-row input:focus,
body.hgb-checkout-surface .woocommerce form .form-row select:focus,
body.hgb-checkout-surface .woocommerce form .form-row textarea:focus,
body.hgb-checkout-surface .woocommerce form .form-row .select2-container--focus .select2-selection--single {
	outline: 3px solid rgba(200, 143, 76, .28) !important;
	outline-offset: 1px;
	border-color: var(--hgb-checkout-brass) !important;
}

body.hgb-checkout-surface .select2-container {
	width: 100% !important;
}

body.hgb-checkout-surface .select2-container .select2-selection--single {
	display: flex;
	align-items: center;
	height: auto !important;
}

body.hgb-checkout-surface .select2-container .select2-selection__rendered {
	padding: 0 !important;
	color: var(--hgb-checkout-ink) !important;
	line-height: 1.35 !important;
}

body.hgb-checkout-surface .select2-container .select2-selection__arrow {
	top: 50% !important;
	transform: translateY(-50%);
}

/* Select2 keeps the native select for keyboard and screen-reader users. Keep
 * that control visually hidden instead of letting the checkout field styling
 * give it a full-width box that creates horizontal overflow on mobile. */
body.hgb-checkout-surface .woocommerce form .form-row select.select2-hidden-accessible {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	min-height: 0 !important;
	margin: -1px !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	white-space: nowrap !important;
}

body.hgb-checkout-surface #mailpoet_woocommerce_checkout_optin {
	accent-color: var(--hgb-checkout-forest);
}

body.hgb-checkout-surface label[data-automation-id="woo-commerce-subscription-opt-in"] {
	display: flex;
	align-items: flex-start;
	gap: .55rem;
	margin: .15rem 0 0 !important;
	color: var(--hgb-checkout-muted) !important;
	font-size: .9rem !important;
	font-weight: 600 !important;
	line-height: 1.35;
}

/* Order summary and payment card */
body.hgb-checkout-surface #order_review_heading {
	float: right !important;
	width: 37.8% !important;
	clear: right !important;
	margin: 0 !important;
	padding: 1.35rem 1.45rem !important;
	border: 1px solid var(--hgb-checkout-forest) !important;
	border-bottom: 0 !important;
	background: var(--hgb-checkout-forest) !important;
	color: var(--hgb-checkout-paper) !important;
	font: 400 clamp(1.75rem, 3vw, 2.35rem)/1 "DM Serif Display", Georgia, serif !important;
	letter-spacing: -.02em;
}

body.hgb-checkout-surface #order_review {
	float: right !important;
	width: 37.8% !important;
	clear: right !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	border-top: 0 !important;
	background: var(--hgb-checkout-paper) !important;
	box-shadow: 0 16px 38px rgba(42, 31, 19, .07) !important;
}

body.hgb-checkout-surface table.shop_table {
	width: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-collapse: collapse !important;
	background: transparent !important;
	color: var(--hgb-checkout-ink) !important;
}

body.hgb-checkout-surface table.shop_table th,
body.hgb-checkout-surface table.shop_table td {
	padding: .95rem 1.25rem !important;
	border: 0 !important;
	border-bottom: 1px solid var(--hgb-checkout-line) !important;
	background: transparent !important;
	color: var(--hgb-checkout-ink) !important;
	font-size: .98rem !important;
	font-weight: 600 !important;
	vertical-align: top;
}

body.hgb-checkout-surface table.shop_table thead th {
	padding-top: 1.15rem !important;
	color: var(--hgb-checkout-muted) !important;
	font: 700 .73rem/1.2 "DM Mono", monospace !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.hgb-checkout-surface table.shop_table tfoot th,
body.hgb-checkout-surface table.shop_table tfoot td {
	font-weight: 800 !important;
}

body.hgb-checkout-surface table.shop_table tr.order-total th,
body.hgb-checkout-surface table.shop_table tr.order-total td {
	padding-top: 1.15rem !important;
	padding-bottom: 1.15rem !important;
	border-bottom: 0 !important;
	color: var(--hgb-checkout-forest) !important;
	font-size: 1.12rem !important;
}

body.hgb-checkout-surface table.shop_table tr.order-total td strong,
body.hgb-checkout-surface table.shop_table tr.order-total td .woocommerce-Price-amount,
body.hgb-checkout-surface table.shop_table tr.order-total td .woocommerce-Price-currencySymbol {
	color: var(--hgb-checkout-forest) !important;
}

body.hgb-checkout-surface table.shop_table .product-quantity {
	color: var(--hgb-checkout-muted) !important;
	font-weight: 700;
}

body.hgb-checkout-surface #payment {
	margin: 0 !important;
	padding: 1.25rem !important;
	border-top: 1px solid var(--hgb-checkout-line) !important;
	background: var(--hgb-checkout-paper) !important;
}

body.hgb-checkout-surface #payment ul.payment_methods,
body.hgb-checkout-surface #payment ul.wc_payment_methods {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.hgb-checkout-surface #payment ul.payment_methods li,
body.hgb-checkout-surface #payment ul.wc_payment_methods li {
	margin: 0 !important;
	padding: .78rem .85rem !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	background: #fffdf8 !important;
}

body.hgb-checkout-surface #payment ul.payment_methods li + li,
body.hgb-checkout-surface #payment ul.wc_payment_methods li + li {
	margin-top: .55rem !important;
}

body.hgb-checkout-surface #payment ul.payment_methods li > label,
body.hgb-checkout-surface #payment ul.wc_payment_methods li > label {
	color: var(--hgb-checkout-forest) !important;
	font-size: .98rem !important;
	font-weight: 800 !important;
}

body.hgb-checkout-surface #payment input.input-radio {
	accent-color: var(--hgb-checkout-forest);
}

body.hgb-checkout-surface #payment .payment_box {
	margin: .8rem -.1rem -.1rem !important;
	padding: .75rem !important;
	border: 1px solid var(--hgb-checkout-line) !important;
	background: var(--hgb-checkout-paper-warm) !important;
	color: var(--hgb-checkout-ink) !important;
}

body.hgb-checkout-surface #payment .payment_box::before {
	border-bottom-color: var(--hgb-checkout-paper-warm) !important;
}

body.hgb-checkout-surface #payment .wcpay-upe-form,
body.hgb-checkout-surface #payment .wcpay-upe-element,
body.hgb-checkout-surface #payment .StripeElement {
	color: var(--hgb-checkout-ink) !important;
	opacity: 1 !important;
	filter: none !important;
}

body.hgb-checkout-surface .place-order {
	margin: 0 !important;
	padding: 1rem 0 0 !important;
}

body.hgb-checkout-surface .woocommerce-privacy-policy-text {
	margin: 0 0 1rem !important;
	color: var(--hgb-checkout-muted) !important;
	font-size: .86rem !important;
	font-weight: 600;
	line-height: 1.45;
}

body.hgb-checkout-surface .woocommerce-privacy-policy-text a {
	color: var(--hgb-checkout-forest) !important;
	font-weight: 800;
	text-underline-offset: .16em;
}

body.hgb-checkout-surface #place_order,
body.hgb-checkout-surface #payment button[type="submit"] {
	width: 100% !important;
	min-height: 3.4rem !important;
	margin: 0 !important;
	padding: .85rem 1rem !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--hgb-checkout-brass) !important;
	box-shadow: none !important;
	color: var(--hgb-checkout-ink) !important;
	font: 800 1.02rem/1 "Source Sans 3", sans-serif !important;
	letter-spacing: .01em;
	text-shadow: none !important;
}

body.hgb-checkout-surface #place_order:hover,
body.hgb-checkout-surface #payment button[type="submit"]:hover,
body.hgb-checkout-surface #place_order:focus-visible,
body.hgb-checkout-surface #payment button[type="submit"]:focus-visible {
	background: var(--hgb-checkout-brass-light) !important;
	color: var(--hgb-checkout-ink) !important;
}

body.hgb-checkout-surface a {
	color: var(--hgb-checkout-forest);
}

body.hgb-checkout-surface a:hover,
body.hgb-checkout-surface a:focus-visible {
	color: #8b5427;
}

/* The right-hand card must become a normal reading order on smaller screens. */
@media (max-width: 921px) {
	body.hgb-checkout-surface .site-content > .ast-container,
	body.hgb-checkout-surface .ast-page-builder-template .site-content > .ast-container,
	.hgb-checkout-bar__inner {
		width: min(100% - 32px, 720px) !important;
	}

	.hgb-checkout-intro {
		margin-top: 2.4rem;
	}

	body.hgb-checkout-surface #customer_details,
	body.hgb-checkout-surface #order_review_heading,
	body.hgb-checkout-surface #order_review {
		float: none !important;
		width: 100% !important;
		margin-right: 0 !important;
	}

	body.hgb-checkout-surface #order_review_heading {
		margin-top: 1.45rem !important;
	}
}

@media (max-width: 640px) {
	body.hgb-checkout-surface {
		font-size: 16px;
	}

	.hgb-checkout-bar__inner {
		min-height: 70px;
	}

	.hgb-checkout-bar__brand img {
		width: 40px;
		height: 40px;
	}

	.hgb-checkout-bar__brand strong {
		font-size: .98rem;
	}

	.hgb-checkout-bar__right {
		gap: 0;
		font-size: .86rem;
	}

	.hgb-checkout-bar__right a {
		display: none;
	}

	.hgb-checkout-intro h1 {
		max-width: 11ch;
		font-size: clamp(2.75rem, 14vw, 4.2rem) !important;
	}

	.hgb-checkout-intro__proof {
		display: grid;
		gap: .55rem;
	}

	body.hgb-checkout-surface .woocommerce-message,
	body.hgb-checkout-surface .woocommerce-info,
	body.hgb-checkout-surface .woocommerce-error {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	body.hgb-checkout-surface .woocommerce-message a.button,
	body.hgb-checkout-surface .woocommerce-info a.button {
		margin-left: 0 !important;
	}

	body.hgb-checkout-surface .woocommerce-billing-fields__field-wrapper {
		display: block;
	}

	body.hgb-checkout-surface #customer_details {
		padding: 1.2rem !important;
	}

	body.hgb-checkout-surface #order_review_heading {
		padding: 1.15rem 1.2rem !important;
	}

	body.hgb-checkout-surface table.shop_table th,
	body.hgb-checkout-surface table.shop_table td {
		padding-right: 1rem !important;
		padding-left: 1rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.hgb-checkout-surface * {
		transition: none !important;
		scroll-behavior: auto !important;
	}
}
