.woocommerce .ct-loading-add-cart {
    .button.loading {
        opacity: 1;
        i {
            opacity: 0;
        }
        &:before {
            content: '' !important;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(#fff, 0.8);
            z-index: 1;
            @include border-radius(inherit);
            display: block !important;
            transform: translate(0,0);
        }
        &:after {
            content: '' !important;
            width: 16px;
            height: 16px;
            @include border-radius(100%);
            border-color: transparent #0a472f transparent #0a472f;
            border-width: 1px;
            border-style: solid;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            animation: ctspin .6s infinite linear;
            -webkit-animation: ctspin .6s infinite linear;
            box-sizing: border-box;
            z-index: 2;
        }
    }
}
.ct-slick-slider, .ct-grid {
    &.woocommerce .woocommerce-product-inner .woocommerce-product-meta .woocommerce-add-to-cart .product_type_external:before {
        content: "\f104";
        font-family: Caseicon;
        font-size: 12px !important;
    }
}
.ct-dot-carousel-center.elementor-column {
    position: static;
    .elementor-widget-wrap {
        position: static;
        .elementor-element {
            position: static;
            .slick-list, .slick-slider {
                position: static;
                .slick-track {
                    position: static;
                }
            }
        }
    }
    .slick-dots {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
    }
}
.ct-product-carousel1 {
    .container-custom {
        margin-top: 18px;
        .append-dots-custom {
            .slick-dots {
                margin-top: 0px;
                margin-bottom: 0;
                counter-reset: number;
                padding-left: 10px;
                padding-right: 10px;
                li {
                    margin: 0 2px 0 0px;
                    display: inline-block;
                    cursor: pointer;
                    @include transition(all 300ms linear 0ms);
                    font-size: 14px;
                    &:after {
                        content: "/";
                        display: inline-block;
                        color: #000000;
                    }
                    &:last-child {
                        &:after {
                            display: none;
                        }
                    }
                    @media #{ $min-lg } {
                      height: 18px;
                      line-height: 18px;
                    }
                    &:before {
                      @include transition(all 300ms linear 0ms);
                        counter-increment: number;
                        content: '0'counter(number);
                        font-size: 14px;
                        font-weight: bold;
                        color: #000000;
                    }
                    button {
                      font-size: 0;
                      line-height: 1;
                      padding: 0;
                      width: 0;
                      border: none;
                      overflow: visible;
                      @include transition(all 300ms linear 0ms);
                      &:after {
                        display: none;
                      }
                    }
                    &.slick-active {
                      &:before {
                        color: $primary_color;
                      }
                      button {
                        height: 2px;
                        position: relative;
                        top: -2px;
                        @include transition(all 300ms linear 0ms);
                        background-color: $primary_color;
                      }
                    }
                }
            }
        }
        .append-arrows-custom {
            display: flex;
            align-items: center;
            justify-content: center;
            .slick-arrow {
                font-size: 0;
                cursor: pointer;
                &:before {
                    @include transition(all 300ms linear 100ms);
                    width: 100%;
                    height: 100%;
                    text-align: center;
                    font-family: "Caseicon";
                    color: inherit;
                    font-size: 18px;
                    font-weight: bold;
                    color: #000;
                }
                &.slick-prev {
                    @include transform(rotate(-180deg));
                    &:before {
                        content: "\f121";
                    }
                }
                &.slick-next {
                    &:before {
                        content: "\f121";
                    }
                }
                &:hover {
                    &:before {
                        color: $primary_color;
                    }
                }
            }
        }
    }
    .slick-list {
        @media #{ $min-xxl } {
            .slick-slide {
                opacity: 0;
                &.slick-active {
                    opacity: 1;
                }
            }
        }
    }
    .woocommerce-product-header {
        position: absolute;
        max-width: 185px;
        width: 185px;
        height: 185px;
        max-height: 185px;
        @include border-radius(185px);
        background-color: #fff;
        @include box-shadow(0 8px 35px rgba(#0c0c0c, 0.09));
        top: -90px;
        left: 50%;
        @include transform(translateX(-50%));
        &:before {
            @include transition(all 300ms linear 0ms);
            opacity: 0;
            @include transform(translateY(-5px));
            left: 0;
            position: absolute;
            width: 100%;
            height: 100%;
            z-index: -1;
            content: "";
            display: block;
            background-color: $primary_color;
            @include border-radius(50%);
        }
        a {
            background-color: #fff;
            @include border-radius(185px);
            padding: 20px;
            overflow: hidden;
            position: relative;
            display: block;
        }
    }
    .woocommerce-product--title {
        font-size: 22px;
        line-height: 28px;
        margin-bottom: 5px;
        @media #{ $min-xl } {
            padding: 0 15px;
        }
        a {
            color: #000;    
        }
    }
    .item--category {
        margin-bottom: 20px;
        a {
            font-size: 15px;
            color: rgba($third_color, 0.7);
        }
    }
    .woo-rate-price {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin: 0 10px;
        padding-top: 18px;
        @include transition(all 300ms linear 100ms);
        border-top: 1px solid #e2e2e2;
        .price {
            @include transition(all 300ms linear 100ms);
            font-weight: bold;
            color: #000;
        }
        .woocommerce-product--rating {
            position: relative;
            top: -2px;
            right: -5px;
        }
    }
    .woocommerce-add-to-cart {
        position: absolute;
        bottom: -25px;
        left: 50%;
        @include transform(translateX(-50%));
        width: 100%;
        a {
            text-transform: uppercase;
            height: 50px;
            line-height: 50px;
            background-color: $primary_color;
            color: #fff;
            display: inline-block;
            padding-left: 23px;
            padding-right: 23px;
            @include border-radius(5px);
            i {
                line-height: 1;
                font-size: 10px;
                @include transition(all 300ms linear 100ms);
                margin-left: 4px;
            }
            &.added {
                display: none;
                opacity: 0;
            }
        }
    }
    .woocommerce-product-content {

    }   
    .grid-item-inner {
        position: relative;
        margin-top: 115px;
        padding: 120px 15px 45px;
        background-color: #fff;
        text-align: center;
        @include border-radius(10px);
        z-index: 1;
        &:before {
            z-index: -1;
            @include border-radius(10px);
            position: absolute;
            content: "";
            width: 100%;
            height: 100%;
            background-color: #000;
            left: 0;
            right: 0;
            bottom: 0;
            @include transform(scaleY(0));
            transform-origin: bottom center;
            -webkit-transform-origin: bottom center;
            @include transition(.3s cubic-bezier(.24,.74,.58,1));
        }
        &:hover {
            &:before {
                @include transform(scaleY(1));
            }
            .woocommerce-product-header {
                &:before {
                    opacity: 1;
                    @include transform(translateY(-15px));
                }
            }
            .woocommerce-product--title {
                a {
                    color: #fff;    
                }
            }
            .item--category {
                a {
                    color: $primary_color;
                }
            }
            .woo-rate-price {
                border-top: 1px solid rgba(#e2e2e2, 0.17);
                .price {
                    color: #fff;
                }
            }
            .woocommerce-add-to-cart {
                a {
                    background-color: $primary_color;
                    i {
                        @include animation(toRightFromLeft 0.3s linear 1);
                    }
                }
            }
        }
    }
    .ct-slick-carousel[data-arrows="true"] {
        padding-bottom: 35px;
    }
}