/**
 * Checkout page customization.
 */

/* Keep the theme's Checkout Block design while presenting Billing first. */
.wp-block-woocommerce-checkout:not(.bwc-billing-first-checkout) .wp-block-woocommerce-checkout-billing-address-block,
.wp-block-woocommerce-checkout:not(.bwc-billing-first-checkout) .wp-block-woocommerce-checkout-shipping-address-block {
	visibility: hidden;
}

.wp-block-woocommerce-checkout.bwc-billing-first-checkout .wp-block-woocommerce-checkout-billing-address-block,
.wp-block-woocommerce-checkout.bwc-billing-first-checkout .wp-block-woocommerce-checkout-shipping-address-block {
	visibility: visible;
}

.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-fields-block {
	display: flex !important;
	flex-direction: column !important;
}

.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-contact-information-block { order: 10; }
.wp-block-woocommerce-checkout .bwc-billing-contact {
	margin-top: 0;
	margin-bottom: 0;
	width: 100%;
}

/* The single recipient input updates WooCommerce's native shipping phone. */
.wp-block-woocommerce-checkout .bwc-native-recipient-phone,
.wp-block-woocommerce-checkout .wc-block-components-address-form > *:has(#shipping-phone),
.wp-block-woocommerce-checkout .wc-block-components-address-form > *:has(#shipping_phone),
.wp-block-woocommerce-checkout #additional_info:not(:has(input, select, textarea)) {
	display: none !important;
}

.wp-block-woocommerce-checkout label.bwc-required-label::after {
	content: ' *';
	color: #c62828 !important;
}

.wp-block-woocommerce-checkout .required,
.woocommerce-checkout .required {
	color: #c62828 !important;
}

.bwc-billing-contact .wc-block-components-checkout-step__title {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.bwc-billing-contact .wc-block-components-checkout-step__content {
	padding: 0;
}
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-billing-address-block { order: 20; }
.wp-block-woocommerce-checkout .wc-block-checkout__billing-fields { order: 20; }
.bwc-billing-first-checkout .bwc-billing-order-fields { order: 21; }
.bwc-billing-first-checkout .bwc-ship-different-address { order: 22; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-shipping-method-block { order: 30; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-pickup-options-block { order: 31; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-shipping-address-block { order: 40; }
.wp-block-woocommerce-checkout .wc-block-checkout__shipping-fields { order: 40; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-shipping-methods-block { order: 50; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-payment-block { order: 60; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block { order: 70; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-note-block { order: 71; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-terms-block { order: 80; }
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-actions-block { order: 90; }

.bwc-billing-first-checkout .wc-block-checkout__use-address-for-billing {
	display: none !important;
}

.bwc-ship-different-address {
	align-items: center;
	cursor: pointer;
	display: flex !important;
	font-size: 15px;
	font-weight: 600;
	gap: 10px;
	margin: 4px 0 22px !important;
}

.bwc-ship-different-address input {
	appearance: auto !important;
	height: 18px !important;
	margin: 0 !important;
	opacity: 1 !important;
	position: static !important;
	width: 18px !important;
}

body.bwc-use-billing-for-shipping .bwc-billing-first-checkout .wp-block-woocommerce-checkout-shipping-address-block,
body.bwc-use-billing-for-shipping .bwc-billing-first-checkout .wc-block-checkout__shipping-fields {
	display: none !important;
}

.bwc-billing-order-fields {
	display: block;
	margin: 0 0 8px;
	width: 100%;
}

.bwc-billing-order-fields > * {
	width: 100%;
}

/* WooCommerce address flow: Billing first, optional alternate shipping. */
.woocommerce-checkout #ship-to-different-address {
	display: block !important;
	margin: 18px 0 12px !important;
}

.woocommerce-checkout #ship-to-different-address label {
	align-items: center;
	cursor: pointer;
	display: inline-flex !important;
	font-size: 15px;
	font-weight: 600;
	gap: 10px;
	line-height: 1.4;
}

.woocommerce-checkout #ship-to-different-address-checkbox {
	appearance: auto !important;
	display: inline-block !important;
	flex: 0 0 18px;
	height: 18px !important;
	margin: 0 !important;
	opacity: 1 !important;
	position: static !important;
	visibility: visible !important;
	width: 18px !important;
}

.woocommerce-checkout #ship-to-different-address label span {
	margin-left: 0 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order {
	background: #ffffff !important;
	border: 1px solid var(--e-global-color-vamtam_accent_7, #FFDEE9) !important;
	border-radius: 8px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
	color: var(--e-global-color-vamtam_accent_6, #000000);
	padding: 22px 24px 28px !important;
}

body table.shop_table.wooaio-checkout-review-order-table,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tbody,
body table.shop_table.wooaio-checkout-review-order-table tbody {
	display: table-row-group !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tr,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td,
body table.shop_table.wooaio-checkout-review-order-table tr,
body table.shop_table.wooaio-checkout-review-order-table td {
	box-sizing: border-box;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table thead {
	display: none !important;
}

.wooaio_main_form table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item {
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr);
	align-items: center;
	column-gap: 16px;
	border-bottom: 1px solid var(--em-border-color, #e5e5e5);
	padding: 14px 0 !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item:last-child {
	border-bottom: 0;
}

.wooaio_main_form table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item td,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item td {
	border: 0 !important;
	display: block;
	padding: 0 !important;
	vertical-align: middle !important;
}

body table.shop_table.wooaio-checkout-review-order-table td.product-image,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image,
body table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image {
	grid-column: 1;
	width: 72px !important;
}

body table.shop_table.wooaio-checkout-review-order-table td.product-image .wooaio-product-summary-image,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image .wooaio-product-summary-image,
body table.shop_table.wooaio-checkout-review-order-table td.product-image .bwc-checkout-product-media,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image .bwc-checkout-product-media,
body table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image .bwc-checkout-product-media,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image .bwc-checkout-product-media {
	display: block;
	position: relative;
	width: 72px;
}

body table.shop_table.wooaio-checkout-review-order-table td.product-image img,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image img,
body table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image img,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image img {
	aspect-ratio: 1;
	background: var(--e-global-color-vamtam_accent_8, #F6F4F2);
	border: 1px solid var(--em-border-color, #e5e5e5);
	border-radius: 8px !important;
	display: block;
	height: 72px !important;
	max-width: none !important;
	object-fit: cover;
	width: 72px !important;
}

body table.shop_table.wooaio-checkout-review-order-table td.product-image .product-quantity,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image .product-quantity,
body table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image .product-quantity,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.bwc-created-product-image .product-quantity {
	align-items: center;
	background: var(--e-global-color-vamtam_accent_1, #FA3C7A) !important;
	border: 2px solid #ffffff !important;
	border-radius: 999px;
	color: #ffffff !important;
	display: inline-flex;
	font-size: 11px !important;
	font-weight: 700 !important;
	justify-content: center;
	line-height: 1;
	min-height: 20px !important;
	min-width: 20px !important;
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(35%, -35%);
}

body table.shop_table.wooaio-checkout-review-order-table td.product-detail,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail {
	grid-column: 2;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	column-gap: 14px;
	min-width: 0;
	width: 100% !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail:before,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail:before {
	display: none !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child {
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	display: block !important;
	font-family: var(--e-global-typography-vamtam_primary_font-font-family, "Montserrat"), sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .wooaio-product-summary-image,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-image,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child img,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child .product-quantity,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .wooaio-product-summary-image,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-image,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child img,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child .product-quantity {
	display: none !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-name,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-name,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .bwc-checkout-row-title,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .bwc-checkout-row-title {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	display: -webkit-box !important;
	font-family: var(--e-global-typography-vamtam_primary_font-font-family, "Montserrat"), sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-price,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .checkout-review-product-price {
	display: none !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail dl.variation {
	grid-column: 1;
	color: var(--e-global-color-vamtam_accent_4, #6A6A6A) !important;
	font-size: 12px !important;
	line-height: 1.4 !important;
	margin: 4px 0 0 !important;
	min-width: 0;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail dl.variation dt,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail dl.variation dd,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail dl.variation p {
	margin: 0 !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity,
.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .bwc-checkout-row-price,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .bwc-checkout-row-price {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-items: center !important;
	display: flex !important;
	justify-content: flex-end !important;
	margin: 0 !important;
	text-align: right;
	white-space: nowrap;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity > div:first-child,
body table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity > div:first-child {
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity > div:last-child:empty {
	display: none !important;
}

.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .woocommerce-Price-amount {
	font-size: inherit !important;
	font-weight: inherit !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order .checkout-review-product-price {
	display: none !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order .checkout-review-product-image img {
	border-radius: 8px !important;
}

/*
 * Block checkout: keep every address / additional field on its own full-width
 * row on phones.
 *
 * WooCommerce 9+/11 checkout.css lays the address form out with CONTAINER
 * queries, not viewport media queries:
 *   @container (min-width: 700px)                        -> flex, 50% pairs
 *   @container (min-width: 520px) and (max-width: 699px) -> flex, 50% pairs
 *   @container (min-width: 400px) and (max-width: 519px) -> flex, 50% pairs
 *   below 400px                                          -> single column
 *
 * The container is `.wp-block-woocommerce-checkout` (container-type: inline-size),
 * so the width that matters is the checkout block's OWN width, not the device
 * viewport. On a phone that container can still measure over 400px (Safari
 * viewport, theme container, block padding), the 400-519px band matches, and
 * WooCommerce deliberately pairs fields two-up at 50%: Last name, Alternate
 * phone, State / County, Phone, WhatsApp No. and the Purpose select all
 * collapse to half width and break into two columns.
 *
 * These rules sit OUTSIDE any @container/@media query so they are not subject
 * to the container condition, and `!important` beats WooCommerce's plain
 * `flex: 1 0 calc(50% - 12px)`. The @container block below re-states the same
 * full-width layout inside the exact bands WooCommerce uses, so nothing in the
 * plugin can win the pairing back.
 */
body .wp-block-woocommerce-checkout .wc-block-components-address-form,
body .wp-block-woocommerce-checkout .wc-block-components-address-form-wrapper,
body .wp-block-woocommerce-checkout .wc-block-components-address-address-wrapper {
	display: block !important;
}

body .wp-block-woocommerce-checkout .wc-block-components-address-form > *,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-text-input,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-select-input,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-state-input,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-country-input,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-blocks-components-select,
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-checkbox {
	box-sizing: border-box !important;
	display: block !important;
	flex: 0 0 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
}

/* The "Use same address for billing" checkbox row keeps its natural width. */
body .wp-block-woocommerce-checkout .wc-block-components-address-form .wc-block-components-checkbox {
	width: auto !important;
	max-width: 100% !important;
}

@container (min-width: 400px) {
	body .wp-block-woocommerce-checkout .wc-block-components-address-form {
		display: block !important;
	}

	body .wp-block-woocommerce-checkout .wc-block-components-address-form > * {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
	}
}

body #orddd-lite-checkout-fields,
.woocommerce-checkout #orddd-lite-checkout-fields {
	margin: 0 0 18px;
	width: 100%;
}

body #orddd-lite-checkout-fields #e_deliverydate_field,
.woocommerce-checkout #orddd-lite-checkout-fields #e_deliverydate_field,
body p#e_deliverydate_field,
.woocommerce-checkout p#e_deliverydate_field {
	display: block !important;
	margin: 0 0 16px !important;
	position: relative !important;
	width: 100% !important;
	padding-top: 0 !important;
}

body #orddd-lite-checkout-fields #e_deliverydate_field label,
.woocommerce-checkout #orddd-lite-checkout-fields #e_deliverydate_field label,
body p#e_deliverydate_field label,
body p#e_deliverydate_field:not(.wooaio-anim-wrap) label,
body .wooaio_main_form p#e_deliverydate_field label.wooaio-form-control-label,
.woocommerce-checkout p#e_deliverydate_field label {
	background: transparent !important;
	bottom: auto !important;
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	display: block !important;
	font-family: var(--e-global-typography-vamtam_primary_font-font-family, "Montserrat"), sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	margin: 0 0 7px !important;
	padding: 0 !important;
	position: static !important;
	inset: auto !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	width: auto !important;
	height: auto !important;
	pointer-events: auto !important;
}

body #orddd-lite-checkout-fields #e_deliverydate,
.woocommerce-checkout #orddd-lite-checkout-fields #e_deliverydate,
body p#e_deliverydate_field #e_deliverydate,
.woocommerce-checkout p#e_deliverydate_field #e_deliverydate {
	background: #ffffff !important;
	border: 1px solid var(--em-border-color, #e5e5e5) !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	font-family: var(--e-global-typography-vamtam_primary_font-font-family, "Montserrat"), sans-serif !important;
	font-size: 14px !important;
	height: 46px !important;
	line-height: 46px !important;
	margin: 0 !important;
	max-width: 100% !important;
	padding: 0 14px !important;
	width: 100% !important;
}

body #orddd-lite-checkout-fields #e_deliverydate::placeholder,
.woocommerce-checkout #orddd-lite-checkout-fields #e_deliverydate::placeholder,
body p#e_deliverydate_field #e_deliverydate::placeholder,
.woocommerce-checkout p#e_deliverydate_field #e_deliverydate::placeholder {
	color: transparent !important;
	opacity: 0 !important;
}

/*
 * Order Delivery Date Lite renders a WooCommerce Blocks text input on the
 * block checkout. Keep its label permanently floated above the selected date.
 * The theme otherwise overrides WooCommerce's active-label transform, causing
 * the two lines to occupy the same space on mobile.
 */
body .orddd-lite-checkout-fields .wc-block-components-text-input {
	box-sizing: border-box !important;
	line-height: 0 !important;
	margin-top: 0 !important;
	position: relative !important;
	width: 100% !important;
}

body .orddd-lite-checkout-fields .wc-block-components-text-input label[for="e_deliverydate"] {
	bottom: auto !important;
	height: auto !important;
	left: 14px !important;
	line-height: 22px !important;
	margin: 0 !important;
	max-width: calc(100% - 28px) !important;
	padding: 0 !important;
	position: absolute !important;
	right: auto !important;
	top: 6px !important;
	transform: scale(0.82) !important;
	transform-origin: top left !important;
	white-space: nowrap !important;
	z-index: 1 !important;
}

body .orddd-lite-checkout-fields .wc-block-components-text-input input#e_deliverydate,
body .orddd-lite-checkout-fields .wc-block-components-text-input.is-active input#e_deliverydate,
body .orddd-lite-checkout-fields .wc-block-components-text-input input#e_deliverydate:focus {
	box-sizing: border-box !important;
	height: 50px !important;
	line-height: 25px !important;
	margin: 0 !important;
	min-height: 50px !important;
	padding: 24px 14px 7px !important;
	width: 100% !important;
}

body .orddd-lite-checkout-fields .wc-block-components-text-input input#e_deliverydate::placeholder {
	opacity: 1 !important;
}

/*
 * ThemeHigh's delivery-date block uses a standalone label followed by a
 * React date input. Force normal document flow so the label always owns a
 * separate line above the selected date instead of sitting on top of it.
 */
body .wp-block-woocommerce-checkout .th-datepicker-field > label {
	bottom: auto !important;
	display: block !important;
	height: auto !important;
	inset: auto !important;
	left: auto !important;
	line-height: 1.4 !important;
	margin: 0 0 7px !important;
	padding: 0 !important;
	position: static !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	width: auto !important;
}

body .wp-block-woocommerce-checkout .th-datepicker-field > label + .wp-block-th-delivery-date,
body .wp-block-woocommerce-checkout .wp-block-th-delivery-date.wc-block-components-text-input {
	line-height: normal !important;
	margin-top: 0 !important;
	position: relative !important;
	width: 100% !important;
}

body .wp-block-woocommerce-checkout .wp-block-th-delivery-date .react-datepicker-wrapper,
body .wp-block-woocommerce-checkout .wp-block-th-delivery-date .react-datepicker__input-container {
	display: block !important;
	width: 100% !important;
}

body .wp-block-woocommerce-checkout .wp-block-th-delivery-date input.delivery-date-picker {
	box-sizing: border-box !important;
	height: 50px !important;
	line-height: 25px !important;
	margin: 0 !important;
	min-height: 50px !important;
	padding: 12px 14px !important;
	width: 100% !important;
}

/* Keep every checkout question on its own line above the field. */
body .wp-block-woocommerce-checkout .wc-block-components-text-input,
body .wp-block-woocommerce-checkout .wc-block-components-select-input,
body .wp-block-woocommerce-checkout .wc-blocks-components-select,
body .wp-block-woocommerce-checkout .th-datepicker-field {
	display: flex !important;
	flex-direction: column !important;
	line-height: normal !important;
	padding-top: 0 !important;
	position: relative !important;
}

body .wp-block-woocommerce-checkout .wc-block-components-text-input > label,
body .wp-block-woocommerce-checkout .wc-block-components-select-input label,
body .wp-block-woocommerce-checkout .wc-blocks-components-select label,
body .wp-block-woocommerce-checkout .th-datepicker-field > label,
body .wp-block-woocommerce-checkout .orddd-lite-checkout-fields .wc-block-components-text-input label[for="e_deliverydate"] {
	background: transparent !important;
	bottom: auto !important;
	clip: auto !important;
	clip-path: none !important;
	color: var(--e-global-color-vamtam_accent_6, #000000) !important;
	display: block !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	height: auto !important;
	inset: auto !important;
	left: auto !important;
	line-height: 1.4 !important;
	margin: 0 0 7px !important;
	max-width: 100% !important;
	order: -1 !important;
	overflow: visible !important;
	padding: 0 !important;
	pointer-events: auto !important;
	position: static !important;
	right: auto !important;
	top: auto !important;
	transform: none !important;
	white-space: normal !important;
	width: 100% !important;
}

body .wp-block-woocommerce-checkout .wc-block-components-text-input > input,
body .wp-block-woocommerce-checkout .wc-block-components-text-input > textarea,
body .wp-block-woocommerce-checkout .wc-block-components-text-input.is-active > input,
body .wp-block-woocommerce-checkout .wc-block-components-text-input.is-active > textarea,
body .wp-block-woocommerce-checkout .wc-block-components-text-input > input:focus,
body .wp-block-woocommerce-checkout .wc-block-components-text-input > textarea:focus,
body .wp-block-woocommerce-checkout .orddd-lite-checkout-fields .wc-block-components-text-input input#e_deliverydate,
body .wp-block-woocommerce-checkout .orddd-lite-checkout-fields .wc-block-components-text-input.is-active input#e_deliverydate,
body .wp-block-woocommerce-checkout .orddd-lite-checkout-fields .wc-block-components-text-input input#e_deliverydate:focus {
	box-sizing: border-box !important;
	height: 50px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	min-height: 50px !important;
	order: 0 !important;
	padding: 12px 14px !important;
	width: 100% !important;
}

body .wp-block-woocommerce-checkout .wc-block-components-text-input > textarea,
body .wp-block-woocommerce-checkout .wc-block-components-text-input.is-active > textarea,
body .wp-block-woocommerce-checkout .wc-block-components-text-input > textarea:focus {
	height: auto !important;
	min-height: 100px !important;
}

body .wp-block-woocommerce-checkout .wc-block-components-select-input select,
body .wp-block-woocommerce-checkout .wc-blocks-components-select select {
	box-sizing: border-box !important;
	height: 50px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	min-height: 50px !important;
	order: 0 !important;
	padding: 12px 40px 12px 14px !important;
	width: 100% !important;
}

/* Use one consistent vertical gap between every checkout question. */
body .wp-block-woocommerce-checkout .wc-block-components-address-form > *,
body .wp-block-woocommerce-checkout .bwc-billing-order-fields > *,
body .wp-block-woocommerce-checkout .wc-block-checkout__additional-fields__field {
	margin-bottom: 18px !important;
	margin-top: 0 !important;
}

body .wp-block-woocommerce-checkout .wc-block-checkout__additional-fields__field > .wc-block-components-text-input,
body .wp-block-woocommerce-checkout .wc-block-checkout__additional-fields__field > .wc-block-components-select-input,
body .wp-block-woocommerce-checkout .wc-block-checkout__additional-fields__field > .wc-blocks-components-select,
body .wp-block-woocommerce-checkout .wc-block-components-country-input > .wc-block-components-select-input,
body .wp-block-woocommerce-checkout .wc-block-components-state-input > .wc-block-components-select-input {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

body .wp-block-woocommerce-checkout .bwc-billing-order-fields > :last-child,
body .wp-block-woocommerce-checkout .wc-block-components-address-form > :last-child {
	margin-bottom: 18px !important;
}

body .wp-block-woocommerce-checkout input::placeholder,
body .wp-block-woocommerce-checkout textarea::placeholder,
body #orddd-lite-checkout-fields #e_deliverydate::placeholder {
	color: #777777 !important;
	opacity: 1 !important;
}

body #additional_info .wc-block-components-checkout-step__heading,
body #additional_info .wc-block-components-checkout-step__title,
.woocommerce-checkout #additional_info .wc-block-components-checkout-step__heading,
.woocommerce-checkout #additional_info .wc-block-components-checkout-step__title {
	display: none !important;
}

body .wc-block-checkout__add-note,
body .wc-block-components-payment-methods__save-card-info,
.woocommerce-checkout .wc-block-checkout__add-note,
.woocommerce-checkout .wc-block-components-payment-methods__save-card-info {
	display: none !important;
}

@media (max-width: 767px) {
	.woocommerce-checkout .woocommerce-checkout-review-order {
		padding: 18px 16px 24px !important;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table tbody tr.cart_item {
		grid-template-columns: 58px minmax(0, 1fr);
		column-gap: 12px;
		padding: 13px 0 !important;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image,
	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image .wooaio-product-summary-image,
	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image .bwc-checkout-product-media {
		width: 58px !important;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-image img {
		height: 58px !important;
		width: 58px !important;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail {
		column-gap: 10px;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail > div:first-child {
		font-size: 13px !important;
	}

	.woocommerce-checkout table.shop_table.wooaio-checkout-review-order-table td.product-detail .price-and-quantity > div:first-child {
		font-size: 13px !important;
	}
}
