
/* @group SHARED STRUCTURES AND STYLES
------------------------------------ */
body { overflow-x: hidden; background: none, var(--dark-beige); }
#wrapper { width: 100%; }
a, button { cursor: pointer;
    -webkit-transition: color 0.27s linear, background 0.27s linear, border-color 0.27s linear, opacity 0.3s linear, visibility 0.3s linear, box-shadow 0.3s linear, -webkit-transform 0.3s linear;
    -moz-transition: color 0.27s linear, background 0.27s linear, border-color 0.27s linear, opacity 0.3s linear, visibility 0.3s linear, box-shadow 0.3s linear, -moz-transform 0.3s linear;
    -ms-transition: color 0.27s linear, background 0.27s linear, border-color 0.27s linear, opacity 0.3s linear, visibility 0.3s linear, box-shadow 0.3s linear, transform 0.3s linear;
    -o-transition: color 0.27s linear, background 0.27s linear, border-color 0.27s linear, opacity 0.3s linear, visibility 0.3s linear, box-shadow 0.3s linear, transform 0.3s linear;
    transition: color 0.27s linear, background 0.27s linear, border-color 0.27s linear, opacity 0.3s linear, visibility 0.3s linear, box-shadow 0.3s linear, transform 0.3s linear;
}
.video-box,
.img-box { overflow: hidden; position: relative; }
.img-box > img { object-fit: cover; object-position: center center; height: 100%; width: 100%!important; }
.img-box video { object-fit: cover; object-position: center center; height: 100%; width: 100%!important; }
@supports(object-fit: cover) {
  .img-box > img { height: 100%!important; }
}
/* @group General Text
----------------------*/
h1 {  }
h2 { font: 700 4.5em / 1em var(--playfair-font); }
h3 { font: 400 1.7em / 1em var(--rubric-font); letter-spacing: .176em; }
h4 { font: 400 2.2em / 1em var(--rubric-font); letter-spacing: .136em; }
p:not(.osano-cm-window__info-dialog *),
li:not(.osano-cm-window__info-dialog *) {
    font: 500 1.6em / 1.3em var(--meta-pro-font);
    letter-spacing: .125em;
}
@media only screen
and (min-width : 961px) {
  h2 { font-size: 8em; }
  h3 { font-size: 2.2em; letter-spacing: .227em; }
  h4 { font-size: 2.5em; letter-spacing: .12em; }
  p:not(.osano-cm-window__info-dialog *),
  li:not(.osano-cm-window__info-dialog *) { font-size: 2em; letter-spacing: .1em; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}

/* @end */

@media only screen
and (min-width : 961px) {
}

/* @group Buttons
------------------------------------ */
.bttn { font: 400 1.6em / 1em var(--rubric-font); letter-spacing: .2em; text-transform: uppercase; color: var(--beige); background: none, var(--dark-green); display: inline-flex; justify-content: center; align-items: center; padding: 0 3.5rem; height: 4.6rem; }
.bttn.outlined {background-color: transparent; border: .1rem solid var(--beige);}
.bttn:hover { background-color: var(--rust); color: var(--beige); }
.bttn.beige:not(:hover) { background: none, var(--beige); color: var(--dark-green); }

.bttn.rust { background: var(--rust); color: var(--beige)}
.bttn.rust:hover { background-color: var(--beige); color: var(--rust); }
@media only screen
and (min-width : 961px) {
  .bttn { font-size: 1.6em; letter-spacing: .1875em; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}
/* @end */


/* @group Splide Arrows
------------------------------------ */
.splide__arrow:not(:disabled),
.splide__arrow:hover:not(:disabled) { opacity: 1; }
.splide__arrow:focus-visible { outline: none!important; }
.splide__arrow { width: 6rem; height: 6rem; display: inline-block; justify-content: center; align-items: center; background: none, var(--rust); color: var(--off-white); font-size: 2rem; border-radius: 0; }
.splide__arrow:hover:not(:disabled) { background: none, var(--rust); color: var(--beige); }
.splide__arrow.beige:not(:hover):not(:disabled) { background: none, var(--off-white); color: var(--rust); }
@media only screen
and (min-width : 961px) {
  .splide__arrow { width: 6.9rem; height: 6.9rem; font-size: 2.2rem; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}
/* @end */


/* @group Form
------------------------------------ */
input[type="text"],
input[type="email"],
input[type="date"],
input[type="url"],
input[type="tel"],
input[type="password"],
input[type="search"],
input[type="file"],
select,
textarea { font: 500 1.6em / 1.3em var(--meta-pro-font); letter-spacing: .125em; color: var(--dark-green); height: 5rem; padding: 1.5rem 0; margin: 0 0 2rem; display: block; width: 100%; border-radius: 0; border-bottom: .2rem solid var(--dark-green); }
textarea { resize: none; overflow: hidden; }
::placeholder { color: var(--dark-green); transition: opacity var(--transition-delay) ease; }
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="file"]:focus,
select:focus,
textarea:focus { border-bottom: .2rem solid var(--dark-green)!important; }
:focus::placeholder { opacity: 0; }
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
	-webkit-text-fill-color: var(--dark-green);
	-webkit-box-shadow: 0 0 0px 1000px transparent inset;
	transition: background-color 5000s ease-in-out 0s;
}
.wpcf7-submit { display: block; border-radius: 0; min-width: 12.8rem; margin-left: auto; padding-top: .3rem; }
.wpcf7-form-control-wrap { display: block; position: relative; width: 100%; }
.wpcf7-not-valid-tip { background-color: var(--error); color: var(--off-white); font: 500 1.4rem / 1.3em var(--meta-pro-font); letter-spacing: .1em; position: absolute; top: 100%; margin-top: .5rem; padding: 0.25rem 0.5rem; border-radius: 0.5rem; }
.wpcf7-not-valid-tip::after { content: ''; display: block; position: absolute; left: .75rem; bottom: 100%; width: 0; height: 0; border-bottom: .5rem solid var(--error); border-top: .5rem solid transparent; border-left: .5rem solid transparent; border-right: .5rem solid transparent; }
.wpcf7 form.invalid .wpcf7-response-output { display: none!important; }
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--success); font: 500 1.6rem / 1.3em var(--meta-pro-font); letter-spacing: .125em; color: var(--dark-green); text-align: center; padding: .75rem 1rem; }
@media only screen
and (min-width : 961px) {
  input[type="text"],
  input[type="email"],
  input[type="date"],
  input[type="url"],
  input[type="tel"],
  input[type="password"],
  input[type="search"],
  input[type="file"],
  select,
  textarea { font-size: 2em; letter-spacing: .1em; height: 5.6rem; padding: 1.5rem 1rem; margin: 0 0 3.5rem; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}
/* @end */


/* @group Internal Footer
------------------------------------ */
.internal-footer { margin-bottom: 3rem; }
.internal-footer .links li { margin-right: 3.8rem; font-size: 1.6em; }
.internal-footer .links li:last-child { margin-right: 0; }
.internal-footer .logos li { margin-left: 2.8rem; font-size: 3em; }
.internal-footer .logos li:first-child { margin-left: 0; }

[data-page="contact"]  .internal-footer { margin-bottom: 0; padding-bottom: 3rem; }
.location-image + .form-mobile + .internal-footer { margin-top: 3rem; }


.internal-footer .links li a,
.internal-footer .logos li a { color: var(--beige); }

[data-page="contact"] .internal-footer .links li a,
.residences-features .internal-footer .links li a,
[data-page="contact"] .internal-footer .logos li a,
.residences-features .internal-footer .logos li a { color: var(--dark-green); }
[data-page="contact"] .internal-footer .logos li path,
.residences-features .internal-footer .logos li path { fill: var(--dark-green); }
@media only screen
and (min-width : 961px) {

  @media (hover: hover) {
    .internal-footer .links li :hover,
    .internal-footer .logos li a:hover { opacity: .8; }
  }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
}
/* @end */


.no-mobile {}

@media only screen
and (min-width : 961px) {
  .mobile { display: none!important; }
}
@media only screen
and (min-width : 961px)
and (max-width : 1440px) {
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
  .no-mobile { display: none!important; }
  /* html { font-size: 7px; } */
}
@media only screen
and (min-width : 0)
and (max-width : 600px) {
  /* html { font-size: 5px; } */
}
/* @end */

/* --- */


/* Animations */
@keyframes fade {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes fadeDown {
  0% { translate: 0 -2rem 0; opacity: 0; }
  100% { translate: 0 0 0; opacity: 1; }
}
@keyframes fadeUp {
  0% { translate: 0 5rem 0; opacity: 0; }
  100% { translate: 0 0 0; opacity: 1; }
}
@keyframes fadeLeft {
  0% { translate: -5rem 0 0; opacity: 0; }
  100% { translate: 0 0 0; opacity: 1; }
}
@keyframes fadeRight {
  0% { translate: 5rem 0 0; opacity: 0; }
  100% { translate: 0 0 0; opacity: 1; }
}

/* Status-scroll */
.status-scroll {
  position: fixed;
  bottom: 0;
  right: 0;
  width: calc(100% - 60.6vh);
  height: 1rem;
  background-color: #B1A498;
  z-index: 9;
  transition: width .7s;
}
.scrolled .status-scroll {
  width: calc(100% - 8rem);
}
.status-scroll .bar-scroll {
  position: absolute;
  top: 0;
  left: 0;
  height: 1rem;
  background-color: var(--rust);
}
@media only screen
and (min-width : 0)
and (max-width : 960px) {
  .status-scroll {
    display: none;
  }
}

.osano-cm-widget {
  display: none;
}
.osano-cm-widget {
  display: none; }

.osano-cm-disclosure__toggle, .osano-cm-expansion-panel__toggle,
.osano-cm-disclosure__toggle:hover,
.osano-cm-link:hover, .osano-cm-link:active,
.osano-cm-link {
  color: #000; }

.osano-cm-disclosure__toggle, .osano-cm-expansion-panel__toggle,
.osano-cm-disclosure__toggle:hover,
.osano-cm-link,
.osano-cm-link:hover,
.osano-cm-link:active {
  color: #000; }

  .today span{
    font-weight: bold!important;
  }
  @media only screen
  and (min-width : 0)
  and (max-width : 960px){
    .pricing-sheet{
      display: none;
    }
  }