.plan-hoverable,
.plan-marker,
.plan-marker__content {
  transition-duration: 0.6s;
  transition-timing-function: cubic-bezier(0.25, 0.74, 0.22, 0.99);
}
.plan-marker--pin .plan-marker__text {
  --text-box-edge: cap;
  --baseline-size: 1cap;
  --fos: -0.1255em;
  --foe: -0.1675em;
  font-family:
    Onest,
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 500;
}
.is-win .plan-marker--pin .plan-marker__text,
.plan-marker--pin .is-win .plan-marker__text {
  --fos: -0.1255em;
  --foe: -0.1675em;
}
.plan-marker--pin .plan-marker__text {
  --lh: var(--xxl, 1.2727272727em) var(--n-xxl, 1.3em);
  font-size: var(--xxl, calc(var(--scale-text-rem) * 1.1))
    var(--n-xxl, calc(var(--scale-text-rem) * 1));
  letter-spacing: var(--xxl, 0) var(--n-xxl, 0.01em);
  line-height: var(--lh);
  text-transform: uppercase;
}
.cursor {
  --cursor-size: calc(var(--scale-px) * 10);
  --cursor-z-index: 1;
  --cursor-background: var(--t-text);
  --cursor-offset-x: 0;
  --cursor-offset-y: 0;
  background: var(--cursor-background);
  border-radius: 50%;
  height: var(--cursor-size);
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transition: opacity 0.3s cubic-bezier(0.7, 0, 0.3, 1);
  width: var(--cursor-size);
  z-index: var(--cursor-z-index);
}
.cursor:not(.cursor--arrow, .cursor--button).cursor--hidden {
  opacity: 0;
}
.cursor--hidden {
  pointer-events: none;
}
.cursor--clickable:not(.cursor--hidden) .btn:not(.is-disabled),
.cursor--clickable:not(.cursor--hidden):not(:has(.is-disabled)) {
  cursor: pointer;
  pointer-events: auto;
}
.cursor--extended:before {
  content: "";
  height: calc(100% + 30px);
  left: -30px;
  position: absolute;
  top: -40px;
  width: calc(100% + 30px);
}
.cursor--arrow {
  --cursor-size: auto;
  --cursor-background: none;
  transition: none;
}
.cursor--arrow .cursor__button {
  display: none;
  transform: translate(-50%, -83%);
  transition-property: color, opacity;
}
.cursor--arrow .cursor__button .btn__content,
.cursor--arrow .cursor__button:after {
  transition: opacity 0.3s cubic-bezier(0.7, 0, 0.3, 1);
}
.cursor--arrow .cursor__button.is-disabled {
  opacity: 0;
}
.cursor--arrow.cursor--left .cursor__button--left,
.cursor--arrow.cursor--right .cursor__button--right {
  display: inline-flex;
}
.cursor--arrow.cursor--hidden .cursor__button .btn__content,
.cursor--arrow.cursor--hidden .cursor__button:after {
  opacity: 0;
}
.cursor--counter {
  --cursor-size: var(--grid-col);
  --cursor-offset-x: -50%;
  --cursor-offset-y: -80%;
}
.plan {
  --plan-fit: contain;
  --plan-position: 50% 50%;
  --plan-ratio: unset;
  aspect-ratio: var(--plan-ratio);
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-areas: "layer";
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  position: relative;
}
.plan:has(.plan__layer) {
  aspect-ratio: unset;
}
.plan__layer {
  aspect-ratio: var(--plan-ratio);
  grid-area: layer;
  height: 100%;
  min-height: 0;
  position: relative;
  width: 100%;
}
.plan__layer:where(:not(.plan__layer--svg)) {
  z-index: -1;
}
.plan__layer ~ .plan__layer {
  z-index: 0;
}
.plan__layer--image img,
.plan__layer--image picture,
.plan__layer--svg svg {
  display: block;
  height: 100%;
  width: 100%;
}
.plan__layer--image img {
  -o-object-fit: var(--plan-fit);
  object-fit: var(--plan-fit);
  -o-object-position: var(--plan-position);
  object-position: var(--plan-position);
}
.plan__layer--svg {
  pointer-events: none;
}
.plan__layer--svg :where([data-anchor]) {
  visibility: hidden;
}
.plan__layer--svg :where([data-hoverable]) {
  visibility: hidden;
}
.plan__layer--svg :where(:not(.plan-hoverable)) {
  pointer-events: none;
}
.plan__layer--svg a {
  cursor: default;
  outline: none;
}
.plan--cover {
  --plan-fit: cover;
}
.plan--center .plan__layer {
  height: min(100%, 100svh);
  width: min(100%, 100vw);
}
@media (max-width: 567px) and (max-aspect-ratio: 13/9),
  (max-width: 667px) and (min-aspect-ratio: 13/9),
  (max-width: 979px) and (max-height: 415px) and (min-aspect-ratio: 13/9) {
  .plan--mobile-scroll {
    -webkit-overflow-scrolling: touch;
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
  }
  .plan--mobile-scroll .plan__layer,
  .plan--mobile-scroll .plan__layer svg {
    aspect-ratio: var(--plan-ratio);
    height: 100svh;
    width: auto;
  }
  .plan--mobile-scroll .plan__layer img {
    width: auto;
  }
  .plan--mobile-scroll .plan__layer--svg {
    overflow: hidden;
    width: -moz-fit-content;
    width: fit-content;
  }
  .plan--mobile-scroll .svg-fix,
  .plan--mobile-scroll .svg-fix _::-webkit-full-page-media,
  .plan--mobile-scroll .svg-fix _:future {
    will-change: unset;
  }
}
.plan-hoverable {
  outline: none;
  pointer-events: all;
  transition-property: fill, stroke, opacity;
  visibility: visible;
}
.plan-hoverable path,
.plan-hoverable polygon,
.plan-hoverable rect {
  fill: inherit;
  pointer-events: all;
}
.plan-hoverable--disabled {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.plan-hoverable--hidden {
  opacity: 0;
}
.plan-hoverable--clickable {
  cursor: pointer;
}
.plan-hoverable {
  fill: var(--t-background);
}
.plan-hoverable--disabled {
  fill: rgba(var(--t-primary-rgb), 0);
}
.plan-hoverable--hovered {
  fill: rgba(var(--t-primary-rgb), 0.15);
}
.plan-hoverable--active {
  fill: rgba(var(--t-primary-rgb), 0.1);
}
.plan--visual-search .plan-hoverable {
  fill: rgba(37, 51, 85, 0.4);
}
.plan--visual-search .plan-hoverable--clickable {
  fill: hsla(0, 0%, 100%, 0);
}
.plan--visual-search .plan-hoverable--clickable.plan-hoverable--hovered {
  fill: hsla(0, 0%, 100%, 0.4);
}
.plan-marker {
  cursor: default;
  left: 0;
  position: absolute;
  top: 0;
  transition-property: opacity;
}
.plan-marker__content {
  place-content: center;
  text-align: center;
  transition-property: color, background-color, border-color;
}
.plan-marker__icon {
  display: block;
}
.plan-marker:focus-visible {
  outline: 3px auto currentColor;
}
.plan-marker--hidden {
  opacity: 0;
  pointer-events: none;
}
.plan-marker--clickable {
  cursor: pointer;
}
.plan-marker--office .plan-marker__content,
.plan-marker--office-toggle .plan-marker__content {
  --text-box-edge: cap;
  --baseline-size: 1cap;
  --fos: -0.1255em;
  --foe: -0.1675em;
  background: var(--t-background);
  border: 1px solid var(--t-heading);
  border-radius: var(--md, calc(var(--scale-px) * 5))
    var(--n-md, calc(var(--scale-px) * 2.41));
  border-width: var(--md, calc(var(--scale-px) * 1))
    var(--n-md, calc(var(--scale-px) * 0.41));
  color: var(--t-heading);
  font-family:
    Onest,
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 500;
  padding: var(--md, calc(var(--scale-px) * 5) calc(var(--scale-px) * 6))
    var(--n-md, calc(var(--scale-px) * 2.81) calc(var(--scale-px) * 2.72));
}
.is-win .plan-marker--office .plan-marker__content,
.is-win .plan-marker--office-toggle .plan-marker__content {
  --fos: -0.1255em;
  --foe: -0.1675em;
}
.plan-marker--office .plan-marker__content,
.plan-marker--office-toggle .plan-marker__content {
  --lh: var(--xxl, 1.2727272727em)
    var(--n-xxl, var(--md, 1.3em) var(--n-md, 1.2641509434em));
  font-size: var(--xxl, calc(var(--scale-text-rem) * 1.1))
    var(
      --n-xxl,
      var(--md, calc(var(--scale-text-rem) * 1))
        var(--n-md, calc(var(--scale-text-rem) * 0.53))
    );
  letter-spacing: var(--xxl, 0) var(--n-xxl, var(--md, 0.01em) var(--n-md, 0));
  line-height: var(--lh);
  text-transform: uppercase;
}
.plan-marker--office-toggle.plan-marker--disabled .plan-marker__content,
.plan-marker--office.plan-marker--disabled .plan-marker__content {
  border-color: rgba(var(--t-heading-rgb), 0.2);
  color: rgba(var(--t-heading-rgb), 0.2);
}
.plan-marker--office-toggle.plan-marker--hovered,
.plan-marker--office.plan-marker--hovered {
  z-index: 2;
}
.plan-marker--office-toggle.plan-marker--active .plan-marker__content,
.plan-marker--office.plan-marker--active .plan-marker__content {
  background: var(--t-heading);
  border-color: var(--t-heading);
  color: var(--t-background);
}
.plan-marker--office-reserved .plan-marker__content {
  background: var(--t-background);
  color: var(--t-heading);
}
.plan-marker--office-reserved.plan-marker--hovered .plan-marker__content {
  background: var(--t-small);
}
.plan-marker--office-toggle .plan-marker__content {
  padding: calc(var(--scale-px) * 3);
}
.plan-marker--office-toggle.plan-marker--active .plan-marker__icon {
  transform: rotate(45deg);
}
.plan-marker--office-fixed .plan-marker__content,
.plan-marker--office-toggle .plan-marker__content {
  align-items: center;
  display: flex;
  height: calc(var(--scale-text-px) * 20);
  justify-content: center;
  padding-left: 0;
  padding-right: 0;
  width: calc(var(--scale-text-px) * 20);
}
.plan-marker--office-fixed-wide .plan-marker__content {
  width: calc(var(--scale-text-px) * 30);
}
.plan-marker--street {
  color: var(--c-dark-grey);
}
.plan-marker--street .plan-marker__text {
  --lh: 1.3333333333em;
  font-size: calc(var(--scale-text-rem) * 0.9);
  line-height: var(--lh);
  transform: rotate(calc(var(--plan-marker-angle) * -1));
  transform-origin: 50% 0;
}
.plan-marker--street[data-placement="top"] .plan-marker__text {
  transform-origin: 50% 100%;
}
.plan-marker--street.plan-marker--active {
  color: var(--t-heading);
}
.plan-marker--street-small {
  color: var(--t-text);
}
.plan-marker--street-small .plan-marker__text {
  --text-box-edge: cap;
  --baseline-size: 1cap;
  --fos: -0.1255em;
  --foe: -0.1675em;
  font-family:
    Onest,
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 500;
}
.is-win .plan-marker--street-small .plan-marker__text {
  --fos: -0.1255em;
  --foe: -0.1675em;
}
.plan-marker--street-small .plan-marker__text {
  --lh: var(--xxl, 1.2727272727em) var(--n-xxl, 1.3em);
  font-size: var(--xxl, calc(var(--scale-text-rem) * 1.1))
    var(--n-xxl, calc(var(--scale-text-rem) * 1));
  letter-spacing: var(--xxl, 0) var(--n-xxl, 0.01em);
  line-height: var(--lh);
  text-transform: uppercase;
}
.plan-marker--metro .plan-marker__text,
.plan-marker--poi .plan-marker__text {
  --lh: 1.3333333333em;
  font-size: calc(var(--scale-text-rem) * 0.9);
  left: 50%;
  line-height: var(--lh);
  position: absolute;
  top: calc(100% + (var(--scale-px) * 9));
  transform: translateX(-50%);
  white-space: nowrap;
}
.plan-marker--metro {
  --marker-border: #606060;
  --marker-fill: #000;
  --marker-text: #8d8d8d;
}
.plan-marker--metro.plan-marker--active {
  --marker-border: #fff;
  --marker-fill: #fff;
  --marker-text: #000;
}
.plan-marker--metro.plan-marker--active .plan-marker__text {
  color: var(--t-heading);
}
.plan-marker--metro--top .plan-marker__text {
  bottom: calc(100% + (var(--scale-px) * 9));
  top: auto;
}
.plan-marker--poi--right .plan-marker__text {
  left: calc(100% + (var(--scale-px) * 4));
  top: 50%;
  transform: translateY(-50%);
}
.plan-marker--poi--bold {
  color: var(--t-heading);
}
.plan-marker--poi--bold .plan-marker__text {
  --lh: 1.2727272727em;
  font-size: calc(var(--scale-text-rem) * 1.1);
  line-height: var(--lh);
}
.plan-marker--main .plan-marker__icon,
.plan-marker--sales .plan-marker__icon {
  bottom: 0;
  height: var(--md, calc(var(--scale-px) * 73))
    var(--n-md, calc(var(--scale-px) * 61.7692307692));
  position: absolute;
  right: 0;
  width: var(--md, calc(var(--scale-px) * 102))
    var(--n-md, calc(var(--scale-px) * 86.3076923077));
}
.plan-marker--main-right .plan-marker__icon {
  left: 0;
  right: auto;
}
.plan-marker--sales .plan-marker__text {
  --text-box-edge: cap;
  --baseline-size: 1cap;
  --fos: -0.1255em;
  --foe: -0.1675em;
  bottom: var(--md, calc(var(--scale-px) * 12))
    var(--n-md, calc(var(--scale-px) * 10.1538461538));
  font-family:
    Onest,
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 500;
  height: var(--md, calc(var(--scale-px) * 50))
    var(--n-md, calc(var(--scale-px) * 42.3076923077));
  position: absolute;
  right: var(--md, calc(var(--scale-px) * 12))
    var(--n-md, calc(var(--scale-px) * 10.1538461538));
  text-align: left;
  width: var(--md, calc(var(--scale-px) * 79))
    var(--n-md, calc(var(--scale-px) * 66.8461538462));
}
.is-win .plan-marker--sales .plan-marker__text {
  --fos: -0.1255em;
  --foe: -0.1675em;
}
.plan-marker--sales .plan-marker__text {
  --lh: var(--xxl, 1.2727272727em)
    var(--n-xxl, var(--md, 1.3em) var(--n-md, 1.2674543502em));
  font-size: var(--xxl, calc(var(--scale-text-rem) * 1.1))
    var(
      --n-xxl,
      var(--md, calc(var(--scale-text-rem) * 1))
        var(--n-md, calc(var(--scale-text-rem) * 0.931))
    );
  letter-spacing: var(--xxl, 0) var(--n-xxl, var(--md, 0.01em) var(--n-md, 0));
  line-height: var(--lh);
  text-transform: uppercase;
}
.plan-marker--pin .plan-marker__content {
  align-items: center;
  background: var(--t-background);
  border-radius: calc(var(--scale-px) * 5);
  color: var(--t-heading);
  display: flex;
  height: calc(var(--scale-px) * 30);
  justify-content: center;
  width: calc(var(--scale-px) * 30);
}
.plan-marker--pin .plan-marker__text {
  color: var(--t-text);
  left: 50%;
  position: absolute;
  top: calc(100% + (var(--scale-px) * 15));
  transform: translateX(-50%);
  white-space: nowrap;
}
.plan-marker--pin .plan-marker__badge {
  align-items: center;
  background: var(--c-dark-grey);
  border-radius: calc(var(--scale-px) * 20);
  color: var(--c-white);
  display: flex;
  height: calc(var(--scale-px) * 20);
  justify-content: center;
  margin: calc(var(--scale-px) * -10) calc(var(--scale-px) * -10) 0 0;
  position: absolute;
  right: 0;
  top: 0;
  white-space: nowrap;
  width: calc(var(--scale-px) * 20);
}
.plan-marker--pin.plan-marker--hovered .plan-marker__content {
  background: var(--t-heading);
  color: var(--t-background);
}
.plan-marker--pin:has(.plan-marker__text):before {
  content: "";
  inset: 0 0 -15px 0;
  position: absolute;
}
.plan-marker--pin--text-top .plan-marker__text {
  --text-box-edge: cap;
  --baseline-size: 1cap;
  --fos: -0.1255em;
  --foe: -0.1675em;
  bottom: calc(100% + (var(--scale-px) * 10));
  color: var(--t-background);
  font-family:
    Onest,
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
  font-weight: 500;
  top: auto;
}
.is-win .plan-marker--pin--text-top .plan-marker__text {
  --fos: -0.1255em;
  --foe: -0.1675em;
}
.plan-marker--pin--text-top .plan-marker__text {
  --lh: 1.3333333333em;
  font-size: calc(var(--scale-text-rem) * 0.9);
  letter-spacing: 0.02em;
  line-height: var(--lh);
  text-transform: uppercase;
}
.plan-marker--pin--text-top:has(.plan-marker__text):before {
  content: "";
  inset: -10px 0 0 0;
  position: absolute;
}
.ui-dark .plan-marker--pin .plan-marker__content {
  border: 1px solid var(--t-background);
}
.ui-dark .plan-marker--pin.plan-marker--hovered .plan-marker__content {
  border-color: var(--c-dark-grey);
}
.plan-marker--no-hover {
  pointer-events: none;
}
.plan-mobile-scroll-indicator {
  align-items: center;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: rgba(var(--t-primary-rgb), 0.15);
  border-radius: 50px;
  color: var(--t-primary);
  display: flex;
  height: calc(var(--scale-px) * 50);
  justify-content: center;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 57%;
  transform: translate(-50%, -50%);
  width: calc(var(--scale-px) * 50);
  z-index: 1;
}
.l-intro-logo {
  height: 200svh;
  left: 0;
  pointer-events: none !important;
  position: absolute;
  top: 0;
  width: 100%;
}
.l-intro-logo .sticky {
  --sticky-under-next-distance: 150svh;
}
.l-intro-logo__logo {
  height: auto;
  left: var(--spacing-layout);
  position: absolute;
  top: var(--md, 50svh) var(--n-md, 42.1212121212svh);
  transform: var(--md, translateY(-50%)) var(--n-md, none);
  transform-origin: 0 0;
  width: calc(100% - var(--spacing-layout) * 2);
}
.l-intro-logo--with-promo .l-intro-logo__logo {
  top: var(--md, 50svh) var(--n-md, calc(var(--scale-px) * 208));
}
.l-intro__content {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  height: 100svh;
  padding-top: var(--md, 0) var(--n-md, 24.2424242424svh);
  position: relative;
}
.l-intro__content:after,
.l-intro__content:before {
  display: none;
}
.l-intro__content-subtitle {
  margin-bottom: var(--md, 0) var(--n-md, 12.1212121212svh);
}
.l-intro__content-promo {
  margin-bottom: calc(var(--spacing-layout) + var(--cookie-height));
  margin-left: auto;
  position: relative;
  width: var(--md, calc(var(--grid-col) * 3 + var(--grid-gutter) * 2))
    var(--n-md, calc(var(--grid-col) * 9 + var(--grid-gutter) * 8));
}
.l-intro__next {
  bottom: var(--cookie-height);
  position: absolute;
  right: 0;
}
@media (min-width: 568px) and (max-width: 667px) and (max-aspect-ratio: 13/9),
  (min-width: 668px) and (max-aspect-ratio: 10/11),
  (min-width: 668px) and (min-height: 416px),
  (min-width: 980px) {
  .l-intro {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .l-intro__content {
    display: block;
    height: auto;
    position: static;
  }
  .l-intro__content-subtitle {
    left: 50%;
    position: absolute;
    top: var(--spacing-layout);
    transform: translateX(-50%);
  }
  .l-intro__content-text {
    left: calc(50% + var(--grid-gutter) / 2);
    position: absolute;
    top: 65%;
    transform: translateY(-50%);
    width: calc(var(--grid-col) * 5 + var(--grid-gutter) * 4);
  }
  .l-intro__content-promo {
    bottom: var(--spacing-layout);
    margin-bottom: 0;
    margin-left: 0;
    position: absolute;
    right: var(--spacing-layout);
  }
}
.l-intro--with-promo .l-intro__content {
  padding-top: var(--md, 0) var(--n-md, calc(var(--scale-px) * 110));
}
.l-intro--with-promo .l-intro__next {
  left: 0;
  right: auto;
}
.l-intro-promo {
  --content-padding: var(--md, calc(var(--scale-px) * 20))
    var(--n-md, calc(var(--scale-px) * 15));
  align-items: stretch;
  aspect-ratio: var(--md, 2.6153846154) var(--n-md, 2.3636363636);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.l-intro-promo__title {
  padding: var(--content-padding);
  position: relative;
}
.l-intro-promo__text {
  padding: 0 calc((var(--scale-px) * 40) + var(--content-padding))
    var(--content-padding) var(--content-padding);
  position: relative;
}
.l-intro-promo__background {
  border-radius: calc(var(--scale-px) * 5) calc(var(--scale-px) * 5) 0
    calc(var(--scale-px) * 5);
  clip-path: polygon(
    0 0,
    100% 0,
    100% calc(100% + (var(--scale-px) * -45)),
    calc(100% + (var(--scale-px) * -0.6698729811))
      calc(100% + (var(--scale-px) * -42.5)),
    calc(100% + (var(--scale-px) * -2.5))
      calc(100% + (var(--scale-px) * -40.6698729811)),
    calc(100% + (var(--scale-px) * -5)) calc(100% + (var(--scale-px) * -40)),
    calc(100% + (var(--scale-px) * -35)) calc(100% + (var(--scale-px) * -40)),
    calc(100% + (var(--scale-px) * -37.5))
      calc(100% + (var(--scale-px) * -39.3301270189)),
    calc(100% + (var(--scale-px) * -39.3301270189))
      calc(100% + (var(--scale-px) * -37.5)),
    calc(100% + (var(--scale-px) * -40)) calc(100% + (var(--scale-px) * -35)),
    calc(100% + (var(--scale-px) * -40)) calc(100% + (var(--scale-px) * -5)),
    calc(100% + (var(--scale-px) * -40.6698729811))
      calc(100% + (var(--scale-px) * -2.5)),
    calc(100% + (var(--scale-px) * -42.5))
      calc(100% + (var(--scale-px) * -0.6698729811)),
    calc(100% + (var(--scale-px) * -45)) 100%,
    0 100%
  );
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.l-intro-promo__button {
  bottom: 0;
  position: absolute;
  right: 0;
}
.l-intro-background-mobile {
  --iframe-width: 100vw;
  --iframe-height: 100vw/1093 * 1345;
}
.l-intro-background-mobile iframe {
  --aspect-ratio: 1093/1345;
  position: relative;
  z-index: 1;
}
.l-impsulse-intro {
  overflow: hidden;
}
.l-impsulse-intro img {
  height: var(--md, 100svh) var(--n-md, auto);
  -o-object-fit: cover;
  object-fit: cover;
}
.l-impsulse-card {
  --image-height: calc(
    (
        100vw - var(--container-h-padding-left) -
          var(--container-h-padding-right) - var(--grid-gutter)
      ) *
      0.5 * 0.8333428571
  );
  --content-height: min(100svh, var(--image-height) + var(--spacing-layout));
  margin-top: var(
      --md,
      calc((100svh - var(--content-height)) * -1 + 50svh + var(--spacing) * 7)
    )
    var(--n-md, calc(var(--spacing) * 8));
}
.no-scroll-smooth .l-impsulse-card {
  margin-top: var(
      --md,
      calc((100svh - var(--content-height)) * -1 + var(--spacing) * 7)
    )
    var(--n-md, calc(var(--spacing) * 8));
}
.l-impsulse-card {
  --sticky-min-height: var(--md, calc(100svh + var(--image-height)))
    var(--n-md, 100svh);
}
.l-impsulse-card__sticky {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  height: var(--md, 100svh) var(--n-md, auto);
  justify-content: flex-end;
}
.l-impsulse-card__sticky:before {
  content: "";
  height: calc(var(--content-height));
  position: absolute;
  width: 5px;
}
.l-impulse-card-content {
  display: flex;
  flex-direction: column;
}
.l-impulse-card-content__end {
  margin-top: var(--md, auto) var(--n-md, calc(var(--scale-px) * 120));
}
.l-impulse-card-images {
  position: relative;
}
.l-impulse-card-images picture {
  max-height: calc(100svh - var(--spacing-layout) * 2);
}
.l-impulse-card-images picture ~ picture {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.l-impsulse-text br {
  display: var(--md, inline) var(--n-md, none);
}
.l-format-image {
  border-radius: calc(var(--scale-px) * 5);
  margin-left: var(--md, 0) var(--n-md, var(--spacing-layout));
  margin-right: var(--md, 0) var(--n-md, var(--spacing-layout));
  overflow: hidden;
  position: relative;
  width: var(--md, 100%) var(--n-md, calc(100% - var(--spacing-layout) * 2));
  z-index: 1;
}
.l-format-image img {
  display: block;
  margin-bottom: var(--md, -28.5714285714%) var(--n-md, 0);
  -o-object-fit: cover;
  object-fit: cover;
  position: relative;
}
.has-scroll-smooth .l-format-image {
  margin-bottom: calc(var(--spacing) * 6);
}
.l-format-section {
  min-height: calc(var(--items-count) * 100svh + 100svh);
}
.l-format-section__background {
  width: 100%;
}
.l-format-section__background img {
  display: block;
  height: auto;
  width: 100%;
}
.l-format-section__nav {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media (max-width: 567px) and (max-aspect-ratio: 13/9),
  (max-width: 667px) and (min-aspect-ratio: 13/9),
  (max-width: 979px) and (max-height: 415px) and (min-aspect-ratio: 13/9) {
  .l-format-section__background {
    height: calc(100svh - 240px);
    position: relative;
  }
  .l-format-section__background:after {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0), #fff);
    bottom: 0;
    content: "";
    height: 100px;
    left: 0;
    position: absolute;
    width: 100%;
  }
  .l-format-section__item {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    height: 100svh;
    justify-content: flex-end;
    padding-bottom: 100px;
  }
}
@media (min-width: 568px) and (max-width: 667px) and (max-aspect-ratio: 13/9),
  (min-width: 668px) and (max-aspect-ratio: 10/11),
  (min-width: 668px) and (min-height: 416px),
  (min-width: 980px) {
  .l-format-section__background {
    bottom: 0;
    height: 100%;
    left: 0;
    min-height: calc(100svh + var(--spacing) * 6);
    position: absolute;
    width: 100%;
  }
  .l-format-section__background img {
    aspect-ratio: unset;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
  }
  .l-format-section__item {
    height: auto;
    padding-top: calc(50svh - 2em);
  }
  .l-format-section__tint {
    top: calc(50% + 50svh - 2em);
  }
}
.l-harmony {
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-areas: "harmony_content";
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.l-harmony__layer {
  align-self: start;
  grid-area: harmony_content;
  position: relative;
}
.l-harmony__layer--bottom {
  align-self: end;
}
.l-harmony__layer-background img {
  min-height: 100svh;
  -o-object-fit: cover;
  object-fit: cover;
}
@media (max-width: 567px) and (max-aspect-ratio: 13/9),
  (max-width: 667px) and (min-aspect-ratio: 13/9),
  (max-width: 979px) and (max-height: 415px) and (min-aspect-ratio: 13/9) {
  .l-harmony--under-next {
    margin-bottom: -100svh;
  }
  .l-harmony--under-next:after {
    content: "";
    display: block;
    height: 100svh;
    width: 100%;
  }
  .l-harmony--under-next .l-harmony__layer {
    position: sticky;
    top: 0;
  }
  .l-harmony--under-next .l-harmony__layer-background {
    height: 100svh;
  }
  .l-harmony--under-next .l-harmony__layer--spacing {
    padding-top: 100svh;
    position: relative;
  }
}
.l-harmony-content {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.l-harmony-card {
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: rgba(var(--c-grey-rgb), 0.7);
  border-radius: calc(var(--scale-px) * 5);
}
.l-harmony-card__image {
  margin-left: var(--md, 0) var(--n-md, calc(var(--spacing-layout) * -1));
  width: var(--md, 100%) var(--n-md, calc(100% + var(--spacing-layout) * 2));
}
.l-life-top {
  position: relative;
  z-index: 2;
}
.l-life-text {
  height: var(--md, 2.13em) var(--n-md, auto);
  margin-bottom: var(--md, 0) var(--n-md, calc(var(--scale-px) * 80));
  position: relative;
  z-index: 1;
}
.l-life-text-bottom {
  margin-bottom: var(--md, calc(-1.5em + 50svh))
    var(--n-md, calc(var(--scale-px) * 40));
  position: relative;
  z-index: 1;
}
@media (min-width: 568px) and (max-width: 667px) and (max-aspect-ratio: 13/9),
  (min-width: 668px) and (max-aspect-ratio: 10/11),
  (min-width: 668px) and (min-height: 416px),
  (min-width: 980px) {
  .l-life-layout-right {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
  }
  .l-life-layout-right__button {
    left: calc(var(--grid-gutter) * 0.5);
    position: absolute;
    right: calc(var(--grid-gutter) * 0.5);
    top: 50%;
    transform: translateY(-50%);
  }
}
.l-life-cards {
  margin-bottom: var(--md, calc(var(--spacing) * 10))
    var(--n-md, calc(var(--spacing) * 12));
  margin-top: var(--md, calc(var(--spacing) * 10))
    var(--n-md, calc(var(--spacing) * 12));
}
.l-life-cards,
.l-life-cards__list {
  position: relative;
}
@media (min-width: 568px) and (max-width: 667px) and (max-aspect-ratio: 13/9),
  (min-width: 668px) and (max-aspect-ratio: 10/11),
  (min-width: 668px) and (min-height: 416px),
  (min-width: 980px) {
  .l-life-cards__list {
    display: flex;
    gap: var(--grid-gutter);
  }
  .l-life-cards__list > li {
    flex: 1;
  }
}
.l-location-card {
  align-items: stretch;
  aspect-ratio: var(--md, 0.8095238095) var(--n-md, 0.8125);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: var(--t-background-alt);
  border-radius: calc(var(--scale-px) * 5);
  display: flex;
  flex-direction: column;
  padding: var(--spacing-layout);
}
.l-location-card__top {
  margin-bottom: var(--md, calc(var(--scale-px) * 45))
    var(--n-md, calc(var(--scale-px) * 40));
}
.l-location-card__bottom {
  margin-top: auto;
}
.l-life-map-sticky {
  --sticky-min-height: 125svh;
  margin-top: var(--md, calc(53.4246575342vw - 150svh)) var(--n-md, 0);
}
.has-scroll-smooth .l-life-map-sticky {
  margin-top: var(--md, calc(53.4246575342vw - 100svh)) var(--n-md, 0);
}
.l-life-map {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  height: 100svh;
  justify-content: flex-end;
  position: relative;
}
.l-life-map__button {
  bottom: 0;
  left: var(--spacing-layout);
  position: absolute;
  right: var(--spacing-layout);
}
.l-life-cards-background {
  height: var(--md, 52.9411764706vw) var(--n-md, 164.1025641026vw);
  left: calc(var(--container-h-padding-left) * -1);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100vw;
}
.l-life-cards-background img {
  display: block;
  height: auto;
  width: 100%;
}
.l-life-cards-background:after {
  background: linear-gradient(1turn, #000, transparent 50%, #000);
  content: "";
  display: var(--md, block) var(--n-md, none);
  inset: -1px;
  position: absolute;
}
.l-life-cards-background--fade:after {
  background: var(
      --md,
      linear-gradient(180deg, #000 0, transparent 27.96%),
      linear-gradient(180deg, transparent 67.44%, #000 100%)
    )
    var(
      --n-md,
      linear-gradient(180deg, #000 0, transparent 39.44%),
      linear-gradient(180deg, transparent 58.83%, #000 100%)
    );
  display: block;
}
.l-life-cards-background--about {
  height: var(--md, 73.9726027397vw) var(--n-md, 153.8461538462vw);
  left: var(--md, 13.0136986301vw) var(--n-md, -26.9230769231vw);
  width: var(--md, 73.9726027397vw) var(--n-md, 153.8461538462vw);
}
.l-people-intro {
  display: grid;
  grid-auto-rows: 1fr;
  grid-template-areas: "people_intro";
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
.l-people-intro__layer {
  align-self: start;
  grid-area: people_intro;
  position: relative;
}
.l-people-intro__layer--background:after {
  background: var(
      --md,
      linear-gradient(180deg, rgba(85, 86, 99, 0) 87.42%, #555663 116.56%)
    )
    var(
      --n-md,
      linear-gradient(200.92deg, rgba(51, 53, 78, 0) 61.84%, #33354e 91.25%)
    );
  content: "";
  inset: 0;
  position: absolute;
}
.l-people-intro__layer--bottom {
  align-self: end;
}
.l-people-intro__layer-background img {
  min-height: var(--md, 100svh) var(--n-md, 0);
  -o-object-fit: cover;
  object-fit: cover;
}
.l-people-text {
  position: relative;
  z-index: 1;
}
.l-people-carousel {
  height: 32.8767123288vw;
  position: relative;
}
.l-people-carousel__touch-nav {
  align-items: center;
  display: flex;
  justify-content: space-between;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: calc(50% - (var(--scale-px) * 15));
  width: 100%;
}
.l-people-carousel__touch-nav:after,
.l-people-carousel__touch-nav:before {
  display: none;
}
.l-people-carousel-deco {
  position: relative;
}
.l-people-carousel-deco__deco {
  left: 0;
  position: absolute;
  top: var(--md, 43%) var(--n-md, 50%);
  transform: translateY(-50%);
  width: var(--md, 58.904109589vw) var(--n-md, 100vw);
}
.l-status-text {
  margin-inline: auto;
  max-width: var(--md, 24.2857142857em) var(--n-md, 20.3846153846em);
}
.l-status-footer {
  padding-top: var(--md, calc(var(--spacing) * 16)) var(--n-md, 0);
}
.l-status-slider-sticky-bg {
  left: calc(var(--spacing-layout) * -1);
  top: var(--md, -13.0136986301vw) var(--n-md, -25.641025641vw);
  width: 100vw;
}
.counter {
  align-items: center;
  aspect-ratio: 1/1;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: var(--t-background-alt);
  border-radius: calc(var(--scale-px) * 5);
  display: flex;
  justify-content: center;
}
.counter:not(.cursor) {
  position: relative;
}
.counter .counter__progress {
  background: rgba(var(--t-primary-rgb), 0.1);
  border-radius: calc(var(--scale-px) * 5);
  left: 10px;
  overflow: hidden;
  position: absolute;
  right: 10px;
  top: 10px;
}
.counter .counter__progress-bar {
  background: var(--t-primary);
  border-radius: calc(var(--scale-px) * 5);
  height: 2px;
  transform: translateX(-100%);
}
.progress-bar {
  display: flex;
  gap: var(--md, calc(var(--scale-px) * 20))
    var(--n-md, calc(var(--scale-px) * 10));
}
.progress-bar__item {
  background: rgba(var(--t-primary-rgb), 0.1);
  border-radius: calc(var(--scale-px) * 2);
  flex: 1;
  overflow: hidden;
}
.progress-bar__item-inner {
  background: var(--t-primary);
  border-radius: calc(var(--scale-px) * 2);
  height: calc(var(--scale-px) * 2);
  transform: translateX(-100%);
}
.image-slider-sticky {
  --status-max-height: var(
      --md,
      calc(100svh - var(--spacing-layout) * 2 - var(--header-height))
    )
    var(--n-md, calc(100svh - var(--spacing-layout) * 2));
  --sticky-min-height: calc(
    100svh + (var(--items-count) - 1) * var(--status-max-height)
  );
  margin-bottom: var(--md, calc((100svh - var(--status-max-height)) * -0.5))
    var(--n-md, 0);
  margin-top: var(
      --md,
      calc((var(--spacing-layout) + var(--header-height)) * -1)
    )
    var(--n-md, 0);
  min-height: var(--sticky-min-height);
  position: relative;
  z-index: 1;
}
.has-scroll-smooth .image-slider-sticky {
  margin-bottom: var(
      --md,
      calc((100svh - var(--status-max-height)) * -0.5 + 50svh)
    )
    var(--n-md, 0);
  margin-top: var(
      --md,
      calc(50svh - var(--spacing-layout) - var(--header-height))
    )
    var(--n-md, 0);
}
.image-slider-sticky__layer {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: var(--spacing-layout);
}
.no-hover .image-slider-sticky__layer {
  contain: unset;
}
.image-slider-sticky__layer-col {
  position: relative;
  z-index: 1;
}
.image-slider-sticky__layer-col-background {
  position: relative;
}
.image-slider-sticky__background {
  left: calc(var(--spacing-layout) * -1);
  top: var(--md, -13.0136986301vw) var(--n-md, -25.641025641vw);
  width: 100vw;
}
@media (max-width: 567px) and (max-aspect-ratio: 13/9),
  (max-width: 667px) and (min-aspect-ratio: 13/9),
  (max-width: 979px) and (max-height: 415px) and (min-aspect-ratio: 13/9) {
  .image-slider-sticky__layer-row {
    flex-direction: column;
    height: var(--status-max-height);
    margin-left: 0;
    margin-right: 0;
  }
  .image-slider-sticky__layer-row > .col {
    flex: 1;
    padding-left: 0;
    padding-right: 0;
  }
  .image-slider-sticky__layer-row > .image-slider-sticky__layer-col-image {
    flex-grow: 0;
    margin-bottom: 10px;
  }
  .image-slider-sticky__layer-row > .image-slider-sticky__layer-col-background {
    flex-grow: 0;
  }
}
.image-slider-sticky--bg {
  --sticky-min-height: calc(100svh + (var(--items-count) - 1) * 100svh);
  margin-top: 0;
}
.image-slider-sticky--bg.sticky--under-next {
  margin-bottom: calc(var(--sticky-under-next-distance) * -1);
}
.image-slider-sticky--bg .card-slider {
  height: var(--md, var(--status-max-height))
    var(--n-md, calc(var(--scale-px) * 240));
}
.image-slider-sticky--bg
  .image-slider-sticky__layer-row
  > .image-slider-sticky__layer-col {
  flex-grow: var(--md, 1) var(--n-md, 0);
}
.image-slider-sticky--bg
  .image-slider-sticky__layer-row
  > .image-slider-sticky__layer-col-image {
  flex-grow: var(--md, 0) var(--n-md, 1);
}
.has-scroll-smooth .image-slider-sticky--bg {
  margin-top: var(--md, 50svh) var(--n-md, 0);
}
.image-slider-sticky--headquarters {
  --status-max-height: var(
      --md,
      calc(
        100svh - var(--spacing-layout) * 2 - var(--header-height) -
          calc(var(--scale-px) * 70)
      )
    )
    var(--n-md, calc(100svh - var(--spacing-layout) * 2));
  margin-top: var(
      --md,
      calc(
        (
            var(--spacing-layout) + var(--header-height) +
              calc(var(--scale-px) * 70)
          ) *
          -1
      )
    )
    var(--n-md, 0);
}
.image-slider-sticky--headquarters .card-slider {
  height: var(--md, var(--status-max-height))
    var(--n-md, calc(var(--scale-px) * 300));
}
.image-slider-sticky--headquarters .image-slider-sticky__layer {
  height: var(--md, 100svh) var(--n-md, auto);
}
.has-scroll-smooth .image-slider-sticky--headquarters {
  margin-top: var(
      --md,
      calc(
        50svh - var(--spacing-layout) - var(--header-height) -
          (var(--scale-px) * 70)
      )
    )
    var(--n-md, 0);
}
@media (max-width: 567px) and (max-aspect-ratio: 13/9),
  (max-width: 667px) and (min-aspect-ratio: 13/9),
  (max-width: 979px) and (max-height: 415px) and (min-aspect-ratio: 13/9) {
  .image-slider-sticky--headquarters .image-slider-sticky__layer,
  .image-slider-sticky--headquarters .image-slider-sticky__layer-row {
    height: auto;
  }
  .image-slider-sticky--headquarters .image-slider-sticky__layer-col-image {
    flex: 0 0 100svh;
    height: 100svh;
    margin-bottom: 0;
  }
}
.image-slider-images {
  position: relative;
}
.image-slider-images picture {
  height: var(--md, var(--status-max-height)) var(--n-md, auto);
}
.image-slider-images picture ~ picture {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.image-slider-images img {
  height: var(--md, calc(var(--status-max-height) * 1.2)) var(--n-md, auto);
  -o-object-fit: cover;
  object-fit: cover;
}
.image-slider-images--bg {
  height: 100svh;
  left: calc(var(--spacing-layout) * -1);
  overflow: clip;
  position: absolute;
  top: 0;
  width: 100vw;
}
.image-slider-images--bg picture {
  height: 100svh;
}
.image-slider-images--bg img {
  height: 120svh;
  -o-object-fit: cover;
  object-fit: cover;
}
.has-scroll-smooth .image-slider-images--bg {
  left: calc(var(--grid-gutter) * -0.5);
  top: var(--md, calc(var(--spacing-layout) * -1 - var(--header-height)))
    var(--n-md, calc(var(--spacing-layout) * -1));
}
.card-slider {
  align-items: stretch;
  border-radius: calc(var(--scale-px) * 5);
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: var(--md, unset) var(--n-md, space-between);
}
.card-slider__counter {
  margin-bottom: var(--spacing);
  margin-top: var(--md, calc(var(--scale-px) * 40))
    var(--n-md, calc(var(--scale-px) * 30));
  position: var(--md, relative) var(--n-md, absolute);
  right: var(--md, auto) var(--n-md, var(--spacing-layout));
}
.ui-dark .card-slider__counter-total {
  color: rgba(var(--t-heading-rgb), 0.5);
}
.card-slider__title {
  margin-top: var(--md, 0) var(--n-md, calc(var(--scale-px) * 30));
}
.card-slider__text {
  color: var(--t-text);
  display: flex;
  flex-direction: column;
  flex-grow: var(--md, 1) var(--n-md, 0);
  justify-content: var(--md, center) var(--n-md, flex-start);
  margin-top: var(--md, 0) var(--n-md, calc(var(--scale-px) * 60));
}
.ui-dark .card-slider__text {
  color: var(--t-heading);
}
.card-slider__button-spacer {
  height: var(--md, calc(var(--scale-px) * 90)) var(--n-md, 0);
}
.card-slider--with-buttons {
  justify-content: space-between;
}
.card-slider--with-buttons .card-slider__text {
  flex-grow: 1;
  margin-bottom: calc(var(--scale-px) * 40);
}
.card-slider--with-titles {
  justify-content: space-between;
}
.card-slider--with-titles .card-slider__title {
  flex-grow: 1;
  margin-bottom: calc(var(--scale-px) * 40);
}
.card-slider--with-titles .card-slider__text {
  margin-top: 0;
}
.card-slider--with-titles.card-slider--with-counter .card-slider__title {
  max-width: var(--md, none) var(--n-md, calc(var(--scale-px) * 150));
}
.card-slider--headquarters {
  background: var(--md, hsla(0, 0%, 94%, 0.6))
    var(--n-md, rgba(var(--t-background-rgb), 0.7));
}
