.shop_table,
.shop_table th,
.shop_table td {
    border-color: var(--light) !important;
}

.shop_table th,
.shop_table td {
    border-bottom: none !important;
    min-width: none;
    font-size: .9rem;
}

.shop_table th:last-child,
.shop_table td:last-child {
    border-right: none !important;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
    min-width: 64px;
}

#add_payment_method .cart-collaterals .cart_totals table th,
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce-checkout .cart-collaterals .cart_totals table th {
    width: auto;
}

.shop_table td.product-thumbnail {
    width: 64px;
    height: 64px;
    padding: 0 !important;
}

.shop_table td.product-thumbnail a,
.shop_table td.product-thumbnail img {
    display: block;
    width: 64px;
    height: 64px;
    margin: 0;
    padding: 0;
}

.shop_table td.product-name a {
    color: var(--primary);
    font-size: 1rem;
}


.page .site-content .woocommerce-checkout-review-order-table th,
.shop_table .fee th {
    min-width: 100px;
    font-size: .9rem !important;
    line-height: 1.1 !important;
}

.checkout-button {
    background: var(--primary) !important;
}

.woocommerce form.checkout_coupon {
    border-color: var(--light);
    background: var(--light-2);
}

#coupon_code {
    min-width: 150px;
    font-size: .9rem;
    font-family: var(--font);
}

.woocommerce-form-coupon button.button {
    color: var(--background);
    background: var(--primary);
    margin-right: auto;
    margin-bottom: 0;
}


#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
    background: var(--light);
    font-size: .8rem;
    line-height: 1.1;
    font-weight: 400;
    color: var(--primary);

    &::before {
        border: 1em solid var(--light);
        border-right-color: transparent;
        border-left-color: transparent;
        border-top-color: transparent;
        top: -.9em;
        left: 0;
        margin: -1em 0 0 2em;
    }
}

.wc_payment_method img {
    max-height: 1.5rem;
}

.woocommerce-info {
    color: var(--primary);
    background: var(--light);
    border-color: var(--secondary);
    font-size: .9rem;
    line-height: 1rem;

    &::before {
        color: var(--secondary)
    }
}

.woocommerce-error {
    color: #ff4545;
    background: #fff1f1;
    border-color: #ff0f0f;
    font-size: .9rem;
    line-height: 1rem;

    &::before {
        color: #ff4545;
    }
}

.woocommerce form .form-row.woocommerce-invalid label,
#add_payment_method .checkout .checkout-inline-error-message,
.woocommerce-cart .checkout .checkout-inline-error-message,
.woocommerce-checkout .checkout .checkout-inline-error-message,
.woocommerce form .form-row .required,
.site .woocommerce-error a {
    color: #ff4545;
}

.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
    border-color: #ff4545;
}

.site .woocommerce-info a,
.site .woocommerce-privacy-policy-text a {
    text-decoration: underline;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    float: none;
    width: 100%;
}

.woocommerce .col2-set::after,
.woocommerce .col2-set::before,
.woocommerce-page .col2-set::after,
.woocommerce-page .col2-set::before {
    display: none;
}


#customer_details {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;

}

.woocommerce form .form-row {
    margin: 0;
}

.woocommerce form.woocommerce-checkout label {
    font-size: .85rem;
    line-height: 1.5;
    color: var(--primary);
    font-weight: 500;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select,
.woocommerce form .select2-dropdown,
.woocommerce form .select2-selection {
    border: 1px solid var(--light);
    font-size: .9rem;
    font-weight: 500;
}

.woocommerce form .form-row .input-text:focus {
    border-color: var(--secondary);
}

.select2-container .select2-dropdown,
.select2-container .select2-selection {
    border-color: var(--light);
}

.select2-container--default .select2-results__option,
.select2-container--default .select2-results__option {
    font-size: .9rem;
    font-weight: 500;
}

.select2-container--default .select2-results__option[aria-selected=true],
.select2-container--default .select2-results__option[data-selected=true] {
    color: var(--background);
    background: var(--primary);
}

.select2-results__option[aria-selected],
.select2-results__option[data-selected] {
    color: var(--primary);
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background: var(--secondary);
}

.wc_payment_methods .woocommerce-info,
.woocommerce-privacy-policy-text {
    font-size: .85rem;
    font-weight: 500;
}

#ship-to-different-address label {
    font-size: 1.1rem;
    font-weight: 600;
    cursor: pointer;
}

#order_review_heading {
    width: 50%;
}

#add_payment_method #payment {
    background: none;
}

.woocommerce-cart #payment,
.woocommerce-checkout #payment {
    background: var(--light-2);
    padding: 1rem .75rem;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt {
    width: 100%;
    background: var(--primary);
    font-weight: 600;
    padding: .75rem 1.5rem;
    font-size: 1.1rem;

    &:hover {
        background: var(--primary);
    }
}


/* SMARTPHONES PORTRAIT */
@media only screen and (min-width: 300px) {}

/* SMARTPHONES LANDSCAPE */
@media only screen and (min-width: 480px) {}

/* TABLETS PORTRAIT */
@media only screen and (min-width: 768px) {}

/* TABLET LANDSCAPE / DESKTOP */
@media only screen and (min-width: 1024px) {
    form.woocommerce-checkout {
        position: relative;
        display: flex;
        flex-wrap: wrap;
        gap: 1.5rem;
    }

    form.woocommerce-checkout .woocommerce-NoticeGroup {
        width: 100%;
    }

    form.woocommerce-checkout #customer_details {
        width: calc(66.66% - .75rem);
    }

    form.woocommerce-checkout #order_review_heading {
        display: none;

    }

    form.woocommerce-checkout #order_review {
        height: fit-content;
        width: calc(33.33% - .75rem);
    }

    .woocommerce-billing-fields__field-wrapper,
    .woocommerce-shipping-fields__field-wrapper {
        display: flex;
        flex-wrap: wrap;
        gap: .5rem 1.5rem;
        margin-bottom: 1.5rem;
    }

    .woocommerce-page form .form-row-first,
    .woocommerce-page form .form-row-last,
    .woocommerce form .woocommerce-billing-fields__field-wrapper .form-row,
    .woocommerce form .woocommerce-shipping-fields__field-wrapper .form-row {
        width: calc(50% - .75rem);
        display: flex;
        gap: 0;
        flex-direction: column;
    }

    #billing_address_2,
    #shipping_address_2 {
        margin-top: 21px;
    }
}