html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

a {
  background-color: #0000;
}

a:active, a:hover {
  outline: 0;
}

h1 {
  margin: .67em 0;
  font-size: 2em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, html input[type="button"], input[type="reset"] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

input[type="search"] {
  -webkit-appearance: none;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
}

@font-face {
  font-family: webflow-icons;
  src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format("truetype");
  font-weight: normal;
  font-style: normal;
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  color: #333;
  background-color: #fff;
  min-height: 100%;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

img {
  vertical-align: middle;
  max-width: 100%;
  display: inline-block;
}

html.w-mod-touch * {
  background-attachment: scroll !important;
}

.w-inline-block {
  max-width: 100%;
  display: inline-block;
}

input.w-button {
  -webkit-appearance: button;
}

html[data-w-dynpage] [data-w-cloak] {
  color: #0000 !important;
}

h1, h2, h3, h4, h5, h6 {
  margin-bottom: 10px;
  font-weight: bold;
}

h1 {
  margin-top: 20px;
  font-size: 38px;
  line-height: 44px;
}

h2 {
  margin-top: 20px;
  font-size: 32px;
  line-height: 36px;
}

h3 {
  margin-top: 20px;
  font-size: 24px;
  line-height: 30px;
}

h4 {
  margin-top: 10px;
  font-size: 18px;
  line-height: 24px;
}

h5 {
  margin-top: 10px;
  font-size: 14px;
  line-height: 20px;
}

h6 {
  margin-top: 10px;
  font-size: 12px;
  line-height: 18px;
}

p {
  margin-top: 0;
  margin-bottom: 10px;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

button, [type="button"], [type="reset"] {
  cursor: pointer;
  -webkit-appearance: button;
  border: 0;
}

label {
  margin-bottom: 5px;
  font-weight: bold;
  display: block;
}

textarea.w-input, textarea.w-select {
  height: auto;
}

@media screen and (max-width: 991px) {
  .w-container {
    max-width: 728px;
  }

  .w-hidden-main {
    display: inherit !important;
  }

  .w-hidden-medium {
    display: none !important;
  }

  .w-col-medium-1 {
    width: 8.33333%;
  }

  .w-col-medium-2 {
    width: 16.6667%;
  }

  .w-col-medium-3 {
    width: 25%;
  }

  .w-col-medium-4 {
    width: 33.3333%;
  }

  .w-col-medium-5 {
    width: 41.6667%;
  }

  .w-col-medium-6 {
    width: 50%;
  }

  .w-col-medium-7 {
    width: 58.3333%;
  }

  .w-col-medium-8 {
    width: 66.6667%;
  }

  .w-col-medium-9 {
    width: 75%;
  }

  .w-col-medium-10 {
    width: 83.3333%;
  }

  .w-col-medium-11 {
    width: 91.6667%;
  }

  .w-col-medium-12 {
    width: 100%;
  }

  .w-col-stack {
    width: 100%;
    left: auto;
    right: auto;
  }
}

@media screen and (max-width: 767px) {
  .w-hidden-main, .w-hidden-medium {
    display: inherit !important;
  }

  .w-hidden-small {
    display: none !important;
  }

  .w-row, .w-container .w-row {
    margin-left: 0;
    margin-right: 0;
  }

  .w-col {
    width: 100%;
    left: auto;
    right: auto;
  }

  .w-col-small-1 {
    width: 8.33333%;
  }

  .w-col-small-2 {
    width: 16.6667%;
  }

  .w-col-small-3 {
    width: 25%;
  }

  .w-col-small-4 {
    width: 33.3333%;
  }

  .w-col-small-5 {
    width: 41.6667%;
  }

  .w-col-small-6 {
    width: 50%;
  }

  .w-col-small-7 {
    width: 58.3333%;
  }

  .w-col-small-8 {
    width: 66.6667%;
  }

  .w-col-small-9 {
    width: 75%;
  }

  .w-col-small-10 {
    width: 83.3333%;
  }

  .w-col-small-11 {
    width: 91.6667%;
  }

  .w-col-small-12 {
    width: 100%;
  }
}

@media screen and (max-width: 479px) {
  .w-container {
    max-width: none;
  }

  .w-hidden-main, .w-hidden-medium, .w-hidden-small {
    display: inherit !important;
  }

  .w-hidden-tiny {
    display: none !important;
  }

  .w-col {
    width: 100%;
  }

  .w-col-tiny-1 {
    width: 8.33333%;
  }

  .w-col-tiny-2 {
    width: 16.6667%;
  }

  .w-col-tiny-3 {
    width: 25%;
  }

  .w-col-tiny-4 {
    width: 33.3333%;
  }

  .w-col-tiny-5 {
    width: 41.6667%;
  }

  .w-col-tiny-6 {
    width: 50%;
  }

  .w-col-tiny-7 {
    width: 58.3333%;
  }

  .w-col-tiny-8 {
    width: 66.6667%;
  }

  .w-col-tiny-9 {
    width: 75%;
  }

  .w-col-tiny-10 {
    width: 83.3333%;
  }

  .w-col-tiny-11 {
    width: 91.6667%;
  }

  .w-col-tiny-12 {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .w-nav-brand {
    padding-left: 10px;
  }
}

@media (min-width: 768px) {
  .w-lightbox-content {
    height: 96vh;
    margin-top: 2vh;
  }

  .w-lightbox-view, .w-lightbox-view:before {
    height: 96vh;
  }

  .w-lightbox-group, .w-lightbox-group .w-lightbox-view, .w-lightbox-group .w-lightbox-view:before {
    height: 84vh;
  }

  .w-lightbox-image {
    max-width: 96vw;
    max-height: 96vh;
  }

  .w-lightbox-group .w-lightbox-image {
    max-width: 82.3vw;
    max-height: 84vh;
  }

  .w-lightbox-left, .w-lightbox-right {
    opacity: .5;
    display: block;
  }

  .w-lightbox-close {
    opacity: .8;
  }

  .w-lightbox-control:hover {
    opacity: 1;
  }
}

@media screen and (max-width: 991px) {
  .w-nav[data-collapse="medium"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="medium"] .w-nav-button {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .w-nav[data-collapse="small"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="small"] .w-nav-button {
    display: block;
  }

  .w-nav-brand {
    padding-left: 10px;
  }
}

@media screen and (max-width: 479px) {
  .w-nav[data-collapse="tiny"] .w-nav-menu {
    display: none;
  }

  .w-nav[data-collapse="tiny"] .w-nav-button {
    display: block;
  }
}

@media screen and (max-width: 479px) {
  .w-tab-link {
    display: block;
  }
}

@keyframes spin {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

@font-face {
  font-family: Ivy Mode;
  src: url("../fonts/667e75c223decea09d158d23_ivy-mode-4.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Ivy Mode;
  src: url("../fonts/667e75c212540d9d2ebd221f_ivy-mode-9.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Ivy Mode;
  src: url("../fonts/667e75c2adaed84078e6de40_ivy-mode-6.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Ivy Mode;
  src: url("../fonts/667e75c2a825f914e77a8224_ivy-mode-7.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Silverline Script;
  src: url("../fonts/673da386d8b283f247671412_silverline-script-demo.regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 38px;
  font-weight: bold;
  line-height: 44px;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: bold;
  line-height: 36px;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: bold;
  line-height: 30px;
}

h4 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 24px;
}

h5 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
}

h6 {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: bold;
  line-height: 18px;
}

p {
  margin-bottom: 10px;
}

a {
  text-decoration: underline;
}

ul, ol {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

.image-inner.parallax {
  height: 115%;
  top: -15%;
}

.image-inner.parallax.faded-60 {
  opacity: .6;
}

.image-inner.large-parallax.is-winter {
  display: none;
}

.image-inner.is-sixth.is-winter, .image-inner.is-sixth.is-summer {
  z-index: 1;
}

.button {
  z-index: 3;
  background-color: #fff;
  flex: none;
  padding: 1.1vw 2vw;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  border-radius: 30px;
}

.button.is-beige {
  background-color: var(--beige);
}

.button.is-outline {
  background-color: #0000;
  border: 1px solid #fff;
}

.button.inside-slide {
  opacity: 0;
  margin-top: 32px;
}

.button.is-crimson {
  background-color: var(--crimson);
  color: var(--beige);
  border: 1px #000;
}

.text-style-label {
  z-index: 1;
  color: var(--white);
  text-transform: uppercase;
  font-family: Lato, sans-serif;
  font-size: .85vw;
  font-weight: 400;
  line-height: 100%;
  position: relative;
}

.text-style-label.text-align-right {
  text-align: right;
}

.text-style-label.text-align-right.no-srink {
  flex: none;
}

.text-style-label.text-align-right.no-srink.dark-initial {
  color: var(--black);
}

.text-style-label.is-link {
  text-decoration: none;
  transition: all .3s;
}

.text-style-label.is-link:hover {
  color: var(--crimson);
}

.text-style-label.text-color-dark {
  color: var(--black);
}

.text-style-label.text-color-red {
  color: var(--crimson);
}

.text-style-label.no-break {
  white-space: nowrap;
}

.text-style-label.text-align-center.inside-slide {
  opacity: 0;
}

.heading-style-h2.text-align-center {
  text-align: center;
}

.heading-style-h2.text-align-center.font-weight-extralight {
  font-weight: 200;
}

.button-txt {
  z-index: 1;
  color: #000000;
  letter-spacing: .05vw;
  text-transform: uppercase;
  font-family: Lato, sans-serif;
  font-size: .8vw;
  font-weight: 400;
  line-height: 100%;
  position: relative;
}

.button-txt.text-color-white {
  color: var(--white);
}

.button-hover {
  z-index: 0;
  border-radius: var(--radius-500);
  background-color: var(--black);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: auto 0% -100%;
}

.body, .body.creme {
  background-color: var(--creme);
}

.body.cold {
  background-color: #ebeff6;
}

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

.heading-style-h3.text-align-center {
  text-align: center;
}

.heading-style-h1.text-color-dark.text-align-center {
  text-align: center;
}

.heading-style-h5.text-align-center {
  text-align: center;
}

.red-background.flipped {
  inset: auto 10vw 5vw auto;
}

.slider-titles_component {
  width: 100vw;
  height: 100%;
  position: relative;
  overflow: hidden;
}

.slider-gallery_button {
  color: #fff;
  flex: none;
  justify-content: center;
  align-items: center;
  width: auto;
  height: auto;
  display: flex;
}

.slider-gallery_button:hover {
  color: #000;
}

/* Progressive arrow reveal animation */
.slider-gallery_button svg g[opacity="0.3"] {
  transition: opacity 0.3s ease;
}

.slider-gallery_button svg g[opacity="0.3"] path {
  /* Path length and offset are set dynamically by JavaScript */
  /* Fallback values - approximate path length based on the arrow */
  stroke-dasharray: 450;
  stroke-dashoffset: 427.5;
  /* Smooth transition for the reveal animation */
  transition: stroke-dashoffset 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.slider-gallery_button:hover svg g[opacity="0.3"] {
  opacity: 1 !important;
}

.slider-gallery_button:hover svg g[opacity="0.3"] path {
  /* Reveal 100% of the path on hover - following the path progressively */
  stroke-dashoffset: 0 !important;
}

.slider-gallery_button.swiper-prev {
  z-index: 10;
  padding-top: 8.5vw;
  position: absolute;
  inset: 0% auto 0% 23vw;
}

.slider-gallery_button.swiper-next {
  z-index: 10;
  padding-top: 8.5vw;
  position: absolute;
  inset: 0% 23vw 0% auto;
}

.slider-titles_heading {
/*   opacity: .5; */
  color:#fff;
/*   letter-spacing: -.04em; */
  white-space: nowrap;
  cursor: default;
  margin-bottom: 0;
  font-family:"GT Super Ds Trial", Sans-serif;
  font-size: 106px;
  font-weight: 300;
}

.slider-gallery_component {
  background-color: #000;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
}

.slider-thumbs_wrapper {
  width: 25%;
}

.slider-bg_component {
  opacity: .8;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.slider-thumbs_height {
  padding-top: 62%;
  position: relative;
}

.swiper-slide.is-slider-titles {
  grid-column-gap: 1.5vw;
  grid-row-gap: 1.5vw;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 100%;
  padding: 15vw 4% 4%;
  transition: opacity .2s;
  display: flex;
  position: relative;
}

.swiper-slide.is-slider-bg {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.swiper-slide.is-slider-thumbs {
  flex: none;
  width: 100%;
  padding-right: .5em;
}

.swiper-slide.is-service {
  background-color: var(--crimson);
  padding: 4vw;
}

.swiper-slide.is-service:nth-child(2n) {
  background-color: var(--white);
}

.swiper {
  width: 100%;
}

.swiper.is-slider-bg {
  width: 100%;
  height: 100%;
}

.swiper.is-slider-thumbs {
  width: 100%;
  overflow: visible;
}

.swiper.is-slider-titles {
  height: 100%;
  overflow: visible;
}

.slider-gallery_bottom-wrapper {
  grid-column-gap: 0em;
  grid-row-gap: 1.5em;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 3em;
  padding-left: 3%;
  padding-right: 3%;
  display: none;
  position: static;
}

.slider-thumbs_component {
  width: 40%;
  display: none;
}

.slider-gallery_numbers {
  letter-spacing: .04em;
  font-size: 1.38em;
  line-height: 1;
  display: none;
}

.swiper-wrapper.is-slider-thumbs {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.swiper-wrapper.is-slider-titles {
  justify-content: flex-start;
  align-items: center;
  height: 100%;
  display: flex;
}

.swiper-wrapper.is-slider-bg {
  width: 100%;
  height: 100%;
}

.swiper-wrapper.cursor-none {
  cursor: none;
}

.slider-gallery_button-wrapper {
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  flex-wrap: wrap;
  align-items: center;
  width: 40%;
  display: flex;
}

.slider-thumbs_overflow {
  position: relative;
  overflow: hidden;
}

.slider-thumbs_img {
  cursor: pointer;
  object-fit: cover;
  border-radius: 4px;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.slider-bg_img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.slider-bg_img.parallax {
  height: 115%;
  top: -15%;
}

.locations {
  width: 100%;
  height: 100vh;
  overflow: visible;
}

.swiper-lottie {
  cursor: pointer;
  width: 4vw;
}

.swiper-lottie.flipped {
  transform-style: preserve-3d;
  transform: rotateX(0)rotateY(180deg)rotateZ(0);
}

.location-map-container {
  opacity: 1;
  justify-content: center;
  align-items: flex-end;
  width: 100%;
  transition: all .3s;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 5;
}

.location-map {
  flex: none;
  width: 25vw;
  min-width: 15vw;
  max-width: none;
  min-height: 15vw;
  opacity: 1;
  visibility: visible;
  display: block;
  z-index: 5;
	margin-top:-40px;
}

.gradient-top-100 {
  z-index: 1;
  opacity: .2;
  background-image: linear-gradient(#000, #0000);
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.is-winter {
  display: none;
}

.menu-wrap.is-summer {
  background-color: #2e0008;
}

.menu-wrap.is-winter {
  background-color: #ebeff6;
}

.menu-visibility-helper {
  z-index: 1;
  background-image: linear-gradient(#000c, #0000);
  width: 100%;
  height: 10vw;
  position: sticky;
  top: 0;
}

.menu-visibility-helper.bigger {
  background-image: linear-gradient(#000000e6, #0000);
  height: 18vw;
}

.menu-visibility-helper.brighter {
  background-image: linear-gradient(#000000e6, #0000);
  height: 15vw;
}

.menu-visibility-helper.static {
  z-index: 10;
  position: relative;
  top: auto;
}

.menu-cover-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

@media screen and (max-width: 991px) {
  .container {
    width: 90vw;
  }

  .company-logo {
    width: 40px;
  }

  .company-logo.no-margins {
    width: auto;
    height: 40px;
  }

  .company-logo.in-header {
    width: 150px;
    margin-bottom: -20px;
  }

  .hamburger {
    z-index: 1;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: relative;
  }

  .hero {
    height: 90vh;
    padding: 0;
  }

  .section {
    padding-top: 65px;
    padding-bottom: 65px;
  }

  .section.paddings-5 {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .section.ovhide.is-custom-1 {
    padding-top: 75px;
    padding-bottom: 75px;
  }

  .section.ovhide.is-custom-1.ovshow {
    overflow: hidden;
  }

  .section.ptop-0 {
    padding-top: 0;
  }

  .section.ptop-0.pbot-0-mobile {
    padding-bottom: 0;
  }

  .section.paddings-0.move-up {
    margin-top: -50px;
  }

  .image-inner.parallax {
    height: 100%;
    top: 0%;
  }

  .image-inner.parallax-horizontal.is-first-optin, .image-inner.parallax-horizontal.is-second-option, .image-inner.parallax-horizontal.is-third-option {
    width: 100%;
    left: 0%;
  }

  .paragraph {
    font-size: 16px;
  }

  .h1.mtop-2 {
    margin-top: 20px;
  }

  .h1.mbot-2 {
    margin-bottom: 20px;
  }

  .h1.mbot-1 {
    margin-bottom: 10px;
  }

  .h1.mtop-1 {
    margin-top: 10px;
  }

  .h2.mtop-2 {
    margin-top: 20px;
  }

  .h2.mbot-2 {
    margin-bottom: 20px;
  }

  .h2.mbot-1 {
    margin-bottom: 10px;
  }

  .h2.mtop-1 {
    margin-top: 10px;
  }

  .h3.mtop-2 {
    margin-top: 20px;
  }

  .h3.mbot-2 {
    margin-bottom: 20px;
  }

  .h3.mbot-1 {
    margin-bottom: 10px;
  }

  .h3.mtop-1 {
    margin-top: 10px;
  }

  .h4.mtop-2 {
    margin-top: 20px;
  }

  .h4.mbot-2 {
    margin-bottom: 20px;
  }

  .h4.mbot-1 {
    margin-bottom: 10px;
  }

  .h4.mtop-1 {
    margin-top: 10px;
  }

  .h5.mtop-2 {
    margin-top: 20px;
  }

  .h5.mbot-2 {
    margin-bottom: 20px;
  }

  .h5.mbot-1 {
    margin-bottom: 10px;
  }

  .h5.mtop-1 {
    margin-top: 10px;
  }

  .h6.mtop-2 {
    margin-top: 20px;
  }

  .h6.mbot-2 {
    margin-bottom: 20px;
  }

  .h6.mbot-1 {
    margin-bottom: 10px;
  }

  .h6.mtop-1 {
    margin-top: 10px;
  }

  .scroll-trigger {
    display: none;
  }

  .rich-text-light h1 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 40px;
  }

  .rich-text-light h2 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 35px;
  }

  .rich-text-light h3 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 25px;
  }

  .rich-text-light h4 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 20px;
  }

  .rich-text-light h5 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 18px;
  }

  .rich-text-light h6 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 16px;
  }

  .rich-text-light p {
    font-size: 16px;
  }

  .rich-text-light blockquote {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 20px;
    font-size: 18px;
  }

  .rich-text-light ol, .rich-text-light ul {
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 20px;
  }

  .rich-text-light li {
    padding-top: 3px;
    padding-bottom: 3px;
    font-size: 16px;
  }

  .rich-text-light a {
    font-size: 16px;
  }

  .button {
    padding: 15px 25px;
  }

  .button.inside-slide {
    margin-top: 10px;
  }

  .button.hideonmobile {
    display: none;
  }

  .button-text {
    font-size: 16px;
  }

  .input-field {
    height: 55px;
    font-size: 15px;
  }

  .input-field.as-area {
    min-height: 150px;
  }

  .footer {
    background-color: var(--brown);
    padding-top: 100px;
    padding-bottom: 50px;
  }

  .container-large {
    width: 90vw;
  }

  .footer-columns, .footer-column.align-right {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
  }

  .footer-link {
    padding-top: 3px;
    padding-bottom: 3px;
  }

  .link-item {
    letter-spacing: -.5px;
    font-size: 30px;
  }

  .link-item.large {
    letter-spacing: -2px;
    font-size: 46px;
  }

  .link-item.large.only-desktop {
    display: none;
  }

  .link-item.large.only-mobile {
    display: block;
  }

  .link-item.bigger {
    font-size: 50px;
  }

  .link-item.smaller.is-sixth, .link-item.smaller.is-seventh {
    letter-spacing: -.5px;
    font-size: 30px;
  }

  .link-hover-wrapper {
    display: none;
  }

  .footer-column-info-shortener {
    width: 90%;
  }

  .text-style-label {
    font-size: 12px;
  }

  .text-style-label.text-align-right.no-srink {
    text-align: left;
  }

  .text-style-label.center-mobile {
    text-align: center;
  }

  .text-style-label.vw-mobile {
    font-size: 2vw;
  }

  .footer-meta {
    margin-top: 50px;
    padding-top: 50px;
  }

  .meta-wrapper {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .call-to-action {
    margin-bottom: -50px;
    padding-top: 50px;
  }

  .cta-content {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    padding: 250px 50px 50px;
  }

  .heading-style-h2 {
    letter-spacing: -1px;
    font-size: 45px;
  }

  .heading-style-h2.text-align-center.font-weight-extralight.change-color-pageload {
    font-size: 13vw;
  }

  .contact-title-wrapper {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
  }

  .button-txt {
    font-size: 12px;
  }

  .two-columns {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .two-columns._3-1.align-bottom {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .two-columns.spacing-20-mobile {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .two-columns.mtop-5 {
    margin-top: 35px;
  }

  .column {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .column.hideonmobile {
    display: none;
  }

  .column.centered-mobile {
    justify-content: flex-start;
    align-items: center;
  }

  .column.ptop-4 {
    padding-top: 0;
  }

  .column.vertical-paddings {
    padding-top: 0;
    padding-bottom: 0;
  }

  .text-style-regular {
    font-size: 15px;
  }

  .text-style-regular.text-color-white.center-mobile {
    text-align: center;
  }

  .services-slider {
    margin-top: 50px;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .swiper-wrapper-2 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .swiper-slide-2 {
    padding: 35px;
  }

  .service-top {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 35px;
  }

  .container-small {
    width: 90vw;
  }

  .heading-style-h3 {
    letter-spacing: -1px;
    font-size: 37px;
  }

  .heading-style-h3.center-mobile {
    text-align: center;
  }

  .button-secondary.cursor-goto {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .button-arrow {
    width: 25px;
  }

  .object-categories {
    grid-column-gap: 5vw;
    grid-row-gap: 5vw;
    margin-top: 50px;
  }

  .object-category {
    height: 60vw;
  }

  .heading-style-h4 {
    letter-spacing: -.05px;
    font-size: 28px;
  }

  .custom-1 {
    width: 100%;
    margin-top: 25px;
  }

  .custom-2 {
    width: 100%;
    margin-top: 50px;
    margin-bottom: 50px;
    padding-left: 0;
  }

  .custom-image-1 {
    flex: none;
    width: 30vw;
    height: 40vw;
  }

  .custom-image-2 {
    width: 46vw;
    height: 68vw;
  }

  .custom-2-content {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    justify-content: flex-start;
    align-items: center;
    width: 90vw;
    margin-top: 50px;
    position: relative;
    top: 0;
    left: -35vw;
  }

  .custom-3 {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    justify-content: flex-start;
    align-items: center;
    margin-top: 100px;
  }

  .custom-3-title-wrapper {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    display: flex;
  }

  .custom-3-title-1 {
    justify-content: center;
    align-items: flex-start;
    padding-right: 0;
  }

  .custom-3-title-2 {
    justify-content: center;
    align-items: flex-start;
  }

  .heading-style-h1 {
    letter-spacing: -1px;
    font-size: 63px;
  }

  .heading-style-h1.center-mobile {
    text-align: center;
  }

  .custom-3-content {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .years-of-experience {
    width: 80vw;
    height: 80vw;
    margin-top: 40px;
    margin-bottom: 25px;
    left: 5vw;
  }

  .years-line-wrapper, .years-line {
    height: 80vw;
  }

  .year-first {
    pointer-events: none;
    width: 100%;
    height: 60vw;
  }

  .year.is-second {
    font-size: 60vw;
    left: -26.6vw;
  }

  .year.is-first {
    font-size: 60vw;
    top: -6.9vw;
    left: 25.9vw;
  }

  .year-mask {
    top: -17.1vw;
    left: -29.5vw;
  }

  .year-mask.is-second {
    top: 29vw;
    left: 33.5vw;
  }

  .year-second {
    pointer-events: none;
    width: 60vw;
    height: 60vw;
  }

  .heading-style-h5 {
    letter-spacing: -.05px;
    font-size: 22px;
  }

  .heading-style-h5.text-align-center.as-vw {
    font-size: 7vw;
  }

  .custom-3-content-1 {
    width: 100%;
  }

  .custom-3-content-2 {
    width: 100%;
    top: 0;
  }

  .hero-contents {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    width: 100%;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .loading-wrapper {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
    padding-bottom: 20vw;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  .loading-top {
    justify-content: space-between;
    align-items: flex-end;
  }

  .counter-text {
    font-size: 50px;
  }

  .nav {
    background-color: var(--brown);
    mix-blend-mode: normal;
    border-bottom: 1px solid #ffffff1a;
    justify-content: center;
    align-items: center;
    height: 55px;
    padding-top: 0;
  }

  .nav-container {
    position: relative;
  }

  .nav-items-left {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .hamburger-wrapper {
    width: 40px;
    height: 40px;
  }

  .menu-button {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
    order: 1;
  }

  .switch {
    width: 40px;
    height: 40px;
  }

  .nav-items-right {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
    position: absolute;
    inset: 0% 100px 0% auto;
  }

  .company-logo-wrapper {
    order: -1;
    justify-content: center;
    align-items: center;
    display: flex;
  }

  .company-logo-wrapper.move-right {
    left: 0;
  }

  .keyhole.hideonmobile {
    display: none;
  }

  .keyhole-image {
    width: 290%;
  }

  .menu-overlay {
    background-color: var(--black);
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 100px;
    top: -100vh;
  }

  .menu-container {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .menu-items-wrapper {
    width: 100%;
  }

  .menu-link {
    padding-top: 3px;
    padding-bottom: 3px;
  }

  .menu-link.only-mobile {
    display: block;
  }

  .menu-contact-wrapper {
    width: 100%;
  }

  .menu-contact-items {
    justify-content: flex-start;
    align-items: flex-start;
  }

  .side-info {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 30px;
  }

  .side-line {
    flex: none;
    width: 20px;
  }

  .menu-bottom-links {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    padding-left: 5vw;
    padding-right: 5vw;
    display: none;
    position: relative;
    bottom: 0;
  }

  .center-dot, .menu-images-wrapper, .menu-text-switcher {
    display: none;
  }

  .hero-detail {
    padding-top: 125px;
    padding-bottom: 50px;
  }

  .hero-content {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .service {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .services-list {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
  }

  .service-image {
    width: 100%;
    height: 56.25vw;
  }

  .service-content {
    width: 100%;
    padding: 0;
    left: 0;
  }

  .service-content-inner {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .horizontal-flex.spacing, .horizontal-flex.centered-spacing {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .footer-overlap {
    margin-bottom: -100px;
    padding-top: 65px;
  }

  .overlap-block {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 50px;
    display: flex;
  }

  .overlap-block.is-nested {
    margin-top: 100px;
    margin-bottom: -150px;
  }

  .form-wrapper, .input-double {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .input-line {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    margin-top: 10px;
  }

  .checkbox-field {
    padding: 15px 5px;
  }

  .error-message {
    margin-top: 15px;
    padding: 15px;
  }

  .success-inner {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .contact-side {
    border-top: 1px solid #fff;
    border-left-style: none;
    width: 100%;
    padding-left: 0;
  }

  .contact-method {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 35px;
  }

  .content-wrap {
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 35px;
    padding-right: 0;
  }

  .content-side, .content-side.align-bottom {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .content-side.align-bottom.hideonmobile, .content-side.hideonmobile {
    display: none;
  }

  .content-main {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .divider {
    margin-top: 40px;
    margin-bottom: 0;
  }

  .divider.mbot-2 {
    margin-top: 50px;
  }

  .divider-line {
    width: 50px;
  }

  .main-image-wrap {
    width: 100vw;
    height: 56.25vw;
    left: -5vw;
  }

  .image-side {
    display: none;
  }

  .rich-text-dark h1 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 40px;
  }

  .rich-text-dark h2 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 35px;
  }

  .rich-text-dark h3 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 25px;
  }

  .rich-text-dark h4 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 20px;
  }

  .rich-text-dark h5 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 18px;
  }

  .rich-text-dark h6 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 16px;
  }

  .rich-text-dark p {
    font-size: 16px;
  }

  .rich-text-dark blockquote {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 20px;
    font-size: 18px;
  }

  .rich-text-dark ol, .rich-text-dark ul {
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 20px;
  }

  .rich-text-dark li {
    padding-top: 3px;
    padding-bottom: 3px;
    font-size: 16px;
  }

  .rich-text-dark a {
    font-size: 16px;
  }

  .divi-line {
    margin-top: 20px;
  }

  .hero-with-image {
    padding-top: 125px;
    padding-bottom: 100px;
  }

  .hero-columns {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .shortener-66 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .listing {
    flex-flow: column;
  }

  .listing-info {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    border-bottom: 1px solid #0000001a;
    width: 100%;
    padding: 65px 5vw;
  }

  .secondary-image {
    width: 30vw;
    height: 35vw;
  }

  .listing-main-image {
    order: -1;
    width: 100%;
    height: 100vw;
    display: none;
  }

  .empty {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .empty-content {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .hero-property {
    min-height: auto;
    padding-top: 50vw;
    padding-bottom: 100px;
  }

  .property-info {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .button-group {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .property-meta {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 20px;
  }

  .meta-info {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .property-cta {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100vw;
    padding: 65px 5vw;
  }

  .property-side {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    order: -1;
    padding-top: 0;
    padding-bottom: 0;
  }

  .rich-text-dark-bullet-columns h1 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 40px;
  }

  .rich-text-dark-bullet-columns h2 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 35px;
  }

  .rich-text-dark-bullet-columns h3 {
    margin-top: 35px;
    margin-bottom: 25px;
    font-size: 25px;
  }

  .rich-text-dark-bullet-columns h4 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 20px;
  }

  .rich-text-dark-bullet-columns h5 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 18px;
  }

  .rich-text-dark-bullet-columns h6 {
    margin-top: 25px;
    margin-bottom: 15px;
    font-size: 16px;
  }

  .rich-text-dark-bullet-columns p {
    font-size: 16px;
  }

  .rich-text-dark-bullet-columns blockquote {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 20px;
    font-size: 18px;
  }

  .rich-text-dark-bullet-columns ol {
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 20px;
  }

  .rich-text-dark-bullet-columns ul {
    grid-column-gap: 0vw;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 20px;
    display: flex;
  }

  .rich-text-dark-bullet-columns li {
    padding-top: 3px;
    padding-bottom: 3px;
    font-size: 16px;
  }

  .rich-text-dark-bullet-columns a {
    font-size: 16px;
  }

  .property-second-image {
    display: none;
  }

  .image-1 {
    width: 40vw;
    height: 30vw;
  }

  .image-reveal.hideonmobile, .red-background {
    display: none;
  }

  .image-3 {
    width: 40vw;
    height: 50vw;
  }

  .image-4 {
    width: 30vw;
    height: 35vw;
  }

  .image-5 {
    width: 40vw;
    height: 31vw;
    top: -10vw;
  }

  .location-label {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 15px;
  }

  .map-image {
    margin-top: -25vw;
  }

  .location-image-wrap {
    width: 100vw;
    height: 100vw;
    display: block;
    position: relative;
    top: 0;
    left: -5vw;
  }

  .amenities {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
    margin-top: 50px;
  }

  .amenity {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
  }

  .careers-list {
    margin-top: 35px;
  }

  .career-column-1 {
    flex: none;
    width: 40px;
  }

  .career-column-2 {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    flex: none;
    width: 130px;
  }

  .career-column-3 {
    width: 100%;
  }

  .side-arrow-dark, .side-arrow-light {
    width: 30px;
  }

  .shortener-50 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
  }

  .team-list {
    grid-column-gap: 5vw;
    grid-row-gap: 5vw;
    grid-template-rows: auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    width: 100%;
    margin-top: 50px;
    padding-left: 0;
    padding-right: 0;
    display: grid;
  }

  .team-member {
    flex: none;
    width: 100%;
  }

  .team-image {
    height: 60vw;
  }

  .team-card {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    padding: 20px;
  }

  .team-since {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-top: 15px;
  }

  .team-divider {
    width: 50px;
  }

  .hero-about {
    padding-top: 100px;
    padding-bottom: 65px;
  }

  .about-container-1 {
    grid-column-gap: 0vw;
    grid-row-gap: 0vw;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 35px;
  }

  .about-content-1 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
    left: 0;
  }

  .about-container-2 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .about-img-1 {
    width: 50vw;
    height: 40vw;
    left: -5vw;
  }

  .about-content-2 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    width: 100%;
    margin-top: 25px;
    margin-left: 0;
  }

  .about-container-3 {
    margin-top: 50px;
    padding-bottom: 5vw;
  }

  .about-img-2 {
    width: 60vw;
    height: 49vw;
    right: -5vw;
  }

  .about-img-3 {
    width: 20vw;
    height: 34vw;
    right: -5vw;
  }

  .mandala {
    height: 200vh;
  }

  .mandala-image {
    width: 80vw;
    height: 80vw;
  }

  .section-title-2 {
    padding-left: 0;
  }

  .side-img {
    width: 100vw;
    height: 100vw;
    left: -5vw;
  }

  .testimonial {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-top: 65px;
    padding-left: 0;
    padding-right: 0;
  }

  .text-style-testimonial {
    margin-bottom: 20px;
    font-size: 50px;
  }

  .horizontal-scroll {
    height: auto;
  }

  .camera {
    height: auto;
    position: static;
  }

  .track {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    height: auto;
  }

  .timeline-chapter {
    grid-column-gap: 50px;
    grid-row-gap: 50px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    height: auto;
    padding: 65px 5vw;
  }

  .timeline-chapter.second {
    width: 100%;
    padding-top: 5vw;
    overflow: visible;
  }

  .timeline-chapter.third {
    width: 100%;
    padding-top: 0;
    padding-bottom: 20vw;
  }

  .timeline-chapter.fourth {
    width: 100%;
    height: auto;
    padding-top: 0;
    overflow: visible;
  }

  .timeline-chapter.fifth {
    width: 100%;
    height: auto;
    padding-top: 0;
  }

  .timeline-chapter.pbot-double {
    padding-top: 0;
    padding-bottom: 20vw;
  }

  .year-wrap {
    margin-left: 46px;
  }

  .year-wrap.align-bottom.is-first, .year-wrap.align-bottom.is-third, .year-wrap.align-top.is-second {
    margin-left: 0;
    top: 0;
    left: 5vw;
  }

  .year-label {
    top: 2.6vw;
    left: 9.7vw;
  }

  .year-label.third {
    left: 26.8vw;
  }

  .year-label.fourth {
    top: 2vw;
    left: 36.9vw;
  }

  .timeline-info {
    width: 100%;
    padding-top: 0;
  }

  .timeline-info.align-top {
    margin-left: 0;
    padding-bottom: 0;
  }

  .timeline-info.align-top.is-fourth {
    height: auto;
    margin-left: 0;
    padding-bottom: 0;
  }

  .timeline-info.move-left {
    margin-left: 0;
  }

  .timeline-info.move-right {
    height: auto;
    left: 0;
  }

  .info-wrapper {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    padding-top: 6px;
    padding-left: 48px;
  }

  .info-wrapper.align-top {
    padding-bottom: 0;
  }

  .info-wrapper.align-top.is-last {
    top: 0;
    left: 0;
  }

  .info-content {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .connector {
    width: 20px;
    height: 20px;
    top: 0;
  }

  .connector.align-bottom {
    inset: 0% auto auto 0%;
  }

  .connector.static {
    left: 5vw;
  }

  .connector-dot {
    width: 5px;
    height: 5px;
  }

  .chapter-line {
    flex-flow: column;
    justify-content: center;
    align-items: flex-start;
    display: flex;
  }

  .chapter-line.half-from-right {
    justify-content: center;
    align-items: flex-start;
    padding-left: 0;
    display: flex;
  }

  .chapter-line-inner {
    width: 1px;
    height: 100%;
    position: relative;
    left: 6.3vw;
  }

  .chapter-line-inner.is-dark {
    width: 1px;
    height: 100%;
    position: relative;
    left: 6.2vw;
  }

  .chapter-line-inner.is-dark.is-last {
    width: 1px;
    height: 100vw;
  }

  .horizontal-photos {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    height: auto;
    padding-left: 0;
  }

  .horizontal-photos.alt-1 {
    flex-flow: row;
    justify-content: space-between;
    margin-top: -20vw;
    margin-bottom: -20vw;
  }

  .horizontal-photos.alt-2 {
    margin-bottom: -29vw;
  }

  .photo-1 {
    width: 50vw;
    height: 41vw;
  }

  .photo-2 {
    width: 30vw;
    height: 50vw;
    margin-top: 10vw;
    margin-left: 0;
  }

  .photo-bg {
    display: none;
  }

  .photo-3 {
    width: 50vw;
    height: 40vw;
    top: -9.5vw;
    left: 27.6vw;
  }

  .horizontal-parallax {
    width: 100vw;
    height: 56.25vw;
    position: relative;
    left: -5vw;
  }

  .horizontal-parallax.indent {
    width: 100vw;
    left: -5vw;
  }

  .photo-4 {
    width: 40vw;
    height: 47vw;
    margin-top: -20vw;
    left: 5vw;
  }

  .photo-5 {
    width: 30vw;
    height: 40vw;
    position: absolute;
    inset: -11.3vw 0% auto auto;
  }

  .photo-6 {
    width: 26vw;
    height: 32vw;
    margin-top: -25vw;
    left: -.5vw;
  }

  .photo-7 {
    width: 62vw;
    height: 50vw;
    margin-top: 5vw;
    left: 13.3vw;
  }

  .slider-gallery_button.swiper-prev {
    left: 5vw;
  }

  .slider-gallery_button.swiper-next {
    right: 5vw;
  }

  .slider-titles_heading {
    font-size: 12vw;
  }

  .swiper-slide.is-slider-titles {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex: none;
    padding-top: 150px;
  }

  .swiper-slide.is-service {
    padding: 30px;
  }

  .slider-thumbs_component {
    width: 100%;
  }

  .slider-gallery_button-wrapper {
    width: auto;
  }

  .slider-bg_img.parallax {
    height: 100%;
    top: 0%;
  }

  .locations {
    height: 120vw;
  }

  .swiper-lottie, .swiper-lottie.flipped {
    width: 50px;
  }

  .location-map {
    width: 40vw;
    min-width: 40vw;
    min-height: 20vw;
  }

  .video-wrapper {
    bottom: 50px;
  }

  .lighbox-link {
    padding: 10px;
  }

  .polygon {
    width: 50px;
    top: -13px;
    right: -12px;
  }

  .filters-container {
    margin-top: -25px;
    padding-left: 0;
  }

  .locations-list {
    grid-column-gap: 5vw;
    grid-row-gap: 5vw;
    width: 100vw;
    padding-left: 5vw;
    padding-right: 5vw;
    overflow: scroll;
  }

  .location {
    flex: none;
  }

  .check-field {
    width: 40vw;
    padding-top: 50vw;
  }

  .checkbox-label {
    font-size: 4vw;
  }

  .active-line {
    width: 5vw;
    margin-top: 3vw;
  }

  .check-photo-inner {
    width: 40vw;
    height: 40vw;
  }

  .toggle-switch {
    background-color: #1b1b1b;
    width: 40px;
    height: 40px;
    position: fixed;
    inset: auto auto 20px 20px;
  }

  .menu-visibility-helper {
    display: none;
  }

  .weglot {
    order: -1;
    height: 40px;
    position: absolute;
    bottom: 0;
    right: 0;
  }

  .nav-gradient {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .section.paddings-5 {
    padding-top: 35px;
    padding-bottom: 35px;
  }

  .footer-columns {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .footer-column.align-right {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    order: -1;
    justify-content: space-between;
    align-items: flex-start;
  }

  .text-style-label.text-align-right.text-align-left-mobile {
    text-align: left;
  }

  .footer-contact-info {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .two-columns._3-1.align-bottom {
    grid-column-gap: 25px;
    grid-row-gap: 25px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .services-slider {
    padding-right: 10vw;
  }

  .swiper-wrapper-2 {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex-flow: row;
    grid-template-rows: auto;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .swiper-slide-2 {
    flex: none;
  }

  .heading-style-h3.text-color-red.smallermobile {
    letter-spacing: -.5px;
    font-size: 30px;
  }

  .keyhole-image {
    width: 520%;
  }

  .input-double {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .secondary-image {
    width: 40vw;
    height: 48vw;
  }

  .property-meta {
    grid-column-gap: 30px;
    grid-row-gap: 30px;
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
    padding: 25px;
    display: grid;
  }

  .career-link {
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .career-column-1 {
    display: none;
  }

  .career-column-3 {
    padding-right: 50px;
  }

  .slider-thumbs_wrapper {
    width: 33.3333%;
  }
}

@media screen and (max-width: 479px) {
  .company-logo.in-header {
    margin-bottom: -10px;
  }

  .button {
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 20px 30px;
    display: flex;
  }

  .button.full-mobile {
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
  }

  .button.inside-slide {
    width: auto;
  }

  .footer {
    background-color: var(--brown);
    padding-bottom: 25px;
  }

  .link-item.large.only-desktop {
    background-color: var(--brown);
  }

  .text-style-label {
    font-size: 14px;
  }

  .text-style-label.text-color-dark.smallermobile {
    font-size: 10px;
  }

  .text-style-label.vw-mobile {
    font-size: 3vw;
  }

  .footer-meta {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 25px;
  }

  .cta-content {
    background-image: linear-gradient(#0000, #000000e6);
    padding: 100px 35px 35px;
  }

  .heading-style-h2 {
    font-size: 45px;
  }

  .heading-style-h2.text-align-center.font-weight-extralight.change-color-pageload {
    font-size: 19vw;
  }

  .button-txt {
    font-size: 14px;
  }

  .two-columns {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
  }

  .text-style-regular {
    font-size: 16px;
  }

  .heading-style-h3.text-color-dark.hideonmobile {
    display: none;
  }

  .button-arrow {
    width: 50px;
  }

  .object-category {
    height: 65vw;
  }

  .custom-2 {
    grid-column-gap: 10vw;
    grid-row-gap: 10vw;
  }

  .custom-2-content {
    margin-top: 75px;
    left: -40vw;
  }

  .custom-3 {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
  }

  .custom-3-title-wrapper {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
  }

  .heading-style-h1 {
    font-size: 63px;
  }

  .heading-style-h1.text-color-dark.text-align-center {
    font-size: 45px;
  }

  .heading-style-h1.smallermobile {
    font-size: 55px;
  }

  .heading-style-h1.change-color-on-toggle {
    font-size: 45px;
  }

  .heading-style-h5.text-color-red.biggermobile {
    font-size: 35px;
  }

  .nav {
    background-color: var(--brown);
  }

  .nav-items-right {
    right: 60px;
  }

  .keyhole-image {
    width: 690%;
  }

  .hero-detail.pbot-0-mobile {
    padding-bottom: 0;
  }

  .horizontal-flex.spacing.smallermobile {
    grid-column-gap: 5px;
    grid-row-gap: 5px;
  }

  .horizontal-flex.centered-spacing {
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }

  .overlap-block {
    padding: 50px 30px 30px;
  }

  .overlap-block.is-crimson {
    padding-top: 65px;
    padding-bottom: 40px;
  }

  .overlap-block.is-nested {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    margin-top: 65px;
    margin-bottom: -100px;
  }

  .checkboxes {
    border-bottom-style: none;
    flex-flow: column;
  }

  .checkbox-field {
    border-bottom: 1px solid #0003;
    justify-content: flex-start;
    align-items: center;
    padding: 20px 0;
  }

  .contact-method, .contact-method.no-border {
    padding-left: 0;
    padding-right: 0;
  }

  .secondary-image {
    width: 60vw;
    height: 70vw;
  }

  .hero-property {
    padding-top: 60vw;
    padding-bottom: 65px;
  }

  .button-group {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    flex-flow: column;
    width: 100%;
    margin-top: 15px;
  }

  .section-images {
    grid-column-gap: 15vw;
    grid-row-gap: 15vw;
  }

  .image-line.center {
    grid-column-gap: 10vw;
    grid-row-gap: 10vw;
  }

  .image-3, .image-4 {
    width: 50%;
  }

  .career-link {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .team-list {
    grid-column-gap: 10vw;
    grid-template-columns: 1fr;
  }

  .team-member {
    width: 100%;
  }

  .team-image {
    height: 25rem;
  }

  .team-card {
    grid-column-gap: 15px;
    grid-row-gap: 15px;
    margin-top: -100px;
    padding: 20px;
    top: 0;
    left: 5vw;
  }

  .team-since {
    margin-top: 5px;
  }

  .about-container-2 {
    grid-column-gap: 35px;
    grid-row-gap: 35px;
    margin-top: 15px;
  }

  .about-container-3 {
    grid-column-gap: 5vw;
    grid-row-gap: 5vw;
    padding-bottom: 17vw;
  }

  .about-img-2 {
    width: 50vw;
    height: 42vw;
  }

  .about-img-3 {
    width: 17vw;
    height: 28vw;
  }

  .back-image {
    opacity: .65;
    padding: 10vw;
  }

  .text-style-testimonial {
    margin-bottom: 25px;
  }

  .timeline-chapter.pbot-double {
    padding-top: 0;
    padding-bottom: 30vw;
  }

  .year-text {
    font-size: 33vw;
  }

  .year-label {
    top: 1.9vw;
    left: 10.4vw;
  }

  .year-label.third {
    top: 29.4vw;
    left: 28.6vw;
  }

  .year-label.fourth {
    left: 43.8vw;
  }

  .connector, .connector.align-bottom {
    left: -5px;
  }

  .connector.static {
    left: 4vw;
  }

  .chapter-line-inner.is-dark.is-last {
    height: 75vw;
  }

  .horizontal-photos.alt-1 {
    margin-top: -25vw;
  }

  .photo-1 {
    left: -2.5vw;
  }

  .photo-2 {
    width: 32vw;
    height: 56vw;
  }

  .photo-7 {
    left: 7.6vw;
  }

  .location-map {
    width: 40vw;
  }

  .checkbox-label {
    font-size: 5vw;
  }

  .menu-wrap.is-summer-flex {
    background-color: #140d07;
  }
}

@media screen and (max-width: 991px) {
  #w-node-_1c5cbc35-bc53-c5be-8633-3590b398c7f2-5094a6fb {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}