body {
    background: #fff;
    font-family: var(--fontfamily);
}
ul,ol {   
    margin: 0;
    padding: 0;  
}
img {
    max-width: 100%;
}
.page-link:hover {
    color: var(--primary);
}
.page-link:focus {
    box-shadow: none;
}
#search-filter a i {
    color: #bfbfbf;
}
#search-filter a.active-view i {
    color: var(--primary);
}
.btnPrimary {
    background: var(--primary);
    color: #fff; 
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.btnPrimary:hover {
    background: var(--primaryhover);
}
.btnPrimary:hover {
    color: #fff;
}
.btn {
    border-radius: 5px;
    font-weight: 400;
    padding: 14px 39px;
    line-height: 26px;
    position: relative;
    min-width: 215px;
}
.btn:focus {
    box-shadow: none !important;
    outline: none !important; 
}
.page-item.active .page-link {
    background-color: var(--primary);
    border-color: var(--primary);
}
.page-link {
    color: var(--primary);
}
.form-control {
    border: 0;
    background-color: #f8f8f8;
    height: 50px;
    border-radius: 4px !important;
}
.form-control:focus {
    box-shadow: none;
    background-color: #f8f8f8;
}
/********Header css Starts ***********/
.headerMain {
    background-color: transparent;
    background: transparent;
    height: auto;
}
.headerNavCol a.navbar-brand img {
    /*max-width: 140px;*/
    max-height: 45px;
}
.headerNavCol nav.navbar {
    width: auto;
    height: auto;
    position: initial;
    float: none;
    background: #fff;
}
.navRight ul li {
    display: inline-block;
}
.headerNavCol {
    padding: 15px 0;
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0;
    background: #fff;   
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.headerNavCol.scrolled {
    padding: 10px 0;
}
.headerNavCol.fixed-header {
    padding: 15px 0;
    background: #fff;
}
.navbar ul li a {
    color: #22252F;
    font-size: 16px;
}
.navbar ul li + li {
    margin-left: 35px;
}
.navbar-collapse.navMain {
    margin-left: 85px;
}
.navRight ul li a {
    font-size: 15px;
    color: #22252F;
    font-family: var(--fontfamily);
    font-weight: 600;
    text-decoration: none;
}
.navRight ul li.headerBtn a {
    border-radius: 5px;
    font-weight: 400;
    background: var(--primary);
    padding: 8px 32px;
    line-height: 26px;
    display: inline-block;
    position: relative;
    color: #fff;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.navRight ul li.headerBtn a:hover {
    background: var(--primaryhover);
}
.navbar .navMain .navbar-nav li a {
    padding: 0 !important;
    position: relative; 
}
.navbar .navMain .navbar-nav li a:after {
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 0;
    margin: auto;
    background-color: var(--primary);
    color: transparent;
    width: 0%;
    content: '';
    height: 2px;
    transition: all 0.5s;
}
.navbar .navMain .navbar-nav li a:hover:after {
    width: 100%;
}
.navbar .navMain .navbar-nav li a:hover {
    color: var(--primary);
}
nav.headerNav {
    padding: 0;
} 
/********Header css Ends ***********/

/********contact css start ***********/
.pageBg {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;    
}
.pageBg:before {
    background-image: linear-gradient(to bottom,var(--primary),transparent);
    position: absolute;
    left: 0;
    opacity: 0.2;
    content: "";
    right: 0;
    bottom: 0;
    top: 0; 
}
.pageBg svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.contactpage.spaceTop{
    padding-top: 84px;
}
.innerpagebanner {
    padding: 80px 0 160px 0;
    position: relative;
}
.inrpgbnrhdng {
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 40px;
    letter-spacing: 1px;
}
.cntctpagemap .searchListingMain {
    padding: 0;
    background-color: transparent;
}

.cntctpagemap .searchListingMain #search-map {
    margin-top: -100px;
    border: 5px solid #fff;
    border-radius: 8px;
}
.cntcinfolisticn {
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 50px;
    border-radius: 50%;
    background: #f5f5f5;
    margin-right: 15px;
    font-size: 20px;
}
.cntcinfolisticn i {
    color: var(--primary);
}
.cntctinfowraper {
    padding: 70px 0;
}
.cntcinfolist {
    margin-bottom: 20px;
}
.cntctfrm .formgrprow {
    justify-content: space-between;
}
.cntctfrm .formgrprow .form-group {
    flex: 0 0 48%;
    max-width: 48%;
}
.cntctfrm .form-group {
    margin-bottom: 25px;
}
.cntctfrm .form-group textarea {
    min-height: 100px;
}
.cntctfrm {
    background: #f7f7f7;
    padding: 20px;
    box-shadow: 2px 3px 12px rgb(0 0 0 / 10%);
}
.cntctfrm .form-group input.form-control, .cntctfrm .form-group textarea, .cntctfrm .form-group select.form-control, .cntctfrm .form-group select.cstmSelect {
    background-color: #fff;
}
.cntctleft h2 {
    text-transform: uppercase;
    font-size: 22px;
    font-weight: bold;
}
.cntctleft p {
    color: #777;
    font-size: 15px;
    max-width: 85%;
    margin-bottom: 40px;
}
.contact-us ul {
    list-style-type: none;
}
.contact-us ul li span {
    font-weight: 700;
}
.contact-us ul li + li {
    margin-top: 10px;
    border-top: 1px solid #ddd;
    padding-top: 10px;
}
.contact-us .timing-tbl {
    border: 1px solid #ddd;
    padding: 20px;
}
.searchResultCount {
    font-size: 14px;
    font-weight: 500;
}
/********contact css Ends ***********/

/********About css Starts ***********/
.aboutCol {
    padding: 120px 0;
}
.aboutcontent {
    padding-left: 30px;
}
.aboutcontent h1 {
    font-size: 30px;
    margin-bottom: 20px;
}
.aboutcontent p, .aboutcontent ul li  {
    font-size: 16px;
    font-weight: 400;
    color: #6d6975;
    line-height: 32px;
    margin: 0;
}
.aboutcontent p + p {
    margin-top: 15px;
}
.aboutbefore {
    position: relative;
}
.aboutbefore:before {
    content: "";
    background: #e1e6ff;
    bottom: 0;
    left: 0;
    top: 0;
    border-radius: 100px;
    position: absolute;
    z-index: -1;
    right: 0px;
}
.aboutimg {
    width: 100%;
    position: relative;
    border-radius: 100px;
    overflow: hidden;
    max-width: 95%; 
}
.aboutimg img {
    object-fit: cover;
    height: 422px;
    border-radius: 100px;
    cursor: pointer;
    width: 100%;
}
/********About css Ends ***********/
/********Main Page css Starts ***********/
#main.home-page {
    margin-top: 0;    
}
.spaceTop {
    padding-top: 74px;
}
.carousel-inner .carousel-item {
    height: 500px;
    background-size: cover;
    background-position: center;
}
#home-banner-search {
    z-index: 12;
    position: relative;
    bottom: 30%;
    left: 0px;
    right: 0px;
    margin: -49px auto 0 10%;
    width: 80%;
    background: rgba(255, 255, 255, 1);
    padding: 30px 0;
    border-radius: 10px;
    box-shadow: 0 24px 44px rgb(199,206,210,0.17);
}
select.cstmSelect {
    border: 0;
    background-color: #f8f8f8;
    height: 50px;
    border-radius: 4px !important;
}
select.cstmSelect:focus {
    box-shadow: none;
}
.searchBtn {
    background: var(--primary);
    color:#fff;
    font-size: 20px;
    border: 0;
    height: 100%;
    min-height: 50px;
    min-width: 60px;
    border-radius: 4px;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.searchBtn:hover {
    background: var(--primaryhover);
}
.searchBtn span {
    display: none;
}
.searchBtn img {
    max-width: 20px;
}
.searchMainCol {
    background: #fff;
}
/********Main Page css Ends ***********/
/********Search Listing css Starts ***********/
.searchListingMain {
    background-color:var(--graycolor);
    padding: 80px 0;
}
.sortBy #search-filter {
    background: transparent;
    margin: 20px auto;
}
.sortBy a i {
    color:var(--primary);
}
.sortBy a + a {
    margin-left: 10px;
}
.searchFilter {
    padding: 40px 0 30px;
    margin-top: 5px;
    background: var(--secondary);
}
.searchFilter #search-banner-form {
    background: transparent;
}
#search-pagination {
    margin-top: 20px;
    margin-bottom: 20px;
}
.property-list-item {
    box-shadow: 0 4px 16px -2px rgb(0 0 0 / 10%), 0 0 0 1px rgb(0 0 0 / 2%);
    background: #fff;
    border: none !important;
    margin-bottom: 20px;
}
.maxWid150 {
max-width: 150px;
}
.maxWid160 {
max-width: 160px;
}
/********Search Listing css Ends ***********/
/********Feature Section css Starts ***********/
.badgeCol {
    position: relative;
}
.status-badge {
    color: #ffffff;
    background-color: var(--primary);
    text-transform: uppercase;
    padding: 4px 15px 4px;
    position: absolute;
    top: 0;
    left: 0;
}
.bedroomCol img {
    max-width: 20px;
}
.featureCard {
    background: #fff;
}
.featureCardDesc {
    padding: 0 20px 20px;
}
.featureSec {
    padding: 150px 0 100px;
    background: var(--graycolor);
}
.featureMain .swiper-button-next, .featureMain .swiper-button-prev {
    width: 40px;
    height: 40px;
    background: var(--primary);
    border-radius: 50%;
    top: -50px;
    right: 0;
    transform: initial;
    margin: 0;
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.featureMain .swiper-button-next:hover , .featureMain .swiper-button-prev:hover {
    background: var(--primaryhover);
}
.featureMain .swiper-button-next:focus , .featureMain .swiper-button-prev:focus {
    outline: none;
}
.featureMain .swiper-button-prev {
    right: 50px;
    left: auto;
}
.featureMain .swiper-button-next:after, .featureMain .swiper-button-prev:after {
    font-size: 18px;
    color: #fff;
}
.featureMain {
    position: relative;
}
.contentCol h3 {
    color: #22252F;
    font-size: 30px;
    line-height: 30px;
    margin-bottom: 20px;
}
.contentCol p {
    color: #858585;
    font-size: 16px;
    line-height: 26px;
    margin-bottom: 56px;
}
.priceCol span {
    font-size: 22px;
    font-weight: 500;
}
.bedroomCol span {
    color: var(--primary);
    margin-left: 5px;
    font-size: 14px;
}
.bedroomCol i {
    color: var(--primary);
    font-size: 18px;    
}
.bedroomCol {
    display: inline-block;
}
.bedroomCol + .bedroomCol {
    margin-left: 10px;
}
.featureCardDesc h3 {
    color: #22252F;
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 7px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.featureCardDesc h4 {
    font-size: 12px;
    line-height: 12px;
    font-style: italic;
}
.featureCardDesc p {
    color: #858585;
    font-size: 14px;
    display: -webkit-box;
    line-height: 22px;
    margin-bottom: 10px;
    -webkit-line-clamp: 2;
    min-height: 45px;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.featureCardImg {
    margin-bottom: 30px;
}
.featureCardImg img {
    object-fit: cover;
    height: 200px;
    width: 100%;    
}
/********Feature Section css Ends ***********/
/********Logo Section css Starts ***********/
.logoColInner {
    height: 116px;
    background: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    box-shadow: 0 0 20px rgb(0,0,0,0.05);
    margin-bottom: 30px;
}
.logoColInner img {
    max-height: 80px;
}
/********Logo Section css Ends ***********/
/********Map style css Starts ***********/
#search-map {
    min-height: 500px;
}
.mapStyle .leaflet-popup .leaflet-popup-content-wrapper {
    border-radius: 6px; 
}   
.mapStyle .leaflet-popup .leaflet-popup-content .map-title {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 600;
    color: #22252f;
}
.mapStyle .leaflet-popup .leaflet-popup-content .map-price {
    color: #858585;
    font-size: 12px;
}
.mapStyle .leaflet-popup .leaflet-popup-content {
    width: 300px !important;
}
.mapStyle .leaflet-popup .leaflet-popup-content img {
    width: 200px;
    height: 100px;
}
.mapStyle .leaflet-popup .leaflet-popup-content .map-address a {
    border-radius: 5px;
    font-weight: 400;
    padding: 2px 15px;
    line-height: 25px;
    font-size: 10px;
    position: relative;
    color: #fff;
    text-decoration: none;
    min-width: initial;
    background: var(--primary);
    display: inline-block;
    margin-top: 10px;
}
/********Map style css Ends ***********/
/********Property Details css Starts ***********/
.propertyDetails {
    background-color: var(--graycolor);
    padding: 40px 0 80px;
}
.propertyDescription {
    display: block;
}
.sideBar {
    background-color: #fff;
    padding: 20px;
    position: sticky;
    top: 90px;
}
.priceCol #property-price {
    font-size: 30px;
    font-weight: 700;
    margin-top: 10px;
}
.propertyInfoCol h1 {
    font-size: 20px;
    margin: 0;
    margin-bottom: 5px;
}
.propertyInfoCol p {
    margin: 0;
    color: #858585; 
}
.breadCrumbMain .breadcrumb {
    justify-content: center;
    margin-bottom: 30px;
}
.sideBar .form-group + .form-group {
    margin-top: 20px;
}
.breadCrumbMain .breadcrumb a {
    text-decoration: none;
    color: var(--primary);
}
label.formLabel {
    font-size: 14px;
    margin-bottom: 5px;
    color: #848484;
}
.propertyInfoCol {
    background: #fff;
    padding: 20px;
}
.propertyDescription {
    display: block;
    background-color: #fff;
    padding: 20px;
}
.propertyDescription nav {
    margin-bottom: 30px;
}
.propertyDescription nav button {
    color: #495057;
}
.propertyInfoRight i {
    color: var(--primary);
}
.propertyInfoRight span {
    font-weight: 500;
    display: block;
    color: #22252F;
    font-size: 14px;
}
.borderCol {
    border-left: 1px solid #e0e0e0;
    border-right: 1px solid #e0e0e0;
}
.propertyInfoRight {
    height: 100%;
    background-color: #fff;
    text-align: center;
    padding: 0 15px;    
}
.propertyInfo {
    margin-bottom: 30px;
}
.bedInfo {
    margin: 0;
}
.propertyDetails .detailSliderImg img {
    height: 450px;
    width: 100%;
    object-fit: cover;
}
/********Property Details css Ends ***********/
/********Footer css ***********/
.footerCol {
    background-color: var(--secondary);
    padding: 80px 0 40px;
    overflow: hidden;   
}
.footerLogo {
    margin-bottom: 12px;
}
.footerLogo img {
    max-width: 180px;
    margin-bottom: 20px;
}
.footerText p {
    font-size: 15px;
    color: #fff;
    line-height: 27px;
}
.footerText p a {
    color: #fff;
}
.footerText {
    max-width: 450px;
    margin-bottom: 50px;
}
.footerNewsletter h3 {
    position: relative;
    font-size: 19px;
    color: #fff;
    padding-left: 30px;
    margin-bottom: 15px;
}
.footerInfo h3 {
    font-size: 30px;
    color: #fff;
    margin-bottom: 15px;
}
.socialIcon i {
    font-size: 22px;
    color: #758487;
}
.footerInfo p {
    font-size: 14px;
    color: #fff;
    margin:0;
}
.footerInfo p + p {
    margin-top: 5px;
    margin-bottom: 0;
}
.footerNewsletter h3:before {
    content: "";
    height: 1px;
    width: 17px;
    position: absolute;
    background: #fff;
    left: 0;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    -moz-transform: translate(0,-50%);
    transform: translate(0,-50%);
}
.newsletterForm input {
    width: 100%;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    padding: 15px 0;
    color: rgba(255,255,255,0.4);
    font-size: 14px;
}

.newsletterForm input::placeholder {
    color: rgba(255,255,255,0.4);
}
.newsletterForm input:focus {
    outline: none;
}
.newsletterForm {
    max-width: 330px;
    position: relative; 
}
.newsletterForm button {
    background: transparent;
    border: 0;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0,-50%);
    -moz-transform: translate(0,-50%);
    transform: translate(0,-50%);
}
.copyRightSec {
    border-top: 1px solid rgba(255,255,255,0.2);
    padding-top: 40px;
    margin-top: 30px;
}
.copyRightSec p {
    margin: 0;
    font-size: 14px;
    color: #797979;
}
.socialIcon ul {
    margin: 0;
    padding: 0;
}
.socialIcon ul li {
    display: inline-block;
}
.socialIcon ul li + li {
    margin-left: 30px;
}
.footerMenu ul li {
    display: inline-block;
}
.footerMenu ul li + li {
    margin-left: 30px;
}
.socialIcon {
    margin-top: 30px;
}
.copyRightSec p a {
    color: inherit;
}
.footerMenu ul {
    margin: 0;
    padding: 0;
}
.footerMenu ul li a {
    font-size: 14px;
    color: #797979;
    text-decoration: none;
}
/********Footer css ***********/
@media (max-width: 1199px) {
    .aboutcontent p {
        font-size: 14px;
        line-height: 26px;
    }
    .aboutimg , .aboutimg img , .aboutbefore:before {
        border-radius: 50px;
    }
    .propertyInfoRight span {
        font-size: 12px;
    }
    .aboutcontent h1 {
        font-size: 26px;
        margin-bottom: 20px;
    }
    .propertyInfoRight {
        padding: 0 10px;
    }
}
@media (max-width: 991px) {
    .copyrightInner {
        text-align: center;
        margin-bottom: 20px;
    }
    .aboutCol {
        padding: 70px 0;
    }
    .featureSec {
        padding: 80px 0;
    }
    .featureCont.contentCol {
        margin-bottom: 40px;
    }
    .searchBtn span, .searchBtn img {
        display: inline-block;
        vertical-align: middle;
    }
    .aboutimg {
        max-width: 100%;
        margin-bottom: 30px;
    }
    .searchBtn img {
        max-width: 15px;
    }
    .searchBtn {
        padding: 0 30px;
    }
    .searchBtn span {
        color: #fff;
    }
    .toggle {
        width: 26px;
        height: 18px;
        position: relative;
        margin-left: auto;
        cursor: pointer;
        display: block;
    }
    .toggle::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        z-index: 9;
    }
    .bar {
        width: 100%;
        height: 2px;
        position: absolute;
        background-color: #000;
        z-index: 1;
        -webkit-transition: all 500ms ease-in-out 0s;
        -o-transition: all 500ms ease-in-out 0s;
        transition: all 500ms ease-in-out 0s;
        top: 7px;
        border-radius: 20px;
    }
    .bar:nth-child(1) {
        top: 0px;
    }
    .bar:nth-child(3) {
        top: 14px;
        width: 60%;
        right: 0;
    }
    .actNav .bar:nth-child(1) {
        transform: rotate(135deg);
        top: 8px;
    }
    .actNav .bar:nth-child(2) {
        transform: translate(-100%, 0);
        opacity: 0;
    }
    .actNav .bar:nth-child(3) {
        transform: rotate(-135deg);
        top: 8px;
        width: 100%;
    }
    .navMain {
        position: fixed;
        left: 0;
        top: 0;
        bottom: 0;
        overflow-y: auto;
        background-color: #000;
        z-index: 99;
        padding: 30px 20px;
        width: 250px;
        -webkit-transform: translateX(-150%);
        -ms-transform: translateX(-150%);
        transform: translateX(-150%);
        -webkit-transition: all 300ms ease-in-out 0s;
        -o-transition: all 300ms ease-in-out 0s;
        transition: all 300ms ease-in-out 0s;
        text-align: left;
        margin-left: 0 !important;
    }
    .headerNavCol a.navbar-brand img {
        /*max-width: 110px;*/
        max-height: 35px;
    }
    #main.home-page {
        padding-top: 75px;
    }
    .headerNavCol {
        padding: 15px 0;
    }
    .navbar ul li a {
        color: #fff;
    }
    .navbar ul li + li {
        margin-left: 0;
        margin-top: 20px;
    }
    .menuBackDrop {
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        background-color: rgba(0, 0, 0, 0.5);
        -webkit-transition: all 800ms ease-in-out 0s;
        -o-transition: all 800ms ease-in-out 0s;
        transition: all 800ms ease-in-out 0s;
        z-index: 9;
    }
    .navRight {
        margin-top: 30px;
    }
    .actNav .navMain {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }
    .actNav .menuBackDrop {
        opacity: 1;
        visibility: visible;
        pointer-events: initial;
    }
}
@media (max-width: 767px) {
    .socialIcon {
        margin-top: 40px;
    }
    .propertyInfoRight {
        padding: 0 10px 30px;
    }
    .aboutcontent {
        padding-left: 0;
    }
    .carousel-inner .carousel-item {
        height: 300px;
    }
    .aboutimg , .aboutimg img {
        border-radius: 50px;
        height: 300px;
    }
    .aboutimg img {
        height: 300px;
    }
    .propertyDetails .detailSliderImg img {
        height: 300px;
    }
    .featureCont.contentCol {
        margin-bottom: 70px;
    }
    .propertyDetailMap  #search-map {
        min-height: 300px;
    }   
    .searchBtn {
        margin: 0 auto;
        display: block;
    }
    .propertyDescription button.nav-link {
        padding: 5px 10px;
    }
    .cntctfrm .formgrprow .form-group {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .cntctfrm .formgrprow {
        flex-wrap: wrap;
    }
    .cntctfrm {
        margin-top: 30px;
    }
}

@media (max-width: 575px) {
    .footerInfo.text-end {
        text-align: left !important;
        margin-top: 0;
    }
    .socialIcon {
        text-align: left !important;
    }
}