html {
    font-size: min(2.2vw, 8px);
}

html.sm body {
    line-height: 1.5;
}

:root {
    --ff-icon: 'icomoon';
    --fs-10: 1.2rem;
    --fs-11: 1.3rem;
    --fs-12: 1.3rem;
    --fs-13: 1.4rem;
    --fs-14: 1.5rem;
    --fs-15: 1.6rem;
    --fs-16: 1.6rem;
    --fs-18: 1.8rem;
    --fs-20: 1.9rem;
    --fs-22: 2.1rem;
    --fs-24: 2.1rem;
    --fs-26: 2.1rem;
    --fs-28: 2.2rem;
    --fs-30: 2.3rem;
    --fs-32: 2.4rem;
    --fs-34: 2.6rem;
    --fs-36: 2.8rem;
    --fs-38: 3rem;
    --fs-40: 3rem;
    --fs-42: 3rem;
    --gutter-x: 1.5rem;
    --r: 4rem;
    --space-md-x: 0;
    --space-box: var(--gutter-x);
    --fs-editor: 1.8rem;
    --width-container: 130rem;
}

:root {
    --c-primary: #FF6F61;
    --c-secondary: #4E88CC;
    --c-white: #fff;
    --c-black: #000000;
    --c-blue-50: #babfca;
    --c-blue-100: #a2a8b8;
    --c-blue-150: #758099;
    --c-blue-200: #313d5a;
    --c-neutral-50: #f6f5f6;
    --c-neutral-100: #eaeaea;
    --c-neutral-150: #e2e2e2;
    --c-neutral-200: #d8d8d8;
    --c-neutral-300: #c5c5c5;
    --c-neutral-400: #b1b1b1;
    --c-neutral-500: #9e9e9e;
    --c-neutral-600: #808080;
    --c-neutral-700: #636363;
    --c-neutral-800: #454545;
    --c-neutral-850: #363636;
    --c-neutral-900: #1e1e1e;
    --c-neutral-950: #191919;
    --c-neutral-1000: #0a0a0a;
    --bg-img: #eeecec;
    --ease1:
        cubic-bezier(0.68, -0.6, 0.32, 1.6);
    --ease2:
        cubic-bezier(0.5, 1, 0.89, 1);
    --c-danger: #dc3545;
    --bg-danger: #faf2f2;
    --c-success: #28a745;
    --bg-success: #ecf9ee;
    --c-info: var(--c-neutral-50);
    --bg-info: #e6f1fc;
    --section-space: 2.5rem;
    --head-space: 2.5rem;
    --space-xs: 4rem;
    --space-sm: min(7rem, 14vw);
    --space-md: min(8.5rem, 12vw);
    --space-lg: min(12rem, 12vw);
    --space-xl: min(15rem, 18vw);
    --space-xxl: min(20rem, 25vw);
    /* --swiper-wrapper-transition-timing-function
--swiper-wrapper-transition-timing-function is not defined
: var(--ease2); */
    --anim: 0.3s ease;
}

@media (width >=1024px) {
    :root {
        --fs-10: 1rem;
        --fs-12: 1.2rem;
        --fs-13: 1.3rem;
        --fs-14: 1.4rem;
        --fs-15: 1.5rem;
        --fs-16: 1.6rem;
        --fs-18: 1.8rem;
        --fs-20: 2rem;
        --fs-22: 2.2rem;
        --fs-24: 2.4rem;
        --fs-26: 2.6rem;
        --fs-28: 2.8rem;
        --fs-30: 3rem;
        --fs-32: 3.2rem;
        --fs-34: 3.4rem;
        --fs-36: 3.6rem;
        --fs-38: 3.8rem;
        --fs-40: 4rem;
        --fs-42: 4.2rem;
        --gutter-x: 3rem;
        --r: 10rem;
        --space-md-x: 12rem;
        --space-box: 4rem;
        --fs-editor: 1.6rem;
        --width-container: 135rem;
        --section-space: 5rem;
    }

    html.sm {
        font-size: 10px;
    }
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2) {
    font-family: inherit;
    padding: 1.6rem 2.1rem;
    height: 6rem;
    background-color: #fff;
    border: 1px solid #edecec;
    transition: 0.3s var(--ease2);
    width: 100%;
    text-overflow: ellipsis;
    position: relative;
    display: block;
    border-radius: 6rem;
    color: var(--c-neutral-900);
    font-size: var(--fs-14);
}


.form-pattern .select2.select2-container,
.form-pattern select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
    background-position: left 1.2rem center;
    background-repeat: no-repeat;
    background-size: 1.6rem;
    padding-left: 4rem;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.form-pattern form.submitted :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):invalid:required {
    border-color: var(--danger)
}

.form-pattern textarea {
    height: 12.1rem !important;
    border-radius: 2rem !important;
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):focus-visible {
    border-color: var(--c-primary)
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):focus-visible::-webkit-input-placeholder {
    color: var(--c-primary)
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):focus-visible::-moz-placeholder {
    color: var(--c-primary)
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):focus-visible:-ms-input-placeholder {
    color: var(--c-primary)
}

.form-pattern :is(input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="password"], input[type="search"], input[type="url"], textarea, select, .select2):focus-visible::placeholder {
    color: var(--c-primary)
}

.form-pattern :is(textarea, input)::-webkit-input-placeholder {
    color: var(--text-neutral-550);
    font-size: var(--fs-16);
    transition: 0.3s var(--ease2)
}

.form-pattern :is(textarea, input)::-moz-placeholder {
    color: var(--c-blue-150);
    font-size: var(--fs-14);
    transition: 0.3s var(--ease2)
}

.form-pattern :is(textarea, input):-ms-input-placeholder {
    color: var(--c-blue-150);
    font-size: var(--fs-14);
    transition: 0.3s var(--ease2)
}

.form-pattern :is(textarea, input)::placeholder {
    color: var(--c-blue-150);
    font-size: var(--fs-14);
    transition: 0.3s var(--ease2)
}

.form-pattern label {
    line-height: 1;
    display: inline-block;
    margin-bottom: 1.3rem;
    font-size: var(--fs-14);
    transition: 0.3s var(--ease2);
    font-weight: bold;
}

.form-pattern label.error {
    font-size: var(--fs-12);
    color: var(--danger);
    display: block;
    padding: 1rem;
    margin-bottom: 0
}

.form-pattern input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 2.3rem;
    width: 2.3rem;
    border-radius: 4px;
    outline: none;
    cursor: pointer;
    background-color: #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 1.5rem
}

.form-pattern input[type="checkbox"]::before {
    content: "";
    width: 1.4rem;
    height: 1.4rem;
    transform: scale(0);
    background-color: var(--c-neutral-600);
    transition: 120ms transform ease-in-out;
    transform-origin: bottom left;
    -webkit-clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%)
}

.form-pattern input[type="checkbox"]:checked::before {
    transform: scale(1)
}

.form-pattern input[type="radio"]:checked {
    border: 2px solid var(--c-neutral-400) !important;
    box-sizing: border-box !important;
    background: var(--c-neutral-600) !important;
    box-shadow: inset 0 0 0 4px #fff !important;
}

.form-pattern input[type="radio"] {
    height: 2.3rem;
    width: 2.3rem;
    border-radius: 50%;
    -moz-appearance: none;
    appearance: none;
    -webkit-appearance: none;
    outline: none;
    cursor: pointer;
    border: 2px solid #ccc;
    margin-left: 0.7rem;
    vertical-align: middle;
    flex: none
}

.form-pattern input::autofill,
.form-pattern input:-webkit-autofill,
.form-pattern input:-webkit-autofill:active,
.form-pattern input:-webkit-autofill:hover,
.form-pattern input:-webkit-autofill:focus {
    /* -webkit-animation-name: autofill;
  -webkit-animation-delay: 1s;
  -webkit-animation-fill-mode: both;
  -webkit-box-shadow: none !important; */
    /* background-color: transparent !important; */
}

#form-pattern input:-webkit-autofill,
#form-pattern input:-webkit-autofill:active,
#form-pattern input:-webkit-autofill:hover,
#form-pattern input:-webkit-autofill:focus {
    /* -webkit-animation-name: autofill;
  -webkit-animation-delay: 1s;
  -webkit-animation-fill-mode: both;
  -webkit-box-shadow: 0 0 0 100px var(--c-neutral-000) inset !important;
  -webkit-box-shadow: none; */
}

.grid-col-cart {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 31%;
    gap: 2.3rem;
    position: relative;
}

table {
    border-collapse: collapse;
    width: 100%;
}

/* .d-none {
    display: none !important;
} */

.woocommerce-cart-form table thead {
    display: none;
}

.count-head {
    font-variation-settings: var(--fw-500);
    font-size: var(--fs-16);
    margin-bottom: 2rem;
    position: absolute;
    right: 1.5rem;
    top: 1.5rem;
}

.count-head .count {
    display: block;
    font-weight: bold;
    color: var(--c-neutral-300);
    font-size: var(--fs-15);
}

.grid-col-cart .woocommerce-cart-form .shop_table tr:not(.coupon-cart) {
    display: grid;
    grid-template-columns: 9rem minmax(0, 1fr) -webkit-max-content;
    grid-template-columns: 9rem minmax(0, 1fr) max-content;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    row-gap: 5px;
}

.grid-col-cart .woocommerce-cart-form .shop_table tr:not(.coupon-cart):only-child,
.grid-col-cart .woocommerce-cart-form .shop_table tr:not(.coupon-cart):first-child {
    padding-top: 10rem;
}

:root {
    --danger: #d53343;
    --bg_danger: #fff5f5;
    --success: #45bf55;
    --bg-success: #ecf9ee;
    --info: #0288d1;
    --bg-info: #e6f1fc;
}

/* .woocommerce-cart .woocommerce-notices-wrapper {
  display: none;
} */
.woocommerce-order-pay form input[type="submit"] {
    background: var(--color2);
    padding: 0;
}

.woocommerce-order-pay form a.cancel {
    background: var(--bg_danger);
    color: var(--danger);
}

.woocommerce-cart-form__cart-item {
    border: 1px solid var(--c-neutral-150);
    background-color: #fff;
    border-radius: 1rem;
    margin-bottom: 2rem;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

#form-pattern .woocommerce-cart-form__cart-item .product-quantity input {
    all: unset;
    flex: 1;
    text-align: center;
    font-size: var(--fs-18);
    color: var(--c-primary);
    width: 2rem;
}

.woocommerce-cart-form__cart-item .product-quantity button {
    width: 3.2rem;
    height: 3.2rem;
    flex: 0 0 3.2rem;
    min-width: auto;
}

/* .woocommerce-cart-form__cart-item .product-quantity button:hover {
  background-color: var(--c-primary);
} */
.woocommerce-cart-form__cart-item .quantity {}

td.product-thumbnail {
    width: 100%;
    background: #fff;
    border-radius: 1rem;
}

td.product-thumbnail img {
    background-color: #f6f6f6;
    border-radius: 6px;
}

dl.variation {
    font-size: var(--fs-14-min);
    color: #b4b3b3;
    line-height: 1.6;
}

dl.variation dt {
    float: right;
}

.tools-card-items {
    display: flex;
    align-items: center;
    gap: 1.3rem;
    margin-top: auto;
}

/* .tools-card-items .product-quantity {
    width: 10rem;
} */

.tools-card-items .product-remove a {
    font-size: var(--fs-14);
    color: var(--c-neutral-500);
}

.tools-card-items .product-remove a:hover a {
    color: var(--danger);
}

.tools-card-items .product-remove i {
    vertical-align: middle;
}

.woocommerce-cart-form__cart-item .product-subtotal {
    font-size: var(--fs-18);
    color: var(--c-primary);
    font-weight: bold;
}

.woocommerce-cart-form__cart-item .product-subtotal .price {
    align-items: unset;
}

.woocommerce-cart-form__cart-item .product-name {
    display: flex;
    flex-direction: column;
    font-size: var(--fs-16);
    gap: 1rem;
}

.coupon-cart .coupon {
    display: flex;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
    padding: 2rem;
    border-radius: 6px;
    border: 1px solid var(--c-primary);
}

#form-pattern .coupon-cart .coupon label {
    margin: 0;
}

#form-pattern .coupon-cart .coupon input {
    margin: 0;
    width: 200px;
}


.cart-collaterals tr small {
    display: block;
    color: #999;
    font-size: 14px;
}


.cart-collaterals tr {
    width: 100%;
}

.cart-collaterals tr.shipping {
    display: flex;
    flex-direction: column;
}

.woocommerce-cart .wocommerce-form.cart .cart-collaterals tr.shipping {
    display: none;
}

.cart-collaterals tr.shipping th {
    color: var(--c-primary);
    text-align: center;
    font-weight: bold;
    padding-bottom: 1rem;
}

.cart-collaterals tr .woocommerce-shipping-destination {
    color: #7d7c7c;
    font-size: 14px;
}

.cart-collaterals td {
    font-weight: bold;
}

.checkout-button {
    background: var(--c-primary);
    color: #fff;
    width: 100%;
    font-size: 15px;
    height: 5rem;
    justify-content: center;
    display: flex;
    text-align: center;
    align-items: center;
    border-radius: 2rem;
}

.checkout-button:hover {
    opacity: 0.8;
}

.woocommerce-billing-fields h3,
.cart-collaterals h2 {
    /* text-align: center;
    font-size: var(--fs-20);
    font-weight:bold;
    background: #f8f0e2;
    padding: 1rem;
    border-radius: 6px; */
    display: none;
}

.cart-collaterals table {
    margin-block: 3rem;
}

.cart-collaterals .cross-sells {
    display: none;
}

.cart_totals {
    background: #fff;
    padding: 1.5rem;
    border-radius: 12px;
    border: 1px solid var(--c-neutral-150);
}

@media (width >=576px) {
    .cart_totals {
        position: -webkit-sticky;
        position: sticky;
        top: var(--header-h);
    }
}

.return-to-shop {
    margin: auto;
    text-align: center;
    margin-top: 2rem;
}

.wc-empty-cart-message {
    text-align: center;
    font-size: var(--fs-18);
}

.wc-empty-cart-message .cart-empty::before {
    content: "\e909";
    font-family: var(--ff-icon);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    font-size: 5rem;
}

#shipping_method li {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

#shipping_method li:last-child {
    margin-bottom: 0 !important;
}

#shipping_method label {
    display: inline-flex !important;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: var(--fs-14) !important;
    margin-bottom: 0 !important;
    line-height: 1.5 !important;
    color: #575757 !important;
}

#shipping_method label .woocommerce-Price-amount {
    margin-right: auto;
    white-space: nowrap;
}

#form-pattern #customer-type_field .woocommerce-input-wrapper label {
    display: inline-flex;
    margin: 0;
    margin-left: 3rem;
    cursor: pointer;
}

/* #customer-type_field {
    margin-bottom: 3rem;
} */

/**************************/
/* checkout*/
/**************************/
.woocommerce-billing-fields__field-wrapper .clear {
    display: none;
}

.woocommerce-shipping-fields__field-wrapper,
.woocommerce-billing-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
    row-gap: 3rem;
    grid-template-rows: -webkit-min-content -webkit-min-content;
    grid-template-rows: min-content min-content;
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
    grid-auto-flow: dense;
    align-items: end;
}

#invoice-extra-fields {
    display: none;
}

#customer-type_field {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    order: -1;
    gap: 3rem;
}

#customer-type_field label {
    margin: 0;
}

#billing_postcode_field,
#billing_email_field {
    /* grid-column: 2 span; */
    /* grid-column: 1 / -1; */
}

#address_selector_field {
    grid-column: 1 / -1;
}

#billing_address_1_field {
    grid-column: 1 / -1;
    order: 18;
}

#shipping_address_1_field {
    grid-column: 1 / -1;
    order: 122;
}

#ship-to-different-address .woocommerce-form__label-for-checkbox {
    display: flex;
    align-items: center;
    margin: 0;
    cursor: pointer;
}

#ship-to-different-address {
    margin: 3rem 0;
    background: var(--c-neutral-50);
    padding: 1.5rem 2rem;
    border-radius: 2rem;
}

.select2-container {
    width: 100% !important;
    /* z-index: 40; */
}


#charity-description {
    width: 100%;
    margin: -1rem 0 1.5rem;
    order: -1;
    font-size: var(--fs-14);
    opacity: 0.8;
}

.grid-checkout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 31%;
    gap: 2rem;
    margin-top: 3rem;
}

#wbs-extra-info-wrapper .woocommerce-input-wrapper {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

#wbs-extra-info-wrapper .woocommerce-input-wrapper label {
    margin: 0;
    margin-left: 3rem;
    cursor: pointer;
}

.wbs-extra-info {
    margin: 1rem 0 4rem;
}

.wbs-extra-info .field .desc {
    margin-bottom: 2rem;
    font-size: var(--fs-14);
}

.wbs-extra-info .field {
    margin-bottom: 1rem;
    background: var(--c-neutral-100);
    padding: 2rem;
    border-radius: 12px;
    gap: 5rem;
}

.woocommerce-additional-fields__field-wrapper {
    margin: 2rem 0 4rem;
}

span#charity-description {
    width: 100%;
    margin: -1rem 0 1.5rem;
    order: -1;
    font-size: var(--fs-14);
    opacity: 0.7;
    display: block !important;
}

/* .form-row.form-row-first {
  float: right;
  display: block;
  width: 48%;
} */
.form-row-wide:not(#billing_phone_field) {
    clear: both;
    width: 100%;
}

/* #billing_phone_field,
.form-row.form-row-last {
  float: left;
  display: block;
  width: 48%;
} */
#shipping_country_field,
#billing_country_field {
    display: none;
}

#billing_billing_phone_field {
    display: none;
}

.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
    padding-right: 0;
    padding-left: 0;
    height: 100%;
    display: flex;
    align-items: center;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.select2-container--default .select2-selection--single {
    border: none;
    height: 100%;
    background: transparent;
    margin: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--c-primary);
    color: #fff;
    border-radius: 12px;
}

.select2-dropdown {
    border: none;
    box-shadow: rgb(0 0 0 / 28%) 0px 10px 20px;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    border: 1px solid var(--c-primary);
    border-radius: 12px;
}

.woocommerce-checkout-review-order-table thead {
    display: none;
}

/* .woocommerce-checkout .woocommerce-checkout-review-order {
  position: sticky;
  top: 13rem;
} */
.screen-reader-text {
    display: none !important;
}

.delivery-wrapper .title {
    /* margin-bottom: 4rem; */
}

.woocommerce-additional-fields>h3 {
    display: none !important;
}

.woocommerce-additional-fields>h3,
#wbs-extra-info-wrapper h2,
.woocommerce-checkout-payment__title,
.delivery-wrapper .title,
.woocommerce-billing-fields h3,
#order_review_heading {
    text-align: center;
    font-size: var(--fs-20);
    font-weight: bold;
    background: #f8f0e2;
    padding: 1rem;
    border-radius: 6px;
}
p#billing_use_afra_wallet_field .checkbox,
p#billing_receiving_invoice_field .checkbox {
    display: flex;
    align-items: center;
}

#form-pattern .woocommerce-cart-form__cart-item .product-quantity input {
    all: unset;
    flex: 1;
    text-align: center;
    font-size: var(--fs-18);
    color: var(--c-primary);
    width: 2rem;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-checkout-review-order-table tfoot,
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table tbody {
    display: block;
}

.woocommerce-checkout .grid-checkout .woocommerce-checkout-review-order-table tbody {
    display: none;
}

.woocommerce-checkout-review-order-table .cart_item {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.woocommerce-checkout-review-order-table tr:not(:last-child) {
    margin-bottom: 1rem;
    border-bottom: 1px solid #f4f2f2;
    padding-bottom: 1rem;
}

.cart-collaterals tr:not(:last-child) {
    margin-bottom: 1rem;
    border-bottom: 1px solid #dedede !important;
    padding-bottom: 1rem;
}

.woocommerce-checkout-review-order-table .product-name {
    font-size: 15px;
    color: #6c6a6a;
}

.woocommerce-checkout-review-order-table .product-quantity {
    color: var(--c-primary);
    font-variation-settings: var(--fw-500);
}

/* div#order_review {
  position: -webkit-sticky;
  position: sticky;
  top: 13rem;
} */
.woocommerce-checkout-review-order-table .product-total {
    color: var(--c-neutral-500);
    font-weight: bold;
    font-size: 15px;
}

.woocommerce-checkout-review-order-table tfoot {
    background: var(--c-white);
    padding: 1rem;
    border-radius: 12px;
    margin-block: 2rem;
    border: 1px solid var(--c-neutral-150);
}

.woocommerce-checkout-review-order-table tfoot tr:not(.shipping),
.cart-collaterals tr:not(.shipping) {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.woocommerce-checkout-review-order-table tfoot tr,
.cart-collaterals tr {
    width: 100%;
}

.woocommerce-checkout-review-order-table tfoot tr.shipping {
    display: flex;
    flex-direction: column;
}

.woocommerce-checkout-review-order-table tfoot tr.shipping th {
    padding-bottom: 1rem;
}

#shipping_method label {
    display: inline-flex !important;
}

.checkout-side .woocommerce-checkout-review-order-table tfoot {
    margin-top: 0;
}

.woocommerce-checkout-review-order-table tbody {
    border: 1px solid var(--c-primary);
    padding: 1rem;
    border-radius: 12px;
    margin-block: 2rem;
}

.must-loggedin {
    color: var(--c-black);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    font-size: var(--fs-18);
    background: var(--c-neutral-50);
    padding: 2rem;
    border-radius: 12px;
}

.must-loggedin button {
    font-size: var(--fs-16);
}

#payment label {
    align-items: center;
    cursor: pointer;
    margin-bottom: 0 !important;
    vertical-align: middle;
    display: inline-flex !important;
    gap: 1rem;
}

#payment label img {
    max-width: 4rem;
    order: -1;
}

.wc_payment_methods li {
    border: 1px solid var(--c-neutral-200);
    border-radius: 12px;
    padding: 1rem;
    margin-bottom: 1rem;
    background: #fff;
    font-weight: bold;
}

.wc_payment_methods li .payment_box {
    color: var(--c-neutral-600);
    line-height: 2;
    font-size: var(--fs-14);
    margin-top: 1rem;
}

.form-row.place-order {
    border-radius: 12px;
    border: 1px solid var(--c-neutral-200);
    padding: 2rem 1rem;
    font-size: 15px;
}

.woocommerce-privacy-policy-text {
    margin-bottom: 1rem;
    display: none;
}

#payment .woocommerce-form__label-for-checkbox {
    display: flex !important;
    font-variation-settings: var(--fw-500);
    line-height: 1.5 !important;
}

#payment .woocommerce-form__label-for-checkbox abbr.required {
    display: none;
}

abbr.required {
    color: var(--danger);
}

#payment.woocommerce-checkout-payment .button {
    /* background: var(--c-primary);
    color: #fff; */
    width: 100%;
    height: 5rem;
    font-size: var(--fs-18);
    justify-content: center;
    margin-top: 2rem;
    display: flex;
    align-items: center;
    text-align: center;
    border-radius: 2rem;
}

.not-enough-credit {
    background: var(--bg_danger);
    color: var(--danger);
    padding: 0.5rem 1rem;
    margin: 2rem 0 0;
    display: block;
    font-weight: bold;
    border-radius: 12px;
}

#payment.woocommerce-checkout-payment .button:disabled {
    pointer-events: none;
    -webkit-filter: contrast(0.5);
    filter: contrast(0.5);
}

#address_selector_field .woocommerce-input-wrapper::before {
    display: none !important;
}

/* 
#payment.woocommerce-checkout-payment .button:hover {
    -webkit-filter: brightness(1.3);
    filter: brightness(1.3);
} */

/* .woocommerce-billing-fields__field-wrapper {
  margin-block: 3rem;
} */
.woocommerce-terms-and-conditions-link {
    color: var(--c-primary);
}


.woocommerce-form-coupon-toggle .showcoupon {
    font-weight: bold;
    border-bottom: 1px solid;
    font-size: var(--fs-14);
}

.woocommerce-form-coupon {
    border: 1px solid var(--c-neutral-200);
    padding: 2rem;
    border-radius: 12px;
    margin-bottom: 3rem;
    position: relative;
}

.woocommerce-form-coupon .wide {
    width: 100%;
    margin-bottom: 1rem;
}

#form-pattern .woocommerce-form-coupon input {
    width: min(400px, 100%);
    margin-bottom: 0 !important;
    padding-left: 8rem;
}

#coupon-error-notice {

    font-size: var(--fs-14);
    color: var(--c-danger);
    display: block;
    padding-top: 1rem;
}

.woocommerce-form-coupon .button {
    all: unset;
    background: none;
    color: var(--c-primary);
    position: absolute;
    right: min(329px, calc(87% - 57px));
    top: 4rem;
    font-size: var(--fs-14);
    white-space: nowrap;
    min-width: auto;
    font-weight: bold;
    transition: .3s;
}

.woocommerce-form-coupon .button:hover {
    color: var(--c-neutral-500);
}

.delivery-wrapper .description {
    margin: 2rem 0 1rem;
    border: 1px solid var(--c-neutral-200);
    color: var(--c-primary);
    padding: 1.5rem 2rem;
    border-radius: 2rem;
}

.delivery-wrapper .woocommerce-input-wrapper {
    position: relative;
}

/* .delivery-wrapper .woocommerce-input-wrapper::before {
  content: "\e90e";
  position: absolute;
  display: block;
  left: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  font-family: "icomoon";
  pointer-events: none;
  color: #a5a4a4;  
  line-height: 1;
  font-size: 13px;
} */
.delivery-wrapper select {
    display: flex;
    align-items: center;
}

/**************************/
/* thanks*/
/**************************/
.woocommerce-thankyou-order-received {
    background: var(--c-primary);
    color: #fff;
    padding: 1rem;
    border-radius: 12px;
    text-align: center;
    font-size: var(--fs-18);
    font-weight: bold;
}

.woocommerce-order-received .woocommerce-order>*+* {
    margin-top: 3rem;
    text-align: center;
}

.woocommerce-order-received .order-print .button {
    background: var(--c-secondary);
    color: #fff;
    padding: 1rem 2rem;
    border-radius: 12px;
    font-size: var(--fs-18);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30rem;
    max-width: 100%;
    margin: 0 auto;
}

.woocommerce-order-received .order-print .button:hover {
    opacity: .8;
}

.thankyou .order-details-total .price {
    line-height: 1.6;
    display: block;
}

.thankyou .woocommerce-cart-form__cart-item {
    justify-content: center;
    text-align: center;
    align-items: center;
}

.wocommerce-form.thankyou .woocommerce-customer-details {
    display: none;
}

.woocommerce-thankyou-order-details {
    margin-block: 2rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(24rem, 1fr));
    gap: 2rem;
    align-items: center;
    line-height: 1.5;
}

.woocommerce-bacs-bank-details h2 {
    color: var(--c-primary);
    font-size: var(--fs-20);
    font-weight: bold;
    text-align: center;
}

.detail-payment>p {
    background: #eee;
    border-radius: 12px;
    padding: 1rem 2rem;
    margin-bottom: 4rem;
    text-align: center;
    color: var(--c-primary);
    font-weight: bold;
}

.woocommerce-bacs-bank-details {
    margin-block: 8rem;
}

.wc-bacs-bank-details-account-name {
    text-align: center;
    margin-bottom: 1rem;
}

.wc-bacs-bank-details {
    background: #eee;
    border-radius: 12px;
    padding: 2rem;
}

.woocommerce-thankyou-order-details li {
    background: #eee;
    padding: 1rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    font-size: var(--fs-14);
    justify-content: center;
}

.woocommerce-order .delivery-wrap h2,
.woocommerce-customer-details .woocommerce-column__title,
.woocommerce-order-details__title {
    color: var(--c-primary);
    font-size: var(--fs-20);
    font-weight: bold;
    text-align: center;
}

.woocommerce-order .delivery-wrap ul {
    border: 1px solid var(--c-primary);
    border-radius: 12px;
    padding: 2rem 1rem;
    text-align: center;
    margin-block: 2rem;
}

.blockUI.blockOverlay {
    z-index: 10 !important;
}

.woocommerce-table--order-details tfoot tr,
.woocommerce-table--order-details .woocommerce-table__line-item {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.woocommerce-table--order-details tfoot th {
    white-space: nowrap;
}

.wc-item-meta li {
    display: flex;
    gap: 5px;
    color: #9f9d9d;
}

.woocommerce-order-details {
    margin-block: 3rem;
    display: none;
}

.detail-thankyou .order-details-total {
    background: #f8f0e2;
    padding: 2rem;
    border-radius: 2rem;
    margin-bottom: 2rem;
}

.detail-thankyou .order-details-total .inner {
    border-bottom: 1px solid #d29a3b87;
    padding: 1rem 0;
}

.detail-thankyou .order-details-total .inner:last-child {
    padding: 0;
    border-bottom: unset;
}

.woocommerce-customer-details address {
    padding: 1rem;
    border: 1px solid var(--c-primary);
    border-radius: 12px;
    margin-top: 1rem;
}

.detail-thankyou .woocommerce-table .myaccount-order-details-product-w {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    /* max-width: 30rem; */
}

.detail-thankyou .woocommerce-order-details__title {
    margin-bottom: 2rem;
}

.woocommerce-terms-and-conditions {
    display: none !important;
}

/**************************/
/* route-bar */
/**************************/
.route-bar {
    position: relative;
    margin: 0 0 3rem 0;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.route-bar:before {
    content: "";
    position: absolute;
    top: 30px;
    display: inline-block;
    width: 100%;
    height: 1px;
    background-color: var(--c-primary);
    z-index: -1;
}

.route-bar .step-box .wrapper {
    text-align: center;
}

.route-bar .step-box .title {
    margin: 0;
    color: var(--c-primary);
    font-size: 1.6rem;
    line-height: 1.5;
    display: block;
}

.route-bar .step-box .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(6rem, 13vw);
    height: min(6rem, 13vw);
    border: 1px solid var(--c-primary);
    border-radius: 50%;
    margin: 0 auto 5px auto;
    background: #fff;
}

.route-bar .step-box a.icon:hover {
    background-color: var(--c-primary);
}

.route-bar .step-box a.icon:hover img {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

.route-bar .step-box .icon-svg {
    display: inline-block;
    width: min(3rem, 6vw);
    height: min(3rem, 6vw);
    margin: 0;
}

.woocommerce-cart .route-bar .first-step .icon,
.woocommerce-checkout .route-bar .first-step .icon,
.woocommerce-checkout .route-bar .second-step .icon,
.woocommerce-order-pay .route-bar .first-step .icon,
.woocommerce-order-pay .route-bar .second-step .icon,
.woocommerce-order-pay .route-bar .third-step .icon,
.woocommerce-order-received .route-bar .first-step .icon,
.woocommerce-order-received .route-bar .second-step .icon,
.woocommerce-order-received .route-bar .third-step .icon,
.woocommerce-order-received .route-bar .fourth-step .icon {
    background-color: var(--c-primary);
}

.woocommerce-cart .route-bar .first-step .icon-svg,
.woocommerce-checkout .route-bar .first-step .icon-svg,
.woocommerce-checkout .route-bar .second-step .icon-svg,
.woocommerce-order-pay .route-bar .first-step .icon-svg,
.woocommerce-order-pay .route-bar .second-step .icon-svg,
.woocommerce-order-pay .route-bar .third-step .icon-svg,
.woocommerce-order-received .route-bar .first-step .icon-svg,
.woocommerce-order-received .route-bar .second-step .icon-svg,
.woocommerce-order-received .route-bar .third-step .icon-svg,
.woocommerce-order-received .route-bar .fourth-step .icon-svg {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1);
}

/**************************/
/* ADDress */
/**************************/

#address_selector {
    cursor: pointer;
}

#address_selector_field .woocommerce-input-wrapper {
    position: relative;
}

#delivery_day_field .woocommerce-input-wrapper label {
    padding: 2.3rem 0.5rem;
    margin: 0 6px;
    cursor: pointer;
    font-size: var(--fs-14);
    border: 1px solid transparent;
    font-variation-settings: var(--fw-500);
    color: var(--c-neutral-400);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

#delivery_day_field .woocommerce-input-wrapper input[type="radio"] {
    visibility: hidden;
    position: absolute;
}

#delivery_day_field .woocommerce-input-wrapper input[type="radio"]:checked+label {
    color: var(--c-primary);
    border-bottom: 2px solid var(--c-primary);
}

#delivery_day_field .woocommerce-input-wrapper input[type="radio"]+label .optional {
    display: none;
}

#delivery_day_field input[type="radio"]:disabled,
#delivery_time_field input[type="radio"]:disabled,
#delivery_time_field input[type="radio"]:disabled+label,
#delivery_day_field input[type="radio"]:disabled+label {
    opacity: 0.5;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    /* pointer-events: none; */
    cursor: wait;
}

#delivery_day_field .woocommerce-input-wrapper {
    display: flex;
}

.delivery-inner {
    border: 1px solid var(--c-neutral-200);
    border-radius: 12px;
    margin: 1rem 0 5rem;
}

#delivery_day_field {
    padding: 0rem 1rem;
    border-bottom: 1px solid var(--c-neutral-200);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    overflow-x: auto;
    white-space: nowrap;
}

#delivery_time_field>label,
#delivery_day_field>label {
    display: none !important;
}

#delivery_time_field {
    padding: 3rem 2rem 1rem 2rem;
}

#delivery_time_field .woocommerce-input-wrapper label {
    display: inline-block;
    margin-bottom: 2.5rem;
    width: calc(100% - 23px - 2rem);
    font-size: var(--fs-16);
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


/**************************/
/* BELOW 576px */
/**************************/
@media (width>=576px) {
    .wbs-extra-info .field {
        flex: 1;
    }
}

/**************************/
/* ABOVE 1024px */
/**************************/
@media (width>=1024px) {
    #order_review {
        position: sticky;
        top: calc(var(--header-h) + 1rem);
    }

    .woocommerce-billing-fields__field-wrapper {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}


/**************************/
/* BELOW 1024px */
/**************************/
@media (width< 1024px) {

    .grid-checkout,
    .grid-col-cart {
        grid-template-columns: minmax(0, 1fr);
    }
}

/**************************/
/* BELOW 576px */
/**************************/
@media (width < 576px) {

    .wc-proceed-to-checkout .checkout-button,
    #payment.woocommerce-checkout-payment .button {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        padding: 25px;
        z-index: 50;
        width: auto;
        border-radius: 0;
        border-top: .5px solid #fff;
    }

    .woocommerce-cart .footer-wrapper,
    .woocommerce-checkout .footer-wrapper {
        padding-bottom: 6rem;
    }

    .woocommerce-checkout .fix-menu {
        display: none;
    }

    .coupon-cart .coupon {
        justify-content: center;
    }

    #billing_phone_field,
    .form-row.form-row-last,
    .form-row.form-row-first {
        float: none;
        display: block;
        width: 100%;
    }

    .woocommerce-form-coupon {
        margin-bottom: 3rem;
    }

    /* .woocommerce-form-coupon .button {
    position: static;
    margin-top: 2rem;
  } */
    #form-pattern .woocommerce-form-coupon input {
        margin: 0 !important;
    }

    #national-code_field,

    #address_selector_field,
    #billing_email_field,
    #billing_postcode_field {
        grid-column: 1 / -1;
    }
}

/**************************/
/* BELOW 400px */
/**************************/
@media (width < 400px) {
    .grid-col-cart .woocommerce-cart-form .shop_table tr:not(.coupon-cart) {
        grid-template-columns: 9rem minmax(0, 1fr);
    }

    .product-subtotal {
        grid-column: 2;
        margin-top: 2rem;
    }
}