/* cart-page-section Start  */
.cart-page-section {
    --pad-t: 111px;
    padding-top: calc( var( --header-h ) + var( --pad-t ) );
    padding-bottom: 160px;
}

    .cart-container {
        --site-bg-color: var( --input-bg-color );
        box-sizing: border-box;
        padding: 50px 70px 50px 70px;
        background: var( --input-bg-color );
        box-shadow: 0px 0px 5px 2px rgba(229, 229, 229, 0.25);
    }

    .cart-container.vertical-center {
        height: 50vh;
    }

        .cart-container.vertical-center > .table-block,
        .vertical-center > .table-block {
            max-width: 800px;
            width: 100%;
            margin: 0 auto;
        }

        .cart-container hr {
            border: none;
            border-top: 1px solid var( --site-text-color );
            margin-top: 20px;
            margin-bottom: 40px;
        }

        .cart-container.vertical-center .h2 {
            margin-bottom: 40px;
        }

        .cart-products-table {
            --tr-pad-l: 20px;
            width: 100%;
            margin-bottom: 40px;
        }

            .cart-products-table th {
                padding: 20px 0 20px var( --tr-pad-l );
                font-family: var( --font-2 );
                font-size: 15px;
                font-weight: 500;
                line-height: 1.4;
                text-align: center;
                vertical-align: middle;
            }

            .cart-products-table td {
                padding: 20px 0 30px var( --tr-pad-l );
                font-size: 14px;
                font-weight: 500;
                line-height: 1.4;
                text-align: center;
                vertical-align: middle;
                border-bottom: 1px solid var( --site-text-color );
            }

            .cart-products-table .cart-img-td {
                width: 18%;
                padding-left: 0
            }

                .cart-products-table .cart-img-td .image-block::before {
                    padding-top: var( --products-img-pad );
                }

                .cart-products-table .cart-img-td .image-block img {
                    object-fit: cover;
                }

                .cart-products-table .cart-img-td .image-block a:hover img {
                    transform: scale( 1.1 );
                }

            .cart-products-table .cart-title-td {
                width: 27%;
                padding-right: 20px;
            }

            .cart-products-table .cart-quantity-td {
                width: 20%;
            }

            .cart-products-table .cart-price-td,
            .cart-products-table .cart-subtotal-td {
                width: 15%;
            }

            .cart-products-table .cart-remove-td {
                width: 5%;
            }

        .cart-page-section .cart-total {
            width: 100%;
            margin-bottom: 40px;
        }

            .cart-page-section .cart-total td {
                font-size: 12px;
                font-weight: 500;
                padding-bottom: 10px;
                
            }

                .cart-page-section .cart-total td:first-of-type {
                    font-weight: 700;
                    width: 90px;
                }
            
            .cart-page-section .cart-total tr:last-of-type td {
                font-size: 25px;
                padding-bottom: 0;
            }
/* cart-page-section End */

/* checkout-block Start  */
.checkout-block {
    --r-w: 50%;
    margin-top: 50px;
    padding: 0 25px;
}

    .checkout-block .checkout-form-block {
        width: calc( 100% - var( --r-w ) );
        float: left;
        padding-top: 40px;
        padding-right: 33px;
        box-sizing: border-box;
        margin-bottom: 40px;
    }

        .checkout-form-block.content-block p {
            margin-bottom: 15px;
        }

        .checkout-block .checkout-form-block .checkout-form-screen {
            display: none;
        }

        .checkout-block .checkout-form-block .checkout-form-screen.active {
            display: block;
        }

            .checkout-block .checkout-form-block .woocommerce-input-wrapper,
            .checkout-block .checkout-form-block .input-wrapper {
                padding-top: 5px;
                margin-bottom: 30px;
            }

            .checkout-block .checkout-form-block .checkbox-wrapper {
                margin-bottom: 10px;
                margin-right: 25px;
            }

            #CheckoutScreen_3 .checkbox-wrapper {
                display: block;
            }

            .checkout-block .checkout-form-block .woocommerce-input-wrapper input,
            .checkout-block .checkout-form-block .woocommerce-input-wrapper textarea,
            .checkout-block .checkout-form-block .woocommerce-input-wrapper .select2-selection,
            .checkout-block .checkout-form-block .input-wrapper input,
            .checkout-block .checkout-form-block .input-wrapper textarea,
            .checkout-block .checkout-form-block .input-wrapper .select2-selection {
                background: transparent!important;
            }

            .checkout-block .checkout-form-block .buttons-wrapper {
                margin-top: 40px;
            }

    .checkout-block .checkout-products-block {
        --site-bg-color: var( --input-bg-color );
        width: var( --r-w );
        max-width: 410px;
        float: right;
        padding: 44px 44px;
        box-sizing: border-box;
        background: var( --input-bg-color );
        box-shadow: 0px 0px 5px 2px rgba(229, 229, 229, 0.25);
        margin-bottom: 40px;
        z-index: 1;
    }

        .checkout-products-wrapper {
            --img-w: 38%;
            --tr-paf-l: 20px;
            padding-bottom: 10px;
            border-bottom: 1px solid var( --site-text-color );
        }

            .checkout-products-item {
                overflow: hidden;
                margin-bottom: 20px;
                position: relative;
            }

                .checkout-products-item .heckout-product-img {
                    width: var( --img-w );
                    float: left;
                }

                    .checkout-products-item .heckout-product-img::before {
                        padding-top: var( --products-img-pad );
                    }

                    .checkout-products-item .heckout-product-img img {
                        object-fit: cover;
                        height: 100%;
                    }

                    .checkout-products-item .heckout-product-img a:hover img {
                        transform: scale( 1.1 );
                    }

                .checkout-products-item .checkout-product-title,
                .checkout-products-item .checkout-product-price {
                    width: calc( 100% - var( --img-w ) );
                    box-sizing: border-box;
                    float: right;
                    padding-left: var( --tr-paf-l );
                }

                .checkout-products-item .checkout-product-title {
                    font-size: 12px;
                    font-weight: 500;
                    padding-bottom: 25px;
                }

                .checkout-products-item .checkout-product-price {
                    font-size: 17px;
                    font-weight: 500;
                    position: absolute;
                    bottom: 0;
                    left: calc( var( --img-w ) );
                }
        
        .checkout-total-info {
            padding-top: 15px;
            position: relative;
        }

            .checkout-total-info .cart-total {
                margin-bottom: 0;
            }

            .mob-checkout-open-products-bt {
                display: none;
                width: 24px;
                height: 24px;
                position: absolute;
                left: calc( 50% - 7px );
                top: 10px;
            }

                .mob-checkout-open-products-bt::before {
                    content: "";
                    display: block;
                    width: 14px;
                    height: 8px;
                    position: absolute;
                    top: calc( 50% - 4px );
                    left: calc( 50% - 7px );
                    background: url( "../images/mob-checkout-open-products-bt.png" ) center no-repeat;
                    background-size: contain;
                    transition: transform 0.3s;
                }

                .checkout-block .checkout-products-block.active .mob-checkout-open-products-bt::before {
                    transform: rotate( 180deg );
                }

.payment_method_authnet {
    padding: 0!important;
    background: transparent!important;
}

    .payment_method_authnet::before {
        display: none!important;
    }

    .payment_method_authnet input {
        height: 32px!important;
        padding: 4px 0!important;
        margin-bottom: 20px!important;
        background: transparent!important;
        border: none!important;
        border-bottom: 1px solid var( --site-text-color )!important;
        font-size: 18px!important;
    }
/* checkout-block End */

@media all and (max-width: 1300px) {
    .cart-page-section {
        --pad-t: 70px;
    }

    .cart-container {
        padding: 40px;
    }

    .checkout-block .checkout-products-block{
        padding: 45px 25px;
    }
}

@media all and (max-width: 1000px) {
    .cart-page-section {
        --pad-t: 40px;
        --img-w: 30%;
        padding-bottom: 120px;
    }

    .cart-container {
        --site-bg-color: var( --site-bg-color-copy );
        padding: 0;
        background: transparent;
        box-shadow: none;
    }

    .cart-products-table {
        margin-top: 30px;
    }

    .cart-products-table tr {
        display: block;
        position: relative;
        overflow: hidden;
        padding-bottom: 30px;
        margin-bottom: 24px;
        border-bottom: 1px solid var( --site-text-color );
    }

    .cart-products-table tr:first-of-type {
        display: none;
    }

    .cart-products-table tr:last-of-type {
        margin-bottom: 0;
    }

    .cart-products-table td {
        display: block;
        box-sizing: border-box;
        float: right;
        border-bottom: none;
        text-align: left;
        padding-top: 0;
        padding-bottom: 0;
    }

    .cart-products-table .cart-img-td {
        width: var( --img-w );
        float: left;
    }

    .cart-products-table .cart-title-td,
    .cart-products-table .cart-quantity-td,
    .cart-products-table .cart-subtotal-td {
        width: calc( 100% - var( --img-w ) );
    }

    .cart-products-table .cart-title-td {
        padding-bottom: 22px;
        font-size: 12px;
    }

    .cart-products-table .cart-quantity-td {
        padding-bottom: 22px;
    }

    .cart-products-table .cart-remove-td {
        width: auto;
        position: absolute;
        top: 0;
        right: 0;
    }

    .cart-products-table .cart-price-td {
        display: none;
    }

    .cart-container.vertical-center .h2 {
        margin-bottom: 20px;
    }

    .checkout-block {
        --r-w: 55%;
        padding: 0;
        margin-top: 0;
    }

    .checkout-block .checkout-form-block {
        padding-top: 35px;
        margin-bottom: 0;
    }

    .checkout-block .checkout-products-block {
        margin-bottom: 0;
    }

    .checkout-block .checkout-form-block .buttons-wrapper {
        margin-top: 30px;
    }

    .checkout-block .checkout-form-block .input-wrapper {
        margin-bottom: 20px;
    }

    .checkout-block .checkout-form-block .input-wrapper input,
    .checkout-block .checkout-form-block .input-wrapper textarea,
    .input-wrapper .input-name,
    .form-row label {
        font-size: 15px;
    }

    .checkout-block .checkout-form-block .buttons-wrapper .button {
        max-width: 195px;
        margin-right: 20px;
    }
}

@media all and (max-width: 750px) {
    .cart-page-section {
        --img-w: 40%;
    }

    .cart-products-table .cart-title-td {
        padding-bottom: 18px;
    }

    .cart-products-table .cart-quantity-td {
        padding-bottom: 18px;
    }

    .cart-products-table {
        margin-bottom: 30px;
    }

    .cart-page-section .cart-total tr:last-of-type td {
        font-size: 17px;
    }

    .cart-page-section .cart-total td:first-of-type {
        width: 75px;
    }

    .cart-page-section.checkout-page-section {
        min-height: 300px;
        padding-bottom: 220px;
        position: relative;
    }

    .cart-page-section.checkout-page-section > .container {
        position: static;
    }

    .checkout-block .checkout-products-block {
        position: absolute!important;
        left: 0;
        bottom: 0;
        width: 100%;
        max-width: none;
        padding: 0 var( --cont-pad ) 30px var( --cont-pad );
    }

    .checkout-products-wrapper {
        overflow: hidden;
        border-bottom: none;
        padding-top: 55px;
        margin-bottom: -55px;
        padding-bottom: 0;
        position: relative;
        z-index: 0;
        transition: margin 0.3s;
    }

    .checkout-block .checkout-products-block.active .checkout-products-wrapper {
        margin-bottom: 0;
    }

    .checkout-products-block.active .checkout-products-wrapper::before {
        content: "";
        display: block;
        width: 100%;
        height: 10px;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 2;
        background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.5) 40%,rgba(255,255,255,1) 100%);
    }

    .checkout-products-wrapper > div {
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.5s;
    }

    .checkout-products-wrapper > div::-webkit-scrollbar-track {
        background: var( --input-bg-color );
    }

    .checkout-products-block.active .checkout-products-wrapper > div {
        max-height: 400px;
        overflow: auto;
    }

    .checkout-block .checkout-form-block {
        padding: 0;
        width: 100%;
        float: none;
    }

    .checkout-total-info {
        padding-top: 30px;
        background: var( --input-bg-color );
    }

    .checkout-products-block.active .checkout-total-info {
        padding-top: 30px;
    }

    .cart-page-section .cart-total td:last-of-type {
        text-align: right;
    }

    .mob-checkout-open-products-bt {
        display: block;
        position: absolute;
    }
}

@media all and (max-width: 499px) {
    .cart-page-section {
        --img-w: 47%;
        padding-bottom: 90px;
    }

    .cart-products-table {
        --tr-pad-l: 10px;
    }

    .cart-products-table tr {
        padding-bottom: 24px;
    }

    .cart-products-table .cart-title-td {
        font-size: 10px;
        padding-bottom: 12px;
    }

    .cart-products-table .cart-quantity-td {
        padding-bottom: 12px;
    }
}

@media all and (max-width: 320px) {
    .cart-page-section {
        --img-w: 40%;
    }

    .checkout-products-wrapper {
        --img-w: 38%;
        --tr-paf-l: 10px;
    }
}