/**********************************************
 * CART PAGE REFINED STYLES
 **********************************************/

/* 1) CART TABLE & LAYOUT
------------------------------------------- */
.e-cart__column-start .e-shop-table.e-cart-section {
    background-color: #fff;
    border-radius: 25px;
    margin-bottom: 30px;
    padding: 5px 5px 30px 5px;
}

.elementor-widget-woocommerce-cart .woocommerce .cart th {
    background: #7557a5;
    color: #fff;
    padding: 12px;
    border: none;
    text-transform: uppercase;
}

.shop_table {
    border: 1px solid #ddd;
    width: 100%;
    margin-bottom: 20px;
    border-radius: 8px;
    overflow: hidden;
    border-collapse:collapse!important;
}
.shop_table tr{
    border-bottom: 1px solid #ddd!important;
}
.shop_table tr.cart_item td {
    vertical-align: middle!important;
    border: none!important;
    padding: 10px!important;
}

.elementor-widget-woocommerce-cart .woocommerce .cart thead tr th {
    background-color: #7557a5;
    color: #333 !important;
    padding: 12px;
    font-size: 14px;
    font-weight: 700;
    border: none;
    text-transform: uppercase;
}

.elementor-widget-woocommerce-cart .woocommerce .cart tbody tr td {
    border-bottom: 2px solid #eee;
    padding: 12px;
    vertical-align: middle;
    text-align: center;
}

.cart .cart_item td.product-thumbnail img,
.elementor-widget-woocommerce-cart .woocommerce table.cart img {
    width: 120px !important;
    height: auto;
    border-radius: 5px !important;
    object-fit: cover;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

@media (max-width: 768px) {
    .cart .cart_item td.product-thumbnail img,
.elementor-widget-woocommerce-cart .woocommerce table.cart img{
    width: 65px !important;
}
}

.cart_item .product-remove a.remove svg {
    width: 18px;
    height: 18px;
}

.elementor-widget-woocommerce-cart .woocommerce table.cart {
    margin-bottom: 24px!important;
}

/* 2) COUPON / PROMO CODE AREA
------------------------------------------- */
.cart-collaterals .cart-coupons {
    margin: -20px -20px 20px -20px;
    background: #f1edf9;
    padding: 20px 20px 1px 20px;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}

/* .woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals {
    padding: 20px !important;
} */

.coupon-label {
    margin-left: 14px;
    display: block;
    margin-bottom: 8px;
    font-size: 20px !important;
    font-weight: bold !important;
    color: #525252 !important;
}

.coupon .form-group.is-layout-flex {
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}

#coupon_code {
    flex: 1;
    border-radius: 25px !important;
    padding: 10px 14px;
    border: 1px solid #ccc;
    outline: none;
    font-size: 14px;
    transition: border-color 0.2s ease;
}
#coupon_code:focus {
    border-color: #7557a5;
}

.woocommerce .coupon .button,
.elementor-widget-woocommerce-cart .woocommerce .coupon .button,
.cart-coupons .woocommerce-cart-coupon-form button
{
    background-color: #69cbdc!important;
    color: #fff;
    border: none;
    border-radius: 25px !important;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s ease;
    padding: 0.75rem 1.5rem;
    margin: 0;
    line-height: 1.2rem;
    width: auto!important;
}
.woocommerce .coupon .button[disabled],
.elementor-widget-woocommerce-cart .woocommerce .coupon .button[disabled],
.cart-coupons .woocommerce-cart-coupon-form button[disabled]{
    padding: 0.75rem 1.5rem!important;
}

.woocommerce .coupon .button:hover,
.elementor-widget-woocommerce-cart .woocommerce .coupon .button:hover,
.cart-coupons .woocommerce-cart-coupon-form button:hover {
    background-color: #7557a5!important;
    color: #fff;
}

.woocommerce .coupon .button[disabled]:hover,
.elementor-widget-woocommerce-cart .woocommerce .coupon .button[disabled]:hover,
.cart-coupons .woocommerce-cart-coupon-form button[disabled]:hover {
    background-color: #69cbdc!important;
    padding: 0.75rem 1.5rem!important;
}

/* 3) CART TOTALS & CHECKOUT BUTTON
------------------------------------------- */
.e-cart__column-end .e-cart-totals.e-cart-section {
    border: none;
    border-radius: 25px !important;
    padding-bottom: 20px !important;
    background-color: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.woocommerce-cart .elementor-widget-woocommerce-cart .e-cart-totals {
    padding: 20px !important;
}

.cart_totals h2 {
    font-size: 1.4rem;
    text-transform: uppercase;
    margin-bottom: 20px;
    color: #333;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    letter-spacing:0!important;
}

.cart_totals table tr th,
.cart_totals table tr td {
    font-size: 15px;
    padding: 8px;
}
.cart_totals table .order-total th,
.cart_totals table .order-total td {
    font-weight: 700;
    border-top: 2px solid #eee;
}
.cart_totals table tr.cart-subtotal td:before,
.cart_totals table tr.cart-subtotal td .amount,
.cart_totals table tr.cart-subtotal td .woocommerce-Price-currencySymbol,
.cart_totals table tr.cart-discount td:before,
.cart_totals table tr.cart-discount td .amount,
.cart_totals table tr.cart-discount td .woocommerce-Price-currencySymbol{
    font-size: 14px!important;
    font-weight: normal!important;
    color:#333333!important;
}
.cart_totals table tr.order-total td:before,
.cart_totals table tr.order-total td .amount,
.cart_totals table tr.order-total td .woocommerce-Price-currencySymbol{
     font-size: 18px!important;;
    font-weight: bold!important;
    color: #333333!important;
}

a.button.gd-checkout-open.gd-checkout-button,
a.button.checkout-button,
.woocommerce .wc-proceed-to-checkout .checkout-button {
    background-color: #69cbdc!important;
    color: #fff !important;
    width: 100%;
    text-align: center;
    padding: 16px 28px !important;
    border-radius: 25px !important;
    font-weight: 600;
    transition: background-color 0.2s ease;
    padding: 16px 28px !important;
    border-radius: 25px !important;
}
a.button.gd-checkout-open.gd-checkout-button:hover,
a.button.checkout-button:hover,
.woocommerce .wc-proceed-to-checkout .checkout-button:hover {
    background-color: #7557a5!important;
}

/* 4) ADD MORE COURSES BUTTON
------------------------------------------- */
.woocommerce-cart-form .btn-cart-more-items {
    background-color: #69cbdc !important;
    color: #fff !important;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0 !important;
    transition: background-color 0.2s ease;
    margin-left: 10px;
    border-radius: 25px !important;
    padding: 16px 28px !important;
    min-height: auto;
    line-height: 1;
}
.woocommerce-cart-form .btn-cart-more-items:hover {
    background-color: #7557a5 !important;
}
.elementor-widget-woocommerce-cart .woocommerce table.shop_table tr:nth-child(odd) > th {
    background-color: #eee !important;
}
th.product-price,
td.product-price{
    text-align: right!important;
    padding-left:0!important;
}
th.product-thumbnail {
    border-top-left-radius: 20px;
}
th.product-remove {
    border-top-right-radius: 20px;
    width: 36px;
}
td.product-remove a {
    text-align: center!important;
}
td.product-name a,
.elementor-widget-woocommerce-cart .woocommerce .product-name a {
    text-align: left;
    width: 100%;
    display: block;
}


.e-cart__column-end .e-sticky-right-column {
    position: sticky;
    top: 130px;
}

@media (max-width: 768px) {
    .e-cart__column-end .e-sticky-right-column {
    position: static !important;
}
}

/* Responsive Styles */
@media (max-width: 1025px) {
    .e-cart__container {
        padding: 0px!important;
    }
    .cart_item .product-remove a.remove svg {
        width: 14px;
        height: 14px;
    }
    .elementor-widget-woocommerce-cart .woocommerce .coupon #coupon_code {
        margin-bottom: 0!important;
        margin-right: 0!important;
    }
}

@media (max-width: 768px) {
    .woocommerce #content table.cart .product-thumbnail,
    .woocommerce table.cart .product-thumbnail,
    .woocommerce-page #content table.cart .product-thumbnail,
    .woocommerce-page table.cart .product-thumbnail {
        display: block;
        width: fit-content;
    }
}
@media (max-width: 426px) {
    .e-con.e-flex>.e-con-inner{
        padding-top:0!important;
    }
    .cart_item td.product-price{
        padding-bottom: 0;
    }
    .cart_item .product-thumbnail a{
        text-align: center!important;;
        justify-content: center!important;;
        margin: 0 auto!important;;
        display: flex!important;;
    }
    .cart_item .product-remove a.remove svg {
        width: 20px!important;
        height: 20px!important;
    }
    .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
        content: attr(data-title) " "!important;
    }
    .cart_item{
        margin-bottom: 5px;
        background: #fff;
        border-radius: 25px;
        position: relative;
    }
    .e-cart__column-start .e-shop-table.e-cart-section{
        border:none;
        margin-bottom: 0;
        padding-bottom:10px;
    }
    .btn-cart-more-items{
        margin: 0 auto !important;
        display: block !important;
        width: 95% !important;
        text-align: center !important;
        padding: 14px 28px !important;
    }
    .elementor-widget-woocommerce-cart .woocommerce table.cart tr {
        padding: 6px 6px;
    }
}

@media (max-width: 375px) {
    .coupon .form-group.is-layout-flex {
        /* flex-direction: column!important; */
    }
}

.woocommerce .cart_totals table.shop_table td{
    padding-right: 0!important;
}
/*fix bottom margin error*/
.e-cart__column.e-cart__column-end{
    margin-bottom: 30px;
}
/*fix cart page product title error*/
.product-name a::first-letter,
.sentence-case{
    text-transform: uppercase;
}

.elementor-widget-woocommerce-cart .e-cart__container,
.e-cart__container .e-cart__column,
.e-cart__container .e-cart__column .woocommerce-cart-form,
.e-cart__container .e-cart__column .woocommerce-cart-form .e-shop-table
{
    position: relative;
    max-width: 100%!important;
    padding-bottom: 20px;
}

@media (min-width: 769px){
    .e-cart__container .e-cart__column .woocommerce-cart-form .e-shop-table {
        padding-bottom: 30px;
    }
}
.e-cart__column-start, .e-shop-table {
    overflow: hidden;
}

.e-cart__column-start .e-shop-table .table-wrapper{
    position: relative;
    max-width: 100%;
    overflow-x:scroll;
}

@media (min-width: 768px) {
    .e-cart__column-start .e-shop-table .table-wrapper{
       overflow-x: auto !important;
     }
}

.woocommerce-button.button.download_invoice.order-actions-button{
    width: max-content;
    display: block;
}

.stock.in-stock{
    display: none;
}

/* style */
.custom-cross-sells .course-card button.button.single_add_to_cart_button.alt.added-to-cart-button {
    border-radius: 25px 25px 25px 25px;
    padding: 16px 28px 16px 28px;
    background: #7557a5;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border: none;
    margin-bottom: 10px !important;
}       
.custom-cross-sells .course-card button.single_add_to_cart_button.button.alt {
    border-radius: 25px 25px 25px 25px;
    padding: 16px 28px 16px 28px;
    background: #7557a5;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border: none;
}

.woocommerce .custom-cross-sells ul.products li.course-card.product:nth-child(3n), .woocommerce-page ul.products li.course-card.product:nth-child(3n) {
    margin-right: inherit !important;
}
.woocommerce .custom-cross-sells ul.products.columns-3 li.course-card.product, .woocommerce-page ul.products.columns-3 li.course-card.product {
    width: 23% !important;
    margin: 10px !important;
    position: relative;
    min-height: 445px;
}
@media (max-width: 768px) {
.woocommerce .custom-cross-sells ul.products.columns-3 li.course-card.product, .woocommerce-page ul.products.columns-3 li.course-card.product {
    width: 100% !important;
    margin: 10px;
}
}
@media (min-width: 769px) and (max-width: 1024px) {
    .woocommerce .custom-cross-sells ul.products.columns-3 li.course-card.product, .woocommerce-page ul.products.columns-3 li.course-card.product {
        width: 30.5% !important;
    }
}

.woocommerce .products ul, .woocommerce .custom-cross-sells ul.products {
    width: auto !important;
    display: flex;
    flex-wrap: wrap;
    gap: 0px;
    padding: 0px;
    margin: 10px !important;
}

.woocommerce .custom-cross-sells ul.products li.product a img{
    width: 100%;
    height: 200px;
    object-fit: cover;
}

.woocommerce .custom-cross-sells ul.products li.product button.button.enquire-now-button {
    border-radius: 25px 25px 25px 25px;
    padding: 16px 28px 16px 28px;
    background: #7557a5;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    border: 0px;
}
.woocommerce .products ul, .woocommerce .custom-cross-sells ul.products span.woocommerce-Price-currencySymbol{
    padding-left: 0px ;
}

.woocommerce .products ul, .woocommerce .custom-cross-sells ul.products a.button.late-ce-button{
    margin-left: 10px;
}


.custom-cross-sells .card-footer{
    position: absolute;
    bottom: 0;
    width:100%;
}