.e-cart__column.e-cart__column-end {
    border-radius: 16px !important;
    padding: 25px !important;
    position: relative !important;
    overflow: hidden !important;
    max-height: fit-content;
    height: -moz-max-content;
}

.e-cart__column.e-cart__column-end::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, .05) 50%, transparent 70%);
    pointer-events: none
}

.cart_totals h2 {
    display: none !important
}

.cart_totals .shop_table {
    display: none !important
}

.custom-cart-totals {
    text-align: center;
    margin-bottom: 25px;
    position: relative;
    z-index: 2;
    animation: fadeInUp .6s ease-out
}

.custom-total-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 10px;
    flex-wrap: wrap
}

.total-label {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    text-shadow: 0 2px 4px rgba(0, 0, 0, .3)
}

.total-price-section {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap
}

.current-total {
    color: #fff;
    font-size: 42px;
    font-weight: 700;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .4);
    letter-spacing: -1px
}

.original-total {
    color: rgba(255, 255, 255, .6);
    font-size: 20px;
    text-decoration: line-through;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .3)
}

.discount-info {
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    margin-top: -9px;
    display: block;
    margin-left: 95px
}

.wc-proceed-to-checkout {
    margin-top: 20px;
    position: relative;
    z-index: 2
}

.checkout-button {
    background: linear-gradient(135deg, #00E5FF 0%, #00B4D8 100%) !important;
    color: #1A1A2E !important;
    border: none !important;
    border-radius: 25px !important;
    padding: 18px 40px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: .5px !important;
    width: 100% !important;
    transition: all .3s ease !important;
    box-shadow: 0 8px 25px rgba(0, 229, 255, .3) !important;
    text-decoration: none !important;
    display: block !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
    animation: fadeInUp .8s ease-out
}

.checkout-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .2), transparent);
    transition: left .5s ease
}

.checkout-button:hover {
    box-shadow: 0 12px 35px rgba(0, 229, 255, .4) !important;
    background: linear-gradient(135deg, #00BFFF 0%, #0099CC 100%) !important
}

.checkout-button:hover::before {
    left: 100%
}

.checkout-button:focus {
    outline: 3px solid rgba(0, 229, 255, .6) !important;
    outline-offset: 2px !important
}

@media (max-width:768px) {
    .custom-total-header {
        flex-direction: column;
        gap: 10px
    }

    .total-label {
        font-size: 24px
    }

    .current-total {
        font-size: 36px
    }

    .original-total {
        font-size: 18px
    }

    .discount-info {
        font-size: 14px
    }

    .checkout-button {
        padding: 16px 30px !important;
        font-size: 16px !important
    }

    .e-cart__column.e-cart__column-end {
        padding: 20px !important
    }
}

@media (max-width:480px) {
    .total-price-section {
        flex-direction: column;
        gap: 5px
    }

    .current-total {
        font-size: 32px
    }

    .original-total {
        font-size: 16px
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

#price_cont .elementor-heading-title,
#price_pre_cont .elementor-heading-title,
#descuento_cont .elementor-heading-title {
    transition: all .3s ease
}