body{
    background-color: #f2f5f7;
}
.body-inner{
    padding-top: 3rem;
}
.body-footer{
    background-color: #22374b;
    color: #fff;
    z-index: 3;
    height: 5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.navbar{
    position: fixed !important;
    top: 0px;
    left: 0px;
    z-index: 99;
    width: 100%;
    color: #fff;
    height: 3rem;
    display: flex;
    align-items: center;
    padding: 0 1.125rem !important;
}
.navbar .background{
    background-color: #000;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    right: 0px;
    z-index: -1;
    opacity: 0.1;
}
.navbar .background.solid{
    background-color: #fff;
    opacity: 1;
}
.navbar.solid{
    box-shadow: 1px 1px 3px #888;
}
.navbar .login{
    color: #333;
}
.navbar .container-fluid.nav-left, .navbar .container-fluid.nav-left-md{
    flex: 3;
    justify-content: flex-start;
    padding-right: 0px;
}
.navbar .container-fluid.nav-left-md{
    flex: 1;
}
.navbar .navbar-toggler{
    display: unset;
    border-left: none;
    border-right: none;
    border-top-width: 3px;
    border-bottom-width: 3px;
    border-color: #333;
    border-radius: 0;
    box-shadow: none;
}
.navbar-brand, a.navbar-brand:visited, a.navbar-brand:hover{
    margin-right: 0;
    color: #fff;
}
.navbar-brand .i{
    display: inline-block;
    padding: 0.15rem 1rem;
    border-radius: 1.1rem;
    background-color: #fff;
    color: #737272;
    margin-right: 0.2rem;
}
#navbarSupportedContent{
    z-index: 98;
    box-shadow: 1px 1px 3px #888;
}
.navbar-collapse {
    position: fixed;
    left: 0px;
    top: 0px;
    background-color: #fff;
    color: #000;
    width: 17rem;
    height: 100vh;
    font-size: 130%;
    border-right: solid 1px #999;
    font-size: initial !important;
}
.navbar-collapse .nav-link{
    padding-left: 2rem;
    border-radius: 0 1rem 1rem 0;
}
.navbar-nav .nav-link.active, .navbar-collapse .navbar-nav .nav-link:hover{
    background-color: #e0ecef;
    color: #01a0c2;
}
.navbar-nav a.nav-link, .navbar-nav:hover a.nav-link{
    background-color: #fff;
    color: #000;
}
.navbar .nav-right{
    flex: 1;
    justify-content: flex-end;
    padding-left: 0px;
    padding-right: 0px;
}

.homepage-icon{
    background-image: url('../images/homepage_icons.png');
    background-size: 210px;
    background-repeat: no-repeat;
    width: 70px;
    height: 70px;
}
.homepage-icon-premium{
    background-position: 0px 0px;
}
.homepage-icon-lab-space{
    background-position: -70px 0px;
}
.homepage-icon-exposure{
    background-position: -140px 0px;
}
.homepage-icon-boost-exposure{
    background-position: 0px -70px;
}
.homepage-icon-comprehensive{
    background-position: -70px -70px;
}
.homepage-icon-connect{
    background-position: -140px -70px;
}
.homepage-icon-track-results{
    background-position: 0px -140px;
}
.homepage-icon-free{
    background-position: -70px -140px;
}

.homepage-search-container{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    padding-top: 3rem;
}
.homepage-search-container .search-box-overlay{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background-color: #244361;
    opacity: 0.6;
    border-radius: 1.5rem;
}
.homepage-search-box{
    position: relative;
    z-index: 2;
}
.homepage-search-box .desktop input[type=text]{
    max-width: 25rem;
}
.desktop .homepage-search-container .search-box-wrapper{
    padding: 3rem;
}

@media (min-width: 1440px){
    .desktop .homepage-search-container .search-box-wrapper{
        padding: 4rem;
    }
}
@media (min-width: 1680px){
    .desktop .homepage-search-container .search-box-wrapper{
        padding: 5rem;
    }
}
@media (min-width: 1920px){
    .desktop .homepage-search-container .search-box-wrapper{
        padding: 6rem;
    }
}

.search-container{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.search-container input[type=checkbox]{
    border-color: #fff;
}
.search-container .listing-types{
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}
.search-container .listing-types .type{
    cursor: pointer;
    position: relative;
    width: 7rem;
    height: 2rem;
    color: #fff;
}
.search-container .listing-types .background{
    background-color: #fff;
    opacity: 0.2;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
}
.search-container .listing-types .active .background{    
    opacity: 1;
    background-color: #5bb6bd;
}
.search-container .listing-types .title{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.homepage-search-container input[type=checkbox]:checked{
    background-color: #5bb6bd;
    border-color: #5bb6bd;
}
.search-box-container{
    width: 40rem;
}
.homepage-search-container .search-box-container{
    width: 30rem;
}
.search-page .search-box-container{
    width: 43rem;
}
.search-container .search-box{
    flex: 1;
    background-color: #fff;
    padding: 0.5rem 0;
    border-radius: 1rem;
}
.lg-search-box .search-box, .homepage-search-box .search-box{
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.homepage-search-box .search-box{
    border-top-left-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;    
}
.search-container .button-search{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #4e9902;
    color: #fff;
    padding: 0 1.5rem;
    height: 100%;
    border-radius: 1rem;
}
.lg-search-box .button-search, .homepage-search-box .button-search{
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background-color: #5bb6bd;
}
.homepage-search-box .button-search{
    border-top-right-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
}
.mobile .homepage-search-box .button-search .ico-search{
    width: 30px;
    height: 30px;
    background-size: 180px;
    background-position: -150px 0px;
}
.search-box .dropdown-handle,.search-box .handle{
    white-space: nowrap;
}
.search-box .handle{
    border-top: none;
    border-left: none;
    border-bottom: none;
    border-radius: 0;
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
}
.search-box .drop{
    box-shadow: none;
}
.search-box input.location-input{
    border-left: none;
    border-top: none;
    border-right: none;
    border-bottom: none;
    border-radius: 0;
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
}
.search-box .dropdown{
    top: calc(100% + 0.7rem);
    border-radius: 0.3rem;
    width: 15rem;
}
.search-result-wrapper{
    min-height: calc(100vh - 19rem);
}
.dropdown.align-right{
    right: 0px;
    left: unset;
}
.white-checkbox{
    display: flex;
    width: 1.5rem;
    height: 1.5rem;
    background-color: #fff;    
    cursor: pointer;
}
.listing-thumbnail{
    width: 100%;
    border: solid 1px #dedede;
    background-color: #fff;
}
.listing-thumbnail .photo-container{
    position: relative;
    width: 100%;
    padding-top: 60%;
}
.listing-thumbnail .photo{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
}
.listing-thumbnail .liked{
    position: absolute;
    bottom: 5px;
    right: 5px;
}
.listing-thumbnail .listing-tags{
    position: absolute;
    z-index: 2;
    bottom: 5px;
    left: 5px;
    display: flex;
    flex-wrap: wrap-reverse;
    gap: 0.5rem;
    width: 12rem;
}
.listing-thumbnail .listing-tag{
    white-space: nowrap;
    position: relative;
}
.listing-tag .background{
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0.7;
    border-radius: 0.5rem;
}
.listing-tag .label{
    color: #333;
    padding: 0 0.3rem;
    font-size: 90%;
}
.listing-thumbnail .details{
    padding: 1rem;
    border: none !important;
}
.listing-thumbnail .name{
    font-size: 115%;
}
.listing-thumbnail .address, .listing-thumbnail a.address,.listing-thumbnail .address:hover{
    color: #999;
}
.listing-thumbnail .footer{
    padding: 0.7rem 1rem 0.7rem 1rem;
    border-top: solid 1px #dedede;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.listing-thumbnail.off-market .footer{
    border-top: none;
}
.listing-thumbnail .company-logo{
    height: 2rem;
    display: flex;
    align-items: center;
}
.listing-thumbnail .company-logo img{
    max-height: 2rem;
}
.listing-thumbnail .request-info{
    display: flex;
    gap: 0.3rem;
    color: #999;
    cursor: pointer;
}
.listing-thumbnail .request-info:hover{
    color: #01a0c2;
}
.listing-thumbnail .request-info:hover .ico-30{
    background-image: url(../images/icons_30px_hover.png);
}


.slideshow{
    position: relative;
    width: 100%;
    padding-top: 60%;    
}
.slideshow.listing-slideshow{
    padding-top: unset;    
}
.slideshow .slides-container{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}
.slideshow .slides{
    position: relative;
    width: 100%;
    height: 100%;
}
.slideshow .slide{
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: #fff;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slideshow .slide img{
    max-width: 100%;
    max-height: 100%;
}
.slideshow .prev, .slideshow .next{
    position: absolute;
    top: calc(50% - 25px);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-image: url(../images/arrow_left_right_40px.png);
    background-size: 80px;
    opacity: 0.7;
    cursor: pointer;
}
.slideshow .prev{
    left: 30px;
}
.slideshow .next{
    right: 30px;
    background-position: -40px 0px;
}
.slideshow.listing-slideshow .slides-container, .slideshow.listing-slideshow .slides, .slideshow.listing-slideshow .slide{
    position: unset;
}
.swiper .swiper-pagination .swiper-pagination-bullet{
    width: 0.5rem;
    height: 0.5rem;    
}
.swiper .swiper-pagination .swiper-pagination-bullet-active{
    width: 0.8rem;
    height: 0.8rem;
    position: relative;
    top: 0.14rem;
    background-color: #ffcc66;
}
.swiper .swiper-pagination-fraction{
    display: flex;
    left: 8px;
}
.swiper .swiper-pagination-fraction .fraction-wrapper{
    position: relative;
}
.swiper .swiper-pagination-fraction .fraction-background{
    position: absolute;
    z-index: -1;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background-color: #000;
    opacity: 0.5;
    border-radius: 1rem;
}
.swiper .swiper-pagination-fraction .fraction-numbers{
    color: #fff;
    padding: 0.375rem 0.75rem;
}
.swiper-slide .photo-slide{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.swiper-slide .photo-slide img{
    max-width: 100%;
    max-height: 100%;
}
.swiper-slide-single>div{
    width: 100%;
    height: 100%;
}
.swiper-slide-double>div>div{
    width: 50%;
    height: 100%;
}
.listing-details .column-left{
    background-color: #f2f5f7
}
/*.listing-details .column-right{
    width: 23rem;
}*/
.listing-details .listing-summary{
    background-color: #e0edef;
    padding: 1rem;
}
.listing-details .listing-summary .sselect-wrapper .handle{
    border: none;
    background: none;
    padding-top: 0px;
    padding-bottom: 0px;
    padding-left: 0.3rem;
}
.listing-details .details{
    background-color: #fff;
    border: solid 1px #dedede;
}
.listing-details .details .header{
    background-color: #eee;
    padding: 0.5rem 1rem 1rem 1rem;
    border-bottom: solid 1px #dedede;
}
.listing-details .details .body{
    background-color: #fff;
    padding: 1rem 2rem;
}
.listing-details .bottom-border{
    padding: 0.5rem 0;
    border-bottom: solid 1px #e5e6e7;
}
.listing-details .details .footer{
    border-top: solid 1px #dedede;
    padding: 1rem 1.5rem;
}
.listing-details .space{
    background-color: #fff;
    border: solid 1px #dedede;
    border-radius: 0.5rem;
}
.listing-details .space .header{
    padding: 1rem;
    border-bottom: solid 1px #dedede;
}
.listing-details .space .header .switch{
    background-color: #5bb6bd;
    width: 30px !important;
    height: 20px !important;
    background-size: 20px !important;
    background-repeat: no-repeat !important;
    background-position-x: 5px !important;
    background-position-y: 5px !important;
    border-radius: 0.2rem;
}
.listing-details .space .header .switch.ico-down{
    background-image: url(../images/ico_down_white.png) !important;
}
.listing-details .space .header .switch.ico-up{
    background-image: url(../images/ico_up_white.png) !important;
}
.listing-details .space .body{
    padding: 1rem 1.5rem;
}
.listing-details .space .photos{
    display: flex;
    flex-wrap: wrap;
}
.listing-details .space .photo{
    width: 50%;
    padding-top: 33.33%;
    position: relative;
}
.listing-details .space .photo.even{
    border-right: 0px;
    position: relative;
}
.listing-details .space .photo div{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.listing-details .space img{
    max-height: 100%;
}
.listing-details .space .lab-area{
    background-color: #e0edef;
}
.listing-details .pdf, .space-details-body .pdf{
    background-color: #f5f6f7;
    padding: 0.5rem 1rem;
    margin: 0 1rem;
    display: flex;
    gap: 1rem;
    align-items: center;
}
.space-details-body .pdf{
    background: none;
}
.space-details-dialog-titlebar{
    display: none;
}
.ui-dialog .ui-dialog-content.space-details-dialog-content{
    padding: 0px !important;
    background-color: #f9f9f9;
}
.listing-details .claim-listing, .listing-contacts .request-info{
    border: solid 1px #01a0c2;
    color: #01a0c2;
    border-radius: 1rem;
    padding: 0.5rem 2rem;
    cursor: pointer;
    text-align: center;
}
.listing-details .claim-listing:hover, .listing-contacts .request-info:hover{
    background-color: #01a0c2;
    color: #fff;
}
.listing-details .claim-listing:hover .ico-claim{
    background-image: url(../images/icons_30px_hover.png);
}
.listing-contacts.disabled{
    color: #999;
}
.listing-contacts.disabled .request-info{
    color: #999;
    border: solid 1px #999;
    cursor: unset;
}
.listing-contacts.disabled .request-info:hover{
    color: #999;
    background-color: #fff;
}
#map_column{
    height: 100%;
}
.floating-map{
    position: fixed;
    width: calc(50% - 2rem);
    height: calc(100vh - 13rem);
}
.map-container{
    width: 100%;
    padding-top: 50%;
    position: relative;
}
.broker-details .map-container{
    padding-top: 35rem;
}
.floating-map .map-container{
    height: 100%;    
    padding-top: 0;
}
.map-container .map-wrapper{
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
}
.listing-details #map, .listing-details #streetview{
    width: 100%;
    height: 100%;
}
.listing-contacts .logo-container{
    max-width: 6rem;
    max-height: 6rem;
}

.listing-mobile-controls{
    position: fixed;
    z-index: 100;
    bottom: 0px;
    left: 0px;
    right: 0px;
    padding: 0.5rem;
}
.listing-mobile-controls .controls-container{
    background-color: #fff;
    border-radius: 0.5rem;
    padding: 1rem 0.5rem;
}
.listing-mobile-controls .item{
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 0.75rem 1rem;
    line-height: 1rem;
    border-radius: 0.5rem;
}
.listing-mobile-controls .item:active, .listing-mobile-controls .item:hover{
    background-color: #e0edef;
}

.request-info-dialog a{
    color: #01a0c2 !important;
    outline: none;
}
.request-info-dialog .bg-grey{
    margin-left: -1rem;
    margin-right: -1rem;
    margin-top: -1rem;
    padding: 1rem;
}
.request-info-titlebar .ui-dialog-title{
    border: none;
    text-align: center;
}
.ui-dialog .request-info-titlebar .ui-dialog-titlebar-close{
    display: unset;
    width: 20px;
    height: 20px;
    background-color: #fff;
    background-image: url(../images/icons_30px.png);
    background-size: 260px;
    background-position: -240px -60px;
    background-repeat: no-repeat;
    border: none;
    right: 1rem;
    top: 1.5rem;
}

.search-page .search-container{
    background: none;
    height: auto;
    border-bottom: solid 1px #dedede;
}
.button-filter{
    background-color: #fff;
    border: solid 1px #dedede;
    height: calc(20px + 1rem);
    padding: 0 0.5rem;
    display: flex;
    align-items: center;
    cursor: pointer;
    border-radius: 0.5rem;
}
.button-filter:hover>.ico-filter{
    background-image: url(../images/icons_30px_hover.png);
}
.search-page .listing-filter{
    position: absolute;
    z-index: 2;
    width: 20rem;
    height: auto;
    top: 0px;
    right: 0px;
    background-color: #fff;
    box-shadow: -1px 1px 3px #888;
    padding-top: 0;
    padding-bottom: 0;
    border: none;
}
.search-page .listing-filter-inner{
    padding-top: 1rem;
    padding-bottom: 1rem;
}
.search-page .listing-filter-body{
    padding: 1rem;
    height: auto;
    overflow-y: unset;
}
.search-page .listing-filter-body:hover{
    overflow-y: unset;    
}
.search-page .listing-filter-overlay{
    position: absolute;
    z-index: 2;
    background-color: #999;
    opacity: 0.5;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
}

.overlay{
    position: absolute;
    z-index: 3;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    background-color: #999;
    opacity: 0.5;
}
.advanced-search{
    position: absolute;
    z-index: 4;
    top: 3rem;
    left: 0px;
    right: 0px;
    background-color: #f2f5f7;
    border-bottom: solid 1px #01a0c2;
    box-shadow: -1px 1px 3px #888;
}
.advanced-search .header{
    background-color: #f7f7f7;
    box-shadow: -1px 1px 3px #888;
    padding-top: 2rem;
}
.advanced-search .steps{
    display: flex;
}
.advanced-search .step{
    text-align: center;
    position: relative;
    padding-bottom: 15px;
}
.advanced-search .step-name{
    text-align: center;
    text-transform: uppercase;
    color: #999;
    padding: 0 1rem;
}
.advanced-search .step.active .step-name{
    color: #000;
}
.advanced-search .step .current-mark{
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 5px;
    display: flex;
    justify-content: center;
}
.advanced-search .step .current-mark span{
    display: inline-block;
    background-color: #3585c6;
    border-radius: 5px 5px 0 0;
    width: 100%;
    height: 5px;
}
.advanced-search .body{
    max-height: calc(100vh - 13rem);
    overflow-y: auto;
}
.advanced-search .rate-unit .handle{
    border: none;
    padding: 0px;
    padding-right: 2rem;
}
.advanced-search .dropdown{
    right: 0px;
    width: 100%;
}

.ui-dialog.large-padding-dialog .ui-dialog-content, .ui-dialog.large-padding-dialog .ui-dialog-titlebar{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}


.index-main-content{
    position: relative;
    min-height: 20rem;
}
.index-main-content .overlay{
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: -5rem;
    background-color: #666;
    opacity: 0.5;
}
.tag-cloud .size1{font-size:100%;}
.tag-cloud .size2{font-size:110%;}
.tag-cloud .size3{font-size:120%;}
.tag-cloud .size4{font-size:140%;}
.tag-cloud .size5{font-size:180%;}
.tag-cloud a:hover{
    text-decoration: underline;
}

.receive-email-container .drop{
    top: -3rem;
}

.broker-details .broker-avatar .avatar{
    width: 12rem;
    height: 12rem;
}
.broker-details .broker-avatar .avatar span{
    font-size: 600%;
}

.broker-details .logo-container{
    width: 5.7rem;
    height: 5.7rem;
}
.broker-details .about-wrapper{
    position: relative;
    padding: 1.5rem;
    padding-bottom: 2.5rem;
}
.broker-details .about-wrapper .ico-down2, .broker-details .about-wrapper .ico-up2{
    position: absolute;
    right: 1.5rem;
    bottom: 1rem;
    cursor: pointer;
}  
.broker-details .about.collapsed{
    max-height: 6.5rem;
    overflow: hidden;
}
.broker-details .about p, .broker-details .about li{
    margin: 0;
    padding: 0;
    line-height: 1.8rem;
}


.status-indicator{
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #ccc;
}
.status-indicator.available{
    background-color: #99cc66;
}
.status-indicator.coming_soon{
    background-color: #0099ff;
}
.status-indicator.in_contract{
    background-color: #ffcc33;
}
.status-indicator.out_for_signature{
    background-color: #ffcc33;
}
.status-indicator.call_for_offers{
    background-color: #ffcc33;
}
.status-indicator.backup_offers{
    background-color: #ffcc33;
}
.status-indicator.in_escrow{
    background-color: #ffcc33;
}
.status-indicator.leased{
    background-color: #ff9933;
}
.status-indicator.sold{
    background-color: #ff9933;
}
.status-indicator.expired{
    background-color: #ff3333;
}
.status-indicator.off_market{
    background-color: #ff3333;
}