.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
	display: flex;
	flex-wrap: wrap;
	column-gap: 12px;
	align-items: flex-start;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row {
	float: none !important;
	clear: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	width: 100%;
	box-sizing: border-box;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row.form-row-first,
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row.form-row-last {
	width: calc(50% - 6px);
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper {
	display: flex;
	flex-wrap: wrap;
	column-gap: 12px;
	align-items: flex-start;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row {
	float: none !important;
	clear: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	width: 100%;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row.form-row-first,
.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row.form-row-last {
	width: calc(50% - 6px);
	margin-right: 0 !important;
	margin-left: 0 !important;
}

/* Opt-in container: any custom checkout can add .icf-fields to inherit this layout. */
.icf-fields {
	display: flex;
	flex-wrap: wrap;
	column-gap: 12px;
	row-gap: 14px;
	align-items: flex-start;
}

.icf-fields > .form-row {
	float: none !important;
	clear: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	width: 100%;
	box-sizing: border-box;
}

.icf-fields > .form-row.form-row-first,
.icf-fields > .form-row.form-row-last {
	width: calc(50% - 6px);
	margin-right: 0 !important;
	margin-left: 0 !important;
}

.form-row.icf-conditionally-required label .optional {
	display: none;
}

.form-row.icf-conditionally-required label::after {
	content: " *";
	color: red;
	font-weight: 700;
}

/* Kept in the DOM for payment gateways that expect billing_country to exist. */
.icf-country-hidden {
	display: none !important;
}

.icf-email-hint {
	display: block;
	margin: 3px 0 0;
	font-size: 0.82em;
	color: #c07800;
}

@media (max-width: 600px) {
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row.form-row-first,
	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > .form-row.form-row-last,
	.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row.form-row-first,
	.woocommerce-account .woocommerce-address-fields__field-wrapper > .form-row.form-row-last {
		width: 100%;
	}

	/* Prevent iOS auto-zoom on focused inputs. */
	#billing_postcode,
	#billing_cpf,
	#billing_cnpj,
	#billing_rg,
	#billing_birthdate,
	#billing_cellphone,
	#billing_neighborhood,
	#billing_number {
		font-size: 16px;
	}
}
