body {
  min-height: 100vh;
  min-height: -webkit-fill-available;
}
html {
  height: -webkit-fill-available;
}
:root {
  --breakpoint-mobile-small: 480px;
}
:root {
  --breakpoint-mobile: 768px;
}
:root {
  --breakpoint-tablet: 998px;
}
:root {
  --breakpoint-laptop: 1200px;
}
:root {
  --breakpoint-desktop: 1920px;
}
line.always {
  display: block;
}
@media screen and (max-width: 768px) {
  line {
    display: block;
  }
}
br-mobile-small-down {
  display: inline;
}
@media screen and (max-width: 480px) {
  br-mobile-small-down {
    display: block;
  }
}
br-mobile-small-up {
  display: inline;
}
@media screen and (min-width: 479px) {
  br-mobile-small-up {
    display: block;
  }
}
br-mobile-down {
  display: inline;
}
@media screen and (max-width: 768px) {
  br-mobile-down {
    display: block;
  }
}
br-mobile-up {
  display: inline;
}
@media screen and (min-width: 767px) {
  br-mobile-up {
    display: block;
  }
}
/* Converts XD font-spacing to browser */
/* 
 *  Text Styles
 *  [style] [variant] [weight] [size/line-height] family
 */
:root {
  --floorplan-headline: clamp(1.725rem, 1.55rem + 0.0036458333 * 100vw, 2.25rem) var(--font-headline);
  --floorplan-subhead: clamp(1.35rem, 1.275rem + 0.0015625 * 100vw, 1.575rem) var(--font-headline);
}
/*  
 *  Hero Text Styles
 */
/*  
 *  SubHero Text Styles
 */
header nav.oxy-nav-menu {
  --menu-font-default: "Mansory";
  --menu-color-default: var(--color-black);
  font-family: var(--menu-font-default);
}
header nav.oxy-nav-menu a {
  font-size: 1.95rem;
  font-family: inherit;
}
header nav.oxy-nav-menu.oxy-nav-menu-open {
  height: 100vh;
  background-color: var(--color-cream);
  overflow-y: scroll;
  opacity: 1;
}
header nav.oxy-nav-menu .oxy-menu-toggle .oxy-menu-nav-hamburger {
  height: 26px;
}
header nav.oxy-nav-menu .oxy-menu-toggle .oxy-nav-menu-hamburger {
  height: 30px !important;
}
header nav.oxy-nav-menu .oxy-menu-toggle .oxy-nav-menu-hamburger-line {
  height: 3px !important;
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-contact a:hover {
  --link-color: var(--color-brand-blue);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-gallery a:hover {
  --link-color: var(--color-brand-yellow);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-location a:hover {
  --link-color: var(--color-brand-orange);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-residences a:hover {
  --link-color: var(--color-brand-green);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-lifestyle a:hover {
  --link-color: var(--color-brand-pink);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-team a:hover {
  --link-color: var(--color-light-grey);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.page-link-contact a:hover {
  --link-color: var(--color-brand-blue);
  color: var(--link-color);
  text-decoration-color: var(--link-color);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item a {
  white-space: nowrap;
  color: var(--menu-color-default);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item a:hover {
  text-decoration: underline;
  text-underline-offset: 8px;
}
.menu-primary-container .oxy-nav-menu-list > .menu-item.current-menu-item a {
  color: var(--color-page);
}
.menu-primary-container .oxy-nav-menu-list > .menu-item .sub-menu {
  width: 100%;
  margin-top: -20px;
  background-color: var(--color-cream);
}
@media screen and (max-width: 998px) {
  .menu-primary-container .oxy-nav-menu-list > .menu-item .sub-menu {
    background-color: transparent;
    overflow-y: scroll;
  }
}
.menu-primary-container .oxy-nav-menu-list > .menu-item .sub-menu > .menu-item > a {
  color: var(--color-dark-grey);
  font-size: 1.5em;
  padding-left: 25px !important;
}
.menu-primary-container .oxy-nav-menu-list > .menu-item .sub-menu > .menu-item:not(:last-child) > a {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.menu-primary-container .oxy-nav-menu-list > .menu-item .sub-menu > .menu-item:last-child > a {
  padding-top: 10px !important;
}
body {
  background-color: var(--color-cream);
}
body header {
  color: var(--color-dark-grey);
  z-index: 100;
  height: var(--header-height);
}
body header.ct-section > .ct-section-inner-wrap {
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
  background-color: var(--color-cream);
  width: 100vw;
  margin-left: calc(0px - var(--page-bumper));
  position: fixed;
  padding: 0 var(--page-bumper);
  top: var(--admin-bar-height);
  height: var(--header-height);
}
body header.ct-section > .ct-section-inner-wrap .ct-new-columns {
  height: 100%;
  align-items: center;
}
body header.ct-section > .ct-section-inner-wrap .ct-new-columns .identity {
  justify-content: center;
}
body header.ct-section > .ct-section-inner-wrap .ct-new-columns .identity #Logo {
  color: var(--color-page);
  fill: currentColor;
}
body header.ct-section > .ct-section-inner-wrap .ct-new-columns .navigation {
  align-items: flex-end;
}
body header.ct-section > .ct-section-inner-wrap .ct-new-columns .navigation .menu {
  font-family: "Mansory";
}
body footer {
  background-color: var(--color-cream);
  padding-bottom: clamp(6.5rem, 3rem + 0.0729166667 * 100vw, 17rem);
}
body footer .body, body footer .menu-item {
  font-family: var(--font-body);
  font-weight: 300;
  font-size: clamp(1.6rem, 1.5rem + 0.0020833333 * 100vw, 1.9rem);
  line-height: 1.7em;
  color: var(--color-black);
  text-align: center;
  font-weight: 300;
}
body footer .columns {
  border: 1px solid var(--color-black);
  border-width: 1px 0px;
  padding: 50px 0;
  margin-bottom: 50px;
}
body footer .columns .navigation {
  font-weight: 300;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  body footer .columns .navigation {
    row-gap: 3rem;
    align-items: center;
    order: 2;
    margin-top: 3rem;
    justify-content: center;
  }
}
body footer .columns .navigation .oxy-nav-menu-list {
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  body footer .columns .navigation .oxy-nav-menu-list {
    justify-content: center;
  }
}
body footer .columns .navigation .oxy-nav-menu-list .menu-item {
  flex-basis: 45%;
  min-width: 30%;
  font-family: var(--font-body);
}
@media screen and (max-width: 768px) {
  body footer .columns .navigation .oxy-nav-menu-list .menu-item {
    flex-basis: 20%;
  }
  body footer .columns .navigation .oxy-nav-menu-list .menu-item a {
    justify-content: center;
  }
}
body footer .columns .navigation nav a:not(.icon) {
  color: var(--color-black);
}
body footer .columns .navigation .block + .block {
  margin-top: 1em;
}
body footer .columns .navigation > :last-child {
  margin-bottom: -13px;
}
body footer .columns .identity {
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 768px) {
  body footer .columns .identity {
    order: 1;
  }
}
body footer .columns .identity .logo {
  max-width: clamp(15rem, 12.8333333333rem + 0.0451388889 * 100vw, 21.5rem);
}
body footer .columns .identity .headline {
  font-family: "Mansory";
  text-align: center;
  font-size: clamp(2rem, 1rem + 0.0208333333 * 100vw, 5rem);
  color: var(--color-brand-blue);
  text-transform: uppercase;
}
body footer a {
  color: var(--color-black);
}
body footer a:hover {
  color: var(--color-brand-blue);
}
body footer .meta {
  font-weight: 300;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  body footer .meta {
    order: 3;
    margin-top: 3rem;
    align-items: center;
  }
  body footer .meta .body {
    width: 100%;
    text-align: center;
  }
}
body footer .meta .aligner {
  height: 100%;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  body footer .meta .aligner .contact {
    width: 100%;
  }
}
body footer .meta .aligner .address .body {
  text-align: left;
  display: flex;
  column-gap: 0.5em;
}
@media screen and (max-width: 768px) {
  body footer .meta .aligner .address .body {
    text-align: center;
  }
}
body footer .meta .headline {
  font-size: clamp(1.7rem, 1.4666666667rem + 0.0048611111 * 100vw, 2.4rem);
}
body footer .meta .social {
  margin-top: 2em;
  display: flex;
  flex-direction: row;
  margin-left: -5px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  body footer .meta .social {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
  }
  body footer .meta .social .eho-logo {
    flex-basis: 100%;
  }
}
body footer .meta .social .eho-logo {
  max-width: 35px;
  margin-left: 5px;
}
body footer .meta .social .icon + .icon {
  margin-left: 30px;
}
body footer .management {
  align-self: center;
  display: flex;
  flex-direction: row;
  column-gap: 40px;
}
@media screen and (max-width: 768px) {
  body footer .management .body {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  body footer .management {
    flex-direction: column;
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  body footer .navigation .block {
    width: 100%;
    text-align: center;
  }
  body footer .navigation .block .body {
    width: 100%;
  }
  body footer .navigation .block + .block {
    justify-content: center;
  }
}
