:root {
  --spacing: 20px;
  --spacing-0: 0px;
  --spacing-0-5: calc(var(--spacing) * 0.5);
  --spacing-1: var(--spacing);
  --spacing-1-5: calc(var(--spacing) * 1.5);
  --spacing-2: calc(var(--spacing) * 2);
  --spacing-2-5: calc(var(--spacing) * 2.5);
  --spacing-3: calc(var(--spacing) * 3);
  --spacing-3-5: calc(var(--spacing) * 3.5);
  --spacing-4: calc(var(--spacing) * 4);
  --spacing-4-5: calc(var(--spacing) * 4.5);
  --spacing-5: calc(var(--spacing) * 5);
  --spacing-6: calc(var(--spacing) * 6);
  --spacing-6-5: calc(var(--spacing) * 6.5);
  --spacing-7: calc(var(--spacing) * 7);
  --spacing-8: calc(var(--spacing) * 8);
  --col: calc(100vw / 8);
  --col-1: var(--col);
  --col-2: calc(var(--col) * 2);
  --col-2-2: calc(var(--col) * 2.2);
  --col-2-5: calc(var(--col) * 2.5);
  --col-3: calc(var(--col) * 3);
  --col-3-5: calc(var(--col) * 3.5);
  --col-4: calc(var(--col) * 4);
  --col-4-5: calc(var(--col) * 4.5);
  --col-5: calc(var(--col) * 5);
  --col-6: calc(var(--col) * 6);
  --col-7: calc(var(--col) * 7);
  --col-7-5: calc(var(--col) * 7.5);
  --col-8: calc(var(--col) * 8);
  --col-9: calc(var(--col) * 9);
  --col-10: calc(var(--col) * 10);
  --col-11: calc(var(--col) * 11);
  --col-12: calc(var(--col) * 12)
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  :root {
    --spacing: 40px;
    --col: calc(100vw / 12)
  }
}
@media screen and (min-width:980px) and (max-width:1200px) {
  :root {
    --spacing: calc(40px + 10 * ((100vw - 980px) / 220))
  }
}
@media screen and (min-width:1200px) and (max-width:1440px) {
  :root {
    --spacing: calc(50px + 10 * ((100vw - 1200px) / 240))
  }
}
@media screen and (min-width:1440px) and (max-width:1920px) {
  :root {
    --spacing: calc(60px + 20 * ((100vw - 1440px) / 480))
  }
}
@media only screen and (min-width:1920px) {
  :root {
    --spacing: 80px
  }
}
.advantages-item__button, .advantages-item__hover, .advantages-item__hover__description, .clip-box__content--gradient .clip-box__content__tab__inner:before, .form-control--float .form-label, .form-control--input input, .form-control--select select, .form-control--textarea textarea, .form-control-checkbox__icon, .form-control-checkbox__icon:before {
  transition-duration: .4s;
  transition-timing-function: cubic-bezier(.25, .74, .22, .99)
}
.advantages-item--project .advantages-item__image {
  transition-duration: .6s;
  transition-timing-function: cubic-bezier(.25, .74, .22, .99)
}
.form-label:before {
  display: block;
  position: absolute;
  top: -15px;
  right: -15px;
  bottom: -15px;
  left: -15px
}
.advantages-item__title, .inner-infrastructure__list .advantages-item__text {
  font-family: Axiforma, HelveticaNeue-Light, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
  font-feature-settings: "salt"on;
  -webkit-font-kerning: normal;
  font-kerning: normal
}
.advantages-item--full .advantages-item__title {
  font-family: Axiforma, HelveticaNeue-Light, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, sans-serif
}
.advantages-item__title, .form-control--input input, .form-control--select select, .form-control--textarea textarea, .inner-infrastructure__list .advantages-item__text {
  font-size: 1.1rem;
  line-height: 1.45455em;
  letter-spacing: .04em
}
.advantages-item--full .advantages-item__title {
  font-size: 1.5rem;
  line-height: 1.33333em;
  letter-spacing: .02em;
  font-weight: 300
}
div.error, label.error {
  font-size: 1.2rem;
  line-height: 1.5em;
  letter-spacing: -.04em;
  text-transform: none
}
@media only screen and (max-width:567px) and (max-aspect-ratio:13/9) {
  .advantages-item--full .advantages-item__title {
    font-size: calc(1.5rem + 5 * ((100vw - 360px) / 308));
    line-height: calc(1.33333em + -.83333 * ((100vw - 360px) / 308));
    letter-spacing: .02em
  }
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .advantages-item--full .advantages-item__title {
    font-size: calc(1.5rem + 5 * ((100vw - 568px) / 412));
    line-height: calc(1.33333em + -.83333 * ((100vw - 568px) / 412));
    letter-spacing: .02em
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .advantages-item--full .advantages-item__title {
    font-size: 2rem;
    line-height: 1.25em;
    letter-spacing: .02em;
    font-weight: 300
  }
}
@media only screen and (min-width:1200px) {
  .advantages-item__title, .form-control--input input, .form-control--select select, .form-control--textarea textarea, .inner-infrastructure__list .advantages-item__text {
    font-size: 1.3rem;
    line-height: 1.53846em;
    letter-spacing: .04em
  }
  .advantages-item--full .advantages-item__title {
    font-size: 2.7rem;
    line-height: 1.2963em;
    letter-spacing: .02em
  }
}
@media only screen and (min-width:1920px) {
  .advantages-item__title, .form-control--input input, .form-control--select select, .form-control--textarea textarea, .inner-infrastructure__list .advantages-item__text {
    font-size: 1.5rem;
    line-height: 1.6em;
    letter-spacing: .04em
  }
}
.tabs-contents {
  position: relative;
  overflow: visible !important
}
.tabs-contents__content[aria-hidden=true] {
  display: none
}
.tabs-contents__content--animating-in {
  position: absolute !important;
  z-index: 2 !important;
  left: 0;
  top: 0;
  width: 100%;
  min-height: 100%
}
.tabs-contents__content--animating-out {
  z-index: 1 !important
}
.gallery-fullscreen .tabs-contents__content--animating-in, .progress-gallery .tabs-contents__content--animating-in {
  z-index: 2 !important
}
.gallery-fullscreen .tabs-contents__content--animating-top, .progress-gallery .tabs-contents__content--animating-top {
  z-index: 1 !important
}
.clip-box {
  position: relative
}
.clip-box__content--bottom, .clip-box__wrapper {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}
.clip-box__content--bottom {
  display: none
}
.clip-box__content--image {
  position: relative;
  z-index: 1;
  pointer-events: none;
  overflow: hidden
}
.clip-box__content--image img, .clip-box__content--image picture {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%
}
.clip-box__content--image.clip-box__content--absolute {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  contain: strict
}
.clip-box__content--image.clip-box__content--absolute .clip-box__content__tab, .clip-box__content--image.clip-box__content--absolute .clip-box__content__tab__inner, .clip-box__content--image.clip-box__content--absolute img, .clip-box__content--image.clip-box__content--absolute picture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}
.clip-box__content--image.clip-box__content--image--parallax img {
  height: 110%
}
.clip-box__content--top {
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}
.clip-box__content--gradient .clip-box__content__tab__inner:before {
  opacity: 1
}
.intro--animation .clip-box__content--gradient .clip-box__content__tab__inner:before {
  opacity: 0
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .clip-box__content--bottom {
    display: block
  }
  .clip-box__content--gradient .clip-box__content__tab__inner:before {
    position: absolute;
    content: "";
    z-index: 2;
    pointer-events: none;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: linear-gradient(166.58deg, rgba(0, 0, 0, .5), transparent 28.8%)
  }
  .clip-box__content--top {
    contain: size layout paint;
    content-visibility: auto;
    overflow: hidden;
    pointer-events: none
  }
  .clip-box__content--top .clip-box__title {
    color: transparent;
    text-shadow: -1.25px -1.25px 0 #565440, 1.25px -1.25px 0 #565440, -1.25px 1.25px 0 #565440, 1.25px 1.25px 0 #565440
  }
  @supports (-webkit-text-stroke-width:1px) {
    .clip-box__content--top .clip-box__title {
      text-shadow: none;
      -webkit-text-stroke-width: 1.25px;
      -webkit-text-fill-color: currentColor;
      -webkit-text-stroke-color: #565440
    }
  }
  .clip-box__content--top .clip-box__title.text--color-black {
    color: transparent;
    text-shadow: -1.25px -1.25px 0 #2c2926, 1.25px -1.25px 0 #2c2926, -1.25px 1.25px 0 #2c2926, 1.25px 1.25px 0 #2c2926
  }
  @supports (-webkit-text-stroke-width:1px) {
    .clip-box__content--top .clip-box__title.text--color-black {
      text-shadow: none;
      -webkit-text-stroke-width: 1.25px;
      -webkit-text-fill-color: currentColor;
      -webkit-text-stroke-color: #2c2926
    }
  }
  .clip-box__content--top .clip-box__title-dark {
    color: transparent;
    text-shadow: -1.25px -1.25px 0 #e9e4dc, 1.25px -1.25px 0 #e9e4dc, -1.25px 1.25px 0 #e9e4dc, 1.25px 1.25px 0 #e9e4dc
  }
  @supports (-webkit-text-stroke-width:1px) {
    .clip-box__content--top .clip-box__title-dark {
      text-shadow: none;
      -webkit-text-stroke-width: 1.25px;
      -webkit-text-fill-color: currentColor;
      -webkit-text-stroke-color: #e9e4dc
    }
  }
  .clip-box__content--top .clip-box__title-pink {
    color: transparent;
    text-shadow: -1.25px -1.25px 0 #c5b78a, 1.25px -1.25px 0 #c5b78a, -1.25px 1.25px 0 #c5b78a, 1.25px 1.25px 0 #c5b78a
  }
  @supports (-webkit-text-stroke-width:1px) {
    .clip-box__content--top .clip-box__title-pink {
      text-shadow: none;
      -webkit-text-stroke-width: 1.25px;
      -webkit-text-fill-color: currentColor;
      -webkit-text-stroke-color: #c5b78a
    }
  }
  .clip-box__content--top .clip-box__title-olive {
    color: transparent;
    text-shadow: -1.25px -1.25px 0 #565440, 1.25px -1.25px 0 #565440, -1.25px 1.25px 0 #565440, 1.25px 1.25px 0 #565440
  }
  @supports (-webkit-text-stroke-width:1px) {
    .clip-box__content--top .clip-box__title-olive {
      text-shadow: none;
      -webkit-text-stroke-width: 1.25px;
      -webkit-text-fill-color: currentColor;
      -webkit-text-stroke-color: #565440
    }
  }
  .clip-box__content--top .clip-box__text {
    color: #565440
  }
  .clip-box__content--top .clip-box__text--light {
    color: #e9e4dc
  }
}
.scroll-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 2px;
  padding-bottom: 2px;
  font-size: 2.7rem;
  line-height: 1.11111em;
  letter-spacing: .02em;
  font-weight: 300
}
.scroll-text .scroll-text__line {
  display: block;
  white-space: nowrap;
  position: relative;
  padding-top: 20px;
  margin-top: -20px
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .scroll-text {
    font-size: 6.1rem;
    line-height: .98361em;
    letter-spacing: -.02em
  }
}
@media only screen and (min-width:1200px) {
  .scroll-text {
    font-size: 8.1rem;
    line-height: .98765em;
    letter-spacing: -.04em
  }
}
@media only screen and (min-width:1440px) {
  .scroll-text {
    font-size: 10.8rem;
    line-height: 1.01852em;
    letter-spacing: -.04em
  }
}
@media only screen and (min-width:1920px) {
  .scroll-text {
    font-size: 13.5rem;
    line-height: 1.0125em;
    letter-spacing: -.04em
  }
}
@media only screen and (max-width:567px) and (max-aspect-ratio:13/9) {
  .scroll-text {
    font-size: calc(2.7rem + 34 * ((100vw - 360px) / 308))
  }
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .scroll-text {
    font-size: calc(2.7rem + 34 * ((100vw - 568px) / 412));
    line-height: calc(1.11111em + -1.27505 * ((100vw - 568px) / 412));
    letter-spacing: calc(.02em + -.4 * ((100vw - 568px) / 412))
  }
}
@media only screen and (max-width:567px) and (max-aspect-ratio:13/9) {
  .scroll-text {
    font-size: calc(2.7rem + 29 * ((100vw - 360px) / 308));
    line-height: calc(1.11111em + -1.27505 * ((100vw - 360px) / 308));
    letter-spacing: calc(.02em + -.4 * ((100vw - 360px) / 308))
  }
}
.scroll-text .scroll-text__line.text--crop {
  padding-top: 0;
  margin-top: 0
}
.scroll-text .scroll-text__line.text--crop:before {
  margin-top: -.09056em
}
.scroll-text .scroll-text__line.text--crop:after {
  margin-bottom: -.29056em
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .scroll-text .scroll-text__line.text--crop:before {
    margin-top: -.0268em
  }
  .scroll-text .scroll-text__line.text--crop:after {
    margin-bottom: -.2268em
  }
}
@media only screen and (min-width:1200px) {
  .scroll-text .scroll-text__line.text--crop:before {
    margin-top: -.02883em
  }
  .scroll-text .scroll-text__line.text--crop:after {
    margin-bottom: -.22883em
  }
}
@media only screen and (min-width:1440px) {
  .scroll-text .scroll-text__line.text--crop:before {
    margin-top: -.04426em
  }
  .scroll-text .scroll-text__line.text--crop:after {
    margin-bottom: -.24426em
  }
}
@media only screen and (min-width:1920px) {
  .scroll-text .scroll-text__line.text--crop:before {
    margin-top: -.04125em
  }
  .scroll-text .scroll-text__line.text--crop:after {
    margin-bottom: -.24125em
  }
}
.scroll-text .scroll-text__line.text--crop:before {
  display: none
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .scroll-text {
    padding-top: 4px
  }
}
.form-control[readonly], .readonly.form-control {
  pointer-events: none
}
.form-control--input input, .form-control--select select, .form-control--textarea textarea {
  padding: 4px 0 0;
  height: 49px;
  width: 100%;
  background: none;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid #c5b78a;
  min-width: 0
}
.form-control--input .no-hover input, .form-control--select .no-hover select, .form-control--textarea .no-hover textarea, .no-hover .form-control--input input, .no-hover .form-control--select select, .no-hover .form-control--textarea textarea {
  -webkit-appearance: none;
  border-radius: 0
}
.form-control--input input.readonly, .form-control--input input[readonly], .form-control--select select.readonly, .form-control--select select[readonly], .form-control--textarea textarea.readonly, .form-control--textarea textarea[readonly] {
  pointer-events: none;
  box-shadow: none
}
@media only screen and (min-width:1440px) {
  .form-control--input input, .form-control--select select, .form-control--textarea textarea {
    padding: 0
  }
}
.form-control--input input, .form-control--select select, .form-control--textarea textarea {
  color: #565440;
  line-height: normal;
  outline: none;
  vertical-align: middle
}
.form-control--input input:-webkit-autofill, .form-control--input input:-webkit-autofill:active, .form-control--input input:-webkit-autofill:focus, .form-control--input input:-webkit-autofill:hover, .form-control--select select:-webkit-autofill, .form-control--select select:-webkit-autofill:active, .form-control--select select:-webkit-autofill:focus, .form-control--select select:-webkit-autofill:hover, .form-control--textarea textarea:-webkit-autofill, .form-control--textarea textarea:-webkit-autofill:active, .form-control--textarea textarea:-webkit-autofill:focus, .form-control--textarea textarea:-webkit-autofill:hover {
  -webkit-transition: color .4s cubic-bezier(.25, .74, .22, .99), border-color .4s cubic-bezier(.25, .74, .22, .99), background-color 1ms ease-in-out 5000s !important;
  transition: color .4s cubic-bezier(.25, .74, .22, .99), border-color .4s cubic-bezier(.25, .74, .22, .99), background-color 1ms ease-in-out 5000s !important
}
.form-control--input input, .form-control--select select, .form-control--textarea textarea {
  transition-property: color, background-color, border-color
}
.form-control--input input:invalid, .form-control--select select:invalid, .form-control--textarea textarea:invalid {
  box-shadow: none
}
.form-control--input input::-ms-clear, .form-control--select select::-ms-clear, .form-control--textarea textarea::-ms-clear {
  display: none
}
::-webkit-credentials-auto-fill-button {
  visibility: hidden;
  pointer-events: none;
  position: absolute;
  right: 0
}
::-ms-reveal {
  display: none
}
.form-label {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}
input[disabled] + .form-label, select[disabled] + .form-label, textarea[disabled] + .form-label {
  opacity: .5
}
.form-label sup {
  display: inline-block
}
.form-label:before {
  content: ""
}
.form-control--float {
  position: relative
}
.form-control--float .form-label {
  position: absolute;
  padding: 18px 0 0;
  width: auto;
  left: 0;
  top: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  pointer-events: none;
  transform-origin: 0 0;
  transition-property: transform, color
}
@media only screen and (min-width:1440px) {
  .form-control--float .form-label {
    padding: 15px 0 0
  }
}
.form-control--float input::-webkit-input-placeholder, .form-control--float textarea::-webkit-input-placeholder {
  color: transparent !important
}
.form-control--float input::-moz-placeholder, .form-control--float textarea::-moz-placeholder {
  color: transparent !important
}
.form-control--float input:-ms-input-placeholder, .form-control--float textarea:-ms-input-placeholder {
  color: transparent !important
}
.form-control--float.is-focused:not(.form-control--select) .form-label, .form-control--float.is-not-empty .form-label, .form-control--float input:focus ~ .form-label, .form-control--float textarea:focus ~ .form-label {
  transform: translateY(-16px) scale(.7)
}
.form-control--float input:not(:-moz-placeholder-shown) ~ .form-label, .form-control--float textarea:not(:-moz-placeholder-shown) ~ .form-label {
  transform: translateY(-16px) scale(.7)
}
.form-control--float input:not(:placeholder-shown) ~ .form-label, .form-control--float textarea:not(:placeholder-shown) ~ .form-label {
  transform: translateY(-16px) scale(.7)
}
.form-control--placeholder input:focus::-webkit-input-placeholder, .form-control--placeholder textarea:focus::-webkit-input-placeholder {
  color: #565440 !important
}
.form-control--placeholder input:focus::-moz-placeholder, .form-control--placeholder textarea:focus::-moz-placeholder {
  color: #565440 !important
}
.form-control--placeholder input:focus:-ms-input-placeholder, .form-control--placeholder textarea:focus:-ms-input-placeholder {
  color: #565440 !important
}
.has-error .form-label {
  color: #d9534f
}
.form-group {
  margin-top: var(--spacing);
  margin-bottom: var(--spacing)
}
.form-group:first-child {
  margin-top: 0
}
.form-group:last-child {
  margin-bottom: 0
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .form-group {
    margin-top: calc(var(--spacing) / 2);
    margin-bottom: calc(var(--spacing) / 2)
  }
  .form-group:first-child {
    margin-top: 0
  }
  .form-group:last-child {
    margin-bottom: 0
  }
}
@media only screen and (min-width:1440px) {
  .form-group {
    margin-top: calc(var(--spacing) / 2 + 10px);
    margin-bottom: calc(var(--spacing) / 2 + 10px)
  }
  .form-group:first-child {
    margin-top: 0
  }
  .form-group:last-child {
    margin-bottom: 0
  }
}
.form-group--small {
  margin-top: 10px;
  margin-bottom: 10px
}
.form-control--textarea textarea {
  resize: vertical
}
.form-control--select select {
  width: 100%;
  -webkit-appearance: menulist-button
}
.form-control-checkbox {
  display: flex;
  align-items: center
}
.form-control-checkbox input {
  position: absolute;
  -webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
  clip-path: polygon(0 0, 0 0, 0 0, 0 0)
}
.form-control-checkbox input _:-ms-input-placeholder, :root .form-control-checkbox input {
  opacity: 0
}
.form-control-checkbox__icon, .form-control-checkbox__label {
  position: relative;
  min-height: 30px;
  cursor: pointer
}
.form-control-checkbox__icon:after, .form-control-checkbox__label:after {
  content: "";
  display: block;
  position: absolute;
  top: -10px;
  right: -5px;
  bottom: -10px;
  left: -5px
}
.form-control-checkbox__icon {
  height: 30px;
  width: 30px;
  background: transparent;
  border: 1px solid rgba(233, 228, 220, .2);
  flex-shrink: 0;
  border-radius: 50%;
  margin-top: -2px;
  transition-property: border-color
}
.form-control-checkbox__icon:before {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  left: -1px;
  top: -1px;
  background: url(../assets/images/common/checkbox.svg);
  background-size: cover;
  transition-property: opacity;
  opacity: 0
}
.form-control-checkbox__label {
  flex-grow: 1;
  display: inline-flex;
  align-items: center;
  padding: 0 0 0 10px
}
input[disabled] ~ .form-control-checkbox__icon, input[disabled] ~ .form-control-checkbox__label {
  opacity: .5;
  pointer-events: none
}
.has-hover .form-control-checkbox:hover .form-control-checkbox__icon, .has-hover .form-control-checkbox:hover input:checked ~ .form-control-checkbox__icon, input:checked ~ .form-control-checkbox__icon, input:focus ~ .form-control-checkbox__icon {
  border-color: #e9e4dc
}
input:checked ~ .form-control-checkbox__icon:before {
  opacity: 1
}
.form-control-checkbox a {
  position: relative;
  z-index: 1
}
.is-ie .form-control-checkbox a {
  vertical-align: top
}
.has-error .form-control-checkbox__icon {
  border-color: #d9534f
}
.has-error .form-control-checkbox__label {
  color: #d9534f
}
.grecaptcha-badge {
  display: none !important
}
.form-disclaimer {
  margin-top: var(--spacing-2);
  margin-bottom: 0
}
.form-disclaimer:first-child {
  margin-top: 0
}
.form-disclaimer:last-child {
  margin-bottom: 0
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .form-disclaimer {
    margin-top: var(--spacing);
    margin-bottom: 0
  }
  .form-disclaimer:first-child {
    margin-top: 0
  }
  .form-disclaimer:last-child {
    margin-bottom: 0
  }
}
.form-footer {
  text-align: right;
  margin-top: var(--spacing-2);
  margin-bottom: var(--spacing-2)
}
.form-footer:first-child {
  margin-top: 0
}
.form-footer:last-child {
  margin-bottom: 0
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .form-footer {
    margin-top: var(--spacing);
    margin-bottom: var(--spacing)
  }
  .form-footer:first-child {
    margin-top: 0
  }
  .form-footer:last-child {
    margin-bottom: 0
  }
}
@media only screen and (min-width:1440px) {
  .form-footer {
    margin-top: 30px;
    margin-bottom: 0
  }
  .form-footer:first-child {
    margin-top: 0
  }
  .form-footer:last-child {
    margin-bottom: 0
  }
}
.error-message {
  color: #d9534f
}
div.error, label.error {
  display: block;
  padding: 20px 0 0;
  color: #d9534f
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .parallax-picture {
    overflow: hidden
  }
  .parallax-picture img {
    display: block;
    height: calc(100% + var(--spacing));
    margin-bottom: calc(var(--spacing) * -1);
    will-change: transform !important
  }
  .parallax-picture--lg img {
    margin-bottom: calc(var(--spacing) * -2)
  }
  .parallax-picture--md img {
    margin-bottom: calc(var(--spacing) * -1);
    margin-top: calc(var(--spacing) * -1)
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .parallax-picture--full-height img {
    margin-bottom: 0;
    height: calc(100% + var(--spacing))
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .parallax-block {
    overflow: hidden
  }
  .parallax-block__content {
    display: block;
    margin-bottom: calc(var(--spacing) * -2);
    will-change: transform !important
  }
}
@media (max-width:567px) and (max-aspect-ratio:13/9), (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .scrollable, .scrollable-sm-down {
    overflow-x: auto;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none
  }
  .scrollable-sm-down:after, .scrollable:after {
    content: "";
    display: block;
    height: 1px
  }
  .scrollable-sm-down::-webkit-scrollbar, .scrollable::-webkit-scrollbar {
    display: none
  }
}
@media only screen and (max-width:567px) and (max-aspect-ratio:13/9) {
  .scrollable, .scrollable-sm-down {
    margin-left: calc(var(--spacing) * -1);
    margin-right: calc(var(--spacing) * -1);
    padding-left: var(--spacing);
    padding-right: var(--spacing)
  }
  .scrollable-sm-down:after, .scrollable:after {
    flex: 0 0 var(--spacing);
    width: var(--spacing)
  }
  .scrollable-sm-down:after _:-ms-input-placeholder, .scrollable:after _:-ms-input-placeholder, :root .scrollable-sm-down:after, :root .scrollable:after {
    min-width: var(--spacing);
    max-width: var(--spacing)
  }
  @-moz-document url-prefix() {
    .scrollable-sm-down:after, .scrollable:after {
      max-width: var(--spacing)
    }
  }
}
.no-hover .scrollable-native-clip {
  position: relative;
  overflow: hidden;
  margin: 0 -30px;
  padding: 0 30px
}
.no-hover .scrollable-native-clip .scrollable-native {
  margin-bottom: -20px;
  padding-bottom: 20px
}
@media (min-aspect-ratio:13/9), only screen and (min-width:568px) {
  .no-hover .scrollable-native-clip {
    margin: 0 -60px;
    padding: 0 60px
  }
}
@media only screen and (min-width:1440px) {
  .no-hover .scrollable-native-clip {
    margin: 0 -140px;
    padding: 0 140px
  }
}
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  position: relative;
  z-index: 1
}
.owl-carousel .owl-stage {
  position: relative;
  touch-action: manipulation;
  -moz-backface-visibility: hidden
}
.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0
}
.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  transform: translateZ(0)
}
.owl-carousel .owl-item, .owl-carousel .owl-wrapper {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0)
}
.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none
}
.owl-carousel .owl-item img {
  display: block;
  width: 100%
}
.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
  display: none
}
.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev, .owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit
}
.owl-carousel.owl-loaded {
  display: block
}
.owl-carousel.owl-loading {
  opacity: 0;
  display: block
}
.owl-carousel.owl-hidden {
  opacity: 0
}
.owl-carousel.owl-refresh .owl-item {
  visibility: hidden
}
.owl-carousel.owl-drag .owl-item {
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}
.owl-carousel.owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab
}
.owl-carousel.owl-rtl {
  direction: rtl
}
.owl-carousel.owl-rtl .owl-item {
  float: right
}
.no-js .owl-carousel {
  display: block
}
.owl-height {
  transition: height .5s cubic-bezier(.39, .01, .04, 1)
}
.carousel-owl {
  position: relative
}
.carousel-owl .carousel-owl__fallback, .carousel-owl .owl-stage {
  display: flex;
  align-items: flex-start
}
.carousel-owl .owl-stage, .carousel-owl .owl-stage-outer {
  width: 100%
}
.carousel-owl .owl-nav {
  display: none
}
.carousel-owl .owl-drag, .carousel-owl .owl-drag .card__overlay {
  cursor: move;
  cursor: grab;
  cursor: -webkit-grab
}
.carousel-owl .owl-grab, .carousel-owl .owl-grab .btn-container, .carousel-owl .owl-grab .card__overlay {
  cursor: grabbing;
  cursor: -webkit-grabbing
}
.carousel-owl-item {
  width: 100%
}
.carousel-owl-item img, .carousel-owl-item picture {
  width: 100%;
  height: auto;
  min-height: 1px
}
.carousel-owl--full .owl-stage-outer {
  overflow: visible
}
.carousel-owl__side-content {
  position: relative;
  z-index: 2
}
.carousel-owl__side-content a, .carousel-owl__side-content h2, .carousel-owl__side-content h3, .carousel-owl__side-content p {
  position: relative
}
.carousel-owl__side-background {
  position: relative;
  z-index: 1
}
.carousel-owl__side-background:before {
  content: "";
  position: absolute;
  z-index: 0;
  right: 0;
  top: -1px;
  height: calc(100% + 2px);
  width: 100vw;
  background: #e9e4dc
}
.ui-dark-background .carousel-owl__side-background:before {
  background: #2c2926
}
.carousel-owl--not-ready .is-hidden--not-ready {
  display: none !important
}
.gallery {
  position: relative
}
.gallery__background, .gallery__titles {
  position: absolute
}
.gallery__images, .gallery__titles__wrapper {
  position: relative
}
.gallery__images__wrapper {
  position: relative;
  overflow: hidden !important
}
.gallery__images picture {
  display: block;
  width: 100%;
  height: auto
}
.gallery__images img {
  display: block;
  min-width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%
}
.gallery__texts__wrapper {
  position: relative;
  overflow: hidden
}
.gallery__button {
  position: absolute;
  z-index: 2
}
.gallery__nav-count {
  position: absolute;
  padding: var(--spacing)
}
.gallery--rt {
  height: calc(var(--spacing) * 26);
  overflow: hidden
}
.gallery--rt .gallery__background {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%
}
.gallery--rt .gallery__images {
  margin: 0 0 0 var(--col-2)
}
.gallery--rt .gallery__image img {
  height: calc(160 / 320 * 100vw);
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.gallery--rt .gallery__texts {
  position: relative
}
.gallery--rt .gallery__text__inner {
  padding: var(--spacing-2) var(--spacing) var(--spacing-4) var(--col-2)
}
.gallery--rt .gallery__buttons {
  position: absolute;
  z-index: 4;
  left: 0;
  bottom: 0;
  padding: var(--spacing)
}
.gallery--rt .gallery__nav-count {
  z-index: 2;
  right: 0;
  bottom: 0
}
@media (min-aspect-ratio:13/9), only screen and (min-width:568px) {
  .gallery--rt {
    min-height: calc(var(--spacing) * 26);
    height: auto
  }
  .gallery--rt .gallery__text__inner {
    padding: var(--spacing-2) var(--spacing) var(--spacing-4)
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .gallery--rt {
    min-height: 0;
    height: 100vw
  }
  .gallery--rt .gallery__background {
    width: var(--col-9)
  }
  .gallery--rt .gallery__images {
    margin: 0 0 0 var(--col-3)
  }
  .gallery--rt .gallery__image img {
    height: calc(var(--spacing) * 11)
  }
  .gallery--rt .gallery__texts {
    position: static
  }
  .gallery--rt .gallery__texts__wrapper {
    position: static;
    overflow: visible
  }
  .gallery--rt .gallery__text {
    position: absolute;
    left: 0;
    bottom: 0;
    width: var(--col-6)
  }
  .gallery--rt .gallery__text__inner {
    padding: 0 0 var(--spacing-3) var(--spacing)
  }
  .gallery--rt .gallery__text.tabs-contents__content--animating-in {
    top: auto;
    min-height: 0;
    height: auto
  }
}
@media only screen and (min-width:980px) {
  .gallery--rt {
    height: var(--col-6)
  }
  .gallery--rt .gallery__images {
    margin: 0 0 0 var(--col-6)
  }
  .gallery--rt .gallery__text {
    bottom: auto;
    top: 0;
    width: var(--col-4)
  }
  .gallery--rt .gallery__text__inner {
    padding: var(--spacing) 0 5px var(--spacing)
  }
  .gallery--rt .gallery__text.tabs-contents__content--animating-in {
    top: 0
  }
}
@media only screen and (min-width:980px) {
  .gallery--rt {
    max-height: calc(var(--spacing) * 13)
  }
  .gallery--rt .gallery__text {
    width: calc(var(--col-3) + var(--spacing))
  }
}
@media only screen and (min-width:1200px) {
  .gallery--rt .gallery__image img {
    height: calc(var(--spacing) * 11);
    max-height: none
  }
}
@media only screen and (min-width:1440px) {
  .gallery--rt .gallery__images {
    margin: 0 0 0 var(--col-5)
  }
}
@media only screen and (min-width:1920px) {
  .gallery--rt .gallery__image picture {
    max-height: calc(var(--spacing) * 9)
  }
}
.gallery--rb .gallery__background {
  z-index: 3;
  right: 0;
  bottom: 0;
  width: var(--col-6);
  height: var(--col-6)
}
.gallery--rb .gallery__texts {
  position: relative;
  z-index: 3;
  margin-top: calc(var(--col-2) * -1);
  margin-left: var(--col-2)
}
.gallery--rb .gallery__text {
  padding: var(--spacing);
  width: var(--col-6);
  height: var(--col-6)
}
.gallery--rb .gallery__buttons {
  position: absolute;
  z-index: 4;
  left: 0;
  bottom: 0;
  padding: var(--spacing)
}
.gallery--rb .gallery__nav-count {
  right: 0;
  bottom: 0;
  margin: 0;
  z-index: 3
}
@media (min-aspect-ratio:13/9), only screen and (min-width:568px) {
  .gallery--rb .gallery__background, .gallery--rb .gallery__text {
    height: calc(var(--spacing) * 13)
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .gallery--rb .gallery__background, .gallery--rb .gallery__texts {
    left: 0;
    top: var(--col-2);
    height: var(--col-6);
    right: auto
  }
  .gallery--rb .gallery__images {
    margin: 0 0 0 var(--col-3)
  }
  .gallery--rb .gallery__images img, .gallery--rb .gallery__images picture {
    max-height: var(--viewport-height)
  }
  .gallery--rb .gallery__images .parallax-picture--lg img {
    max-height: calc(var(--viewport-height) + var(--spacing) * 2)
  }
  .gallery--rb .gallery__texts {
    margin: 0;
    position: absolute;
    bottom: 0;
    width: var(--col-6);
    height: var(--col-6)
  }
  .gallery--rb .gallery__text {
    width: calc(var(--spacing) * 2 + 250px);
    height: var(--col-6)
  }
  .gallery--rb .gallery__titles {
    position: absolute;
    padding: var(--spacing);
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #e9e4dc;
    text-align: right
  }
  .gallery--rb .gallery__nav-count {
    right: 0
  }
}
@media only screen and (min-width:980px) {
  .gallery--rb .gallery__background, .gallery--rb .gallery__texts {
    top: auto;
    height: var(--col-6);
    max-height: calc(var(--spacing) * 11)
  }
  .gallery--rb .gallery__text {
    height: var(--col-6);
    max-height: calc(var(--spacing) * 11)
  }
}
@media only screen and (min-width:1200px) {
  .gallery--rb .gallery__text {
    width: calc(var(--spacing) * 2 + 300px)
  }
}
@media only screen and (min-width:1440px) {
  .gallery--rb .gallery__text {
    width: calc(var(--spacing) * 2 + 400px)
  }
}
@media only screen and (min-width:1920px) {
  .gallery--rb .gallery__image picture {
    max-height: calc(var(--spacing) * 15)
  }
}
.gallery--lt .gallery__background {
  z-index: 3;
  right: 0;
  bottom: 0;
  width: calc(var(--col-5) + 15px);
  height: calc(var(--col-7) + 5px)
}
.gallery--lt .gallery__texts {
  position: relative;
  z-index: 3;
  margin-top: calc((var(--col-2) + 10px) * -1);
  margin-left: calc(var(--col-3) - 15px)
}
.gallery--lt .gallery__text {
  padding: var(--spacing);
  width: calc(var(--col-5) + 15px);
  height: calc(var(--col-7) + 5px);
  font-weight: 500
}
.gallery--lt .gallery__buttons {
  position: absolute;
  z-index: 4;
  left: 0;
  bottom: 0;
  padding: var(--spacing)
}
.gallery--lt .gallery__nav-count {
  right: 0;
  bottom: 0;
  margin: 0;
  z-index: 3
}
.gallery--lt .gallery__image picture img {
  width: 100%
}
@media (min-aspect-ratio:13/9), only screen and (min-width:568px) {
  .gallery--lt .gallery__background, .gallery--lt .gallery__text {
    height: calc(var(--spacing) * 13)
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .gallery--lt .gallery__images .parallax-picture--lg img, .gallery--lt .gallery__images img, .gallery--lt .gallery__images picture {
    max-height: var(--viewport-height)
  }
  .gallery--lt .gallery__title {
    padding-bottom: calc(var(--spacing) / 60 * 24)
  }
  .gallery--lt .gallery__text {
    width: calc(var(--col-7) + 15px);
    height: calc(var(--spacing) * 8 - 20px)
  }
  .gallery--lt .gallery__background {
    width: var(--col-9);
    height: calc(var(--spacing) * 8 - 20px)
  }
  .gallery--lt .gallery__texts {
    margin-top: calc((var(--col-2) - 20px) * -1);
    margin-left: var(--col-3)
  }
}
@media only screen and (min-width:1200px) {
  .gallery--lt .gallery__text {
    width: var(--col-6);
    height: calc(var(--col-5) + var(--spacing));
    padding-top: calc(var(--spacing) / 60 * 40);
    padding-right: var(--spacing-6)
  }
  .gallery--lt .gallery__images {
    margin: 0 0 0 var(--col-3)
  }
  .gallery--lt .gallery__background {
    width: var(--col-6);
    height: calc(var(--col-5) + var(--spacing));
    top: 0;
    left: 0
  }
  .gallery--lt .gallery__texts {
    margin-left: 0;
    margin-top: 0;
    position: absolute;
    top: 0
  }
  .gallery--lt .gallery__titles {
    position: absolute;
    padding: var(--spacing);
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    text-align: right;
    z-index: 1
  }
}
/*
@media only screen and (min-width:1200px) {
  .infra-intro {
    height: 100vh;
    height: var(--viewport-height-actual)
  }
}
.infra-intro__image {
  height: calc(400 / 360 * 100vw)
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .infra-intro__image {
    height: 90vh
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .infra-intro__image {
    height: calc(var(--spacing) * 14)
  }
}
@media only screen and (min-width:1200px) {
  .infra-intro__image {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    bottom: calc((135 / 135 * 1em) / 4 * 3 * 2)
  }
}
@media only screen and (min-width:1440px) {
  .infra-intro__image {
    bottom: calc((170 / 189 * 1em) / 4 * 3 * 2)
  }
}
@media only screen and (min-width:1920px) {
  .infra-intro__image {
    bottom: calc((240 / 300 * 1em) / 3 * 3 * 2)
  }
}
*/
/*
.infra-intro__text {
  margin-top: -2.6em
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .infra-intro__text {
    margin-top: -5em
  }
}
*/
/*
@media only screen and (min-width:1200px) {
  .infra-intro__text {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    padding-bottom: 32px;
    width: 100%;
    margin-top: 0;
    padding-bottom: 38px
  }
}
@media only screen and (min-width:1920px) {
  .infra-intro__text {
    padding-bottom: 45px
  }
}
.infra-intro__bottom {
  position: absolute;
  bottom: 32px;
  right: var(--spacing);
  left: auto;
  top: auto;
  z-index: 2
}
@media only screen and (min-width:1200px) {
  .infra-intro__bottom {
    bottom: 38px
  }
}
@media only screen and (min-width:1920px) {
  .infra-intro__bottom {
    bottom: 45px
  }
}
.benefits-text {
  padding-bottom: var(--spacing-2)
}
@media only screen and (min-width:1200px) {
  .benefits-text {
    padding-top: calc(var(--spacing) / 60 * 160);
    padding-bottom: calc(var(--spacing) / 60 * 175)
  }
}
@media only screen and (min-width:1200px) {
  .benefits-gallery {
    padding-bottom: 100px
  }
}
*/
/*
@media only screen and (min-width:1920px) {
  .benefits-gallery {
    padding-bottom: calc(var(--spacing) * 1)
  }
}
*/
.benefits-gallery .advantages-item {
  overflow: hidden
}
.benefits-gallery .advantages-item__title {
  max-width: 100%;
  bottom: calc(var(--spacing) * .75)
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .benefits-gallery .advantages-item__title {
    bottom: calc(var(--spacing) * .3);
    left: var(--spacing-0-5)
  }
}
@media only screen and (min-width:1200px) {
  .benefits-gallery .advantages-item__title {
    bottom: calc(var(--spacing) * .5)
  }
}
.benefits-gallery .gallery__images {
  z-index: 4;
  overflow: hidden
}
.benefits-gallery .gallery__images img, .benefits-gallery .gallery__images picture {
  width: 100%;
  height: 100%
}
@media only screen and (min-width:1200px) {
  .benefits-gallery .gallery__images__carousel {
    width: var(--col-7)
  }
}
.benefits-gallery .carousel-owl-item {
  width: calc(260 / 360 * 100vw)
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .benefits-gallery .carousel-owl-item {
    width: 90vh;
    width: calc(var(--viewport-height-actual) * .9)
  }
}
.benefits-gallery .carousel-owl-item img, .benefits-gallery .carousel-owl-item picture {
  width: 100%;
  height: 100%
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .benefits-gallery .carousel-owl-item {
    width: calc(var(--spacing) / 40 * 300);
    max-width: none
  }
}
@media only screen and (min-width:1200px) {
  .benefits-gallery .carousel-owl-item {
    width: var(--col-4);
    max-width: none
  }
}
@media only screen and (min-width:1920px) {
  .benefits-gallery .carousel-owl-item {
    max-width: calc(var(--spacing) * 8)
  }
}
.benefits-gallery.gallery--rb .gallery__texts {
  height: calc(200 / 360 * 100vw);
  margin-top: 0;
  margin-left: 0
}
.benefits-gallery.gallery--rb .gallery__background {
  height: calc(330 / 360 * 100vw);
  width: 100vw
}
.benefits-gallery.gallery--rb .gallery__buttons {
  bottom: auto;
  top: calc(var(--spacing) * .5)
}
.benefits-gallery.gallery--rb .gallery__nav-count {
  right: 0;
  top: calc(var(--spacing) * .5);
  padding: var(--spacing)
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .benefits-gallery.gallery--rb .gallery__texts {
    height: calc(var(--spacing) * 10)
  }
  .benefits-gallery.gallery--rb .gallery__background {
    height: calc(var(--spacing) * 15)
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px), only screen and (min-width:668px) and (min-height:416px) and (max-width:979px), only screen and (min-width:980px) and (max-width:1199px) {
  .benefits-gallery.gallery--rb .gallery__texts {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    height: calc(var(--spacing) * 7)
  }
  .benefits-gallery.gallery--rb .gallery__background {
    top: auto;
    bottom: 0;
    height: calc(var(--spacing) / 40 * 430)
  }
  .benefits-gallery.gallery--rb .gallery__background, .benefits-gallery.gallery--rb .gallery__texts {
    width: calc(var(--col) * 9)
  }
  .benefits-gallery.gallery--rb .gallery__buttons, .benefits-gallery.gallery--rb .gallery__nav-count {
    top: 0
  }
}
@media only screen and (min-width:1200px) {
  .benefits-gallery.gallery--rb .gallery__texts {
    width: var(--col-5);
    height: var(--col-6);
    max-height: none
  }
  .benefits-gallery.gallery--rb .gallery__background {
/*    width: var(--col-8);*/
    height: var(--col-6);
    max-height: none
  }
  .benefits-gallery.gallery--rb .gallery__buttons, .benefits-gallery.gallery--rb .gallery__nav-count {
    top: 0
  }
}
@media only screen and (min-width:1920px) {
  .benefits-gallery.gallery--rb .gallery__background, .benefits-gallery.gallery--rb .gallery__texts {
    max-height: calc(var(--spacing) * 12);
    max-width: calc(var(--spacing) * 20)
  }
}
.benefits-gallery.gallery--rb .gallery__images {
  margin: 0;
  padding-left: var(--spacing)
}
@media only screen and (min-width:1200px) {
  .benefits-gallery.gallery--rb .gallery__images {
    padding-left: 0;
	  margin: 0px;
/*    margin: 0 0 0 var(--col-5)*/
  }
}
.benefits-gallery.gallery--rb .gallery__titles {
  top: auto;
  bottom: calc(var(--spacing) * 1.5);
  left: var(--spacing);
  text-align: left;
  transform: translateY(0)
}
.benefits-gallery.gallery--rb .gallery__titles .tabs-contents__content--animating-in {
  top: auto;
  bottom: 0;
  display: flex;
  align-items: flex-end
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .benefits-gallery.gallery--rb .gallery__titles {
    bottom: 0;
    left: 0
  }
}
.inner-infrastructure {
  padding-top: var(--spacing-4);
  padding-bottom: var(--spacing-4)
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .inner-infrastructure {
    padding-bottom: calc(var(--spacing) * 4.5)
  }
}
@media only screen and (min-width:1200px) {
  .inner-infrastructure {
    padding-bottom: calc(var(--spacing) * 4.75)
  }
}
.inner-infrastructure__text {
  padding-top: calc(var(--spacing) * .5);
  padding-bottom: var(--spacing)
}
.inner-infrastructure__list {
  display: flex;
  flex-wrap: nowrap;
  margin-top: var(--spacing-1-5)
}
.inner-infrastructure__list li {
  position: relative;
  width: 72.22222vw;
  flex-shrink: 0
}
.inner-infrastructure__list li + li {
  margin-left: var(--spacing-0-5)
}
.inner-infrastructure__list .advantages-item__text {
  position: absolute;
  top: calc(var(--spacing) * -5.5);
  left: 0;
  transform: translateY(100%)
}
.inner-infrastructure__list .advantages-item__title {
  bottom: calc(var(--spacing) * .75)
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .inner-infrastructure__list li {
    width: 90vh
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .inner-infrastructure__list {
    flex-wrap: wrap;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    max-width: calc((50vw - var(--spacing-1-5)) * 2 + var(--spacing))
  }
  .inner-infrastructure__list li + li {
    margin-left: 0
  }
  .inner-infrastructure__list li {
    width: calc(50vw - var(--spacing-1-5))
  }
  .inner-infrastructure__list li:nth-child(2n) {
    margin-left: var(--spacing);
    margin-top: var(--spacing)
  }
  .inner-infrastructure__list li:nth-child(2n+3) {
    margin-top: calc(var(--spacing) * -3)
  }
  .inner-infrastructure__list li:nth-child(2) {
    margin-top: var(--spacing-4)
  }
  .inner-infrastructure__list .advantages-item__title {
    bottom: calc(var(--spacing) * .3)
  }
}
@media only screen and (min-width:1200px) {
  .inner-infrastructure__list {
    max-width: calc(var(--col-4) * 2 + var(--spacing-2))
  }
  .inner-infrastructure__list li {
    width: var(--col-4)
  }
  .inner-infrastructure__list li:nth-child(2n) {
    margin-top: calc(var(--spacing) * 2)
  }
  .inner-infrastructure__list li:nth-child(2n+3) {
    margin-top: calc(var(--spacing-1-5) * -1)
  }
  .inner-infrastructure__list li:nth-child(2) {
    margin-top: var(--spacing-3-5)
  }
  .inner-infrastructure__list li:nth-child(2n) {
    margin-left: var(--spacing-2)
  }
  .inner-infrastructure__list .advantages-item__text {
    top: calc(var(--spacing) * -4.5)
  }
  .inner-infrastructure__list .advantages-item__title {
    left: calc(var(--spacing) / 60 * 40);
    bottom: calc(var(--spacing) / 60 * 30)
  }
}
.children {
  padding-top: var(--spacing-4);
  padding-bottom: var(--spacing-3);
  opacity: 1 !important
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .children {
    padding-bottom: var(--spacing)
  }
}
@media only screen and (min-width:1200px) {
  .children {
    padding-top: var(--spacing-3)
  }
}
@media only screen and (min-width:1920px) {
  .children {
    padding-left: var(--spacing-2);
    padding-right: var(--spacing-2)
  }
}
.children__text {
  margin-top: calc(var(--spacing) / 60 * 130);
  margin-bottom: calc(var(--spacing) / 60 * 130)
}
.children__text:first-child {
  margin-top: 0
}
.children__text:last-child {
  margin-bottom: 0
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .children__text {
    margin-top: calc(var(--spacing) / 60 * 65);
    margin-bottom: calc(var(--spacing) / 60 * 65)
  }
  .children__text:first-child {
    margin-top: 0
  }
  .children__text:last-child {
    margin-bottom: 0
  }
}
@media only screen and (min-width:1200px) {
  .children__text {
    margin-top: var(--spacing);
    margin-bottom: var(--spacing)
  }
  .children__text:first-child {
    margin-top: 0
  }
  .children__text:last-child {
    margin-bottom: 0
  }
}
@media only screen and (min-width:1200px) {
  .children__text {
    font-size: 4.7rem;
    line-height: 1.17021em;
    letter-spacing: .02em
  }
}
@media only screen and (min-width:1920px) {
  .children__text {
    font-size: 6.1rem;
    line-height: 1.14754em;
    letter-spacing: -.02em
  }
}
.children__image {
  position: relative;
  padding-top: var(--spacing);
  display: inline-block;
  z-index: 2
}
.children__image__wrapper {
  position: relative;
  display: flex;
  justify-content: center
}
.children__image img, .children__image picture {
  max-height: calc(318 / 360 * 100vw);
  z-index: 2;
  position: relative
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .children__image img, .children__image picture {
    max-height: calc(100vh - 200px)
  }
}
@media only screen and (min-width:1920px) {
  .children__image img, .children__image picture {
    max-height: calc(100vh - 300px)
  }
}
.children__circle {
  z-index: 1;
  position: absolute;
  width: 80%;
  border-radius: 50%;
  background-color: #565440;
  left: 50%;
  top: 70%;
  -webkit-animation: circle 1s linear;
  animation: circle 1s linear;
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
  -webkit-animation-delay: calc(var(--scroll) * -1s);
  animation-delay: calc(var(--scroll) * -1s);
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  transform: translate(-50%, -50%);
  transform-origin: 0 0
}
.children__circle:after {
  content: "";
  display: block;
  padding-bottom: 100%
}
@media only screen and (min-width:1920px) {
  .children__circle {
    -webkit-animation-name: circle-xxxl;
    animation-name: circle-xxxl
  }
}
@-webkit-keyframes circle {
  to {
    top: 150%;
    width: 200vw
  }
}
@keyframes circle {
  to {
    top: 150%;
    width: 200vw
  }
}
@-webkit-keyframes circle-xxxl {
  to {
    top: 200%;
    width: 250vw
  }
}
@keyframes circle-xxxl {
  to {
    top: 200%;
    width: 250vw
  }
}
.comfort {
  position: relative;
  margin: 0 0 calc(var(--spacing) / 20 * 85);
  padding-top: calc(var(--spacing) * 11)
}
.comfort, .comfort + .gallery {
  z-index: 2
}
.comfort__items {
  display: flex;
  flex-direction: column
}
.comfort__items__left {
  position: relative;
  z-index: 1;
  margin-left: var(--spacing);
  margin-bottom: calc(var(--spacing) * -3)
}
.comfort__items__left picture {
  width: calc(160 / 360 * 100vw)
}
.comfort__items__right {
  position: relative;
  z-index: 0;
  margin-left: calc(var(--spacing) * 4);
  margin-right: var(--spacing)
}
.comfort__items__right picture {
  height: calc(var(--spacing) * 15);
  overflow: hidden
}
.comfort__title {
  left: var(--spacing);
  top: auto;
  bottom: calc(100% + var(--spacing) * 3)
}
.comfort__text--top, .comfort__title {
  position: absolute;
  right: var(--spacing)
}
.comfort__text--top {
  padding-top: 2px;
  top: 0;
  left: calc(180 / 360 * 100vw)
}
.comfort__text--number {
  position: absolute;
  top: calc(var(--spacing) * 15);
  transform: translateY(-100%);
  left: calc(var(--spacing) * -1);
  z-index: 1
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .comfort__items__right {
    margin-left: 30vw
  }
  .comfort__items__right picture {
    height: 100vh
  }
  .comfort__text--number {
    top: 100vh
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .comfort {
    padding-top: 0;
    margin: 0 0 0 var(--col-2)
  }
  .comfort .clip-box__content--image {
    padding-bottom: calc(var(--spacing) / 40 * 230)
  }
  .comfort__items {
    flex-direction: row;
    align-items: flex-end
  }
  .comfort__items__left {
    flex: 1;
    margin-left: 0;
    margin-bottom: 0;
    margin-right: var(--spacing-0-5);
    flex: 1 1 auto;
    width: auto
  }
  .comfort__items__left _:-ms-input-placeholder, :root .comfort__items__left {
    min-width: 0;
    max-width: 100%
  }
  @-moz-document url-prefix() {
    .comfort__items__left {
      max-width: none
    }
  }
  .comfort__items__left picture {
    width: var(--col-4)
  }
  .comfort__items__right {
    flex: 1;
    margin-left: var(--spacing-0-5);
    z-index: 1;
    flex: 0 0 var(--col-6);
    width: var(--col-6)
  }
  .comfort__items__right _:-ms-input-placeholder, :root .comfort__items__right {
    min-width: var(--col-6);
    max-width: var(--col-6)
  }
  @-moz-document url-prefix() {
    .comfort__items__right {
      max-width: var(--col-6)
    }
  }
  .comfort__items__right picture {
    height: calc(var(--spacing) / 40 * 420)
  }
  .comfort__title {
    left: -.59em;
    bottom: auto;
    top: 10px
  }
  .comfort__text {
    position: absolute;
    right: var(--col-3)
  }
  .comfort__text, .comfort__text--top {
    top: calc(100% + var(--spacing-0-5))
  }
  .comfort__text--top {
    left: 0;
    right: var(--col-1)
  }
  .comfort__text--number {
    top: calc(var(--spacing) / 40 * 420);
    left: -10px
  }
}
@media only screen and (min-width:980px) {
  .comfort {
    padding-top: var(--spacing-1-5);
    margin: 0 0 0 var(--col-3)
  }
  .comfort__items__left {
    flex: 0 0 auto
  }
  .comfort__items__left picture {
    width: calc(var(--col) * 3.5)
  }
  .comfort__items__right picture {
    height: calc(var(--spacing) * 12)
  }
  .comfort__title {
    left: calc(var(--col) * -3 + var(--spacing))
  }
  .comfort__text {
    left: 0;
    right: var(--col);
    top: calc(100% + var(--spacing) / 60 * 40)
  }
  .comfort__text--top {
    right: var(--col-2)
  }
  .comfort__text--number {
    top: calc(var(--spacing) * 12);
    left: -20px
  }
}
@media only screen and (min-width:1440px) {
  .comfort__title {
    left: calc(var(--col) * -2.5)
  }
  .comfort__text {
    max-width: 280px
  }
}
@media only screen and (min-width:1920px) {
  .comfort__text {
    max-width: 320px
  }
}
.gallery--lobby.gallery.gallery--rb {
  background-color: #565440
}
.gallery--lobby .gallery__images picture {
  height: calc(320 / 360 * 100vw)
}
.gallery--lobby .gallery__images img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.gallery--lobby .gallery__background {
  width: calc(240 / 360 * 100vw);
  height: calc(280 / 360 * 100vw)
}
.gallery--lobby .gallery__texts {
  margin-top: calc(40 / 360 * 100vw * -1);
  margin-left: calc(120 / 360 * 100vw)
}
@media only screen and (max-width:567px) and (max-aspect-ratio:13/9) {
  .gallery--lobby .gallery__text {
    width: calc(var(--col) * 5.5)
  }
}
@media (max-width:667px) and (min-aspect-ratio:13/9), only screen and (max-width:979px) and (max-height:415px) and (min-aspect-ratio:13/9) {
  .gallery--lobby .gallery__images picture {
    max-height: var(--viewport-height)
  }
  .gallery--lobby .gallery__background {
    width: 50vw;
    height: 75vh
  }
  .gallery--lobby .gallery__texts {
    margin-top: -75vh;
    margin-left: 50vw;
    width: 50vw;
    height: 75vh
  }
  .gallery--lobby .gallery__text {
    width: 50vw
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9) and (max-width:979px), only screen and (min-width:668px) and (min-height:416px) and (max-width:979px) {
  .gallery--lobby {
    padding-bottom: calc(var(--spacing) / 40 * 200)
  }
  .gallery--lobby .gallery__background {
    top: auto;
    left: auto;
    bottom: 0;
    width: var(--col-9);
    height: calc(var(--spacing) / 40 * 300);
    right: 0
  }
  .gallery--lobby .gallery__images {
    margin: 0
  }
  .gallery--lobby .gallery__images picture {
    height: calc(var(--spacing) * 12)
  }
  .gallery--lobby .gallery__images img {
    height: calc(100% + var(--spacing) * 2)
  }
  .gallery--lobby .gallery__texts {
    left: 0;
    right: auto;
    top: auto;
    bottom: 0;
    height: calc(var(--spacing) / 40 * 300);
    width: var(--col-9);
    margin-left: var(--col-3)
  }
  .gallery--lobby .gallery__text {
    width: var(--col-5);
    height: calc(var(--spacing) / 40 * 300)
  }
}
@media only screen and (min-width:980px) {
  .gallery--lobby {
    background-color: #565440
  }
  .gallery--lobby .gallery__background, .gallery--lobby .gallery__texts {
    top: auto;
    height: var(--col-6);
    max-height: calc(var(--spacing) * 11);
    width: var(--col-5);
    margin: 0
  }
  .gallery--lobby .gallery__text {
    height: var(--col-6);
    max-height: calc(var(--spacing) * 11)
  }
  .gallery--lobby .gallery__titles {
    z-index: 1
  }
  .gallery--lobby .gallery__images img, .gallery--lobby .gallery__images picture {
    height: var(--viewport-height)
  }
}
@media only screen and (min-width:1440px) {
  .gallery--lobby .gallery__text {
    width: calc(var(--spacing) * 2 + 300px)
  }
}
.advantages-item {
    position: relative;
    object-fit: contain;
}
.advantages-item--full {
  height: 100%
}
.advantages-item--full .advantages-item__title {
  max-width: none
}
.advantages-item__sizer {
  padding-top: 100%
}
.advantages-item__image, .advantages-item__image img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.advantages-item__image {
  overflow: hidden
}
.advantages-item__button {
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  outline: none;
  cursor: default;
  transition-property: opacity;
  transition-duration: .6s;
  transform: translateZ(0)
}
.advantages-item__button .btn {
  cursor: default
}
.advantages-item__button .btn, .advantages-item__button .btn__content, .advantages-item__button .icon {
  transform: translateZ(0)
}
.advantages-item a[href], .advantages-item a[href] .advantages-item__button, .advantages-item a[href] .advantages-item__button .btn {
  cursor: pointer
}
.advantages-item__hover {
  position: absolute;
  overflow: hidden;
  pointer-events: none;
  left: -1px;
  top: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  padding: var(--spacing) var(--spacing-2) var(--spacing) var(--spacing);
  background: #2c2926;
  transition-timing-function: cubic-bezier(.25, .74, .22, .99);
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
  -webkit-clip-path: circle(0 at 50% 50%);
  clip-path: circle(0 at 50% 50%)
}
.advantages-item__hover__image, .advantages-item__hover__image:after, .advantages-item__hover__image:before, .advantages-item__hover__image img {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transform: none !important
}
.advantages-item__hover__image {
  mix-blend-mode: multiply;
  opacity: .6;
  overflow: hidden;
  transform: translateZ(0)
}
.advantages-item__hover__image:before {
  background: linear-gradient(225deg, rgba(86, 84, 64, 0) 50%, #565440);
  opacity: .3;
  z-index: 1
}
.advantages-item__hover__image:after {
  background: #000;
  opacity: .3;
  z-index: 1
}
.advantages-item__hover__description {
  position: relative;
  z-index: 2;
  margin: 0;
  transition-property: opacity, transform;
  will-change: transform, opacity;
  transform: translateY(40px);
  opacity: 0
}
.advantages-item__hover__description b {
  display: inline-block;
  padding: 0 4px;
  opacity: .4
}
.advantages-item__title {
  position: absolute;
  z-index: 2;
  pointer-events: none;
  left: var(--spacing);
  right: var(--spacing);
  bottom: var(--spacing);
  max-width: 160px;
  transform: translateZ(0)
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .advantages-item__title {
    max-width: 220px
  }
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .advantages-item__hover__image img, .advantages-item__image img {
    height: calc(100% + var(--spacing) * 1)
  }
}
.advantages-item--show-description .advantages-item__hover, .has-hover .advantages-item:hover .advantages-item__hover, .no-hover .advantages-item__button:focus ~ .advantages-item__hover {
  transition-duration: .5s;
  -webkit-clip-path: circle(70.71068% at 50% 50%);
  clip-path: circle(70.71068% at 50% 50%)
}
.advantages-item--show-description .advantages-item__hover .advantages-item__hover__description, .has-hover .advantages-item:hover .advantages-item__hover .advantages-item__hover__description, .no-hover .advantages-item__button:focus ~ .advantages-item__hover .advantages-item__hover__description {
  transition-duration: .8s;
  transition-delay: .1s;
  transform: translateY(0);
  opacity: 1
}
.advantages-item--show-description .advantages-item__button, .has-hover .advantages-item:hover .advantages-item__button, .no-hover .advantages-item__button:focus .btn {
  opacity: 0
}
.ui-dark .advantages-item__title {
  color: #e9e4dc
}
.has-hover .advantages-item--project.advantages-item:hover .advantages-item__hover, .no-hover .advantages-item--project .advantages-item__button:focus ~ .advantages-item__hover {
  transition-duration: 0s;
  -webkit-clip-path: none;
  clip-path: none
}
.advantages-item--project {
  overflow: hidden
}
.advantages-item--project.is-active .advantages-item__image, .advantages-item--project:hover:active .advantages-item__image, .has-hover .advantages-item--project:hover .advantages-item__image {
  transform: scale(1.05)
}
.advantages-item--project.is-active .advantages-item__button, .advantages-item--project.is-active .advantages-item__button .btn, .advantages-item--project:hover:active .advantages-item__button, .advantages-item--project:hover:active .advantages-item__button .btn, .has-hover .advantages-item--project:hover .advantages-item__button, .has-hover .advantages-item--project:hover .advantages-item__button .btn {
  opacity: 1 !important
}
.advantages-item--project .advantages-item__hover {
  display: none
}
.advantages-item--project .advantages-item__image {
  transition-property: transform
}
@media only screen and (min-width:568px) and (max-aspect-ratio:13/9), only screen and (min-width:668px) and (min-height:416px), only screen and (min-width:980px) {
  .advantages-item--project .advantages-item__title {
    left: calc(var(--spacing) / 2);
    bottom: calc(var(--spacing) / 2)
  }
}
@media only screen and (min-width:1200px) {
  .advantages-item--project .advantages-item__title {
    font-size: 2.7rem;
    line-height: 1.2963em;
    letter-spacing: .02em;
    font-weight: 300
  }
}
.benefits-gallery {
    background: #2c2926;
/*
    padding-left: var(--spacing);
	padding-right: var(--spacing);
*/
}
.benefits-gallery.gallery--rb .gallery__buttons {
    bottom: 0px;
    top: auto;
}