@charset "utf-8";
/* CSS Document

TruStone Homes | HB-Core Site

/* 1. Defaults*/ :root {
    --main-color: #485562;
    --accent-color: #e25f44;
    --light-color: #e5e7e8;
    --trans-white: rgba(255, 255, 255, 0.7);
    --sans-font: "aileron", sans-serif;
    --serif-font: "gimlet-display", serif;
    --headline-font: "skew-variable", sans-serif;
    --trans-black: rgba(0, 0, 0, 0.6)
}
::selection {
    color: #F2D269;
    background: #61A39D;
}
::-moz-selection {
    color: #F2D269;
    background: #61A39D;
}
body, html {
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
    -webkit-scroll-behavior: smooth;
    -moz-scroll-behavior: smooth;
    scroll-behavior: smooth;
}
html {
    height: 100%;
    min-height: 100%;
    scroll-padding-top: 70px;
}
body {
    background: #FFF;
    color: #000;
    font-family: var(--sans-font);
    font-size: 18px;
    -webkit-font-smoothing: antialiased;
}
p {
    font-size: 16px;
    line-height: 24px;
}
body.ckeditorBody {
    background: #FFFFFF;
}
.group:after {
    visibility: hidden;
    display: block;
    content: "";
    clear: both;
    height: 0;
}
* html .group {
    zoom: 1;
} /* IE6 */
*:first-child + html .group {
    zoom: 1;
} /* IE7 */
img {
    vertical-align: middle;
}
img, div, a, section, p, iframe, label, input, textarea, span, h1, h2, h3, h4, h5, h6, form, ul, ol, li {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
.hidden {
    display: none !important;
    visibility: hidden !important;
}
.yoink {
    display: block;
    position: fixed;
    left: -9999px;
    width: 1px;
    height: 1px;
}
.yoink.skip:hover, .yoink.skip:focus, .yoink.skip:active {
    left: 0;
    top: 0;
    width: 150px;
    height: auto;
    z-index: 1000000;
    padding: 4px;
    background: #2376a9;
    color: #FFF;
    border-bottom-right-radius: 12px;
}
/* END Defaults*/
/* 2. Typography */
.serif {
    font-family: var(--serif-font) !important;
}
.sans {
    font-family: var(--sans-font) !important;
}
h3 {
    font-size: 28px;
}
.listing-heading {
    color: #FFF;
    background: #A99F92;
    font-size: 32px;
    text-align: center;
    padding: 8px;
    margin: 0 auto 0;
}
.big-black-bold {
    text-align: center;
    text-transform: uppercase;
    color: #000;
    font-size: 42px;
}
.thin {
    font-weight: 300;
}
.uppercase {
    text-transform: uppercase;
}
.lowercase {
    text-transform: none !important;
    font-style: normal !important;
}
.align-center {
    text-align: center !important;
}
.align-left {
    text-align: left !important;
}
.spaced {
    letter-spacing: 3px;
}
.big {
    font-size: 2em;
    line-height: unset;
}
.medium {
    font-size: 1.5em;
}
p.medium {
    line-height: 1.3em;
}
.midi {
    font-size: 1.1em;
}
.small {
    font-size: 0.8em;
}
/* END Typography */
/* 3. Colors */
/* 3.1 Color Classes */
.black {
    color: #000 !important;
}
.light-color {
    color: var(--light-color) !important;
}
.light-bg {
    background-color: var(--light-color) !important;
}
.trans-black-bg {
    background-color: var(--trans-black);
}
.white {
    color: #FFF !important;
}
.white-bg {
    background-color: #FFF;
}
.white-trans-bg {
    background-color: rgba(255, 255, 255, 0.75);
}
.main-color, .main-color:visited {
    color: var(--main-color) !important;
}
.main-bg {
    background-color: var(--main-color) !important;
}
.main-trans-bg {
    background-color: var(--main-color-trans);
}
.accent-color {
    color: var(--accent-color) !important;
}
.accent-bg {
    background-color: var(--accent-color) !important;
}
.black-bg {
    background-color: #000;
}
.shadow {
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.6);
}
.box-shadow {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
}
.bottom-border {
    border-bottom: solid 4px var(--main-color);
}
.left-border {
    border-left: solid 4px var(--main-color);
}
/* END Colors */
/* 4. Main Elements */
/* 4.1 Multiple Pages */
.wrapper {
    position: relative;
    width: 100%;
    max-width: 2000px;
    background: #FFFFFF;
    margin: 0 auto;
    padding: 0;
}
.wrapper:before {
    display: block;
    content: '';
    width: 100%;
    height: 230px;
}
.container {
    position: relative;
    max-width: 1200px;
    margin: auto;
}
.nine-sixty, .container.nine-sixty {
    max-width: 960px;
}
.seven-twenty, .container.seven-twenty {
    max-width: 720px;
}
.header-image, .header-image img {
    position: relative;
    width: 100%;
    height: auto;
}
.page {
    position: relative;
    z-index: 1001;
    min-height: 200px;
    background-color: #FFF;
}
.content {
    padding: 16px;
}
.thicc-content {
    padding: 32px 16px;
}
.flex-content {
    padding: 64px 16px;
}
.content-block {
    padding: 32px 0;
}
.thick-margins {
    padding: 30px;
}
.transitional, .call-now, .logo, .mainnav a, .mainnav ul {
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.flex-reverse {
    flex-direction: row-reverse;
}
.flex-start {
    justify-content: flex-start;
}
.flex-center {
    justify-content: center;
}
.flex-end {
    justify-content: flex-end;
}
.flex-top {
    align-items: flex-start;
}
.flex-middle {
    align-items: center;
    align-self: center;
}
.flex-bottom {
    align-items: flex-end;
}
.flex-seventh {
    width: 14.28%;
}
.flex-sixth {
    width: 15%;
}
.flex-fifth {
    width: 20%;
}
.flex-fourth {
    width: 25%;
}
.flex-fourth.buffer {
    width: 24%;
}
.flex-third {
    width: 33.33%;
}
.flex-third.buffer {
    width: 31.5%;
}
.flex-half {
    width: 50%;
}
.flex-half.buffer {
    width: 48%;
}
.flex-two-thirds {
    width: 66.67%;
}
.flex-three-fourths {
    width: 75%;
}
.flex-four-fifths {
    width: 80%;
}
.relative-box, .flex-image, .overlay-content, .listing-thumb, .home-thumb-image-container {
    position: relative;
}
.rb-content {
    position: relative;
    padding: 48px 16px;
    z-index: 2;
}
.no-position {
    position: unset;
}
.flex-img img, .flex-overlap-image img, .overlay {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    object-fit: cover;
    object-position: center;
}
.flex-overlap-image img {
    width: 50%;
}
.flex-overlap-image.left-overlap img {
    left: 0;
    right: auto;
}
.flex-overlap-image.right-overlap img, .right-overlay {
    left: auto;
    right: 0;
}
.overlay {
    z-index: 1;
}
.overlay-content, .contact-container {
    z-index: 3;
}
.bar {
    position: relative;
    z-index: 2;
    margin: 8px auto 0;
    background: #192F56;
    width: 100%;
    max-width: 2000px;
    min-height: 50px;
}
.opacity-filter {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    pointer-events: none;
}
.main-title {
    position: relative;
    display: block;
    margin: 24px auto;
    font-family: var(--sans-font);
    font-size: 88px;
    font-weight: 300;
    text-align: center;
    letter-spacing: 2px;
    color: var(--main-color);
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
}
.main-title strong {
    font-weight: 900;
}
.main-title span, .page-title span {
    display: block;
    font-size: 48px;
    font-weight: 400;
    font-family: var(--serif-font);
    color: var(--secondary-color);
}
.main-title span.sans {
    font-size: 36px;
    font-weight: 700;
    letter-spacing: 6px;
}
h2, .page-title {
    margin: 4px auto;
    color: var(--main-color);
    font-size: 72px;
    font-weight: 900;
    text-align: center;
}
h2 span, .subtitle {
    display: block;
    font-family: var(--serif-font);
    color: #000;
    font-size: 32px;
    font-weight: 400;
}
.white h2 span, h2.white span {
    color: #FFF;
}
h2 i, .page-title i {
    font-style: normal;
}
.page-title {
    margin: 12px auto;
    color: var(--main-color);
    font-family: var(--headline-font);
    font-size: 56px;
    text-align: center;
    letter-spacing: 2px;
}
.page-title.mid {
    font-size: 48px;
    line-height: 64px;
}
h2.page-title, h3.page-title {
    line-height: 48px;
    margin-bottom: 24px;
}
h2.page-title span, h3.page-title span {
    line-height: 40px;
    margin-top: 12px;
}
.page-title span {
    display: block;
    color: #000;
    font-size: 32px;
    font-family: var(--serif-font);
    letter-spacing: 1px;
}
.title-container {
    border-bottom: solid 18px var(--accent-color);
}
.line-title span {
    border-top: solid 2px var(--main-color);
}
.page-title span.small {
    font-size: 28px;
    font-weight: 500;
    font-family: var(--serif-font);
}
.page-title a, .page-title a:visited, .mid-title a, .mid-title a:visited {
    text-decoration: none;
}
.mid-title {
    margin: 24px auto;
    font-size: 48px;
    text-align: center;
}
.mid-title span {
    display: block;
    font-family: var(--sans-font);
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 1px;
    margin-top: 12px;
    color: var(--secondary-color);
}
.overlap-heading {
    margin-top: -80px;
}
.page-image {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    min-height: 720px;
}
.page-image .container {
    position: relative;
    z-index: 2;
}
.page-image.page-video, .page-video {
    position: relative;
    min-height: 740px;
}
.page-image img, .pi-overlay, .page-image video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
.page-image.squat-image {
    min-height: 380px;
}
.page-image img {
    object-fit: cover;
    object-position: center;
    z-index: 1;
}
.pi-overlay {
    background-color: rgba(72, 85, 98, 0.33);
    z-index: 2;
}
.page-image .container {
    position: relative;
    z-index: 3;
}
.page-image video {
    width: 100%;
    max-height: 740px;
    object-fit: cover;
    object-position: center;
}
.page-image .page-title {
    text-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
}
.map:hover .page-title {
    opacity: 0.6;
}
.border-left {
    list-style-type: none;
    padding-left: 24px;
    border-left: solid 4px var(--main-color);
}
.bg-box {
    padding: 36px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.big-bg-box, .bg-box.big-bg-box {
    padding-top: 64px;
    padding-bottom: 64px;
}
.bg-box-content {
    padding: 64px;
    background-color: var(--trans-white);
}
.split-box {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}
.split-box#contact {
    margin: 12px auto;
}
.split-box-content {
    display: flex;
    position: relative;
    align-items: center;
    width: 60%;
    z-index: 3;
    padding: 12px 400px 12px 120px;
    min-height: 700px;
}
.split-box-content > div {
    width: 100%;
}
.split-box.split-box-left {
    justify-content: flex-end;
}
.split-box-left .split-box-content {
    padding: 12px 120px 12px 400px;
}
.split-box-content h2 {
    margin: 0 auto 4px;
}
.split-box-image {
    position: absolute;
    width: 50%;
    height: 100%;
    top: 0;
    bottom: 0;
    z-index: 2;
}
.split-box-right .split-box-image {
    right: 0;
}
.split-box-left .split-box-image {
    left: 0;
}
.split-box-image img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.split-box-right .split-box-content {
    background: linear-gradient(to right, rgba(72, 85, 98, 1) 0%, rgba(72, 85, 98, 1) 90%, rgba(72, 85, 98, 0) 100%);
}
.split-box-left .split-box-content {
    background: linear-gradient(to left, rgba(72, 85, 98, 1) 0%, rgba(72, 85, 98, 1) 90%, rgba(72, 85, 98, 0) 100%);
}
.split-box-pattern {
    position: absolute;
    height: 100%;
    top: 0;
    bottom: 0;
    pointer-events: none;
}
.sbp-right {
    right: -80px;
}
.sbp-left {
    left: -80px;
    transform: rotate(180deg);
}
.arrow-image {
    position: relative;
}
.arrow-image img:first-of-type {
    width: calc(100% - 80px);
    margin-right: 80px;
}
.arrow-image img:last-of-type {
    position: absolute;
    display: block;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto;
    height: 100%;
}
.full-width {
    width: 100%;
    min-width: 100%;
}
.icon-link, .icon-link:visited {
    position: relative;
    display: block;
    color: #000;
    text-align: center;
    text-decoration: none;
    max-width: 240px;
    margin: auto;
}
.icon-link span {
    display: block;
    font-family: var(--serif-font);
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 16px;
}
.icon-link:before, .logo-icon:before, .listing-icon:before {
    position: relative;
    display: block;
    content: "";
    margin: auto;
    background-image: url("../ELEMENTS/IMAGES/icon-spritesheet.png");
    background-position: 0 0;
    background-repeat: no-repeat;
}
.icon-link:before {
    width: 172px;
    height: 172px;
}
.logo-icon:before {
    width: 100px;
    height: 100px;
    background-position: 0 -344px;
}
.icon-link:hover::before {
    background-position: 0 -172px;
}
.listing-icon {
    position: relative;
    padding: 24px 8px 24px 72px;
    font-size: 20px;
    letter-spacing: 1px;
}
.listing-icon i {
    font-style: normal;
}
.listing-icon.icon-gbays[data-content="1"] i {
    display: none;
}
.listing-icon:before {
    position: absolute;
    width: 60px;
    height: 60px;
    top: 0;
    left: 0;
    bottom: 0;
}
.icon-sqft:before {
    background-position: 0 -444px;
}
.icon-beds:before {
    background-position: -60px -444px;
}
.icon-baths:before {
    background-position: 0 -504px;
}
.icon-gbays:before {
    background-position: -60px -504px;
}
.process-widgets .content {}
.process-widgets h3 {
    margin: 4px auto;
    font-size: 44px;
    font-weight: 900;
    text-align: center;
    color: var(--main-color);
}
.process-widgets h3 span {
    display: block;
    font-family: var(--serif-font);
    font-size: 24px;
    font-weight: 400;
    letter-spacing: 1px;
    color: var(--accent-color);
}
.process-widgets p {
    margin-top: 0;
    text-align: center;
}
/* 4.4 Communities */
.spec {
    color: #000;
    font-family: var(--sans-font);
    font-size: 14px;
    text-align: center;
    text-transform: uppercase;
}
.spec span {
    display: block;
    font-size: 22px;
    font-weight: 700;
    text-transform: none;
}
.listing-mini-thumb .spec {
    font-size: 14px;
}
.listing-mini-thumb .spec span {
    font-size: 24px;
}
.fp-data[data-plan=""], .mls-data[data-mls=""] {
    display: none;
}
.com-map {
    width: 100%;
    height: 500px;
}
.model-banner {
    position: absolute;
    top: 0;
    left: 0;
    text-indent: 0;
    color: #FFF;
    padding: 10px;
    background-color: #8FBFB5;
    text-transform: uppercase;
}
.sold-banner[data-status="Sold"] {
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
    text-indent: -9999px;
    overflow: hidden;
    padding: 0;
    width: 50px;
    height: 50px;
}
.hide-field[data-content=""], .hide-field[data-content="0"], .alt-field[data-alternate=""] .alternate, .alt-field span:first-of-type, .alt-field div:first-of-type, .home-thumb-image-container[data-content=""]:after, .single-home[data-status="Sold"] .listing-buttons {
    display: none;
}
i.hide-field {
    font-style: normal;
}
.alt-field[data-alternate=""] > span:first-of-type, .alt-field[data-alternate=""] > div:first-of-type, .listing-title.alt-field span:first-of-type {
    display: block !important;
}
.alternate p {
    display: inline;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    margin: 0;
}
.home-thumb, .fp-thumb {
    position: relative;
}
.home-thumb-content {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 100%;
    height: 100%;
    z-index: 2;
}
.home-thumb-content {
    height: auto;
}
.home-thumb-image {
    position: relative;
    display: block;
    width: 100%;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
    height: 220px;
    background-color: #FFF;
    object-fit: cover;
    object-position: center;
    z-index: 1;
}
.fit-top, .home-thumb-image.fit-top, .single-home .photo-item img {
    object-position: top center !important;
}
.home-thumb-image-container, .single-home .listing-image-container {
    display: block;
}
.home-thumb-image-container:after, .single-home .listing-image-container:after {
    display: block;
    content: attr(data-status);
    position: absolute;
    top: 0;
    left: 0;
    margin: auto;
    width: auto;
    max-width: 100%;
    padding: 8px;
    color: #FFF;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    background-color: var(--main-color);
    z-index: 2;
}
.listing-thumb {
    margin-bottom: 36px;
    border: solid 2px var(--accent-color);
}
.listing-thumb h3 {
    width: 100%;
    font-size: 32px;
    font-weight: 900;
    text-align: center;
    padding: 0 0 8px;
    margin: 0 auto 12px;
    color: var(--main-color);
}
.listing-thumb h3 span {
    display: block;
    font-family: var(--serif-font);
    font-size: 18px;
    font-weight: 400;
    color: var(--accent-color);
}
.thumb-stats {
    margin: 12px auto;
}
.thumb-stats .content {
    padding: 8px;
    text-align: center;
}
.thumb-stats div:nth-child(odd) {
    border-right: solid 1px var(--accent-color);
}
.thumb-stats div:nth-child(even) {
    border-left: solid 1px var(--accent-color);
}
.thumb-stats div:nth-child(3), .thumb-stats div:nth-child(4) {
    border-top: solid 2px var(--accent-color);
}
.thumb-price span {
    display: none !important;
}
.thumb-price[data-status="Sold"] span {
    display: inline !important;
    font-size: 32px;
}
.community-thumb {
    position: relative;
    margin-bottom: 48px;
}
.community-thumb .page-title {
    font-size: 36px;
    margin: 0 auto;
}
.community-thumb .content {
    padding: 8px 32px 8px;
}
.community-thumb .thumb-stats {
    position: relative;
    border-top: solid 2px var(--main-color);
    border-bottom: solid 2px var(--main-color);
}
.community-thumb .thumb-stats:before {
    position: absolute;
    display: block;
    content: "";
    width: 2px;
    height: 100%;
    left: 0;
    right: 0;
    margin: auto;
    background-color: var(--main-color);
}
.listing-thumb h3.com-title {
    border: none;
}
.community-thumb .thumb-stats div, .listing-contact-icon {
    padding: 8px 4px;
    font-size: 16px;
    text-align: center;
    text-transform: uppercase;
}
.community-thumb .thumb-stats span, .listing-contact-icon span {
    display: block;
    font-size: 20px;
    font-weight: 700;
}
.com-thumb-logo {
    position: relative;
}
.com-thumb-logo img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.listing-icon {}
.caption {
    position: absolute;
    display: block;
    width: 100%;
    padding: 8px;
    left: 0;
    right: 0;
    bottom: 0;
    color: #FFF;
    text-align: center;
}
.thumb-container .caption {
    display: none !important;
}
.neighborhood-map {
    height: 400px;
}
.overlay-link, .overlay-link:visited {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.overlay-link, .overlay-link:visited {
    text-indent: -9999px;
    z-index: 3;
}
.com-thumb-photo, .com-thumb-logo {
    display: block;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    margin: auto;
}
.com-thumb-photo {
    background-size: cover;
    padding-top: 56.66%;
    height: 0;
}
.com-thumb-logo {
    width: 100%;
    height: 240px;
    background-size: contain;
}
.page-gallery {
    width: 72%;
    max-width: 700px;
    margin: auto;
}
.page-gallery img {
    max-height: 600px !important;
    width: auto !important;
    max-width: 100%;
    margin: auto;
}
/* 4.5 Other Pages */
.intro-bullets {
    max-width: 320px;
    margin: auto;
    text-align: left;
}
.hollow-bullets {
    list-style-type: circle;
}
.testimonial {
    margin-bottom: 24px;
    padding: 12px;
    background: #EEE;
}
.testimonial span {
    display: block;
    font-weight: 600;
}
.contact-container {
    position: relative;
}
.embedded-map {
    position: absolute;
    width: 50%;
    height: 100%;
    top: 0;
    left: 0;
    bottom: 0;
}
.float-image {
    width: 100%;
    max-width: 300px;
}
.float-image.float-left {
    float: left;
    margin-right: 20px;
}
.float-image.float-right {
    float: right;
    margin-left: 20px;
}
.team-member {
    width: 33.33%;
    float: left;
    text-align: center;
    margin: 24px auto;
}
.team-member img {
    width: 100%;
    max-width: 200px;
}
.team-name {
    font-size: 20px;
    margin: 6px auto;
}
.team-contact a {
    display: inline-block;
    width: 40px;
    height: 40px;
    text-indent: -9999px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-size: 40px;
    background-image: url("../ELEMENTS/IMAGES/social-sprite-dark.png");
    border-radius: 8px;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}
.team-contact .facebook {}
.team-contact .instagram {
    background-position: 0 -80px;
}
.team-contact .linkedin {
    background-position: 0 -120px;
}
.team-contact .email {
    background-position: 0 -360px;
}
.team-contact a:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    transform: scale(1.05);
    background-color: #FFF;
}
.portfolio-gallery {
    list-style-type: none;
    padding: 0;
}
.portfolio-gallery li {
    display: inline-block;
    width: 22%;
    margin: 12px;
}
.portfolio-gallery img {
    width: 100%;
}
.portfolio-title {
    font-size: 60px;
}
.portfolio-video[data-video=""] {
    display: none !important;
}
.portfolio-thumb, .portfolio-gallery li, .portfolio-thumb span {
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}
.portfolio-thumb {
    position: relative;
    display: inline-block;
    width: 360px;
    margin: 12px;
    height: 240px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.portfolio-thumb span {
    position: absolute;
    display: block;
    bottom: 0;
    left: 0;
    width: 100%;
    color: #FFF;
    padding: 12px;
    background-color: rgba(17, 23, 39, 0.50);
    text-transform: uppercase;
    letter-spacing: 2px;
}
.portfolio-thumb:hover, .portfolio-gallery li:hover {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    transform: scale(1.05);
}
.portfolio-thumb:hover span {
    background-color: rgba(17, 23, 39, 1.0);
}
.portfolio-thumb:active, .portfolio-gallery li:active {
    -webkit-transform: scale(0.95);
    -moz-transform: scale(0.95);
    transform: scale(0.95);
}
.two-col {
    list-style-type: none;
    column-count: 2;
    padding: 0;
    margin: 0 auto;
    max-width: 640px;
}
.two-col li {
    padding: 8px;
}
.widget {
    text-align: center;
    margin: 12px 0;
    padding: 12px;
}
.widget.icon-contact {
    margin: 48px auto;
    max-width: 300px;
}
.widget h3 {
    font-size: 24px;
    margin: 0 auto;
}
.widget p {
    font-size: 16px;
    line-height: 18px;
}
.contact-container {
    position: relative;
    z-index: 12;
}
#contact-toggle {
    position: fixed;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
#contact-drawer iframe {
    width: 100%;
    min-height: 380px;
}
#contact-drawer, .contact-toggle-label {
    background-color: var(--secondary-color);
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
}
#contact-drawer {
    position: fixed;
    width: 300px;
    right: -300px;
    bottom: 10%;
    z-index: 10000;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
#contact-toggle:checked ~ #contact-drawer {
    right: 0;
}
.contact-toggle-label {
    position: absolute;
    top: 40%;
    left: -64px;
    width: 64px;
    height: 64px;
    right: 0;
    padding: 12px;
    background-color: var(--secondary-color);
    color: #FFF;
    overflow: hidden;
    text-indent: -9999px;
    cursor: pointer;
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAACACAYAAAC7gW9qAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAxhJREFUeNrsnI2RojAYhgOzBViC1wEdrFZwlhA70ArWrUA7YDu4uwq8DrgO1g6WDtjk9psbj0kQ8vMB4X1mGEbR5HtfyX9QCAAAAAAAAAAAACyNzDeBpmkKdVqNFH+dZdkf9lyV6I06fjTTQcey4RJfNtOlXLJ4JxOyAeKlOtkSv9HByZoOE3tVN7yF/vXfO1z/oMqQqxgWlKeN9xgZ9kEyiJc9YyliZlp11AdyBPElxRQnDpXYqZX46UGleI4g/txV6dlifETu1YvKsr06vRouHUI2SZTWwXDplWJwJvcNTgWgnTYFIamDsvIQvtJp6LQsNf3JN/48xC9ETY42oW5d2qnj6mICfedKafzX/Q3ZzOWhblMKaGswoSAT1gPEr0l8YRC/DdnG5yErKhqY2Eyo+jRN9JmqQ3zQwU9QA+5M+KaOdqAruhOKB+KvhtHl3zRjjPyCG0Am1HQnmEyoTG00vVdZxG8pzeA8RZtoUAErUdqEs6EWL6mc/6bXeij7YkhGl/VjLPFRDbi7E/ZKrDCY8GIR/U+8bxs/WhGwdJiOA75y5BDPZgCZcLH0FUxt/IUrrifBiG6/VXH4ScXhe+vyL7rta86YWA24qxcudIxOLhYODOj5uVvr9fMEtTw/iNlrPF5EnXKaQ3yGSdEPtsWI7rg2hgnS3pOiIabFa0Ofnwvbslz4aXEyIbmFkdRMKDnLXRKLo1geBwAAAAAAAAAAAAAAAAAAAACAJeC8OkxPdEjxtTJ8i7Ijozt/nfdafO1Q4d1gSc/yVKNsThDGTRqVz7NJLgEcxtqh0bFD5eCSnutGSZvbMqYJlLYcGFOc8se9V6fH3iQpmCuhkssEzrwmF9hkxXMEOHnxMQOdjfgYAc9OfMjAZys+hIDZi/cRkox4F0HJiR8iLFnxA0xIV7ynCWmIdzQhLfEDTWAVv/gHJ1EEUAmiGURHCF1hDIYwHMaECKbEMCk6IfGzMWHRCyOLXhpTGe4muDi64xwOd/1DS5R/gaM03xxjCm5AzSm+pwnYIuNkqo8JYqmbpAAAAAAAAABg7nwKMAC5tSJHWPcuOAAAAABJRU5ErkJggg==");
    background-repeat: no-repeat;
    background-position: top center;
}
#contact-toggle:checked ~ #contact-drawer .contact-toggle-label {
    background-position: bottom center;
}
.home-mini, .home-thumb.home-mini {
    width: 31%;
    margin: 1%;
    border: solid 2px var(--main-color);
    padding: 0;
}
.home-mini .button, .home-mini .button:visited {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    left: auto !important;
    right: auto !important;
    border-color: none !important;
}
.home-mini-image, .home-mini-image:visited {
    display: block;
    position: relative;
    width: 100%;
    height: 240px;
}
.home-mini .listing-thumb-title {
    font-size: 16px;
}
.home-mini-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
    object-position: center;
    border: none !important;
}
.home-thumb-image.com-thumb-image {
    background-size: contain;
}
.home-mini .listing-thumb-title {
    text-align: center;
    margin: 8px auto;
}
.grid-block {
    text-align: center;
    border-top: solid 2px var(--main-color);
    margin: 0;
}
.grid-block span {
    display: block;
    width: 50%;
    float: left;
    padding: 12px 6px;
    font-size: 26px;
}
.grid-block.three-across span {
    width: 33.33%;
}
.grid-block.full-width span {
    width: 100%;
    border-right: none !important;
    border-bottom: solid 2px var(--main-color);
}
.grid-block span:last-child {
    border-left: solid 2px var(--main-color);
}
.grid-block:last-child span {
    border-left: none;
    border-bottom: none;
}
.home-mini .grid-block, .home-mini .grid-block span {
    border-color: #192F56 !important;
}
.home-mini .grid-block span {
    font-size: 14px;
}
.status-banner {
    position: absolute;
    display: none;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    text-indent: -9999px;
}
/*.status-banner[data-status="Sold"] {
	display: block;
	background-image: url("../ELEMENTS/IMAGES/sold-banner.png");
}
.status-banner[data-status="Reserved"] {
	display: block;
	background-image: url("../ELEMENTS/IMAGES/reserved-banner.png");
}*/
@media (min-width:968px) {
    .overflow-content {
        position: relative;
        margin-right: -300px;
        z-index: 20;
    }
}
.process-step {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 250px;
    margin-bottom: 88px;
}
.process-step:before, .process-step:after {
    position: absolute;
    display: block;
    height: 42px;
    content: "";
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.process-step:after {
    width: calc(100% - 96px);
    border-left: solid 4px var(--secondary-color);
    border-bottom: solid 4px var(--secondary-color);
    left: 48px;
    bottom: -42px;
}
.process-step:before {
    border-left: solid 4px var(--secondary-color);
    bottom: -84px;
    right: 48px;
}
.process-step:nth-of-type(even)::before {
    left: 48px;
}
.process-step:nth-of-type(even)::after {
    border-left: 0;
    border-right: solid 4px var(--secondary-color);
}
.process-step:nth-of-type(even) {
    flex-direction: row-reverse;
}
.process-step:last-child::before, .process-step:last-child::after {
    display: none;
}
.ps-content {
    position: relative;
    padding: 32px 32px 32px 124px;
    width: 85%;
    z-index: 2;
}
.process-step:nth-of-type(even) .ps-content {
    padding: 32px 124px 32px 32px;
}
.ps-content > h3 {
    color: var(--main-color);
    font-family: var(--sans-font);
    font-weight: 500;
    margin: 0 auto 4px;
}
.ps-content p {
    line-height: 22px;
}
.ps-content .icon {
    display: block;
    position: absolute;
    width: 100px;
    height: 120px;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}
.ps-content .icon h3 {
    text-align: center;
    margin: 0;
}
.ps-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 300px;
    height: 250px;
    z-index: 1;
}
.process-step:nth-of-type(even) .ps-content .icon {
    left: auto;
    right: 0;
}
.process-step:nth-of-type(even) .ps-image {
    left: 0;
    right: auto;
}
.ps-image img {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    object-fit: cover;
    object-position: center;
    background-color: #444;
}
.process-step:nth-of-type(even) .ps-image {}
.com-intro {
    position: relative;
}
.com-intro p {
    font-family: var(--big-font);
    letter-spacing: 1px;
}
.com-intro .flex-half:first-of-type {
    padding: 120px 12px 48px;
}
.com-intro .flex-half:last-of-type {
    min-height: 520px;
}
.com-intro-image {
    object-fit: cover;
    object-position: center;
    z-index: 1;
}
.com-intro-image, .com-intro-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
.com-intro-overlay {
    width: 50%;
    right: auto;
    background-color: var(--secondary-color);
    z-index: 2;
    opacity: 0.7;
}
.com-intro-content {
    position: relative;
    color: #FFF;
    font-size: 16px;
    z-index: 3;
}
.collage {
    padding: 8px 0;
}
.collage-item {
    position: relative;
    display: block;
    height: 300px;
}
.collage-item img {
    display: block;
    position: absolute;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    top: 8px;
    left: 8px;
    object-fit: cover;
    object-position: center;
}
.texture-bg {
    background-image: url("/ELEMENTS/IMAGES/texture-bg-large.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
/* END Main Elements */
/* 5. Header and Footer Elements */
.header {
    width: 100%;
    margin: auto;
    z-index: 1002;
    position: fixed;
    top: 0;
    left: 0;
    transition: all ease-in-out 0.2s;
    -webkit-transition: all ease-in-out 0.2s;
    -moz-transition: all ease-in-out 0.2s;
    background-color: none;
}
.header .container {
    position: relative;
}
.header nav {
    width: 100%;
}
.top-bar a, .top-bar a:visited {
    font-weight: 700;
    text-decoration: none;
}
.main-bar {
    background-color: #FFF;
}
.mainnav {
    position: relative;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    list-style-type: none;
    text-align: center;
}
.mainnav a, .mainnav a:visited {
    font-family: var(--serif-font);
    font-weight: 400;
    color: #FFF;
    text-decoration: none;
    text-transform: none;
}
.contact-button a, .contact-button a:visited {
    border: solid 4px var(--accent-color);
    padding: 4px 12px !important;
    margin: 8px 0 !important;
}
.mainnav ul a:hover {
    opacity: 0.7;
}
.mainnav > li, .mainnav a, .mainnav a:visited, .mainnav span {
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}
.mainnav > li > a, .mainnav > li > a:visited {
    display: block;
    width: 100%;
    margin-top: 4px;
    padding: 12px;
    font-size: 20px;
    color: var(--main-color);
}
.mainnav > li > a span, .mainnav > li > a:visited span {
    display: block;
    font-family: var(--serif-font);
    font-weight: 500;
    text-transform: none;
    line-height: 16px;
    color: #000;
}
.mainnav a {
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.mainnav > li.active > a, .mainnav > li > a:hover {
    color: #FFF !important;
    background-color: var(--main-color) !important;
}
.mainnav > li.active > a span, .mainnav > li > a:hover span {
    color: #FFF !important;
}
.mainnav > li.contact-button a:hover, .mainnav > li.contact-button.active a {
    color: #FFF !important;
    background-color: var(--accent-color) !important;
}
.mainnav ul {
    position: absolute;
    visibility: hidden;
    opacity: 0.0;
    top: -300px;
    right: 0;
    width: 300px;
    z-index: 1000;
    list-style-type: none;
    margin: 0;
    padding: 6px;
    min-width: 160px;
    font-family: var(--serif-font);
    text-align: right;
    background-color: var(--main-color);
}
.mainnav li.active a {
    color: var(--main-color);
    background: #FFF;
}
.dropdown {
    position: relative;
}
.mainnav > li ul {
    pointer-events: none;
}
.mainnav > li.active ul {
    top: 100%;
    visibility: visible;
    opacity: 1.0;
    pointer-events: all;
}
.mainnav ul a {
    display: block;
    padding: 8px;
    color: #FFF;
}
.mainnav ul a:hover {
    opacity: 1;
    background-color: var(--main-color);
    color: #FFF;
}
#nav-hide, #nav-hide:visited {
    clear: left;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    padding: 10px 0;
    font-size: 20px;
    color: #000;
    border-top: solid 3px #000;
}
.logo {
    position: relative;
    display: block;
    width: 100%;
    max-width: 160px;
    text-align: center;
    margin: auto auto 16px;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
    background-color: none;
    overflow: hidden;
}
.logo img {
    width: 100%;
}
.logo:hover {}
.header.scrolled {
    background-color: var(--dark-secondary-color);
}
.header.scrolled:hover {
    opacity: 1.0;
}
.header.scrolled .mainnav:before {
    display: none;
}
.header.scrolled .mainnav > li > a, .header.scrolled .mainnav > li > a:visited {
    padding: 8px 12px;
    margin-top: 8px;
    font-size: 18px;
}
.header.scrolled .top-bar {
    margin-top: -55px;
}
.header.scrolled .logo {
    position: absolute;
    width: 20%;
    max-width: 140px;
    top: 0;
    left: 0;
    padding: 8px 4px 4px;
    background-color: var(--main-color);
    z-index: 10;
}
.header.scrolled .mainnav {
    width: 80% !important;
    min-width: 80% !important;
    margin-left: 20%;
}
.footer {
    position: relative;
    z-index: 5;
    color: #FFF;
    background-color: var(--main-color);
    font-family: var(--serif-font);
    text-align: center;
    padding: 8px;
}
.footer-nav {
    list-style-type: none;
    padding: 0;
    margin: 0 auto;
}
.footer-nav a, .footer-nav a:visited {
    display: block;
    padding: 12px;
    font-size: 24px;
    color: var(--main-color);
    text-decoration: none;
}
.footer a:hover {
    opacity: 0.8;
}
.footer-info {
    font-size: 16px;
}
.footer-logo {
    max-width: 300px;
    padding: 12px;
    border-radius: 5px;
}
.footer-contact {
    text-align: left;
}
.footer-contact img {
    width: 100%;
    max-width: 250px;
    display: block;
    text-align: center;
    margin: auto;
}
.footer-contact ul {
    list-style-type: none;
    padding: 0;
    margin: auto;
}
.social-media {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.social-media li a {
    display: block;
    background-repeat: no-repeat;
    background-color: transparent;
    background-image: url(../ELEMENTS/IMAGES/social-sprite.png);
}
.social-media li a {
    width: 28px;
    height: 28px;
    text-indent: -9999px;
    overflow: hidden;
    margin-right: 8px;
}
.facebook a {
    background-position: 0 -28px;
}
.twitter a {
    background-position: 0 -56px;
}
.pinterest a {
    background-position: 0 -84px;
}
.youtube a {
    background-position: 0 -112px;
}
.google a {
    background-position: 0 -140px;
}
.linkedin a {
    background-position: 0 -168px;
}
.tiktok a {
    background-position: 0 -196px;
}
.call-now, .call-now:visited {
    position: relative;
    display: flex;
    justify-content: space-between;
    color: #FFF;
    margin-left: 12px;
    text-decoration: none;
    padding: 2px 0;
    font-size: 16px;
    width: 100%;
}
.call-now span, .call-now strong {
    display: block;
}
.call-person.call-now, .call-person.call-now:visited {
    padding: 4px 0 4px 48px;
}
.call-person:before {
    display: block;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    bottom: 0;
    width: 36px;
    height: 100%;
    background-image: url("../ELEMENTS/IMAGES/ask-questions.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.top-bar {
    position: relative;
    padding: 0 12px;
}
/* END Header and Footer Elements */
/* 6. Buttons and Links */
.popup-form input[type=text], .popup-form input[type=email], .popup-form textarea, .contact-form input[type=text], .contact-form input[type=email], .contact-form input[type=number], .contact-form select, .contact-form textarea {
    background: var(--light-color);
    ;
    padding: 4px;
    color: #000;
    width: 100%;
    margin-bottom: 8px;
    font-family: var(--sans-font);
    font-size: 14px;
    border: solid 3px var(--accent-color);
}
.form-field, .form-field.requiredDiv {
    padding: 0 8px !important;
}
.requiredDiv span.reqLBL {
    width: calc(100% - 8px) !important;
}
.cannotBeEmpty span.reqLBL::before {
    content: "Required" !important;
    width: auto !important;
    height: auto !important;
    padding: 2px;
    border-radius: 0 !important;
}
.popup-form input[type=text]:focus, .popup-form input[type=email]:focus, .popup-form textarea:focus, .contact-form input[type=text]:focus, .contact-form input[type=email]:focus, .contact-form input[type=number]:focus, .contact-form select:focus, .contact-form textarea:focus {
    border: solid 3px var(--light-color);
}
.contact-form .cannotBeEmpty input[type="text"], .contact-form .cannotBeEmpty input[type="email"], .contact-form .cannotBeEmpty input[type="number"], .contact-form .cannotBeEmpty textarea {
    border: solid 3px #FF2B00 !important;
}
.contact-form input, .contact-form textarea, .contact-form select {
    margin-bottom: 12px;
}
.contact-form textarea {
    min-height: 120px;
}
.contact-form {
    width: 100%;
}
.contact-form label {
    font-weight: normal;
    font-size: 18px;
}
select {
    padding: 6px 30px 6px 6px;
    text-transform: uppercase;
    font-family: var(--sans-font);
    border: solid 2px #C0BFBF;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    max-width: 200px;
    height: 50px;
    font-size: 16px;
    line-height: 1.75;
    color: #000;
    background-color: #FFF;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAUCAYAAACaq43EAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpENjExQzk1RjREODgxMUU4Qjc2QUY5QTUzMzk0NTVDMCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpENjExQzk2MDREODgxMUU4Qjc2QUY5QTUzMzk0NTVDMCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ2MTFDOTVENEQ4ODExRThCNzZBRjlBNTMzOTQ1NUMwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ2MTFDOTVFNEQ4ODExRThCNzZBRjlBNTMzOTQ1NUMwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+xTCGrAAAAONJREFUeNpi/P//P8NAACaGAQKjFtMNsICIgwcOhEL57+0dHPaQaxjQHCUgZQzl7gGa9Z6Qj0EaVgHxbqDmNDItBVl4BmqOCz5LQYARlp2AGsuBVAfI10DsCtR4lkSfgiwVBOJZQL3pRMcxUHEnkKqAat4N9QExlgpCfUm0pRiJi1TLoZbuhsYr0ZZiTdVQyzsJWU6JpTizE9AQkK9n4bIczdKz0FCiTj6G+gDDciyWuhJKwXhTNZ54nAmkQFnsHhCHAfFMSi0lymI0y2GAIkuJthitdCNYKlHV4tHaachaDBBgAFQTdpHxdZKfAAAAAElFTkSuQmCC);
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 20px;
    -ms-word-break: normal;
    word-break: normal;
}
textarea {
    resize: none;
}
::-webkit-input-placeholder {
    color: #000;
}
:-moz-placeholder {
    color: #000;
}
::-moz-placeholder {
    color: #000;
}
:-ms-input-placeholder {
    color: #000;
}
.button, .button:visited {
    position: relative;
    display: table;
    margin: auto;
    padding: 12px 36px 12px 16px;
    color: #FFF;
    background-color: var(--main-color);
    font-family: var(--sans-font);
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.button:after {
    position: absolute;
    display: block;
    content: "";
    width: 16px;
    height: 28px;
    top: 0;
    right: 8px;
    bottom: 0;
    margin: auto;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAA4CAYAAAD0DHg6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAa5JREFUeNq0VcGRgzAMNFSQAu6RErgO4HF/6IB0kFRwpAKuA9KB878H6YB0kDzuTzrg5BnfDQFJyCOiGU8mY2mtXa9F9FN+WGNMbuaRvZ2+L2YhYlg7WHdkzwL4ZhEATnl4kGm4YivpwPhWj8h+Cl1UHEA0/gPJrStC8t7hkCvZwSgKWI8QPZ4AvB4FkreF1Ug6+NPjC8nNoYs9q8FEjw5+kiU9YkZgkR4kAJxyJ/zh9KglHTiQM6FHCV2UrAYjLVy7LaKHo5ctAniQxINMvXCNjTLUFCQdfBJ+ODg/RAun58STPkHxjr1GKKb871x4kPjAIqq72PlHRwPA6TXHm70FhvcZigv2Ofsrw3hT72JGgeJdjHmjAH54YvPwSM3Dfw2gOPVum8YFijN2rHvemGjUfJxRaEJ5P8UwDHbAIxU9R0jcwLohAL3bk4KkRBeteDBAckWAVCEgLQGShOjRIwC3NfSwIVRqAmQfAtJp9diuoUdOdNGsoUcZcrUdYXWxHgmhR6f+Nr6egkpE1TUyRupERlJZWfWYGN729QNFNdJUQ1U11hnevZS36tP2K8AACRtc0w1gwQAAAAAASUVORK5CYII=);
    background-repeat: no-repeat;
}
.accent-bg.button:after {
    background-position: bottom center;
}
.align-left .button, .align-left .button:visited, .flex-end .button, .flex-end .button:visited {
    margin: 0;
}
.button:hover {
    -webkit-transform: translateX(-3px);
    -moz-transform: translateX(-3px);
    transform: translateX(-3px);
    opacity: 0.8;
}
.button:active {
    -webkit-transform: translateX(3px);
    -moz-transform: translateX(3px);
    transform: translateX(3px);
}
.floating-button, .button.floating-button {
    position: fixed;
    padding: 8px 12px;
    font-size: 16px;
    right: 0;
    bottom: 0;
    z-index: 1001;
}
.SEARCHER {
    display: inline !important;
}
.button:hover {
    opacity: 0.7;
}
.button:active {
    -ms-transform: scale(1.1, 1.1); /* IE 9 */
    -webkit-transform: scale(1.1, 1.1); /* Safari */
    transform: scale(1.1, 1.1); /* Standard syntax */
}
.page-menu {
    display: table;
    list-style-type: none;
    padding: 0;
    padding-bottom: 16px;
    margin: auto auto 16px;
    text-align: center;
    border-bottom: #3F568A solid 3px;
}
.page-menu li {
    display: inline-block;
    margin: 4px 8px;
}
#SEARCH {
    margin: 12px auto;
}
.rule, .contact-form .rule {
    display: block;
    border-bottom: #4E8071 double 6px;
    float: none;
    margin: auto;
    width: 100%;
}
.community-nav {
    max-width: 720px;
    padding: 0;
    margin: 12px auto;
    list-style-type: none;
    text-align: center;
}
.toggle {
    display: inline-block;
    text-transform: uppercase;
    cursor: pointer;
    font-size: 0.9em;
    font-weight: 600;
    padding: 3px;
    margin: 4px 8px;
    border-bottom: solid 3px rgba(255, 255, 255, 0.00);
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.toggle:hover {
    border-bottom: solid 3px #A5A5A5;
}
.toggle.current, .toggle:active {
    border-bottom: solid 3px #2376A9;
}
.THUMBS {
    min-height: 380px;
}
a, a:visited {
    color: var(--accent-color);
}
.footer a, .footer a:visited {
    color: #FFF;
}
/* END Buttons and Links */
/* 7. Responsiveness */
.mobile {
    display: none !important;
    visibility: hidden;
}
.hide-overflow {
    overflow: hidden;
}
@media (max-width: 1536px) {
    .page-image.page-video, .page-video {
        min-height: 600px;
    }
}
@media (max-width: 1150px) {
    .mainnav li a {
        font-size: 0.9em;
    }
    .page-image.page-video, .page-video {
        min-height: 480px;
    }
}
.hidenav-label {
    display: none;
}
@media (max-width: 768px) {
    .wrapper:before, .community-thumb .thumb-stats::before, .split-box-pattern {
        display: none !important;
    }
    .page-image {
        min-height: 400px;
    }
    h2, .page-title {
        font-size: 48px;
    }
    h2 span, .subtitle b {
        font-size: 24px;
    }
    .left-border, .right-border {
        border-left: none;
        border-right: none;
    }
    .split-box-content {
        width: 100%;
        padding: 24px !important;
        background-color: var(--main-color) !important;
    }
    .split-box-image {
        position: relative;
        width: 100%;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        height: 200px;
    }
    .header-image {
        margin-bottom: auto !important;
    }
    .page-image.page-video, .page-video {
        min-height: 300px;
    }
    .nojs .mainnav li:hover ul {
        display: block;
    }
    .social-media .flex-half, .social-media .flex-fourth {
        width: 50% !important;
    }
    .call-now {
        padding-top: 12px;
        padding-bottom: 12px;
    }
    .call-now br {
        display: none;
    }
    .spec {
        width: 50%;
        margin: 12px 0;
    }
    .listing-thumb-content {
        padding-bottom: 24px;
    }
    .contact-toggle-label {
        top: 70%;
    }
    .header {
        background-color: var(--secondary-color);
    }
    .embedded-map, .flex-half, .flex-third, .flex-fourth, .flex-three-fourths, .flex-two-thirds, .flex-fifth, .flex-four-fifths, .blogArticle.blogRoll, .m-full-width {
        width: 100% !important;
        max-width: 100% !important;
    }
    .call-now, .call-now:visited {
        padding: 4px 0;
        justify-content: center;
        margin: 4px 0;
    }
    .call-now span {
        margin-left: 12px;
    }
    .top-bar > .flex-end {
        justify-content: center !important;
    }
    .bg-box, .bg-box-content {
        padding: 0 12px;
    }
    .big-bg-box, .bg-box-content {
        padding-bottom: 64px;
    }
    .flex-overlap-image, .flex-overlap-image img {
        position: relative;
        width: 100%;
        height: auto;
        top: auto;
        left: auto;
        bottom: auto;
    }
    .overlay {
        width: 100%;
        z-index: 1;
    }
    .overlap-heading {
        margin-top: auto;
    }
    .overlap-heading h1 {
        color: #111727;
    }
    .home-mini-thumb {
        margin-bottom: 24px;
    }
    .embedded-map {
        height: 300px;
    }
    .page-image {
        padding: 0;
    }
    .page-title span {
        font-size: 20px;
        line-height: 28px;
    }
    .mainnav {
        display: none;
        border-top: solid 2px var(--main-color);
        border-bottom: solid 2px var(--main-color);
    }
    .filters select {
        width: 100%;
        max-width: 100%;
    }
    .main-title {
        font-size: 36px;
    }
    .main-title span {
        font-size: 24px;
    }
    .header nav, .half-bg {
        width: 100%;
    }
    .hidenav-label {
        position: relative;
        display: block;
        margin: 12px auto;
        text-align: center;
        font-weight: 700;
        color: var(--main-color);
        font-size: 24px;
        padding-bottom: 12px;
        cursor: pointer;
    }
    #hidenav:checked ~ .mainnav {
        display: block;
    }
    .burger {
        position: relative;
        width: 30px;
        height: 10px;
        margin-right: 12px;
        overflow: visible;
        display: inline-block;
    }
    .burger span, .burger span:before, .burger span:after {
        cursor: pointer;
        border-radius: 1px;
        height: 3px;
        width: 30px;
        background: var(--main-color);
        position: absolute;
        display: block;
        content: '';
        -moz-transition: all 0.2s;
        -webkit-transition: all 0.2s;
        transition: all 0.2s;
    }
    .burger span:before {
        top: -10px;
    }
    .burger span:after {
        bottom: -10px;
    }
    #hidenav:checked ~ label .burger span {
        background-color: transparent;
    }
    #hidenav:checked ~ label .burger span:before, #hidenav:checked ~ label .burger span:after {
        top: 0;
    }
    #hidenav:checked ~ label .burger span:before {
        transform: rotate(45deg);
    }
    #hidenav:checked ~ label .burger span:after {
        transform: rotate(-45deg);
    }
    .button {
        margin: 12px auto !important;
    }
    .mainnav {
        color: #F2D269;
    }
    .mainnav ul {
        width: 100%;
    }
    .mainnav .dropdown a span:after {
        position: relative;
        display: inline;
        content: " ⮞";
    }
    .mainnav .dropdown.active a span:after {
        content: " ⮟";
    }
    .title-box-title, .page-title {
        font-size: 36px;
    }
    .com-thumb-logo {
        border: solid 6px transparent
    }
    .home-thumb-image, .home-thumb-details {
        width: 100%;
        position: relative;
    }
    .page-title {
        position: relative;
    }
    .social-media ul {
        margin-top: 12px;
        text-align: center;
    }
    .call-now {
        text-align: center;
        float: none;
        margin: auto;
    }
    .floorplan-thumb {
        margin-bottom: 16px;
    }
    .community-map {
        height: 150px;
    }
    .mobile {
        display: block !important;
        visibility: visible;
    }
    .block {
        display: block;
    }
    .content {
        padding: 4px 15px;
    }
    .thin-content {
        padding: 4px;
    }
    .listing-icon.content {
        padding: 16px 16px 16px 68px;
    }
    .overflow {
        margin-bottom: 0px !important;
    }
    .page-title {
        text-align: center;
    }
    .logo {
        position: relative;
        margin: 12px auto;
        width: 100%;
        max-width: 200px;
    }
    .logo img {
        position: relative;
        width: 100%;
        max-width: 100%;
    }
    .cta .button, .cta .button:visited {
        position: relative !important;
        margin-top: 24px !important;
        bottom: auto !important;
    }
    .social-media {
        position: relative;
    }
    .click-to-call {
        width: 100%;
        float: none;
        text-align: center;
        margin: auto;
    }
    .welcome .page-title span:last-child {
        margin-left: auto;
    }
    .no-header {
        padding-top: 0;
        margin: 8px auto 0;
    }
    .button-row .button {
        width: 100%;
        margin: 4px auto;
        padding: 6px 0;
    }
    .header {
        position: relative;
        top: auto;
        left: auto;
        right: auto;
    }
    .mainnav {
        position: relative;
        width: 100%;
    }
    .mainnav > li {
        display: block;
        margin: auto;
        margin-right: 0;
        width: 100%;
        border-left: none;
    }
    .mainnav .submenu > a:after {
        margin-left: 10px;
        display: inline-block;
        content: '';
        width: 0;
        height: 0;
        border-top: 5px solid #FFF;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
    }
    .mainnav li > a {
        padding: 8px;
        text-align: center;
    }
    .mainnav ul {
        position: relative;
        top: 0;
        visibility: visible;
        display: none;
        border-left: none;
    }
    .mainnav li.active ul {
        display: block;
    }
    .button.overlap-button, .button.overlap-button:visited {
        position: relative;
        bottom: auto;
    }
    .footernav li:after {
        margin: auto 6px;
    }
    .box-label {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
        top: auto;
        right: auto;
        left: auto;
        bottom: auto;
        clear: both;
        text-align: center;
    }
    .sidebar .box img, .sidebar .box span, .sidebar .box h3, .sidebar .box p, .community-thumb, .one-third, .white-quad div {
        width: 100%;
        float: none;
        text-decoration: none;
        padding: 0;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .white-quad div {
        border: none !important;
    }
    .white-quad:first-child {
        border-bottom: none;
    }
    .sidebar .box span {
        padding: 8px;
    }
    .listing .button {
        padding: 12px 0;
        font-size: 1.2em;
    }
    .community-thumb .description {
        border-right: none !important;
    }
    table td {
        display: block;
    }
    .popup-form table td {
        display: table-cell;
    }
}
/* END Responsiveness */
/* 8. Plugins */
/* Blog */
.blog-first-image {
    display: block;
    text-align: center;
}
.blog-first-image img {
    width: 100%;
}
.blogArticle.blogRoll {
    width: 31%;
    margin-bottom: 24px;
}
.blogArticle.blogSingle {
    width: 100%;
}
.blogArticle.blogRoll img {
    height: 180px;
    object-fit: cover;
    object-position: center;
}
.blogArticle.blogRoll .blog-title {
    font-size: 20px;
    font-weight: 400;
}
.blogArticle.blogRoll .article-body p {
    font-size: 14px;
    line-height: 16px;
}
.blog-title a, .blog-title a:visited {
    text-decoration: none;
}
.blogReadMore a, .blogReadMore a:visited {
    display: block;
    margin-top: 8px;
    font-size: 20px;
    color: var(--main-color);
    text-decoration: none;
}
.article-meta {
    font-size: 14px;
    color: #A7A7A7;
}
.blog-roll {
    max-height: 300px;
    overflow-y: scroll;
}
.blog-roll ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.blogRecent a, .blogRecent a:visited {
    display: block;
    padding: 8px;
    color: #FFF;
    background-color: var(--main-color);
    margin-bottom: 12px;
    text-decoration: none;
    font-size: 16px;
}
/* Responsive YouTube */
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin-bottom: 24px;
}
.video-container iframe, .video-container object, .video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* END Responsive YouTube */
/* END Plugins */
.nojs .mainnav > li:hover ul {
    top: 100%;
    visibility: visible;
}
.ie {
    display: none;
}
iframe[name="google_conversion_frame"] {
    height: 1px;
    width: 1px;
    position: absolute;
    left: -9999px;
    overflow: hidden;
}
.apple-only, #Safari .apple-no {
    display: none !important;
} /*#Safari .apple-only{display: inline-block !important;} */
.disclaimer {
    font-size: 12px;
}
a[href=""] {
    display: none !important;
}
#your-mother {
    width: 1000px;
    overflow: visible;
}