
/*--------------------------------------------------------------*/
    /* #region - Product Category Listing */
/*--------------------------------------------------------------*/

    .elementor-widget-wdt-shop-product-cat .elementor-widget-container { margin: -10px; }
    .elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item { margin: 0; padding: 10px; }

    .wdt-shop-category-listing-item:not(.column),
    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner,
    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner > div { float: left; width: 100%; }
    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data { 
        position: static;
        z-index: 1;
        text-align: left; 
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        height: fit-content;
        align-self: end;
        padding: 20px;
        color: var(--wdtAccentTxtColor);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner {
        display: grid;
        position: relative;
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner > div {
        grid-area: 1/-1;
    }


    .wdt-shop-category-listing-item .wdt-shop-category-listing-image { position: relative; }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image { overflow: hidden; }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image > a,
	.wdt-shop-category-listing-item .wdt-shop-category-listing-image img { display: block; }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image > a { position: relative; overflow: hidden; }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image > a:after {
        content: "";
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        background-color: transparent;
        background-image: linear-gradient(to top, rgb(var(--wdtHeadAltColorRgb), 0.8) 0%, rgb(var(--wdtHeadAltColorRgb), 0) 100%);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-image > a img {
        transform: scale(1);
        -webkit-transform: scale(1);
        transition: var(--wdtAltTransition);
        -webkit-transition: var(--wdtAltTransition);
    }

    .wdt-shop-category-listing-item:hover .wdt-shop-category-listing-image > a img {
        transform: scale(1.04);
        -webkit-transform: scale(1.04); 
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data h3 { 
        margin-top: 0; 
        margin-bottom: 6px;
        font-size: var(--wdtFontSize_Ext); 
        grid-area: 1 / 1 / 1 / 3;
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data h3 a {
        color: var(--wdtAccentTxtColor);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data h3 a:hover {
        color: rgb(var(--wdtAccentTxtColorRgb),0.8);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data .wdt-shop-category-total-items {
        grid-area: 2 / 1 / 2 / 3;
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data a.button {
        grid-area: 1 / 3 / 3 / 4;
        position: absolute;
        top: 10px;
        right: 10px;
        margin: 0;
        font-size: 0;
        padding: 0;
        transform: unset;
        -webkit-transform: unset;
        box-shadow: unset;
        -webkit-box-shadow: unset;
        align-self: self-start;
        justify-self: self-end;
        width: 40px;
        height: 40px;
        border-radius: var(--wdtRadius_Full);
        -webkit-border-radius: var(--wdtRadius_Full);
        border: 2px solid var(--wdtPrimaryColor);
        background-color: var(--wdtPrimaryColor);
        color: var(--wdtAccentTxtColor);
        transition: var(--wdtBaseTransition);
        -webkit-transition: var(--wdtBaseTransition);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data a.button:hover {
        color: var(--wdtHeadAltColor);
        background-color: var(--wdtAccentTxtColor);
        border-color: var(--wdtAccentTxtColor);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data a.button:after {
        position: absolute;
        inset: 0;
        margin: auto;
        display: block;
        width: fit-content;
        height: fit-content;
        content: '\0809';
        font-family: "karimotors-extra-icons";
        font-style: normal;
        font-weight: normal;
        font-size: 16px;
        padding-top: 0;
        padding-left: 0;
        transition: transform 0.35s ease-in-out;
        -webkit-transition: transform 0.35s ease-in-out;
        transform: rotate(0);
        -webkit-transform: rotate(0);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data a.button:hover:after {
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
    }

    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data .wdt-shop-category-starting-price-html del { display: none; }
    .wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data ins { background: none; }

	.wdt-shop-category-listing-item .wdt-shop-category-listing-inner .wdt-shop-category-meta-data .wdt-shop-category-starting-price-html + .button { margin-top: 20px; }


    /* Type 1 */
    .wdt-shop-category-listing-item.type1 .wdt-shop-category-listing-inner .wdt-shop-category-listing-image > a { -webkit-perspective: 500px; -ms-perspective: 500px; perspective: 500px; }

	.wdt-shop-category-listing-item.type1 .wdt-shop-category-listing-inner .wdt-shop-category-listing-image .wdt-shop-category-listing-color { content: ""; height: 0; margin: auto; padding-top: 75%; position: absolute; bottom: 40%; left: 50%; top: auto; width: 75%; z-index: -1; -webkit-border-radius: 50%; border-radius: 50%; -webkit-transform: translate(-50%, 50%); transform: translate(-50%, 50%); -webkit-transform-style: preserve-3d; transform-style: preserve-3d; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transition: bottom 0.3s ease-in-out 0s, padding-top 0.3s ease-in-out 0.3s, width 0.3s ease-in-out 0.3s; transition: bottom 0.3s ease-in-out 0s, padding-top 0.3s ease-in-out 0.3s, width 0.3s ease-in-out 0.3s; }

	.wdt-shop-category-listing-item.type1 .wdt-shop-category-listing-inner .wdt-shop-category-meta-data { padding: 20px 15px 0; }

	.wdt-shop-category-listing-item.type1 .wdt-shop-category-listing-inner .wdt-shop-category-meta-data h3 { font-size: 28px; }

	.wdt-shop-category-listing-item.type1 .wdt-shop-category-listing-inner .wdt-shop-category-listing-image img { margin: auto; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition: all 0.3s ease-in-out 0.3s; transition: all 0.3s ease-in-out 0.3s; }

	.wdt-shop-category-listing-item.type1:hover .wdt-shop-category-listing-inner .wdt-shop-category-listing-image .wdt-shop-category-listing-color { bottom: 50%; padding-top: 200%; width: 200%; }

    .wdt-shop-category-listing-item.type1:hover .wdt-shop-category-listing-inner .wdt-shop-category-listing-image img { -webkit-transform: translateZ(-35px); transform: translateZ(-35px); }


    /* Type 2 */
    .wdt-shop-category-listing-item.type2 .wdt-shop-category-listing-inner { border: 1px solid #e4e4e4; }

    .wdt-shop-category-listing-item.type2 .wdt-shop-category-listing-inner .wdt-shop-category-listing-image img { margin: auto; -webkit-transform: scale(0.8); transform: scale(0.8); }

    .wdt-shop-category-listing-item.type2 .wdt-shop-category-listing-inner .wdt-shop-category-meta-data { border-style: solid; border-width: 1px 0 0; border-color: inherit; padding: 30px 20px; }

    .wdt-shop-category-listing-item.type2 .wdt-shop-category-listing-inner .wdt-shop-category-meta-data h3 { font-size: 30px; }

    .wdt-shop-category-listing-item.type2 .wdt-shop-category-listing-inner .wdt-shop-category-meta-data > *:last-child { margin-bottom: 0; }

/* #endregion - Product Category Listing */


/* ---------------
Carousel Style
----------------- */

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner  {
    border: 2px solid var(--wdtBorderColor);
    position: relative;
    will-change: transform;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:before,
.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:after {
    content: "";
    position: absolute;
    top: -2px;
    bottom: -2px;
    left: -2px;
    right: -2px;
    border-style: solid;
    border-color: var(--wdtPrimaryColor);
    pointer-events: none;
    z-index: 1;
    transition: var(--wdtAltTransition);
    -webkit-transition: var(--wdtAltTransition);
    will-change: transform;
    transform-origin: center;
    -webkit-transform-origin: center;
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:after {
    border-width: 0 2px;
    transform: scaleY(0);
    -webkit-transform: scaleY(0);
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:hover:after {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:before {
    border-width: 2px 0;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item .wdt-shop-category-listing-inner:hover:before {
    transform: scaleX(1);
    -webkit-transform: scaleX(1);
}

.elementor-widget-wdt-shop-product-cat .wdt-shop-category-listing-item.swiper-slide {
    padding: 0;
    cursor: grab;
}

.elementor-widget-wdt-shop-product-cat .elementor-widget-container:has(.swiper-container) {
    margin: 0;
    overflow: hidden;
}

div[class*="product"].elementor-widget-wdt-shop-product-cat .swiper-container {
    overflow: visible;
    padding: 0;
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next,
.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev {
    width: 40px;
    height: 40px;
    padding: 0;
    opacity: 1;
    top: 37%;
    background-color: var(--wdtPrimaryColor);
    color: var(--wdtAccentTxtColor);
    border-radius: var(--wdtRadius_Full);
    -webkit-border-radius: var(--wdtRadius_Full);
    transform: unset;
    -webkit-transform: unset;
    box-shadow: unset;
    -webkit-box-shadow: unset;
    transition: var(--wdtBaseTransition);
    -webkit-transition: var(--wdtBaseTransition);
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next:hover,
.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev:hover {
    color: var(--wdtlinkColor);
    background-color: var(--wdtAccentTxtColor);
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next {
    right: 20px;
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev {
    left: 20px;
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next:after,
.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev:after {
    font-size: 14px;
    font-family: "karimotors-extra-icons";
    font-style: normal;
    font-weight: normal;
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next:after {
    content: '\0810';
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev:after {
    content: '\0811';
}

.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-next.swiper-button-disabled,
.elementor-widget-wdt-shop-product-cat .swiper-container > div.swiper-button-prev.swiper-button-disabled {
    cursor: not-allowed;
    opacity: 1;
    pointer-events: unset;
}

/* pagination dots */

.elementor-widget-wdt-shop-product-cat .swiper-container > .swiper-pagination {
    position: relative;
    bottom: 0;
}

.elementor-widget-wdt-shop-product-cat .swiper-container > .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 0;
    margin-top: clamp(2.5rem, 2rem + 2.5vw, 5rem); /*80px - 40px*/
}

.elementor-widget-wdt-shop-product-cat .swiper-container > .swiper-pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0 8px;
    opacity: 1;
    border-radius: var(--wdtRadius_Full);
    -webkit-border-radius: var(--wdtRadius_Full);
    transition: var(--wdtBaseTransition);
    -webkit-transition: var(--wdtBaseTransition);
    background-color: var(--wdtSecondaryColor);
}

.elementor-widget-wdt-shop-product-cat .swiper-container > .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active,
.elementor-widget-wdt-shop-product-cat .swiper-container > .swiper-pagination .swiper-pagination-bullet:hover {
    background-color: var(--wdtPrimaryColor);
}