/* LISTING STYLE */
.listing {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    -moz-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    width: auto;
    min-width: 100%;
    margin: 0 -webkit-calc((var(--listing-gap) / 2) * -1) -webkit-calc(var(--listing-gap-bottom) * -1);
    margin: 0 -moz-calc((var(--listing-gap) / 2) * -1) -moz-calc(var(--listing-gap-bottom) * -1);
    margin: 0 calc((var(--listing-gap) / 2) * -1) calc(var(--listing-gap-bottom) * -1);
}

.listing .listing-item,
.listing .wpb_column {
    position: relative;
}

.listing>.listing-item {
    width: -webkit-calc(100% / var(--listing-column));
    width: -moz-calc(100% / var(--listing-column));
    width: calc(100% / var(--listing-column));
    padding: 0 -webkit-calc(var(--listing-gap) / 2);
    padding: 0 -moz-calc(var(--listing-gap) / 2);
    padding: 0 calc(var(--listing-gap) / 2);
    margin-bottom: var(--listing-gap-bottom);
}

.listing .listitem-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow: hidden;
}

.listing .listitem-wrapper a.link-absolute {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    cursor: pointer;
    font-size: 0;
}

.listitem-wrapper.wrapper-scale-hover .thumbnail-item {
    position: relative;
    overflow: hidden;
}

.listitem-wrapper.wrapper-scale-hover .thumbnail-item>img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    -moz-transition: var(--transition);
    transition: var(--transition);
}

.listitem-wrapper.wrapper-scale-hover:hover .thumbnail-item>img {
    -webkit-transform: scale(1.11);
    -moz-transform: scale(1.11);
    -ms-transform: scale(1.11);
    -o-transform: scale(1.11);
    transform: scale(1.11);
}

.listing .content-item button,
.listing .content-item a {
    position: relative;
    z-index: 1;
}

.listing a.listitem-wrapper {
    cursor: pointer;
}

.listing .wpb_column {
    float: none;
}

.listing .thumbnail-item {
    display: flex;
    align-items: flex-start;
    overflow: hidden;
}

.listing li {
    list-style: none;
    margin-left: 0;
}

.vc_row.listing,
.vc_row.listing .vc_inner {
    margin: 0;
}

.vc_row.listing:before,
.vc_row.listing:after,
.vc_row.listing .vc_column-inner:before,
.vc_row.listing .vc_column-inner:after,
.vc_row.listing .vc_inner:before,
.vc_row.listing .vc_inner:after {
    display: none;
}

.vc_row.listing .wpb_column {
    float: none;
}

.vc_row.listing .wpb_column>.vc_column-inner {
    padding: 0;
}

.listing.slick-slider {
    display: block;
    width: calc(100% + var(--listing-gap));
    margin: 0 calc((var(--listing-gap) / 2) * -1);
}

.listing.slick-slider .slick-list {
    overflow: visible;
}

.listing.slick-slider .slick-slide {
    height: auto;
}

.listing.slick-slider .listing-item.slick-slide {
    padding-left: calc(var(--listing-gap) / 2);
    padding-right: calc(var(--listing-gap) / 2);
}

@media all and (max-width: 1299px) {
    .listing.slick-slider {
        --listing-gap: var(--padding-container);
    }

    .listing.slick-slider {
        width: calc(100% + (var(--padding-container) * 2));
        margin-right: calc(var(--padding-container) * -1);
        margin-left: calc(var(--padding-container) * -1);
        padding-right: calc(var(--padding-container) - (var(--listing-gap) / 2));
        padding-left: calc(var(--padding-container) - (var(--listing-gap) / 2));
    }
}

.whfilter-overview .listing {
    margin-bottom: 0;
}

@media all and (min-width: 0\0) and (min-resolution: +72dpi) {
    .listing {
        width: calc(100% + 1px);
    }
}

.vc_row.listing {
    width: 100%;
    margin: 0;
}

.vc_row.listing .vc_column-inner {
    padding: 0;
}

.site .listing[class*="lists-"] .listing-item:last-child,
.site .listing[class*="lists-"] .wpb_column:last-child {
    margin-right: 0;
}

.listing .title-listing {
    font-size: var(--text-xl);
}

.listing .title-listing,
.listing .content-item p,
.listing .excerpt-listing,
.listing .wpb_text_column * {
    display: block;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-line-clamp: 3;
}

/* @listing-blog */
.listing.listing-blog .thumbnail-item {
    border-radius: 20px;
}

.listing.listing-blog .thumbnail-item img {
    height: 493px;
}

.listing.listing-blog .content-item {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 30px;
}

.listing.listing-blog .content-item .title-listing {
    position: relative;
    flex: 1;
    padding: 20px;
    background-color: #ffffffe5;
    backdrop-filter: blur(10px);
    border-radius: 20px;
    line-height: 150%;
    -webkit-line-clamp: 4;
}

.listing.listing-blog  .content-item .title-listing:before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #f1f1f0;
    backdrop-filter: blur(10px);
    pointer-events: none;
}

.listing.listing-blog .content-item {
    display: flex;
    align-items: flex-end;
    gap: 20px;
}

.listing.listing-blog .content-item a.btn-readmore {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--white);
    border-radius: var(--rounded-full);
    font-size: 0px;
}

.listing.listing-blog a.btn-readmore:before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 14px;
    background: url(/wp-content/uploads/2025/03/icon-arrow-readmore.svg) center/contain no-repeat;
    transition: var(--transition);
}

.listing.listing-blog .listitem-wrapper:hover a.btn-readmore:before {
    transform: rotate(45deg);
}

.listing.listing-blog .content-item .title-listing {
    margin-bottom: 0;
}

/* @listing-testimonial */
.listing.listing-testimonial .listitem-wrapper {
    padding: 10px;
    border: 1px solid #f3f3f3;
    border-radius: 20px;
}

.listing.listing-testimonial .thumbnail-item {
    border-radius: 10px;
    margin-bottom: 10px;
}

.listing.listing-testimonial .thumbnail-item img {
    height: 147px;
}

.listing.listing-testimonial .title-listing {
    font-size: var(--text-base);
    line-height: 150%;
    margin-bottom: 0;
    color: #414042;
    font-style: italic;
}

.listing.listing-testimonial .content-testimonial {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.listing.listing-testimonial .content-testimonial:after {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url(/wp-content/uploads/2025/03/icon-quote-black.svg) center/contain no-repeat;
    position: absolute;
    top: 0;
    right: 0;
}

.listing.listing-testimonial .content-testimonial img {
    width: 37px;
    height: 37px;
    border-radius: var(--rounded-full);
}

.listing.listing-testimonial .content-testimonial p {
    margin: 0;
    font-weight: 500;
    line-height: 100%;
}

.listing.listing-testimonial .content-testimonial p.user-testimonial {
    color: var(--black);
    margin-bottom: 2px;
}

.listing.listing-testimonial .content-testimonial p.date-testimonial {
    font-size: var(--text-sm);
    color: #8e9492;
}

/* @listing-blog-slider */
.listing.listing-blog-slider.slick-slider .slick-slide .listitem-wrapper {
    transition: all 500ms ease-in-out;
    transition-delay: 300ms;
    clip-path: inset(0% 0% 97px 0% round 20px);
}

.listing.listing-blog-slider.slick-slider .slick-slide.slick-current .listitem-wrapper {
    clip-path: inset(0% 0% 0% 0% round 20px);
}

.listing.listing-blog-slider.slick-slider .slick-slide .content-item a.btn-readmore {
    transition: all 500ms ease-in-out;
    transition-delay: 350ms;
    transform: scale(0);
}

.listing.listing-blog-slider.slick-slider .slick-slide.slick-current .content-item a.btn-readmore {
    transform: scale(1);
}

.listing.listing-blog-slider.slick-slider .slick-slide .content-item .title-listing {
    transition: all 500ms ease-in-out;
    transition-delay: 300ms;
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    margin-bottom: 0px;
}

.listing.listing-blog-slider.slick-slider .slick-slide.slick-current .content-item .title-listing {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.listing.listing-blog-slider.slick-slider .slick-dots {
    width: calc(100% - 416px);
    margin-left: auto;
    position: absolute;
    bottom: 53px;
    right: 0;
}

.listing.listing-blog-slider.slick-slider .slick-arrow {
    bottom: 53px;
}

@media all and (max-width: 900px) {
    .listing.listing-blog .content-item {
        margin: 27.8px;
    }

    .listing.listing-blog-slider.slick-slider {
        padding-bottom: 40px;
        padding-right: 250px;
    }

    .listing.listing-blog-slider.slick-slider .slick-arrow {
        bottom: 0;
    }

    .listing.listing-blog-slider.slick-slider .slick-dots {
        width: 100%;
        bottom: 0;
    }
    .listing.listing-blog-slider.slick-slider .slick-arrow {
        margin-right: 15px;
    }
}


@media all and (min-width: 601px) and (max-width: 900px) {
        .listing.listing-blog,
        .listing.listing-testimonial {
            --listing-column: 2;
        }
}


@media all and (max-width: 600px) {
    .listing.listing-blog .thumbnail-item img {
        height: 368px;
    }
    
    .listing.listing-blog-slider.slick-slider {
        padding-right: 40px;
    }

    .listing.listing-blog-slider.slick-slider .slick-slide .content-item .title-listing {
        font-size: 16px;
        padding: 15px;
    }

    .listing.listing-blog-slider.slick-slider .slick-slide .content-item a.btn-readmore {
        width: 35px;
        height: 35px;
    }

    .listing.listing-blog-slider.slick-slider .slick-slide .content-item a.btn-readmore:before {
        height: 12px;
    }

    .listing.listing-blog,
    .listing.listing-testimonial {
        --listing-column: 1;
    }
}