@font-face {
    font-family: HelveticaNeue-Light;
    src: url("/assets/fonts/HelveticaNeue-Light.ttf");
}

/* lang switcher*/
.lang_nav {
    display: none;
}

header nav .lang:before {
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.75);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.75);
}

.lang.bg:hover:before,
.lang_bg:hover:before,
.lang.bg:before,
.lang_bg:before {
    content: "";
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAMCAIAAADgcHrrAAAAK3RFWHRDcmVhdGlvbiBUaW1lAHdvIDI4IGRlYyAyMDA1IDEzOjMyOjU5ICswMTAwLV0zMwAAAAd0SU1FB9UMHAwlGzqUwnUAAAAJcEhZcwAACxIAAAsSAdLdfvwAAAAEZ0FNQQAAsY8L/GEFAAAAVElEQVR42p3RQQqAQAiF4d/o/vfqIkGhq2htw1DQUp+4cfGNOlpm0o9FMKOTwty9zSJiMGODG46y2+GSdhO/RGfWvVrAKXTzmev/maJ5WX5FkY0hHw3vINvL3tgKAAAAAElFTkSuQmCC');
    background-position: 0 0;
    background-repeat: no-repeat;
    height: 14px;
    left: 0;
    top: 7px;
    position: absolute;
    width: 22px;
    background-size: 22px 14px;
}

.lang.en:hover:before,
.lang_en:hover:before,
.lang.en:before,
.lang_en:before {
    content: '';
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAMCAIAAADgcHrrAAAAK3RFWHRDcmVhdGlvbiBUaW1lAHphIDMxIGRlYyAyMDA1IDE3OjEzOjA3ICswMTAwvq7DvAAAAAd0SU1FB9UMHxAUBQFPDV4AAAAJcEhZcwAACxIAAAsSAdLdfvwAAAAEZ0FNQQAAsY8L/GEFAAABsElEQVR42mP4X1n5////r1//y8nNYGBohaBly179l5ICIiADLghUcKprw3cLiz9r1zJ90o5gcHXlenTj4cP0oiJ7BoafQPTjxxeG//+BCMQAi+SnGDz0v2d6aQ3HwYNbmJUZGBh6SrMOPEnI+Bge/v/Pn0OHnkpK1nd3H34qJgZEQAaQu6V67mszs/+bNgHdFRMzj4EhlgHsgDo0uatXP0C0XT7xBM1EsJ5QRqAihh8/GB49YkAFTy0sgKT0iRNo4o/u3Xv9/j3jfwYGIELXhBvcYWB4z8DARLR6FECmI1kYGduA4SspybhyZZqtlfin6OjPnILvM2qEWFmBiq79EdfS4mfYvPlNS8tJ1/TUeY+eP7/HwPAD6Mgf2dlWz5412H44+8bK6rCKm+lO8R2H70PM3rbtspRUw2EBY5Fjx2zv7Drt/tLbRQ6oheX06WITPc67AQFPmDgmiQSsaz0AVP3q1cM7f/5AGEDj7ewqQkJMOjq636xdHnVsrqqPNZPho73XLSx2iZsEH+Jat+080CQg+vr147v//9+BEt1HiMiaNUfMzev3/xNjLS8XfnwOAOzh9X0yojgNAAAAAElFTkSuQmCC');
    background-position: 0 0;
    background-repeat: no-repeat;
    height: 14px;
    left: 0;
    top: 7px;
    position: absolute;
    width: 22px;
    background-size: 22px 14px;
}

/* lang switcher*/

/* houses */
#house_map {
    position: relative;
    padding: 0;
}

#house_map #map_container {
    width: 1000px;
    height: 593px;
    margin: 0 auto;
}

#house_map img {
    width: 1000px;
    height: 593px;
    padding: 0;
}

#house_map a {
    width: 100%;
    height: 100%;
    display: block;
}

#house_map a:hover {
    background: rgba(255, 255, 255, 0.4);
}

#house_map .house_box {
    position: absolute;
    width: 70px;
    height: 70px;
    display: block;
}

#house_2 {
    top: 180px;
    left: 103px;
}

#house_3 {
    top: 116px;
    left: 172px;
}

#house_4 {
    top: 50px;
    left: 241px;
}

#house_5 {
    top: 146px;
    left: 341px;
}

#house_6 {
    top: 250px;
    left: 425px;
}

#house_7 {
    top: 315px;
    left: 378px;
}

#house_8 {
    top: 410px;
    left: 289px;
}

#house_9 {
    top: 477px;
    left: 239px;
}

#house_10 {
    top: 573px;
    left: 157px;
}

#house_11 {
    top: 643px;
    left: 98px;
}

#house_12 {
    top: 420px;
    left: 79px;
}

#house_13 {
    top: 351px;
    left: 142px;
}

#house_14 {
    top: 263px;
    left: 243px;
}

/* houses */
.floor_plan {
    width: 100%;
}

.content-holder {
    left: 0;
}

*:not(i) {
    font-family: Montserrat, Arial, Helvetica, sans-serif !important;
}

.three-coulms .gallery-item,
.three-coulms .grid-sizer {
    width: 33.35%;
}

.logo-holder img {
    height: 70px !important;
}

.logo-holder {
    padding-top: 0;
}

.footer-logo img {
    width: 240px;
}

.about-wrap p,
.post p {
    font-size: 15px;
}

.about-wrap p {
    padding-bottom: 10px;
}

.about-wrap p.pb-0 {
    padding-bottom: 0;
}

.nav-holder nav li a {
    font-size: 12px;
}

.text-center {
    text-align: center;
}

#homepage .hero-wrap h2 {
    text-align: center;
}

.bold-title.text-center {
    float: none;
}

#homepage .hero-wrap.price_info {
    top: 52%;
    color: #ffffff;
}

#homepage .hero-wrap #price_info {
    position: relative;
    width: 730px;
    margin: 0 auto;
    height: 56px;
    padding-top: 4px;
    font-family: Montserrat, Arial, Helvetica, sans-serif !important;
    background: rgba(0, 0, 0, 0.5);
}

#homepage .hero-wrap #price_info:before {
    background-image: url("/assets/images/custom/home_slider_1_bracket.png");
    background-size: 60px 56px;
    width: 60px;
    height: 56px;
    content: "";
    position: absolute;
    left: 55px;
    top: 0;
}

#homepage .hero-wrap #price_info:after {
    background-image: url("/assets/images/custom/home_slider_1_bracket.png");
    background-size: 60px 56px;
    width: 60px;
    height: 56px;
    content: "";
    position: absolute;
    right: 60px;
    top: 0;
    transform: rotate(180deg);
}

#homepage .hero-item:before {
    display: none;
}

#homepage .hero-wrap.family_harmony {
    top: unset;
    bottom: 0;
}

#homepage .hero-wrap.learn_more {
    top: unset;
    bottom: 0;
}

#homepage .hero-wrap.learn_more a {
    font-size: 30px;
    font-weight: 300;
    background: #C0FF00;
    line-height: 32px;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px;
    border-radius: 9px;
}

#homepage .hero-wrap.learn_more a:hover {
    padding-left: 30px;
    background: #8fcd00;
}

#homepage .hero-wrap.learn_more h2 {
    float: none;
    margin: 0 auto;
    width: auto;
    min-width: 290px;
}

.hero-wrap.learn_more h2 a {
    color: #000;
}

#homepage section {
    padding: 0;
}

#homepage ul.home_list {
    list-style: disc;
    text-align: left;
    padding-left: 2em;
    line-height: 1.5;
    font-size: 15px;
    padding-bottom: 20px;
    font-weight: 500;
}

#homepage h3.bold-title {
    padding-bottom: 20px;
}

header.main-header {
    padding: 0;
}

#contact_us section.header-section .overlay {
    width: 100%;
}

#contact_us .header-section .bg {
    width: 100%;
}

#contact_us section.parallax-section {
    padding: 300px 0;
}

#contact_us .footer_contacts {
    display: none;
}

.contact-details i,
.footer_contacts i {
    color: #000;
    font-size: 15px;
}

.sub_title {
    font-size: 18px;
}

/* checkbox  */
#checkbox_container {
    position: relative;
    padding-left: 0;
}

.checkbox_container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 18px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-align: left;
    padding-top: 1px;

    clear: both;
}

/* Hide the browser's default checkbox */
.checkbox_container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}

.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
}

/* On mouse-over, add a grey background color */
.checkbox_container:hover input ~ .checkmark {
    background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.checkbox_container input:checked ~ .checkmark {
    background-color: #2196F3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}

/* Show the checkmark when checked */
.checkbox_container input:checked ~ .checkmark:after {
    display: block;
}

/* Style the checkmark/indicator */
.checkbox_container .checkmark:after {
    left: 9px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* checkbox  */

#privacy_link {
    text-decoration: underline;;
    font-size: 18px;
    text-align: left;
    margin-bottom: 12px;
    padding-left: 0;
}

.fw-post h2.text-center {
    text-align: center;
}

.overlay_family_harmony {

}

.slide-progress-warp {
    bottom: -25px;
}

@media only screen and  (min-width: 1175px) {

    /* animated home page slider text */
    #price_info {
        animation: revealText 4s;
        font-size: 22px;
    }

    @keyframes revealText {
        0% {
            clip-path: inset(0px 50% 0px 50%);
            -webkit-clip-path: inset(0px 50% 0px 50%);
        }
        100% {
            clip-path: inset(0px 0px 0px 0px);
            -webkit-clip-path: inset(0px 0px 0px 0px);
        }
    }
}

/* animated home page slider text */
.hero-wrap h2 {
    font-weight: normal;
}

#location_map {
    width: 100%;
    height: 550px;
}

@media only screen and  (max-width: 1175px) {
    .nav-holder {
        height: 215px;
    }
}

@media only screen and (max-width: 665px) {
    .sw-button {
        display: none;
    }

    .logo-holder img {
        height: 55px !important;
        margin-top: 5px;
    }

    .show-share-wrap {
        display: none;
    }

    #location_map {
        height: 300px;
    }

    /*    .sw-button.swiper-button-next,
        .sw-button.swiper-button-prev,
        .swiper-pagination {
            display: none;
        }*/
    #homepage .hero-wrap #price_info {
        width: 345px;
        font-size: 19px;
    }

    #homepage .hero-item {
        padding: 0;
    }

    #homepage .hero-wrap #price_info:after,
    #homepage .hero-wrap #price_info:before {
        display: none;
    }

    #house_map {
        overflow-x: auto;
    }

    .fw-post.single-post h2 {
        font-size: 30px;
    }

    .full-height {
        height: 220px;

    }

    #homepage .hero-wrap.learn_more a {
        font-size: 25px;
    }

    #homepage .hero-wrap.learn_more h2 {
        width: auto;
        line-height: 30px !important;
    }

    #homepage .hero-wrap #price_info {
        height: 75px;
    }
}


/* svg map*/

#svg_map {
    position: relative;
}

#svg_map polygon,
#svg_map path {
    fill: rgba(0, 0, 0, 0);
}

#svg_map .hovered {
    fill: rgba(200, 200, 200, 0.4);
    cursor: pointer;
}

#tooltip {
    position: absolute;
    top: 50px;
    left: 400px;
    display: none;
}

#tooltip {
    border-radius: 10px;
    background: #228B22;
    font-size: 1.5em;
    padding: 0 3px 3px;

}

#tooltip.sold {
    background: #8B0000;
}

#tooltip.reserved {
    background: orange;
}

#tooltip #tooltip_header {
    background: transparent;
    padding: 10px;
    color: #fff;
}

#tooltip #tooltip_content {
    background: #fff;
    padding: 10px;
    color: #000;
    border-radius: 0 0 8px 8px;
}

.house_map {
    padding: 0;
}

/* svg map*/
.text_left {
    text-align: left;
}

#submit.contact_submit {
    background: green;
}

.fw-post h2#house_title span:not(.house_price) {
    width:100%;
    padding: 5px;
    border-radius: 10px;
}

nav li a:hover:before,
nav li a.act-link:before {
    content: '';
    position: absolute;
    top: -5px;
    width: 100%;
    height: 5px;
    background: green;
    left: 0;
}

.green_bottom_border {
    border-bottom: 3px solid green;
}

.slider-wrap .sw-button, .fs-gallery-wrap .sw-button {
    color: #b2b2b2;
    background: none;
}

.fw-post h2#house_title span.house_price{
    float:right;
    font-weight:100;
}
@media only screen and (max-width: 768px) {
    .fw-post h2#house_title span.house_price{
        float:left;
        width:100%;
    }
}
#gallery_holder img{
    max-width:25%;
    float:left;
    cursor:pointer;
}
@media only screen and (max-width: 1024px) {
    #gallery_holder img{
        max-width:50%;
    }
}@media only screen and (max-width: 768px) {
    #gallery_holder img{
        max-width:100%;
    }
}
#overlay{
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background: rgba(0,0,0,0.8) none 50% / contain no-repeat;
  cursor: pointer;
  transition: 0.3s;
  visibility: hidden;
  opacity: 0;
}
#overlay.open {
  visibility: visible;
  opacity: 1;
  z-index:99999999999999;
}

#overlay:after { /* X button icon */
  content: "\2715";
  position: absolute;
  color:#fff;
  top: 10px;
  right:20px;
  font-size: 2em;
}
.faq h4{
    text-align:left;
    font-size: 16px;
}