:root {
  font-size: 30px; }

::-webkit-scrollbar {
  width: .4rem;
  border-radius: .2rem; }

::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.05);
  border-radius: .4rem; }

::-webkit-scrollbar-thumb {
  background: #31211F;
  border-radius: .4rem; }

ul, li {
  margin: 0;
  padding: 0;
  display: block; }

a {
  transition: .3s all;
  outline: none;
  text-decoration: none; }
  a:hover {
    text-decoration: none; }

h1, h2, h3, h4, h5, p {
  margin: 0; }

body {
  font-family: 'Montserrat', sans-serif;
  color: #373F5A;
  font-size: 0.8rem; }

strong {
  font-weight: 600; }

.container {
  padding: 0 10rem; }

.lazy {
  opacity: 0; }

.tel-popup {
  right: 10rem;
  position: fixed;
  bottom: 2.3rem;
  width: 4rem;
  height: 3rem;
  border-radius: 3rem;
  background: #EED0B6;
  color: #31211F;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: .6s all;
  z-index: 20;
  border: none;
  animation: pulse-brown 2s infinite; }
  .tel-popup svg {
    width: 1.4rem; }
  .tel-popup:hover {
    background: #31211F;
    color: #EED0B6; }

.form-done {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 10;
  display: none; }
  .form-done__title {
    font-size: 2rem;
    margin-bottom: 1.5rem; }
  .form-done__text {
    max-width: 20rem;
    margin-bottom: 2rem; }
  .form-done__img img {
    width: 10rem; }
  .form-done__wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 3rem 2.5rem;
    border-radius: 1.6rem;
    background: #fff;
    text-align: center;
    box-shadow: 7px 7px 1.6rem rgba(54, 54, 54, 0.25); }

.telegram-btn {
  display: none; }

.live-open {
  bottom: 6.3rem; }

.section-title {
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 150%;
  padding-top: .7rem;
  position: relative; }
  .section-title::before {
    position: absolute;
    left: .5rem;
    top: 0;
    width: 1.6rem;
    height: 1rem;
    background: url(../img/eyebrow.svg) center center;
    background-size: contain;
    content: ''; }
.section-main {
  margin-left: auto;
  margin-right: auto;
  font-size: 1.6rem;
  line-height: 150%;
  color: rgba(55, 63, 90, 0.4);
  text-align: center; }
  .section-main strong {
    color: #373F5A; }
  .section-main span {
    color: #373F5A; }
.section-text {
  line-height: 150%; }

.btn {
  height: 3rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #31211F;
  border-radius: 3rem; }
  .btn:hover {
    color: #31211F;
    background: #EED0B6; }
  .btn-disabled {
    pointer-events: none; }

.doneby p {
  line-height: 140%; }
  .doneby p strong {
    font-weight: 600; }

input.error {
  color: red;
  border: 1px solid red; }

.mobile-menu {
  display: none; }

.recaptcha-text {
  color: red;
  display: none; }

@keyframes scale {
  50% {
    transform: scale(1.2); } }
@keyframes pulse-white {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.3); }
  70% {
    box-shadow: 0 0 0 1rem rgba(255, 121, 63, 0); }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 121, 63, 0); } }
@keyframes pulse-brown {
  0% {
    box-shadow: 0 0 0 0 rgba(238, 208, 182, 0.6); }
  70% {
    box-shadow: 0 0 0 1rem rgba(255, 121, 63, 0); }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 121, 63, 0); } }
.preloader {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #31211F url(../img/preloader-pattern.png) center center no-repeat;
  background-size: 45rem;
  z-index: 999;
  display: flex;
  justify-content: center;
  align-items: center; }
  .preloader__logo {
    width: 45rem;
    height: 16rem;
    display: flex;
    justify-content: center;
    align-items: center;
    background: radial-gradient(50% 50% at 50% 50%, #31211F 30.74%, rgba(49, 33, 31, 0) 100%); }
    .preloader__logo img {
      width: 22rem;
      transition: 1.5s all ease-in-out;
      opacity: 0; }

.stock {
  position: relative;
  padding-top: 7rem; }
  .stock__image {
    position: absolute;
    right: 0;
    width: 21rem;
    top: 0;
    z-index: 2; }
    .stock__image img {
      width: 100%;
      display: block; }
  .stock-item {
    border-radius: 2.15rem;
    background: #31211F url(../img/pattern.svg) top right no-repeat;
    background-size: 45rem;
    color: #fff;
    padding: 2.5rem 3.5rem; }
  .stock .section-title {
    margin-bottom: 2rem; }
  .stock__subtitle {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 1.2rem; }
  .stock__list {
    max-width: 60rem; }
    .stock__list li {
      margin-bottom: 1.1rem;
      font-size: 1.1rem;
      font-weight: 700;
      display: flex;
      gap: .5rem; }
      .stock__list li::before {
        content: '\2022'; }
  .stock__text {
    font-style: italic;
    font-size: 1rem;
    max-width: 60rem;
    line-height: 150%; }
    .stock__text-normal {
      font-style: normal; }
  .stock-table {
    margin: 1.2rem 0; }
    .stock-table table th, .stock-table table td {
      border: 1px solid #fff;
      text-align: center;
      padding: 0.4rem 1rem; }
    .stock-table table th {
      font-weight: 500;
      color: #31211F;
      background: #EED0B6; }
    .stock-table table tr.last {
      border-top: .5rem solid #fff;
      position: relative; }
      .stock-table table tr.last td {
        border-top: 1px solid #fff; }
  .stock .owl-carousel .owl-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 1.5rem; }
    .stock .owl-carousel .owl-dots .owl-dot {
      width: 14px;
      height: 14px;
      border-radius: 50%;
      background: transparent;
      border: 1px solid #31211F; }
      .stock .owl-carousel .owl-dots .owl-dot.active {
        position: relative; }
        .stock .owl-carousel .owl-dots .owl-dot.active::after {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 7px;
          height: 7px;
          background: #31211F;
          border-radius: 50%;
          content: ''; }

.live {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 25;
  background: rgba(0, 0, 0, 0.5);
  display: none; }
  .live-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 1rem;
    width: 48rem;
    height: 27rem;
    text-align: center; }
    .live-content iframe {
      width: 100%;
      height: 100%; }

.feedback {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 25;
  background: rgba(0, 0, 0, 0.5);
  display: none; }
  .feedback-content {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 20%;
    background: #fff;
    border-radius: 1rem;
    padding: 2rem;
    width: 31rem; }
  .feedback__close {
    position: absolute;
    right: 1rem;
    top: 1rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: #31211F;
    cursor: pointer;
    user-select: none; }
    .feedback__close img {
      width: .65rem; }
  .feedback-done {
    display: none;
    text-align: center; }
    .feedback-done .feedback__title {
      margin-bottom: 2.2rem; }
    .feedback-done .feedback-form__btn {
      margin-bottom: 0; }
    .feedback-done .feedback__info {
      margin-bottom: 2.5rem; }
  .feedback__title {
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 0.75rem; }
  .feedback__text {
    margin-bottom: 1.6rem; }
  .feedback-form__input {
    position: relative;
    margin-bottom: 1.2rem; }
    .feedback-form__input label {
      position: absolute;
      left: 1.2rem;
      top: 0.7rem;
      font-size: 0.55rem; }
    .feedback-form__input input {
      width: 100%;
      display: block;
      border: none;
      outline: none;
      height: 3.6rem;
      background: #F5F5F5;
      border-radius: .8rem;
      padding: 1rem 1.2rem 0;
      font-size: 0.7rem;
      font-weight: 500; }
  .feedback-form__btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 3.6rem;
    border-radius: 3.6rem;
    width: 100%;
    color: #31211F;
    background: #EED0B6;
    border: none;
    font-size: 0.7rem;
    font-weight: 600;
    transition: .6s all;
    margin-bottom: 2rem;
    margin-top: 1rem; }
    .feedback-form__btn:hover {
      background: #31211F;
      color: #EED0B6; }
  .feedback__info {
    font-size: 0.7rem; }
  .feedback__img {
    margin-bottom: 2.2rem; }
    .feedback__img img {
      display: inline-block;
      width: 13rem; }

.teaser-wrapper {
  padding: 0 3rem;
  max-width: 61.5rem;
  margin: 0 auto; }
.teaser__title {
  font-weight: 400;
  font-size: 2.2rem;
  margin-bottom: 1.8rem; }
.teaser__text {
  line-height: 160%;
  font-size: 0.85rem; }
.teaser-header {
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 4;
  top: 2rem; }
  .teaser-header .teaser-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .teaser-header__logo {
    width: 8rem;
    display: block; }
    .teaser-header__logo img {
      width: 100%;
      display: block; }
  .teaser-header__wrap {
    display: flex;
    align-items: center;
    gap: 4rem; }
  .teaser-header__lang {
    display: flex;
    gap: 1rem; }
    .teaser-header__lang a {
      color: #fff;
      font-size: 1rem; }
  .teaser-header__tel {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 1.6rem;
    color: #fff;
    font-weight: 500; }
    .teaser-header__tel img {
      width: 1.6rem; }
.teaser-main {
  position: relative; }
  .teaser-main__content {
    color: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    bottom: 2.7rem;
    z-index: 2;
    width: 100%;
    padding: 0 1rem; }
  .teaser-main__logo {
    width: 33rem;
    margin: 0 auto 2.5rem; }
    .teaser-main__logo img {
      width: 100%;
      display: block; }
  .teaser-main__title {
    font-weight: 400;
    font-size: 3.25rem; }
  .teaser-main__item {
    height: 100vh; }
    .teaser-main__item img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover; }
.teaser-info {
  padding: 4.5rem 0 6rem;
  position: relative;
  z-index: 1; }
.teaser-advantages {
  display: flex;
  margin-bottom: 3.5rem; }
  .teaser-advantages__item {
    width: 33.333%;
    display: flex;
    align-items: center;
    gap: 1rem; }
  .teaser-advantages__img {
    width: 3.7rem;
    height: 3.7rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #EED0B6;
    border-radius: .5rem; }
    .teaser-advantages__img img {
      width: 2.15rem; }
  .teaser-advantages__text div {
    margin-bottom: 0.4rem;
    opacity: .7;
    font-size: 0.8rem; }
  .teaser-advantages__text p {
    font-weight: 400; }
.teaser-about {
  margin-bottom: 5rem;
  display: flex;
  align-items: center;
  gap: 2rem; }
  .teaser-about__content {
    width: calc(52% - 1rem); }
  .teaser-about__wrap {
    width: calc(48% - 1rem);
    position: relative; }
  .teaser-about .teaser__title {
    margin-bottom: 1.25rem; }
  .teaser-about__item {
    height: 18rem;
    cursor: pointer; }
    .teaser-about__item img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      border-radius: 1rem; }
  .teaser-about__arrows {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 2;
    width: calc(100% + 2rem);
    left: -1rem;
    display: flex;
    justify-content: space-between; }
    .teaser-about__arrows span {
      pointer-events: auto;
      width: 2rem;
      height: 2rem;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
      user-select: none; }
      .teaser-about__arrows span svg {
        width: 100%;
        height: 100%;
        display: block; }
.teaser-location {
  margin-bottom: 3.5rem; }
  .teaser-location__map {
    width: 100%;
    height: 30.5rem;
    border-radius: 1rem;
    overflow: hidden; }
    .teaser-location__map #teaserMap {
      width: 100%;
      height: 100%; }
.teaser-form {
  box-shadow: 0px 4px 18px 0px rgba(110, 110, 110, 0.2);
  border-radius: .75rem;
  background: #fff;
  padding: 2rem 5.5rem; }
  .teaser-form .teaser__title {
    text-align: center;
    margin-bottom: 0.75rem; }
  .teaser-form__text {
    text-align: center;
    font-size: 1.1rem;
    margin-bottom: 1.35rem; }
  .teaser-form__form {
    display: flex;
    gap: 1.9rem;
    align-items: flex-end;
    font-size: 0.8rem; }
  .teaser-form__item {
    width: 33.333%; }
  .teaser-form__name {
    margin-bottom: 0.7rem; }
  .teaser-form__input {
    position: relative; }
    .teaser-form__input img {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0.5rem;
      width: 1.4rem;
      display: block; }
    .teaser-form__input input {
      width: 100%;
      height: 2.3rem;
      background: rgba(122, 124, 74, 0.1);
      padding-left: 2.3rem;
      padding-right: 1.2rem;
      border: none;
      border-radius: .5rem;
      outline: none; }
  .teaser-form .btn {
    width: 33.333%;
    height: 2.3rem;
    background: #373F5A;
    color: #fff;
    border-radius: .5rem;
    border: none; }
.teaser-footer {
  text-align: center;
  background: #EED0B6;
  padding: 1.15rem 0;
  font-size: 0.8rem; }

.header {
  position: fixed;
  top: .5rem;
  padding: .3rem 0;
  left: 0;
  width: 100%;
  z-index: 20;
  transition: .4s all ease-in-out;
  font-size: 0.85rem; }
  .header-mobile {
    display: none; }
  .header a {
    color: #31211F;
    font-weight: 500; }
    .header a:hover {
      color: #EED0B6; }
  .header-wrap {
    background: rgba(255, 255, 255, 0.5);
    padding: .15rem;
    border-radius: 5rem;
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .header__logo {
    cursor: pointer;
    height: 3rem;
    border-radius: 3rem;
    background: #31211F;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0 2.4rem; }
    .header__logo img {
      width: 4.8rem; }
  .header-menu {
    height: 3rem;
    border-radius: 3rem;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 1.5rem; }
    .header-menu li {
      margin: 0 1.5rem;
      position: relative; }
      .header-menu li:last-child::after {
        content: none; }
      .header-menu li::after {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        height: 1.5rem;
        width: 1px;
        background: rgba(55, 63, 90, 0.1);
        right: -1.5rem;
        content: ''; }
  .header__contact {
    height: 3rem;
    border-radius: 3rem;
    background: #fff;
    width: 10rem;
    display: inline-flex;
    justify-content: center;
    align-items: center; }
  .header-info {
    height: 3rem;
    border-radius: 3rem;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 2.5rem; }
  .header-lang {
    position: relative; }
    .header-lang:hover .header-lang__list {
      display: block; }
    .header-lang:hover .header-lang__btn img {
      transform: rotate(180deg); }
    .header-lang__btn {
      padding-bottom: 1.5rem;
      margin-bottom: -1.5rem;
      color: #31211F;
      font-weight: 500;
      display: flex;
      align-items: center; }
      .header-lang__btn img {
        width: .4rem;
        margin-left: 0.25rem; }
    .header-lang__list {
      position: absolute;
      top: 2.5rem;
      left: -.5rem;
      width: 4rem;
      padding: 1rem;
      background: #fff;
      backdrop-filter: blur(5px);
      display: none;
      border-radius: .75rem; }
      .header-lang__list a {
        margin-bottom: 0.5rem;
        display: block; }
        .header-lang__list a:last-child {
          margin-bottom: 0; }
  .header__telegram {
    margin: 0 2.2rem;
    position: relative; }
    .header__telegram::after, .header__telegram::before {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      height: 1.5rem;
      width: 1px;
      background: rgba(55, 63, 90, 0.1);
      content: ''; }
    .header__telegram::before {
      left: -1rem; }
    .header__telegram::after {
      right: -1rem; }
  .header__tel {
    display: inline-flex;
    align-items: center; }
    .header__tel span {
      font-size: 0.9rem;
      font-weight: 600; }
    .header__tel svg {
      width: 0.75rem;
      margin-right: 0.6rem; }
  .header.scrolled {
    box-shadow: 0 3px 1.5rem rgba(0, 0, 0, 0.05);
    background: #fff;
    top: 0; }

.main {
  height: 100vh;
  display: flex;
  align-items: flex-end;
  color: #fff;
  padding-bottom: 2.3rem;
  position: relative; }
  .main-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden; }
    .main-bg img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      animation: scale 40s linear infinite; }
  .main-360 {
    width: 4rem;
    height: 3rem;
    border-radius: 3rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    color: #31211F; }
    .main-360:hover {
      background: #31211F;
      color: #fff; }
    .main-360 svg {
      width: 1.5rem; }
  .main__title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 2.3rem;
    border: 0.15rem solid rgba(255, 255, 255, 0.5);
    border-radius: 1rem;
    background: #31211F;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-weight: 500;
    font-size: 1.6rem;
    padding: 1.6rem 3rem; }
    .main__title img {
      width: 6.5rem;
      margin-right: 1rem;
      margin-bottom: 0.3rem; }

.about {
  padding: 7rem 0 4rem; }
  .about__main {
    max-width: 56rem;
    margin-bottom: 4rem; }
  .about__img {
    overflow: hidden;
    border-radius: 1rem;
    margin-bottom: 3.5rem; }
    .about__img img {
      width: 100%;
      display: block;
      animation: scale 40s linear infinite; }
  .about-info {
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    .about-info__btn {
      width: 16.5rem; }
      .about-info__btn svg {
        width: 1.2rem;
        margin-right: 0.6rem; }
    .about-info__text {
      width: 50%; }

.genplan {
  height: 50rem;
  position: relative; }
  .genplan .container {
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    align-items: flex-start; }
  .genplan-tabs {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }
  .genplan__title {
    border: 0.15rem solid rgba(255, 255, 255, 0.5);
    background: #31211F;
    color: #fff;
    border-radius: 1rem;
    padding: 1.25rem 2.5rem;
    font-size: 1.6rem;
    font-weight: 500;
    display: inline-block;
    position: relative;
    z-index: 2; }
  .genplan-links {
    display: inline-flex;
    overflow: hidden;
    border-radius: 5rem;
    position: relative;
    z-index: 2; }
    .genplan-links a {
      padding: 1rem 1.2rem;
      display: inline-flex;
      color: #31211F;
      font-weight: 500;
      background: #fff; }
      .genplan-links a:hover {
        background: #EED0B6; }
      .genplan-links a:first-child {
        padding-left: 3rem; }
      .genplan-links a:nth-child(2n) {
        position: relative; }
        .genplan-links a:nth-child(2n)::after, .genplan-links a:nth-child(2n)::before {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          height: 1.4rem;
          width: 1px;
          background: rgba(55, 63, 90, 0.1);
          content: ''; }
        .genplan-links a:nth-child(2n)::before {
          left: 0rem; }
        .genplan-links a:nth-child(2n)::after {
          right: 0rem; }
      .genplan-links a:last-child {
        padding-right: 3rem; }
      .genplan-links a.current {
        background: #31211F;
        color: #fff;
        pointer-events: none; }
  .genplan-tab {
    display: none; }
  .genplan-main {
    display: block;
    position: relative;
    height: 100%; }
    .genplan-main__wrap {
      height: 100%; }
    .genplan-main__advice {
      position: absolute;
      right: 10rem;
      top: 3.3rem;
      background: #fff;
      border-radius: 3rem;
      display: inline-flex;
      align-items: center;
      z-index: 2; }
      .genplan-main__advice img {
        width: 5.5rem;
        flex-shrink: 0; }
      .genplan-main__advice span {
        padding: 0 2rem;
        width: 16rem;
        line-height: 125%; }
    .genplan-main__img {
      height: 100%;
      position: relative; }
      .genplan-main__img img {
        height: 100%;
        width: 100%;
        display: block;
        object-fit: cover; }
      .genplan-main__img svg {
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%; }
        .genplan-main__img svg path {
          transition: .6s all;
          opacity: 0; }
          .genplan-main__img svg path:hover {
            opacity: 1; }
  .genplan-map {
    height: 100%; }
    .genplan-map #genplanMap {
      height: 100%; }
  .genplan-360 {
    height: 100%;
    background: url(../img/genplan360.jpg) center center no-repeat;
    background-size: cover;
    position: relative; }
    .genplan-360__link {
      display: inline-flex;
      justify-content: center;
      align-items: center;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      flex-direction: column;
      width: 9rem;
      height: 9rem;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.39);
      backdrop-filter: blur(5.5px);
      color: #fff;
      animation: pulse-white 2s infinite; }
      .genplan-360__link svg {
        width: 3.5rem;
        height: 3.5rem;
        margin-bottom: 0.5rem; }
  .genplan-info {
    position: fixed;
    transform: translate(-105%, -50%);
    border-radius: .5rem;
    top: 10rem;
    left: 10rem;
    z-index: 10;
    padding: 1.25rem 1.5rem;
    width: 13.5rem;
    padding-right: 4rem;
    background: #fff;
    background: url(../img/genplan-info.svg) center center no-repeat;
    background-size: contain;
    opacity: 0;
    visibility: hidden; }
    .genplan-info__item {
      padding-bottom: 0.8rem;
      border-bottom: 1px solid #EED0B6;
      margin-bottom: 0.8rem;
      font-weight: 600;
      display: flex;
      color: #C5C5C5; }
      .genplan-info__item p {
        width: 5rem; }
      .genplan-info__item span {
        color: #31211F;
        font-size: 0.9rem; }
      .genplan-info__item:last-child {
        margin-bottom: 0;
        border: none;
        padding-bottom: 0; }

.author {
  padding: 7rem 0; }
  .author img {
    border-radius: .5rem; }
  .author .container {
    display: flex;
    justify-content: space-between; }
  .author-left {
    width: calc(50% - 4.2rem); }
  .author-right {
    width: 50%;
    padding-top: 1rem; }
  .author__title {
    margin-bottom: 18rem; }
  .author__img {
    width: 100%; }
    .author__img img {
      width: 100%;
      display: block; }
  .author__text {
    margin-bottom: 2.7rem; }
  .author-info {
    display: flex;
    justify-content: space-between;
    gap: 1.8rem;
    margin-bottom: 4.5rem; }
    .author-info__item {
      width: 33.333%; }
      .author-info__item:nth-child(2) {
        padding-top: 1rem; }
      .author-info__item:nth-child(3) {
        padding-top: 2rem; }
    .author-info__img {
      margin-bottom: 1.2rem; }
      .author-info__img img {
        width: 100%;
        display: block; }
    .author-info__title {
      font-weight: 600;
      font-size: 1rem;
      margin-bottom: 0.4rem; }
    .author-info__text {
      font-size: 0.7rem;
      line-height: 150%; }

.area {
  background: #31211F url(../img/pattern.svg) center left no-repeat;
  background-size: 55rem;
  padding: 5rem 0 5rem;
  color: #fff;
  position: relative; }
  .area::after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 15rem;
    content: '';
    background: #fff; }
  .area .container {
    display: flex;
    justify-content: space-between; }
  .area-wrap {
    width: calc(50% - 4rem); }
  .area__title {
    font-weight: 500;
    font-size: 1.6rem;
    margin-bottom: 0.75rem; }
  .area__text {
    font-size: 1.2rem;
    line-height: 170%; }
  .area-info {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    padding-top: 4rem; }
    .area-info__item {
      width: 50%;
      padding-right: 2rem;
      margin-bottom: 3rem;
      display: flex;
      align-items: center; }
    .area-info__ico {
      width: 3rem;
      margin-right: 1.2rem;
      flex-shrink: 0; }
    .area-info__text {
      font-size: 1rem;
      line-height: 150%; }
  .area .doneby {
    margin-bottom: 3.5rem; }
  .area-gallery {
    overflow: hidden;
    position: relative;
    z-index: 2; }
    .area-gallery .container {
      padding-right: 0; }
    .area-gallery:hover .area-gallery__wrap {
      transform: translateX(-26rem); }
    .area-gallery__wrap {
      display: flex;
      align-items: flex-start;
      transition: .7s all ease-in-out; }
    .area-gallery__img {
      width: 24rem;
      margin-right: 2rem;
      border: 0.15rem solid rgba(255, 255, 255, 0.5);
      overflow: hidden;
      border-radius: .5rem; }
      .area-gallery__img img {
        width: 100%;
        display: block; }

.hall {
  padding: 3rem 0 7rem; }
  .hall__title {
    font-size: 1.6rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 0.7rem; }
  .hall__text {
    max-width: 69rem;
    margin-bottom: 7rem; }
  .hall-doneby {
    font-size: 1.2rem;
    text-align: center;
    margin-bottom: 1.2rem; }
  .hall-info {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 2.5rem; }
    .hall-info__item {
      width: 25%;
      margin-bottom: 3rem;
      display: flex;
      align-items: center;
      padding-right: 1rem; }
    .hall-info__ico {
      width: 6.7rem;
      flex-shrink: 0;
      margin-right: 1.2rem; }
      .hall-info__ico img {
        width: 100%;
        display: block; }
    .hall-info__text {
      font-size: 1.2rem;
      font-weight: 500;
      line-height: 150%; }
      .hall-info__text strong {
        font-size: 1rem;
        line-height: 120%; }
  .hall-gallery {
    display: flex;
    gap: 2rem;
    align-items: flex-start; }
    .hall-gallery__img {
      overflow: hidden;
      border-radius: .5rem; }
      .hall-gallery__img img {
        width: 100%;
        display: block;
        transition: .6s all; }
        .hall-gallery__img img:hover {
          transform: scale(1.1); }
      .hall-gallery__img:nth-child(2) {
        margin-top: 2.5rem; }
      .hall-gallery__img:nth-child(3) {
        margin-top: -0.7rem; }

.consult-card {
  background: #31211F url(../img/pattern.svg) center center no-repeat;
  background-size: 90%;
  border-radius: 1rem;
  padding: 5rem 2.4rem 0;
  margin-bottom: 7.5rem;
  overflow: hidden;
  position: relative; }
  .consult-card__title {
    color: #fff;
    text-align: center;
    font-size: 1.6rem;
    margin-bottom: 2rem; }
  .consult-card__form {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1rem; }
    .consult-card__form input {
      width: 13rem;
      height: 3rem;
      border-radius: 3rem;
      display: inline-flex;
      align-items: center;
      padding: 0 2rem;
      margin-right: 0.6rem;
      border: none;
      background: #fff;
      color: #31211F;
      font-weight: 500;
      outline: none; }
    .consult-card__form button {
      width: 13rem;
      height: 3rem;
      border-radius: 3rem;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-weight: 500;
      color: #31211F;
      background: #EED0B6;
      border: 1px solid #EED0B6;
      transition: .6s all; }
      .consult-card__form button:hover {
        background: #31211F;
        color: #EED0B6; }
  .consult-card .g-recaptcha {
    margin-bottom: 2rem;
    display: flex;
    justify-content: center; }
  .consult-card .recaptcha-text {
    text-align: center;
    position: absolute;
    width: calc(100% - 5rem);
    margin-top: -1rem;
    z-index: 2;
    pointer-events: none; }
  .consult-card__img {
    width: 100%; }
    .consult-card__img img {
      width: 100%;
      display: block; }
  .consult-card__done {
    color: #fff;
    display: none; }
.consult-info {
  margin-bottom: 3rem; }
  .consult-info__text {
    text-align: left;
    margin-bottom: 3rem;
    font-size: 1.5rem; }
  .consult-info__images {
    display: flex;
    gap: 2rem;
    margin-bottom: 4rem; }
  .consult-info__img {
    overflow: hidden;
    border-radius: .5rem; }
    .consult-info__img img {
      display: block;
      width: 100%;
      transition: .6s all; }
      .consult-info__img img:hover {
        transform: scale(1.1); }
  .consult-info__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; }
  .consult-info__item {
    width: 25%;
    margin-bottom: 4rem;
    display: flex;
    align-items: center;
    padding-right: 2rem; }
    .consult-info__item img {
      width: 3rem;
      flex-shrink: 0;
      margin-right: 1.25rem; }
    .consult-info__item span {
      font-size: 1rem;
      line-height: 150%; }

.parking {
  background-position: center center;
  background-size: 90vw; }
  .parking .area__text {
    width: 50%;
    margin-bottom: 5rem; }
  .parking .area-gallery:hover .area-gallery__wrap {
    transform: none; }

.functional {
  padding: 3rem 0 6.5rem;
  overflow-x: hidden; }
  .functional__title {
    margin-bottom: 3rem; }
  .functional-wrap {
    display: flex;
    gap: 2rem; }
  .functional-item {
    width: 50%; }
    .functional-item__img {
      width: 100%;
      margin-bottom: 2.5rem;
      overflow: hidden;
      border-radius: .5rem; }
      .functional-item__img img {
        width: 100%;
        display: block;
        transition: .6s all; }
        .functional-item__img img:hover {
          transform: scale(1.1); }
    .functional-item__wrap {
      display: flex;
      justify-content: space-between; }
    .functional-item__name {
      font-size: 1.6rem;
      font-weight: 500; }
    .functional-item__text {
      width: 21rem; }

.flat {
  padding: 4rem 0;
  background: rgba(0, 0, 0, 0.02); }
  .flat .container {
    display: flex; }
  .flat-left {
    width: 50%;
    padding-right: 2rem; }
  .flat__text {
    height: 9rem; }
  .flat-right {
    width: 50%;
    display: flex;
    flex-direction: column;
    padding-bottom: 1rem; }
  .flat__title {
    max-width: 31rem;
    margin-bottom: 3rem; }
  .flat__subtitle {
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 1.5rem; }
  .flat-rooms {
    display: flex;
    margin-bottom: 2rem; }
    .flat-rooms li {
      margin-right: 1.5rem;
      width: 3rem;
      height: 3rem;
      border-radius: 50%;
      cursor: pointer;
      border: 1px solid #EED0B6;
      background: #EED0B6;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-size: 1.2rem;
      font-weight: 500;
      color: #31211F; }
      .flat-rooms li:last-child {
        margin-right: 0; }
      .flat-rooms li.current {
        border-color: #31211F; }
  .flat-tab {
    display: none; }
    .flat-tab.current {
      display: block; }
    .flat-tab__wrap {
      display: flex;
      flex-wrap: wrap;
      max-height: 32rem;
      overflow: auto;
      padding-right: .5rem;
      margin-right: -.5rem; }
      .flat-tab__wrap::-webkit-scrollbar {
        width: .25rem; }
      .flat-tab__wrap::-webkit-scrollbar-track {
        background: #fff;
        border-radius: .4rem; }
      .flat-tab__wrap::-webkit-scrollbar-thumb {
        background: #EED0B6; }
  .flat-item {
    width: calc(33.333% - 1.3333rem);
    margin-right: 2rem;
    background: #fff;
    border-radius: 1rem;
    margin-bottom: 2rem;
    padding: 1.4rem;
    cursor: pointer; }
    .flat-item:nth-child(3n) {
      margin-right: 0; }
    .flat-item__img {
      width: 100%;
      height: 8.5rem;
      margin-bottom: 1.5rem; }
      .flat-item__img img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain; }
    .flat-item__square {
      font-size: 0.9rem;
      font-weight: 500;
      text-align: center; }
    .flat-item__rooms, .flat-item__section {
      display: none; }
  .flat-main__img {
    height: 32rem;
    background: #fff;
    border-radius: 1rem;
    padding: 2.5rem;
    margin-bottom: 3.4rem; }
    .flat-main__img img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: contain; }
  .flat-main__bot {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .flat-main__info {
    display: flex;
    align-items: center; }
  .flat-main__rooms {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    cursor: pointer;
    background: #EED0B6;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 1.9rem;
    font-weight: 500;
    color: #31211F;
    margin-right: 0.75rem; }
  .flat-main__wrap {
    font-size: 1rem;
    font-weight: 500; }
    .flat-main__wrap div {
      margin-bottom: 0.3rem; }
      .flat-main__wrap div:last-child {
        margin-right: 0; }
  .flat-main__btn {
    width: 12.5rem; }

.floor {
  padding: 4.5rem 0 6rem;
  overflow-x: hidden; }
  .floor__title {
    margin-bottom: 4rem; }
  .floor-wrap {
    display: flex;
    align-items: stretch;
    gap: 2rem; }
  .floor-dot {
    position: absolute;
    z-index: 2;
    display: flex; }
    .floor-dot.active .floor-dot__dot span {
      background: #fff;
      width: 70%;
      height: 70%; }
    .floor-dot__dot {
      width: 0.75rem;
      height: 0.75rem;
      background: #fff;
      border-radius: 50%;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      position: relative;
      z-index: 2;
      animation: pulse-white 2s infinite; }
      .floor-dot__dot span {
        transition: .6s all;
        border: 1px solid #EED0B6;
        background: #EED0B6;
        width: 0.25rem;
        border-radius: 50%;
        height: .25rem; }
    .floor-dot__line {
      height: 0.1rem;
      background: #fff;
      position: absolute;
      width: 0; }
    .floor-dot__text {
      display: none; }
    .floor-dot:nth-child(1) {
      left: 35%;
      top: 22%; }
      .floor-dot:nth-child(1) .floor-dot__line {
        top: -.1rem;
        left: .5rem;
        transform: rotate(-3deg); }
      .floor-dot:nth-child(1).active .floor-dot__line {
        width: 16rem; }
    .floor-dot:nth-child(2) {
      left: 47%;
      top: 39%; }
      .floor-dot:nth-child(2) .floor-dot__line {
        left: -0.5rem;
        top: -2.9rem;
        transform: rotate(-31deg); }
      .floor-dot:nth-child(2).active .floor-dot__line {
        width: 12rem; }
    .floor-dot:nth-child(3) {
      left: 51%;
      top: 46%; }
      .floor-dot:nth-child(3) .floor-dot__line {
        left: -1.5rem;
        top: -3.9rem;
        transform: rotate(-45deg); }
      .floor-dot:nth-child(3).active .floor-dot__line {
        width: 12rem; }
    .floor-dot:nth-child(4) {
      left: 56%;
      top: 49%; }
      .floor-dot:nth-child(4) .floor-dot__line {
        left: -2.4rem;
        top: -4.2rem;
        transform: rotate(-58deg); }
      .floor-dot:nth-child(4).active .floor-dot__line {
        width: 11rem; }
    .floor-dot:nth-child(5) {
      left: 49%;
      top: 61%; }
      .floor-dot:nth-child(5) .floor-dot__line {
        left: -3rem;
        top: -6.2rem;
        transform: rotate(-55deg); }
      .floor-dot:nth-child(5).active .floor-dot__line {
        width: 16rem; }
    .floor-dot:nth-child(6) {
      left: 30%;
      top: 61%; }
      .floor-dot:nth-child(6) .floor-dot__line {
        left: -2rem;
        top: -6.2rem;
        transform: rotate(-35deg); }
      .floor-dot:nth-child(6).active .floor-dot__line {
        width: 23rem; }
  .floor-main {
    width: 50rem;
    background: #31211F;
    border-radius: 1rem;
    position: relative;
    height: 32rem; }
    .floor-main__img {
      width: 80%;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
      .floor-main__img img {
        width: 100%;
        display: block; }
    .floor-main__info {
      position: absolute;
      right: 10%;
      top: 15%;
      color: #31211F;
      background: #EED0B6;
      width: 11.5rem;
      height: 3.6rem;
      display: flex;
      align-items: center;
      border-radius: .5rem;
      padding-left: 1.5rem;
      padding-right: 0.7rem;
      transition: .6s all;
      opacity: 0; }
      .floor-main__info::before {
        position: absolute;
        content: '';
        width: 0.75rem;
        height: 0.75rem;
        background: #fff;
        border-radius: 50%;
        left: .3rem; }
    .floor-main__advice {
      right: 2rem;
      bottom: 1.6rem;
      position: absolute;
      color: rgba(255, 255, 255, 0.7); }
  .floor__img {
    width: calc(100% - 52rem);
    height: 32rem; }
    .floor__img img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      border-radius: 1rem; }

.timeline {
  padding-bottom: 7.5rem; }
  .timeline .section-title {
    margin-bottom: 2rem; }
  .timeline-choose {
    display: flex;
    align-items: center;
    gap: 4rem;
    margin-bottom: 3rem; }
    .timeline-choose__item {
      display: flex;
      align-items: center;
      gap: 1.5rem;
      user-select: none;
      cursor: pointer; }
      .timeline-choose__item.current .timeline-choose__circle {
        background: #31211F; }
    .timeline-choose__circle {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      flex-shrink: 0;
      background: #fff;
      border: 1px solid #31211F; }
    .timeline-choose__text {
      font-size: 0.9rem;
      line-height: 180%; }
      .timeline-choose__text div {
        font-size: 1.4rem;
        font-weight: 700; }
  .timeline-tab {
    display: none; }
    .timeline-tab.current {
      display: block; }
  .timeline-list {
    display: flex;
    overflow: auto;
    max-width: 100%;
    gap: 1.5rem;
    padding-bottom: 2rem; }
    .timeline-list::-webkit-scrollbar {
      height: 0.4rem; }
    .timeline-list::-webkit-scrollbar-track {
      background: #ddd;
      border-radius: .4rem; }
    .timeline-list::-webkit-scrollbar-thumb {
      background: #31211F;
      border-radius: .4rem; }
  .timeline-item {
    width: calc(25% - 1.125rem);
    flex-shrink: 0;
    height: 27rem;
    border-radius: 2rem;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    user-select: none;
    color: #fff; }
    .timeline-item:hover img {
      transform: scale(1.05); }
    .timeline-item::after {
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      content: '';
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 21.98%); }
    .timeline-item img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      transition: .6s all; }
    .timeline-item p {
      position: absolute;
      left: 0;
      bottom: 1.5rem;
      padding: 0 2rem;
      width: 100%;
      z-index: 2;
      font-size: 2rem; }
  .timeline-popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background: rgba(49, 33, 31, 0.7);
    display: none; }
    .timeline-popup__close {
      position: absolute;
      top: 0;
      right: 0;
      width: 2.5rem;
      height: 2.5rem;
      background: #31211F;
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
      user-select: none;
      z-index: 3;
      border: 1px solid #fff; }
      .timeline-popup__close img {
        width: 1rem; }
    .timeline-popup__item {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 0;
      height: 100vh;
      width: 100%; }
      .timeline-popup__item img {
        display: block;
        width: 90% !important;
        height: calc(100% - 8rem);
        object-fit: contain; }
    .timeline-popup__arrows {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: 0.8rem;
      z-index: 2;
      display: flex;
      gap: 1rem; }
      .timeline-popup__arrows span {
        width: 2.5rem;
        height: 2.5rem;
        border: 1px solid #fff;
        background: #31211F;
        user-select: none;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        cursor: pointer;
        color: #fff;
        transition: .6s all; }
        .timeline-popup__arrows span:hover {
          background: #fff;
          color: #31211F; }
        .timeline-popup__arrows span svg {
          width: 2rem; }

.service {
  padding: 5rem 0 2rem;
  position: relative; }
  .service-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden; }
    .service-bg img {
      width: 100%;
      height: 100%;
      display: block;
      object-fit: cover;
      animation: scale 40s linear infinite; }
  .service-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4rem; }
  .service__name {
    background: #EED0B6;
    border: 0.15rem solid rgba(255, 255, 255, 0.5);
    border-radius: 1rem;
    font-weight: 500;
    font-size: 1.6rem;
    padding: 1.3rem 2.6rem; }
  .service__logo {
    width: 5.5rem; }
    .service__logo img {
      width: 100%;
      display: block; }
  .service-list {
    display: flex;
    flex-wrap: wrap; }
    .service-list__item {
      width: calc(33.333% - 1.3333rem);
      margin-right: 2rem;
      padding: 1.25rem 2rem;
      border-radius: 1rem;
      background: #31211F;
      color: #fff;
      display: flex;
      align-items: center;
      font-size: 1.2rem;
      line-height: 120%;
      margin-bottom: 3rem; }
      .service-list__item:nth-child(3n) {
        margin-right: 0; }
    .service-list__ico {
      width: 2.15rem;
      flex-shrink: 0;
      margin-right: 1.5rem;
      font-weight: 600; }
    .service-list a {
      color: #fff;
      display: block; }

.footer {
  padding-top: 4rem;
  overflow-x: hidden; }
  .footer-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.5rem; }
  .footer__address {
    width: 50%;
    margin-left: 2rem;
    font-size: 1.2rem;
    line-height: 150%; }
  .footer-map {
    border-radius: 1rem;
    overflow: hidden;
    height: 19rem;
    margin-bottom: 3rem; }
    .footer-map #map {
      width: 100%;
      height: 100%; }
  .footer__text {
    width: 50%;
    padding-right: 2rem;
    line-height: 150%; }
  .footer-info {
    width: 50%; }
  .footer-social {
    display: flex;
    margin-bottom: 3.5rem; }
    .footer-social li {
      width: 25%; }
    .footer-social a {
      display: inline-flex;
      align-items: center;
      font-size: 1rem;
      color: #373F5A; }
      .footer-social a:hover {
        color: #EED0B6; }
        .footer-social a:hover .footer-social__ico {
          background: #31211F;
          color: #EED0B6; }
    .footer-social__ico {
      width: 2.5rem;
      height: 2.5rem;
      display: inline-flex;
      justify-content: center;
      align-items: center;
      border-radius: 50%;
      background: #EED0B6;
      color: #31211F;
      margin-right: .7rem;
      flex-shrink: 0;
      transition: .6s all; }
      .footer-social__ico svg {
        width: 1rem; }
  .footer-copy {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-left: 4rem; }
    .footer-copy a {
      color: #373F5A; }
      .footer-copy a:hover {
        color: #EED0B6; }

@media (max-width: 2800.98px) {
  :root {
    font-size: 26px; } }
@media (max-width: 2600.98px) {
  :root {
    font-size: 24px; } }
@media (max-width: 2300.98px) {
  :root {
    font-size: 22px; } }
@media (max-width: 2100.98px) {
  :root {
    font-size: 20px; } }
@media (max-width: 1900.98px) {
  :root {
    font-size: 19px; }

  .tel-popup,
  .genplan-main__advice {
    right: 9rem; }

  .container {
    padding: 0 9rem; } }
@media (max-width: 1800.98px) {
  :root {
    font-size: 19px; }

  .tel-popup,
  .genplan-main__advice {
    right: 8rem; }

  .container {
    padding: 0 8rem; } }
@media (max-width: 1700.98px) {
  :root {
    font-size: 18px; }

  .tel-popup,
  .genplan-main__advice {
    right: 7rem; }

  .container {
    padding: 0 7rem; } }
@media (max-width: 1600.98px) {
  :root {
    font-size: 17px; }

  .tel-popup,
  .genplan-main__advice {
    right: 6rem; }

  .container {
    padding: 0 6rem; } }
@media (max-width: 1500.98px) {
  :root {
    font-size: 16px; } }
@media (max-width: 1400.98px) {
  :root {
    font-size: 15px; }

  .tel-popup,
  .genplan-main__advice {
    right: 5rem; }

  .container {
    padding: 0 5rem; } }
@media (max-width: 1300.98px) {
  :root {
    font-size: 14px; } }
@media (max-width: 1200.98px) {
  :root {
    font-size: 13px; } }
@media (max-width: 1100.98px) {
  :root {
    font-size: 12px; }

  .tel-popup,
  .genplan-main__advice {
    right: 4rem; }

  .container {
    padding: 0 4rem; } }
@media (max-width: 1000.98px) {
  :root {
    font-size: 11px; } }
@media (max-width: 900.98px) {
  :root {
    font-size: 10px; } }
@media (max-width: 767.98px), (max-width: 1080px) and (orientation: portrait) {
  :root {
    font-size: 16px; }

  body {
    font-size: 0.9rem; }

  .tel-popup,
  .genplan-main__advice {
    right: 3rem; }

  .telegram-btn {
    display: inline-flex;
    bottom: 6.3rem; }

  .live-open {
    bottom: 10.3rem; }

  .container {
    padding: 0 3rem; }

  .stock {
    padding-top: 7rem; }
    .stock__image {
      width: 10rem; }
    .stock-item {
      padding: 2.5rem;
      background-size: 20rem; }
    .stock-table table th, .stock-table table td {
      padding: 0.4rem; }

  .feedback-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
  .feedback__close {
    top: 0.5rem;
    right: .5rem; }

  .mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 19;
    background: #fff; }
    .mobile-menu__wrap {
      padding: 3rem;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      position: relative; }
    .mobile-menu__list {
      margin-bottom: 1.5rem; }
      .mobile-menu__list li {
        margin-bottom: 2.2rem;
        font-size: 1.5rem;
        font-weight: 500;
        text-align: center; }
        .mobile-menu__list li a {
          color: #31211F; }
    .mobile-menu__tel {
      font-size: 2rem;
      font-weight: 500;
      margin-bottom: 3.5rem; }
      .mobile-menu__tel a {
        display: inline-flex;
        align-items: center;
        color: #31211F; }
        .mobile-menu__tel a svg {
          width: 1.5rem;
          height: 1.5rem;
          margin-right: 0.4rem; }
    .mobile-menu .footer-social li {
      margin: 0 0.6rem; }
    .mobile-menu .footer-social__ico {
      margin-right: 0; }
    .mobile-menu__lang a {
      margin: 0 0.6rem;
      color: #31211F;
      font-size: 1.2rem; }
    .mobile-menu__nova {
      position: absolute;
      bottom: 3rem;
      font-size: 1.3rem; }
      .mobile-menu__nova a {
        color: #31211F; }

  .teaser-main__item {
    height: 55rem; }
  .teaser-main__logo {
    width: 24rem; }
  .teaser-main__content {
    width: 100%; }
  .teaser-main__title {
    font-size: 2.5rem; }
  .teaser-advantages {
    gap: 1.5rem;
    flex-wrap: wrap; }
    .teaser-advantages__item {
      width: 45%; }
  .teaser-about {
    flex-direction: column; }
    .teaser-about__content {
      width: 70%; }
    .teaser-about__wrap {
      width: 100%; }
    .teaser-about__item {
      height: 30rem; }
  .teaser-location__map {
    height: 26rem; }
  .teaser-form {
    padding: 2rem; }

  .header {
    background: #fff;
    top: 0;
    padding: 0.5rem 0; }
    .header-menu, .header__contact, .header-lang, .header__telegram {
      display: none; }
    .header-info {
      padding-right: 0; }
    .header-mobile {
      display: flex;
      flex-direction: column;
      justify-content: center;
      padding-left: .9rem;
      margin-left: 1rem;
      height: 2.1rem;
      width: 3.2rem;
      border: 1px solid #373F5A;
      border-radius: 5rem;
      position: relative; }
      .header-mobile span {
        height: 2px;
        border-radius: 1px;
        width: 1.4rem;
        margin-bottom: 0.3rem;
        background: #373F5A; }
        .header-mobile span:last-child {
          margin-bottom: 0;
          width: 1rem; }
      .header-mobile.active span {
        width: 1.2rem;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 1rem;
        transform: rotate(45deg); }
        .header-mobile.active span:last-child {
          transform: rotate(-45deg); }

  .main {
    height: 50rem; }
    .main__title {
      position: static;
      transform: none;
      width: 100%;
      margin-top: 2rem; }
    .main-content {
      width: 100%; }
    .main .container {
      display: flex;
      flex-direction: column; }

  .about-info {
    flex-direction: column-reverse; }
    .about-info__text {
      width: 100%;
      margin-bottom: 2rem; }

  .genplan {
    height: 39.8rem; }
    .genplan-main__wrap {
      overflow: auto; }
      .genplan-main__wrap::-webkit-scrollbar {
        display: none; }
    .genplan-main__img {
      width: 76.8rem;
      height: 39.8rem; }
    .genplan-main__advice span {
      padding: 0 1rem; }

  .author {
    padding: 5rem 0; }
    .author .container {
      display: block; }
    .author-left {
      width: 100%; }
    .author-right {
      width: 100%;
      padding-top: 2rem; }
    .author__title {
      margin-bottom: 2rem; }

  .area {
    background-size: 40rem; }
    .area .container {
      display: block; }
    .area-wrap {
      width: 100%; }
    .area-info {
      width: 100%; }
    .area-gallery .container {
      padding: 0;
      overflow: auto; }
      .area-gallery .container::-webkit-scrollbar {
        display: none; }
    .area-gallery__wrap {
      padding: 0 3rem; }
    .area-gallery__img {
      flex-shrink: 0; }
    .area-gallery:hover .area-gallery__wrap {
      transform: none; }

  .hall {
    padding: 1rem 0 5rem; }
    .hall__text {
      margin-bottom: 5rem; }
    .hall-info {
      justify-content: space-between; }
      .hall-info__item {
        padding-right: 0;
        width: 48%; }
    .hall-gallery {
      gap: 1rem; }

  .consult-card {
    margin-bottom: 4rem; }
  .consult-info__list {
    justify-content: space-between; }
  .consult-info__item {
    padding-right: 0;
    width: 48%;
    margin-bottom: 2rem; }

  .parking .area__text {
    width: 100%; }

  .functional {
    padding: 0 0 3.5rem; }
    .functional-wrap {
      display: block; }
    .functional-item {
      width: 100%;
      margin-bottom: 2rem; }

  .flat .container {
    display: block; }
  .flat-left {
    width: 100%;
    margin-bottom: 2rem;
    padding-right: 0; }
  .flat-right {
    width: 100%; }
  .flat__text {
    margin-bottom: 2rem;
    height: auto; }

  .floor {
    padding: 4rem 0; }
    .floor-wrap {
      flex-direction: column; }
    .floor-main {
      width: 100%;
      padding: 2rem; }
    .floor-dots {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
    .floor-dot {
      position: static;
      margin-right: 2rem;
      margin-bottom: 1rem;
      display: inline-flex;
      align-items: center; }
      .floor-dot__text {
        display: block;
        color: #fff;
        margin-left: 1rem; }
    .floor__img {
      width: 100%; }

  .timeline {
    padding-bottom: 5rem; }
    .timeline-item {
      width: calc(50% - .75rem); }
    .timeline-popup__item img {
      width: 100% !important; }

  .service-list {
    justify-content: space-between; }
    .service-list__item {
      margin-right: 0;
      width: 48%; }

  .footer-wrap {
    display: block; }
  .footer__address {
    margin-left: 0;
    margin-top: 2rem;
    width: 100%; }
  .footer__text {
    padding-right: 0;
    margin-bottom: 2rem;
    width: 100%; }
  .footer-info {
    width: 100%; }
  .footer-copy {
    padding-left: 0; } }
@media (max-width: 767.98px) {
  :root {
    font-size: 15px; }

  .form-done__wrap {
    width: 90vw;
    padding: 1.5rem; }

  .genplan-main__advice {
    right: 1.5rem; }

  .tel-popup {
    right: 0.6rem;
    width: 3.5rem;
    height: 2.5rem;
    bottom: 2rem; }
    .tel-popup svg {
      width: 1.2rem; }

  .telegram-btn {
    bottom: 5.5rem; }

  .live-open {
    bottom: 9rem; }

  .live-content {
    width: 90vw;
    height: 20rem; }

  .container {
    padding: 0 1.5rem; }

  .section-title {
    font-size: 1.5rem; }
  .section-main {
    font-size: 1.2rem; }

  .preloader {
    background-size: 30rem; }
    .preloader__logo {
      width: 80vw;
      height: 35vw; }
      .preloader__logo img {
        width: 70vw; }

  .mobile-menu__list li {
    font-size: 1.3rem;
    margin-bottom: 1.7rem; }
  .mobile-menu__tel {
    font-size: 1.7rem; }
  .mobile-menu__lang {
    font-size: 1.1rem; }
  .mobile-menu__nova {
    font-size: 1.2rem; }

  .stock {
    padding-top: 2rem; }
    .stock__image {
      width: 7rem; }
    .stock-item {
      padding: 1.5rem 1rem;
      background-size: 10rem; }
    .stock .section-title {
      margin-bottom: 1.5rem; }
    .stock__list li {
      margin-bottom: 1rem;
      font-size: 1rem;
      gap: .3rem; }
    .stock__text {
      font-size: 1rem; }
    .stock-table table {
      font-size: 0.7rem; }
      .stock-table table td, .stock-table table th {
        padding: 0.2rem; }

  .feedback-content {
    width: 94vw;
    padding: 1.5rem; }

  .teaser-wrapper {
    padding: 0 1rem; }
  .teaser__text {
    font-size: 0.9rem; }
  .teaser__title {
    font-size: 1.5rem; }
  .teaser-header {
    top: 1.2rem; }
    .teaser-header__logo {
      width: 6rem; }
    .teaser-header__wrap {
      gap: 1rem; }
    .teaser-header__lang {
      gap: .75rem; }
  .teaser-info {
    padding: 3.5rem 0; }
  .teaser-main__item {
    height: 40rem; }
  .teaser-main__logo {
    width: 18rem;
    margin-bottom: 1rem; }
  .teaser-main__title {
    font-size: 1.7rem; }
  .teaser-advantages {
    gap: 1rem;
    flex-direction: column; }
    .teaser-advantages__item {
      width: 100%; }
  .teaser-about {
    margin-bottom: 3.5rem; }
    .teaser-about__content {
      width: 100%; }
    .teaser-about__item {
      height: 22rem; }
  .teaser-video {
    margin-bottom: 3rem; }
    .teaser-video video {
      height: 20rem; }
  .teaser-location {
    margin-bottom: 3rem; }
    .teaser-location__map {
      height: 20rem; }
  .teaser-form {
    padding: 1rem; }
    .teaser-form__text {
      font-size: 0.9rem;
      margin-bottom: 2rem; }
    .teaser-form__form {
      flex-direction: column;
      gap: 1rem;
      font-size: 0.9rem; }
    .teaser-form__item {
      width: 100%; }
      .teaser-form__item input {
        height: 2.6rem; }
    .teaser-form .btn {
      width: 100%;
      height: 2.6rem; }

  .header__tel svg {
    width: 1rem; }
  .header__tel span {
    font-size: 1.1rem; }

  .main__title {
    font-size: 1.1rem;
    padding: 1rem 1.6rem; }
    .main__title img {
      margin-right: .7rem;
      width: 6rem; }

  .about {
    padding: 3rem 0; }
    .about__main {
      margin-bottom: 3rem; }

  .genplan .container {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem; }
  .genplan__title {
    font-size: 1.4rem;
    padding: 1rem 2rem; }
  .genplan-main__advice {
    display: none; }
  .genplan-links a {
    padding: 0.7rem 1rem;
    font-size: 0.8rem; }
    .genplan-links a:last-child {
      padding-right: 1.5rem; }
    .genplan-links a:first-child {
      padding-left: 1.5rem; }

  .author {
    padding: 3rem 0; }
    .author-info {
      display: block;
      margin-bottom: 3rem; }
      .author-info__item {
        width: 100%; }

  .area {
    padding: 3rem 0;
    background-size: 80vw; }
    .area__title {
      font-size: 1.5rem; }
    .area__text {
      font-size: 1rem; }
    .area-info {
      padding-top: 3rem; }
      .area-info__item {
        margin-bottom: 2rem;
        width: 100%;
        padding-right: 0; }
    .area .doneby {
      margin-bottom: 2rem; }
    .area-gallery__wrap {
      padding: 0 1.5rem; }
    .area-gallery__img {
      width: 70vw;
      margin-right: 1.5rem; }

  .hall__text {
    margin-bottom: 3rem; }
  .hall-info__item {
    width: 100%;
    margin-bottom: 2rem; }
  .hall-info__ico {
    width: 4rem;
    margin-right: .7rem; }
  .hall-info__text {
    font-size: 1rem; }
  .hall-gallery {
    gap: 0;
    flex-wrap: wrap;
    justify-content: space-between; }
    .hall-gallery__img {
      width: 48%; }
      .hall-gallery__img:last-child {
        margin-top: 2rem; }

  .consult-card {
    padding: 3rem 1rem 0; }
    .consult-card__form {
      flex-direction: column;
      margin-bottom: 3rem; }
      .consult-card__form input {
        margin-right: 0;
        width: 100%;
        margin-bottom: 1.5rem; }
      .consult-card__form button {
        width: 100%;
        margin-left: 0; }
  .consult-info__images {
    gap: 0;
    flex-direction: column;
    margin-bottom: 2rem; }
  .consult-info__img {
    margin-bottom: 1.2rem; }
  .consult-info__item {
    width: 100%;
    margin-bottom: 1.5rem; }

  .functional {
    padding-bottom: 1.5rem; }
    .functional__title {
      margin-bottom: 2rem; }
    .functional-item__img {
      margin-bottom: 1.5rem; }
    .functional-item__wrap {
      display: block; }
    .functional-item__text {
      width: 100%;
      margin-top: 1.5rem; }

  .flat {
    padding: 3rem 0; }
    .flat__title {
      margin-bottom: 2rem; }
    .flat-tab__wrap {
      justify-content: space-between; }
    .flat-item {
      margin-right: 0;
      width: 48%; }
    .flat-main__img {
      padding: 2rem;
      height: 27rem;
      margin-bottom: 2rem; }
    .flat-main__bot {
      display: block; }
    .flat-main__btn {
      width: 100%;
      margin-top: 1.5rem; }

  .floor {
    padding: 3rem 0; }
    .floor-main {
      padding: 1rem;
      height: 20rem; }
      .floor-main__img {
        width: 90%; }
      .floor-main__advice {
        right: auto;
        left: 1rem; }
    .floor__img {
      height: 22rem; }

  .timeline-choose {
    gap: 1.5rem;
    justify-content: space-between; }
    .timeline-choose__item {
      gap: 1rem; }
  .timeline-list {
    gap: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
    margin-left: -1rem;
    width: calc(100% + 2rem);
    max-width: none; }
  .timeline-item {
    width: 17rem;
    height: 25rem; }
    .timeline-item p {
      font-size: 1.5rem;
      padding: 0 1rem; }
  .timeline-popup__item img {
    height: 60vh;
    object-fit: cover; }

  .service {
    padding: 3rem 0 1rem; }
    .service-head {
      margin-bottom: 3rem; }
    .service__name {
      font-size: 1.4rem;
      padding: 1rem 2rem; }
    .service__logo {
      width: 4.5rem; }
    .service-list__item {
      width: 100%;
      margin-bottom: 2rem; }

  .footer {
    padding-top: 3rem; }
    .footer-social li {
      width: auto; }
    .footer-social__name {
      display: none; }
    .footer-copy a {
      display: none; } }
@media (max-width: 375.98px) {
  :root {
    font-size: 13px; } }
@media (max-width: 340.98px) {
  :root {
    font-size: 12px; } }
@media (max-width: 320.98px) {
  :root {
    font-size: 11px; } }
@media (max-width: 300.98px) {
  :root {
    font-size: 10px; } }
@media (max-width: 1000px) and (orientation: landscape) {
  :root {
    font-size: 8.5px; } }
@media (max-width: 700px) and (orientation: landscape) {
  :root {
    font-size: 8px; } }

/*# sourceMappingURL=main.css.map */
