:root {
    --primary-color: rgb(51, 122, 183);
    --secondary-color: #27547c;

}

/* ===================================
   General
=================================== */
*:focus {
    outline: none;
    box-shadow: none;
}

/* ===================================
   MAIN LAYOUT
=================================== */
#apfl-listings-container.main-listings-page.apfl-falcon-template {
    width: 100%;
    max-width: 1600px;
    padding: 20px;
}

/* ===================================
   GOOGLE MAP
=================================== */
#apfl-listings-container.main-listings-page.apfl-falcon-template #googlemap {
    display: none;
    width: 100%;
    height: 500px;
    border-radius: 24px;
    overflow: hidden;
    background: #eee;
}

.apfl-falcon-template.main-listings-page .falcon-map-btn:hover {
    background: #FFFFFF;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
}

.apfl-falcon-template.main-listings-page .falcon-map-btn:hover svg {
    color: var(--primary-color);
}

.apfl-falcon-template.main-listings-page .falcon-map-btn:hover svg path {
    fill: var(--primary-color);
}

.apfl-falcon-template .falcon-map-btn span {
    display: flex;
    align-items: center;
}

.apfl-falcon-template.main-listings-page .falcon-map-btn svg path {
    fill: white;
    transition: fill 0.3s ease;
}

.apfl-falcon-template.main-listings-page .falcon-map-btn {
    height: 64px;
    width: 250px;
    padding: 0 28px;
    border-radius: 40px;
    background: var(--primary-color);
    color: #FFFFFF;
    font-weight: 600;
    font-size: 24px;
    cursor: pointer;
    transition: .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.apfl-falcon-template.main-listings-page .falcon-map-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.apfl-falcon-template .falcon-map-btn svg {
    color: #ffffff;
    flex-shrink: 0;
}

.apfl-falcon-template .falcon-layout-wrapper.map-active .falcon-map-btn svg {
    color: var(--primary-color);
}

/* ===================================
   NORMAL LISTINGS
=================================== */
.apfl-falcon-template.main-listings-page .all-listings {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    margin-left: 0;
    padding-left: 0;
    justify-content: flex-start;

}

.apfl-falcon-template.main-listings-page .all-listings .listing-item {
    width: calc(33.333% - 22px);
    transition: .3s;
    display: flex;
    flex-direction: column;
}

.apfl-falcon-template.main-listings-page .listing-filters {
    padding-left: 15px;
    padding-right: 15px;
}

/* ===================================
   LISTING CARD HOVER REMOVE
=================================== */
.apfl-falcon-template.main-listings-page .listing-item {
    transition: none;
    box-shadow: none;
}

.apfl-falcon-template.main-listings-page .listing-item:hover {
    transform: none;
    box-shadow: none;
}

/* SEARCH BUTTON CURSOR FIX */
#apfl-listings-container.apfl-falcon-template .falcon-header input[type="submit"],
#apfl-listings-container.apfl-falcon-template .falcon-header button,
#apfl-listings-container.apfl-falcon-template .falcon-header .search-btn,
#apfl-listings-container.apfl-falcon-template .falcon-header .btn-search {
    cursor: pointer;
}

/* ===================================
   IMAGE
=================================== */
.apfl-falcon-template.main-listings-page .list-img {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    height: 320px;
    margin-bottom: 20px;
}

.apfl-falcon-template.main-listings-page .list-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 26px;

}

/* ===================================
   BADGES FIX
=================================== */
.apfl-falcon-template.main-listings-page .listing-item .list-img>span.lstng-avail {
    position: absolute;
    top: 14px;
    left: 14px;
    right: auto;
    bottom: auto;
    display: inline-block;
    padding: 10px 18px;
    border-radius: 30px;
    font-weight: 600;
    white-space: nowrap;
    line-height: 1;
    width: auto;
    height: auto;
    max-width: max-content;
    z-index: 50;
}

.apfl-falcon-template.main-listings-page .listing-item .list-img>span.rent-price {
    position: absolute;
    top: 14px;
    right: 14px;
    left: auto;
    bottom: auto;
    display: inline-block;
    padding: 10px 18px;
    border-radius: 30px;
    font-weight: 600;
    white-space: nowrap;
    line-height: 1;
    width: auto;
    height: auto;
    max-width: max-content;
    z-index: 50;
}

/* ===================================
   DETAILS
=================================== */
.apfl-falcon-template.main-listings-page .listing-item .details {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 20px;
    box-sizing: border-box;
    background: transparent;
    box-shadow: none;
    border: none;
}

.apfl-falcon-template.main-listings-page .listing-bottom {
    margin-top: auto;
    display: flex;
    flex-direction: column;
}

.apfl-falcon-template.main-listings-page .lstng_ttl {
    font-size: 22px;
    font-weight: bold;
    line-height: 1.4;
}

.apfl-falcon-template.main-listings-page .address {
    margin-bottom: 18px;
    color: #666;
    font-size: 18px;
    font-weight: 400;
}

.apfl-falcon-template.main-listings-page .listing-amenities {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 20px
}

.apfl-falcon-template.main-listings-page .listing-amenities .amenity-item {
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.falcon-layout-wrapper.map-active .listing-amenities .amenity-item {
    font-size: 15px;
}

.falcon-layout-wrapper.map-active .listing-amenities img {
    width: 15px;
    height: 15px;
}

.apfl-falcon-template.main-listings-page .listing-item .details {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

/* ===================================
   BUTTONS
=================================== */
.apfl-falcon-template#apfl-listings-container.main-listings-page .btns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .btns .more_detail_btn,
.apfl-falcon-template#apfl-listings-container.main-listings-page .btns .apply_btn {
    grid-column: auto;
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .btns .schedule_btn {
    grid-column: 1 / 3;
    width: 100%;
    max-width: 100%;
    margin: 0;
}

.apfl-falcon-template.main-listings-page .listing-item .btns a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box #000000;
    padding: 12px 20px;
    margin: 0;
    min-height: 48px;
    line-height: 1.2;
    white-space: nowrap;
    flex: 1;
    height: 48px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 600;
    border: 2px solid;
    transition: all .3s ease;
}

.apfl-falcon-template.main-listings-page .listing-item .details .btns {
    margin-top: auto;
}

.apfl-falcon-template.main-listings-page .listing-item .btns {
    margin-top: 12px;
}

/* ===================================
   HEADER
=================================== */
.apfl-falcon-template.main-listings-page .falcon-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0px;
    padding: 0px;
    background: transparent;
    border-radius: 20px;
    box-shadow: none;
}

/* Main wrapper center */
.apfl-falcon-template.main-listings-page .falcon-layout-wrapper,
.apfl-falcon-template.main-listings-page .falcon-header,
.apfl-falcon-template.main-listings-page .falcon-search-wrapper,
.apfl-falcon-template.main-listings-page .listing-sec {
    max-width: 1600px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-right: 0px;
}

/* ===================================
   LEFT FILTER AREA
=================================== */
.apfl-falcon-template.main-listings-page .falcon-header-filters {
    flex: 1;
    display: flex;
    justify-content: flex-start;
}

/* ===================================
   FILTER FORM
=================================== */
.apfl-falcon-template.main-listings-page .falcon-header-filters form {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
}

/* ===================================
   FILTER INPUTS
=================================== */
.apfl-falcon-template.main-listings-page .falcon-header-filters select,
.apfl-falcon-template.main-listings-page .falcon-header-filters input:not([type="submit"]) {
    height: 48px;
    padding-top: 10px;
    background: #fff;
    border: 2px solid var(--primary-color);
    border-radius: 30px;
    color: #1F2A44;
    box-sizing: border-box;
}

.apfl-falcon-template.main-listings-page .falcon-header-filters input[type="submit"] {
    height: 48px;
    padding-top: 10px;
    border-radius: 30px;
    box-sizing: border-box;
}

.apfl-falcon-template.main-listings-page .listing-filters input::placeholder {
    font-size: 16px;
    color: #000000;
}

.apfl-falcon-template.main-listings-page .falcon-header-filters select:focus,
.apfl-falcon-template.main-listings-page .falcon-header-filters input:focus {
    outline: none;
    border-color: var(--primary-color);
}

.apfl-falcon-template.listing-filters input {
    border: 2px solid;
    border-radius: 30px;
    background: var(--primary-color);
    padding: 0px 15px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
}

.apfl-falcon-template.main-listings-page .listing-filters select,
.apfl-falcon-template.main-listings-page .listing-filters .filter-select,
.apfl-falcon-template.main-listings-page .listing-filters input[type="search"] {
    border: 2px solid var(--primary-color);
    border-radius: 30px;
    background: #ffffff;
    padding: 0px 15px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
}

.apfl-falcon-template.main-listings-page .falcon-header-filters button {
    height: 48px;
    padding: 0;
    cursor: pointer;
}

.apfl-falcon-template#apfl-listings-container .listing-sec {
    margin-left: 0;
    padding-left: 0;
}

.apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_hndg,
.apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_sub_hndg {
    margin-left: 0;
    margin-right: 0;
}

.apfl-falcon-template#apfl-listings-container .listing-filters select,
.apfl-falcon-template#apfl-listings-container .listing-filters .filter-select,
.apfl-falcon-template#apfl-listings-container .listing-filters .filter-input {
    cursor: pointer;
    transition: all 0.25s ease;
}

.apfl-falcon-template#apfl-listings-container .listing-filters select:hover,
.apfl-falcon-template#apfl-listings-container .listing-filters input:hover,
.apfl-falcon-template#apfl-listings-container .listing-filters .filter-select:hover,
.apfl-falcon-template#apfl-listings-container .listing-filters .filter-input:hover {
    border-color: var(--primary-color);
}

.apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_hdng {
    color: #000000;
    font-size: 36px;
    text-align: left;
    display: block;
    max-width: 1600px;
    margin: 0 auto 0px auto;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    letter-spacing: 1px;
    font-weight: 400;
}

.apfl-falcon-template.main-listings-page .listing-item .list-img {
    container-type: inline-size;
}

.apfl-falcon-template.main-listings-page .listing-item span.rent-price,
.apfl-falcon-template.main-listings-page .listing-item span.lstng-avail {
    font-size: clamp(8px, 4cqw, 14px);
}

.apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_sub_hdng {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
}

.apfl-falcon-template#apfl-listings-container .apfl-banner-heading h1,
.apfl-falcon-template#apfl-listings-container .apfl-banner-heading h2,
.apfl-falcon-template#apfl-listings-container .apfl-banner-heading h3 {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
}

.apfl-falcon-template.main-listings-page .listing-filters select {
    padding: 2px 45px 3px 15px;
    padding-right: 50px;
    text-indent: 5px;
    background-position: right 15px center;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: #FFFFFF;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23337ab7' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 15px center;
    background-size: 12px 8px;
    padding-right: 45px;
}

/* ===================================
   MAP ACTIVE MODE
=================================== */
.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active {
    display: grid;
    grid-template-columns: calc(50% - 15px) calc(50% - 15px);
    grid-template-areas: "listings map";
    gap: 30px;
    align-items: stretch;
    height: auto;
    overflow: visible;
}

/* LISTINGS SIDE */
.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings {
    grid-area: listings;
    display: flex;
    flex-direction: column;
    gap: 28px;
    width: 100%;
    max-width: none;
    height: auto;
    max-height: none;
    overflow: visible;
    padding-right: 20px;
    margin: 0;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
}

/* MAP SIDE */
.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .falcon-map-wrapper {
    grid-column: 2;
    position: sticky;
    top: 20px;
    width: 100%;
    height: calc(100vh - 40px);
    align-self: start;
    padding-left: 20px;
    box-sizing: border-box;
    margin: 0;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active #googlemap {
    display: block;
    width: 100%;
    height: 100%;
    min-height: calc(100vh - 40px);
    border-radius: 24px;
    overflow: hidden;
    position: relative;
}

/* LISTING CARD */
.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings .listing-item {
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img {
    flex: 0 0 340px;
    width: 340px;
    min-width: 340px;
    height: 220px;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 18px;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .details {
    flex: 1;
    width: auto;
    max-width: none;
    align-self: flex-start;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings .listing-item .details {
    flex: 1 1 auto;
    width: auto;
    max-width: none;
}

/* CONTENT */
.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .lstng_ttl{
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
}

.apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .address{
    font-size: 18px;
}

/* BUTTONS */
.apfl-falcon-template .falcon-layout-wrapper.map-active .btns {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 12px;
    width: 100%;
    margin-top: 16px;
}

.apfl-falcon-template .falcon-layout-wrapper.map-active .btns a {
    flex: 1;
    height: 44px;
    width: auto;
    font-size: 15px;
    padding: 0 16px;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* BADGES */
.apfl-falcon-template .falcon-layout-wrapper.map-active .lstng-avail {
    top: 10px;
    left: 10px;
    padding: 7px 14px;
    font-size: 14px;
}

.apfl-falcon-template .falcon-layout-wrapper.map-active .rent-price {
    top: 10px;
    right: 10px;
    padding: 7px 12px;
    font-size: 14px;
}

/* HIDE SCROLLBAR */
.apfl-falcon-template .falcon-layout-wrapper.map-active .all-listings::-webkit-scrollbar {
    display: none;
}

/* MULTIPLE LISTINGS - MAP ACTIVE */
#apfl-listings-container.main-listings-page.apfl-falcon-template .falcon-layout-wrapper.map-active .all-listings {
    grid-area: listings;
    display: flex;
    flex-direction: column;
    gap: 28px;
    width: 100%;
    padding-right: 20px;
    margin: 0;
    box-sizing: border-box;
}

/* Remove 3-card row grouping */
#apfl-listings-container.main-listings-page.apfl-falcon-template .falcon-layout-wrapper.map-active .listing-items-grp {
    display: contents;
}

/* Each listing becomes a full-width row */
#apfl-listings-container.main-listings-page.apfl-falcon-template .falcon-layout-wrapper.map-active .listing-item {
    width: 100%;
    max-width: none;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    margin: 0;
}


/* =======================================================================================================================
       single listings page 
    ====================================================================================================================== */

.apfl-sl-falcon.apfl-sl-wrapper {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Main Gallery Layout */
.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery {
    display: flex;
    gap: 12px;
    margin-bottom: 30px;
    position: relative;
}

/* Main Image */
.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .mySlides {
    flex: 1;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .mySlides img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 12px;
    display: block;
}

.apfl-sl-falcon.apfl-sl-wrapper .next {
    right: calc(38% + 15px);
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .next {
    right: 40%;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .prev {
    left: 15px;
}

.apfl-sl-falcon.apfl-sl-wrapper .more-photos {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: #fff;
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    color: #000;
    cursor: pointer;
}

/* Hide non-active slides */
.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .mySlides {
    display: none;
}

/* Thumbnail Section */
.apfl-sl-falcon.apfl-sl-wrapper .thumb-grid {
    width: 38%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.apfl-sl-falcon.apfl-sl-wrapper .arrow-left-icon:hover {
    fill: var(--secondary-color);
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl_back_to_all .apfl-prmry-btn:hover.arrow-left-icon {
    fill: var(--secondary-color);
}

.apfl-sl-falcon.apfl-sl-wrapper .arrow-left-icon {
    fill: currentColor;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-prmry-btn:hover {
    color: var(--secondary-color);
    ;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-item {
    position: relative;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-item img {
    width: 100%;
    height: 254px;
    object-fit: cover;
    border-radius: 12px;
    cursor: pointer;
    display: block;
}

/* More Photos */
.apfl-sl-falcon .more-photos {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: #fff;
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    color: #000;
}

/* Remove Arrows */
.apfl-sl-falcon.apfl-sl-wrapper .prev,
.apfl-sl-falcon.apfl-sl-wrapper .next {
    cursor: pointer;
    position: absolute;
    top: 225px;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 22px;
    font-weight: 700;
    color: #000;
    z-index: 10;
    transition: .3s;
}

.apfl-sl-falcon.apfl-sl-wrapper .prev {
    left: 15px;
}

.apfl-sl-falcon.apfl-sl-wrapper .next {
    right: 15px;
}

/* Remove Number Count */
.apfl-sl-falcon.apfl-sl-wrapper .numbertext {
    display: none;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery {
    display: flex;
    gap: 15px;
    width: 100%;
    margin-bottom: 30px;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery-left {
    flex: 0 0 65%;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery-left .mySlides img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 12px;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-gallery-section {
    width: 100%;
    margin-bottom: 40px;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-sidebar {
    width: 320px;
    position: sticky;
    top: 30px;
    background: #fff;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .08);
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-top: 30px;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-main-content {
    flex: 1;
    min-width: 0;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-sidebar {
    width: 320px;
    flex-shrink: 0;
}

.apfl-sl-falcon.apfl-sl-wrapper .apply-sec {
    position: sticky;
    top: 20px;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    padding: 25px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .08);
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-main-content {
    flex: 1;
    min-width: 0;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-sidebar {
    width: 320px;
    flex-shrink: 0;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-sidebar .sl-btns {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-main-content {
    flex: 1;
    min-width: 0;
}

.apfl-sl-falcon .apfl-half.apply-sec {
    width: 320px;
    flex-shrink: 0;
    position: sticky;
    top: 20px;
    max-height: calc(100vh - 40px);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.apfl-sl-falcon.apfl-sl-wrapper .details-right {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.apfl-sl-falcon.apfl-sl-wrapper .details-right .sl-btns {
    display: inline-block;
    margin: 10px auto;
    margin-left: auto;
    margin-right: auto;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-gallery-section,
.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    max-width: 1600px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-page-container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-grid {
    height: 450px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 10px;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-item {
    height: 100%;
    position: relative;
    overflow: hidden;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.apfl-sl-falcon.apfl-sl-wrapper .thumb-grid {
    width: 38%;
    height: 450px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 12px;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl_back_to_all .apfl-prmry-btn {
    margin-left: 0%;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .prev,
.apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .next {
    top: 50%;
    margin-top: 0;
    transform: translateY(-50%);
}

.apfl-sl-falcon.apfl-sl-wrapper .extra-half {
    padding: 20px 0;
    border-bottom: 1px solid #e5e5e5;
}

.apfl-sl-falcon.apfl-sl-wrapper .extra-half:last-child {
    border-bottom: none;
}

.apfl-sl-falcon.apfl-sl-wrapper .extra-half h4 {
    margin-bottom: 12px;
    font-size: 20px;
    font-weight: 600;
}

.apfl-sl-falcon.apfl-sl-wrapper .extra-half ul {
    margin: 0;
    padding-left: 18px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 40px;
    margin: 0;
    padding-left: 20px;
}

.apfl-sl-falcon.apfl-sl-wrapper .extra-half ul li {
    margin: 0;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
    display: flex;
    gap: 20px;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-main-content {
    width: calc(100% - 300px);
}

.apfl-sl-falcon .mobile-more-photos {
    display: none;
}

.apfl-sl-falcon.apfl-sl-wrapper .apply-sec {
    width: 280px;
}

.apfl-sl-falcon .falcon-main-content,
.apfl-sl-falcon .lst-dtls,
.apfl-sl-falcon .apfl-half,
.apfl-sl-falcon .extra {
    width: 100%;
    max-width: 100%;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-prmry-btn {
    margin-left: 0%;
    background: var(--secondary-color);
    color: #ffffff;
    cursor: pointer;
    min-width: 135px;
    font-size: 18px;
    border: 2px solid var(--secondary-color);
    border-radius: 30px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-prmry-btn:hover {
    background: #ffffff;
    color: var(--secondary-color);
}

.apfl-sl-falcon.apfl-sl-wrapper .apfl-prmry-btn:hover .arrow-left-icon {
    color: var(--secondary-color)
}

.apfl-sl-falcon.apfl-sl-wrapper .call-top {
    padding-bottom: 10px;
    color: var(--primary-color);
}

.apfl-sl-falcon.apfl-sl-wrapper .calendar-icon {
    width: 18px;
    height: 18px;
    padding-right: 5px;
}

.apfl-sl-falcon .apfl-half.apply-sec {
    text-align: center;
    padding-bottom: 10px;

}

.apfl-sl-falcon.apfl-sl-wrapper strong {
    text-align: center;
    padding-bottom: 10px;
}

.apfl-sl-falcon.apfl-sl-wrapper .details-right {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

.apfl-sl-falcon .details-right>p,
.apfl-sl-falcon .details-right>a {
    flex: 1;
    text-align: center;
    margin: 0;
}

.apfl-sl-falcon .rent-hdng,
.apfl-sl-falcon #avail-txt,
.apfl-sl-falcon .call-top {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
}

.apfl-sl-falcon .call-top .call-now {
    width: 24px;
    height: 24px;
}

.apfl-sl-falcon .details-right {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.apfl-sl-falcon .details-right .rent-hdng,
.apfl-sl-falcon .details-right #avail-txt,
.apfl-sl-falcon .details-right .call-top {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin: 0;
    line-height: 1.4;
}

.apfl-sl-falcon .price-tag,
.apfl-sl-falcon .calendar-icon,
.apfl-sl-falcon .call-now {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.apfl-sl-falcon .price-tag svg,
.apfl-sl-falcon .calendar-icon svg,
.apfl-sl-falcon .call-now svg {
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    display: inline-block;
    vertical-align: middle;
}

.apfl-sl-falcon.apfl-sl-wrapper #contactBtn {
    cursor: pointer;
    min-width: 135px;
    width: 220px;
    font-size: 18px;
    border: 2px solid;
    border-radius: 30px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
    padding-bottom: 25px;
}

.apfl-sl-falcon.apfl-sl-wrapper #applyBtn {
    cursor: pointer;
    min-width: 135px;
    width: 220px;
    font-size: 18px;
    border: 2px solid;
    border-radius: 30px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
}

.apfl-sl-falcon.apfl-sl-wrapper #schshowingBtn {
    cursor: pointer;
    min-width: 135px;
    width: 220px;
    font-size: 18px;
    border: 2px solid;
    border-radius: 30px;
    height: 42px;
    box-sizing: border-box;
    outline: none;
}

.apfl-sl-falcon #apfl-vdo {
    display: flex;
    justify-content: center;
    width: 100%;
    padding-bottom: 10px;
}

.apfl-sl-falcon #apfl-vdo iframe {
    max-width: 100%;
    width: 1000px;
    height: 330px;
}

#apfl-listings-container .desctitle {
    font-size: 36px;
    font-weight: 700;
}

.apfl-sl-falcon .apfl-share-buttons-wrapper {
    padding-top: 10px;

}

.apfl-sl-falcon .address-hdng .header__title__map-link {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

.apfl-sl-falcon .address-hdng .map-marker-icon {
    width: 20px;
    height: 20px;
    vertical-align: middle;
}

.apfl-sl-falcon.apfl-sl-wrapper .falcon-map-row {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin: 20px 0;
}

.apfl-sl-falcon .falcon-map-btn {
    background: #2f6fb2;
    color: #fff;
    border: none;
    border-radius: 30px;
    padding: 12px 24px;
    cursor: pointer;
}

#apfl-listings-container.main-listings-page .apfl-filter-form form {
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

#apfl-listings-container.main-listings-page .falcon-header-right {
    flex-shrink: 0;
}

/* ===========================================================================================================================
   MOBILE VIEW
============================================================================================================================== */
@media (max-width:768px) {

    html,
    body,
    .apfl-falcon-template#apfl-listings-container .falcon-layout-wrapper {
        width: 100%;
        overflow-x: hidden;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-layout-wrapper,
    .apfl-falcon-template#apfl-listings-container .all-listings,
    .apfl-falcon-template#apfl-listings-container .listing-item,
    .apfl-falcon-template#apfl-listings-container .details,
    .apfl-falcon-template#apfl-listings-container .list-img {
        max-width: 100%;
        box-sizing: border-box;
    }

    /* ======================
       HEADER
    ====================== */

    .apfl-falcon-template#apfl-listings-container .falcon-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 15px;
        gap: 15px;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-header-filters {
        width: 80%;
        max-width: none;
        margin: 0 auto;
    }

    .apfl-falcon-template#apfl-listings-container .btns {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
    }
    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active {
        display: block;
    }

    .apfl-falcon-template#apfl-listings-container .btns .more_detail_btn,
    .apfl-falcon-template#apfl-listings-container .btns .apply_btn,
    .apfl-falcon-template#apfl-listings-container .btns .schedule_btn {
        width: 100%;
        flex: 0 0 100%;
        max-width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-header-filters form {
        display: flex;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        gap: 12px;
        width: 100%;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-header-filters form>* {
        width: 100%;
        max-width: 100%;
        margin: 0;
        box-sizing: border-box;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-header-filters input,
    .apfl-falcon-template#apfl-listings-container .falcon-header-filters select {
        width: 100%;
        display: block;
        height: 50px;
        min-height: 50px;
        font-size: 15px;
        box-sizing: border-box;
    }

    /* Search Button */
    .apfl-falcon-template#apfl-listings-container .falcon-header-filters button {
        width: 180px;
        height: 50px;
        margin: 0 auto;
        display: block;
    }

    /* Map Button */
    .apfl-falcon-template#apfl-listings-container .falcon-map-right {
        width: 100%;
        display: flex;
        justify-content: center;
        text-align: center;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-map-btn {
        width: 220px;
        max-width: 220px;
        min-width: unset;
        height: 50px;
        font-size: 18px;
        margin: 10px auto;
        display: block;
        align-items: center;
    }

    /* ======================
       HEADINGS
    ====================== */
    .apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_hdng,
    .apfl-falcon-template#apfl-listings-container .listing-filters .apfl_page_sub_hdng,
    .apfl-falcon-template .apfl-banner-heading h1,
    .apfl-falcon-template .apfl-banner-heading h2,
    .apfl-falcon-template .apfl-banner-heading h3 {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }

    /* ======================
       LISTINGS
    ====================== */
    .apfl-falcon-template#apfl-listings-container.main-listings-page .all-listings {
        display: block;
    }

    .apfl-falcon-template .falcon-layout-wrapper .listing-item.column.mcb-column.one-third {
        width: 100%;
        max-width: 100%;
        flex: none;
        margin: 0 0 25px;
        display: block;
    }

    .apfl-falcon-template#apfl-listings-container .list-img {
        width: 100%;
        height: 240px;
        border-radius: 20px;
    }

    .apfl-falcon-template#apfl-listings-container .list-img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .apfl-falcon-template#apfl-listings-container .details {
        width: 100%;
        padding: 12px 10px 0;
    }

    .apfl-falcon-template#apfl-listings-container .btns {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
    }

    .apfl-falcon-template#apfl-listings-container .btns a {
        flex: 1;
        height: 46px;
    }

    .apfl-falcon-template .lstng-avail,
    .apfl-falcon-template .rent-price {
        font-size: 13px;
        padding: 8px 12px;
    }

    .apfl-falcon-template#apfl-listings-container .all-listings {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .apfl-falcon-template#apfl-listings-container .listing-item.column.mcb-column.one-third {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;
    }

    /* ======================
       MAP ACTIVE
    ====================== */
    .apfl-falcon-template .falcon-layout-wrapper.map-active {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .falcon-map-wrapper {
        display: block;
        width: 100%;
        height: 350px;
        position: relative;
        padding: 0;
        margin: 0 0 20px;
        order: 1;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active #googlemap {
        display: block;
        width: 100%;
        height: 350px;
        min-height: 350px;
        border-radius: 20px;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .all-listings {
        order: 2;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .listing-item {
        display: block;
        width: 100%;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .list-img {
        width: 100%;
        height: 240px;
        flex: none;
    }

    .apfl-falcon-template .listing-amenities {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px 15px;
        width: 100%;
        margin-bottom: 12px;
    }

    .apfl-falcon-template .listing-amenities .amenity-item {
        display: flex;
        align-items: center;
        gap: 6px;
        white-space: nowrap;
    }

    .apfl-falcon-template .listing-amenities img {
        width: 16px;
        height: 16px;
        flex-shrink: 0;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings .listing-item {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .list-img {
        width: 100%;
        height: 240px;
        margin-bottom: 15px;
    }

    .apfl-falcon-template .falcon-layout-wrapper.map-active .details {
        width: 100%;
    }

    .falcon-gallery-section {
        width: 100%;
        margin-bottom: 40px;
    }

    /* Map Button */
    .apfl-falcon-template#apfl-listings-container .falcon-map-btn {
        width: 220px;
        max-width: 220px;
        min-width: unset;
        height: 50px;
        font-size: 18px;
        margin: 10px auto;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-map-btn span {
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1;
    }

    .apfl-falcon-template#apfl-listings-container .falcon-map-btn svg {
        width: 18px;
        height: 18px;
        display: block;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .listing-item {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img {
        width: 100%;
        max-width: 100%;
        height: 240px;
        margin-bottom: 15px;
        overflow: hidden;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

    .apfl-sl-falcon .apfl-gallery {
        display: block;
    }

    /* Main image */
    .apfl-sl-falcon .apfl-gallery .mySlides img {
        width: 100%;
        height: 300px;
        object-fit: cover;
    }

    /* More Photos button show */
    .apfl-sl-falcon .more-photos {
        position: relative;
        display: inline-block;
        width: fit-content;
        margin: 15px auto 0;
        background-color: var(--secondary-color);
        color: #fff;
        z-index: 10;
    }

    /* Gallery arrows */
    .apfl-sl-falcon .apfl-gallery .prev,
    .apfl-sl-falcon .apfl-gallery .next {
        top: 150px;
        margin-top: 0;
        transform: translateY(-50%);
    }

    .apfl-sl-falcon .apfl-gallery .prev {
        left: 15px;
    }

    .apfl-sl-falcon .apfl-gallery .next {
        right: 15px;
    }

    /* Sidebar bottom */
    .apfl-sl-falcon .apply-sec {
        width: 100%;
        position: relative;
        max-height: none;
    }

    .apfl-sl-falcon .extra-half ul {
        grid-template-columns: 1fr;
    }

    .apfl-sl-falcon .thumb-item:last-child {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: auto;
    }

    .apfl-sl-falcon .thumb-item:last-child .more-photos {
        position: static;
        display: block;
        margin-top: 15px;
    }

    /* Main gallery image */
    .apfl-sl-falcon .apfl-gallery .mySlides img {
        width: 100%;
        height: 300px;
        object-fit: cover;
        border-radius: 20px;
    }

    /* Hide first thumbnails */
    .apfl-sl-falcon .thumb-grid .thumb-item:not(:last-child) {
        display: none;
    }

    /* Grid below image */
    .apfl-sl-falcon .thumb-grid {
        display: block;
        width: 100%;
        text-align: center;
        margin-top: 15px;
    }

    /* Last item containing More Photos button */
    .apfl-sl-falcon .thumb-grid .thumb-item:last-child {
        display: block;
        width: 100%;
        height: auto;
    }

    /* Hide thumbnail image */
    .apfl-sl-falcon .thumb-grid .thumb-item:last-child img {
        display: none;
    }

    /* More Photos button */
    .apfl-sl-falcon .thumb-grid .more-photos {
        position: absolute;
        display: inline-block;
        background: var(--secondary-color);
        color: #fff;
        padding: 10px 18px;
        border-radius: 30px;
        font-size: 14px;
        font-weight: 600;
        margin: 0 auto;
        cursor: pointer;
    }

    .apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .prev {
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    .apfl-sl-falcon.apfl-sl-wrapper .apfl-gallery .next {
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings {
        display: block;
        width: 100%;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .listing-item.column.mcb-column.one-third {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        margin: 0 0 25px;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .listing-item.column.mcb-column.one-third>a {
        display: block;
        width: 100%;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img {
        width: 100%;
        max-width: 100%;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .list-img img {
        width: 100%;
        display: block;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings {
        margin-top: 20px;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .listing-item:first-child {
        margin-top: 0;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .falcon-map-wrapper {
        margin-bottom: 25px;
        overflow: hidden;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .all-listings {
        padding-top: 25px;
    }

    .apfl-sl-falcon.apfl-sl-wrapper .falcon-main-content {
        width: 100%;
    }

    .apfl-sl-falcon.apfl-sl-wrapper .thumb-grid {
        width: 0%;
        height: 0px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        gap: 12px;
    }

    .apfl-sl-falcon .thumb-grid {
        visibility: hidden;
        height: 0;
        overflow: hidden;
        margin: 0;
        padding: 0;
    }

    .apfl-sl-falcon .thumb-item {
        display: block;
    }

    /* Thumbnail grid hide */
    .apfl-sl-falcon .thumb-grid {
        display: none;
    }

    /* Arrows apni jagah rahenge */
    .apfl-sl-falcon .apfl-gallery {
        position: relative;
    }

    /* More Photos button */
    .apfl-sl-falcon .more-photos {
        display: none;
    }

    .apfl-sl-falcon.apfl-sl-wrapper .falcon-content-wrap {
        align-items: center;
    }

    .apfl-falcon-template#apfl-listings-container.main-listings-page .falcon-layout-wrapper.map-active .falcon-map-wrapper {
        height: 450px;
    }
}

@media(max-width:991px) {
    .apfl-sl-falcon .falcon-content-wrap {
        flex-direction: column;
    }

    .apfl-sl-falcon .falcon-sidebar {
        width: 100%;
        position: static;
    }
}
