/* stylelint-disable */
:root {
  /* clean-css ignore:start */
  --TRUE: initial;
  --FALSE: ;
  /* clean-css ignore:end */
  --header-height: clamp(76px, -2px + 0.065 * 100vw, 89px);
  --font-family: "Onest", sans-serif;
  --second-family: "Commissioner", sans-serif;
  --content-width: 1800px;
  --container-offset: clamp(15px, -80.2142857143px + 0.0959821429 * 100vw, 58px);
  --container-width: calc(var(--content-width) + (var(--container-offset) * 2));
  --container: max(var(--container-offset), calc((100% - var(--content-width)) / 2));
  --container-half: max(var(--container-offset), calc(100% - var(--content-width) / 2));
  --left-panel: clamp(40px, -11.0588235294px + 0.0514705882 * 100vw, 61px);
  --prefooter-overlap-offset: clamp(68px, -4.6923076923px + 0.0519230769 * 100vw, 95px);
  --default-offset: clamp(20px, -20.6206896552px + 0.0409482759 * 100vw, 58px);
  /* colors */
  --color-gray: #ededed;
  --color-purple: #6e4fb5;
  --color-black: #000;
}
@media (max-width: 992px) {
  :root {
    --header-height: clamp(80px, 67.8444084279px + 0.0324149109 * 100vw, 100px);
    --default-offset: var(--container-offset);
  }
}

html {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizelegibility;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.page {
  height: 100%;
  font-family: var(--font-family);
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: calc(var(--header-height) + 10px);
}
.page--smooth {
  scroll-behavior: smooth;
}

.page__body {
  margin: 0;
  max-width: 1920px;
  font-weight: 400;
  font-size: 22px;
  line-height: 1.25;
  letter-spacing: -0.02em;
  color: #000;
  background-color: #fff;
  margin-inline: auto;
}

img {
  height: auto;
  max-width: 100%;
  object-fit: cover;
}

a {
  text-decoration: none;
  color: inherit;
}

[role=list] {
  list-style: none;
  margin: 0;
  padding: 0;
}

.input-reset {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  background-color: #fff;
}
.input-reset::-webkit-search-decoration, .input-reset::-webkit-search-cancel-button, .input-reset::-webkit-search-results-button, .input-reset::-webkit-search-results-decoration {
  display: none;
}

.sr-only:not(:focus, :active),
.sr-input {
  position: absolute;
  clip-path: inset(100%);
  overflow: hidden;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  clip: rect(0 0 0 0);
}

.container {
  padding-inline: var(--container);
}

.color-accent {
  color: var(--color-primary);
}

.center {
  text-align: center;
}

hr {
  border: none;
  width: 100%;
  border-block-end: 1px solid rgba(0, 0, 0, 0.2);
  margin-block: 0;
}

.hidden {
  display: none;
}

.main {
  display: flex;
  flex-direction: column;
}

/* stylelint-disable */
@font-face {
  font-family: "Onest";
  src: url("../fonts/onest-thin-100.woff2") format("woff2");
  font-weight: 100;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Onest";
  src: url("../fonts/onest-light-300.woff2") format("woff2");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Onest";
  src: url("../fonts/onest-regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Onest";
  src: url("../fonts/onest-semibold-600.woff2") format("woff2");
  font-weight: 600;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Commissioner";
  src: url("../fonts/commissioner-light-300.woff2") format("woff2");
  font-weight: 300;
  font-display: swap;
  font-style: normal;
}
@font-face {
  font-family: "Commissioner";
  src: url("../fonts/commissioner-medium-500.woff2") format("woff2");
  font-weight: 500;
  font-display: swap;
  font-style: normal;
}
.text {
  font-size: clamp(25px, -5px + 0.025 * 100vw, 30px);
  margin-block: 0;
}
.text--22 {
  font-size: clamp(20px, 8px + 0.01 * 100vw, 22px);
  line-height: 1.11;
}
@media (max-width: 992px) {
  .text {
    font-size: clamp(20px, 5.6870229008px + 0.0381679389 * 100vw, 35px);
  }
  .text--22 {
    font-size: clamp(17px, 6.5038167939px + 0.0279898219 * 100vw, 28px);
  }
}
@media (max-width: 375px) {
  .text {
    font-size: clamp(17px, -0.4545454545px + 0.0545454545 * 100vw, 20px);
  }
  .text--22 {
    font-size: clamp(15px, 3.3636363636px + 0.0363636364 * 100vw, 17px);
  }
}

.title {
  --h-1-font-size: clamp(130px, 8.8461538462px + 0.0865384615 * 100vw, 175px);
  --h-2-font-size: clamp(100px, 59.6153846154px + 0.0288461538 * 100vw, 115px);
  font-family: var(--second-family);
  line-height: 0.82;
  letter-spacing: -0.02em;
  color: inherit;
  margin-block: 0;
}
@media (max-width: 1400px) {
  .title {
    --h-1-font-size: clamp(110px, -10px + 0.1 * 100vw, 130px);
    --h-2-font-size: clamp(85px, -5px + 0.075 * 100vw, 100px);
  }
}
@media (max-width: 1200px) {
  .title {
    --h-1-font-size: clamp(96px, 29.2307692308px + 0.0673076923 * 100vw, 110px);
    --h-2-font-size: clamp(80px, 56.1538461538px + 0.0240384615 * 100vw, 85px);
  }
}
@media (max-width: 992px) {
  .title {
    --h-1-font-size: clamp(87px, 56.1428571429px + 0.0401785714 * 100vw, 96px);
    --h-2-font-size: clamp(70px, 35.7142857143px + 0.0446428571 * 100vw, 80px);
  }
}
@media (max-width: 768px) {
  .title {
    --h-1-font-size: clamp(43px, -81.1194029851px + 0.2189054726 * 100vw, 87px);
    --h-2-font-size: clamp(36px, -59.9104477612px + 0.1691542289 * 100vw, 70px);
  }
}
@media (max-width: 375px) {
  .title {
    --h-1-font-size: clamp(38px, 8.9090909091px + 0.0909090909 * 100vw, 43px);
    --h-2-font-size: clamp(29px, -11.7272727273px + 0.1272727273 * 100vw, 36px);
  }
}
.title--1 {
  font-weight: 500;
  font-size: var(--h-1-font-size);
}
.title--2 {
  font-weight: 300;
  font-size: var(--h-2-font-size);
}
.title--wrapped {
  display: inline-flex;
  flex-direction: column;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.title--wrapped span {
  transition: text-indent 0.3s ease 0.2s;
}
.title--wrapped span[style*="--text-indent"] {
  white-space: nowrap;
  text-indent: var(--text-indent, 42%);
}
@media (any-hover: hover) {
  .title--wrapped[href]:not(.ask-expert__title):hover span:not([style*="--text-indent"]) {
    text-indent: 10%;
  }
  .title--wrapped[href]:not(.ask-expert__title):hover span[style*="--text-indent"] {
    text-indent: 35%;
  }
}
.title--wrapped[href]:not(.ask-expert__title):focus-visible span:not([style*="--text-indent"]) {
  text-indent: 10%;
}
.title--wrapped[href]:not(.ask-expert__title):focus-visible span[style*="--text-indent"] {
  text-indent: 35%;
}
.title--center {
  text-align: center;
}

.hero-block {
  position: relative;
  margin-block-start: -1px;
}
.hero-block--light {
  --title-color: #fff;
}
@media (min-width: 993px) {
  .hero-block--offset {
    padding-block-end: clamp(63px, -39px + 0.085 * 100vw, 80px);
  }
}
@media (max-width: 992px) {
  .hero-block {
    padding-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}
.hero-block__container {
  --img-width: 70.15%;
  --img-half-width: calc(var(--img-width) / 2);
  --img-height: clamp(480px, 246.6666666667px + 0.1944444444 * 100vw, 620px);
  --tile-2-width: 18.9%;
  display: grid;
  grid-template-columns: var(--img-half-width) var(--img-half-width) [badge] auto;
  isolation: isolate;
}
@media (max-width: 1400px) {
  .hero-block__container {
    --img-width: 69.15%;
    --tile-2-width: 17.9%;
  }
}
@media (max-width: 992px) {
  .hero-block__container {
    --img-height: 560px;
    grid-template-columns: 100%;
  }
}
@media (max-width: 768px) {
  .hero-block__container {
    --img-height: clamp(332px, 95.358778626px + 0.631043257 * 100vw, 580px);
  }
}
@media (min-width: 993px) {
  .hero-block__header {
    display: contents;
  }
}
@media (max-width: 992px) {
  .hero-block__header {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    margin-block-end: clamp(30px, 11.7666126418px + 0.0486223663 * 100vw, 60px);
    row-gap: clamp(73px, 40.1799027553px + 0.0875202593 * 100vw, 127px);
  }
}
.hero-block:not(.hero-block--light, .hero-block--no-filter) .hero-block__figure::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  background: linear-gradient(134deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
}
.hero-block__figure {
  position: relative;
  margin: 0;
  min-height: var(--img-height);
  background-color: var(--color-gray);
}
@media (min-width: 993px) {
  .hero-block__figure {
    grid-column: 1/span 2;
    grid-row: 1/span 2;
  }
}
@media (max-width: 992px) {
  .hero-block__figure {
    grid-column: 1;
    grid-row: 1/span 2;
    min-height: var(--img-height);
  }
}
.hero-block__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-block__title {
  z-index: 1;
  color: var(--title-color, inherit);
}
@media (min-width: 993px) {
  .hero-block__title {
    display: -webkit-box;
    align-self: flex-end;
    grid-column: 2/span 2;
    grid-row: 2/span 1;
    overflow: hidden;
    overflow: clip;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    padding-block-end: 70px;
    padding-inline-end: var(--container-offset);
  }
}
@media (min-width: 993px) and (max-width: 1400px) {
  .hero-block__title {
    padding-block-end: 100px;
  }
}
@media (max-width: 992px) {
  .hero-block__title {
    align-self: end;
    grid-column: 1;
    grid-row: 1;
    padding-block-start: 40px;
    padding-inline: var(--container-offset);
  }
}
.hero-block__badge {
  z-index: 2;
  display: flex;
  flex-direction: column;
  row-gap: clamp(20px, 10px + 0.0083333333 * 100vw, 26px);
}
.hero-block__badge-icon {
  width: var(--icon-width, clamp(50px, 10px + 0.0333333333 * 100vw, 74px));
  background-color: var(--color-purple);
  aspect-ratio: 1/1;
}
.hero-block__badge-text {
  display: -webkit-box;
  overflow: hidden;
  overflow: clip;
  line-height: 1.15;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 8;
}
@media (min-width: 993px) {
  .hero-block__badge {
    grid-column: badge;
    grid-row: 1;
    padding-block: clamp(88px, 46.3333333333px + 0.0347222222 * 100vw, 113px) 30px;
    padding-inline: clamp(39px, -9.3333333333px + 0.0402777778 * 100vw, 68px) clamp(30px, -5px + 0.0291666667 * 100vw, 51px);
  }
}
@media (max-width: 992px) {
  .hero-block__badge {
    --icon-width: clamp(30px, 1.3740458015px + 0.0763358779 * 100vw, 60px);
    align-self: end;
    grid-column: 1;
    grid-row: 2;
    max-width: 62%;
    background-color: #fff;
    padding-block: clamp(15px, -11.7175572519px + 0.0712468193 * 100vw, 43px) 0;
    padding-inline: var(--container-offset) clamp(20px, -48.5714285714px + 0.0892857143 * 100vw, 40px);
    row-gap: clamp(15px, 0.6870229008px + 0.0381679389 * 100vw, 30px);
  }
}
.hero-block__content {
  display: flex;
  flex-direction: column;
  padding-inline-end: var(--default-offset);
  row-gap: 10px;
}
.hero-block__content ul {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.hero-block__content ul li {
  display: flex;
  -moz-column-gap: 7px;
  column-gap: 7px;
  align-items: center;
}
.hero-block__content ul li::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: var(--color-purple);
}
.hero-block__content p {
  line-height: 1.25;
  margin-block: 0;
}
.hero-block__content p + p {
  margin-block-start: 10px;
}
@media (min-width: 993px) {
  .hero-block__content {
    grid-column: 2/span 2;
    grid-row: 3;
    max-width: 768px;
    box-sizing: content-box;
    padding-block-start: 70px;
  }
}
@media (max-width: 992px) {
  .hero-block__content {
    justify-self: end;
    max-width: 72%;
  }
}
.hero-block__link {
  margin-block-start: clamp(20px, -40px + 0.05 * 100vw, 30px);
}
.hero-block__description {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
  row-gap: 20px;
}
.hero-block__description--mb + .hero-block__description--mb {
  margin-block-start: 10px;
}
@media (min-width: 993px) {
  .hero-block__footer {
    grid-column: 1/-1;
    padding-block-start: clamp(30px, -6px + 0.03 * 100vw, 36px);
    padding-inline: var(--left-panel) var(--container-offset);
  }
}
@media (max-width: 992px) {
  .hero-block__footer {
    grid-row: 2;
    margin-block-end: clamp(30px, 3.2824427481px + 0.0712468193 * 100vw, 58px);
    padding-inline: var(--container-offset);
  }
}
.hero-block__metric {
  --heading-line-height: 0.93;
  --font-primary-capital-letter: 0.75;
  font-weight: 100;
  font-size: clamp(179px, 20.7931034483px + 0.1594827586 * 100vw, 327px);
  line-height: var(--heading-line-height);
  letter-spacing: -0.1em;
  word-wrap: break-word;
  color: var(--color-gray);
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  margin-block: 0;
}
.hero-block__metric sup {
  top: -0.89em;
  font-weight: 300;
  font-size: 50%;
  padding-inline-start: 15px;
}
.hero-block__metric::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-start: calc((var(--font-primary-capital-letter) - var(--heading-line-height)) * 0.2em);
}
.hero-block__metric::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-end: calc((var(--font-primary-capital-letter) - var(--heading-line-height)) * 0.72em);
}
.hero-block__metric-desktop {
  display: inline;
}
.hero-block__metric-mobile {
  display: none;
}
@media (max-width: 992px) {
  .hero-block__metric {
    font-size: clamp(114px, 51.9770992366px + 0.165394402 * 100vw, 179px);
  }
  .hero-block__metric-desktop {
    display: none;
  }
  .hero-block__metric-mobile {
    display: inline-flex;
    -moz-column-gap: 0.15em;
    column-gap: 0.15em;
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  .hero-block__metric {
    --heading-line-height: 0.75;
  }
}
@media (max-width: 567px) {
  .hero-block__metric {
    --heading-line-height: 0.7;
  }
}
@media (min-width: 993px) {
  .hero-block__tiles {
    z-index: -1;
    display: grid;
    grid-column: 1/-1;
    grid-row: 3;
    grid-template-columns: [tile-1] calc(var(--img-width) - 51.2%) [tile-2] calc(var(--img-width) - var(--tile-2-width)) [tile-3] 1.05fr [tile-4] 0.72fr;
    grid-template-rows: repeat(6, 1fr);
  }
  .hero-block .tile {
    background-color: var(--color-gray);
  }
  .hero-block .tile--1 {
    grid-column: tile-1;
    grid-row: 5;
    margin-inline-start: var(--left-panel);
  }
  .hero-block .tile--2 {
    grid-column: tile-2;
    grid-row: 4;
  }
  .hero-block .tile--3 {
    grid-column: tile-3;
    grid-row: 1/span 3;
  }
  .hero-block .tile--4 {
    grid-column: tile-4;
    grid-row: 5/span 2;
  }
}
@media (max-width: 992px) {
  .hero-block__tiles {
    display: none;
  }
}

.menu {
  --gap: clamp(32px, 12.5490196078px + 0.0196078431 * 100vw, 40px);
  --menu-button-size: clamp(24px, 11.8444084279px + 0.0324149109 * 100vw, 44px);
  display: flex;
}
@media (max-width: 992px) {
  .menu__container {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: calc(100vh - 100%);
    height: calc(100dvh - 100%);
    font-size: clamp(20px, 10.8833063209px + 0.0243111831 * 100vw, 35px);
    background-color: #fff;
    opacity: 0;
    visibility: hidden;
    transition-property: opacity, visibility;
    transition-duration: 0.3s;
    transition-timing-function: ease;
    inset-block-start: calc(100% + 2px);
    inset-inline: 0;
  }
  .menu__container--open {
    opacity: 1;
    visibility: visible;
  }
}
.menu__list {
  display: flex;
  align-items: center;
  gap: var(--gap);
}
@media (max-width: 992px) {
  .menu__list {
    flex-grow: 1;
    flex-direction: column;
    align-items: stretch;
    overflow-y: auto;
    padding-block: 30px 39px;
    padding-inline: var(--container-offset);
  }
}
.menu__button {
  position: relative;
  align-self: center;
  border: none;
  padding: 0;
  width: var(--menu-button-size);
  background: #000;
  cursor: pointer;
  aspect-ratio: 1/1;
}
@media (min-width: 993px) {
  .menu__button {
    display: none;
  }
}
.menu__button-line {
  position: absolute;
  left: 50%;
  top: 50%;
  background: #fff;
  transform: translate(-50%, -50%);
  transform-origin: center;
  transition: transform 0.3s ease;
}
.menu__button-line--horizontal {
  width: 63%;
  height: 2px;
}
.menu__button-line--vertical {
  width: 2px;
  height: 63%;
}
.menu__button--open :is(.menu__button-line--horizontal, .menu__button-line--vertical) {
  transform: translate(-50%, -50%) rotate(135deg);
}
.menu__link {
  --thickness-width: 6px;
  --border-width: 2px;
  position: relative;
  isolation: isolate;
  transition: opacity 0.3s ease;
}
@media (min-width: 993px) {
  .menu__link::before {
    content: "";
    position: absolute;
    inset: -100% -15%;
    z-index: 1;
  }
  .menu__link::after {
    content: "";
    position: absolute;
    transition: border-color 0.3s ease;
    border-block-end: var(--thickness-width) solid var(--text-decoration-color, transparent);
    inset-block: calc(var(--header-height) / 2 + var(--thickness-width) + var(--border-width)) 0;
    inset-inline: -5px;
  }
}
@media (min-width: 993px) and (max-width: 1400px) {
  .menu__link {
    --border-width: 0.01px;
  }
}
@media (any-hover: hover) {
  .menu__link:hover {
    --text-decoration-color: currentcolor;
  }
}
.menu__link:focus-visible {
  outline: none;
  --text-decoration-color: var(--color-purple);
}
.menu__link:focus-visible::before {
  outline: 2px dashed var(--color-purple);
}
.menu__link--current {
  --text-decoration-color: currentcolor;
}
@media (max-width: 992px) {
  .menu__link--current {
    font-weight: 600;
    color: var(--color-purple);
  }
}

.logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.logo__img {
  width: 100%;
  height: auto;
}

.header {
  --padding-inline: clamp(24px, 0px + 0.02 * 100vw, 28px);
  --min-height: clamp(76px, -2px + 0.065 * 100vw, 89px);
  --font-size: clamp(18px, 11.3333333333px + 0.0055555556 * 100vw, 22px);
  --gap: clamp(40px, -2px + 0.035 * 100vw, 47px);
  --padding-block: clamp(15px, 1.5384615385px + 0.0096153846 * 100vw, 20px);
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: var(--min-height);
  font-size: var(--font-size);
  background-color: #fff;
  border-block-end: 2px solid #000;
  gap: var(--gap);
  padding-block: var(--padding-block);
  padding-inline: var(--padding-inline);
}
@media (max-width: 1200px) {
  .header {
    --padding-inline: 24px 32px;
  }
}
@media (max-width: 992px) {
  .header {
    --padding-inline: var(--container-offset);
    --padding-block: clamp(12px, -15.4285714286px + 0.0357142857 * 100vw, 20px);
    --min-height: clamp(80px, 67.8444084279px + 0.0324149109 * 100vw, 100px);
    gap: 15px;
  }
}
.header__scroll-top {
  --width: clamp(20px, -16px + 0.03 * 100vw, 23px);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  border: none;
  padding: 0;
  width: var(--width);
  background-color: #000;
  aspect-ratio: 1/1;
}
.header__scroll-top svg {
  width: 100%;
  height: 100%;
}
@media (max-width: 992px) {
  .header__scroll-top {
    display: none;
  }
}
.header__logo {
  flex-shrink: 0;
  width: clamp(117px, -3px + 0.1 * 100vw, 137px);
  height: auto;
  margin-inline-end: auto;
}
@media (max-width: 992px) {
  .header__logo {
    width: clamp(155px, 110.4285714286px + 0.0580357143 * 100vw, 168px);
  }
}
@media (max-width: 768px) {
  .header__logo {
    width: clamp(100px, 47.5190839695px + 0.1399491094 * 100vw, 155px);
  }
}
.track {
  --track-thumb-width: 7px;
  --track-thumb-height: clamp(107px, -1px + 0.09 * 100vw, 125px);
  --track-height: 100%;
  --default-color: currentcolor;
  --label-font-size: clamp(20px, 8px + 0.01 * 100vw, 22px);
  --label-top-offset: 33px;
  --label-opacity: 1;
  position: absolute;
  z-index: 10;
  display: flex;
  justify-content: end;
}
@media (min-width: 993px) {
  .track {
    width: var(--left-panel);
    height: var(--track-height);
    border-inline-end: 2px solid var(--default-color);
    inset-block-start: 0;
    inset-inline-start: 0;
  }
}
@media (max-width: 992px) {
  .track {
    --track-thumb-width: clamp(5px, 1.961102107px + 0.0081037277 * 100vw, 10px);
    --track-thumb-height: clamp(50px, 0.1620745543px + 0.1329011345 * 100vw, 132px);
    --label-font-size: clamp(15px, 2.5954198473px + 0.0330788804 * 100vw, 28px);
    padding-inline-start: 5px;
  }
}
.track__pin {
  width: clamp(31px, 13px + 0.015 * 100vw, 34px);
}
@media (max-width: 992px) {
  .track__pin {
    width: clamp(15px, -4.0839694656px + 0.0508905852 * 100vw, 35px);
  }
}
.track__thumb {
  position: relative;
  z-index: 11;
  display: flex;
  flex-direction: column;
  width: 100%;
  font-weight: 400;
  font-size: var(--label-font-size);
  white-space: nowrap;
  -webkit-text-orientation: mixed;
  text-orientation: mixed;
  writing-mode: vertical-rl;
  color: var(--default-color);
  opacity: var(--label-opacity);
  transform: rotate(-180deg);
  padding-inline-end: var(--label-top-offset);
}
.track__thumb::after {
  content: "";
  display: block;
  flex-shrink: 0;
  align-self: var(--track-thumb-position, end);
  width: var(--track-thumb-width);
  height: var(--track-thumb-height);
  background-color: currentcolor;
}
@media (max-width: 992px) {
  .track__thumb {
    --track-thumb-position: center;
    -moz-column-gap: clamp(7px, 0.3144246353px + 0.017828201 * 100vw, 18px);
    column-gap: clamp(7px, 0.3144246353px + 0.017828201 * 100vw, 18px);
    flex-direction: row-reverse;
    align-items: center;
  }
}
@media (max-width: 992px) {
  .track .hidden-on-tablet {
    display: none;
  }
}

.button {
  --default-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' fill='none'%3E%3Cpath fill='%236E4FB5' d='M0 0h23v23H0z'/%3E%3Cpath stroke='%23fff' d='M18.314 11.5H3.833M10.5 3.5l8 8-8 8'/%3E%3C/svg%3E");
  --light-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='23' fill='none'%3E%3Cpath fill='%23fff' d='M0 0h23v23H0z'/%3E%3Cpath stroke='%236E4FB5' d='M18.314 11.5H3.833M10.5 3.5l8 8-8 8'/%3E%3C/svg%3E");
  --button-font-size: clamp(22px, 4px + 0.015 * 100vw, 25px);
  --icon-gap: calc(var(--button-font-size) * 0.24);
  --button-offset: calc(var(--button-font-size) * 1.2);
  --icon-size: calc(var(--button-font-size) * 0.92);
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  outline: none;
  border: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 600;
  font-size: var(--button-font-size);
  line-height: 1.11;
  text-transform: capitalize;
  color: var(--color-purple);
  background-color: transparent;
  transition: padding 0.3s ease;
  padding-inline-end: var(--button-offset);
}
@media (max-width: 1400px) {
  .button {
    --button-font-size: clamp(19px, 16.8048780488px + 0.0058536585 * 100vw, 25px);
  }
}
@media (max-width: 992px) {
  .button {
    --button-font-size: clamp(32px, 21.7142857143px + 0.0133928571 * 100vw, 35px);
  }
}
@media (max-width: 768px) {
  .button {
    --button-font-size: clamp(19px, 6.5954198473px + 0.0330788804 * 100vw, 32px);
  }
}
.button span:last-of-type {
  position: relative;
}
.button span:last-of-type::before,
.button span:last-of-type::after {
  content: "";
  position: absolute;
  width: var(--icon-size);
  background-image: var(--bg-image, var(--default-icon));
  background-size: cover;
  background-repeat: no-repeat;
  background-color: var(--color-purple);
  transform-origin: right;
  transition: transform 0.3s ease;
  aspect-ratio: 1/1;
  inset-block-end: 2px;
}
.button span:last-of-type::before {
  transform: scaleX(0);
  transform-origin: right;
  inset-inline-end: calc(100% + var(--icon-gap));
}
.button span:last-of-type::after {
  transform-origin: left;
  inset-inline-start: calc(100% + var(--icon-gap));
}
.button--light {
  --bg-image: var(--light-icon);
  color: #fff;
}
@media (any-hover: hover) {
  .button:hover {
    padding-inline: var(--button-offset) 0;
  }
  .button:hover span:last-of-type::before {
    transform: scaleX(1);
  }
  .button:hover span:last-of-type::after {
    transform: scaleX(0);
  }
}
.button:focus-visible {
  outline: 1px dashed var(--color-purple);
  outline-offset: 8px;
  padding-inline: var(--button-offset) 0;
}
.button:focus-visible span:last-of-type::before {
  transform: scaleX(1);
}
.button:focus-visible span:last-of-type::after {
  transform: scaleX(0);
}

.stats-list {
  --value-font-size: clamp(62px, -18.7692307692px + 0.0576923077 * 100vw, 92px);
  --value-offset: clamp(24px, -19.0769230769px + 0.0307692308 * 100vw, 40px);
  --row-height: clamp(292px, 41.6153846154px + 0.1788461538 * 100vw, 385px);
  --value-decor-height: clamp(62px, -13.3846153846px + 0.0538461538 * 100vw, 90px);
  display: grid;
  -moz-column-gap: 40px;
  column-gap: 40px;
  align-items: flex-start;
  grid-template-columns: -webkit-min-content -webkit-min-content -webkit-min-content;
  grid-template-columns: min-content min-content min-content;
  grid-template-rows: var(--row-height) auto;
  margin: 0;
  padding: 0;
  isolation: isolate;
}
@media (max-width: 992px) {
  .stats-list {
    --value-font-size: clamp(26px, 7.7666126418px + 0.0486223663 * 100vw, 56px);
    --row-height: clamp(100px, 8.8330632091px + 0.2431118314 * 100vw, 250px);
    --value-decor-height: clamp(27px, 9.3743922204px + 0.0470016207 * 100vw, 56px);
  }
}
@media (max-width: 768px) {
  .stats-list {
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
}
@media (max-width: 567px) {
  .stats-list {
    --value-offset: 15px;
  }
}
.stats-list__item {
  display: contents;
}
.stats-list__item--active {
  --value-font-size: clamp(220px, -286.1538461538px + 0.3615384615 * 100vw, 408px);
  --value-translate-y: calc(-1 * clamp(10px, -10px + 0.0260416667 * 100vw, 40px));
  --value-font-weight: 100;
  --active-value-translate-y: calc(-1 * var(--value-translate-y));
}
@media (max-width: 992px) {
  .stats-list__item--active {
    --value-font-size: clamp(90px, 10.9886547812px + 0.2106969206 * 100vw, 220px);
  }
}
@media (max-width: 375px) {
  .stats-list__item--active {
    --value-font-size: clamp(70px, -46.3636363636px + 0.3636363636 * 100vw, 90px);
  }
}
.stats-list__item:not(.stats-list__item--active) {
  --key-opacity: 0;
  --key-visibility: hidden;
}
.stats-list__item:nth-child(odd):not(.stats-list__item--active) .stats-list__value {
  padding-inline: var(--value-offset);
}
.stats-list__item:nth-child(odd):not(.stats-list__item--active) .stats-list__value::before {
  opacity: 1;
}
.stats-list__item:nth-child(odd) .stats-list__value::after {
  opacity: 1;
}
.stats-list__item:nth-child(3n) .stats-list__value {
  padding-inline-start: var(--value-offset);
}
.stats-list__item:nth-child(3n) .stats-list__value::after {
  opacity: 0;
}
.stats-list__item:nth-child(3n) .stats-list__value::before {
  opacity: 1;
}
.stats-list__item:nth-child(1) .stats-list__value {
  padding-inline-end: var(--value-offset);
}
.stats-list__value {
  position: relative;
  z-index: -1;
  grid-row: 1;
  margin: 0;
  font-weight: var(--value-font-weight, 300);
  font-size: var(--value-font-size);
  line-height: 0.93;
  text-align: center;
  transform: translateY(var(--value-translate-y, revert));
  transition: all 0.3s ease, font-weight 0s;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
}
.stats-list__value::before, .stats-list__value::after {
  content: "";
  position: absolute;
  width: clamp(2px, -1.90625px + 0.0104166667 * 100vw, 4px);
  height: var(--value-decor-height);
  background-color: #fff;
  opacity: 0;
  transform: translateY(var(--active-value-translate-y, revert));
  transition: opacity 0.3s ease;
}
.stats-list__value::before {
  left: 0;
}
.stats-list__value::after {
  right: 0;
}
.stats-list__key {
  display: flex;
  -moz-column-gap: 30px;
  column-gap: 30px;
  align-items: center;
  grid-column: 1/-1;
  grid-row: 2;
  margin: 0;
  font-weight: 400;
  opacity: var(--key-opacity, revert);
  visibility: var(--key-visibility, revert);
  transition-property: opacity, visibility;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  border-inline-start: 1px solid currentcolor;
  margin-block-start: -59px;
  padding-block: 26px;
  padding-inline-start: 30px;
}
.stats-list__key p {
  margin: 0;
}
@media (max-width: 1400px) {
  .stats-list__key {
    flex-direction: column;
    align-items: start;
    padding-block: 15px;
    row-gap: 10px;
  }
}
@media (max-width: 992px) {
  .stats-list__key {
    border: none;
    padding: 0;
    margin-block-start: -40px;
  }
}
@media (max-width: 567px) {
  .stats-list__key {
    margin-block-start: -20px;
  }
}
.stats-list__button {
  --right-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='92' height='55' fill='none'%3E%3Cpath stroke='currentColor' d='M90.294 27.823H-.001M64.37.87 91 27.5 64.37 54.13'/%3E%3C/svg%3E");
  --width: 91px;
  --height: 53px;
  -webkit-mask-image: var(--right-arrow);
  mask-image: var(--right-arrow);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  margin: 0;
  border: none;
  padding: 0;
  width: var(--width);
  height: var(--height);
  color: #fff;
  background-color: #fff;
  transition: transform 0.3s ease;
  cursor: pointer;
}
@media (any-hover: hover) {
  .stats-list__button:hover {
    transform: translateX(15px);
  }
}
@media (max-width: 1400px) {
  .stats-list__button {
    --width: clamp(78px, 0px + 0.065 * 100vw, 91px);
    --height: clamp(45px, -3px + 0.04 * 100vw, 53px);
  }
}
@media (max-width: 567px) {
  .stats-list__button {
    --width: 50px;
    --height: 29px;
  }
}

.section-header {
  display: flex;
  align-items: end;
  gap: 40px clamp(47px, -113px + 0.1333333333 * 100vw, 143px);
}

.scroller {
  --scroller-gap: 120px;
}
.scroller__inner {
  display: flex;
  align-items: center;
  gap: var(--scroller-gap);
}
.scroller[data-animated=true] {
  overflow: hidden;
  overflow: clip;
}
.scroller[data-animated=true] .scroller__inner {
  flex-wrap: nowrap;
  width: -webkit-max-content;
  width: max-content;
  animation: scroll var(--_animation-duration, 40s) var(--_animation-direction, forwards) linear infinite;
  animation-play-state: var(--_animation-play-state, revert);
}
.scroller[data-direction=right] {
  --_animation-direction: reverse;
}
.scroller[data-direction=left] {
  --_animation-direction: forwards;
}
.scroller[data-speed=fast] {
  --_animation-duration: 20s;
}
.scroller[data-speed=slow] {
  --_animation-duration: 50s;
}

@keyframes scroll {
  to {
    transform: translate(calc(-50% - var(--scroller-gap) / 2));
  }
}
.partner-logo {
  display: flex;
  align-items: center;
}
@media (max-width: 992px) {
  .partner-logo {
    justify-content: center;
    width: 20.2vw;
  }
  .partner-logo[aria-hidden] {
    display: none;
  }
}
.partner-logo__img {
  display: flex;
  object-fit: contain;
  aspect-ratio: var(--ar);
}

.footer {
  --padding-block-start: clamp(47px, 5px + 0.035 * 100vw, 54px);
  --padding-block-end: clamp(36px, -102px + 0.115 * 100vw, 59px);
  --padding-inline-start: calc(var(--left-panel) + 42px);
  --padding-inline-end: var(--default-offset);
  position: relative;
  font-size: clamp(20px, -10px + 0.025 * 100vw, 25px);
  color: var(--color-purple);
  background-color: #fff;
}
@media (max-width: 1400px) {
  .footer {
    --padding-inline-start: calc(var(--left-panel) + 40px);
  }
}
@media (max-width: 1200px) {
  .footer {
    --padding-inline-start: calc(var(--left-panel) + 30px);
    font-size: 20px;
  }
}
@media (max-width: 992px) {
  .footer {
    --padding-block-start: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
    --padding-block-end: clamp(30px, -17.7099236641px + 0.1272264631 * 100vw, 80px);
    --padding-inline-start: var(--container-offset);
    font-size: clamp(15px, 2.5954198473px + 0.0330788804 * 100vw, 28px);
  }
}
.footer__content {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  align-items: flex-start;
  line-height: 1.11;
  gap: 30px clamp(30px, -50px + 0.0625 * 100vw, 70px);
  padding-block: var(--padding-block-start) var(--padding-block-end);
  padding-inline: var(--padding-inline-start) var(--padding-inline-end);
}
@media (max-width: 992px) {
  .footer__content {
    display: grid;
    align-items: flex-start;
    grid-template-columns: 1fr 1.2fr;
    row-gap: clamp(16px, -32px + 0.0625 * 100vw, 30px);
  }
}
@media (max-width: 567px) {
  .footer__content {
    grid-template-columns: 38% auto;
  }
}
.footer__logo {
  max-width: clamp(246px, 224.4615384615px + 0.0153846154 * 100vw, 254px);
}
@media (max-width: 1400px) {
  .footer__logo {
    max-width: clamp(210px, -6px + 0.18 * 100vw, 246px);
  }
}
@media (max-width: 1200px) {
  .footer__logo {
    max-width: 210px;
  }
}
@media (max-width: 992px) {
  .footer__logo {
    max-width: 266px;
  }
}
@media (max-width: 768px) {
  .footer__logo {
    max-width: clamp(170px, 50.7251908397px + 0.3180661578 * 100vw, 295px);
  }
}
@media (max-width: 567px) {
  .footer__logo {
    grid-column: 1/-1;
  }
}
.footer__links-group {
  display: flex;
  flex-direction: column;
  row-gap: 6px;
  margin-block: 0;
  word-wrap: break-word;
}
@media (min-width: 993px) {
  .footer__links-group {
    max-width: 333px;
    margin-block-start: 20px;
  }
}
@media (max-width: 992px) {
  .footer__links-group {
    row-gap: 19px;
  }
}
@media (min-width: 568px) {
  .footer__links-group {
    grid-row: span 2;
    margin-block-end: 20px;
  }
}
.footer__legal-group {
  display: flex;
  flex-direction: column;
  row-gap: 6px;
  margin-block: 0;
}
.footer__legal-group a {
  opacity: 0.5;
}
.footer__legal-group a:hover {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media (min-width: 993px) {
  .footer__legal-group {
    margin-block-start: 20px;
    margin-inline-start: auto;
    max-width: clamp(185px, -279.2857142857px + 0.4642857143 * 100vw, 510px);
  }
}
@media (max-width: 992px) {
  .footer__legal-group {
    grid-column: 2;
    row-gap: 19px;
  }
}
@media (min-width: 993px) {
  .footer__link-objects {
    max-width: 203px;
    margin-block-start: 20px;
  }
}
@media (max-width: 992px) {
  .footer__link-objects {
    align-self: flex-start;
    grid-column: 1;
    grid-row: 2;
    font-weight: 600;
  }
}
@media (max-width: 567px) {
  .footer__link-objects {
    grid-column: 1/-1;
    margin-block-end: 16px;
  }
  .footer__link-objects br {
    display: none;
  }
}
.footer__copyright {
  --padding-block-start: 13px;
  --padding-block-end: 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: 400;
  font-size: clamp(16px, 4px + 0.01 * 100vw, 18px);
  line-height: 1.7;
  border-block-start: 1px solid #000;
  gap: 10px;
  padding-block: var(--padding-block-start) var(--padding-block-end);
  padding-inline: var(--padding-inline-start) var(--padding-inline-end);
}
@media (min-width: 993px) {
  .footer__copyright {
    clip-path: inset(0 0 0 var(--left-panel));
  }
}
@media (max-width: 992px) {
  .footer__copyright {
    font-size: clamp(13px, 6.3144246353px + 0.017828201 * 100vw, 24px);
  }
}
@media (max-width: 567px) {
  .footer__copyright {
    --padding-block-start: 4px;
    --padding-block-end: 4px;
  }
}
.footer__track {
  --default-color: #000;
}
.footer a:not(.logo):hover {
  opacity: 0.6;
}

/**
 * Swiper 12.2.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 27, 2026
 */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */
.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none; /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-slides-offset-before);
      scroll-margin-inline-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-inline-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-slides-offset-before);
      scroll-margin-block-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-block-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper::before {
      content: "";
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d {
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }
  ::slotted(svg),
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

.swiper-button-lock {
  display: none;
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  ::slotted(.swiper-navigation-icon),
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}

.swiper-horizontal {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    margin-left: 0;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  .swiper-button-next,
  & ~ .swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}

.swiper-vertical {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - var(--swiper-navigation-size) / 2);
    margin-top: 0;
  }
  .swiper-button-prev,
  ~ .swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next,
  ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

.swiper-fade {
  &.swiper-free-mode {
    .swiper-slide {
      transition-timing-function: ease-out;
    }
  }
  .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
    .swiper-slide {
      pointer-events: none;
    }
  }
  .swiper-slide-active {
    pointer-events: auto;
    & .swiper-slide-active {
      pointer-events: auto;
    }
  }
}

.slider {
  position: relative;
  width: 100%;
  max-width: 100vw;
}
.slider__item {
  --row-height: clamp(102px, 43.6666666667px + 0.0486111111 * 100vw, 137px);
  --row-count: 6;
  --col-count: 11;
  display: grid;
  grid-template-columns: repeat(var(--col-count), 1fr);
  grid-template-rows: repeat(var(--row-count), var(--row-height));
  isolation: isolate;
}
@media (max-width: 992px) {
  .slider__item {
    --row-count: 12;
    --col-count: 8;
    --row-height: 57px;
  }
}
@media (max-width: 768px) {
  .slider__item {
    --row-height: clamp(42px, 20.0534351145px + 0.058524173 * 100vw, 65px);
  }
}
@media (max-width: 567px) {
  .slider__item {
    --row-count: 16;
    --row-height: 31.5px;
  }
}
.slider__figure {
  z-index: -1;
  grid-column: 1/-1;
  grid-row: 1/-1;
  margin: 0;
}
@media (max-width: 992px) {
  .slider__figure {
    grid-row: 3/-1;
  }
}
.slider__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-user-select: none;
  user-select: none;
}
.slider__content {
  z-index: 2;
  display: flex;
  align-items: center;
  align-self: start;
  justify-content: center;
  grid-column: 8/span 4;
  grid-row: 1/span 4;
  min-height: clamp(101px, 39.3333333333px + 0.0513888889 * 100vw, 138px);
  line-height: 1.15;
  color: #fff;
  background-color: var(--color-purple);
  gap: clamp(25px, 10px + 0.0125 * 100vw, 34px);
  padding-block: 10px;
  padding-inline: clamp(36px, 12.6666666667px + 0.0194444444 * 100vw, 50px);
}
.slider__content-text {
  order: 2;
  -webkit-user-select: none;
  user-select: none;
  margin-inline: auto;
}
@media (min-width: 1201px) {
  .slider__content-text {
    max-width: 70%;
  }
}
@media (max-width: 567px) {
  .slider__content-text {
    font-size: clamp(17px, 11.2307692308px + 0.0153846154 * 100vw, 20px);
  }
}
@media (max-width: 1200px) {
  .slider__content {
    gap: clamp(16px, -26.9230769231px + 0.0432692308 * 100vw, 25px);
    padding-inline: clamp(16px, -79.3846153846px + 0.0961538462 * 100vw, 36px);
  }
}
@media (max-width: 992px) {
  .slider__content {
    grid-column: 1/span 6;
    min-height: calc(var(--row-height) * 2);
    text-align: center;
  }
}
@media (width <= 340px) {
  .slider__content {
    grid-column: 1/-1;
  }
}
.slider__button {
  flex-shrink: 0;
  border: none;
  border: 1px solid #fff;
  padding: 0;
  width: clamp(26px, 9.3333333333px + 0.0138888889 * 100vw, 36px);
  background-color: transparent;
  transform: rotate(-45deg);
  cursor: pointer;
  aspect-ratio: 1/1;
}
.slider__button--prev {
  order: 1;
  border-right: 0;
  border-bottom: 0;
}
.slider__button--next {
  order: 3;
  border-top: 0;
  border-left: 0;
}
@media (max-width: 768px) {
  .slider__button {
    width: clamp(20px, 14.2748091603px + 0.0152671756 * 100vw, 26px);
  }
}
.slider .tile {
  height: var(--tile-height, clamp(50px, 16.6666666667px + 0.0277777778 * 100vw, 70px));
  color: #fff;
  background-color: var(--color-purple);
}
.slider .tile--1 {
  --tile-height: clamp(34px, 10.6666666667px + 0.0194444444 * 100vw, 48px);
  grid-column: 1;
  grid-row: 4;
}
@media (max-width: 992px) {
  .slider .tile--1 {
    --tile-height: clamp(34px, 13.4285714286px + 0.0267857143 * 100vw, 40px);
    grid-column: 1/span 2;
    grid-row: 7;
  }
}
@media (max-width: 567px) {
  .slider .tile--1 {
    --tile-height: 100%;
    grid-row: 10;
  }
}
.slider .tile--2 {
  --tile-height: clamp(21px, 7.6666666667px + 0.0111111111 * 100vw, 29px);
  grid-column: 2/span 2;
  grid-row: 3;
}
@media (max-width: 992px) {
  .slider .tile--2 {
    --tile-height: 100%;
    grid-column: 4/span 3;
    grid-row: 4;
  }
}
@media (max-width: 567px) {
  .slider .tile--2 {
    --tile-height: 46px;
    grid-row: 6/span 2;
  }
}
.slider .tile--3 {
  align-self: end;
  grid-column: 4/span 2;
  grid-row: 1;
}
@media (max-width: 992px) {
  .slider .tile--3 {
    --tile-height: 100%;
    grid-column: 7/span 2;
    grid-row: 3;
  }
}
@media (max-width: 567px) {
  .slider .tile--3 {
    --tile-height: 100%;
    grid-row: 5;
  }
}
.slider .tile--4 {
  --tile-height: 100%;
  grid-column: 6/span 2;
  grid-row: 2;
}
@media (max-width: 992px) {
  .slider .tile--4 {
    --tile-height: 100%;
    grid-column: 3/span 3;
    grid-row: 9;
  }
}
@media (max-width: 567px) {
  .slider .tile--4 {
    --tile-height: 24px;
    align-self: flex-end;
    grid-row: 14;
  }
}
.slider .tile--5 {
  grid-column: 6/span 2;
  grid-row: 5;
}
.slider .tile--6 {
  --tile-height: clamp(59px, 24px + 0.0291666667 * 100vw, 80px);
  z-index: -1;
  align-self: end;
  grid-column: 8/span 3;
  grid-row: 6;
}
.slider .tile--7 {
  --tile-height: 100%;
  display: flex;
  align-items: center;
  justify-content: start;
  grid-column: 10/span 2;
  grid-row: 6/span 2;
  padding-block: 14px;
  padding-inline: clamp(20px, 9.3103448276px + 0.0107758621 * 100vw, 30px) 14px;
}
@media (max-width: 992px) {
  .slider .tile--7 {
    grid-column: 6/span 3;
    grid-row: 11/span 2;
  }
}
@media (max-width: 567px) {
  .slider .tile--7 {
    grid-column: -4/span 3;
    grid-row: -3/span 2;
  }
}
@media (width <= 340px) {
  .slider .tile--7 {
    padding-inline: 10px;
  }
}
@media (max-width: 992px) {
  .slider .tile:is(:not(.slider .tile--1, .slider .tile--2, .slider .tile--3, .slider .tile--4, .slider .tile--7)) {
    display: none;
  }
}

.list {
  --padding-block-end: clamp(20px, 0.9160305344px + 0.0508905852 * 100vw, 40px);
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-block: 0;
  row-gap: var(--padding-block-end);
}
.list--ordered {
  counter-reset: counter;
  position: relative;
}
.list--ordered .list__item {
  counter-increment: counter;
}
.list--ordered .list__item::before {
  content: counter(counter, decimal-leading-zero) ".";
  display: block;
  padding-inline-end: 30px;
}
.list__item {
  --content-width: 62.48%;
  display: grid;
  align-items: start;
  grid-template-columns: auto var(--content-width);
  border-block-end: 2px solid #000;
  padding-block-end: var(--padding-block-end);
}
.list__item--description:first-child {
  border-block-start: 2px solid #000;
  padding-block-start: var(--padding-block-end);
}
@media (max-width: 768px) {
  .list__item--description {
    display: flex;
    flex-direction: column;
    row-gap: clamp(10px, 0.4580152672px + 0.0254452926 * 100vw, 20px);
  }
}
@media (max-width: 1400px) {
  .list__item {
    --content-width: 70%;
  }
}
@media (max-width: 992px) {
  .list__item {
    --content-width: 74.4%;
  }
}
@media (max-width: 567px) {
  .list__item {
    --content-width: 73.5%;
  }
}
.list__term {
  padding-inline-end: 20px;
}
.list__desc {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-weight: 600;
  gap: 12px clamp(30px, -36.6666666667px + 0.0555555556 * 100vw, 70px);
  margin-inline: 0;
}
.list__desc--services p {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-block: 0;
}
.list__desc--services p svg {
  width: clamp(34px, 24px + 0.0083333333 * 100vw, 40px);
  height: auto;
}
@media (max-width: 992px) {
  .list__desc--services p svg {
    width: clamp(30px, 11.7666126418px + 0.0486223663 * 100vw, 60px);
  }
}
@media (max-width: 768px) {
  .list__desc--services p {
    width: 100%;
  }
}

.card {
  --min-height: clamp(534px, 157.3333333333px + 0.3138888889 * 100vw, 760px);
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  overflow: hidden;
  overflow: clip;
  height: var(--min-height);
  isolation: isolate;
}
.card:has(.card__link:is(:hover, :focus-visible)) {
  --image-scale: 1.2;
}
.card--light {
  color: #fff;
}
@media (max-width: 992px) {
  .card {
    --min-height: clamp(492px, 348px + 0.1875 * 100vw, 534px);
  }
}
@media (max-width: 768px) {
  .card {
    --min-height: clamp(230px, 70.7617504052px + 0.4246353323 * 100vw, 492px);
    height: revert;
    min-height: var(--min-height);
  }
}
.card__content {
  display: flex;
  flex-direction: column;
  padding-block: 50px 30px;
  padding-inline: clamp(20px, -42px + 0.0625 * 100vw, 78px);
  row-gap: clamp(20px, 0.6666666667px + 0.0251736111 * 100vw, 49px);
}
@media (max-width: 992px) {
  .card__content {
    padding-block-start: clamp(42px, -122.5714285714px + 0.2142857143 * 100vw, 90px);
    padding-inline: var(--container-offset);
  }
}
@media (max-width: 768px) {
  .card__content {
    padding-block: clamp(20px, -0.9923664122px + 0.0559796438 * 100vw, 42px);
    padding-inline: clamp(20px, -0.9923664122px + 0.0559796438 * 100vw, 42px);
  }
}
.card__figure {
  position: absolute;
  inset: 0;
  z-index: -1;
  margin: 0;
}
.card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(var(--image-scale, revert));
  transition: transform 0.3s ease;
}
.card__link::after {
  content: "";
  position: absolute;
  inset: 0;
}

.prefooter {
  --padding-inline-start-unit: clamp(20px, -48.3333333333px + 0.0569444444 * 100vw, 61px);
  position: relative;
}
@media (width <= 980px) {
  .prefooter {
    margin-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}
.prefooter__nav {
  display: grid;
  align-items: start;
  grid-template-columns: 1fr 1fr;
  margin-block-end: -1px;
}
@media (width <= 980px) {
  .prefooter__nav {
    grid-template-columns: 1fr;
    margin-inline: var(--container-offset);
  }
}
@media (width >= 981px) {
  .prefooter__item:first-of-type .card__content {
    padding-inline-start: var(--padding-inline, calc(var(--left-panel) + var(--padding-inline-start-unit)));
  }
}
.prefooter__item--projects {
  z-index: 11;
}
@media (width >= 981px) {
  .prefooter__item--services {
    z-index: 1;
    transform: translateY(var(--prefooter-overlap-offset));
  }
}
@media (min-width: 1401px) {
  .prefooter + .ask-expert {
    padding-block-start: calc(var(--padding-block-start) + var(--prefooter-overlap-offset));
  }
}
@media (max-width: 1400px) {
  .prefooter__item--services {
    height: calc(var(--min-height) - var(--prefooter-overlap-offset));
  }
}
@media (width <= 980px) {
  .prefooter__item--services {
    height: var(--min-height);
  }
  .prefooter__item--services::before {
    content: "";
    position: absolute;
    width: 50%;
    height: clamp(25px, 7.6446280992px + 0.0462809917 * 100vw, 53px);
    background-color: #fff;
    pointer-events: none;
    inset-block-end: 0;
    inset-inline-end: 0;
  }
}
@media (max-width: 992px) {
  .prefooter {
    --padding-inline: var(--container-offset);
  }
}

.service-card {
  --padding-inline-start-unit: clamp(57px, 5.3333333333px + 0.0430555556 * 100vw, 88px);
  --padding-inline-start: calc(var(--left-panel) + var(--padding-inline-start-unit));
  --tiles-color: #fff;
  counter-increment: services-counter;
  position: relative;
  background-color: var(--color-gray);
  isolation: isolate;
  padding-block: 46px;
  padding-inline: var(--padding-inline-start) clamp(45px, -121.9230769231px + 0.1192307692 * 100vw, 107px);
}
@media (max-width: 1200px) {
  .service-card {
    --min-height: 600px;
  }
}
@media (max-width: 992px) {
  .service-card {
    --decor-color: #fff;
    padding-block-start: clamp(60px, -1.7142857143px + 0.0803571429 * 100vw, 78px);
    padding-inline: var(--container-offset);
  }
}
@media (max-width: 768px) {
  .service-card {
    padding-block-start: clamp(40px, 20.9160305344px + 0.0508905852 * 100vw, 60px);
  }
}
.service-card .tiles {
  position: absolute;
  inset: 0;
  z-index: -1;
  display: grid;
}
@media (min-width: 993px) {
  .service-card .tiles {
    padding-inline-start: var(--left-panel);
  }
}
.service-card .tile {
  width: 100%;
  height: 100%;
  background-color: var(--tiles-color);
}
@media (min-width: 993px) {
  .service-card--reversed {
    --title-col: 4 / span 8;
    --counter-col: 1 / span 2;
    --desc-col: 1 / span 5;
    --link-col: 1 / span 5;
    --decor-col: 7 / span 3;
  }
}
@media (min-width: 993px) and (max-width: 1400px) {
  .service-card--reversed {
    --decor-col: 11 / span 2;
    --desc-col: 1 / span 10;
    --title-col: 4 / span 9;
    --title-col-self: end;
    justify-self: end;
  }
}
.service-card--design {
  --decor-max-width: clamp(205px, 78.3333333333px + 0.1055555556 * 100vw, 281px);
  min-height: var(--min-height, 700px);
}
@media (max-width: 992px) {
  .service-card--design {
    --min-height: 869px;
    --decor-max-width: clamp(140px, -1.0048622366px + 0.376012966 * 100vw, 372px);
    --decor-col: 1 / span 5;
  }
  .service-card--design .service-card__decor {
    padding-block-start: clamp(10px, -18.6259541985px + 0.0763358779 * 100vw, 40px);
  }
}
@media (max-width: 768px) {
  .service-card--design {
    --min-height: clamp(571px, 286.6488549618px + 0.7582697201 * 100vw, 869px);
  }
}
@media (min-width: 993px) {
  .service-card--design .tiles {
    grid-template-columns: 1fr 1fr 2fr 0.645fr 0.645fr;
    grid-template-rows: repeat(15, 1fr);
  }
}
@media (max-width: 992px) {
  .service-card--design .tiles {
    align-content: end;
    grid-auto-rows: clamp(23px, 6.7786259542px + 0.0432569975 * 100vw, 40px);
    grid-template-columns: repeat(14, 1fr);
  }
}
.service-card--design .tile--1 {
  grid-column: 1;
  grid-row: -4;
  height: clamp(38px, -4px + 0.035 * 100vw, 45px);
}
.service-card--design .tile--2 {
  align-self: flex-end;
  grid-column: 2;
  grid-row: -3/span 2;
  height: clamp(78px, 0px + 0.065 * 100vw, 91px);
}
.service-card--design .tile--3 {
  grid-column: 3;
  grid-row: -5/span 2;
  height: clamp(83px, -1px + 0.07 * 100vw, 97px);
}
.service-card--design .tile--4 {
  grid-column: 4;
  grid-row: -7/span 1;
  height: clamp(56px, 2px + 0.045 * 100vw, 65px);
}
.service-card--design .tile--5 {
  grid-column: 5;
  grid-row: -8/span 2;
}
@media (max-width: 992px) {
  .service-card--design .tile:not(:is(.service-card--design .tile--1, .service-card--design .tile--2, .service-card--design .tile--3)) {
    display: none;
  }
  .service-card--design .tile--1, .service-card--design .tile--2 {
    height: 100%;
  }
  .service-card--design .tile--1 {
    grid-column: 1/span 3;
    grid-row: -4/span 2;
  }
  .service-card--design .tile--2 {
    grid-column: -5/span 4;
    grid-row: -4/span 2;
  }
  .service-card--design .tile--3 {
    grid-column: 1/span 10;
    grid-row: -2/span 1;
    height: 100%;
  }
}
.service-card--construction {
  --tiles-color: var(--color-gray);
  --desc-max-width: clamp(651px, 93px + 0.465 * 100vw, 744px);
  --decor-max-width: clamp(265px, 100px + 0.1375 * 100vw, 364px);
  min-height: var(--min-height, 700px);
  background-color: #fff;
}
@media (max-width: 992px) {
  .service-card--construction {
    --decor-color: var(--color-gray);
    --min-height: clamp(541px, 319.1604538088px + 0.5915721232 * 100vw, 906px);
    --decor-col: 1 / span 6;
    --decor-max-width: clamp(181px, -1.3338735818px + 0.4862236629 * 100vw, 481px);
  }
}
@media (min-width: 993px) {
  .service-card--construction .tiles {
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(9, 1fr);
  }
}
@media (max-width: 992px) {
  .service-card--construction .tiles {
    align-content: end;
    grid-auto-rows: clamp(28px, 18.4580152672px + 0.0254452926 * 100vw, 38px);
    grid-template-columns: repeat(10, 1fr);
    padding-block-end: clamp(40px, 1.8320610687px + 0.1017811705 * 100vw, 80px);
  }
}
@media (min-width: 993px) {
  .service-card--construction .tile--1 {
    justify-self: start;
    grid-column: 4;
    grid-row: -3;
    height: clamp(54px, 0px + 0.045 * 100vw, 63px);
    margin-inline-start: -20px;
  }
}
@media (max-width: 992px) {
  .service-card--construction .tile--1 {
    grid-column: 1/span 2;
    grid-row: -6;
  }
}
@media (min-width: 993px) {
  .service-card--construction .tile--2 {
    align-self: flex-end;
    grid-column: 5/span 5;
    grid-row: -4/span 1;
    height: clamp(57px, -3px + 0.05 * 100vw, 67px);
  }
}
@media (max-width: 992px) {
  .service-card--construction .tile--2 {
    grid-column: 3/span 5;
    grid-row: -5/span 2;
  }
}
@media (min-width: 993px) {
  .service-card--construction .tile--3 {
    align-self: flex-end;
    grid-column: -4/span 3;
    grid-row: -2/span 1;
    height: clamp(63px, -3px + 0.055 * 100vw, 74px);
  }
}
@media (max-width: 992px) {
  .service-card--construction .tile--3 {
    grid-column: 7/span 4;
    grid-row: -9;
  }
}
.service-card--development {
  --decor-col: 1 / span 3;
  --desc-max-width: 670px;
  --decor-max-width: clamp(283px, 108px + 0.1458333333 * 100vw, 388px);
  min-height: var(--min-height, 758px);
}
@media (max-width: 992px) {
  .service-card--development {
    --min-height: 809px;
    --decor-col: 1 / span 8;
    --decor-max-width: clamp(194px, 0.1183144246px + 0.5170178282 * 100vw, 513px);
  }
}
@media (max-width: 768px) {
  .service-card--development {
    --min-height: clamp(551px, 248.5190839695px + 0.8066157761 * 100vw, 868px);
  }
}
@media (max-width: 567px) {
  .service-card--development {
    position: relative;
  }
  .service-card--development::before {
    content: "";
    position: absolute;
    width: 104px;
    height: 30px;
    background-color: var(--tiles-color);
    inset-block-start: 0;
    inset-inline-end: 0;
  }
}
@media (min-width: 993px) {
  .service-card--development .service-card__decor {
    margin-block-start: -20px;
    padding-inline-end: 40px;
  }
}
@media (min-width: 993px) {
  .service-card--development .tiles {
    grid-template-columns: repeat(22, 1fr);
    grid-template-rows: repeat(11, 1fr);
    padding-inline-start: 0;
  }
}
@media (max-width: 992px) {
  .service-card--development .tiles {
    align-content: end;
    grid-template-columns: 2fr 1.3fr 0.4fr;
  }
}
.service-card--development .tile--1 {
  align-self: end;
}
@media (min-width: 993px) {
  .service-card--development .tile--1 {
    grid-column: 7/span 8;
    grid-row: 7/span 2;
    height: clamp(83px, 59.6666666667px + 0.0194444444 * 100vw, 97px);
  }
}
@media (min-width: 993px) {
  .service-card--development .tile--2 {
    grid-column: 15/span 4;
    grid-row: -4;
    height: clamp(38px, 26.3333333333px + 0.0097222222 * 100vw, 45px);
  }
}
@media (min-width: 993px) {
  .service-card--development .tile--3 {
    grid-column: -5/span 4;
    grid-row: -6;
    height: clamp(38px, 26.3333333333px + 0.0097222222 * 100vw, 45px);
  }
  .service-card--development .tile--4 {
    align-self: end;
    grid-column: 1/span 10;
    grid-row: -2;
    height: clamp(48px, 34.6666666667px + 0.0111111111 * 100vw, 56px);
    max-width: 806px;
  }
  .service-card--development .tile--5 {
    align-self: end;
    grid-column: -5/span 4;
    grid-row: -2;
    height: clamp(48px, 34.6666666667px + 0.0111111111 * 100vw, 56px);
  }
}
@media (max-width: 992px) {
  .service-card--development .tile:not(:is(.service-card--development .tile--1, .service-card--development .tile--2, .service-card--development .tile--3)) {
    display: none;
  }
  .service-card--development .tile--1 {
    grid-column: 1;
    grid-row: 2;
    height: clamp(58px, 37.0076335878px + 0.0559796438 * 100vw, 80px);
  }
  .service-card--development .tile--2 {
    grid-column: 2;
    height: clamp(28px, 22.2748091603px + 0.0152671756 * 100vw, 34px);
  }
  .service-card--development .tile--3 {
    display: none;
    justify-self: end;
    grid-column: 1/-1;
    height: clamp(41px, 32.4122137405px + 0.0229007634 * 100vw, 50px);
    max-width: 80%;
  }
}
@media (max-width: 768px) {
  .service-card--development .tile--3 {
    display: block;
    margin-block-start: clamp(75px, 30.1526717557px + 0.1195928753 * 100vw, 122px);
  }
}
.service-card__content {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.service-card__content::after {
  content: "|" counter(services-counter, decimal-leading-zero) "|";
  display: block;
  grid-column: var(--counter-col, 11/span 2);
  grid-row: 1;
  width: -webkit-max-content;
  width: max-content;
  font-weight: 100;
  font-size: clamp(120px, -5px + 0.1041666667 * 100vw, 195px);
  line-height: 0.93;
  letter-spacing: -0.05em;
  color: var(--tiles-color);
}
@media (max-width: 992px) {
  .service-card__content::after {
    justify-self: end;
    grid-row: 2;
    font-size: clamp(54px, 13.886547812px + 0.1069692058 * 100vw, 120px);
  }
}
.service-card__title {
  justify-self: var(--title-col-self, revert);
  grid-column: var(--title-col, 1/span 9);
  grid-row: 1;
  margin-block-end: clamp(99px, 90.6666666667px + 0.0069444444 * 100vw, 104px);
}
@media (max-width: 992px) {
  .service-card__title {
    margin-block-end: clamp(20px, 15.2290076336px + 0.0127226463 * 100vw, 25px);
  }
}
.service-card__decor {
  grid-column: var(--decor-col, 1/span 2);
  width: var(--decor-max-width, 281px);
  height: auto;
  color: var(--decor-color, inherit);
}
@media (min-width: 993px) {
  .service-card__decor {
    grid-row: 2/span 2;
  }
}
@media (max-width: 992px) {
  .service-card__decor {
    grid-column: var(--decor-col, 1/span 3);
    grid-row: 2/span 3;
  }
}
.service-card__desc {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-self: flex-end;
  grid-column: var(--desc-col, 4/span 9);
  max-width: var(--desc-max-width, 762px);
  line-height: 1.25;
  margin-block-end: clamp(60px, -60px + 0.1 * 100vw, 80px);
}
.service-card__desc p {
  margin-block: 0;
}
@media (min-width: 993px) {
  .service-card__desc {
    grid-row: 2;
    row-gap: 36px;
  }
}
@media (max-width: 992px) {
  .service-card__desc {
    --desc-col: 4/ -1;
    grid-row: 3;
    margin-block-end: clamp(40px, 20.9160305344px + 0.0508905852 * 100vw, 60px);
    padding-block-start: clamp(20px, -48.5714285714px + 0.0892857143 * 100vw, 40px);
  }
}
.service-card__link {
  grid-column: var(--link-col, 4/span 5);
}
@media (min-width: 993px) {
  .service-card__link {
    grid-row: 3;
  }
}
@media (max-width: 992px) {
  .service-card__link {
    grid-row: 4;
    --link-col: 4 / span 3;
  }
}

.map {
  position: relative;
  width: 100%;
  height: clamp(511px, -19px + 0.4416666667 * 100vw, 829px);
  background-color: #bebebe;
}
.map__iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(1);
  pointer-events: none;
}
.map .ymaps-2-1-79-ground-pane {
  filter: grayscale(1);
}
.map :is(.ymaps-2-1-79-gotoymaps, .ymaps-2-1-79-gototaxi, .ymaps-2-1-79-gototech) {
  display: none;
}
@media (max-width: 992px) {
  .map {
    height: 625px;
  }
}
@media (max-width: 768px) {
  .map {
    height: clamp(410px, 133.2824427481px + 0.737913486 * 100vw, 700px);
  }
}

.contacts {
  --padding-inline-start: clamp(58px, -5.3333333333px + 0.0527777778 * 100vw, 96px);
  --padding-inline-end: clamp(49px, -5px + 0.045 * 100vw, 58px);
  --padding-inline: var(--padding-inline-start) var(--padding-inline-end);
  --content-max-width: calc(1374px + var(--padding-inline-start) + var(--padding-inline-end));
  position: relative;
}
@media (min-width: 993px) {
  .contacts {
    padding-inline-start: var(--left-panel);
  }
}
@media (max-width: 992px) {
  .contacts {
    --padding-inline: var(--container-offset);
  }
}
.contacts__header {
  --content-width: 62.48%;
  --rect-size: clamp(51px, 12.6666666667px + 0.0319444444 * 100vw, 74px);
  display: grid;
  grid-template-columns: auto var(--content-width);
  max-width: 62.48%;
  max-width: var(--content-max-width);
  gap: clamp(60px, -25px + 0.0708333333 * 100vw, 111px) clamp(38px, -2px + 0.0333333333 * 100vw, 62px);
  padding-block: clamp(77px, 45.3333333333px + 0.0263888889 * 100vw, 96px) clamp(65px, 40px + 0.0208333333 * 100vw, 80px);
  padding-inline: var(--padding-inline);
}
.contacts__header::before {
  content: "";
  display: block;
  justify-self: end;
  width: var(--rect-size);
  height: var(--rect-size);
  background-color: var(--color-purple);
}
@media (max-width: 1400px) {
  .contacts__header {
    --content-width: 70%;
  }
}
@media (max-width: 992px) {
  .contacts__header {
    --content-width: 74.4%;
    --rect-size: clamp(30px, 11.7666126418px + 0.0486223663 * 100vw, 60px);
    gap: clamp(16px, -6.9007633588px + 0.0610687023 * 100vw, 40px) 0;
    padding-block: clamp(20px, -16.4667747164px + 0.0972447326 * 100vw, 80px) clamp(48px, 28.5510534846px + 0.0518638574 * 100vw, 80px);
  }
  .contacts__header::before {
    justify-self: start;
    grid-row: 1;
  }
}
@media (max-width: 567px) {
  .contacts__header {
    --content-width: 73.5%;
  }
}
.contacts__title {
  grid-column: 2;
  grid-row: 1;
}
.contacts__title::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-start: calc((0.5 - 0.93) * 0.2em);
}
@media (max-width: 992px) {
  .contacts__title {
    grid-column: 1/-1;
    grid-row: 2;
  }
}
.contacts__desc {
  display: flex;
  flex-direction: column;
  grid-column: 2;
  line-height: 1.2;
  row-gap: 15px;
}
.contacts__desc p {
  margin-block: 0;
}
@media (max-width: 992px) {
  .contacts__desc {
    grid-row: 3;
  }
}
.contacts__body {
  max-width: var(--content-max-width);
  margin-block-end: clamp(68px, 14.6666666667px + 0.0444444444 * 100vw, 100px);
  padding-inline: var(--padding-inline);
}
@media (max-width: 992px) {
  .contacts__body {
    margin-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}

.career {
  --padding-inline-start-unit: clamp(40px, -30px + 0.0583333333 * 100vw, 82px);
  --padding: calc(var(--left-panel) + var(--padding-inline-start-unit));
  --padding-block-start: clamp(53px, 38px + 0.0125 * 100vw, 62px);
  --padding-block-end: clamp(97px, -5px + 0.085 * 100vw, 114px);
  --tiles-rows-height: clamp(44px, 12.3333333333px + 0.0263888889 * 100vw, 63px);
  position: relative;
  display: flex;
  flex-wrap: wrap;
  min-height: calc(398px + var(--tiles-rows-height));
  background-color: var(--color-gray);
  isolation: isolate;
  gap: clamp(40px, -97.1428571429px + 0.1785714286 * 100vw, 80px) 91px;
  padding-block: var(--padding-block-start) calc(var(--padding-block-start) + var(--tiles-rows-height));
  padding-inline: var(--padding) 58px;
}
@media (max-width: 1400px) {
  .career {
    justify-content: space-between;
    min-height: clamp(411px, -3px + 0.345 * 100vw, 480px);
    padding-block: var(--padding-block-start) var(--padding-block-end);
  }
}
@media (max-width: 992px) {
  .career {
    --padding-block-start: clamp(40px, 1.8320610687px + 0.1017811705 * 100vw, 80px);
    --padding-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
    min-height: clamp(545px, 452.4285714286px + 0.1205357143 * 100vw, 572px);
    padding-inline: var(--container-offset) clamp(15px, -9.3111831442px + 0.0648298217 * 100vw, 55px);
    row-gap: clamp(26px, -6.8200972447px + 0.0875202593 * 100vw, 80px);
  }
}
@media (max-width: 768px) {
  .career {
    min-height: clamp(328px, 120.9389312977px + 0.5521628499 * 100vw, 545px);
  }
}
.career__content {
  display: flex;
  flex-basis: 654px;
  flex-direction: column;
  align-self: flex-end;
  row-gap: 20px;
}
@media (max-width: 1400px) {
  .career__content {
    flex-basis: 518px;
  }
}
@media (max-width: 1200px) {
  .career__content {
    flex-basis: 434px;
  }
}
@media (max-width: 992px) {
  .career__content {
    flex-basis: clamp(255px, 0.340356564px + 0.6790923825 * 100vw, 674px);
    align-self: start;
    margin-inline-start: auto;
  }
}
.career .tiles {
  --tile-1: [tile-1] clamp(479px, 154px + 0.2708333333 * 100vw, 674px);
  --tile-2: [tile-2] clamp(93px, 29.6666666667px + 0.0527777778 * 100vw, 131px);
  position: absolute;
  inset: 0;
  z-index: -1;
  display: grid;
  place-content: end end;
  grid-auto-rows: var(--tiles-rows-height);
  pointer-events: none;
}
@media (max-width: 1400px) {
  .career .tiles {
    place-content: end start;
  }
}
@media (min-width: 993px) {
  .career .tiles {
    grid-template-columns: var(--tile-1) var(--tile-2);
  }
}
@media (max-width: 992px) {
  .career .tiles {
    --tile-1: [tile-1] clamp(217px, 28.0687022901px + 0.5038167939 * 100vw, 415px);
    --tiles-rows-height: clamp(34px, 14.9160305344px + 0.0508905852 * 100vw, 54px);
    grid-template-columns: var(--tile-1);
  }
}
.career .tile {
  z-index: -1;
  background-color: #fff;
}
.career .tile--1 {
  grid-column: tile-1;
  grid-row: -1;
}
.career .tile--2 {
  grid-column: tile-2;
  grid-row: -2;
}
@media (max-width: 992px) {
  .career .tile--2 {
    display: none;
  }
}

.projects-list {
  display: flex;
  flex-direction: column;
  row-gap: clamp(80px, -54.6153846154px + 0.0961538462 * 100vw, 130px);
}
@media (max-width: 1400px) {
  .projects-list {
    row-gap: clamp(40px, 21.8181818182px + 0.0484848485 * 100vw, 80px);
  }
}
@media (min-width: 993px) {
  .projects-list__item:nth-child(odd) {
    margin-inline-end: var(--default-offset);
  }
  .projects-list__item:nth-child(even) {
    --reset-left-offset: 0;
    margin-inline-start: var(--default-offset);
  }
}

.project-card {
  --card-height: clamp(542px, 426.5517241379px + 0.1163793103 * 100vw, 650px);
  position: relative;
  display: grid;
}
@media (min-width: 993px) {
  .project-card {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    height: var(--card-height);
    isolation: isolate;
  }
}
@media (max-width: 992px) {
  .project-card {
    --card-height: clamp(200px, -7.8606158833px + 0.5542949757 * 100vw, 542px);
    row-gap: clamp(5px, -1.679389313px + 0.0178117048 * 100vw, 12px);
  }
}
.project-card:has(.project-card__link:hover) {
  --brightness: 0.8;
}
.project-card__figure {
  margin: 0;
}
@media (min-width: 993px) {
  .project-card__figure {
    position: absolute;
    inset: 0;
    z-index: -1;
    filter: brightness(var(--brightness, revert));
    transition: filter 0.3s ease;
    will-change: filter;
  }
}
@media (max-width: 992px) {
  .project-card__figure {
    order: -3;
    height: var(--card-height);
    margin-block-end: clamp(4px, -4.5877862595px + 0.0229007634 * 100vw, 13px);
  }
}
.project-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.project-card__title {
  font-weight: 400;
  margin-block: 0;
}
@media (min-width: 993px) {
  .project-card__title {
    place-self: end start;
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: clamp(600px, -48px + 0.54 * 100vw, 708px);
    background-color: #fff;
    margin-block-end: -1.5px;
    margin-inline-start: -1.5px;
    padding-block-start: 25px;
    padding-inline: var(--reset-left-offset, var(--default-offset)) 30px;
  }
}
@media (max-width: 992px) {
  .project-card__title {
    order: -1;
  }
}
.project-card__link {
  --icon-size: 20px;
  display: flex;
  align-items: center;
  outline: none;
  gap: clamp(10px, 6.3533225284px + 0.0097244733 * 100vw, 16px);
}
.project-card__link::before {
  content: "";
  display: block;
  flex-shrink: 0;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.287 0.296875L18.7653 0.670521L19.305 1.21023L19.6786 18.647L16.8971 18.73L16.648 5.56942L2.24187 19.934L0 17.7337L14.4061 3.32755L1.24548 3.07846L1.287 0.296875Z' fill='black' /%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.287 0.296875L18.7653 0.670521L19.305 1.21023L19.6786 18.647L16.8971 18.73L16.648 5.56942L2.24187 19.934L0 17.7337L14.4061 3.32755L1.24548 3.07846L1.287 0.296875Z' fill='black' /%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  width: var(--icon-size);
  height: var(--icon-size);
  background-color: currentcolor;
}
.project-card__link::after {
  content: "";
  position: absolute;
  inset: 0;
}
.project-card__link:focus-visible::after {
  outline: 2px dashed var(--color-purple);
  outline-offset: 10px;
}
@media (max-width: 992px) {
  .project-card__link {
    --icon-size: clamp(14px, 2.5496183206px + 0.0305343511 * 100vw, 26px);
  }
}
.project-card__tags {
  z-index: 1;
  display: flex;
  align-items: center;
}
@media (min-width: 993px) {
  .project-card__tags {
    place-self: start end;
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: 558px;
    background-color: #fff;
    gap: 20px 32px;
    margin-block-start: -1.5px;
    margin-inline-end: -1.5px;
    padding-block: 11px 14px;
    padding-inline: 20px;
  }
}
@media (max-width: 992px) {
  .project-card__tags {
    -moz-column-gap: clamp(15px, -1.4100486224px + 0.0437601297 * 100vw, 42px);
    column-gap: clamp(15px, -1.4100486224px + 0.0437601297 * 100vw, 42px);
    order: -1;
  }
}
.project-card__tag {
  --icon-size: clamp(30px, 0px + 0.025 * 100vw, 35px);
  display: flex;
  align-items: center;
  line-height: 1.15;
  gap: 8px;
}
.project-card__tag--area {
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none'%3E%3Cpath stroke='%23fff' stroke-linejoin='bevel' stroke-width='2' d='M13.111 1.234h7.654V8.82M1.205 8.82V1.233h7.851M20.765 13.209v7.585h-7.654M9.056 20.794h-7.85v-7.585M20.456 1.604 1.824 20.235'/%3E%3C/svg%3E");
}
.project-card__tag--location {
  --icon-bg-size: 54%;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='27' fill='none'%3E%3Cpath stroke='%23fff' stroke-miterlimit='10' stroke-width='2' d='M1.396 9.528a7.924 7.924 0 1 1 15.85 0M17.228 11.908c0 6.246-7.925 13.487-7.925 13.487S1.38 18.155 1.38 11.908'/%3E%3Cpath stroke='%23fff' stroke-miterlimit='10' stroke-width='2' d='M12.09 7.332H6.534v5.554h5.554V7.332Z'/%3E%3C/svg%3E");
}
.project-card__tag::before {
  content: "";
  display: block;
  width: var(--icon-size);
  height: var(--icon-size);
  background-image: var(--icon);
  background-position: center;
  background-size: var(--icon-bg-size, 65%);
  background-repeat: no-repeat;
  background-color: #000;
}
@media (max-width: 992px) {
  .project-card__tag {
    --icon-size: clamp(17px, -1.1297709924px + 0.048346056 * 100vw, 36px);
  }
}

.about-project {
  display: flex;
  justify-content: space-between;
  gap: clamp(30px, -0.3889789303px + 0.0810372771 * 100vw, 80px) clamp(61px, 29.3333333333px + 0.0263888889 * 100vw, 80px);
}
@media (max-width: 992px) {
  .about-project {
    flex-direction: column;
  }
}
.about-project__title {
  font-weight: 300;
  font-size: clamp(53px, 24.6666666667px + 0.0236111111 * 100vw, 70px);
  line-height: 0.82;
}
.about-project__title::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-start: calc((0.5 - 1.3) * 0.2em);
}
@media (max-width: 992px) {
  .about-project__title {
    font-size: clamp(33px, 2.465648855px + 0.0814249364 * 100vw, 65px);
  }
}
.about-project__list .list__term {
  font-size: clamp(13px, 9.7073170732px + 0.0087804878 * 100vw, 22px);
}
@media (min-width: 993px) {
  .about-project__list {
    max-width: var(--content-width);
  }
}
@media (max-width: 992px) {
  .about-project__list {
    --padding-block-end: clamp(30px, 20.4580152672px + 0.0254452926 * 100vw, 40px);
  }
  .about-project__list .list__item {
    display: grid;
    grid-template-columns: minmax(98px, 0.5fr) 1fr;
  }
  .about-project__list .list__term {
    font-size: clamp(13px, 2.5038167939px + 0.0279898219 * 100vw, 24px);
  }
}

.article {
  --content-width: 68%;
  position: relative;
  padding-block-end: clamp(85px, 35px + 0.0416666667 * 100vw, 115px);
}
@media (min-width: 993px) {
  .article {
    padding-inline-start: var(--left-panel);
  }
}
@media (max-width: 992px) {
  .article {
    padding-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}
.article__heading {
  margin-block-end: clamp(73px, 28px + 0.0375 * 100vw, 100px);
}
@media (min-width: 993px) {
  .article__heading {
    padding-inline-end: var(--default-offset);
  }
}
@media (max-width: 992px) {
  .article__heading {
    padding-inline: var(--container-offset);
  }
}
.article__heading-content {
  display: grid;
  grid-template-columns: auto var(--content-width);
  gap: clamp(34px, 24px + 0.0083333333 * 100vw, 40px);
  padding-block: clamp(80px, 21.6666666667px + 0.0486111111 * 100vw, 115px) 41px;
}
@media (min-width: 993px) {
  .article__heading-content {
    padding-inline-start: var(--default-offset);
  }
}
@media (max-width: 1400px) {
  .article__heading-content {
    padding-block-end: clamp(74px, 38px + 0.03 * 100vw, 80px);
  }
}
@media (max-width: 992px) {
  .article__heading-content {
    grid-template-columns: 100%;
    gap: clamp(20px, 1.7666126418px + 0.0486223663 * 100vw, 50px);
    padding-block: clamp(42px, -88.2857142857px + 0.1696428571 * 100vw, 80px) clamp(40px, 1.8320610687px + 0.1017811705 * 100vw, 80px);
  }
}
@media (max-width: 768px) {
  .article__heading-content {
    padding-block-start: clamp(20px, -0.9923664122px + 0.0559796438 * 100vw, 42px);
  }
}
@media (max-width: 992px) {
  .article__heading {
    margin-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}
.article__title {
  font-weight: 500;
  font-size: clamp(70px, 20px + 0.0416666667 * 100vw, 100px);
  line-height: 1;
}
.article__title::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-start: calc((0.5 - 1.3) * 0.2em);
}
@media (min-width: 993px) {
  .article__title {
    grid-column: 2;
  }
}
@media (max-width: 992px) {
  .article__title {
    font-size: clamp(36px, 5.8354661792px + 0.0804387569 * 100vw, 80px);
  }
}
@media (min-width: 993px) {
  .article__link {
    grid-row: 1;
    padding-block-start: 49px;
  }
}
@media (max-width: 992px) {
  .article__link {
    order: -3;
  }
}
.article__tags {
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px clamp(42px, -6px + 0.04 * 100vw, 50px);
}
@media (min-width: 993px) {
  .article__tags {
    grid-column: 2;
  }
}
@media (max-width: 992px) {
  .article__tags {
    -moz-column-gap: clamp(24px, -0.3111831442px + 0.0648298217 * 100vw, 64px);
    column-gap: clamp(24px, -0.3111831442px + 0.0648298217 * 100vw, 64px);
  }
}
.article__tag {
  --icon-size: clamp(30px, 0px + 0.025 * 100vw, 35px);
  display: flex;
  align-items: center;
  line-height: 1.15;
  gap: 8px;
}
.article__tag--area {
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' fill='none'%3E%3Cpath stroke='%23fff' stroke-linejoin='bevel' stroke-width='2' d='M13.111 1.234h7.654V8.82M1.205 8.82V1.233h7.851M20.765 13.209v7.585h-7.654M9.056 20.794h-7.85v-7.585M20.456 1.604 1.824 20.235'/%3E%3C/svg%3E");
}
.article__tag--location {
  --icon-bg-size: 53%;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='27' fill='none'%3E%3Cpath stroke='%23fff' stroke-miterlimit='10' stroke-width='2' d='M1.396 9.528a7.924 7.924 0 1 1 15.85 0M17.228 11.908c0 6.246-7.925 13.487-7.925 13.487S1.38 18.155 1.38 11.908'/%3E%3Cpath stroke='%23fff' stroke-miterlimit='10' stroke-width='2' d='M12.09 7.332H6.534v5.554h5.554V7.332Z'/%3E%3C/svg%3E");
}
.article__tag--state {
  --icon-bg-color: var(--color-purple);
  --icon-bg-size: 54%;
  --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='23' fill='none'%3E%3Cpath stroke='%23fff' stroke-linejoin='bevel' stroke-width='2' d='M1 10.336V1.702h20v8.634M21 13.068v8.635H1v-8.635'/%3E%3Cpath stroke='%23fff' stroke-linejoin='bevel' stroke-width='2' d='m4.98 10.16 5.085 5.086 7.896-7.888'/%3E%3C/svg%3E");
}
.article__tag::before {
  content: "";
  display: block;
  width: var(--icon-size);
  height: var(--icon-size);
  background-image: var(--icon);
  background-position: center;
  background-size: var(--icon-bg-size, 65%);
  background-repeat: no-repeat;
  background-color: var(--icon-bg-color, #000);
}
@media (max-width: 992px) {
  .article__tag {
    --icon-size: clamp(17px, -1.1297709924px + 0.048346056 * 100vw, 36px);
    font-size: clamp(13px, 3.8833063209px + 0.0243111831 * 100vw, 28px);
  }
}
.article__hero {
  --hero-height: clamp(523px, 124.6666666667px + 0.3319444444 * 100vw, 762px);
  margin: 0;
  height: var(--hero-height);
}
@media (max-width: 992px) {
  .article__hero {
    --hero-height: clamp(200px, -7.8606158833px + 0.5542949757 * 100vw, 542px);
  }
}
.article__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.article__about-project {
  margin-block-end: clamp(68px, -10.3333333333px + 0.0652777778 * 100vw, 115px);
}
@media (min-width: 993px) {
  .article__about-project {
    padding-inline: var(--default-offset);
  }
}
@media (max-width: 992px) {
  .article__about-project {
    margin-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
  .article__about-project .list__desc {
    font-weight: 400;
  }
}
@media (min-width: 993px) {
  .article__more-projects {
    margin-inline: var(--default-offset);
  }
}
.article__swiper {
  margin-block-end: clamp(33px, -88.6666666667px + 0.1013888889 * 100vw, 106px);
}
@media (max-width: 992px) {
  .article__content {
    padding-inline: var(--default-offset);
  }
}

.gallery {
  display: grid;
}
@media (min-width: 993px) {
  .gallery {
    grid-template-columns: var(--section-grid);
    gap: clamp(20px, -14.2857142857px + 0.0595238095 * 100vw, 100px) var(--section-gap);
  }
}
@media (max-width: 992px) {
  .gallery {
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(20px, 0.9160305344px + 0.0508905852 * 100vw, 40px) 15px;
  }
}
.gallery__item {
  --item-height: clamp(420px, 36.6666666667px + 0.3194444444 * 100vw, 650px);
  position: relative;
  height: var(--item-height);
}
@media (max-width: 992px) {
  .gallery__item {
    --item-height: clamp(420px, 217.8947368421px + 0.2631578947 * 100vw, 460px);
  }
}
@media (max-width: 768px) {
  .gallery__item {
    --item-height: clamp(200px, -9.9236641221px + 0.5597964377 * 100vw, 420px);
  }
}
@media (any-hover: hover) {
  .gallery__item:hover {
    --brightness: 0.8;
  }
}
.gallery__item:has(:is(.gallery__item__link:hover, .gallery__item__link:focus-visible)) {
  --brightness: 0.8;
}
.gallery__item--video {
  --icon: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' fill='none'%3E%3Cpath fill='%236E4FB5' d='M0 0h90v90H0z'/%3E%3Cg clip-path='url(%23a)'%3E%3Cpath stroke='%23fff' stroke-linejoin='bevel' stroke-width='2' d='M31.863 18.481 67.88 45.01 31.863 71.52V29.495'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M30 17h39v56H30z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
  --icon-size: clamp(40px, 27.8640776699px + 0.0323624595 * 100vw, 90px);
}
.gallery__item--video::after {
  content: "";
  position: absolute;
  width: var(--icon-size);
  height: var(--icon-size);
  background: var(--icon) no-repeat center/contain;
  background-color: var(--color-purple);
  transform: translate(-50%, -50%);
  inset-block-start: 50%;
  inset-inline-start: 50%;
}
@media (min-width: 993px) {
  .gallery__item--wide {
    grid-column: 1/-1;
    margin-inline-end: var(--default-offset);
  }
}
@media (min-width: 993px) {
  .gallery__item--medium {
    grid-column: 5/-1;
    margin-inline-start: calc(-1 * var(--section-gap));
  }
}
.gallery__item--half {
  --item-height: clamp(340px, -93.3333333333px + 0.3611111111 * 100vw, 600px);
}
@media (min-width: 993px) {
  .gallery__item--half {
    grid-column: span 6;
  }
}
@media (max-width: 992px) {
  .gallery__item--half {
    --item-height: clamp(420px, 217.8947368421px + 0.2631578947 * 100vw, 460px);
  }
}
@media (max-width: 768px) {
  .gallery__item--half {
    --item-height: clamp(200px, -9.9236641221px + 0.5597964377 * 100vw, 420px);
  }
}
@media (max-width: 992px) {
  .gallery__item:nth-child(odd) {
    grid-column: 1/-1;
  }
}
@media (max-width: 992px) {
  .gallery__item:nth-child(even) {
    grid-column: 1/-2;
    margin-inline-end: -15px;
  }
}
.gallery__media {
  margin: 0;
  width: 100%;
  height: 100%;
  background-color: #bebebe;
  filter: brightness(var(--brightness, revert));
  transition: filter 0.3s ease;
  will-change: filter;
  -webkit-user-select: none;
  user-select: none;
}
.gallery__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery__link {
  position: absolute;
  inset: 0;
  z-index: 1;
  -webkit-user-select: none;
  user-select: none;
}
.gallery__link:focus-visible {
  outline: 2px dashed #fff;
  outline-offset: -10px;
}

:root {
  --hystmodal-speed: 0.2s;
  --hystmodal-zindex: 70;
  --icon-size: clamp(20px, 9.3203883495px + 0.0284789644 * 100vw, 64px);
}

.hystmodal {
  position: fixed;
  left: 0;
  bottom: 0;
  display: grid;
  place-content: space-between center;
  grid-template-columns: 100%;
  grid-template-rows: 0 -webkit-min-content 0;
  grid-template-rows: 0 min-content 0;
  overflow: hidden;
  overflow-y: auto;
  width: 100%;
  height: calc(100% - var(--header-height));
  visibility: hidden;
  pointer-events: none;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.hystmodal::-webkit-scrollbar {
  display: none;
}

.hystmodal::before {
  content: "";
  position: fixed;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: calc(100% - var(--header-height));
  background: #33343a;
  opacity: 0;
  pointer-events: none;
}

.hystmodal--animated::before {
  transition: opacity var(--hystmodal-speed) ease;
}

.hystmodal--active::before {
  opacity: 0.9;
}

.hystmodal--moved,
.hystmodal--active {
  opacity: 1;
  visibility: visible;
  pointer-events: none;
}

.hystmodal--active {
  pointer-events: auto;
}

.hystmodal__wrap {
  display: block;
  grid-row: 2/3;
  min-width: 0;
}

.hystmodal__window {
  position: relative;
  z-index: 10;
  flex-grow: 0;
  flex-shrink: 0;
  grid-row: 2/3;
  overflow: visible;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  color: #fff;
  opacity: 0;
  transform: scale(0.95);
  margin-block: clamp(24px, 17.6893203883px + 0.016828479 * 100vw, 50px);
  margin-inline: var(--left-panel) var(--default-offset);
}
@media (max-width: 992px) {
  .hystmodal__window {
    margin-inline: var(--container-offset);
  }
}

.hystmodal__window--loading {
  --is-content-loaded: 0;
  min-height: 400px;
  background-image: url("data:image/svg+xml,%0A%3Csvg width='105' height='105' viewBox='0 0 105 105' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Ccircle cx='12.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='0s' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='12.5' cy='52.5' r='12.5' fill-opacity='.5'%3E%3Canimate attributeName='fill-opacity' begin='100ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='300ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='52.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='600ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='800ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='52.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='400ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='12.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='700ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='500ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='200ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3C/svg%3E%0A");
  background-position: 50%;
  background-size: 48px;
  background-repeat: no-repeat;
}

.hystmodal--animated .hystmodal__window {
  transition: transform var(--hystmodal-speed) ease 0s, opacity var(--hystmodal-speed) ease 0s;
}

.hystmodal--active .hystmodal__window {
  opacity: 1;
  transform: none;
}

.hystmodal__close {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
  display: block;
  outline: none;
  border: none;
  width: var(--icon-size);
  height: var(--icon-size);
  font-size: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='1' d='M22 2L2 22'/%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='1' d='M2 2l20 20'/%3E%3C/svg%3E");
  background-position: center center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-color: transparent;
  cursor: pointer;
}

.hystmodal__close--wh {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M22 2L2 22'/%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M2 2l20 20'/%3E%3C/svg%3E");
}

.hystmodal__close:hover {
  opacity: 0.95;
}

.hystmodal__close:focus-visible {
  outline: 2px dotted rgba(0, 0, 0, 0.7);
  outline-offset: 2px;
}

.hystmodal__close--wh:focus-visible {
  outline: 2px dotted rgba(255, 255, 255, 0.7);
}

.modal-gallery__content {
  display: flex;
  flex-direction: column;
  opacity: var(--is-content-loaded, 1);
  transition: opacity 0.5s ease;
  row-gap: 23px;
}
.modal-gallery__title {
  font-weight: 400;
  font-size: clamp(40px, 32.7184466019px + 0.0194174757 * 100vw, 70px);
  line-height: 1;
  padding-inline-end: calc(10px + var(--icon-size));
}
.modal-gallery__media {
  --media-max-height: clamp(500px, 374.7572815534px + 0.3339805825 * 100vw, 1016px);
  display: block;
  width: 100%;
  height: auto;
  background-color: var(--color-gray);
}
.modal-gallery__image, .modal-gallery__iframe, .modal-gallery__video {
  display: block;
  width: 100%;
  height: auto;
  max-height: var(--media-max-height);
  object-fit: cover;
  aspect-ratio: 16/9;
}
@media (max-width: 567px) {
  .modal-gallery__image, .modal-gallery__iframe, .modal-gallery__video {
    aspect-ratio: 4/3;
  }
}
.modal-gallery__link {
  text-transform: inherit;
  text-transform: math-auto;
}

.cookie-consent {
  position: fixed;
  z-index: 9999;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: auto;
  font-size: clamp(16px, 12.6019417476px + 0.0090614887 * 100vw, 30px);
  color: #fff;
  background-color: var(--color-purple);
  transition: opacity 0.3s ease, visibility 0.3s ease;
  gap: 20px clamp(28px, 14.2857142857px + 0.0178571429 * 100vw, 40px);
  inset-block-end: 0;
  inset-inline: 0;
  padding-block: 12px;
  padding-inline: clamp(15px, -276px + 0.2020833333 * 100vw, 112px);
}
.cookie-consent__text {
  flex: 1;
  line-height: 1.2;
}
.cookie-consent__text a {
  text-decoration: underline;
  color: #fff;
  transition: opacity 0.3s ease;
  text-decoration-thickness: 0.05em;
  text-underline-offset: 0.2em;
}
.cookie-consent__text a:hover {
  opacity: 0.6;
}
.cookie-consent__button {
  align-self: end;
  border: none;
  border: 1px solid #fff;
  color: #fff;
  background-color: transparent;
  transition: background-color 0.3s, border-color 0.3s;
  cursor: pointer;
  padding-block: clamp(4px, -0.5714285714px + 0.005952381 * 100vw, 8px);
  padding-inline: clamp(12px, -5.1428571429px + 0.0223214286 * 100vw, 27px);
}
.cookie-consent__button:hover {
  color: var(--color-purple);
  background-color: #fff;
}
.cookie-consent.hidden {
  opacity: 0;
  visibility: hidden;
}

.section-hero {
  --tile-1-height: clamp(47px, 33.6666666667px + 0.0111111111 * 100vw, 55px);
  --tile-2-height: clamp(48px, 33px + 0.0125 * 100vw, 57px);
  --tile-3-height: clamp(78px, 56.3333333333px + 0.0180555556 * 100vw, 91px);
  --tile-5-height: clamp(40px, -31.6666666667px + 0.0597222222 * 100vw, 83px);
  --tile-5-adaptive-height: clamp(66px, -47.3333333333px + 0.0944444444 * 100vw, 134px);
  position: relative;
  display: grid;
  color: #000;
}
@media (min-width: 1401px) {
  .section-hero {
    grid-template-columns: 18.5% 15% 36.65% 30.7%;
  }
}
@media (min-width: 993px) and (max-width: 1400px) {
  .section-hero {
    grid-template-columns: 12.5% 20% 36.65% 30.7%;
  }
}
@media (max-width: 992px) {
  .section-hero {
    --hidden-tile-1: revert;
    --hidden-tile-2: revert;
    --hidden-tile-3: revert;
    grid-template-columns: 1fr;
    isolation: isolate;
  }
}
@media (min-width: 993px) {
  .section-hero__content-wrap {
    display: contents;
  }
}
@media (max-width: 992px) {
  .section-hero__content-wrap {
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-self: end;
    grid-column: 1/span 2;
    grid-row: 1;
    padding-block-end: clamp(61px, 48.5954198473px + 0.0330788804 * 100vw, 74px);
    padding-inline: var(--container-offset);
    row-gap: clamp(50px, 21.3740458015px + 0.0763358779 * 100vw, 80px);
  }
}
@media (max-width: 768px) {
  .section-hero__content-wrap {
    padding-block-end: clamp(61px, 40.9618320611px + 0.0534351145 * 100vw, 82px);
  }
}
@media (min-width: 993px) {
  .section-hero__specification-wrap {
    display: contents;
  }
}
@media (max-width: 992px) {
  .section-hero__specification-wrap {
    --row-width: clamp(41px, 17.2965964344px + 0.0632090762 * 100vw, 80px);
    display: grid;
    grid-column: 1;
    grid-row: 2;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: repeat(10, 1fr);
  }
}
.section-hero__figure {
  --height: clamp(675px, 104.2307692308px + 0.4076923077 * 100vw, 887px);
  position: relative;
  margin: 0;
  height: var(--height);
}
.section-hero__figure::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  background: linear-gradient(134deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
  pointer-events: none;
}
@media (min-width: 993px) {
  .section-hero__figure {
    grid-column: 1/span 3;
    grid-row: 1/span 4;
  }
}
@media (max-width: 1200px) {
  .section-hero__figure {
    --height: clamp(578px, -4px + 0.485 * 100vw, 675px);
  }
}
@media (max-width: 992px) {
  .section-hero__figure {
    --height: clamp(660px, 642.8571428571px + 0.0223214286 * 100vw, 665px);
    z-index: -1;
    grid-column: 1/span 2;
    grid-row: 1;
    min-height: 100%;
  }
}
@media (max-width: 768px) {
  .section-hero__figure {
    --height: clamp(375px, 103.0534351145px + 0.7251908397 * 100vw, 660px);
  }
}
.section-hero__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.section-hero__title {
  -webkit-hyphens: auto;
  hyphens: auto;
}
@media (min-width: 993px) {
  .section-hero__title {
    position: absolute;
    z-index: 1;
    align-self: end;
    grid-column: 3/span 2;
    grid-row: 1/span 2;
    padding-block-end: 33px;
    padding-inline: 30px;
  }
}
.section-hero__subtitle {
  z-index: 2;
  font-weight: 600;
  font-size: 22px;
  line-height: 1.11;
  letter-spacing: -0.02em;
  color: #fff;
  background-color: var(--color-purple);
  margin-block: 0;
}
@media (min-width: 993px) {
  .section-hero__subtitle {
    align-self: flex-start;
    grid-column: 2/span 1;
    grid-row: 5;
    padding-block: 11px clamp(40px, -35.3846153846px + 0.0538461538 * 100vw, 68px);
    padding-inline: 16px 40px;
  }
}
@media (max-width: 1400px) {
  .section-hero__subtitle {
    font-size: clamp(20px, 17.568627451px + 0.0024509804 * 100vw, 21px);
    padding-block: clamp(34px, -2px + 0.03 * 100vw, 40px) clamp(4px, -38px + 0.035 * 100vw, 11px);
    padding-inline: 11px clamp(16px, -110px + 0.105 * 100vw, 37px);
  }
}
@media (max-width: 992px) {
  .section-hero__subtitle {
    display: flex;
    align-items: center;
    grid-column: 1/span 3;
    grid-row: 1/span 1;
    font-size: 28px;
    padding-block: 27px 41px;
    padding-inline: var(--container-offset);
  }
}
@media (max-width: 768px) {
  .section-hero__subtitle {
    font-weight: 400;
    font-size: clamp(18px, 8.4580152672px + 0.0254452926 * 100vw, 28px);
    padding-block: clamp(12px, -2.3129770992px + 0.0381679389 * 100vw, 27px);
    padding-inline: var(--container-offset) clamp(29px, -15.8473282443px + 0.1195928753 * 100vw, 76px);
  }
}
.section-hero__desc {
  --rect-size: clamp(50px, 10px + 0.0333333333 * 100vw, 74px);
  position: relative;
  display: flex;
  flex-direction: column;
  line-height: 1.15;
  letter-spacing: -0.02em;
  row-gap: clamp(20px, 10px + 0.0083333333 * 100vw, 26px);
}
.section-hero__desc::before {
  content: "";
  display: flex;
  width: var(--rect-size);
  background-color: var(--color-purple);
  aspect-ratio: 1/1;
}
@media (min-width: 993px) {
  .section-hero__desc {
    grid-column: 4/span 1;
    grid-row: 1;
    padding-block: clamp(80px, 25px + 0.0458333333 * 100vw, 113px) 30px;
    padding-inline: clamp(39px, -9.3333333333px + 0.0402777778 * 100vw, 68px);
  }
}
@media (max-width: 992px) {
  .section-hero__desc {
    --rect-size: clamp(30px, 10.9160305344px + 0.0508905852 * 100vw, 50px);
    max-width: 580px;
  }
}
.section-hero__content {
  z-index: 2;
}
@media (min-width: 993px) {
  .section-hero__content {
    grid-column: 3/span 1;
    grid-row: 5/span 2;
    padding-block-end: 30px;
    padding-inline: 30px clamp(32px, -137.6153846154px + 0.1211538462 * 100vw, 95px);
  }
}
@media (max-width: 992px) {
  .section-hero__content {
    grid-column: 3/span 4;
    grid-row: 2/span 8;
    margin-inline-start: -40px;
    padding-block: 30px;
    padding-inline-end: clamp(20px, -35.7142857143px + 0.0967261905 * 100vw, 150px);
  }
}
.section-hero__specialization {
  --icon-size: 25px;
  display: flex;
  flex-direction: column;
  line-height: 1.11;
  margin-block-end: clamp(60px, -4.6153846154px + 0.0461538462 * 100vw, 84px);
  row-gap: 18px;
}
.section-hero__specialization li {
  display: contents;
}
.section-hero__specialization li:not(:last-child)::after {
  content: "";
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='4.37114e-08' y1='12.7351' x2='25' y2='12.7351' stroke='black'/%3E%3Cline x1='12.2646' y1='-2.18557e-08' x2='12.2646' y2='25' stroke='black'/%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='4.37114e-08' y1='12.7351' x2='25' y2='12.7351' stroke='black'/%3E%3Cline x1='12.2646' y1='-2.18557e-08' x2='12.2646' y2='25' stroke='black'/%3E%3C/svg%3E%0A");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  width: var(--icon-size);
  background-color: #000;
  aspect-ratio: 1/1;
}
@media (max-width: 1200px) {
  .section-hero__specialization {
    --icon-size: 21px;
    margin-block-end: 20px;
    row-gap: 15px;
  }
}
@media (max-width: 992px) {
  .section-hero__specialization {
    --icon-size: clamp(25px, 3.0534351145px + 0.058524173 * 100vw, 48px);
    margin-block-end: 60px;
    row-gap: clamp(16px, 0.7328244275px + 0.0407124682 * 100vw, 32px);
  }
}
@media (max-width: 768px) {
  .section-hero__specialization {
    margin-block-end: clamp(40px, 1.8320610687px + 0.1017811705 * 100vw, 80px);
  }
}
@media (max-width: 992px) {
  .section-hero__track {
    --label-top-offset: 0;
    grid-row: 2;
    transform: translateY(-50%);
    inset-block-start: 45%;
  }
}
@media (max-width: 567px) {
  .section-hero__track {
    inset-block-start: 30%;
  }
}
.section-hero .tile {
  position: relative;
  z-index: 1;
  background-color: var(--color-gray);
}
.section-hero .tile--1 {
  height: var(--tile-1-height);
}
@media (min-width: 993px) {
  .section-hero .tile--1 {
    grid-column: 1;
    grid-row: 4/span 3;
  }
}
@media (max-width: 992px) {
  .section-hero .tile--1 {
    grid-column: 4/span 3;
    grid-row: 2/span 1;
    height: 100%;
    transform-origin: bottom;
  }
}
.section-hero .tile--2 {
  height: var(--tile-2-height);
}
@media (min-width: 993px) {
  .section-hero .tile--2 {
    grid-column: 2;
    grid-row: 3/span 4;
  }
}
@media (max-width: 992px) {
  .section-hero .tile--2 {
    grid-column: 1/span 3;
    grid-row: 3/span 1;
    height: 100%;
  }
}
.section-hero .tile--3 {
  --cp: 0;
  height: var(--tile-3-height);
}
@media (min-width: 993px) {
  .section-hero .tile--3 {
    grid-column: 3;
    grid-row: 4/span 3;
  }
  .section-hero .tile--3::after {
    content: "";
    position: absolute;
    clip-path: inset(0 0 var(--cp) 0);
    width: 100%;
    height: 100%;
    background-color: #fff;
    inset-inline-start: 100%;
  }
}
@media (max-width: 992px) {
  .section-hero .tile--3 {
    grid-column: 4/span 3;
    grid-row: 5/span 2;
    height: 100%;
    transform-origin: bottom;
  }
}
.section-hero .tile--4 {
  transform-origin: bottom;
}
@media (min-width: 993px) {
  .section-hero .tile--4 {
    z-index: 0;
    height: var(--tile-4-height);
  }
}
@media (max-width: 992px) {
  .section-hero .tile--4 {
    grid-column: 2/span 2;
    grid-row: 8/span 1;
    height: 100%;
    transform-origin: bottom right;
  }
}
.section-hero .tile--5 {
  align-self: flex-end;
  margin-block-end: -2px;
}
@media (min-width: 993px) {
  .section-hero .tile--5 {
    height: var(--tile-5-height);
  }
}
@media (max-width: 992px) {
  .section-hero .tile--5 {
    grid-column: 1/span 4;
    grid-row: -1/span 1;
    height: clamp(23px, -11.3511450382px + 0.0916030534 * 100vw, 59px);
    transform-origin: left bottom;
  }
}
.section-hero .tile--6 {
  display: none;
}
@media (max-width: 992px) {
  .section-hero .tile--6 {
    display: block;
    grid-column: 5/span 2;
    grid-row: 10/span 1;
    height: 100%;
    margin-block-start: -1px;
  }
}
.section-hero .tile--purple {
  background-color: var(--color-purple);
}
.section-hero .tile--hidden {
  grid-column: var(--col, revert);
  grid-row: var(--row, revert);
  height: var(--height, revert);
  background-color: transparent;
  opacity: 0;
}
@media (max-width: 992px) {
  .section-hero .tile--hidden {
    display: none;
  }
}
@media (max-width: 992px) {
  .section-hero .tile-1--ghost {
    display: block;
    grid-column: 4/span 3;
    grid-row: 6/span 1;
    height: 100%;
    background-color: var(--color-gray);
    opacity: 1;
    transform-origin: top;
  }
}
@media (min-width: 993px) {
  .section-hero .tile-group {
    display: grid;
    align-self: flex-end;
    grid-column: 4;
    grid-row: 4/span 5;
    height: 100%;
    background-color: var(--color-gray);
  }
}
@media (max-width: 992px) {
  .section-hero .tile-group {
    display: contents;
  }
}

.section-about {
  --padding: clamp(49px, -35px + 0.07 * 100vw, 63px);
  position: relative;
  z-index: 1;
  display: grid;
  align-items: start;
  justify-content: space-between;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  min-height: clamp(940px, 493.0769230769px + 0.3192307692 * 100vw, 1106px);
  color: #fff;
  background-color: var(--color-purple);
  isolation: isolate;
  padding-block: 60px 22px;
  padding-inline: calc(var(--left-panel) + var(--padding)) var(--padding);
}
@media (max-width: 992px) {
  .section-about {
    --padding-inline-start: clamp(50px, 28.0534351145px + 0.058524173 * 100vw, 73px);
    --padding-inline-end: clamp(20px, -14.3511450382px + 0.0916030534 * 100vw, 56px);
    --padding-block-start: clamp(15px, -4.0839694656px + 0.0508905852 * 100vw, 35px);
    min-height: clamp(750px, 447.9335494327px + 0.8055105348 * 100vw, 1247px);
    padding-block: var(--padding-block-start) 31px;
    padding-inline: var(--padding-inline-start) var(--padding-inline-end);
  }
}
.section-about__stats {
  grid-column: 1;
  grid-row: 1;
}
.section-about__map {
  z-index: -1;
  grid-column: 1;
  grid-row: 1;
  overflow: hidden;
  overflow: clip;
  width: 100%;
  margin-block-start: -15%;
  margin-inline-start: 39%;
}
.section-about__map svg {
  display: block;
  width: 100%;
  height: 100%;
}
@media (max-width: 1400px) {
  .section-about__map {
    width: 120%;
    margin-block-start: -10%;
    margin-inline-start: 32%;
  }
}
@media (max-width: 992px) {
  .section-about__map {
    margin: 0;
    width: 100vw;
    height: 100%;
    margin-inline-start: calc(-1 * var(--padding-inline-start));
  }
  .section-about__map svg {
    transform: translateX(20%) translateY(-2%) scale(1.4);
    transform-origin: left;
  }
}
@media (max-width: 567px) {
  .section-about__map svg {
    transform: translateX(6%) translateY(-3%) scale(2.2);
  }
}
.section-about__action-desc {
  grid-column: 1;
  grid-row: 1;
  inset-block-start: 100%;
  padding-inline-start: clamp(2px, -199.9230769231px + 0.1442307692 * 100vw, 77px);
}
@media (min-width: 1401px) {
  .section-about__action-desc {
    position: absolute;
  }
}
@media (min-width: 568px) and (max-width: 1400px) {
  .section-about__action-desc br {
    display: none;
  }
}
.section-about__action {
  align-self: flex-end;
  grid-column: 1;
  grid-row: 1;
}
@media (max-width: 1400px) {
  .section-about__action {
    display: flex;
    flex-direction: column;
    row-gap: clamp(20px, 12.6829268293px + 0.0195121951 * 100vw, 40px);
  }
}
@media (max-width: 992px) {
  .section-about__action {
    margin-inline-start: calc(-1 * var(--padding-inline-start) + var(--container-offset));
  }
}
.section-about__track {
  --track-thumb-position: center;
  --label-top-offset: 80px;
}
@media (max-width: 992px) {
  .section-about__track {
    --label-top-offset: 0;
    transform: translateY(-50%);
    inset-block-start: 30%;
  }
}

.section-expansion {
  --row-width: 61px;
  --col-count: 12;
  --row-count: 14;
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--col-count), 1fr);
  grid-template-rows: repeat(var(--row-count), var(--row-width));
  min-height: 855px;
  color: #fff;
  isolation: isolate;
}
@media (max-width: 1400px) {
  .section-expansion {
    --row-width: 54px;
    --col-count: 10;
    min-height: 758px;
  }
}
@media (max-width: 1200px) {
  .section-expansion {
    --row-width: 47px;
    min-height: 648px;
  }
}
@media (max-width: 768px) {
  .section-expansion {
    --row-width: clamp(40px, 11.3740458015px + 0.0763358779 * 100vw, 70px);
    --col-count: 6;
    --row-count: 9;
    grid-template-areas: "a a b b b ." "a a . . . ." ". . . . . c" "d d . . . c" ". . e e e ." ". . . . . f" ". . . . . ." ". . . . . ." ". . g g g g";
    min-height: revert;
  }
}
.section-expansion__figure {
  position: absolute;
  inset: 0;
  z-index: -1;
  margin: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-gray);
}
.section-expansion__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.section-expansion .tile {
  --ty: 0;
  --sy: 1;
  --rx: 0deg;
  position: relative;
  width: calc(100% + 1px);
  margin-block-start: -1px;
}
.section-expansion .tile::before {
  content: "";
  position: absolute;
  bottom: var(--bottom, revert);
  width: 100%;
  height: var(--height, 100%);
  background-color: var(--color-purple);
  transform: translateY(var(--ty)) scaleY(var(--sy)) rotateX(var(--rx));
  transform-origin: var(--to, revert);
  will-change: transform;
}
@media (min-width: 769px) {
  .section-expansion .tile--1 {
    grid-column: 1/span 2;
    grid-row: 1/span 2;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--1 {
    grid-area: a;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--2 {
    grid-column: 3/span 2;
    grid-row: 1/span 2;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--2 {
    grid-area: b;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--3 {
    grid-column: 1/span 2;
    grid-row: 3/span 1;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--3 {
    grid-area: c;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--4 {
    --to: bottom;
    grid-column: 3/span 2;
    grid-row: 4/span 1;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--4 {
    grid-area: d;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--5 {
    --to: center;
    grid-column: 7/span 2;
    grid-row: 4/span 1;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--5 {
    grid-area: e;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile-5--ghost {
    --to: top;
    grid-column: 7/span 2;
    grid-row: 8/span 1;
    visibility: hidden;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--6 {
    --to: center;
    grid-column: 1/span 2;
    grid-row: 5/span 1;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--6 {
    grid-area: f;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--7 {
    --to: top;
    grid-column: 5/span 2;
    grid-row: 5/span 2;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--7 {
    grid-area: g;
  }
}
@media (max-width: 768px) {
  .section-expansion .tile--1 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .section-expansion .tile--2 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
  }
  .section-expansion .tile--3 {
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    -ms-grid-column: 6;
  }
  .section-expansion .tile--4 {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .section-expansion .tile--5 {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
  }
  .section-expansion .tile--6 {
    -ms-grid-row: 6;
    -ms-grid-column: 6;
  }
  .section-expansion .tile--7 {
    -ms-grid-row: 9;
    -ms-grid-column: 3;
    -ms-grid-column-span: 4;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--8 {
    --to: bottom;
    grid-column: 3/span 2;
    grid-row: 7/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--9 {
    --to: top;
    --height: 43%;
    grid-column: 9/span 2;
    grid-row: 7/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--10 {
    grid-column: 1/span 2;
    grid-row: 8/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--11 {
    grid-column: 1/span 4;
    grid-row: 9/span 2;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--12 {
    --height: 50%;
    --bottom: 0;
    --to: top;
    grid-column: 1/span 2;
    grid-row: 12/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--13 {
    --to: top;
    grid-column: 5/span 2;
    grid-row: 12/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile-7--ghost {
    --to: bottom;
    grid-column: 5/span 2;
    grid-row: 5/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile-8--ghost {
    --to: top;
    grid-column: 3/span 2;
    grid-row: 7/span 1;
  }
}
@media (min-width: 769px) {
  .section-expansion .tile--wide {
    --tl-wide-height: 31px;
    grid-column: 3/span 6;
    grid-row: -1;
    height: var(--tl-wide-height);
    margin-block-end: calc(-1 * var(--tl-wide-height));
  }
}
@media (max-width: 768px) {
  .section-expansion .tile:not(:is(.section-expansion .tile--1, .section-expansion .tile--2, .section-expansion .tile--3, .section-expansion .tile--4, .section-expansion .tile--5, .section-expansion .tile--6, .section-expansion .tile--7)) {
    display: none;
  }
}
.section-expansion__content {
  z-index: 1;
  display: flex;
  flex-direction: column;
  padding-inline-end: 81px;
  row-gap: 40px;
}
@media (min-width: 769px) {
  .section-expansion__content {
    align-self: flex-end;
    grid-column: 3/span 8;
    grid-row: 6/span 8;
  }
}
@media (max-width: 768px) {
  .section-expansion__content {
    align-self: flex-end;
    grid-column: 1/-1;
    grid-row: 2/-1;
    padding-block-end: clamp(21px, 7.641221374px + 0.0356234097 * 100vw, 35px);
    padding-inline: var(--container-offset);
    row-gap: clamp(15px, 10.2290076336px + 0.0127226463 * 100vw, 20px);
  }
}
@media (min-width: 769px) {
  .section-expansion__title {
    margin-inline-start: auto;
  }
}
@media (min-width: 769px) {
  .section-expansion__desc {
    margin-inline-start: auto;
    padding-inline-end: 40px;
  }
}
.section-expansion__track {
  --sy: 1;
  position: static;
}
@media (min-width: 769px) {
  .section-expansion__track {
    grid-column: 1;
    grid-row: 1/span 3;
    transform: scaleY(var(--sy));
  }
}

.section-partners {
  --padding-block: clamp(69px, -6px + 0.0625 * 100vw, 114px);
  --row-gap: clamp(76px, -144px + 0.1833333333 * 100vw, 208px);
  position: relative;
  display: flex;
  flex-direction: column;
  padding-block: var(--padding-block);
  row-gap: var(--row-gap);
}
@media (max-width: 992px) {
  .section-partners {
    --padding-block: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
    --row-gap: clamp(42px, 19.0992366412px + 0.0610687023 * 100vw, 66px);
  }
}
.section-partners__header {
  --padding: clamp(10px, -73.3793103448px + 0.0840517241 * 100vw, 88px);
  padding-inline: calc(var(--left-panel) + var(--padding)) var(--padding);
}
@media (max-width: 992px) {
  .section-partners__header {
    margin-block-end: 20px;
    padding-inline: var(--container-offset);
  }
}
.section-partners__footer {
  padding-inline: var(--container-offset);
}
@media (min-width: 993px) {
  .section-partners__footer {
    display: none;
  }
}
@media (min-width: 993px) {
  .section-partners__link--footer {
    display: none;
  }
}
@media (max-width: 992px) {
  .section-partners__link--header {
    display: none;
  }
}
.section-partners__track {
  --track-thumb-position: start;
}
@media (max-width: 992px) {
  .section-partners__track {
    --label-top-offset: 0;
    transform: translateY(-50%);
    inset-block-start: 47%;
  }
}
.section-partners__scroller {
  margin-inline-start: var(--left-panel);
}
@media (max-width: 992px) {
  .section-partners__scroller {
    --_animation-play-state: paused;
    --scroller-gap: clamp(40px, 12.6499189627px + 0.0729335494 * 100vw, 85px);
    --padding-inline-start: 32%;
    margin-inline: 0;
  }
  .section-partners__scroller .scroller__inner[role=list] {
    display: grid;
    gap: var(--scroller-gap);
    padding-inline: var(--padding-inline-start) var(--container-offset);
  }
  .section-partners__scroller .scroller__inner[role=list]:not(:has(.scroller__inner-group)) {
    grid-template-columns: repeat(4, 1fr);
  }
  .section-partners__scroller .scroller__inner-group {
    display: flex;
    width: 100%;
    gap: var(--scroller-gap);
  }
  .section-partners__scroller .scroller__item--0 {
    width: 20.2vw;
  }
  .section-partners__scroller .scroller__item--1 {
    width: 12vw;
  }
  .section-partners__scroller .scroller__item--4 {
    width: 16.4vw;
  }
  .section-partners__scroller .scroller__item--3 {
    width: 17.4vw;
  }
  .section-partners__scroller .scroller__item--2 {
    width: 14.2vw;
  }
  .section-partners__scroller .scroller__item--5 {
    width: 19.8vw;
  }
  .section-partners__scroller .scroller__item--10 {
    width: 22vw;
  }
  .section-partners__scroller .scroller__item--7 {
    width: 7vw;
    aspect-ratio: 1/1;
  }
  .section-partners__scroller .scroller__item--9 {
    width: 20vw;
  }
  .section-partners__scroller .scroller__item--6 {
    width: 12.2vw;
  }
  .section-partners__scroller .scroller__item--8 {
    width: 29.8vw;
  }
}
@media (max-width: 768px) {
  .section-partners__scroller {
    --padding-inline-start: 16%;
  }
  .section-partners__scroller .scroller__item--0 {
    width: 23.8vw;
  }
  .section-partners__scroller .scroller__item--1 {
    width: 14vw;
  }
  .section-partners__scroller .scroller__item--4 {
    width: 19.4vw;
  }
  .section-partners__scroller .scroller__item--3 {
    width: 20.4vw;
  }
  .section-partners__scroller .scroller__item--2 {
    width: 16.6vw;
  }
  .section-partners__scroller .scroller__item--5 {
    width: 23.5vw;
  }
  .section-partners__scroller .scroller__item--10 {
    width: 25vw;
  }
  .section-partners__scroller .scroller__item--7 {
    width: 8vw;
  }
  .section-partners__scroller .scroller__item--9 {
    width: 23.5vw;
  }
  .section-partners__scroller .scroller__item--6 {
    width: 14.2vw;
  }
  .section-partners__scroller .scroller__item--8 {
    width: 35.2vw;
  }
}
@media (max-width: 375px) {
  .section-partners__scroller {
    --padding-inline-start: 15.5%;
  }
  .section-partners__scroller .scroller__item--0 {
    width: 24.8vw;
  }
  .section-partners__scroller .scroller__item--1 {
    width: 15vw;
  }
  .section-partners__scroller .scroller__item--4 {
    width: 20.4vw;
  }
  .section-partners__scroller .scroller__item--3 {
    width: 21.6vw;
  }
  .section-partners__scroller .scroller__item--2 {
    width: 17.6vw;
  }
  .section-partners__scroller .scroller__item--5 {
    width: 24.6vw;
  }
  .section-partners__scroller .scroller__item--10 {
    width: 26vw;
  }
  .section-partners__scroller .scroller__item--7 {
    width: 8.3vw;
  }
  .section-partners__scroller .scroller__item--9 {
    width: 24.5vw;
  }
  .section-partners__scroller .scroller__item--6 {
    width: 15.2vw;
  }
  .section-partners__scroller .scroller__item--8 {
    width: 37.3vw;
  }
}

.ask-expert {
  --padding-inline-start: 42px;
  --padding-inline-end: 99px;
  --padding-block-start: 74px;
  --padding-block-end: 44px;
  --header-margin-block-end: 128px;
  --pseudo-decor-height: clamp(26px, 9.5899513776px + 0.0437601297 * 100vw, 53px);
  position: relative;
  color: #fff;
  background-color: var(--color-purple);
  padding-block-start: var(--padding-block-start);
}
@media (max-width: 1400px) {
  .ask-expert {
    --padding-block-start: 80px;
    --padding-inline-start: clamp(59px, -37px + 0.08 * 100vw, 75px);
    --padding-inline-end: 58px;
    --header-margin-block-end: 99px;
    --tile-1-row: 61px;
    --tile-2-row: 65px;
    --tile-3-row: 38px;
  }
}
@media (max-width: 1200px) {
  .ask-expert {
    --padding-block-start: 68px;
    --padding-inline-start: clamp(20px, -166px + 0.1875 * 100vw, 59px);
    --padding-inline-end: 49px;
    --header-margin-block-end: 84px;
    --tile-1-row: 52px;
    --tile-2-row: 55px;
    --tile-3-row: 31px;
  }
}
@media (max-width: 992px) {
  .ask-expert {
    --padding-block-start: 49px;
    --padding-inline-end: 37px;
    --header-margin-block-end: 63px;
    --tile-1-row: 72px;
    --tile-2-row: 66px;
    --tile-3-row: 72px;
    --tile-1-col: 7%;
    --tile-2-col: 36.3%;
    --links-col: 52.3%;
    margin-block-start: var(--pseudo-decor-height);
  }
  .ask-expert::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 41.5%;
    height: var(--pseudo-decor-height);
    background-color: inherit;
    inset-block-end: calc(100% - 1px);
    inset-inline-end: 0;
  }
}
@media (width <= 900px) {
  .ask-expert {
    --tile-2-col: 47%;
    --links-col: auto;
  }
}
@media (max-width: 768px) {
  .ask-expert {
    --padding-block-start: 44px;
    --padding-inline-end: 28px;
    --header-margin-block-end: 53px;
    --tile-1-row: 47px;
    --tile-2-row: 51px;
    --tile-3-row: 55px;
  }
}
@media (max-width: 567px) {
  .ask-expert {
    --padding-block-start: 35px;
    --padding-inline-end: var(--container-offset);
    --header-margin-block-end: 32px;
    --tile-1-row: 23px;
    --tile-2-row: 25px;
    --tile-3-row: 35px;
  }
}
.ask-expert__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 40px 60px;
  margin-block-end: var(--header-margin-block-end);
  padding-inline: calc(var(--left-panel) + var(--padding-inline-start)) var(--padding-inline-end);
}
@media (max-width: 992px) {
  .ask-expert__header {
    padding-inline: var(--padding-inline-start) var(--padding-inline-end);
  }
}
.ask-expert__bottom {
  --column-gap: 4.5%;
  display: grid;
  grid-template-columns: [tile-1] var(--tile-1-col, 8.7%) [tile-2] var(--tile-2-col, 45%) [col-gap] var(--column-gap) [links] var(--links-col, 29.4%);
  grid-template-rows: [tile-1-row] var(--tile-1-row, 77px) [tile-2-row] var(--tile-2-row, 73px) [tile-3-row] var(--tile-3-row, 44px);
}
@media (min-width: 1401px) {
  .ask-expert__bottom {
    padding-inline: calc(var(--left-panel) + var(--padding-inline-start)) var(--padding-inline-end);
  }
}
@media (min-width: 993px) and (max-width: 1400px) {
  .ask-expert__bottom {
    padding-inline-start: var(--left-panel);
  }
}
@media (width <= 900px) {
  .ask-expert__bottom {
    grid-template-rows: [tile-1-row] var(--tile-1-row, 77px) [tile-2-row] var(--tile-2-row, 73px) [links-row] auto [tile-3-row] var(--tile-3-row, 44px);
  }
}
.ask-expert__links {
  --column-gap: clamp(60px, -83.9130434783px + 0.1449275362 * 100vw, 90px);
  display: flex;
  grid-column: links;
  grid-row: tile-1-row;
  gap: 20px var(--column-gap);
}
@media (max-width: 992px) {
  .ask-expert__links {
    padding-inline-end: var(--container-offset);
  }
}
@media (width <= 900px) {
  .ask-expert__links {
    flex-wrap: wrap;
    justify-content: space-between;
    grid-column: 1/4;
    grid-row: links-row;
    gap: 32px clamp(30px, -377.2727272727px + 0.5303030303 * 100vw, 100px);
    margin-inline-end: -30px;
    padding-block: clamp(26px, 21px + 0.0133333333 * 100vw, 33px);
    padding-inline: var(--container-offset);
  }
}
@media (max-width: 567px) {
  .ask-expert__links {
    padding-block-end: 0;
  }
}
.ask-expert .tile {
  background-color: #fff;
}
.ask-expert .tile:not(.ask-expert .tile--rect) {
  transform: scaleY(var(--sy, revert));
  transform-origin: bottom;
}
.ask-expert .tile--rect {
  flex-shrink: 0;
  width: clamp(53px, 13px + 0.0333333333 * 100vw, 77px);
  aspect-ratio: 1/1;
}
@media (max-width: 992px) {
  .ask-expert .tile--rect {
    width: clamp(24px, 0.2965964344px + 0.0632090762 * 100vw, 63px);
  }
}
.ask-expert .tile--1 {
  grid-column: tile-1;
  grid-row: tile-2-row;
}
.ask-expert .tile--2 {
  grid-column: tile-2;
  grid-row: tile-1-row;
}
@media (width <= 900px) {
  .ask-expert .tile--2 {
    grid-column: tile-2/4;
  }
}
.ask-expert .tile--3 {
  grid-column: col-gap/-1;
  grid-row: tile-3-row;
  margin-block-end: -1px;
}
@media (max-width: 992px) {
  .ask-expert .tile--3 {
    grid-column: links;
    width: 100%;
    max-width: 384px;
    margin-inline-start: auto;
  }
}
@media (width <= 900px) {
  .ask-expert .tile--3 {
    max-width: revert;
  }
}
.ask-expert__track {
  --default-color: #000;
}

.section-advantages {
  --padding-inline-start-unit: clamp(59px, 32.3333333333px + 0.0222222222 * 100vw, 75px);
  position: relative;
  display: flex;
  flex-direction: column;
  padding-block: clamp(70px, 36.6666666667px + 0.0277777778 * 100vw, 90px) clamp(70px, -85px + 0.1291666667 * 100vw, 163px);
  padding-inline: var(--padding-inline-start, calc(var(--left-panel) + var(--padding-inline-start-unit)) var(--container-offset));
  row-gap: clamp(50px, -33.3333333333px + 0.0694444444 * 100vw, 100px);
}
@media (max-width: 992px) {
  .section-advantages {
    padding-block: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
    row-gap: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
  }
}
.section-advantages__list {
  max-width: 1374px;
}
@media (max-width: 1200px) {
  .section-advantages {
    --padding-inline-start-unit: clamp(30px, -108.3076923077px + 0.1394230769 * 100vw, 59px);
  }
}
@media (max-width: 992px) {
  .section-advantages {
    --padding-inline-start: var(--container-offset);
  }
}

.main {
  counter-reset: services-counter;
}

.section-service {
  position: relative;
}
.section-service__track {
  --track-thumb-position: start;
}
@media (max-width: 992px) {
  .section-service__track {
    --label-top-offset: 0;
    transform: translateY(-50%);
  }
  .section-service__track--design {
    inset-block-start: 55%;
  }
  .section-service__track--construction {
    inset-block-start: 66%;
  }
  .section-service__track--development {
    inset-block-start: 62%;
  }
}
@media (max-width: 768px) {
  .section-service__track--development {
    inset-block-start: 74%;
  }
}
@media (max-width: 567px) {
  .section-service__track--design {
    inset-block-start: 67%;
  }
  .section-service__track--construction {
    inset-block-start: 74%;
  }
  .section-service__track--development {
    inset-block-start: 60%;
  }
}

.section-projects {
  position: relative;
  padding-block-end: clamp(66px, 19.3333333333px + 0.0388888889 * 100vw, 94px);
}
@media (min-width: 993px) {
  .section-projects {
    padding-inline-start: var(--left-panel);
  }
  .section-projects__link {
    margin-inline: var(--default-offset);
  }
}
@media (max-width: 992px) {
  .section-projects {
    padding-block-end: clamp(60px, 40.9160305344px + 0.0508905852 * 100vw, 80px);
    padding-inline: var(--container-offset);
  }
}
.section-projects__list {
  margin-block-end: clamp(80px, -11.5384615385px + 0.0653846154 * 100vw, 114px);
}
@media (max-width: 1400px) {
  .section-projects__list {
    margin-block-end: clamp(40px, 25.3658536585px + 0.0390243902 * 100vw, 80px);
  }
}

.gallery-swiper__item {
  margin: 0;
  height: clamp(370px, -60px + 0.3583333333 * 100vw, 628px);
}
@media (min-width: 993px) {
  .gallery-swiper__item:only-of-type {
    height: clamp(400px, -233.3333333333px + 0.5277777778 * 100vw, 780px);
  }
}
@media (max-width: 992px) {
  .gallery-swiper__item {
    height: clamp(200px, 96.677471637px + 0.2755267423 * 100vw, 370px);
  }
}
.gallery-swiper__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery-swiper__button {
  margin: 0;
  border: none;
  padding: 0;
  width: clamp(60px, 31.6666666667px + 0.0236111111 * 100vw, 77px);
  color: inherit;
  background-color: transparent;
  cursor: pointer;
}
.gallery-swiper__button svg {
  width: 100%;
  height: auto;
}
@media (max-width: 992px) {
  .gallery-swiper__button {
    width: clamp(50px, 6.106870229px + 0.1170483461 * 100vw, 96px);
  }
}
.gallery-swiper__pagination {
  font-weight: 300;
  font-size: clamp(34px, 4px + 0.025 * 100vw, 39px);
  line-height: 0.82;
  letter-spacing: -0.02em;
  margin-inline: auto;
}
.gallery-swiper__pagination.swiper-pagination-lock {
  display: none;
}
@media (max-width: 992px) {
  .gallery-swiper__pagination {
    font-size: clamp(20px, 0.9160305344px + 0.0508905852 * 100vw, 40px);
  }
}
.gallery-swiper__controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding-block-start: clamp(36px, 21px + 0.0125 * 100vw, 45px);
}
.gallery-swiper__controls:has(.swiper-pagination-lock) {
  display: none;
}
@media (min-width: 993px) {
  .gallery-swiper__controls {
    padding-inline: var(--default-offset);
  }
}
@media (max-width: 992px) {
  .gallery-swiper__controls {
    padding-block-start: clamp(20px, 0.9160305344px + 0.0508905852 * 100vw, 40px);
  }
}

.section-gallery {
  position: relative;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='761' height='5110' fill='none'%3E%3Cg fill='%23EDEDED' style='mix-blend-mode:multiply'%3E%3Cpath d='M9.85 714.207 333.19 0h100.953l324.394 714.207H651.686L362.779 57.081h40.722l-288.55 657.126H9.851Zm139.228-178.552 27.482-81.791h402.028l29.589 81.791H149.078ZM384.373 1595.26a300.479 300.479 0 0 1-119.334-17.52 300.08 300.08 0 0 1-102.762-63.03c-54.124-54.05-81.005-132.51-81.005-236.07V871.695H183.59v402.755c0 79.85 17.8 139.48 52.719 174.35a230.268 230.268 0 0 0 149.445 55.06c54.793 0 107.798-19.52 149.462-55.06 35.384-36.49 52.952-94.61 52.719-174.35V871.695h99.181v406.945c0 104.61-26.548 182.02-80.323 236.07a300.1 300.1 0 0 1-102.915 63.1 300.39 300.39 0 0 1-119.505 17.45ZM88.66 2469.91V1753.4h279.628a391.031 391.031 0 0 1 160.789 29.68 228.487 228.487 0 0 1 102.402 85.9 244.207 244.207 0 0 1 34.954 134.08 240.73 240.73 0 0 1-34.954 133.73A227.163 227.163 0 0 1 529.077 2222a391.358 391.358 0 0 1-160.789 29.68H144.93l46.15-46.79v265.02H88.66Zm102.42-254.9-46.15-50.28h220.217a227.707 227.707 0 0 0 149.252-42.25 165.225 165.225 0 0 0 37.531-54.36 165.02 165.02 0 0 0 13.21-64.71c0-22.24-4.489-44.25-13.21-64.71a165.122 165.122 0 0 0-37.531-54.36 229.796 229.796 0 0 0-149.252-41.9H144.93l46.15-50.98v423.55Zm377.132 254.9-182.448-260.14h109.759l184.205 260.14H568.212ZM381.666 3361.28a408.204 408.204 0 0 1-152.144-27.63 362.915 362.915 0 0 1-121.099-77.3 358.937 358.937 0 0 1-79.914-116.48 385.623 385.623 0 0 1 0-291.03 358.896 358.896 0 0 1 79.914-116.47 364.928 364.928 0 0 1 120.741-77.31 406.775 406.775 0 0 1 152.502-27.63 414.025 414.025 0 0 1 150.748 26.93 365.744 365.744 0 0 1 120.74 76.96 347.668 347.668 0 0 1 79.574 116.47 394.04 394.04 0 0 1 0 293.13 347.808 347.808 0 0 1-79.574 116.48 365.556 365.556 0 0 1-120.74 76.95 414.025 414.025 0 0 1-150.748 26.93Zm0-91.29c37.604.4 74.927-6.49 109.921-20.29a262.385 262.385 0 0 0 87.94-58.06 272.246 272.246 0 0 0 58.275-87.45 298.684 298.684 0 0 0 0-219.67 272.094 272.094 0 0 0-58.275-87.44 262.261 262.261 0 0 0-87.94-58.07 291.169 291.169 0 0 0-109.921-20.29 294.76 294.76 0 0 0-111.318 20.29 263.793 263.793 0 0 0-88.298 58.07 268.292 268.292 0 0 0-58.973 87.44 298.684 298.684 0 0 0 0 219.67 268.334 268.334 0 0 0 58.973 87.45 263.766 263.766 0 0 0 88.298 58.06 294.565 294.565 0 0 0 111.318 20.29ZM88.66 4235.47v-716.52h279.628a391.195 391.195 0 0 1 160.789 29.68 231.33 231.33 0 0 1 102.761 85.9 246.328 246.328 0 0 1 34.953 134.08 244.243 244.243 0 0 1-34.953 133.74 229.915 229.915 0 0 1-102.761 85.2 391.195 391.195 0 0 1-160.789 29.68H144.93l46.15-46.79v265.03H88.66Zm102.42-254.91-46.15-50.28h220.559a227.348 227.348 0 0 0 148.91-42.25 165.122 165.122 0 0 0 37.531-54.36 165.02 165.02 0 0 0 13.21-64.71 165.057 165.057 0 0 0-50.741-119.07 229.558 229.558 0 0 0-148.91-41.9H144.93l46.15-50.98v423.55Zm377.149 254.91-182.465-260.15h109.759l184.205 260.15H568.229ZM9.85 5109.62l323.35-716.67h100.934l324.403 716.67H651.671l-288.883-659.39h40.721l-288.544 659.39H9.851Zm139.225-179.16 27.498-82.08h402.019l29.572 82.08H149.075Z'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  padding-block: clamp(40px, -19.8620689655px + 0.0603448276 * 100vw, 96px) clamp(60px, 43.9805825243px + 0.0427184466 * 100vw, 126px);
  padding-inline-start: var(--left-panel);
}
@media (min-width: 993px) {
  .section-gallery {
    --section-grid: repeat(12, 1fr);
    --section-gap: clamp(30px, 0.8235294118px + 0.0294117647 * 100vw, 42px);
    display: grid;
    -moz-column-gap: var(--section-gap);
    column-gap: var(--section-gap);
    grid-template-columns: var(--section-grid);
    background-position: top clamp(126px, 37.3333333333px + 0.1154513889 * 100vw, 259px) left var(--left-panel);
    background-size: clamp(300px, -7.3333333333px + 0.4001736111 * 100vw, 761px) auto;
  }
}
@media (max-width: 992px) {
  .section-gallery {
    --section-gap: clamp(20px, 13.9222042139px + 0.0162074554 * 100vw, 30px);
    background-position: top clamp(100px, 51.3776337115px + 0.1296596434 * 100vw, 180px) right;
    background-size: clamp(211px, 76.680713128px + 0.358184765 * 100vw, 432px) auto;
    padding-block-start: clamp(20px, 7.8444084279px + 0.0324149109 * 100vw, 40px);
    padding-inline: var(--container-offset);
  }
}
.section-gallery__list {
  grid-column: 1/-1;
  margin-block-end: clamp(40px, 25.4368932039px + 0.0388349515 * 100vw, 100px);
}
.section-gallery__lead {
  --rect-size: clamp(51px, 12.6666666667px + 0.0319444444 * 100vw, 74px);
}
@media (min-width: 993px) {
  .section-gallery__lead {
    display: contents;
  }
}
@media (max-width: 992px) {
  .section-gallery__lead {
    display: flex;
    flex-direction: column;
    row-gap: clamp(16px, 1.4132901135px + 0.038897893 * 100vw, 40px);
  }
}
.section-gallery__lead::before {
  content: "";
  display: block;
  justify-self: end;
  justify-self: start;
  grid-column: 4;
  width: var(--rect-size);
  height: var(--rect-size);
  background-color: var(--color-purple);
}
@media (max-width: 992px) {
  .section-gallery__lead {
    --rect-size: clamp(30px, 11.7666126418px + 0.0486223663 * 100vw, 60px);
  }
}
.section-gallery__title {
  grid-column: 5/-1;
  margin-block-end: clamp(80px, -53.3333333333px + 0.1111111111 * 100vw, 160px);
  margin-inline-start: -0.06em;
  padding-block-end: 0.2em;
}
.section-gallery__title::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  margin-block-start: calc((0.5 - 0.9) * 0.2em);
}
@media (max-width: 992px) {
  .section-gallery__title {
    margin-block-end: clamp(60px, 47.8444084279px + 0.0324149109 * 100vw, 80px);
  }
}
.section-gallery__more {
  display: flex;
  align-items: center;
  gap: clamp(12px, 0.5496183206px + 0.0305343511 * 100vw, 24px);
}
@media (min-width: 993px) {
  .section-gallery__more {
    grid-column: 1/-1;
    padding-inline: var(--default-offset);
  }
}
@media (max-width: 567px) {
  .section-gallery__more {
    justify-content: space-between;
  }
}
.section-gallery__divider {
  font-weight: 300;
  font-size: clamp(32px, 25.2038834951px + 0.0181229773 * 100vw, 60px);
  line-height: 0.82;
  letter-spacing: -0.02em;
  color: var(--color-purple);
  -webkit-user-select: none;
  user-select: none;
}