.in_banner{
    height: 600px;
    /*overflow: hidden;*/
    /*background: url(../../images/newWebsite/Group@1x.png) left center no-repeat;*/
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.in_img_swipper{
    /*width: 59.06rem;*/
    height: 100%;
    /*border-radius: 1.25rem 0rem 0rem 1.25rem;*/
    z-index: 1;

}
.in_img_swipper img{
    width: 100%;
    height: 100%;
}
.banner_container .display-8{
    font-family: Mulish, Mulish;
    font-weight: 600;
    font-size: 2.8rem;
}
.banner_container{
   z-index: 4;
}
.signup{
    background: rgba(255,255,255,0.5)!important;
}
.signup:hover{
    background: var(--custom-primary) !important;
}
.in_search{
    /* width: 63.25rem; */
    /*padding: 0 2.13rem;*/
    box-sizing: border-box;
    /*height: 8rem;*/
    /*padding-bottom:1rem;*/
    background: var(--custom-primary);
    border-radius: 0.94rem 0.94rem 0.94rem 0.94rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tabs_type .nav-link{
    color:#fff!important;
    opacity: 0.8;
    padding-top:0!important;
}
.tabs_type li.active .nav-link{
    opacity: 1;
}
.tabs_type li.active{
    font-weight: bold;

    position:relative;
}
.tabs_type li.active::before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background:#fff;
}

.in_search_ul{
    width: 100%;
    /*height: 4rem;*/
    box-sizing: border-box;
    background: #FFFFFF;
    border-radius: 3.44rem 3.44rem 3.44rem 3.44rem;
    gap: 1.8rem;
}
.in_search_line{
    height: 2.13rem;
    width: 0rem;
    border-right: 0.06rem solid #DDDDDD;
}
.in_search_ul input{
    border:none;
    outline: none;
    height:100%;

}
.in_search_ul .in_first{
    display: flex;
    align-items: center;
    gap: 1rem;
}
.city-btn-group{
    min-width:30rem;
}
.in_search_ul .h{
    font-family: MulishRoman-Medium, MulishRoman-Medium;
    font-weight: 400;
    font-size: 1rem;
    color: #241623;
    /*line-height: 1.75rem;*/
}
.in_search_ul .p{
    font-family: MulishRoman-Regular, MulishRoman-Regular;
    font-weight: 400;
    font-size: 0.85rem;
    color: #959595;
    /*line-height: 1.25rem;*/
    display: flex;
    gap: 1rem;
}
.in_search_btn{
    width: 2.75rem;
    height: 2.75rem;
    background: var(--custom-primary);
    color: #fff;
    font-size: 1.46rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.in_total_wrap{
    display: flex;
    gap: 2rem;
}
.in_total_wrap .total{
    font-family: Mulish, Mulish;
    font-weight: 700;
    font-size: 2.19rem;
    color: #000000;
    line-height: 3.06rem;
}
.in_total_item{
    display: flex;
    align-items: center;
    gap:1rem;
}
.in_total_item .total_text{
    width: 4.31rem;
    height: 2.5rem;
    font-family: MulishRoman-Regular, MulishRoman-Regular;
    font-weight: 400;
    font-size: 0.94rem;
    color: #959595;
    line-height: 1.25rem;
}
/* 自定义弹出层（下拉）样式（合并优化） */
.property-trigger {
    cursor: pointer;
    user-select: none;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.choose_dropdown {
    display: none;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    margin-top: 8px;
    background: #fff;
    padding:0.25rem 0;
    border: 1px solid #e5e7eb;
    box-shadow: 0 0.15rem 0.35rem rgba(0,0,0,0.12);
    border-radius: 0.5rem;
    z-index: 20000;

}
.choose_dropdown.open {
    display: block !important;
    overflow: visible;
}
.choose_dropdown.open::before {
    content: "";
    position: absolute;
    left:  50%;
    top: -6px;
    width: 12px;
    height: 12px;
    background: #fff;
    transform: translateX(-50%) rotate(45deg);
    border-top: 1px solid #e5e7eb;
    border-left: 1px solid #e5e7eb;
    box-shadow: -2px -2px 8px rgba(0,0,0,0.06);
    z-index:-1;
}

.choose_dropdown_con {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    position: relative;
    z-index: 1;
    background: #fff;
    width: 20rem;
    /*max-height:7rem;*/
    overflow: auto;

}
.choose_dropdown_con a{
    padding: 0.35rem;
    border-radius: 0.375rem;
    display: block;
    color: inherit;
    text-decoration: none;
}
.choose_dropdown_con a:hover {
    background: var(--bs-primary);
    color: #fff !important;
}

/*房源*/
/*.section_space{*/
/*    margin-top: 6.25rem*/
/*}*/
.section_title{
    font-weight: 700;
    font-size: 1.88rem;
    color: #000000;
}
.section_subtitle{
    font-size: 0.94rem;
    color: #959595;
    line-height: 1.25rem;
}
.listing_item{
    display: block;
    height: 18rem;
    overflow: hidden;
}
.listing_item .icon_svg_20{
    color:#fff;
}
.listing_item img.rounded-3{
    width:100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    cursor: pointer;
}
.listing_item:hover img {
    transform: scale(1.1);
}
.listing_item_line{
    width: 100%;
    height: 0rem;
    border: 0.06rem solid #CFCFCF;
    opacity: 0.4;
}
.listing_item_shadow{
    height: 11.88rem;
    background: linear-gradient( 180deg, rgba(17,20,22,0) 0%, #111416 100%);
    border-radius: 0rem 0rem 0.63rem 0.63rem;
}
.listing_item .h3 {
    display: flex;
    flex-direction: column;
    /*align-items: center;*/
    /*justify-content: space-between;*/
    gap:0.5rem
}
.listing_item_text .a{
    font-family: Mulish, Mulish;
    font-weight: 600;
    font-size: 0.94rem;
    word-break: break-all;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    white-space: normal !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.listing_item_text .b{
    font-weight: 700;
    font-size: 1rem;
}
.listing_item_text .b span{
    font-size: 0.55rem;
}
.listing_item_text .p{
    font-family: MulishRoman-Regular, MulishRoman-Regular;
    font-weight: 400;
    font-size: 0.94rem;
    color: #CDCDCD;
    line-height: 1.25rem;
}
.home_picture{
    width:100%;
    height: 360px;
}
.picture_shadow{
    width: 35.88rem;
    background: linear-gradient( -90deg, rgba(17,20,22,0) 0%, #111416 100%);
    border-radius: 0rem 0rem 0.63rem 0.63rem;
}
.search-results{
    width:90%;
    top: 90%;
    left: 5%;
    max-height:40vh;
    z-index: 9999!important;
}
/*Popular*/
.Popular_card {
    border-radius: 1rem!important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}
.Popular_card-header {
    padding: 1rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.Popular_card .min_img {
    width: 3.5rem;
    height: 3.5rem;
}
.Popular_card .list-group {
    border:none!important;
}
/*.Popular_card .badge {*/
/*    font-size: 0.75rem;*/
/*    padding: 0.25rem 0.5rem;*/
/*    border-radius: 50%;*/
/*}*/
/*.badge-1 { background-color: #dc3545; color: white; }*/
/*.badge-2 { background-color: #28a745; color: white; }*/
/*.badge-3 { background-color: #ffc107; color: white; }*/
/*.badge-4 { background-color: #6c757d; color: white; }*/
/*.badge-5 { background-color: #17a2b8; color: white; }*/
.list-item {
    padding: 0.75rem 1rem;
    display: flex;
    gap: 0.75rem;
    align-items: center;
}
.list-item:last-child {
    border-bottom: none;
}
.price-tag{
    font-size: 14px;
}
/*.list-item img {*/
/*    width: 50px;*/
/*    height: 50px;*/
/*    object-fit: cover;*/
/*    border-radius: 6px;*/
/*}*/
.details-link {
    text-decoration: none;
    color: #6c757d;
    font-size: 0.875rem;
    display: block;
    padding: 0.5rem 1rem;
}
.details-link:hover {
    color: #007bff;
}
.landmark-card {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    height: 240px;
    width: 100%;
    transition: box-shadow 0.3s ease;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    cursor: pointer;
}

.landmark-card:hover {
    box-shadow: 0 8px 16px rgba(0,0,0,0.2);
    z-index: 1;
}

.landmark-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}
.landmark-card img:hover{
    transform: scale(1.1);
}
.landmark-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0,0,0,0.7));
    color: white;
    padding: 1rem;
    font-weight: bold;
    font-size: 1.4rem;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
}
/* Modal 自定义样式 */
.modal-dialog-centered {
    display: flex;
    align-items: center;
}
.modal-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.modal-img {
    width: 100%;
    border-radius: 12px;
    margin-bottom: 1rem;
}

.modal-description {
    color: #555;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.btn-buy {
    background-color: #f4511e;
    border-color: #f4511e;
    color: white;
    font-weight: bold;
}

.btn-rent {
    background-color: #28a745;
    border-color: #28a745;
    color: white;
    font-weight: bold;
}
.carousel-indicators{
    margin-bottom: 0!important;
}
.carousel-indicators button{
    bottom:0!important;
    background-color: #ccc!important;
    border-bottom: 0!important;
}
.carousel-indicators .active{
    background-color: var(--custom-primary)!important;
}
.Popular_card{
    background:rgba(0,0,0,.02) !important;
}
/* 响应式调整 */
@media (max-width: 640px) {
    .banner_container .display-8{
        font-size: 2.5rem;
    }
    html,body{
        overflow-x: hidden;
        overflow-y: auto;
    }
    .landmark-card{
        height: 120px;
    }
    .landmark-overlay{
        padding: 0.3rem 0.5rem;
        font-size: 0.75rem;
    }
    h2{
        font-size: 1rem!important;
    }
    .section_subtitle{
        display: none;
    }
    .hot-container,
    .peek-container {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .hot-container > [class*="col-"] {
        flex: 0 0 auto;
        width: calc(34% - 1rem); /* 每个卡片占50%宽度，减去间距 */
        scroll-snap-align: start;
    }
    .peek-container > [class*="col-"] {
        flex: 0 0 auto;
        width: calc(90% - 1rem); /* 每个卡片占50%宽度，减去间距 */
        scroll-snap-align: start;
    }

    /* 可选：隐藏滚动条（视觉更干净） */
    .tab-container::-webkit-scrollbar,
    .hot-container::-webkit-scrollbar,
    .peek-container::-webkit-scrollbar {
        display: none;
    }
    .Free-container .section_title{
        margin-bottom: 1rem!important;
    }
    .Free-container{
        padding: 1rem;
    }
    /*banner*/
    .m_in_banner img{
        height: 250px;
        border-radius: 20px;
    }
    .m-search-box{
        top: 0;
        left: 0;
        padding: 20px;
        width: 100%;
        height: 100%;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .listing_item_text .p{
        font-size: 0.7rem;
    }
    /*菜单*/
    .tab-container {
        display: flex;
        gap: 10px;
        padding: 10px 0;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .tab {
        min-width: 25%; /* 每个项目的最小宽度为容器宽度的25% */
        max-width: 25%; /* 最大宽度也是25%，使得一个项目占满四分之一空间 */
        box-sizing: border-box;
        padding:5px 15px;
        background-color: white;
        border: 1px solid #ddd;
        text-align: center;
        font-size: 14px;
        line-height: 1.5;
        word-break: break-all; /* 强制文本换行 */
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        border-radius: 12px;
        cursor: pointer;
        transition: background-color 0.3s;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

    .tab-icon {
        font-size: 32px!important;
    }

    .tab-text {
        font-size: 14px;
        font-weight: 500;
        line-height: 1;
    }
    /* 底部悬浮菜单样式 */
    .bottom-menu {
        position: fixed;
        bottom: 20px;
        left: 20px;
        right: 20px;
        display: flex;
        justify-content: space-evenly;
        background-color: white;
        border-top: 1px solid #ddd;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
        z-index: 1000;
        transition: opacity 0.3s ease-in-out;
        opacity: 0;
        visibility: hidden;
        border-radius: 50px;
    }

    .bottom-menu.show {
        opacity: 1;
        visibility: visible;
    }

    .menu-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        padding: 8px;
        cursor: pointer;
        color: #333;
        font-size: 14px;
        line-height: 1.2;
    }

    .menu-item .b_icon {
        font-size: 30px!important;
    }

    .menu-item:hover {
        color: #007bff;
    }

    .in_search_btn{
        width: 1.5em;
        height: 1.5em;
    }
}