.wd-product {
    position: relative;
    text-align: var(--text-align);
    line-height: 1.4;
    --text-align: center;
    --wd-btn-inset: 10px;
    --wd-prod-gap: 12px;
    --wd-prod-bg-sp: 0;
    --wd-prod-bg-cont-sp: 0;
    --wd-prod-trim: calc((var(--wd-text-line-height) * -.5em) + .5em)
}

.wd-product .product-wrapper {
    border-radius: var(--wd-brd-radius);
    padding: var(--wd-prod-bg-sp)
}

.wd-product :where(.product-wrapper,.product-element-bottom) {
    display: flex;
    flex-direction: column;
    gap: var(--wd-prod-gap)
}

.wd-product:not(.wd-hover-small) :is(.product-image-link,.hover-img) :is(picture,img) {
    width: 100%
}

.wd-product .product-image-link {
    position: relative;
    display: block
}

.wd-product .hover-img {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--bgcolor-white);
    opacity: 0;
    transition: opacity 0.5s ease,transform 2s cubic-bezier(0, 0, 0.44, 1.18);
    pointer-events: none
}

.wd-product :is(.wd-entities-title,.wd-product-cats,.wd-product-brands-links,.wd-product-sku,.wd-product-stock,.price) {
    line-height: inherit;
    margin-block:-.2em}

.wd-product .wd-entities-title {
    font-size: inherit
}

.wd-product :is(.wd-product-cats,.wd-product-brands-links) {
    font-size: 95%;
    color: var(--color-gray-400);
    --wd-link-color: var(--color-gray-400);
    --wd-link-color-hover: var(--color-gray-700)
}

.wd-product :is(.wd-product-cats,.wd-product-brands-links) a {
    display: inline-block
}

.wd-product .wd-product-sku {
    color: var(--color-gray-400)
}

.wd-product .wd-star-rating {
    display: inline-flex;
    align-items: center;
    align-self: var(--text-align);
    gap: 5px
}

.wd-product .star-rating {
    align-self: var(--text-align);
    line-height: 1
}

.wd-product .woocommerce-review-link {
    line-height: 1;
    color: var(--color-gray-500)
}

.wd-product .woocommerce-review-link:hover {
    color: var(--color-gray-900)
}

.wd-product .wd-swatches-grid:empty {
    display: none
}

.wd-product :is(.wd-product-countdown,.wd-swatches-grid) {
    justify-content: var(--text-align)
}

.wd-product .price {
    display: block
}

.wd-product .added_to_cart {
    display: none !important
}

.wd-product .shop_attributes {
    font-size: 90%;
    --wd-attr-v-gap: 10px;
    --wd-attr-brd-style: dashed;
    --wd-attr-img-width: 18px
}

.wd-product .shop_attributes :is(.wd-attr-name,.wd-attr-term) {
    gap: 4px
}

.wd-product .shop_attributes .wd-hint {
    margin: 0
}

.wd-product:is(.wd-variation-active,.product-swatched,.wd-loading-image) .hover-img {
    display: none
}

.wd-product:is(.quick-shop-shown,.wd-loading-quick-shop) .product-element-top .hover-img {
    opacity: 0;
    transition: opacity 0.25s ease,transform 2s cubic-bezier(0, 0, 0.44, 1.18)
}

.product-element-top {
    position: relative;
    overflow: hidden;
    border-radius: var(--wd-brd-radius);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0)
}

.product-element-top:hover .hover-img {
    opacity: 1;
    transform: scale(1.09)
}

.product-element-top:after {
    position: absolute;
    top: calc(50% - 16px);
    left: calc(50% - 16px);
    visibility: hidden;
    opacity: 0;
    content: "";
    display: inline-block;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(0,0,0,0);
    border-left-color: var(--color-gray-900);
    border-radius: 50%;
    vertical-align: middle;
    animation: wd-rotate 450ms infinite linear var(--wd-anim-state, paused)
}

.wd-product[class*="wd-loading"] .product-image-link {
    opacity: .4
}

.wd-product[class*="wd-loading"] .product-element-top:after {
    visibility: visible;
    opacity: 1;
    transition: opacity .25s ease, visibility .25s ease;
    --wd-anim-state: running
}

:is(.catalog-mode-on,.login-see-prices) .wd-product.product .wd-add-btn {
    display: none
}

.wd-buttons {
    z-index: 4;
    display: flex;
    flex-direction: column;
    border-radius: calc(var(--wd-brd-radius) / 1.2);
    background: var(--bgcolor-white);
    box-shadow: 1px 1px 1px rgba(0,0,0,0.1);
    transition: all .3s ease
}

.wd-buttons .wd-action-btn>a {
    height: 45px
}

.wd-buttons[class*="wd-pos-r"] {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    transform: translate3d(-20px, 0, 0)
}

.wd-buttons.wd-pos-r-t {
    top: var(--wd-btn-inset);
    inset-inline-end: var(--wd-btn-inset);
    background-color: #F4F8FA;
}

.wd-buttons.wd-pos-r-b {
    inset-inline-end: var(--wd-btn-inset);
    bottom: var(--wd-btn-inset)
}

.wd-action-btn.wd-style-icon .button {
    gap: 0;
    min-height: unset;
    padding: 0;
    background-color: transparent
}

.wd-action-btn.wd-style-icon .button:hover {
    background-color: transparent;
    box-shadow: none
}

.wd-product:hover:not(:is(.product-swatched,.quick-shop-shown,[class*="wd-loading"])) .wd-buttons[class*="wd-pos-r"] {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0)
}

.wd-product.product-swatched:not(.quick-shop-shown):not([class*="wd-loading"]) .product-element-top:hover .wd-buttons[class*="wd-pos-r"] {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0)
}

.wd-product.product-type-simple.outofstock .product_type_simple:before,.wd-product .product_type_grouped:before {
    content: "\f11a"
}

.wd-product .product_type_external:before {
    content: "\f11c"
}

:is(.products-bordered-grid-ins,.wd-products-with-bg:not(.products-bordered-grid),.wd-products-with-shadow:not(.products-bordered-grid)) .wd-product {
    --wd-prod-bg-sp: 15px
}

.wd-product :is(.product-wrapper,.product-element-bottom,.product-list-content,[class*="-information"])>*:not(:is(.product-element-bottom,.wd-entities-title,[class*="wd-product-"],.price)) {
    margin-block:0}

:is(.quick-shop-shown,.wd-loading-quick-shop) :is(.wd-buttons,.product-labels) {
    opacity: 0
}

@media (max-width: 1024px) {
    .wd-product .hover-img {
        display:none
    }

    .wd-product .wd-buttons {
        opacity: 1;
        transform: translate3d(0, 0, 0);
        visibility: visible
    }

    .wd-buttons {
        border-radius: 35px
    }

    .wd-buttons .wd-action-btn {
        --wd-action-icon-size: 14px
    }

    .wd-buttons .wd-action-btn>a {
        width: 35px;
        height: 35px
    }

    .wd-buttons :is(.wd-quick-view-icon,.wd-compare-btn) {
        display: none
    }
}

@media (max-width: 768.98px) {
    :is(.products-bordered-grid-ins,.wd-products-with-bg:not(.products-bordered-grid),.wd-products-with-shadow:not(.products-bordered-grid)) .wd-product {
        --wd-prod-bg-sp: 10px
    }
}

@media (max-width: 576px) {
    :is([style*="col-sm:2"],[style*="col-sm: 2"]) .wd-product {
        --title-line-height: 1.2em;
        --wd-prod-gap: 10px;
        font-size: 90%
    }
}
