:root{
	--field-gap: 15px;
}

form.woocommerce-checkout #order_review{
	border: 1px solid #DEDEDE;
	padding: 30px;
	border-radius: 10px;
	margin-top: -10px;
}

/* Clear the float after these fields */
.woocommerce-checkout #billing_address_2_field + .form-row {
	clear: both;
}

.shipping__table--multiple .shipping__list {
	display: flex;
	gap: 15px;
	align-items: stretch;
}

.shipping__table--multiple .shipping__list_item {
	flex: 1;
	height: auto;
}

.shipping__table--multiple .shipping__list_item > label {
	display: flex;
	width: 100%;
	height: 100%;
	flex-direction: column;
	align-items: center;
	border: 1px solid #d9e5dc;
	border-radius: 9px;
	padding: 30px;
	padding-bottom: 0;
	overflow: hidden;
	margin: 0;
	cursor: pointer;
}

.shipping__table--multiple .shipping__list_item > label:has(input[type="radio"]:checked) {
	border: 3px solid var(--fs-color-primary);
	margin: -2px;
	height: calc(100% + 4px);
	width: calc(100% + 4px);
}

.shipping__table--multiple .shipping__list_item > label:not(:has(input[type="radio"]:checked)) {
}

.shipping__table--multiple .shipping__list_item input[type="radio"] {
	flex-shrink: 0;
}

.shipping__table--multiple .shipping__list_item .shipping__list_label {
	font-weight: 600;
	font-size: 14.5px;
	line-height: 100%;
	padding-top: 20px;
}

.shipping__table--multiple .shipping__list_item .method-description {
	font-weight: 600;
	font-size: 12px;
	line-height: 100%;
	color: #9a9a9a;
}

.shipping__table--multiple .shipping__list_item .shipping__list_price {
	background: #f6f6f1;
	width: calc(100% + 60px);
	padding: 17px 0;
	margin: 0 -30px;
	text-align: center;
	margin-top: 10px;
}

.shipping__table--multiple .shipping__list_item .shipping__list_price,
.shipping__table--multiple .shipping__list_item .shipping__list_price * {
	color: var(--fs-color-primary);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
	line-height: 100%;
}

.shipping__table--multiple .shipping__list_item input[type="radio"],
.wc_payment_method:has(input[type="radio"]) label:before,
.checkout-personal-company-select label:has(input[type="radio"]):before {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 20px;
	height: 20px;
	border: 1px solid #69859D;
	border-radius: 50%;
	background-color: #00000000;
	cursor: pointer;
	margin: 30px 0 5px;
}

.shipping__table--multiple .shipping__list_item input[type="radio"]:checked,
.wc_payment_method:has(input[type="radio"]:checked) label:before,
.checkout-personal-company-select label:has(input[type="radio"]:checked):before {
	border: 5px solid #C6DA42;
}

.shipping__table--multiple td {
	border: none !important;
}

.shipping__list_title_wrapper{
	margin-bottom: auto;
}

.shipping__list_title_wrapper,
.shipping__list_title_wrapper > div{
	text-align: center !important;
}

.wc_payment_method:has(input[type="radio"]) label{
	display: flex !important;
	align-items: center;
	gap: 8px;
}

.wc_payment_method:has(input[type="radio"]) > label {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 32px 28px;
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	cursor: pointer;
	background: #1E3345;
	border-radius: 8px;
	color: #FFF;
}

.wc_payment_method:has(input[type="radio"]) label:before,
.checkout-personal-company-select label:has(input[type="radio"]):before {
	content: "";
	display: block;
	margin: 0;
}

.wc_payment_method input,
.checkout-personal-company-select label input[type="radio"] {
	display: none !important;
}

.wc_payment_method {
	border: none !important;
}

.checkout-personal-company-select label:has(input[type="radio"]) {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
}

.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection{
	height: 51px !important;
	box-shadow: none;
	border: 1px solid #DEDEDE;
	font-weight: 600;
	font-size: 16px;
	line-height: 100%;
	margin: 0;
	color: #6B6B6B;
	padding: 0 20px;
	border-radius: 8px;
}

.woocommerce-checkout .select2-selection{
	display: flex;
	align-items: center;
}

.woocommerce-checkout textarea{
	padding-top: .7em;
}

.woocommerce-checkout form p {
	margin-bottom: calc(10px + var(--field-gap));
}

.woocommerce-checkout form p.form-row-first{
	margin-right: var(--field-gap);
}

.woocommerce-checkout form p.form-row-first,
.woocommerce-checkout form p.form-row-last{
	width: calc((100% - var(--field-gap)) / 2)
}

.woocommerce-checkout.fl-labels .fl-wrap label[for]:first-child {
	left: 0px;
	top: -16px;
	padding: 0 5px;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.woocommerce-checkout .fl-wrap.fl-is-active > label[for]:first-child {
	opacity: 1;
}

.woocommerce-checkout .form-row .fl-is-active input,
.woocommerce-checkout .form-row .fl-is-active textarea,
.woocommerce-checkout .form-row .fl-is-active select {
	padding-top: 0;
	padding-bottom: 0;
}

.woocommerce-checkout .form-row .fl-is-active textarea {
	padding-top: 0.7em;
}

#main .woocommerce-checkout h3:not(#ship-to-different-address),
#main .woocommerce-checkout .h3 {
	font-weight: 700 !important;
	font-size: 16px !important;
	line-height: 154% !important;
	padding-bottom: 30px !important;
	margin-bottom: 0;
	padding-top: 35px !important;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #3b3b3b;
	font-family: Manrope;
}

.woocommerce-checkout h3#ship-to-different-address {
	padding: 10px 0;
}

.woocommerce-checkout h3#ship-to-different-address span,
.woocommerce-terms-and-conditions-checkbox-text,
.woocommerce-terms-and-conditions-checkbox-text *,
.woocommerce-checkout .create-account span{
	font-family: Manrope;
	font-weight: 700;
	font-size: 14px;
	line-height: 100%;
	color: #213236 !important;
}

.woocommerce-billing-fields {
	border: none !important;
	padding-top: 0 !important;
}

#main #customer_details .woocommerce-billing-fields h3{
	padding-top: 0 !important;
}

.checkout-item > div {
	display: flex;
	gap: 15px;
	align-items: center;
}

.checkout-item .product-thumbnail img {
	max-width: 66px;
	padding: 5px;
	border-radius: 12px;
	background: #f6f6f1;
}

.checkout-item .product-pricing {
	justify-content: flex-end;
}

.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table th {
	border-bottom: 0;
}

.woocommerce-checkout-review-order-table .order-total td,
.woocommerce-checkout-review-order-table .order-total th {
	border-top: 1px solid #AEAEAE;
}

.woocommerce-checkout-review-order-table tfoot * {
	font-weight: 600 !important;
	font-size: 15px !important;
	line-height: 24px !important;
}

.woocommerce-checkout-review-order-table tfoot .order-total th {
	font-weight: 700 !important;
	font-size: 18px !important;
	line-height: normal!important;
}

.woocommerce-checkout-review-order-table tfoot .order-total td {
	line-height: normal!important;
}

.woocommerce-checkout-review-order-table tfoot .order-total td:first-child {
	text-align: left;
	font-weight: 700;
	font-size: 16px;
}

.payment_methods p {
	font-size: .8em;
}

.woocommerce-checkout-review-order-table tfoot .order-total td *{
	font-size: 18px !important;
	line-height: normal!important;
}

.woocommerce-checkout-review-order-table tfoot .order-total .includes_tax {
	font-size: 10px!important;
}

.woocommerce-checkout-review-order-table tfoot .order-total .includes_tax .amount,
.woocommerce-checkout-review-order-table tfoot .order-total .includes_tax .woocommerce-Price-currencySymbol {
	font-size: 11px!important;
}



.woocommerce-checkout .checkout-coupon-form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.woocommerce-checkout .checkout-coupon-form button {
	height: 48px !important;
	max-width: 165px;
}

.coupon_code{
	flex: 1 ; /* flexible width for first two */
}
/* Make the 3rd element occupy the full width */
.coupon_result {
	flex: 0 0 100%; /* full width */
}

.woocommerce-checkout-review-order-table .cart-discount-total * {
	color: var(--fs-color-primary);
}

.woocommerce-checkout-review-order-table .cart-discount-total th {
	display: flex;
	align-items: center;
	gap: 7px;
}

.woocommerce-checkout-review-order-table .cart-discount-total th,
.woocommerce-checkout-review-order-table .cart-discount-total td {
	padding-bottom: 15px;
}

.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td {
	padding-top: 15px;
}

.woocommerce-checkout-review-order-table .cart-discount-total th:before {
	content: "";
	background-image: url(../percentage.svg);
	background-repeat: no-repeat;
	background-size: 10px 9px;
	background-position: center;
	background-color: var(--fs-color-primary);
	width: 18px;
	height: 18px;
	border-radius: 18px;
}

.woocommerce-checkout-review-order-table .checkout-item .product-info {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 0;
}

.woocommerce-checkout-review-order-table .checkout-item .product-title {
	text-align: left;
	font-weight: 600;
	font-size: 15px;
	line-height: 100%;
	color: #454648;
	margin: 0;
}

.woocommerce-checkout-review-order-table .checkout-item .product-pricing * {
	font-weight: 600;
	font-size: 14px;
	line-height: 100%;
	margin: 0;
}

.woocommerce-checkout-review-order-table .checkout-item .product-pricing .discount-badge {
	padding: 2px 6px;
}

.woocommerce-checkout label:has(input[type="checkbox"]),
.wpcf7-acceptance label,
.wpcf7-checkbox label{
	display: flex;
	align-items: center;
	cursor: pointer;
	font-weight: 400 !important;
	font-size: 16px;
	line-height: 100%;
}

.wpcf7-acceptance label,
.wpcf7-checkbox label{
	margin-bottom: 16px;
}

.woocommerce-checkout label:has(input[type="checkbox"]) a,
.wpcf7-acceptance a,
.wpcf7-checkbox a{
	text-decoration: underline;
	color: #222;
}

.woocommerce-checkout label:has(input[type="checkbox"]) a,
.woocommerce-checkout label:has(input[type="checkbox"]){
	color: #808080;
}

.woocommerce-checkout input[type="checkbox"],
.wpcf7-acceptance input[type="checkbox"],
.wpcf7-checkbox input[type="checkbox"]{
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 24px;
	height: 24px;
	border: none;
	border-radius: 5px;
	background-color: #FFF;
	border: 1px solid #AEAEAE;
	cursor: pointer;
	margin: 30px 0 5px;
	flex-shrink: 0;
	outline: none;
	position: relative;
}

.wpcf7-acceptance input[type="checkbox"],
.wpcf7-checkbox input[type="checkbox"]{
	margin: 0 10px 0 0;
}

.woocommerce-checkout input[type="checkbox"]:checked::after,
.wpcf7-acceptance input[type="checkbox"]:checked::after,
.wpcf7-checkbox input[type="checkbox"]:checked::after{
	content: '';
	background: url("data:image/svg+xml;utf8,<svg width='19' height='17' viewBox='0 0 19 17' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M7.46863 14.3438L2.07617 8.77827L3.94279 6.85176L7.46863 10.4907L15.0596 2.65625L16.9262 4.58276L7.46863 14.3438Z' fill='%2383AA34'/></svg>");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.woocommerce-checkout .checkout-personal-company-select {
	display: flex;
	gap: 20px;
	padding-bottom: 10px;
	padding-top: 30px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	margin-top: 30px;
	margin-bottom: 30px;
}

.woocommerce-checkout .woocommerce-privacy-policy-text p {
	margin-top: 16px;
	text-align: center;
	font-weight: 700;
	font-size: 12px;
	line-height: 100%;
	color: #808080;
}

.woocommerce-checkout .woocommerce-privacy-policy-text p a {
	color: var(--fs-color-primary);
}




.shipping__table--multiple .shipping__list_item text {
	padding-top: 15px;
	padding-bottom: 15px;
}

.checkout__payment-img {
	margin-top: 10px;
	height: 20px;
}

#woocommerce_eu_vat_number_field .optional {
	display: none;
}

.woocommerce-checkout .woocommerce-checkout-payment .blockUI,
.woocommerce-checkout .woocommerce-checkout-payment .blockOverlay {
	display: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.checkout-sale-notice {
	background-color: #ffe2e2;
	color: #d0021b;
	padding: 15px;
	margin-bottom: 15px;
	border: 2px solid #d0021b;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
}

button#place_order.button{
	background: var(--fs-color-primary);
	color: #FFF;
	justify-content: center;
	padding: 16px;
	display: flex;
	gap: 16px;
	align-items: center;
	margin: 0;
	border-radius: 7px;
	font-weight: 800;
	font-size: 18px;
	line-height: 186%;
}

button#place_order:after{
    content: '';
    background-image: url(../lock.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 21px;
    height: 21px;
    margin-top: -2px;
}

/* login form */

.woocommerce-checkout #content > .woocommerce{
	max-width: 1410px;
	margin: 0 auto;
}

.woocommerce-form-login-toggle{
	z-index: 1;
	position: relative;
}

.woocommerce-form-login-toggle,
.woocommerce-form-login,
.woocommerce-form-register {
	background: #ebf0f4;
	border-radius: 12px;
	padding: 20px;
}

.woocommerce-checkout form[name="checkout"]{
	margin-top: 30px;
}

.woocommerce-form-login-toggle .message-wrapper{
	padding: 0;
}

.woocommerce-form-login-toggle .message-container:before{
	content: url(../account.svg);
	width: 24px;
	height: 24px;
	display: block;
	margin-right: 10px;
}

.woocommerce-form-login-toggle .message-container{
	line-height: 100%;
	padding: 0;
	font-size: 14px;
	font-weight: 600;
	color: #213236;
	display: flex;
	gap: 3px;
	align-items: center;
}

.woocommerce-form-login-toggle .message-container a{
	font-weight: 800;
	font-size: 14px;
	line-height: 100%;
	text-decoration: underline;
	color: #213236 !important;
}

.woocommerce-checkout  .woocommerce-form-login{
	margin-top: -20px !important;
	padding-top: 20px !important;
}

.woocommerce-form-login p{
	font-size: 13px;
}

.woocommerce-form-login .show-password-input{
	margin: 0;
	height: 100%;
}

.woocommerce-form-login input[type="checkbox"]{
	margin: 0;
	margin-right: .5em;
	width: 18px;
	height: 18px;
}

.woocommerce-form-login .woocommerce-form__label-for-checkbox span{
	font-size: 13px;
}

.woocommerce-form-login button[type="submit"]{
	margin: 15px 0 10px;
	height: 40px;
}

.woocommerce-checkout form p:has(button[type="submit"]),
.woocommerce-checkout form p.lost_password{
	margin-bottom: 0;
}

.woocommerce-checkout p.lost_password a{
	font-size: 13px;
	color: #454648 !important;
}

/* end login form */

#main .order-sidebar_wrapper h3#order_review_heading{
	color: var(--fs-color-primary) !important;
	padding-top: 0 !important;
}

.woocommerce-checkout-review-order-table .product-remove,
.woocommerce-checkout-review-order-table .product-thumbnail{
	align-self: center;
}

.woocommerce-checkout-review-order-table .product-remove {
	margin-right: -8px;
}

.woocommerce-checkout-review-order-table .product-remove a{
	border: none;
	width: 22px;
	height: 22px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#order_review .cart_item{
	display: flex;
	align-items: start;
	gap: 20px;
	margin-bottom: 20px;
}

#order_review .cart_item .product-total{
	margin-left: auto;
}

#order_review dl.variation{
    margin: 0;
    padding: 0;
	margin-top: 5px;
}

#order_review .variation dd p {
    margin: 0 !important;
    padding: 0 !important;
}

#order_review .variation dd,
#order_review .variation dt,
#order_review .variation dd p,
#order_review .variation span.amount{
	font-size: 12px;
	color: #626262;
	font-weight: 400;
}

#order_review .cart-footer{
	margin-top: 36px;
	padding-top: 36px;
	border-top: 1px solid #DEDEDE;
}

#order_review .cart-footer .order-total{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#order_review .cart-footer .order-total .order-total-label{
	font-weight: 700;
	font-size: 15px;
	line-height: 18px;
}

#order_review .cart-footer .order-total .order-total-amount{
	display: flex;
	flex-direction: column;
	align-items: end;
}

#order_review .cart-footer .order-total .order-total-amount strong span.amount{
	color: var(--fs-color-primary);
	font-weight: 700;
	font-size: 25px;
	line-height: 28px;
}

.wc-item-meta {
	font-size: 14px;
}


.wc-item-meta p {
	font-weight: 400;
	margin-top: 0;
}



.checkout-item__acf {
	margin-top: 6px;
	font-size: 14px;
	line-height: 1.3;
	opacity: .85;
}
.checkout-item__acf > div + div {
	margin-top: 2px;
}












#order_review .shop_table.woocommerce-checkout-review-order-table .product-thumbnail img{
	height: 96px;
	width: 96px;
	padding: 4px;
	border-radius: 12px;
	border: 1px solid #AEAEAE6B;
	margin-bottom: 0;
}



















/* title like mini-cart */
.woocommerce-checkout-review-order-table .cart-items .cart_item .product-title-wrapper{
	font-weight: 700;
	font-size: 16px;
	color: #3B3B3B;
}

/* ACF block under title (you already output .product-custom-value + your ACF divs) */
.woocommerce-checkout-review-order-table .cart-items .cart_item .product-name .checkout-item__acf,
.woocommerce-checkout-review-order-table .cart-items .cart_item .product-name .product-custom-value,
.woocommerce-checkout-review-order-table .cart-items .cart_item .product-name .variation,
.woocommerce-checkout-review-order-table .cart-items .cart_item .product-name dl.variation{
	margin-top: 10px;
	font-weight: 500;
	font-size: 14px;
	line-height: 22px;
	color: #626262;
}

.woocommerce-checkout-review-order-table .product-total .quantity{
    font-size: .85em;
	align-items: center;
	gap: 2px;
}

/* Checkout price = same green as mini-cart */
.woocommerce-checkout-review-order-table .product-total .amount{
    color: #6D791A;
    font-weight: 800;
    font-size: 15px;
}




/* Checkout DDV row = same as mini-cart tax row */
.woocommerce-checkout-review-order-table .cart-footer .checkout-ddv-row{
	font-weight: 500;
	font-size: 15px;
	line-height: 18.4px;
	color: #626262;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}

.woocommerce-checkout-review-order-table .cart-footer .checkout-ddv-row .amount{
	font-weight: 500;
	font-size: 15px;
	line-height: 18.4px;
	color: #626262;
}

/* Checkout Total row = same as mini-cart total row */
.woocommerce-checkout-review-order-table .cart-footer .order-total{
	border: none;
	font-size: 15px;
	line-height: 18.4px;
	padding: 0;
	margin-bottom: 0;
	color: #626262;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.woocommerce-checkout-review-order-table .cart-footer .order-total-amount .amount{
	color: #6D791A;
	font-size: 25px;
	line-height: 28px;
	font-weight: 800;
}




@media (max-width: 849px){
	.woocommerce-checkout-review-order-table.shop_table  .product-remove a{
		position: unset;
        transform: translateX(-80%);
	}
}

@media (max-width: 549px){
	.woocommerce-checkout form p.form-row-first, .woocommerce-checkout form p.form-row-last{
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
}
