@import url("https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@300;400;500&display=swap");
:root {
  --color-accent: #ff5533;
  --color-success: #33ff99;
  --color-bg-primary: #33312e;
  --color-bg-secondary: rgba(51, 49, 46, 0.6);
  --color-bg-tertiary: rgba(51, 49, 46, 0.2);
  --color-bg-light: rgba(204, 201, 194, 0.1);
  --color-text-primary: white;
  --color-text-secondary: rgba(204, 201, 194, 0.6);
  --color-text-tertiary: rgba(204, 201, 194, 0.2);
  --color-text-contrast: #33312e; }

.light {
  --color-bg-primary: white;
  --color-bg-secondary: rgba(204, 201, 194, 0.6);
  --color-bg-tertiary: rgba(204, 201, 194, 0.2);
  --color-text-primary: #33312e;
  --color-text-secondary: rgba(51, 49, 46, 0.6);
  --color-text-tertiary: rgba(51, 49, 46, 0.2);
  --color-text-contrast: white; }

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

.color-secondary {
  color: var(--color-text-secondary); }

.color-tertiary {
  color: var(--color-text-tertiary); }

.color-bg-primary {
  background-color: var(--color-bg-primary); }

.color-bg-secondary {
  background-color: var(--color-bg-secondary); }

.color-bg-tertiary {
  background-color: var(--color-bg-tertiary); }

.color-bg-light {
  background-color: var(--color-bg-light); }

.sidebar__logo, .sidebar__item, .theme__vjs .vjs-big-play-button .vjs-icon-placeholder::before, .apartments__swiper-nav-button, .apartments__swiper-nav-icon-wrap, .building-plan__plan-swiper-slide, .hero__swiper-control, .hero__swiper-control-item, .hero__swiper-control-prev, .hero__swiper-control-next, .hero__gallery-icon, .reviews__social-arrow-wrap, .slider-controls__item, .slider-controls__icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center; }

.gallery__main, .gallery__info, .gallery__secondary-swiper-slide, .videos__video-container, .videos__heading, .videos__secondary, .videos__description, .timeline__heading, .timeline__main-info, .timeline #timeline__main-swiper-pagination.swiper-pagination, .timeline__minor-swiper, .get-in-touch__main, .get-in-touch__info, .get-in-touch__heading, .get-in-touch__form, .get-in-touch__secondary, .get-in-touch__secondary-info, .get-in-touch__contacts {
  display: flex;
  flex-direction: column; }

* {
  box-sizing: border-box; }

body, h1, h2, h3, h4, h5, h6, p, ul, ol, li, figure, figcaption, blockquote, dl, dd, dt {
  margin: 0;
  padding: 0; }

ul, ol {
  list-style: none; }

menu {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit; }

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

button, input, select, textarea {
  font-family: inherit;
  font-size: inherit; }

button {
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer; }

.grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  --grid-column-gap: 8px;
  --grid-number-of-columns: 4;
  --grid-width: min(100vw - 2 * var(--container-padding) - var(--scrollbar-width), var(--container-max-width) - 2 * var(--container-padding));
  --grid-column: calc((var(--grid-width) - (var(--grid-number-of-columns) - 1) * var(--grid-column-gap)) / var(--grid-number-of-columns));
  column-gap: var(--grid-column-gap); }
  @media (min-width: 768px) {
    .grid {
      grid-template-columns: repeat(6, 1fr);
      --grid-column-gap: 24px;
      --grid-number-of-columns: 6; } }
  @media (min-width: 1440px) {
    .grid {
      grid-template-columns: repeat(12, 1fr);
      --grid-column-gap: 32px;
      --grid-number-of-columns: 12; } }
  @media (min-width: 360px) {
    .grid__item--sm_1-1 {
      grid-column: 1 / 2; }
    .grid__item--sm_1-2 {
      grid-column: 1 / 3; }
    .grid__item--sm_1-3 {
      grid-column: 1 / 4; }
    .grid__item--sm_1-4 {
      grid-column: 1 / 5; }
    .grid__item--sm_2-2 {
      grid-column: 2 / 3; }
    .grid__item--sm_2-3 {
      grid-column: 2 / 4; }
    .grid__item--sm_2-4 {
      grid-column: 2 / 5; }
    .grid__item--sm_3-3 {
      grid-column: 3 / 4; }
    .grid__item--sm_3-4 {
      grid-column: 3 / 5; }
    .grid__item--sm_4-4 {
      grid-column: 4 / 5; } }
  @media (min-width: 768px) {
    .grid__item--md_1-1 {
      grid-column: 1 / 2; }
    .grid__item--md_1-2 {
      grid-column: 1 / 3; }
    .grid__item--md_1-3 {
      grid-column: 1 / 4; }
    .grid__item--md_1-4 {
      grid-column: 1 / 5; }
    .grid__item--md_1-5 {
      grid-column: 1 / 6; }
    .grid__item--md_1-6 {
      grid-column: 1 / 7; }
    .grid__item--md_2-2 {
      grid-column: 2 / 3; }
    .grid__item--md_2-3 {
      grid-column: 2 / 4; }
    .grid__item--md_2-4 {
      grid-column: 2 / 5; }
    .grid__item--md_2-5 {
      grid-column: 2 / 6; }
    .grid__item--md_2-6 {
      grid-column: 2 / 7; }
    .grid__item--md_3-3 {
      grid-column: 3 / 4; }
    .grid__item--md_3-4 {
      grid-column: 3 / 5; }
    .grid__item--md_3-5 {
      grid-column: 3 / 6; }
    .grid__item--md_3-6 {
      grid-column: 3 / 7; }
    .grid__item--md_4-4 {
      grid-column: 4 / 5; }
    .grid__item--md_4-5 {
      grid-column: 4 / 6; }
    .grid__item--md_4-6 {
      grid-column: 4 / 7; }
    .grid__item--md_5-5 {
      grid-column: 5 / 6; }
    .grid__item--md_5-6 {
      grid-column: 5 / 7; }
    .grid__item--md_6-6 {
      grid-column: 6 / 7; } }
  @media (min-width: 1440px) {
    .grid__item--lg_1-1 {
      grid-column: 1 / 2; }
    .grid__item--lg_1-2 {
      grid-column: 1 / 3; }
    .grid__item--lg_1-3 {
      grid-column: 1 / 4; }
    .grid__item--lg_1-4 {
      grid-column: 1 / 5; }
    .grid__item--lg_1-5 {
      grid-column: 1 / 6; }
    .grid__item--lg_1-6 {
      grid-column: 1 / 7; }
    .grid__item--lg_1-7 {
      grid-column: 1 / 8; }
    .grid__item--lg_1-8 {
      grid-column: 1 / 9; }
    .grid__item--lg_1-9 {
      grid-column: 1 / 10; }
    .grid__item--lg_1-10 {
      grid-column: 1 / 11; }
    .grid__item--lg_1-11 {
      grid-column: 1 / 12; }
    .grid__item--lg_1-12 {
      grid-column: 1 / 13; }
    .grid__item--lg_2-2 {
      grid-column: 2 / 3; }
    .grid__item--lg_2-3 {
      grid-column: 2 / 4; }
    .grid__item--lg_2-4 {
      grid-column: 2 / 5; }
    .grid__item--lg_2-5 {
      grid-column: 2 / 6; }
    .grid__item--lg_2-6 {
      grid-column: 2 / 7; }
    .grid__item--lg_2-7 {
      grid-column: 2 / 8; }
    .grid__item--lg_2-8 {
      grid-column: 2 / 9; }
    .grid__item--lg_2-9 {
      grid-column: 2 / 10; }
    .grid__item--lg_2-10 {
      grid-column: 2 / 11; }
    .grid__item--lg_2-11 {
      grid-column: 2 / 12; }
    .grid__item--lg_2-12 {
      grid-column: 2 / 13; }
    .grid__item--lg_3-3 {
      grid-column: 3 / 4; }
    .grid__item--lg_3-4 {
      grid-column: 3 / 5; }
    .grid__item--lg_3-5 {
      grid-column: 3 / 6; }
    .grid__item--lg_3-6 {
      grid-column: 3 / 7; }
    .grid__item--lg_3-7 {
      grid-column: 3 / 8; }
    .grid__item--lg_3-8 {
      grid-column: 3 / 9; }
    .grid__item--lg_3-9 {
      grid-column: 3 / 10; }
    .grid__item--lg_3-10 {
      grid-column: 3 / 11; }
    .grid__item--lg_3-11 {
      grid-column: 3 / 12; }
    .grid__item--lg_3-12 {
      grid-column: 3 / 13; }
    .grid__item--lg_4-4 {
      grid-column: 4 / 5; }
    .grid__item--lg_4-5 {
      grid-column: 4 / 6; }
    .grid__item--lg_4-6 {
      grid-column: 4 / 7; }
    .grid__item--lg_4-7 {
      grid-column: 4 / 8; }
    .grid__item--lg_4-8 {
      grid-column: 4 / 9; }
    .grid__item--lg_4-9 {
      grid-column: 4 / 10; }
    .grid__item--lg_4-10 {
      grid-column: 4 / 11; }
    .grid__item--lg_4-11 {
      grid-column: 4 / 12; }
    .grid__item--lg_4-12 {
      grid-column: 4 / 13; }
    .grid__item--lg_5-5 {
      grid-column: 5 / 6; }
    .grid__item--lg_5-6 {
      grid-column: 5 / 7; }
    .grid__item--lg_5-7 {
      grid-column: 5 / 8; }
    .grid__item--lg_5-8 {
      grid-column: 5 / 9; }
    .grid__item--lg_5-9 {
      grid-column: 5 / 10; }
    .grid__item--lg_5-10 {
      grid-column: 5 / 11; }
    .grid__item--lg_5-11 {
      grid-column: 5 / 12; }
    .grid__item--lg_5-12 {
      grid-column: 5 / 13; }
    .grid__item--lg_6-6 {
      grid-column: 6 / 7; }
    .grid__item--lg_6-7 {
      grid-column: 6 / 8; }
    .grid__item--lg_6-8 {
      grid-column: 6 / 9; }
    .grid__item--lg_6-9 {
      grid-column: 6 / 10; }
    .grid__item--lg_6-10 {
      grid-column: 6 / 11; }
    .grid__item--lg_6-11 {
      grid-column: 6 / 12; }
    .grid__item--lg_6-12 {
      grid-column: 6 / 13; }
    .grid__item--lg_7-7 {
      grid-column: 7 / 8; }
    .grid__item--lg_7-8 {
      grid-column: 7 / 9; }
    .grid__item--lg_7-9 {
      grid-column: 7 / 10; }
    .grid__item--lg_7-10 {
      grid-column: 7 / 11; }
    .grid__item--lg_7-11 {
      grid-column: 7 / 12; }
    .grid__item--lg_7-12 {
      grid-column: 7 / 13; }
    .grid__item--lg_8-8 {
      grid-column: 8 / 9; }
    .grid__item--lg_8-9 {
      grid-column: 8 / 10; }
    .grid__item--lg_8-10 {
      grid-column: 8 / 11; }
    .grid__item--lg_8-11 {
      grid-column: 8 / 12; }
    .grid__item--lg_8-12 {
      grid-column: 8 / 13; }
    .grid__item--lg_9-9 {
      grid-column: 9 / 10; }
    .grid__item--lg_9-10 {
      grid-column: 9 / 11; }
    .grid__item--lg_9-11 {
      grid-column: 9 / 12; }
    .grid__item--lg_9-12 {
      grid-column: 9 / 13; }
    .grid__item--lg_10-10 {
      grid-column: 10 / 11; }
    .grid__item--lg_10-11 {
      grid-column: 10 / 12; }
    .grid__item--lg_10-12 {
      grid-column: 10 / 13; }
    .grid__item--lg_11-11 {
      grid-column: 11 / 12; }
    .grid__item--lg_11-12 {
      grid-column: 11 / 13; }
    .grid__item--lg_12-12 {
      grid-column: 12 / 13; } }

:root {
  --scrollbar-width: 15px; }

.container {
  --container-padding: 32px;
  --container-max-width: 1440px;
  padding-inline: var(--container-padding);
  max-width: var(--container-max-width);
  margin: 0 auto;
  transition: 0.6s;
  opacity: 0;
  transform: translateY(200px);
  filter: blur(10); }
  @media (min-width: 768px) {
    .container {
      --container-padding: 84px; } }
  @media (min-width: 1440px) {
    .container {
      --container-padding: 112px; } }
  .container.show {
    opacity: 1;
    transform: translate(0);
    filter: blur(0); }

.divider-accent {
  height: 4px;
  width: 72px;
  background-color: var(--color-accent);
  border-radius: 2px; }

html {
  font-family: Lexend Deca, sans-serif;
  font-size: 16px;
  font-weight: 400;
  font-style: normal;
  line-height: 150%; }

h1 {
  font-size: 56px;
  line-height: 100%; }

h2 {
  font-size: 40px;
  line-height: 100%; }

h3 {
  font-size: 24px;
  font-weight: 500;
  line-height: 100%; }

h4 {
  font-size: 24px;
  font-weight: 300;
  line-height: 100%; }

button {
  color: inherit;
  font-weight: 500;
  line-height: 150%; }

p {
  font-weight: 300;
  line-height: 150%; }

.p-sm {
  font-size: 0.875em;
  line-height: 128.5%; }

.p-lg {
  font-size: 1.125;
  font-weight: 400;
  line-height: 133.3%; }

.bold {
  font-weight: 500; }

.page {
  color: var(--color-text-primary);
  background-color: var(--color-bg-primary);
  scroll-behavior: smooth;
  transition: 0.3s; }
  .page__section {
    position: relative;
    padding-block: 72px; }
    @media (min-width: 768px) {
      .page__section {
        padding-block: 96px; } }
    @media (min-width: 1440px) {
      .page__section {
        padding-block: 112px; } }
    .page__section-caption {
      color: var(--color-text-secondary);
      font-weight: 500;
      margin-bottom: 16px; }
  .page.menu-opened {
    overflow: hidden; }

.sidebar {
  z-index: 11;
  position: fixed;
  height: 100dvh;
  width: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center; }
  .sidebar__link {
    width: 100%; }
    .sidebar__link:hover .sidebar__logo-item,
    .sidebar__link:hover .icon {
      fill: var(--color-text-primary); }
  .sidebar__logo {
    width: 100%;
    fill: var(--color-text-secondary);
    padding: 14px 0; }
    .sidebar__logo-item {
      transition: 0.3s; }
    @media (min-width: 1440px) {
      .sidebar__logo {
        padding: 20px 0; } }
  .sidebar__group {
    display: flex;
    flex-direction: column;
    width: 100%; }
  .sidebar__item {
    padding: 18px 0; }
    @media (min-width: 1440px) {
      .sidebar__item {
        padding: 24px 0; } }
  .sidebar-left {
    left: 0;
    display: none;
    border-right: 1px solid var(--color-bg-light);
    transition: 0.6s;
    opacity: 0;
    transform: translate(-50%);
    filter: blur(10); }
    @media (min-width: 768px) {
      .sidebar-left {
        display: flex; } }
    .sidebar-left.show {
      opacity: 1;
      transform: translate(0);
      filter: blur(0); }
  .sidebar-right {
    transition: 0.6s;
    right: 0;
    opacity: 0;
    transform: translate(50%);
    filter: blur(10); }
    @media (min-width: 768px) {
      .sidebar-right {
        border-left: 1px solid var(--color-bg-light); } }
    .sidebar-right.show {
      opacity: 1;
      transform: translate(0);
      filter: blur(0); }
  @media (min-width: 768px) {
    .sidebar {
      width: 60px; } }
  @media (min-width: 1440px) {
    .sidebar {
      width: 72px; } }

.menu {
  position: fixed;
  width: 100%;
  height: 100dvh;
  overflow: auto;
  z-index: 1000;
  background-color: var(--color-bg-primary);
  transition: transform 0.3s;
  transform: translateX(100%); }
  .menu__info {
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
  .menu__content {
    padding-top: 0;
    padding-bottom: 52px; }
    @media (min-width: 768px) {
      .menu__content {
        padding-block: 80px;
        padding-bottom: 40px; } }
    @media (min-width: 1440px) {
      .menu__content {
        padding-bottom: 80px; } }
  .menu__title {
    margin-bottom: 32px; }
    @media (min-width: 768px) {
      .menu__title {
        margin-bottom: 56px; } }
  .menu__list {
    margin-bottom: 32px; }
    @media (min-width: 768px) {
      .menu__list {
        margin-bottom: 76px; } }
    @media (min-width: 1440px) {
      .menu__list {
        margin-bottom: 0; } }
    .menu__list-text {
      transition: 0.3s; }
    .menu__list-line {
      height: 2px;
      width: 0;
      border-radius: 1px;
      background-color: var(--color-accent);
      transition: 0.3s; }
    .menu__list-item {
      cursor: pointer;
      position: relative;
      height: 56px;
      display: flex;
      align-items: center;
      gap: 0;
      border-top: 1px solid var(--color-text-tertiary);
      transition: 0.15s linear; }
      @media (min-width: 768px) {
        .menu__list-item {
          height: 72px; } }
      .menu__list-item:hover {
        gap: 16px; }
        .menu__list-item:hover .menu__list-text {
          color: var(--color-text-primary); }
        .menu__list-item:hover .menu__list-line {
          width: 72px;
          transition-delay: 0.15s; }
        .menu__list-item:hover .menu__list-arrow {
          opacity: 1;
          right: 8px; }
    .menu__list-item:last-child {
      border-bottom: 1px solid var(--color-text-tertiary); }
    .menu__list-arrow {
      position: absolute;
      right: 64px;
      opacity: 0;
      fill: var(--color-accent);
      transition: 0.3s ease-out; }
  .menu-opened .menu {
    transform: translateX(0); }
  .menu__contacts {
    flex-direction: column;
    gap: 24px; }
    @media (min-width: 768px) {
      .menu__contacts {
        flex-direction: row; } }
    @media (min-width: 1440px) {
      .menu__contacts {
        flex-direction: column;
        display: none; } }
    .menu__contacts-first {
      display: flex;
      flex-direction: column;
      gap: 24px; }
    .menu__contacts-icon {
      fill: var(--color-text-tertiary); }
    .menu__contacts-item {
      display: flex;
      align-items: center;
      gap: 8px; }
    .menu__contacts--lg {
      display: none; }
      @media (min-width: 1440px) {
        .menu__contacts--lg {
          display: flex; } }

.theme__vjs.video-js {
  position: relative;
  color: white; }

.theme__vjs:not(.vjs-has-started)::before {
  content: "";
  inset: 0;
  z-index: 10;
  position: absolute;
  display: block;
  background: #33312e;
  filter: saturate(0);
  mix-blend-mode: hue; }

.theme__vjs .vjs-big-play-button {
  z-index: 100;
  --play-button-size: 64px;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: var(--play-button-size);
  height: var(--play-button-size);
  border: 2px solid white;
  border-radius: 50%;
  background-color: transparent !important; }
  @media (min-width: 768px) {
    .theme__vjs .vjs-big-play-button {
      --play-button-size: 80px; } }
  .theme__vjs .vjs-big-play-button .vjs-icon-placeholder::before {
    content: "" !important;
    background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="13" height="14" viewBox="0 0 13 14" fill="none"%3E%3Cpath d="M1.38873 12.8334L11.6665 7.00008L1.38873 1.16675L1.38873 10.0001" stroke="white" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-size: 28px;
    background-position: center;
    border: none !important;
    box-shadow: none !important; }

.theme__vjs .vjs-control-bar {
  background-color: rgba(51, 49, 46, 0.6); }

.theme__vjs .vjs-play-progress {
  background-color: var(--color-accent); }

.theme__vjs .vjs-load-progress {
  background-color: var(--color-accent);
  opacity: 0.6; }

.theme__vjs .vjs-load-progress div {
  background-color: transparent; }

.theme__vjs .vjs-slider {
  background-color: rgba(204, 201, 194, 0.2); }

.about__title {
  font-weight: 500;
  margin-bottom: 16px; }

.about__heading {
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .about__heading {
      margin-bottom: 40px; } }

.about__text {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .about__text {
      margin-bottom: 40px; } }
  @media (min-width: 1440px) {
    .about__text {
      margin-bottom: 80px; } }

.about__container {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 24px;
  column-gap: 40px; }
  @media (min-width: 768px) {
    .about__container {
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1440px) {
    .about__container {
      row-gap: 32px;
      grid-template-columns: repeat(4, 1fr); } }
  .about__container-item {
    display: flex;
    flex-direction: column;
    gap: 24px; }
    @media (min-width: 1440px) {
      .about__container-item {
        gap: 40px; } }

.apartments__heading {
  display: flex;
  flex-direction: column;
  gap: 16px; }

.apartments__info {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .apartments__info {
      gap: 32px; } }
  @media (min-width: 1440px) {
    .apartments__info {
      gap: 40px; } }

.apartments__contacts {
  display: flex;
  flex-direction: column;
  gap: 16px; }
  .apartments__contacts-item {
    display: flex;
    align-items: center;
    gap: 8px; }
  .apartments__contacts-icon {
    fill: var(--color-text-primary); }

.apartments__swiper {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative; }
  .apartments__swiper-slide {
    position: relative; }
    .apartments__swiper-slide::before {
      z-index: 10;
      position: absolute;
      content: "";
      display: block;
      height: 100%;
      width: 100%;
      background: #33312e;
      mix-blend-mode: difference; }
    .apartments__swiper-slide::after {
      z-index: 10;
      position: absolute;
      content: "";
      display: block;
      margin-inline: auto;
      top: 0;
      left: calc(var(--grid-column) + var(--grid-column-gap));
      width: calc(2 * var(--grid-column) + var(--grid-column-gap));
      height: 320px;
      border-radius: 0px 0px 0px 400px;
      background: var(--color-accent);
      mix-blend-mode: multiply; }
      @media (min-width: 768px) {
        .apartments__swiper-slide::after {
          left: calc(2 * var(--grid-column) + 2 * var(--grid-column-gap)); } }
      @media (min-width: 1440px) {
        .apartments__swiper-slide::after {
          height: 480px;
          left: calc(var(--grid-column) + var(--grid-column-gap));
          width: calc(4 * var(--grid-column) + 3 * var(--grid-column-gap)); } }
  .apartments__swiper-wrapper {
    height: 456px; }
    @media (min-width: 768px) {
      .apartments__swiper-wrapper {
        height: 408px; } }
    @media (min-width: 1440px) {
      .apartments__swiper-wrapper {
        height: 544px; } }
  .apartments__swiper-image {
    height: 100%;
    width: 100%;
    object-fit: cover;
    filter: saturate(0); }
  .apartments__swiper-nav {
    display: flex; }
    @media (min-width: 1440px) {
      .apartments__swiper-nav {
        gap: 16px; } }
    .apartments__swiper-nav-button {
      height: 48px;
      width: 48px;
      padding: 8px; }
    .apartments__swiper-nav-icon {
      fill: var(--color-text-primary);
      width: 18px;
      height: 15px; }
      .apartments__swiper-nav-icon-wrap {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background-color: transparent;
        transition: 0.3s; }
        .apartments__swiper-nav-button:hover .apartments__swiper-nav-icon-wrap {
          background-color: var(--color-bg-light); }
  .apartments__swiper-hud {
    display: none; }
    @media (min-width: 768px) {
      .apartments__swiper-hud {
        display: flex;
        align-items: center;
        justify-content: space-between; } }
  .apartments__swiper-pagination {
    width: max-content; }
  .apartments__swiper-progress-bar {
    z-index: 100;
    position: absolute;
    display: flex;
    align-items: center;
    gap: 8px;
    top: 0;
    left: 0;
    right: 0;
    padding: 8px; }
    @media (min-width: 768px) {
      .apartments__swiper-progress-bar {
        padding: 16px; } }
    @media (min-width: 1440px) {
      .apartments__swiper-progress-bar {
        padding: 32px; } }
    .apartments__swiper-progress-bar-cell {
      position: relative;
      background: rgba(204, 201, 194, 0.6);
      height: 4px;
      border-radius: 2px;
      width: 100%; }
      .apartments__swiper-progress-bar-cell-fill {
        transition: 0.1s;
        position: absolute;
        background: white;
        border-radius: 2px;
        left: 0;
        top: 0;
        bottom: 0; }

.building-plan__title {
  font-weight: 500;
  margin-bottom: 16px; }

.building-plan__content {
  position: relative; }

.building-plan__controls {
  z-index: 100;
  position: absolute;
  bottom: 0;
  right: 0; }

.building-plan__heading {
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .building-plan__heading {
      margin-bottom: 80px; } }

.building-plan__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 40px;
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .building-plan__grid {
      grid-template-columns: repeat(6, 1fr); } }
  @media (min-width: 1440px) {
    .building-plan__grid {
      display: flex;
      flex-direction: column; } }

.building-plan__description {
  display: flex;
  flex-direction: column;
  gap: 16px; }

.building-plan__area {
  display: flex;
  gap: 8px;
  align-items: end; }

.building-plan__divider {
  display: flex;
  width: 100%;
  height: 1px;
  background-color: var(--color-text-tertiary);
  margin-bottom: 32px; }
  @media (min-width: 768px) {
    .building-plan__divider {
      margin-bottom: 40px; } }
  @media (min-width: 1440px) {
    .building-plan__divider {
      width: 1px;
      height: 100%;
      margin-bottom: 0; } }

.building-plan__info-swiper {
  overflow: hidden; }

.building-plan__plan-swiper {
  overflow: hidden; }
  .building-plan__plan-swiper-slide {
    width: 100%;
    aspect-ratio: 3 / 2;
    background-image: url(../img/plan-dark.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
    .light .building-plan__plan-swiper-slide {
      background-image: url(../img/plan-light.svg); }

.environment {
  z-index: 10;
  padding-bottom: 72px; }
  @media (min-width: 768px) {
    .environment {
      padding-bottom: 48px; } }
  @media (min-width: 1440px) {
    .environment {
      padding-bottom: 56px; } }
  .environment__heading, .environment__text {
    margin-bottom: 24px; }
    @media (min-width: 768px) {
      .environment__heading, .environment__text {
        margin-bottom: 32px; } }
    @media (min-width: 1440px) {
      .environment__heading, .environment__text {
        margin-bottom: 80px; } }
  .environment__vjs:not(.vjs-has-started)::after {
    z-index: 10;
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: var(--color-accent);
    mix-blend-mode: multiply;
    border-radius: 400px 0px 0px 0px; }
    @media (min-width: 768px) {
      .environment__vjs:not(.vjs-has-started)::after {
        top: 80px;
        width: calc(2 * var(--grid-column) + var(--grid-column-gap)); } }
    @media (min-width: 1440px) {
      .environment__vjs:not(.vjs-has-started)::after {
        width: calc(4 * var(--grid-column) + 3 * var(--grid-column-gap)); } }

.gallery {
  padding-top: 72px;
  padding-bottom: 36px; }
  @media (min-width: 768px) {
    .gallery {
      padding-top: 48px;
      padding-bottom: 48px; } }
  @media (min-width: 1440px) {
    .gallery {
      padding-top: 56px;
      padding-bottom: 56px; } }
  .gallery::before {
    --bg-offset: 160px;
    content: "";
    position: absolute;
    width: 100%;
    top: 0;
    bottom: var(--bg-offset);
    background-color: var(--color-bg-light); }
    @media (min-width: 768px) {
      .gallery::before {
        --bg-offset: 176px;
        top: calc(-1 * var(--bg-offset)); } }
    @media (min-width: 1440px) {
      .gallery::before {
        --bg-offset: 192px; } }
  .gallery__tab-bar {
    display: flex;
    margin-bottom: 24px; }
    @media (min-width: 768px) {
      .gallery__tab-bar {
        margin-bottom: 40px; } }
    @media (min-width: 1440px) {
      .gallery__tab-bar {
        margin-bottom: 80px; } }
    .gallery__tab-bar .gallery__tab-bar-controls {
      display: none; }
      @media (min-width: 1440px) {
        .gallery__tab-bar .gallery__tab-bar-controls {
          display: flex; } }
    .gallery__tab-bar-swiper {
      overflow: hidden;
      width: 100%;
      mask-image: linear-gradient(90deg, black 0, black 90%, transparent 100%); }
      .gallery__tab-bar-swiper .swiper-slide {
        display: flex;
        align-items: center;
        position: relative;
        width: fit-content;
        cursor: pointer;
        user-select: none;
        height: 48px;
        line-height: 1.5;
        font-size: 24px;
        font-weight: 300;
        color: var(--color-text-secondary); }
        .gallery__tab-bar-swiper .swiper-slide:hover {
          color: var(--color-text-primary); }
        .gallery__tab-bar-swiper .swiper-slide.active {
          color: var(--color-text-primary);
          font-weight: 500; }
          .gallery__tab-bar-swiper .swiper-slide.active::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            height: 4px;
            width: 48px;
            border-radius: 2px;
            background-color: var(--color-accent); }
  .gallery__heading {
    margin-bottom: 40px; }
  .gallery__swiper {
    overflow: hidden; }
    .gallery__swiper .swiper-slide {
      width: 80%; }
  .gallery__main {
    row-gap: 24px; }
  .gallery__info {
    row-gap: 16px; }
  .gallery__hud {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px; }
  .gallery__secondary-swiper {
    overflow: hidden;
    height: 304px; }
    @media (min-width: 768px) {
      .gallery__secondary-swiper {
        height: 360px; } }
    @media (min-width: 1440px) {
      .gallery__secondary-swiper {
        height: 424px; } }
    .gallery__secondary-swiper-slide {
      row-gap: 8px; }
  .gallery__image-container {
    position: relative;
    transition: 0.3s;
    height: calc((100% - 32px) * 0.8); }
    .gallery__secondary-swiper .swiper-slide-active .gallery__image-container {
      height: calc(100% - 32px); }
    .gallery__image-container::before {
      z-index: 10;
      position: absolute;
      content: "";
      display: block;
      height: 100%;
      width: 100%;
      background: #33312e;
      mix-blend-mode: hue; }
  .gallery__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(0);
    transition: 0.3s;
    opacity: 0.5; }
    .gallery__secondary-swiper .swiper-slide-active .gallery__image {
      opacity: 1; }
      .gallery__secondary-swiper .swiper-slide-active .gallery__image-caption {
        display: block; }
    .gallery__image-caption {
      display: none; }

.videos {
  padding-top: 72px; }
  @media (min-width: 768px) {
    .videos {
      padding-top: 48px; } }
  @media (min-width: 1440px) {
    .videos {
      padding-top: 56px; } }
  .videos__swiper {
    position: relative;
    overflow: hidden; }
  .videos__vjs {
    margin-bottom: 16px; }
    @media (min-width: 768px) {
      .videos__vjs {
        margin-bottom: 8px; } }
    .videos__vjs:not(.vjs-has-started)::after {
      z-index: 10;
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      top: 0;
      background-color: var(--color-accent);
      mix-blend-mode: multiply; }
      @media (min-width: 768px) {
        .videos__vjs:not(.vjs-has-started)::after {
          width: calc(2 * var(--grid-column) + var(--grid-column-gap)); } }
      @media (min-width: 1440px) {
        .videos__vjs:not(.vjs-has-started)::after {
          width: calc(4 * var(--grid-column) + 3 * var(--grid-column-gap)); } }
  .videos__heading {
    row-gap: 8px;
    margin-bottom: 24px; }
    @media (min-width: 768px) {
      .videos__heading {
        margin-bottom: 32px; } }
    @media (min-width: 1440px) {
      .videos__heading {
        display: none; } }
    .videos__heading--lg {
      display: none; }
      @media (min-width: 1440px) {
        .videos__heading--lg {
          display: flex; } }
  .videos__secondary {
    margin-bottom: 24px; }
    @media (min-width: 768px) {
      .videos__secondary {
        margin-bottom: 32px; } }
    @media (min-width: 1440px) {
      .videos__secondary {
        justify-content: space-between; } }
  .videos__description {
    row-gap: 8px; }
    @media (min-width: 768px) {
      .videos__description {
        row-gap: 16px; } }
  .videos__slider-controls {
    z-index: 10;
    justify-content: flex-end; }
    @media (min-width: 1440px) {
      .videos__slider-controls {
        position: absolute;
        top: 460px;
        right: 0; } }

.near-by__map {
  height: 400px;
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .near-by__map {
      height: 680px;
      margin-bottom: 32px; } }
  @media (min-width: 1440px) {
    .near-by__map {
      height: 576px; } }

.near-by__control {
  display: flex;
  flex-direction: column;
  row-gap: 8px; }
  @media (min-width: 768px) {
    .near-by__control {
      flex-direction: row;
      justify-content: space-between; } }
  @media (min-width: 1440px) {
    .near-by__control {
      row-gap: 24px;
      flex-direction: column;
      justify-content: start; } }
  .near-by__control-section {
    display: flex;
    flex-direction: column;
    align-items: start;
    row-gap: 8px;
    width: 50%; }
    @media (min-width: 1440px) {
      .near-by__control-section {
        width: auto;
        row-gap: 24px; } }
  .near-by__control-btn {
    display: flex;
    align-items: center;
    font-weight: 300;
    font-size: 24px;
    padding-block: 8px; }
    .near-by__control-btn::before {
      content: "";
      display: block;
      height: 4px;
      border-radius: 2px;
      width: var(--grid-column);
      margin-right: 16px;
      transition: 0.3s;
      background-color: transparent; }
      @media (min-width: 768px) {
        .near-by__control-btn::before {
          margin-right: var(--grid-column-gap); } }
    .near-by__control-btn.active {
      color: var(--color-text-primary);
      font-weight: 500; }
    .near-by__control-btn.active::before {
      background-color: var(--color-accent); }

.timeline__heading {
  row-gap: 16px;
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .timeline__heading {
      margin-bottom: 32px; } }
  @media (min-width: 1440px) {
    .timeline__heading {
      margin-bottom: 40px; } }

.timeline__main {
  position: relative; }
  .timeline__main-info {
    row-gap: 16px;
    margin-bottom: 16px;
    justify-content: start;
    max-height: 220px;
    overflow: auto; }
    @media (min-width: 768px) {
      .timeline__main-info {
        max-height: none;
        justify-content: center;
        margin-bottom: 0; } }
  .timeline__main-swiper {
    overflow: hidden;
    height: 960px;
    mask-image: linear-gradient(to bottom, transparent 0%, black 18.75%, black 81.25%, transparent 100%); }
    @media (min-width: 768px) {
      .timeline__main-swiper {
        height: 880px; } }
    @media (min-width: 1440px) {
      .timeline__main-swiper {
        height: 800px; } }
    .timeline__main-swiper-slide-content {
      padding-block: 12px; }
      @media (min-width: 1440px) {
        .timeline__main-swiper-slide-content {
          padding-block: 20px; } }

.timeline #timeline__main-swiper-pagination.swiper-pagination {
  align-items: center;
  justify-content: center;
  width: var(--container-padding);
  left: calc(-1 * var(--container-padding)); }
  @media (min-width: 768px) {
    .timeline #timeline__main-swiper-pagination.swiper-pagination {
      left: calc(2 * var(--grid-column) + 1 * var(--grid-column-gap));
      width: var(--grid-column-gap); } }
  @media (min-width: 1440px) {
    .timeline #timeline__main-swiper-pagination.swiper-pagination {
      left: calc(4 * var(--grid-column) + 4 * var(--grid-column-gap));
      width: var(--grid-column); } }

.timeline #timeline__main-swiper-pagination .swiper-pagination-bullet {
  background-color: var(--color-text-tertiary);
  opacity: 1;
  transform: scale(1); }

.timeline #timeline__main-swiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--color-accent); }

.timeline__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0); }

.timeline__image-container {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover; }
  .timeline__image-container::before {
    z-index: 10;
    position: absolute;
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background: #33312e;
    mix-blend-mode: hue; }
  .timeline__image-container::after {
    content: "";
    transition: 0.3s; }
  .timeline__main-swiper-slide.swiper-slide-active .timeline__image-container::after {
    z-index: 10;
    position: absolute;
    opacity: 0;
    border-radius: 400px 0px 0px 0px;
    background: var(--color-accent);
    mix-blend-mode: multiply;
    right: 0;
    bottom: 0;
    top: 80px; }
    @media (min-width: 768px) {
      .timeline__main-swiper-slide.swiper-slide-active .timeline__image-container::after {
        opacity: 1;
        width: calc(2 * var(--grid-column) + var(--grid-column-gap)); } }
    @media (min-width: 1440px) {
      .timeline__main-swiper-slide.swiper-slide-active .timeline__image-container::after {
        width: calc(4 * var(--grid-column) + 3 * var(--grid-column-gap));
        top: 64px; } }

.timeline__minor-swiper {
  overflow: hidden;
  justify-content: center; }
  .timeline__minor-swiper-hud {
    display: flex;
    align-items: center;
    justify-content: space-between; }
  .timeline__minor-swiper-pagination {
    display: flex;
    justify-content: end; }
  .timeline__minor-swiper-wrapper {
    height: 280px; }
    @media (min-width: 768px) {
      .timeline__minor-swiper-wrapper {
        height: 440px; } }

.faq__info {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 72px; }
  @media (min-width: 768px) {
    .faq__info {
      margin-bottom: 32px; } }

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

.faq__item {
  border-top: 1px solid var(--color-text-tertiary); }
  .faq__item:last-child {
    border-bottom: 1px solid var(--color-text-tertiary); }
  .faq__item-label {
    display: flex;
    align-items: center;
    padding: 16px 0;
    cursor: pointer; }
    .faq__item-label-text {
      font-size: 24px; }
  .faq__item-btn {
    width: 24px;
    height: 24px;
    margin-right: 16px;
    position: relative; }
    .faq__item-btn::after, .faq__item-btn::before {
      content: "";
      position: absolute;
      left: 50%;
      top: 50%;
      width: 20px;
      height: 2px;
      border-radius: 1px;
      background-color: var(--color-text-primary);
      transform: translate(-50%, -50%);
      transition: 0.3s ease-in-out; }
      .accordion-show .faq__item-btn::after, .accordion-show .faq__item-btn::before {
        background-color: var(--color-accent); }
    .faq__item-btn::after {
      transform: translate(-50%, -50%) rotate(-90deg); }
      .accordion-show .faq__item-btn::after {
        background-color: var(--color-accent);
        transform: translate(-50%, -50%) rotate(0deg); }
  .faq__item-content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-height: 0;
    transition: 0.6s ease-in-out;
    overflow: hidden; }
    .accordion-show .faq__item-content {
      max-height: 600px;
      padding-bottom: 16px; }

.hero {
  height: 100dvh;
  --logo-v-spacing: 8px;
  --logo-height: 40px;
  --logo-size: calc(var(--logo-v-spacing) * 2 + var(--logo-height)); }
  .hero__container {
    height: 100%;
    position: relative; }
  .hero__logo {
    margin-block: var(--logo-v-spacing);
    height: var(--logo-height);
    width: 116px;
    fill: var(--color-text-secondary); }
  .hero__info {
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 2;
    gap: 24px; }
    @media (min-width: 768px) {
      .hero__info {
        gap: 40px; } }
    .hero__info-title {
      line-height: 120%; }
      .hero__info-title:before {
        content: attr(data-heading);
        overflow: hidden;
        position: absolute;
        display: flex;
        align-items: center;
        color: white;
        --clip-start: calc(var(--grid-column) + var(--grid-column-gap));
        clip-path: polygon(var(--clip-start) 0, 100% 0, 100% 100%, var(--clip-start) 100%); }
        @media (min-width: 768px) {
          .hero__info-title:before {
            --clip-start: calc(
            2 * var(--grid-column) + 2 * var(--grid-column-gap)
          ); } }
        @media (min-width: 1440px) {
          .hero__info-title:before {
            --clip-start: calc(
            4 * var(--grid-column) + 4 * var(--grid-column-gap)
          ); } }
    .hero__info-text {
      max-width: 488px; }
      .hero__info-text:before {
        content: attr(data-heading);
        overflow: hidden;
        position: absolute;
        display: flex;
        align-items: center;
        max-width: 488px;
        color: white;
        --clip-start: calc(var(--grid-column) + var(--grid-column-gap));
        clip-path: polygon(var(--clip-start) 0, 100% 0, 100% 100%, var(--clip-start) 100%); }
        @media (min-width: 768px) {
          .hero__info-text:before {
            --clip-start: calc(
            2 * var(--grid-column) + 2 * var(--grid-column-gap)
          ); } }
        @media (min-width: 1440px) {
          .hero__info-text:before {
            --clip-start: calc(
            4 * var(--grid-column) + 4 * var(--grid-column-gap)
          ); } }
  .hero__swiper {
    overflow: hidden;
    position: absolute;
    width: 100%;
    height: calc(100% - var(--logo-size));
    top: var(--logo-size); }
    @media (min-width: 1440px) {
      .hero__swiper {
        height: 100%;
        top: 0; } }
    .hero__swiper-slide::before {
      content: "";
      z-index: 1;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: #33312e;
      mix-blend-mode: difference; }
    .hero__swiper-slide::after {
      content: "";
      z-index: 1;
      position: absolute;
      display: block;
      bottom: 0;
      left: 0;
      top: 120px;
      width: calc(2 * var(--grid-column) + var(--grid-column-gap));
      border-radius: 0px 400px 0px 0px;
      background: var(--color-accent);
      mix-blend-mode: multiply; }
      @media (min-width: 768px) {
        .hero__swiper-slide::after {
          top: 80px; } }
      @media (min-width: 1440px) {
        .hero__swiper-slide::after {
          top: 72px;
          width: calc(4 * var(--grid-column) + 3 * var(--grid-column-gap));
          left: calc(var(--grid-column) + var(--grid-column-gap)); } }
    .hero__swiper-control {
      z-index: 100;
      position: absolute;
      bottom: 0;
      left: 0;
      padding: 16px;
      gap: 24px;
      width: calc(2 * var(--grid-column) + var(--grid-column-gap)); }
      @media (min-width: 1440px) {
        .hero__swiper-control {
          gap: 32px;
          width: calc(2 * var(--grid-column) + 2 * var(--grid-column-gap)); } }
      .hero__swiper-control-item {
        cursor: pointer;
        width: 48px;
        height: 48px; }
      .hero__swiper-control-prev, .hero__swiper-control-next {
        position: relative;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid white;
        transition: 0.3s; }
        .hero__swiper-control-prev:hover, .hero__swiper-control-next:hover {
          width: 48px;
          height: 48px; }
      .hero__swiper-control-icon {
        fill: white; }
  .hero__image {
    object-fit: cover;
    height: 100%;
    width: 100%;
    filter: saturate(0); }
  .hero__gallery {
    display: flex;
    align-items: center;
    position: relative;
    width: max-content;
    gap: 12px; }
    .hero__gallery-icon {
      width: 32px;
      height: 32px;
      background-color: var(--color-text-tertiary);
      border-radius: 50%;
      border: 1px solid transparent;
      transition: 0.3s; }
      .hero__gallery:hover .hero__gallery-icon {
        border-color: var(--color-text-primary);
        background-color: transparent; }
    .hero__gallery-arrow {
      fill: var(--color-text-primary); }
    .hero__gallery-label {
      transition: 0.3s;
      border-bottom: 2px solid var(--color-text-tertiary); }
      .hero__gallery-label:before {
        content: attr(data-heading);
        overflow: hidden;
        position: absolute;
        display: flex;
        align-items: center;
        max-width: 488px;
        color: white;
        --clip-start: calc(
          var(--grid-column) + var(--grid-column-gap) - 44px
        );
        clip-path: polygon(var(--clip-start) 0, 100% 0, 100% 100%, var(--clip-start) 100%); }
        @media (min-width: 768px) {
          .hero__gallery-label:before {
            --clip-start: calc(
            2 * var(--grid-column) + 2 * var(--grid-column-gap)
          ); } }
        @media (min-width: 1440px) {
          .hero__gallery-label:before {
            --clip-start: calc(
            4 * var(--grid-column) + 4 * var(--grid-column-gap)
          ); } }
      .hero__gallery:hover .hero__gallery-label {
        border-bottom-color: var(--color-accent); }

.get-in-touch__main {
  margin-bottom: 32px;
  gap: 24px; }
  @media (min-width: 768px) {
    .get-in-touch__main {
      gap: 32px; } }
  @media (min-width: 1440px) {
    .get-in-touch__main {
      gap: 40px; } }

.get-in-touch__info {
  gap: 16px; }

.get-in-touch__heading {
  gap: 16px; }

.get-in-touch__form {
  gap: 24px; }
  @media (min-width: 1440px) {
    .get-in-touch__form {
      gap: 32px; } }
  .get-in-touch__form-input {
    outline: none;
    border: none;
    background: transparent;
    transition: 0.3s;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--color-text-tertiary);
    color: var(--color-text-secondary); }
    .get-in-touch__form-input:hover {
      color: var(--color-text-primary); }
    .get-in-touch__form-input:valid {
      color: var(--color-text-primary);
      border-color: var(--color-text-secondary); }
    .get-in-touch__form-input::placeholder {
      transition: 0.3s;
      color: var(--color-text-secondary); }
    .get-in-touch__form-input:hover::placeholder {
      color: var(--color-text-primary); }
    .get-in-touch__form-input:focus {
      color: var(--color-text-primary);
      border-color: var(--color-text-primary); }
    .get-in-touch__form-input:focus::placeholder {
      color: var(--color-text-primary); }
    .get-in-touch__form-input.just-validate-error-field {
      border-color: var(--color-accent); }
    .get-in-touch__form-input.just-validate-success-field {
      border-color: var(--color-success); }
  .get-in-touch__form-submit {
    display: flex;
    align-items: center;
    align-self: end;
    gap: 12px;
    padding: 12px;
    border: 1px solid transparent;
    transition: 0.3s; }
    .get-in-touch__form-submit:active {
      color: var(--color-text-secondary); }
    .get-in-touch__form-submit-icon {
      transition: 0.3s;
      fill: var(--color-text-primary); }
    .get-in-touch__form-submit:active .get-in-touch__form-submit-icon {
      fill: var(--color-text-secondary); }
    .get-in-touch__form-submit:hover {
      border-color: var(--color-accent); }

.get-in-touch__secondary {
  gap: 24px; }
  @media (min-width: 768px) {
    .get-in-touch__secondary {
      gap: 32px; } }
  @media (min-width: 1440px) {
    .get-in-touch__secondary {
      gap: 40px; } }
  .get-in-touch__secondary-info {
    gap: 24px; }
    @media (min-width: 768px) {
      .get-in-touch__secondary-info {
        gap: 16px; } }
  .get-in-touch__secondary-text {
    max-width: 592px; }

.get-in-touch__image-wrap {
  width: 100%;
  position: relative;
  height: 280px; }
  @media (min-width: 1440px) {
    .get-in-touch__image-wrap {
      height: 440px; } }
  .get-in-touch__image-wrap::before {
    z-index: 10;
    position: absolute;
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    background: #33312e;
    mix-blend-mode: hue; }
  .get-in-touch__image-wrap::after {
    z-index: 10;
    position: absolute;
    content: "";
    display: block;
    right: 0;
    top: 0;
    height: 200px;
    width: 144px;
    border-radius: 0px 0px 0px 400px;
    background: var(--color-accent);
    mix-blend-mode: multiply; }
    @media (min-width: 768px) {
      .get-in-touch__image-wrap::after {
        width: 184px; } }
    @media (min-width: 1440px) {
      .get-in-touch__image-wrap::after {
        height: 400px;
        width: 400px; } }

.get-in-touch__image {
  filter: saturate(0);
  width: 100%;
  height: 100%;
  object-fit: cover; }

.get-in-touch__contacts {
  gap: 8px; }
  @media (min-width: 768px) {
    .get-in-touch__contacts {
      flex-direction: row;
      gap: 32px; } }
  .get-in-touch__contacts-item {
    display: flex;
    align-items: center;
    gap: 8px; }
  .get-in-touch__contacts-icon {
    fill: var(--color-text-primary); }

.reviews__grid {
  position: relative;
  overflow: hidden; }

.reviews__info {
  display: flex;
  flex-direction: column;
  gap: 24px; }
  @media (min-width: 768px) {
    .reviews__info {
      gap: 32px; } }
  @media (min-width: 1440px) {
    .reviews__info {
      gap: 40px; } }

.reviews__header {
  display: flex;
  flex-direction: column;
  gap: 16px; }

.reviews__divider-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .reviews__divider-container {
      gap: 32px;
      margin-bottom: 16px; } }
  @media (min-width: 1440px) {
    .reviews__divider-container {
      gap: 40px;
      flex-direction: row;
      margin-bottom: 0; } }

.reviews__divider {
  height: 1px;
  width: 100%;
  background: var(--color-text-tertiary); }
  @media (min-width: 1440px) {
    .reviews__divider {
      height: 100%;
      width: 1px; } }
  .reviews__divider-accent {
    display: none; }
    @media (min-width: 1440px) {
      .reviews__divider-accent {
        display: block; } }

.reviews__quotes {
  fill: var(--color-text-tertiary); }

.reviews__social-label {
  transition: 0.3s;
  border-bottom: 2px solid var(--color-text-tertiary); }
  .reviews__social-link:hover .reviews__social-label {
    border-bottom: 2px solid var(--color-accent); }

.reviews__social-link {
  display: flex;
  gap: 8px; }

.reviews__social-links {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 24px; }
  @media (min-width: 768px) {
    .reviews__social-links {
      flex-direction: row;
      gap: 32px;
      margin-bottom: 32px; } }
  @media (min-width: 1440px) {
    .reviews__social-links {
      flex-direction: column;
      gap: 40px;
      margin-bottom: 0; } }

.reviews__social-arrow {
  transition: 0.3s;
  fill: var(--color-text-primary); }
  .reviews__social-link:hover .reviews__social-arrow {
    fill: var(--color-accent); }
  .reviews__social-arrow-wrap {
    width: 24px;
    height: 24px; }

.reviews__swiper {
  overflow: hidden;
  filter: grayscale(1);
  mask-image: linear-gradient(90deg, black 0, black 80%, transparent 100%); }
  .reviews__swiper-slide {
    display: flex;
    flex-direction: column;
    gap: 16px; }

.reviews__image {
  width: 100%;
  object-fit: cover;
  max-height: 280px; }

.reviews__contact {
  display: flex;
  align-items: center;
  gap: 16px; }
  .reviews__contact-photo {
    object-fit: cover;
    border-radius: 50%;
    width: 56px;
    height: 56px; }

.footer {
  position: relative;
  padding-bottom: 72px; }
  @media (min-width: 768px) {
    .footer {
      padding-bottom: 80px; } }
  .footer__logos {
    margin-bottom: 72px; }
    @media (min-width: 768px) {
      .footer__logos {
        margin-bottom: 96px; } }
    @media (min-width: 1440px) {
      .footer__logos {
        margin-bottom: 112px; } }
    .footer__logos-item {
      fill: var(--color-text-tertiary); }
  .footer__map {
    width: 100%;
    object-fit: contain;
    height: 280px;
    margin-bottom: 80px; }
    @media (min-width: 768px) {
      .footer__map {
        height: 500px; } }
  .footer__text {
    text-align: center;
    max-width: 384px; }
    @media (min-width: 1440px) {
      .footer__text {
        text-align: start; } }
  .footer__map {
    margin-bottom: 80px; }
  .footer__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    row-gap: 24px; }
    @media (min-width: 768px) {
      .footer__info {
        row-gap: 32px; } }
    @media (min-width: 1440px) {
      .footer__info {
        flex-direction: row; } }
  .footer__logo {
    fill: var(--color-text-primary); }
    @media (min-width: 1440px) {
      .footer__logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%); } }
  .footer__contacts {
    text-align: center; }
    @media (min-width: 1440px) {
      .footer__contacts {
        text-align: end; } }
  .footer__phone {
    font-weight: 500; }

#footer-map {
  width: 100%;
  height: 500px; }

.slider-controls {
  display: flex; }
  @media (min-width: 1440px) {
    .slider-controls {
      column-gap: 16px; } }
  .slider-controls__item {
    height: 48px;
    width: 48px;
    padding: 8px; }
  .slider-controls__icon-wrap {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: transparent;
    transition: 0.3s; }
    .slider-controls__icon-wrap:hover {
      background-color: var(--color-bg-light); }
  .slider-controls__item.swiper-button-disabled {
    pointer-events: none; }
  .slider-controls__icon {
    fill: var(--color-text-primary); }
    .swiper-button-disabled .slider-controls__icon {
      fill: var(--color-text-secondary); }

.icon {
  width: 16px;
  height: 16px;
  transition: 0.3s;
  fill: var(--color-text-secondary); }
  @media (min-width: 768px) {
    .icon {
      width: 24px;
      height: 24px; } }

.icon-button:hover .icon {
  fill: var(--color-text-primary); }

.theme-toggler--img {
  opacity: 0.6;
  transition: 0.3s; }
  .theme-toggler--img:hover {
    opacity: 1; }
