/* =========================
     Desktop Device Responsive
   ========================= */
@media (max-width: 1024px) {

    /* Team section */
    .team-grid {
        grid-template-columns: repeat(var(--grid-cols-tablet, 2), 1fr);
    }

    /* More specific rules + !important to override per-page Elementor CSS if present */
    .elementor-widget-homiberia-team-list-widget.elementor-widget-homiberia-team-list-widget .team-grid {
        grid-template-columns: repeat(var(--grid-cols-tablet, 2), 1fr);
    }

    .elementor-widget-homiberia-team-list-widget .team-grid {
        grid-template-columns: repeat(var(--grid-cols-tablet, 2), 1fr);
    }

    /* Home new list widget */
    .home-new-list-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Home feature list widget */
    .home-feature-list-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Home property slider grid mode */
    .home-property-swiper.grid-mode .swiper-wrapper,
    .home-property-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Home development slider grid mode */
    .home-development-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Homiberia Global Slider grid mode */
    .homiberia-global-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Neighborhood Overview */
    .neighborhood-right-content h3 {
        font-size: 28px;
    }

    .neighborhood-right-content {
        padding: 24px;
    }

    .neighborhood-single {
        flex-direction: column;
    }

    .neighborhood-right-content-wrap {
        margin-top: 20px;
    }

    .neighborhood-meta-area {
        gap: 20px;
    }

    .neighborhood-home-count-area {
        gap: 20px;
    }

    a.neighborhood-overview-button {
        margin-top: 24px;
    }

    /* Home new list widget */

    .home-new-list-item:nth-child(3),
    .home-new-list-item:nth-child(4),
    .home-new-list-item:nth-child(5) {
        width: 49%;
        max-height: 350px;
    }


}


/* =========================
     Tablet Device Responsive
   ========================= */

@media (max-width: 768px) {

    /* Team section */
    .team-grid {
        grid-template-columns: repeat(var(--grid-cols-mobile, 1), 1fr);
    }

    .team-thumb img {
        height: auto;
        max-height: none;
    }

    .elementor-widget-homiberia-team-list-widget.elementor-widget-homiberia-team-list-widget .team-grid {
        grid-template-columns: repeat(var(--grid-cols-mobile, 1), 1fr);
    }

    .elementor-widget-homiberia-team-list-widget .team-grid {
        grid-template-columns: repeat(var(--grid-cols-mobile, 1), 1fr);
    }

    .elementor-widget-homiberia-team-list-widget .team-thumb img {
        height: auto;
        max-height: none;
    }

    /* Home new list widget */
    .home-new-list-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .home-feature-list-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .home-property-swiper.grid-mode .swiper-wrapper,
    .home-property-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: 1fr;
    }

    .home-development-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: 1fr;
    }

    .homiberia-global-swiper.grid-mode .swiper-wrapper {
        grid-template-columns: 1fr;
    }

    .home-property-main-img {
        max-height: 200px;
    }

    .home-development-main-img {
        max-height: 200px;
        width: 100%;
        height: auto;
    }

    .homiberia-global-main-img {
        max-height: 200px;
        width: 100%;
        height: auto;
    }

    .home-feature-list-item .home-feature-list-item-content {
        gap: 10px;
    }

    /*------------------
        Property Card
   -------------------- */
    .property-price {
        font-size: 28px;
    }

    .home-property-content {
        padding: 20px 16px;
    }

    .home-property-content .property-title {
        font-size: 18px;
    }

    /*
    * Advanced Search Form Widget
    */

    .search-button span {
        display: none;
    }

    .popular-searches {
        gap: 4px;
    }

    .popular-search-wrap {
        gap: 8px;
        flex-direction: column;
        align-items: flex-start;
    }

    .input-wrapper {
        flex-wrap: wrap;
    }

    button.search-button {
        width: 40px;
        height: 40px;
        padding: 10px;
    }

    label.filter-button {
        width: 40px;
        height: 40px;
        padding: 10px;
    }

    .filter-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        padding: 30px;
    }

    .search-container {
        gap: 12px;
        padding: 12px 16px;
    }

    .filter-toggle:checked~.filter-panel {
        margin-top: -86px;
    }

    /* Map Search Hero */
    .homiberia-search-page-map-button {
        padding: 10px 16px;
        font-size: 16px;
    }

    /* Property Type widget */
    .property-type-wrapper .grid .card {
        min-width: 140px;
        max-width: 140px;
    }

    /* Shortcode Advanced Search Form Widget */
    .search-filter-tag-wrapper {
        max-width: 70%;
    }

    .property-search-map {
        transform: translateX(-50%);
        width: 100%;
        left: 50%;
        top: 195px;
        max-width: 680px !important;
    }

    /* Nearby Overview */
    .neighborhood-overview {
        grid-template-columns: 1fr;
    }

    .neighborhood-image {
        border-radius: 16px 16px 0px 0px;
    }

    .neighborhood-right-content {
        border-radius: 0 0px 16px 16px;
    }

    .neighborhood-right-content-wrap {
        margin-top: 20px;
    }

    .neighborhood-overview .neighborhood-right-content h3 {
        font-size: 20px;
    }

    .neighborhood-overview .neighborhood-content-wrap h3 {
        font-size: 24px;
    }

    .neighborhood-meta-area {
        gap: 20px;
    }

    /* neighborhood Nearby Location */
    .explore-map-slider-nav {
        display: none;
    }

    .swiper.explore-neighborhood-map-swiper {
        padding: 0px;
    }


    /* =============================
        Property New List Responsive
       ============================= */
    .home-new-list-item .home-new-list-item-content {
        align-items: flex-start;
        gap: 16px;
        flex-direction: column;
        padding: 20px;
    }

    .home-new-list-item .new-home-price {
        font-size: 18px;
        margin-top: 10px;
    }

    .home-new-list-item .home-new-list-item-title {
        font-size: 24px;
    }

    .home-new-list-item .home-new-list-item-content {
        padding: 20px;
        height: 100%;

    }

    button.new-home-contact {
        padding: 5px 13px;
        font-size: 14px;
    }

    .home-new-bottom-content {
        position: absolute;
        right: 16px;
        bottom: 16px;
    }

    .nearby-map-slider-nav.with-tabs,
    .nearby-map-slider-nav {
        display: none;
    }


    /* Simulate CTA shortcode */
    .simulate-cta {
        grid-template-columns: 1fr 1.3fr;
        gap: 0;
    }

    .simulate-cta .simulate-cta-content h3 {
        color: #fff;
        font-size: 30px;
    }

    .simulate-cta-content {
        padding: 40px 0 40px 40px;
    }

    .simlate-button {
        margin-top: 24px;
    }

    /* Contact Form shortcode */
    .homeiberia-contact-form-content {
        grid-template-columns: 1fr;
    }

    .contact-form-right {
        height: 500px;
    }

    /* Referral Form shortcode */
    .referral-form-grid {
        grid-template-columns: 1fr;
        gap: 20px;

    }

    .referral-form-column {
        padding: 0px;
        background: transparent;
        border-radius: 0px;
        gap: 20px;
    }
    .referral-form-group label {
        font-size: 16px;
    }

}

/* ============================
     Big mobile Device Responsive
   ============================ */
@media (max-width: 767px) {
    .search-filter-tag-wrap {
        display: none;
    }
}

/* =========================
     Mobile Device Responsive
   ========================= */
@media (max-width: 575px) {
    .search-container {
        gap: 12px;
        padding: 5px 16px;
    }

    .filter-grid {
        display: flex;
        flex-direction: column;
        gap: 40px;
        padding: 20px;
    }

    .price-inputs {
        grid-template-columns: 1fr;
    }

    /* Property new List widget */
    .home-new-list-item:nth-child(1),
    .home-new-list-item:nth-child(2),
    .home-new-list-item:nth-child(3),
    .home-new-list-item:nth-child(4),
    .home-new-list-item:nth-child(5) {
        width: 100%;
        height: 350px;
    }

    .home-new-bottom-content {
        position: static;
    }

    .home-new-list-item:nth-child(1) .home-new-list-item-content,
    .home-new-list-item:nth-child(2) .home-new-list-item-content,
    .home-new-list-item:nth-child(3) .home-new-list-item-content,
    .home-new-list-item:nth-child(4) .home-new-list-item-content,
    .home-new-list-item:nth-child(5) .home-new-list-item-content {
        gap: 20px;
        padding: 20px;
        /* justify-content: flex-end; */
    }

    /* Map Search Hero */
    .homiberia-search-page-map-button {
        padding: 10px 16px;
        font-size: 14px;
    }

    .search-meta-wrap {
        flex-wrap: wrap;
        gap: 15px;
    }
    .property-search-map {
        top: 155px;
    }


    /*------------------
        Property Card
   -------------------- */
    .property-price {
        font-size: 24px;
    }

    .search-section-heading h3 {
        font-size: 24px !important;
    }

    .search-section-heading {
        margin-top: 25px;
    }

    /* Neighborhood Overview */
    .neighborhood-right-content-wrap {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    /* Property Type widget */
    .property-type-wrapper .grid .card {
        min-width: 120px;
        max-width: 120px;
    }

    /* Simulate CTA shortcode */
    .simulate-cta {
        grid-template-columns: 1fr;
        gap: 0;
        overflow: hidden;
    }

    .simulate-cta-content {
        padding: 24px 0 0px 24px;
    }

    .simulate-cta-img {
        transform: translateX(44%);
        width: 100%;
        height: 100%;
    }

    /* Contact Form shortcode */
    .homeiberia-contact-form-content .contact-form-left h2 {
        font-size: 36px;
    }

    .homeiberia-contact-form .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }


}