/* ******************************************************
   Featured Listings Marquee
****************************************************** */

.featured-listings-section {
    padding: 70px 0;
    background: #f7f4ee;
    overflow: hidden;
}

.featured-listings-heading {
    width: 92%;
    max-width: 1200px;
    margin: 0 auto 34px auto;
    text-align: center;
}

.featured-listings-heading .featured-kicker {
    font-size: 13px;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #b4975a;
    font-weight: 700;
    margin-bottom: 10px;
}

.featured-listings-heading h2 {
    margin: 0;
    font-size: 34px;
    line-height: 1.2;
    font-weight: 400;
    color: #1f1f1f;
}

.featured-listings-heading p {
    max-width: 680px;
    margin: 14px auto 0 auto;
    font-size: 16px;
    line-height: 1.7;
    color: #666;
}

.featured-marquee-wrap {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.featured-marquee-window {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.featured-marquee-track {
    display: flex;
    align-items: stretch;
    gap: 26px;
    list-style: none;
    padding: 12px 0 24px 0;
    margin: 0;
    will-change: transform;
}

.featured-marquee-track li {
    flex: 0 0 390px;
    width: 390px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12);
    overflow: hidden;
    position: relative;
    transition: transform .25s ease, box-shadow .25s ease;
}

.featured-marquee-track li:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 42px rgba(0,0,0,0.18);
}

.featured-marquee-track li a {
    display: block;
    position: relative;
    color: inherit;
    text-decoration: none;
}

.featured-marquee-track li img {
    display: block;
    width: 100%;
    height: 265px !important;
    object-fit: cover;
    transition: transform .45s ease;
}

.featured-marquee-track li:hover img {
    transform: scale(1.045);
}

.featured-marquee-track .itemDescription {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 118px;
    padding: 48px 24px 22px 24px;
    color: #fff;
    background: linear-gradient(to top, rgba(0,0,0,.82), rgba(0,0,0,.48), rgba(0,0,0,0));
    text-align: center;
}

.featured-marquee-track .listingType {
    display: none;
}

.featured-marquee-track h3 {
    margin: 0 0 8px 0;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: .5px;
    color: #fff;
    text-transform: uppercase;
}

.featured-marquee-track .closedItemPrice {
    font-size: 21px;
    line-height: 1.2;
    font-weight: 400;
    color: #fff;
    margin-bottom: 14px;
}

.featured-marquee-track .listingBtn {
    display: inline-block;
    padding: 8px 18px;
    border: 1px solid rgba(255,255,255,.8);
    color: #fff;
    font-size: 11px;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    transition: background .25s ease, color .25s ease;
}

.featured-marquee-track li:hover .listingBtn {
    background: #fff;
    color: #111;
}

.featured-marquee-arrow {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 44px;
    height: 64px;
    margin-top: -32px;
    border: none;
    background: rgba(15,37,56,.82);
    color: #fff;
    font-size: 26px;
    line-height: 64px;
    text-align: center;
    cursor: pointer;
    cursor: hand;
    transition: background .25s ease, transform .25s ease;
}

.featured-marquee-arrow:hover {
    background: rgba(15,37,56,1);
    transform: scale(1.04);
}

.featured-marquee-prev {
    left: 12px;
}

.featured-marquee-next {
    right: 12px;
}

.featured-view-all-wrap {
    margin-top: 28px;
}

.featured-view-all-btn {
    background: transparent;
    border: 2px solid #222;
    color: #222;
    padding: 15px 38px;
    font-size: 18px !important;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: all .25s ease;
}

.featured-view-all-btn:hover {
    background: #222;
    color: #fff;
}

/* Empty fallback if the file loads but has no homes */
.featured-listings-empty {
    width: 92%;
    max-width: 760px;
    margin: 0 auto;
    background: #fff;
    padding: 34px 28px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.featured-listings-empty h3 {
    margin: 0 0 10px 0;
    font-size: 24px;
    color: #222;
}

.featured-listings-empty p {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
    color: #666;
}

/* Mobile */
@media (max-width: 991px) {
    .featured-listings-section {
        padding: 50px 0;
    }

    .featured-listings-heading h2 {
        font-size: 28px;
    }

    .featured-marquee-track {
        gap: 18px;
    }

    .featured-marquee-track li {
        flex: 0 0 315px;
        width: 315px;
    }

    .featured-marquee-track li img {
        height: 225px !important;
    }

    .featured-marquee-arrow {
        width: 38px;
        height: 56px;
        line-height: 56px;
        font-size: 22px;
    }
}

@media (max-width: 575px) {
    .featured-listings-heading {
        width: 90%;
    }

    .featured-marquee-track {
        gap: 14px;
    }

    .featured-marquee-track li {
        flex: 0 0 82vw;
        width: 82vw;
    }

    .featured-marquee-track li img {
        height: 215px !important;
    }

    .featured-marquee-track .itemDescription {
        min-height: 112px;
        padding: 42px 18px 18px 18px;
    }

    .featured-marquee-track h3 {
        font-size: 13px;
    }

    .featured-marquee-track .closedItemPrice {
        font-size: 19px;
    }

    .featured-marquee-arrow {
        display: none;
    }
}