@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
h1, h2, h3, h4, h5, h6 {
  font-family: var(--ff-title);
  font-weight: var(--fw-medium);
  line-height: var(--lh-title);
  font-feature-settings: "clig" off, "liga" off;
  margin-top: 0;
  margin-bottom: 0;
}

p {
  margin-top: 0;
  margin-bottom: 0;
  font-size: var(--fz-base);
  font-weight: var(--fw-medium);
  line-height: var(--lh-base);
}

div, span, a {
  font-size: var(--fz-base);
}

h1 {
  font-size: var(--fz-h1);
}
@media screen and (max-width: 767px) {
  h1 {
    font-size: var(--fz-h1-mob);
  }
}

h2 {
  font-size: var(--fz-h2);
}
@media screen and (max-width: 767px) {
  h2 {
    font-size: 2rem;
  }
}

h3 {
  font-size: var(--fz-h3);
}
@media screen and (max-width: 767px) {
  h3 {
    font-size: var(--fz-more-large);
  }
}

:root {
  --ff-title: "Inter", system-ui, sans-serif;
  --ff-base: "Inter", system-ui, sans-serif;
  --fz-base: 1rem;
  --fz-xxl: 4rem;
  --fz-h1: 3rem;
  --fz-h1-mob: 2.25rem;
  --fz-h2: 3rem;
  --fz-h3: 1.75rem;
  --fz-56: 3.5rem;
  --fz-more-large: 1.5rem;
  --fz-large: 1.25rem;
  --fz-medium: 0.875rem;
  --fz-small: 0.75rem;
  --fw-medium: 500;
  --fw-regular: 400;
  --lh-100: 1;
  --lh-base: 1.3;
  --lh-text: 1.5;
  --lh-title: 1.1;
  --lh-120: 1.2;
  --lh-140: 1.4;
  --black: #000;
  --gray-900: #222222;
  --link-header: #27A7E7;
  --link-header-hover: rgba(39, 167, 231, 0.8);
  --white: #FFF;
  --white-hover: rgba(255, 255, 255, 0.6);
  --gray-100: #F1F3F6;
  --gray-200: #E3E5E9;
  --gray-400: #9CA3AF;
  --gray-600: #666666;
  --white-border: #D5D5D5;
  --gray-border: #DFDFDF;
  --gray-750: #444444;
  --primary: #137547;
  --primary-hover: rgba(19, 117, 71, 0.8);
  --secondary: #FF5A46;
  --secondary-hover: rgba(255, 90, 70, 0.8);
  --gray-bg: #878787;
  --gray-bg-hover: rgba(135, 135, 135, 0.8);
  --rgba-gray: rgba(34, 34, 34, 0.24);
  --rgba-gray-blur: rgba(34, 34, 34, 0.24);
  --rgba-gray-light: rgba(255, 255, 255, 0.5);
  --lg-black-15: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.15) 100%);
  --lg-black-20: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.2) 100%);
  --lg-black-50: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.55) 100%);
  --lg-black-60: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%);
  --lg-white: linear-gradient(180deg, rgba(241, 243, 246, 0) 83.46%, #F1F3F6 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%);
  --lg-black-double: linear-gradient(0deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.1) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.6) 81.61%);
  --radial-gradient: radial-gradient(103.46% 50% at 50% 50%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.7) 100%);
  --br-large: 0.5rem;
  --br-medium: 0.25rem;
  --br-middle: 50%;
  --gap-xxl: 8rem;
  --gap-large: 5rem;
  --gap-xl: 4rem;
  --gap-x: 3rem;
  --gap-medium: 2.5rem;
  --gap-medium-after: 2rem;
  --gap-l: 1.5rem;
  --gap-regular: 1.125rem;
  --gap-m: 1rem;
  --gap-s: 0.75rem;
  --gap-xs: 0.5rem;
  --gap-xxs: 0.25rem;
  --gap-small: 0.0625rem;
  --transition-base: all ease .4s;
  --transition-3ms: all ease-in-out .3s;
  --opacity-middle: 0.5;
  --height-large: 3.5rem;
  --height-large-mob: 3rem;
  --height-medium: 3.25rem;
  --base-width: 21.375rem;
  --blur-medium: 1.71875rem;
  --blur-small: 0.4375rem;
  --blur-small-half: 0.46875rem;
  --box-shadow-base: 0 0.25rem 1.5rem 0 rgba(0, 0, 0, 0.25);
  --box-shadow-header: 0 0.25rem 1.25rem 0 rgba(0, 0, 0, 0.1);
  --opacity-l: 0.8;
  --opacity-m: 0.7;
  --opacity-s: 0.6;
  --opacity-xs: 0.5;
  --scale: 1.02;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
  line-height: var(--lh-base);
  font-weight: var(--fw-medium);
  overflow-x: hidden;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}
html::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media screen and (max-width: 1488px) {
  html {
    font-size: 1.0753vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 4.1026vw;
  }
}

body {
  font-size: var(--ff-base);
  position: relative;
  overflow-x: hidden;
  margin: 0;
  color: var(--gray-900);
  background: var(--gray-100);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
body.visible {
  overflow: visible;
}
body::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media screen and (max-width: 767px) {
  body {
    font-size: var(--fz-medium);
  }
}

svg,
path,
rect {
  transition: var(--transition-base);
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: none;
  appearance: none;
}

main {
  -webkit-overflow-scrolling: touch;
  flex: 1 0 auto;
  margin-top: 0;
}

canvas {
  display: block;
}

div,
a,
button,
pre {
  font-family: var(--ff-base);
}

a {
  text-decoration: none;
}

button {
  background: none;
  padding: 0;
}

ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul li {
  list-style: none;
}

.page-not-found {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .page-not-found {
    margin-bottom: var(--gap-x);
  }
}
.page-not-found h1 {
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .page-not-found h1 {
    margin-bottom: var(--gap-l);
  }
}
.page-not-found p {
  width: 31.25rem;
}
@media screen and (max-width: 767px) {
  .page-not-found p {
    width: 100%;
  }
}
.page-not-found a {
  width: max-content;
}
@media screen and (max-width: 767px) {
  .page-not-found a {
    width: 100%;
  }
}

button {
  margin: 0;
  border: none;
}

pre {
  margin: 0;
}

img {
  pointer-events: none;
}

.wrapper {
  padding-left: var(--gap-l);
  padding-right: var(--gap-l);
  z-index: 10;
  position: relative;
  max-width: 93rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .wrapper {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.modal-active {
  overflow: hidden;
}

html.estate-gallery-open,
body.estate-gallery-open {
  overflow: hidden;
}

.row {
  display: flex;
}

.justify-sb {
  justify-content: space-between;
}

.justify-center {
  justify-content: center;
}

.align-center {
  align-items: center;
}

.align-end {
  align-items: end;
}

.column {
  flex-direction: column;
}

.flex-auto {
  flex: 1 1 auto;
}

.btn,
.facetwp-load-more {
  color: var(--white);
  line-height: var(--lh-100);
  font-size: var(--fz-base);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-base);
  border: none;
  outline: none;
}
.btn:disabled,
.facetwp-load-more:disabled {
  cursor: not-allowed;
  pointer-events: none;
}

.bg-primary {
  background: var(--primary);
  border-radius: var(--br-large);
  padding: var(--gap-regular) var(--gap-l);
}
.bg-primary:hover:not(:disabled) {
  background: var(--primary-hover);
}
.bg-primary:disabled {
  background: var(--gray-100);
  color: var(--gray-900);
}

.bg-secondary {
  background: var(--secondary);
  font-size: var(--fz-large);
  border-radius: var(--br-medium);
  padding: 1.3125rem 2.25rem;
  line-height: var(--lh-100);
}
.bg-secondary:hover {
  background: var(--secondary-hover);
}
@media screen and (max-width: 767px) {
  .bg-secondary {
    font-size: var(--base-fz);
    padding: 0 var(--gap-l);
    height: var(--height-medium);
    line-height: normal;
    white-space: nowrap;
  }
}

/* Уменьшенный вариант bg-secondary */
.btn.bg-secondary-sm {
  font-size: var(--fz-base);
  padding: 1rem 1.75rem;
}
@media screen and (max-width: 767px) {
  .btn.bg-secondary-sm {
    font-size: var(--fz-base);
    padding: 0.875rem 1.5rem;
    height: auto;
  }
}

.bg-white {
  background: var(--white);
  color: var(--gray-900);
  border-radius: var(--br-large);
  padding: var(--gap-regular) var(--gap-l);
}
.bg-white:hover {
  background: var(--white-hover);
}

.bg-white-primary {
  background: var(--white);
  color: var(--primary);
  border-radius: var(--br-medium);
  padding: 0 var(--gap-xl);
  height: var(--height-medium);
}
.bg-white-primary:hover {
  background: var(--white-hover);
}
.bg-white-primary .facetwp-load-more {
  color: var(--primary);
}

.facetwp-load-more {
  background: var(--white);
  color: var(--primary);
  border-radius: var(--br-medium);
  padding: 0 var(--gap-xl);
  height: var(--height-medium);
  margin-top: var(--gap-x);
  width: max-content;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .facetwp-load-more {
    margin-top: 1.5rem;
  }
}

.btn-gray {
  background: var(--gray-bg);
  border-radius: var(--br-medium);
  backdrop-filter: blur(var(--blur-medium));
  -webkit-backdrop-filter: blur(var(--blur-medium));
  padding: 0.625rem var(--gap-m);
  font-size: var(--fz-medium);
  line-height: normal;
}
@media screen and (max-width: 767px) {
  .btn-gray {
    padding: 0 var(--gap-m);
    height: 2.25rem;
    width: max-content;
  }
}
.btn-gray:hover {
  background: var(--gray-bg-hover);
}

.facetwp-load-more {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .facetwp-load-more {
    width: 22.375rem;
    margin: 1.5rem auto 0 auto;
  }
}

a {
  transition: var(--transition-base);
}

.video-reviews_card a, .category_content-card a, .popular-buildings_card a, .blog_cards a, .blur_card a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),
textarea {
  background: transparent;
  border: 1px solid var(--gray-200);
  border-radius: var(--br-large);
  padding: 0 var(--gap-m);
  height: var(--height-medium);
  outline: none;
  color: var(--gray-900);
  font-size: var(--fz-base);
  font-weight: var(--fw-regular);
  font-family: var(--ff-base);
  transition: var(--transition-base);
}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):hover,
textarea:hover {
  background: var(--gray-100);
  border-color: var(--gray-200);
}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button])::placeholder,
textarea::placeholder {
  color: var(--gray-900);
}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):-webkit-autofill, input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):-webkit-autofill:hover, input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 30px var(--white) inset;
  box-shadow: 0 0 0 30px var(--white) inset;
  -webkit-text-fill-color: var(--gray-900);
}

textarea {
  resize: vertical;
  padding: var(--gap-s) var(--gap-m);
  width: 100%;
  max-height: 12.5rem;
  min-height: 6rem;
}

.modal-wrap {
  opacity: 0;
  will-change: opacity;
  position: relative;
  z-index: -1;
  visibility: hidden;
}
.modal-wrap.modal-hide {
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-base);
}
.modal-wrap.modal-show {
  opacity: 1;
  transition: opacity 0.5s;
  will-change: opacity;
  z-index: 10000;
  position: relative;
  visibility: visible;
}
.modal-wrap.modal-show .modal {
  transform: translateY(-50%) translateX(-50%);
  transition: var(--transition-base);
}
.modal-wrap.modal-hide .modal {
  transform: translateY(50%) translateX(-50%);
  transition: var(--transition-base);
}
.modal-wrap .modal {
  position: fixed;
  top: 50%;
  z-index: 100;
  left: 50%;
  transform: translateY(50%) translateX(-50%);
}
.modal-wrap .modal .modal-wrapper {
  border-radius: 0.5rem;
  overflow: hidden;
  background-color: #fff;
}
.modal-wrap .modal-shadow {
  background: rgba(26, 26, 24, 0.5);
  z-index: 100;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
}
.modal-wrap .modal-cross {
  position: absolute;
  top: -60px;
  right: 0;
  z-index: 10;
  cursor: pointer;
}

.modal-video .modal {
  width: 80rem;
  height: 45rem;
}
@media screen and (max-width: 767px) {
  .modal-video .modal {
    width: 23.4375rem;
    height: 13.125rem;
  }
}
.modal-video .modal .modal-cross {
  top: 0rem;
  right: -4rem;
}
@media screen and (max-width: 767px) {
  .modal-video .modal .modal-cross {
    right: 0rem;
    top: -2.5rem;
  }
}
.modal-video .modal .modal-cross svg {
  width: 1.875rem;
  height: 1.875rem;
}
.modal-video .modal .modal-player {
  position: absolute;
  inset: 0;
  display: none;
  z-index: 1;
}
.modal-video .modal .modal-player:has(iframe[src]) {
  display: block;
}
.modal-video .modal .modal-player iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
.modal-video .modal .modal-wrapper:has(.modal-player iframe[src]) video {
  display: none;
}
.modal-video .modal video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.modal-video .modal-wrapper {
  height: 100%;
  position: relative;
}

@media screen and (max-width: 767px) {
  .modal-quiz.modal-show .modal {
    transform: translateY(0%) translateX(0%);
    min-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .modal-quiz.modal-hide .modal {
    transform: translateY(100%) translateX(0%);
    min-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .modal-quiz .modal {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    min-width: 100%;
    transform: translateY(100%) translateX(0%);
  }
}
.modal-quiz .modal .modal-cross {
  top: 0rem;
  right: -4rem;
}
@media screen and (max-width: 767px) {
  .modal-quiz .modal .modal-cross {
    right: 0.5rem;
    top: -2.5rem;
  }
}
.modal-quiz .modal .modal-cross svg {
  width: 1.875rem;
  height: 1.875rem;
}
.modal-quiz .modal .modal-quiz_iframe {
  width: 80rem;
  height: 45rem;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .modal-quiz .modal .modal-quiz_iframe {
    width: 100%;
    min-width: 100vw;
    height: 80vh;
  }
}
.modal-quiz .modal .modal-quiz_iframe iframe {
  display: block;
  width: 100%;
  height: 100%;
}
.modal-quiz .modal-wrapper {
  height: 100%;
}

.order-call .modal {
  display: flex;
}
.order-call .modal img {
  width: 40rem;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .order-call .modal img {
    display: none;
  }
}
.order-call .modal-wrapper {
  width: 25rem;
  background: var(--white);
  height: 100%;
  padding: var(--gap-medium) var(--gap-l);
  position: relative;
  overflow-y: auto;
}
.order-call .modal-wrapper::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}
@media screen and (max-width: 767px) {
  .order-call .modal-wrapper {
    width: 23.125rem;
  }
}
.order-call .modal-wrapper .modal-wrapper_title {
  display: flex;
  flex-direction: column;
  width: 17.5rem;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
}
.order-call .modal-wrapper .modal-wrapper_title span:first-child {
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
}
.order-call .modal-wrapper .modal-wrapper_title span:last-child {
  color: var(--gray-750);
  font-weight: var(--fw-regular);
}
.order-call .modal-wrapper .modal-cross {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
}
.order-call .modal-wrapper .modal-cross svg {
  width: 6rem;
  height: 6rem;
}
@media screen and (max-width: 767px) {
  .order-call .modal-wrapper .modal-cross {
    top: -0.75rem;
    right: -0.75rem;
  }
}
.order-call .modal-wrapper .modal-wrapper_content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-form form input {
  margin-bottom: var(--gap-m);
  width: 100%;
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-form form button {
  width: 100%;
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-agreement {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
  margin-top: 1.5rem;
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-agreement > *,
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-agreement a {
  color: var(--gray-600);
  font-size: var(--fz-small);
  font-weight: var(--fw-regular);
  line-height: var(--lh-100);
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-agreement a {
  transition: var(--transition-base);
}
.order-call .modal-wrapper .modal-wrapper_content .modal-wrapper_content-agreement a:hover {
  color: var(--primary);
}

.show-number .modal-wrapper {
  width: 37.5rem !important;
}
@media screen and (max-width: 767px) {
  .show-number .modal-wrapper {
    width: 23.125rem !important;
  }
}
.show-number .modal-wrapper .title-job {
  margin-top: -0.5rem;
}
.show-number .modal-wrapper .show-number_phone {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0rem;
}
.show-number .modal-wrapper .show-number_phone small {
  font-size: 1rem;
}
.show-number .modal-wrapper .show-number_phone span {
  font-size: 3rem;
  color: var(--gray-900);
}
@media screen and (max-width: 767px) {
  .show-number .modal-wrapper .show-number_phone span {
    font-size: 2rem;
  }
}

.modal-estate-gallery .modal-shadow {
  position: fixed;
  inset: 0;
  background: #000;
}
.modal-estate-gallery .modal {
  width: 100vw;
  height: 100vh;
  max-width: none;
  top: 0;
  left: 0;
  transform: none;
  background: #000;
  border-radius: 0;
}
.modal-estate-gallery.modal-show .modal, .modal-estate-gallery.modal-hide .modal {
  transform: none;
}
.modal-estate-gallery .modal .modal-wrapper {
  width: 100%;
  height: 100%;
  border-radius: 0;
  background-color: #000;
}
.modal-estate-gallery .modal-cross {
  top: 1.5rem;
  right: 1.5rem;
  z-index: 20;
  cursor: pointer;
}
.modal-estate-gallery .modal-cross svg path {
  fill: #fff;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .modal-cross {
    top: 0;
    right: 0;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 3rem;
    min-height: 3rem;
  }
}
.modal-estate-gallery .estate-gallery-wrapper {
  position: absolute;
  inset: 0;
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-wrapper {
    display: flex;
    flex-direction: column;
  }
}
.modal-estate-gallery .estate-gallery-slider {
  width: 100%;
  height: 100%;
  position: relative;
  user-select: none;
  -webkit-user-select: none;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-slider {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-slider .swiper-wrapper {
    flex: 1;
    min-height: 0;
  }
}
.modal-estate-gallery .estate-gallery-slider .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  height: 100%;
  border-radius: 0;
}
.modal-estate-gallery .estate-gallery-slider img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  pointer-events: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  -webkit-tap-highlight-color: transparent;
}
.modal-estate-gallery .estate-gallery-navigation {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 1rem;
  pointer-events: none;
  z-index: 15;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-navigation {
    display: none;
  }
}
.modal-estate-gallery .estate-gallery-navigation .swiper-button-prev,
.modal-estate-gallery .estate-gallery-navigation .swiper-button-next {
  pointer-events: auto;
  cursor: pointer;
  color: #fff;
}
.modal-estate-gallery .estate-gallery-navigation .swiper-button-prev svg,
.modal-estate-gallery .estate-gallery-navigation .swiper-button-next svg {
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-navigation .swiper-button-prev svg rect,
  .modal-estate-gallery .estate-gallery-navigation .swiper-button-next svg rect {
    display: none;
  }
}
.modal-estate-gallery .estate-gallery-navigation .swiper-button-prev:hover,
.modal-estate-gallery .estate-gallery-navigation .swiper-button-next:hover {
  opacity: 0.9;
}
.modal-estate-gallery .estate-gallery-pagination {
  position: absolute;
  bottom: 1.25rem;
  left: 50%;
  transform: translateX(-50%);
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.625rem;
  font-family: inherit;
  z-index: 15;
  background: rgba(0, 0, 0, 0.35);
  padding: 0.1875rem 0.625rem;
  border-radius: 1rem;
  width: max-content;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.125rem;
  min-width: 0;
}
.modal-estate-gallery .estate-gallery-pagination .swiper-pagination-current,
.modal-estate-gallery .estate-gallery-pagination .swiper-pagination-total {
  font-size: 0.625rem !important;
  font-family: inherit;
  flex: none;
}
@media screen and (max-width: 767px) {
  .modal-estate-gallery .estate-gallery-pagination {
    position: static;
    transform: none;
    flex-shrink: 0;
    bottom: auto;
    margin-top: -0.5rem;
    margin-bottom: 0.5rem;
    font-size: 0.5625rem;
  }
  .modal-estate-gallery .estate-gallery-pagination .swiper-pagination-current,
  .modal-estate-gallery .estate-gallery-pagination .swiper-pagination-total {
    font-size: 0.5625rem !important;
  }
}

.blur_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .blur_wrap {
    display: flex;
    gap: var(--gap-xs);
    overflow-x: scroll;
    position: relative;
    padding: 0 1rem;
  }
  .blur_wrap::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
  }
}

.blur_card {
  grid-column: span 1;
  aspect-ratio: 1/1;
  display: flex;
  position: relative;
  background-color: #444;
  border-radius: var(--br-large);
  overflow: hidden;
}
.blur_card h3 {
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  .blur_card {
    flex-shrink: 0;
    width: auto;
    height: 20.5rem;
    scroll-snap-align: start;
  }
}
.blur_card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
}
.blur_card.main-card {
  grid-column: span 2;
  aspect-ratio: 39/19;
}
@media screen and (max-width: 767px) {
  .blur_card.main-card {
    aspect-ratio: 1/1;
  }
}
.blur_card-content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: var(--gap-l);
  background: var(--rgba-gray);
  backdrop-filter: blur(var(--blur-small));
  -webkit-backdrop-filter: blur(var(--blur-small));
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .blur_card-content {
    padding: var(--gap-m);
  }
}
.blur_card-content > * {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .blur_card-content h3 {
    font-size: var(--fz-medium);
  }
}
.blur_card-content svg {
  width: 2.5rem;
  height: 2.5rem;
}

.blur_card-tag {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .blur_card-tag {
    display: none;
  }
}
.blur_card-tag span {
  font-size: var(--fz-large);
}
.blur_card-tag svg {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

.video-reviews_card .img-wrap, .category_content-card .img-wrap, .popular-buildings_card .img-wrap, .blog_cards .img-wrap {
  overflow: hidden;
  width: 100%;
}

.accordion {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .accordion {
    padding-bottom: var(--gap-x);
  }
}

.accordion_title {
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
  transition: var(--transition-base);
}
@media screen and (max-width: 767px) {
  .accordion_title {
    font-size: var(--fz-base);
    line-height: var(--lh-base);
  }
}

.accordion details {
  position: relative;
  border-bottom: var(--gap-small) solid #D5D5D5;
}

.accordion details summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--fz-h3);
  position: relative;
  padding: var(--gap-medium) 0;
  user-select: none;
  cursor: pointer;
}
.accordion details summary:hover h3 {
  color: var(--primary);
}
@media screen and (max-width: 767px) {
  .accordion details summary {
    padding: var(--gap-l) 0;
  }
}

.accordion_chevron-box {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: var(--br-middle);
  margin-left: 0;
  transition: var(--transition-3ms);
  background: transparent;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .accordion_chevron-box {
    width: 0.9375rem;
    height: 0.9375rem;
  }
}
.accordion_chevron-box svg {
  width: 100%;
  height: 100%;
}

.accordion details summary.open .accordion_title {
  color: var(--primary);
}

.accordion details summary.open .accordion_chevron-box {
  transform: rotate(-180deg);
}

.accordion_content {
  padding: var(--gap-l) 0;
  padding-top: 0;
  font-size: var(--fz-large);
  max-width: 45rem;
  margin-top: -1rem;
}
@media screen and (max-width: 767px) {
  .accordion_content {
    font-size: var(--fz-base);
  }
}

.swiper {
  margin: 0;
}

.swiper-button-prev,
.swiper-button-next {
  position: initial;
  width: max-content;
  height: max-content;
  margin-top: 0;
  transition: var(--transition-base);
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
  opacity: var(--opacity-m);
}
.swiper-button-prev:after, .swiper-button-prev:before,
.swiper-button-next:after,
.swiper-button-next:before {
  content: none;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 3rem;
  height: 3rem;
  flex-shrink: 0;
}

.slider-wrap {
  display: flex;
  gap: 16.375rem;
  align-items: flex-end;
}
.slider-wrap .swiper-slide {
  padding: var(--gap-l);
  position: relative;
  overflow: hidden;
  border-radius: var(--br-large);
  display: flex;
}

.navigation-wrap {
  width: max-content;
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}

.pagination-wrap {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
  width: max-content;
}
.pagination-wrap .swiper-pagination-bullet {
  margin: 0 !important;
  opacity: 1;
  background: var(--rgba-gray-light);
  transition: var(--transition-base);
}
.pagination-wrap .swiper-pagination-bullet:hover {
  opacity: var(--opacity-m);
}
.pagination-wrap .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: var(--white);
}

.content-info_wrap {
  display: flex;
  gap: var(--gap-l);
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .content-info_wrap {
    flex-direction: column;
    gap: var(--gap-xs);
    margin-bottom: var(--gap-l);
  }
}
.content-info_wrap .content-info_name {
  width: var(--base-width);
  flex-shrink: 0;
  padding-top: 1.3125rem;
  font-size: var(--fz-large);
}
@media screen and (max-width: 767px) {
  .content-info_wrap .content-info_name {
    width: max-content;
    padding-top: 0;
    font-size: var(--fz-medium);
  }
}

.object-detail-page .banner.object-detail-banner .overlay, .landing-page .banner .overlay, .company-page .banner .overlay, .popular-buildings_main-card .popular-buildings_card-content .overlay, .estate_img-slider .overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
}

.section-headline {
  margin-top: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .section-headline {
    margin-top: var(--gap-l);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.page-object {
  margin-bottom: var(--gap-large);
}
@media screen and (max-width: 767px) {
  .page-object {
    margin-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .page-object .wrapper {
    padding: 0;
  }
}

.block-default {
  min-height: 50vh;
  display: flex;
  align-items: center;
  padding: var(--gap-xl) 0;
}
.block-default .wrapper {
  width: 100%;
}

.tag-wrap {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
  padding: var(--gap-l);
  position: relative;
  top: 0;
  left: 0;
  width: max-content;
}
@media screen and (max-width: 767px) {
  .tag-wrap {
    gap: var(--gap-xxs);
    padding: var(--gap-m);
  }
}
.tag-wrap .tag {
  padding: 0 var(--gap-s);
  height: 2.25rem;
  border-radius: var(--gap-xs);
  background: var(--rgba-gray);
  backdrop-filter: blur(var(--blur-small));
  -webkit-backdrop-filter: blur(var(--blur-small));
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
.tag-wrap .tag span {
  color: var(--white);
  font-size: var(--fz-medium);
  line-height: normal;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.breadcrumbs_content {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .breadcrumbs_content {
    padding: 0;
    flex-wrap: wrap;
    padding-top: 0.5rem;
  }
}
.breadcrumbs_content > * {
  font-weight: var(--fw-regular);
}
@media screen and (max-width: 767px) {
  .breadcrumbs_content > * {
    font-size: var(--fz-medium);
  }
}
.breadcrumbs_content a {
  color: var(--gray-600);
  transition: var(--transition-base);
}
.breadcrumbs_content a:hover {
  color: var(--primary);
}

.breadcrumbs_separator {
  color: var(--gray-600);
}

.blog_cards {
  display: flex;
  flex-direction: column;
  height: auto;
  position: relative;
}
.blog_cards:hover img {
  transform: scale(var(--scale));
}
.blog_cards:hover .blog_cards-name {
  color: var(--primary);
}
.blog_cards .img-wrap {
  border-radius: var(--br-large);
  aspect-ratio: 4/3;
  height: inherit;
  position: relative;
  background-color: #e3e5e9;
}
@media screen and (max-width: 767px) {
  .blog_cards .img-wrap {
    aspect-ratio: 4/3;
  }
}
.blog_cards img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
@media screen and (max-width: 767px) {
  .blog_cards img {
    height: 16.75rem;
  }
}
.blog_cards-name {
  font-size: var(--fz-large);
  line-height: var(--lh-base);
  padding: var(--gap-l) 0;
  border-top: var(--gap-small) solid var(--white-border);
  flex-grow: 1;
  transition: var(--transition-base);
}
@media screen and (max-width: 767px) {
  .blog_cards-name {
    font-size: var(--fz-base);
  }
}

.blog_cards-date {
  padding: var(--gap-m) 0 var(--gap-l);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .blog_cards-date {
    padding: 0;
    padding-top: var(--gap-m);
  }
}
.blog_cards-date span {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
}

.blog_cards-reading {
  color: var(--gray-600);
  font-size: var(--fz-medium);
  transition: var(--transition-base);
}

.youtube-video {
  display: none;
}

.video-player {
  width: 100%;
  height: 100%;
}

.map-coordinates {
  margin-top: 0.3125rem;
  display: none;
}

.ymaps-2-1-79-copyright {
  display: none !important;
}

.no-image {
  width: 100%;
  height: 100%;
  background-color: #E2E5EA;
  color: #F1F3F6;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: url("data:image/svg+xml,%3Csvg width='122' height='96' viewBox='0 0 122 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.77453 0.656245L119.962 90.6562C121.087 91.5937 121.462 93.6562 120.337 94.7812C119.4 96.0937 117.525 96.4687 116.212 95.3437L2.21203 5.34374C0.899531 4.40624 0.524531 2.34374 1.64953 1.21874C2.58703 -0.0937552 4.64953 -0.468755 5.77453 0.656245ZM109.087 17.9062V70.5937L103.087 65.9062V58.2187L86.0245 41.3437C85.462 40.7812 84.5245 40.7812 83.962 41.3437L78.712 46.5937L73.837 42.8437L79.6495 37.0312C82.6495 34.2187 87.337 34.2187 90.337 37.0312L103.087 49.7812V17.9062C103.087 14.7187 100.275 11.9062 97.087 11.9062H34.837L27.1495 5.90624H97.087C103.65 5.90624 109.087 11.3437 109.087 17.9062ZM56.7745 59.9062L61.462 63.6562L41.212 83.9062H87.1495L94.837 89.9062H25.087C18.337 89.9062 13.087 84.6562 13.087 77.9062V25.4062L19.087 30.0937V61.7812L31.6495 49.0312C34.6495 46.2187 39.337 46.2187 42.337 49.0312L55.087 61.7812L56.7745 59.9062ZM50.7745 65.9062L38.0245 53.3437C37.462 52.7812 36.5245 52.7812 35.962 53.3437L19.087 70.2187V77.9062C19.087 81.2812 21.712 83.9062 25.087 83.9062H32.7745L50.7745 65.9062Z' fill='%23F1F3F6'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 9.375rem;
  position: absolute;
  inset: 0;
}

.no-image.-dark {
  background-color: #444;
  background-image: url("data:image/svg+xml,%3Csvg width='122' height='96' viewBox='0 0 122 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.77453 0.656245L119.962 90.6562C121.087 91.5937 121.462 93.6562 120.337 94.7812C119.4 96.0937 117.525 96.4687 116.212 95.3437L2.21203 5.34374C0.899531 4.40624 0.524531 2.34374 1.64953 1.21874C2.58703 -0.0937552 4.64953 -0.468755 5.77453 0.656245ZM109.087 17.9062V70.5937L103.087 65.9062V58.2187L86.0245 41.3437C85.462 40.7812 84.5245 40.7812 83.962 41.3437L78.712 46.5937L73.837 42.8437L79.6495 37.0312C82.6495 34.2187 87.337 34.2187 90.337 37.0312L103.087 49.7812V17.9062C103.087 14.7187 100.275 11.9062 97.087 11.9062H34.837L27.1495 5.90624H97.087C103.65 5.90624 109.087 11.3437 109.087 17.9062ZM56.7745 59.9062L61.462 63.6562L41.212 83.9062H87.1495L94.837 89.9062H25.087C18.337 89.9062 13.087 84.6562 13.087 77.9062V25.4062L19.087 30.0937V61.7812L31.6495 49.0312C34.6495 46.2187 39.337 46.2187 42.337 49.0312L55.087 61.7812L56.7745 59.9062ZM50.7745 65.9062L38.0245 53.3437C37.462 52.7812 36.5245 52.7812 35.962 53.3437L19.087 70.2187V77.9062C19.087 81.2812 21.712 83.9062 25.087 83.9062H32.7745L50.7745 65.9062Z' fill='%23555555'/%3E%3C/svg%3E%0A");
}

.overlay {
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .brokers_slider-navigation {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .offer-week_slider-action-wrap .offer-week_slider-pagination {
    display: none;
  }
}

.wpcf7-form .wpcf7-response-output {
  display: none;
}
.wpcf7-form .wpcf7-not-valid-tip {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.1;
}

.order-call .wpcf7-form .wpcf7-submit {
  width: 100%;
  background: var(--secondary);
}
.order-call .wpcf7-form .wpcf7-submit:hover:not(:disabled) {
  background: var(--secondary-hover);
}
.order-call .wpcf7-form .wpcf7-submit:disabled {
  background: var(--gray-100);
  color: var(--gray-900);
}

.wpcf7-form.sent .modal-wrapper_content-form {
  display: none;
}
.wpcf7-form.sent .wpcf7-response-output {
  display: block !important;
  padding-top: 12.5rem;
  padding-bottom: 6rem;
  text-align: center;
  border: none;
  outline: none;
  box-shadow: none;
}
.wpcf7-form.sent .wpcf7-response-output::after {
  content: "";
  position: absolute;
  inset: 0;
  bottom: 5rem;
  pointer-events: none;
  background: no-repeat center/4rem url("data:image/svg+xml,%3Csvg width='96' height='96' viewBox='0 0 96 96' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M48 16C52.5 16 56.5 18.625 58.5 22.5C62.625 21.125 67.375 22.125 70.625 25.375C73.875 28.625 74.875 33.375 73.5 37.5C77.375 39.5 80 43.5 80 48C80 52.625 77.375 56.625 73.5 58.625C74.875 62.75 73.875 67.375 70.625 70.625C67.375 73.875 62.625 74.875 58.5 73.625C56.5 77.5 52.5 80 48 80C43.375 80 39.375 77.5 37.375 73.625C33.25 74.875 28.625 73.875 25.375 70.625C22.125 67.375 21.125 62.75 22.375 58.625C18.5 56.625 16 52.625 16 48C16 43.5 18.5 39.5 22.375 37.5C21.125 33.375 22.125 28.625 25.375 25.375C28.625 22.125 33.25 21.125 37.375 22.5C39.375 18.625 43.375 16 48 16ZM62.125 42.125C63.25 41 63.25 39.125 62.125 38C60.875 36.75 59 36.75 57.875 38L44 51.875L38.125 46C36.875 44.75 35 44.75 33.875 46C32.625 47.125 32.625 49 33.875 50.125L41.875 58.125C43 59.375 44.875 59.375 46.125 58.125L62.125 42.125Z' fill='%23FFAF00'/%3E%3C/svg%3E%0A");
}
.wpcf7-form.sent .wpcf7-response-output::before {
  content: "Спасибо";
  position: absolute;
  top: 11.875rem;
  font-size: 2rem;
  font-weight: 600;
  left: 0;
  right: 0;
  pointer-events: none;
}

.input-group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: var(--gap-s) 0;
}
.input-group .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}
.input-group .wpcf7-form-control-wrap input:not([type=checkbox]):not([type=radio]) {
  width: 100%;
}

.wpcf7-spinner {
  visibility: hidden;
  display: inline-block;
  background-color: #23282d;
  opacity: 0.75;
  width: 1.5rem;
  height: 1.5rem;
  border: none;
  border-radius: 100%;
  padding: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

form.submitting .wpcf7-spinner {
  visibility: visible;
}

.wpcf7-spinner::before {
  content: "";
  position: absolute;
  background-color: #fbfbfc;
  /* Light Gray 100 */
  top: 0.25rem;
  left: 0.25rem;
  width: 0.375rem;
  height: 0.375rem;
  border: none;
  border-radius: 100%;
  transform-origin: 0.5rem 0.5rem;
  animation-name: spin;
  animation-duration: 1000ms;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
  .wpcf7-spinner::before {
    animation-name: blink;
    animation-duration: 2000ms;
  }
}
.gallery_slider,
.reviews_slider,
.estate-blog_slider,
.brokers_slider,
.layouts_slider,
.places_slider {
  transition: all 0.3s ease;
  height: 25rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .gallery_slider,
  .reviews_slider,
  .estate-blog_slider,
  .brokers_slider,
  .layouts_slider,
  .places_slider {
    height: auto;
    aspect-ratio: 1/1;
  }
}
.gallery_slider::after,
.reviews_slider::after,
.estate-blog_slider::after,
.brokers_slider::after,
.layouts_slider::after,
.places_slider::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: #e3e5e9;
  z-index: 2;
  border-radius: var(--br-medium);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .gallery_slider::after,
  .reviews_slider::after,
  .estate-blog_slider::after,
  .brokers_slider::after,
  .layouts_slider::after,
  .places_slider::after {
    border-radius: 0;
  }
}

.gallery_slider.swiper-initialized,
.reviews_slider.swiper-initialized,
.estate-blog_slider.swiper-initialized,
.brokers_slider.swiper-initialized,
.layouts_slider.swiper-initialized,
.places_slider.swiper-initialized {
  position: static;
  opacity: 1;
  height: auto !important;
  background-color: none;
}
@media screen and (max-width: 767px) {
  .gallery_slider.swiper-initialized,
  .reviews_slider.swiper-initialized,
  .estate-blog_slider.swiper-initialized,
  .brokers_slider.swiper-initialized,
  .layouts_slider.swiper-initialized,
  .places_slider.swiper-initialized {
    aspect-ratio: auto;
  }
}
.gallery_slider.swiper-initialized::after,
.reviews_slider.swiper-initialized::after,
.estate-blog_slider.swiper-initialized::after,
.brokers_slider.swiper-initialized::after,
.layouts_slider.swiper-initialized::after,
.places_slider.swiper-initialized::after {
  opacity: 0;
  pointer-events: none;
  display: none;
}

.slider-prev,
.slider-next {
  border-radius: 0.25rem;
  background-color: rgba(255, 255, 255, 0.24);
  display: flex;
  width: 3rem;
  height: 3rem;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(7.5px);
  background-image: url("data:image/svg+xml,%3Csvg%20width='14'%20height='12'%20viewBox='0%200%2014%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13.8516%206.35938L8.35156%2011.8594C8.16406%2012.0469%207.82031%2012.0469%207.63281%2011.8594C7.44531%2011.6719%207.44531%2011.3281%207.63281%2011.1406L12.2891%206.48438H0.507812C0.226562%206.48438%200.0078125%206.26562%200.0078125%205.98438C0.0078125%205.73438%200.226562%205.48438%200.507812%205.48438H12.2891L7.63281%200.859375C7.44531%200.671875%207.44531%200.328125%207.63281%200.140625C7.82031%20-0.046875%208.16406%20-0.046875%208.35156%200.140625L13.8516%205.64062C14.0391%205.82812%2014.0391%206.17188%2013.8516%206.35938Z'%20fill='white'/%3E%3C/svg%3E");
  background-size: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: all 0.3s ease;
}
.slider-prev:hover,
.slider-next:hover {
  scale: 1.05;
  transition: all 0.3s ease;
}

.slider-prev {
  transform: rotate(180deg);
}

.slider-pagination {
  color: var(--white);
}
.slider-pagination > * {
  color: var(--white);
}

.filter-tag {
  width: 100%;
}
.filter-tag .filter-tag_label {
  margin-bottom: 0.5rem;
  font-weight: 500;
}

.facetwp-facet.is-loading {
  opacity: 0.6;
}

.facetwp-overlay {
  position: absolute;
}

.facetwp-pager-label {
  display: inline-block;
  margin-right: 12px;
}

.facetwp-page {
  display: inline-block;
  padding: 0px 4px;
  margin-right: 6px;
  cursor: pointer;
}

.facetwp-page.dots {
  cursor: default;
}

.facetwp-page.active {
  font-weight: bold;
  cursor: default;
}

/* Checkboxes */
.facetwp-type-checkboxes {
  display: flex;
  align-items: flex-start;
  align-content: flex-start;
  gap: 0.5rem;
  align-self: stretch;
  flex-wrap: wrap;
}

.facetwp-type-checkboxes .facetwp-depth {
  display: none;
}

.facetwp-type-checkboxes .facetwp-depth.visible {
  display: inherit;
}

.facetwp-checkbox {
  display: flex;
  height: 2.25rem;
  padding: 0 0.75rem;
  justify-content: center;
  align-items: center;
  background-color: var(--white);
  color: var(--gray-900);
  border-radius: var(--br-large);
  overflow: hidden;
  cursor: pointer;
}

.facetwp-checkbox.checked {
  background: var(--secondary);
  color: var(--white);
}

.facetwp-checkbox.disabled,
.facetwp-radio.disabled {
  opacity: 0.4;
  cursor: default;
}

.facetwp-checkbox .facetwp-expand {
  float: right;
}

.facetwp-display-value {
  padding-right: 0.25rem;
}

/* Radio */
.facetwp-radio {
  background: url("../images/radio.png") 0 50% no-repeat;
  background-size: 14px 14px;
  margin-bottom: 4px;
  padding-left: 20px;
  cursor: pointer;
}

.facetwp-radio.checked {
  background-image: url("../images/radio-on.png");
}

/* fSelect */
.facetwp-type-fselect.is-loading {
  opacity: 1;
  /* prevent stack order issues */
}

.facetwp-type-fselect.is-loading .fs-label-wrap,
.facetwp-type-fselect.is-loading .fs-search,
.facetwp-type-fselect.is-loading .fs-no-results,
.facetwp-type-fselect.is-loading .fs-options {
  opacity: 0.6;
}

.facetwp-type-fselect.is-loading .fs-option {
  cursor: wait;
}

.facetwp-type-fselect .fs-wrap.fs-disabled .fs-option {
  opacity: 0.4;
  cursor: wait;
}

.facetwp-type-fselect .fs-option .fs-option-label {
  white-space: nowrap;
}

.facetwp-type-fselect .fs-option.d1 .fs-option-label {
  padding-left: 20px;
}

.facetwp-type-fselect .fs-option.d2 .fs-option-label {
  padding-left: 40px;
}

.facetwp-type-fselect .fs-option.d3 .fs-option-label {
  padding-left: 60px;
}

/* Hierarchy */
.facetwp-depth {
  margin-left: 12px;
}

.facetwp-link {
  cursor: pointer;
}

.facetwp-link.checked {
  font-weight: bold;
  cursor: default;
}

.facetwp-toggle {
  cursor: pointer;
}

.facetwp-hidden {
  display: none;
}

/* Slider */
.facetwp-slider-wrap {
  padding-bottom: 15px;
}

.facetwp-slider-reset {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb;
  padding: 4px 8px;
  cursor: pointer;
}

.facetwp-slider[data-disabled=true] {
  opacity: 0.6;
  cursor: not-allowed;
}

.facetwp-slider[data-disabled=true] .noUi-handle {
  cursor: not-allowed;
}

/* Search */
.facetwp-input-wrap {
  display: inline-block;
  position: relative;
}

.facetwp-facet input.facetwp-search,
.facetwp-facet input.facetwp-location {
  margin: 0;
  padding-right: 30px;
  min-width: 240px;
}

.facetwp-icon {
  right: 0;
  height: 100%;
  line-height: 1;
  position: absolute;
  cursor: pointer;
  opacity: 0.5;
}

.facetwp-icon:before {
  display: inline-block;
  content: "";
  width: 30px;
  height: 100%;
  background: url("../images/icon-search.png") no-repeat;
  background-position: 5px 50%;
  background-size: 20px 20px;
}

/* Proximity */
.location-results {
  position: absolute;
  background: #fff;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  overflow: hidden;
  width: 100%;
}

.location-result {
  font-size: 11px;
  border-bottom: 1px solid #ddd;
  padding: 5px;
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #888;
}

.location-result:hover {
  background-color: #f8f8f8;
}

.location-result.active {
  background-color: #EBF2FE;
}

.location-result .result-main {
  font-size: 13px;
  color: #222;
}

.facetwp-icon.locate-me:before {
  background-image: url("../images/icon-locate.png");
}

.facetwp-icon.f-reset:before {
  background-image: url("../images/icon-close.png");
}

.facetwp-icon.f-loading:before {
  background-image: url("../images/loading.png");
  animation: spin 700ms infinite linear;
}

.location-attribution {
  border-bottom: 1px solid #ddd;
  padding: 5px;
}

.powered-by-google {
  height: 15px;
  background: url("../images/powered-by-google.png") top right no-repeat;
  background-size: auto 15px;
}

/* Rating */
.facetwp-stars {
  display: inline-block;
  line-height: 1;
  padding-right: 4px;
  user-select: none;
  unicode-bidi: bidi-override;
  direction: rtl;
}

.facetwp-star {
  cursor: pointer;
  font-size: 20px;
  color: #ccc;
}

.facetwp-star:not(.disabled):hover,
.facetwp-star:not(.disabled):hover ~ .facetwp-star,
.facetwp-star.selected,
.facetwp-star.selected ~ .facetwp-star {
  color: #000;
}

.facetwp-star.selected:hover,
.facetwp-star.selected:hover ~ .facetwp-star {
  color: red;
}

.facetwp-star.disabled,
.facetwp-star.disabled:hover {
  cursor: auto;
  color: #eeeeee;
}

/* Date Range */
.facetwp-date.disabled,
.facetwp-date.disabled::placeholder {
  color: #b4b4b4;
  opacity: 1;
}

/* Listing Builder */
.fwpl-btn {
  text-decoration: none;
}

/* CSS animations */
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* Selections shortcode */
.facetwp-selections li {
  display: inline-block;
  line-height: 1;
}

.facetwp-selections .facetwp-selection-value {
  display: inline-block;
  margin-right: 10px;
  cursor: pointer;
  padding-right: 16px;
  background-image: url("../images/icon-close.png");
  background-size: 12px 12px;
  background-repeat: no-repeat;
  background-position: right center;
}

/* Layout builder */
@media (max-width: 480px) {
  body .facetwp-template .fwpl-layout,
  body .facetwp-template-static .fwpl-layout {
    grid-template-columns: 1fr;
  }
}
.filter-content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 2rem 0;
}
@media screen and (max-width: 767px) {
  .filter-content {
    margin-top: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    gap: 0.75rem;
  }
}
.filter-content .filter-content_row {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}
@media screen and (max-width: 767px) {
  .filter-content .filter-content_row {
    flex-direction: column;
    gap: 0.5rem;
  }
}

.filter-content_settings {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .filter-content_settings {
    margin-top: 1.5rem;
    flex-direction: column-reverse;
    gap: 0.75rem;
    margin-top: 0;
  }
}
.filter-content_settings .facetwp-facet-filter_reset {
  width: 100%;
}
.filter-content_settings .facetwp-facet-filter_reset .facetwp-reset {
  cursor: pointer;
  height: 3.25rem;
  padding: 0 1.5rem;
  background-color: var(--secondary);
  font-weight: 600;
  color: #fff;
  border-radius: 0.5rem;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .filter-content_settings .facetwp-facet-filter_reset .facetwp-reset {
    width: 100%;
  }
}
.filter-content_settings .facetwp-facet-filter_sort {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: auto;
}
@media screen and (max-width: 767px) {
  .filter-content_settings .facetwp-facet-filter_sort {
    width: 100%;
  }
}
.filter-content_settings .facetwp-facet-filter_sort select {
  height: 3.25rem;
  width: 13.75rem;
  /* пример, если rem(52) = 52px / 16 = 3.25rem */
  background-color: var(--white);
  color: var(--gray-900);
  border-radius: var(--br-medium);
  border: none;
  padding: 0 1rem;
  /* справа место для стрелки */
  outline: none;
  font-size: 1rem;
  /* rem(16) = 16px = 1rem */
  font-weight: 500;
  font-family: var(--ff-title);
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.63574 7.07959L0.385742 1.82959C0.112305 1.5835 0.112305 1.17334 0.385742 0.899902C0.631836 0.653809 1.04199 0.653809 1.31543 0.899902L6.10059 5.7124L10.8857 0.927246C11.1318 0.653809 11.542 0.653809 11.8154 0.927246C12.0615 1.17334 12.0615 1.5835 11.8154 1.82959L6.53809 7.07959C6.29199 7.35303 5.88184 7.35303 5.63574 7.07959Z' fill='%23666666'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 0.75rem 0.5rem;
  color: var(--gray-900);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .filter-content_settings .facetwp-facet-filter_sort select {
    width: 100%;
  }
}

.filter-select {
  width: 100%;
  background: var(--white);
  height: 3.25rem;
  border-radius: var(--br-medium);
  position: relative;
  display: flex;
  align-items: center;
}
.filter-select .filter-select_label {
  padding: 0 1rem;
  color: var(--gray-600);
  font-size: 1rem;
  font-weight: 500;
  font-family: var(--ff-title);
}
@media screen and (max-width: 767px) {
  .filter-select {
    width: 100%;
  }
}

.filter-slider {
  background: var(--white);
  height: 3.25rem;
  width: 100%;
  position: relative;
  border-radius: var(--br-medium);
}
.filter-slider .filter-slider_label {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 1rem;
  display: flex;
  align-items: center;
  flex: 1 0 0;
}
.filter-slider .facetwp-slider-label {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  color: var(--gray-600);
}
.filter-slider .facetwp-slider-reset {
  display: none;
}
.filter-slider .facetwp-slider-wrap {
  padding-bottom: 0;
}
.filter-slider .noUi-horizontal {
  height: 0.0625rem;
}
.filter-slider .noUi-target {
  border: none;
}
.filter-slider .noUi-connect {
  background-color: var(--primary);
}
.filter-slider .facetwp-type-slider {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0 1rem;
}
.filter-slider .noUi-handle {
  border-radius: 1.25rem !important;
  height: 1.25rem !important;
  width: 1.25rem !important;
  background-color: var(--primary);
  border: none;
  margin-top: -0.3125rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .filter-slider .noUi-handle {
    border-radius: 1rem !important;
    height: 1rem !important;
    width: 1rem !important;
    margin-top: -0.3125rem;
  }
}

.facetwp-facet {
  margin-bottom: 0 !important;
  width: 100%;
}

.fs-search {
  display: none;
}

.fs-wrap {
  width: 100%;
  display: block;
  position: relative;
  cursor: pointer;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .fs-wrap {
    width: 100%;
  }
}

.fs-label-wrap {
  position: relative;
  cursor: pointer;
  width: 100%;
  height: 3.25rem;
  position: relative;
}
.fs-label-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--br-medium);
  background-color: var(--white);
  z-index: 0;
}
.fs-label-wrap .fs-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  padding-left: 1rem;
  padding-top: 1.0625rem;
  padding-right: 2rem;
  position: relative;
  z-index: 2;
}

.fs-label-wrap,
.fs-dropdown {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fs-arrow {
  background: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.63574 7.07959L0.385742 1.82959C0.112305 1.5835 0.112305 1.17334 0.385742 0.899902C0.631836 0.653809 1.04199 0.653809 1.31543 0.899902L6.10059 5.7124L10.8857 0.927246C11.1318 0.653809 11.542 0.653809 11.8154 0.927246C12.0615 1.17334 12.0615 1.5835 11.8154 1.82959L6.53809 7.07959C6.29199 7.35303 5.88184 7.35303 5.63574 7.07959Z' fill='%23666666'/%3E%3C/svg%3E%0A") no-repeat center;
  height: 0.75rem;
  width: 0.75rem;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 1rem;
  margin: auto;
  transition: ease-in 0.15s;
  z-index: 2;
}

.fs-open .fs-arrow {
  transform: rotate(-180deg);
}

.fs-dropdown {
  width: 100%;
  position: absolute;
  background-color: var(--white);
  border-radius: 0 0 var(--br-medium) var(--br-medium);
  box-shadow: 0 0.75rem 0.75rem 0 rgba(0, 0, 0, 0.15);
  border-top: solid 0.0625rem var(--gray-100);
  z-index: 99;
  padding: 0.5rem;
}
.fs-dropdown::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -0.1875rem;
  height: 0.125rem;
  background-color: var(--white);
  z-index: 0;
}

.fs-dropdown .fs-options {
  max-height: 200px;
  overflow: auto;
}

.fs-search {
  background-color: #f8f8f8;
  height: 3rem;
  border-radius: var(--br-medium);
  overflow: hidden;
  margin-bottom: 0.5rem;
}

.fs-wrap .fs-search input {
  border: none;
  box-shadow: none;
  background-color: transparent;
  outline: none;
  padding: 0;
  height: 100%;
  width: 100%;
}

.fs-option,
.fs-search,
.fs-optgroup-label {
  padding: 0.5rem 1rem;
  cursor: default;
}

.fs-option:last-child {
  border-bottom: none;
}

.fs-no-results {
  padding: 6px 8px;
}

.fs-option {
  cursor: pointer;
  word-break: break-all;
}

.fs-option.disabled {
  opacity: 0.4;
  cursor: default;
}

.fs-wrap.single .fs-option.selected {
  background-color: #dff3ff;
}

.fs-wrap.multiple .fs-option {
  position: relative;
  padding-left: 1.875rem;
}

.fs-wrap.multiple .fs-checkbox {
  position: absolute;
  display: block;
  width: 1.5rem;
  top: 0;
  left: 0;
  bottom: 0;
}

.fs-wrap.multiple .fs-option .fs-checkbox i {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 1.5rem;
  height: 1.5rem;
  border: 0.0625rem solid #ccc;
  border-radius: 0.25rem;
  background-color: #fff;
}

.fs-wrap.multiple .fs-option:hover .fs-checkbox i {
  border: 0.0625rem solid var(--primary);
}

.fs-wrap.multiple .fs-option.selected .fs-checkbox i {
  background-color: var(--primary);
  border-color: transparent;
}
.fs-wrap.multiple .fs-option.selected .fs-checkbox i::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='14' height='12' viewBox='0 0 14 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.9844 2.45312L13.2656 3.14062L5.67188 10.3594L4.98438 11.0156L4.29688 10.3594L0.734375 6.98438L0.015625 6.29688L1.39062 4.85938L2.10938 5.54688L4.98438 8.23438L11.8906 1.67188L12.6094 0.984375L13.9844 2.45312Z' fill='white'/%3E%3C/svg%3E%0A") no-repeat center;
}

.fs-optgroup-label {
  font-weight: bold;
  text-align: center;
  background-color: #f8f8f8;
}

.fs-hidden {
  display: none;
}

.header {
  padding: 0;
  position: relative;
  width: 100%;
  max-height: 100vh;
  box-sizing: border-box;
  margin-top: 1rem;
  margin-bottom: 1rem;
  z-index: 200;
}
.header--fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0.5rem;
  padding-bottom: 0;
  transition: transform 0.25s ease;
}
@media screen and (max-width: 767px) {
  .header--fixed {
    top: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.header--fixed:not(.header--hidden) .header_content {
  box-shadow: var(--box-shadow-header);
}
.header--fixed.header--hidden {
  transform: translateY(calc(-100% - 0.5rem));
}
.header--fixed.header--instant {
  transition: none;
}
.header.shadow-header .header_content {
  box-shadow: var(--box-shadow-header);
}
body.single-nedvizhimost .header, body:has(.company-page) .header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-top: 0;
  padding-top: 1rem;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  body.single-nedvizhimost .header, body:has(.company-page) .header {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .header {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
  }
}
.header .header_content {
  transition: var(--transition-base);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--gap-s) var(--gap-l);
  background: var(--white);
  border-radius: var(--br-large);
}
@media screen and (max-width: 767px) {
  .header .header_content {
    position: relative;
    padding: 0 var(--gap-m);
    height: var(--height-large);
    transition: none;
  }
}
.header .header_content.active {
  border-radius: var(--br-large) var(--br-large) 0 0;
  border-bottom: var(--gap-small) solid var(--gray-100);
  box-shadow: 0 0.25rem 1.5rem 0 rgba(0, 0, 0, 0.25);
}
.header .header_menu {
  display: flex;
  align-items: center;
  gap: var(--gap-xl);
}
@media screen and (max-width: 767px) {
  .header .header_menu {
    width: 100%;
    justify-content: space-between;
  }
}
.header .header_menu .header_mobile-navigation {
  display: contents;
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-navigation {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-panel {
    display: none;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
  }
  .header .header_menu .header_mobile-panel.is-active {
    display: flex;
  }
}
.header .header_menu .header_mobile-panel_main {
  display: contents;
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-panel_main {
    display: none;
  }
  .header .header_menu .header_mobile-panel_main.is-active {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
  }
}
.header .header_menu .header_mobile-panel_categories,
.header .header_menu .header_mobile-panel_apartments {
  display: none;
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-panel_categories.is-active,
  .header .header_menu .header_mobile-panel_apartments.is-active {
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-back {
    display: flex;
    align-items: center;
    gap: var(--gap-xs);
    width: 100%;
    padding: var(--gap-m);
    border: none;
    border-top: 1px solid var(--gray-200, #e5e7eb);
    border-bottom: var(--gap-small) solid var(--gray-100);
    background: var(--gray-100);
    font-size: var(--fz-medium);
    color: var(--gray-900);
    cursor: pointer;
    transition: color 0.2s ease, background 0.2s ease;
  }
  .header .header_menu .header_mobile-back:hover {
    background: var(--gray-200, #e5e7eb);
    color: var(--primary);
  }
  .header .header_menu .header_mobile-back svg {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    color: currentColor;
  }
  .header .header_menu .header_mobile-back svg path {
    stroke-width: 1.5;
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-sublist {
    list-style: none;
    margin: 0;
    padding: 0;
    flex: 1;
    overflow: auto;
  }
  .header .header_menu .header_mobile-sublist li {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu .header_mobile-sublink {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-width: 100%;
    box-sizing: border-box;
    padding: 0.75rem var(--gap-m);
    font-size: var(--fz-base);
    color: var(--gray-900);
    border-bottom: var(--gap-small) solid var(--gray-100);
    transition: color 0.2s ease;
  }
  .header .header_menu .header_mobile-sublink:hover {
    color: var(--primary);
  }
  .header .header_menu .header_mobile-sublink.header_mobile-sublink_has-next span {
    flex: 1;
    min-width: 0;
  }
  .header .header_menu .header_mobile-sublink.header_mobile-sublink_has-next svg {
    flex-shrink: 0;
    margin-left: var(--gap-s);
  }
  .header .header_menu .header_mobile-sublink svg {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
    color: var(--gray-900);
  }
  .header .header_menu .header_mobile-sublink svg path {
    stroke-width: 1.5;
  }
}
.header .header_menu ul {
  display: flex;
  align-items: center;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .header .header_menu ul {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 0;
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li {
    width: 100%;
  }
}
.header .header_menu ul li.header_menu-item_has-dropdown {
  position: relative;
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li.header_menu-item_has-dropdown .header_dropdown {
    display: none;
  }
}
.header .header_menu ul li.header_menu-item_has-dropdown:hover .header_dropdown {
  opacity: 1;
  visibility: visible;
}
@media (min-width: 768px) {
  .header .header_menu ul li.header_menu-item_has-dropdown:hover .header_menu-chevron svg {
    transform: rotate(-90deg);
  }
}
.header .header_menu ul li.header_menu-item_has-dropdown .header_dropdown-item_has-sub:hover .header_subdropdown {
  opacity: 1;
  visibility: visible;
}
.header .header_menu ul li .header_menu-chevron {
  display: flex;
  align-items: center;
  margin-left: 0.25rem;
  color: var(--gray-900);
  transition: color 0.2s ease;
}
.header .header_menu ul li .header_menu-chevron svg path {
  stroke-width: 1.5;
}
.header .header_menu ul li .header_menu-chevron svg {
  width: 1.25rem;
  height: 1.25rem;
  opacity: 0.7;
  transition: transform 0.2s ease;
  color: inherit;
}
@media (min-width: 768px) {
  .header .header_menu ul li .header_menu-chevron svg {
    display: block;
    width: 1rem;
    height: 1rem;
    opacity: 1;
    transform: rotate(90deg);
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li .header_menu-chevron svg {
    width: 1rem;
    height: 1rem;
    opacity: 1;
    color: var(--gray-900);
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li .header_menu-chevron {
    margin-left: auto;
    flex-shrink: 0;
  }
}
.header .header_menu ul .header_menu-link {
  display: inline-flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .header .header_menu ul .header_menu-link {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
}
.header .header_menu ul .header_dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 0.25rem;
  min-width: 13.75rem;
  padding: var(--gap-xs) 0;
  background: var(--white);
  border-radius: var(--br-large);
  box-shadow: 0 0.25rem 1.5rem rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  z-index: 201;
}
@media screen and (max-width: 767px) {
  .header .header_menu ul .header_dropdown {
    position: static;
    margin-top: 0;
    padding-left: var(--gap-m);
    box-shadow: none;
    border-left: 2px solid var(--gray-100);
  }
}
.header .header_menu ul .header_dropdown-item {
  display: block;
  padding: 0.5rem var(--gap-m);
  font-size: var(--fz-medium);
  color: var(--gray-900);
  transition: color 0.2s ease;
}
.header .header_menu ul .header_dropdown-item:hover {
  color: var(--primary);
}
.header .header_menu ul .header_dropdown-item.header_dropdown-item_has-sub {
  position: relative;
  padding: 0;
}
.header .header_menu ul .header_dropdown-item.header_dropdown-item_has-sub > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-s);
  width: 100%;
  padding: 0.5rem var(--gap-m);
  font-size: var(--fz-medium);
  color: var(--gray-900);
  transition: color 0.2s ease;
  box-sizing: border-box;
}
.header .header_menu ul .header_dropdown-item.header_dropdown-item_has-sub > a:hover {
  color: var(--primary);
}
.header .header_menu ul .header_dropdown-chevron {
  flex-shrink: 0;
  opacity: 0.7;
}
.header .header_menu ul .header_dropdown-chevron svg {
  display: block;
}
.header .header_menu ul .header_dropdown-chevron svg path {
  stroke-width: 1.5;
}
.header .header_menu ul .header_subdropdown {
  position: absolute;
  left: 100%;
  top: 0;
  margin-left: 0.25rem;
  min-width: 12.5rem;
  padding: var(--gap-xs) 0;
  background: var(--white);
  border-radius: var(--br-large);
  box-shadow: 0 0.25rem 1.5rem rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  z-index: 202;
}
.header .header_menu ul .header_subdropdown a {
  display: block;
  padding: 0.375rem var(--gap-m);
  font-size: var(--fz-medium);
  color: var(--gray-900);
  transition: color 0.2s ease;
}
.header .header_menu ul .header_subdropdown a:hover {
  color: var(--primary);
}
@media screen and (max-width: 767px) {
  .header .header_menu ul .header_subdropdown {
    position: static;
    margin-left: 0;
    margin-top: 0;
    padding-left: var(--gap-m);
    box-shadow: none;
    border-left: 2px solid var(--gray-100);
  }
}
.header .header_menu ul li .header_dropdown,
.header .header_menu ul li .header_subdropdown {
  border-radius: var(--br-large);
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li:not(.header_menu-item_has-dropdown) a {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 100%;
    box-sizing: border-box;
    padding: 0 var(--gap-m);
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu ul li.header_menu-item_has-dropdown a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-width: 100%;
    box-sizing: border-box;
    padding: 0 var(--gap-m);
  }
}
@media screen and (max-width: 767px) {
  .header .header_menu ul a {
    height: var(--height-medium);
    border-bottom: var(--gap-small) solid var(--gray-100);
    box-sizing: border-box;
  }
}
.header .header_menu ul a.active span {
  color: var(--primary);
}
@media (min-width: 768px) {
  .header .header_menu ul a.active .header_menu-chevron {
    color: var(--primary);
  }
}
@media (min-width: 768px) {
  .header .header_menu ul a:hover .header_menu-chevron {
    color: var(--primary);
  }
}
.header .header_menu ul a span {
  font-size: var(--fz-medium);
  color: var(--gray-900);
  transition: var(--transition-base);
}
.header .header_menu ul a span:hover {
  color: var(--primary);
}
@media screen and (max-width: 767px) {
  .header .header_menu ul a span {
    font-size: var(--fz-base);
    font-weight: var(--fw-regular);
  }
}
.header .header_menu ul a svg {
  display: none;
}
@media screen and (max-width: 767px) {
  .header .header_menu ul a svg {
    display: block;
    width: 2rem;
    height: 2rem;
  }
}
@media (min-width: 768px) {
  .header .header_menu ul a .header_menu-chevron svg {
    display: block;
  }
}
.header .header_logo {
  width: 8.0625rem;
  height: 2rem;
  margin-top: -0.25rem;
}
.header .header_logo img {
  width: 100%;
  height: 100%;
}
.header .header_logo-white {
  display: none;
}
.header .header_contacts {
  display: flex;
  align-items: center;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .header .header_contacts {
    display: none;
    padding: var(--gap-m) var(--gap-m);
    width: 100%;
    justify-content: space-between;
  }
}
.header .header_contacts-wrapper {
  display: flex;
  flex-direction: column;
}
.header .header_contacts-wrapper a {
  color: var(--gray-900);
  transition: var(--transition-base);
}
.header .header_contacts-wrapper a:hover {
  color: var(--primary);
}
.header .header_contacts-wrapper span {
  font-size: var(--fz-small);
  opacity: var(--opacity-middle);
  cursor: pointer;
  transition: var(--transition-base);
}
.header .header_contacts-wrapper span:hover {
  color: var(--primary);
  opacity: 1;
}
.header .header_social-link {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .header .header_social-link {
    display: none;
  }
}
.header .header_social-link a svg {
  width: 2.25rem;
  height: 2.25rem;
  transition: var(--transition-base);
}
.header .header_social-link a svg:hover {
  opacity: var(--opacity-m);
}
.header .header_mobile {
  display: none;
}
@media screen and (max-width: 767px) {
  .header .header_mobile {
    display: flex;
  }
}
.header .header_mobile-actions {
  display: flex;
  align-items: center;
  gap: var(--gap-m);
}
.header .header_mobile-actions > * {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  min-height: 2rem;
}
.header .header_mobile-actions > * svg {
  width: 2rem;
  height: 2rem;
  display: block;
}
@media screen and (max-width: 767px) {
  .header .header_mobile-menu {
    display: none;
  }
}
.header .header_mobile-menu.active {
  display: flex;
  align-items: stretch;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: var(--white);
  flex-direction: column;
  border-radius: 0 0 var(--br-large) var(--br-large);
  box-shadow: inset 0 1px 0 0 var(--gray-200, #e5e7eb), 0 24px 24px 0 rgba(0, 0, 0, 0.25);
  gap: 0;
  padding: 0;
  box-sizing: border-box;
}
.header .header_mobile-menu.active .header_mobile-navigation,
.header .header_mobile-menu.active .header_mobile-panel {
  width: 100%;
}
.header .header_mobile-menu.active ul {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0;
}
.header .header_mobile-menu.active li {
  width: 100%;
}
.header .header_mobile-menu.active .header_contacts,
.header .header_mobile-menu.active .header_social-link {
  display: flex;
}
.header .header_mobile-menu.active.is-subpanel .header_contacts, .header .header_mobile-menu.active.is-subpanel .header_social-link {
  display: none;
}
.header .header_mobile-menu .header_contacts,
.header .header_mobile-menu .header_social-link {
  display: none;
}
.header .header_burger-menu.hidden {
  display: none;
}
.header .header_close-menu {
  display: none;
}
.header .header_close-menu.active {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer {
  padding-bottom: var(--fz-56);
  padding-top: var(--gap-large);
}
@media screen and (max-width: 767px) {
  .footer {
    padding-bottom: var(--gap-l);
    padding-top: 0;
  }
}

.footer_content {
  padding-bottom: var(--gap-xl);
  border-bottom: var(--gap-small) solid #D5D5D5;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .footer_content {
    flex-direction: column;
    padding-bottom: var(--gap-l);
  }
}

.footer_content-wrap {
  display: flex;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .footer_content-wrap {
    flex-direction: column;
  }
}

.footer_logo {
  width: 21.375rem;
  height: 3rem;
  display: block;
}
.footer_logo img {
  width: 12.0625rem;
  height: 100%;
}

.footer_navigation {
  width: 29rem;
}
@media screen and (max-width: 767px) {
  .footer_navigation {
    width: 100%;
    margin-bottom: var(--gap-l);
  }
}
.footer_navigation ul {
  margin-bottom: var(--gap-medium);
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .footer_navigation ul {
    gap: var(--gap-m);
    margin-bottom: var(--gap-l);
  }
}
.footer_navigation ul li a {
  color: var(--gray-900);
  transition: var(--transition-base);
}
.footer_navigation ul li a:hover {
  color: var(--primary);
}

.footer_navigation-social {
  display: flex;
  align-items: center;
  gap: var(--gap-m);
}
.footer_navigation-social a svg {
  width: 3rem;
  height: 3rem;
  transition: var(--transition-base);
}
.footer_navigation-social a svg:hover {
  opacity: var(--opacity-m);
}

.footer_contacts-tel {
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
  color: var(--gray-900);
  transition: var(--transition-base);
}
.footer_contacts-tel a {
  color: inherit;
  text-decoration: none;
  font-size: inherit;
  line-height: inherit;
}
.footer_contacts-tel:hover {
  color: var(--primary);
}

.footer_contacts-address {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xxs);
  margin: var(--gap-m) 0;
}
.footer_contacts-address > * {
  font-weight: var(--fw-regular);
}
.footer_contacts-address span:first-child {
  color: var(--gray-600);
  font-size: var(--fz-small);
  line-height: var(--lh-120);
}

.footer_contacts-mail {
  color: var(--gray-600);
  font-weight: var(--fw-regular);
  transition: var(--transition-base);
}
.footer_contacts-mail a {
  color: inherit;
  text-decoration: none;
  font-weight: inherit;
}
.footer_contacts-mail:hover {
  color: var(--primary);
}

.footer_documents {
  padding-top: var(--gap-l);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .footer_documents {
    flex-direction: column;
    padding-top: var(--gap-m);
  }
}
.footer_documents > * {
  color: var(--gray-600);
  font-size: var(--fz-small);
  font-weight: var(--fw-regular);
  line-height: var(--lh-text);
}

.footer_documents-wrap {
  display: flex;
  gap: var(--gap-m);
}
@media screen and (max-width: 767px) {
  .footer_documents-wrap {
    flex-direction: column;
    gap: var(--gap-xs);
    padding-bottom: var(--gap-s);
  }
}

.footer_documents-content {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xxs);
}
.footer_documents-content a {
  color: var(--gray-600);
  font-size: var(--fz-small);
  font-weight: var(--fw-regular);
  line-height: var(--lh-text);
  text-decoration: underline;
  transition: var(--transition-base);
}
.footer_documents-content a:hover {
  color: var(--primary);
}

.footer_copyright {
  width: 21.3125rem;
  color: var(--gray-600);
  font-size: var(--fz-small);
  font-weight: var(--fw-regular);
  line-height: var(--lh-text);
}
@media screen and (max-width: 767px) {
  .footer_copyright {
    width: 100%;
  }
}

.footer_creator {
  transition: var(--transition-base);
}
.footer_creator:hover {
  color: var(--primary);
}

body:not(.cookie-accepted) .footer {
  padding-bottom: calc(var(--gap-l) + 3rem);
}
@media screen and (max-width: 767px) {
  body:not(.cookie-accepted) .footer {
    padding-bottom: calc(var(--gap-l) + 6.5rem);
  }
}

.cookie-notice {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 199;
  padding: var(--gap-xs) var(--gap-m);
  background: var(--gray-900);
  color: var(--white);
  font-size: 0.75rem;
  line-height: 1.4;
  transition: transform 0.3s ease;
}
.cookie-notice.cookie-accepted {
  transform: translateY(100%);
  pointer-events: none;
  visibility: hidden;
  transition: transform 0.3s ease, visibility 0s linear 0.35s;
}
@media screen and (max-width: 767px) {
  .cookie-notice.cookie-accepted {
    transform: translateY(150%);
  }
}
@media screen and (max-width: 767px) {
  .cookie-notice {
    padding: var(--gap-m) 0.5rem;
    font-size: 0.6875rem;
  }
}

.cookie-notice_inner {
  max-width: 90rem;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-m);
}
@media screen and (max-width: 767px) {
  .cookie-notice_inner {
    flex-direction: column;
    align-items: stretch;
    gap: var(--gap-xs);
    text-align: center;
  }
}

.cookie-notice_text {
  margin: 0;
  font-size: inherit;
  opacity: 0.95;
}
@media screen and (max-width: 767px) {
  .cookie-notice_text {
    margin: 0.5rem;
  }
}

.cookie-notice_actions {
  display: flex;
  flex-shrink: 0;
  gap: 0.5rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .cookie-notice_actions {
    width: 100%;
    flex: 1 1 auto;
  }
  .cookie-notice_actions .cookie-notice_btn,
  .cookie-notice_actions .cookie-notice_accept {
    flex: 1;
    min-width: 0;
    text-align: center;
  }
}

.cookie-notice_btn,
.cookie-notice_accept {
  padding: var(--gap-xxs) var(--gap-m);
  font-size: inherit;
  font-weight: 500;
  line-height: 1.3;
  color: var(--gray-900);
  background: var(--white);
  border: none;
  border-radius: var(--br-medium);
  cursor: pointer;
  transition: opacity 0.2s ease;
  text-decoration: none;
}
.cookie-notice_btn:hover,
.cookie-notice_accept:hover {
  opacity: 0.9;
}
@media screen and (max-width: 767px) {
  .cookie-notice_btn,
  .cookie-notice_accept {
    padding: var(--gap-xs) var(--gap-l);
    font-size: inherit;
  }
}

a.cookie-notice_btn {
  background: var(--white);
  color: var(--gray-900);
  border: none;
}
a.cookie-notice_btn:hover {
  opacity: 0.9;
}

.cookie-notice_btn {
  display: inline-block;
}

.footer_form {
  background: var(--white);
  border-radius: var(--br-large);
  padding: var(--gap-xl);
  position: relative;
  margin-bottom: var(--gap-xl);
}
@media screen and (max-width: 767px) {
  .footer_form {
    padding: var(--gap-l);
  }
}

.footer_form .wpcf7-form.sent .footer_form-sent {
  display: none;
}

.footer_form .wpcf7-response-output {
  padding-top: 8.5rem;
  padding-bottom: 2rem;
}
.footer_form .wpcf7-response-output::before {
  top: 9.375rem;
}

.footer_form-title {
  font-size: var(--fz-h2);
  line-height: var(--lh-100);
  padding-bottom: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .footer_form-title {
    font-size: var(--fz-h1-mob);
  }
}

.footer_form-info {
  color: var(--gray-750);
  font-size: var(--fz-base);
  font-weight: var(--fw-regular);
  width: 27rem;
  margin-bottom: var(--gap-medium);
}
@media screen and (max-width: 767px) {
  .footer_form-info {
    width: 100%;
    margin-bottom: var(--gap-l);
  }
}

.footer_form-row {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-m);
  margin-bottom: var(--gap-m);
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .footer_form-row {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-xs);
  }
}
.footer_form-row .hidden {
  display: none;
}
.footer_form-row .wpcf7-text,
.footer_form-row .wpcf7-tel {
  width: 17.375rem;
}
@media screen and (max-width: 767px) {
  .footer_form-row .wpcf7-text,
  .footer_form-row .wpcf7-tel {
    width: 100%;
  }
}
.footer_form-row .wpcf7-submit {
  flex: 0 0 auto;
  align-self: flex-start;
  width: auto;
  min-width: fit-content;
  max-width: max-content;
  height: auto;
}
@media screen and (max-width: 767px) {
  .footer_form-row .wpcf7-submit {
    width: 100%;
    max-width: none;
    margin-top: var(--gap-xs);
  }
}

.footer_form .wpcf7-form .footer_form-row .wpcf7-submit {
  flex: 0 0 auto !important;
  align-self: flex-start !important;
  width: auto !important;
  max-width: max-content;
  height: auto !important;
}
@media screen and (max-width: 767px) {
  .footer_form .wpcf7-form .footer_form-row .wpcf7-submit {
    width: 100% !important;
    max-width: none;
  }
}

.footer_form-bg {
  width: 24.125rem;
  height: 30.4375rem;
  position: absolute;
  right: 7.9375rem;
  bottom: 0;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .footer_form-bg {
    display: none;
  }
}

.footer_form-approval {
  margin-top: 1rem;
  margin-bottom: var(--gap-m);
  color: var(--gray-600);
  font-size: 0.875rem;
  font-weight: var(--fw-regular);
  line-height: 1.1;
}

.wpcf7-form label:has(.wpcf7-acceptance) {
  display: flex;
  align-items: flex-start;
  gap: var(--gap-xs);
  cursor: pointer;
  margin-top: var(--gap-s);
  margin-bottom: var(--gap-s);
  color: var(--gray-600);
  font-size: 0.875rem;
  font-weight: var(--fw-regular);
  line-height: 1.1;
}
.wpcf7-form label:has(.wpcf7-acceptance) .wpcf7-form-control-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  height: 1.1em;
  overflow: visible;
}
.wpcf7-form label:has(.wpcf7-acceptance) .wpcf7-form-control.wpcf7-acceptance,
.wpcf7-form label:has(.wpcf7-acceptance) .wpcf7-list-item {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin: 0;
}
.wpcf7-form label:has(.wpcf7-acceptance) .form-approval-text {
  flex: 1;
  min-width: 0;
  line-height: 1.1;
  font-size: 0.875rem;
}
.wpcf7-form label:has(.wpcf7-acceptance) input[type=checkbox] {
  margin: 0;
  width: 1.5rem;
  height: 1.5rem;
  min-width: 1.5rem;
  min-height: 1.5rem;
  max-width: 1.5rem;
  max-height: 1.5rem;
  aspect-ratio: 1;
  flex-shrink: 0;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none;
  border: 1px solid var(--gray-400);
  border-radius: var(--br-medium);
  outline: none;
  transition: var(--transition-base);
  cursor: pointer;
}
.wpcf7-form label:has(.wpcf7-acceptance) input[type=checkbox]:hover {
  background: var(--gray-100);
}
.wpcf7-form label:has(.wpcf7-acceptance) input[type=checkbox]:checked {
  background: var(--primary);
  border-color: var(--primary);
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='11' viewBox='0 0 14 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5.5L5 9.5L13 1.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 0.875rem 0.6875rem;
}
.wpcf7-form label:has(.wpcf7-acceptance) input[type=checkbox]:checked:hover {
  background-color: var(--primary-hover);
  border-color: var(--primary-hover);
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='11' viewBox='0 0 14 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 5.5L5 9.5L13 1.5' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.wpcf7-form label:has(.wpcf7-acceptance) a {
  color: inherit;
  font-size: 0.875rem;
  text-decoration: none;
  transition: var(--transition-base);
}
.wpcf7-form label:has(.wpcf7-acceptance) a:hover {
  color: var(--primary);
}

.faq_accordion > .item:first-of-type {
  border-top: 0.0625rem solid #D5D5D5;
}

.faq_accordion h2 {
  margin-bottom: var(--fz-h1);
}
@media screen and (max-width: 767px) {
  .faq_accordion h2 {
    margin-bottom: var(--gap-l);
  }
}

.selection-estate {
  margin: var(--gap-xxl) 0;
}
@media screen and (max-width: 767px) {
  .selection-estate {
    margin: var(--gap-x) 0;
  }
}
.selection-estate .selection-estate_content {
  background: var(--white);
  border-radius: var(--br-large);
  padding: var(--gap-xxl) var(--gap-xl);
  position: relative;
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content {
    padding: var(--gap-medium-after) var(--gap-m);
  }
}
.selection-estate .selection-estate_content h2 {
  width: 40.0625rem;
  margin-bottom: var(--gap-m);
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content h2 {
    width: 100%;
    order: 2;
    margin-top: var(--gap-l);
    font-size: var(--fz-h3);
  }
}
.selection-estate .selection-estate_content h2 span {
  color: var(--primary);
  display: inline-block;
  font-size: var(--fz-h1);
  line-height: var(--lh-100);
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content h2 span {
    font-size: var(--fz-h1-mob);
  }
}
.selection-estate .selection-estate_content p {
  font-weight: var(--fw-regular);
  width: 28.8125rem;
  margin-bottom: var(--gap-medium);
  position: relative;
  z-index: 5;
  color: var(--gray-750);
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content p {
    width: 100%;
    margin-bottom: var(--gap-l);
    order: 3;
  }
}
.selection-estate .selection-estate_content a {
  width: max-content;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content a {
    order: 4;
  }
}
.selection-estate .selection-estate_content .selection-estate_content-img {
  width: 47.9375rem;
  height: 25.625rem;
  position: absolute;
  top: 3.75rem;
  right: 3rem;
}
@media screen and (max-width: 767px) {
  .selection-estate .selection-estate_content .selection-estate_content-img {
    position: relative;
    width: 20.5rem;
    height: 11.875rem;
    inset: 0;
  }
}
.selection-estate .selection-estate_content .selection-estate_content-img img {
  position: absolute;
  inset: 0;
  display: block;
  object-fit: contain;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .estate .wrapper {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .estate h2 {
    padding: 0 var(--gap-m);
  }
}

.estate_card {
  background-color: white;
  border-radius: var(--br-large);
  overflow: hidden;
  display: flex;
  position: relative;
}
@media screen and (max-width: 767px) {
  .estate_card {
    flex-direction: column;
    background-color: none;
    border-radius: 0;
  }
}

.estate_tag-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
}

.estate_img-slider {
  border-radius: var(--br-large);
  overflow: hidden;
  width: 45rem;
  height: auto;
  position: relative;
  aspect-ratio: 8/5;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .estate_img-slider {
    border-radius: 0;
    width: 100%;
    aspect-ratio: 4/3;
    background-color: var(--gray-200);
  }
}
.estate_img-slider .overlay {
  background: var(--lg-black-20);
}
.estate_img-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.no-image {
  aspect-ratio: 8/5;
}
@media screen and (max-width: 767px) {
  .no-image {
    aspect-ratio: 4/3;
  }
}

.estate_slider-action {
  position: absolute;
  padding: var(--gap-medium-after) var(--gap-l);
  width: 100%;
  z-index: 11;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .estate_slider-action {
    padding: var(--gap-m);
  }
}

.estate_card {
  margin-bottom: var(--gap-l);
}
.estate_card:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .estate_card {
    margin-bottom: 0;
  }
}
.estate_card .estate_card-info {
  padding: var(--gap-medium-after) var(--gap-l);
  background: var(--white);
  flex: 1;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-info {
    padding: var(--gap-m) var(--gap-m) var(--gap-medium);
    padding-bottom: 2rem !important;
  }
}
.estate_card .estate_card-title {
  margin-bottom: var(--gap-medium-after);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-title {
    margin-bottom: 1rem;
  }
}
.estate_card .estate_card-title .estate_card-title-name {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-wrap: wrap;
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-title .estate_card-title-name {
    font-size: var(--fz-more-large);
    line-height: var(--lh-100);
  }
}
.estate_card .estate_card-title .estate_card-title-name a {
  display: contents;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  text-decoration: none;
}
.estate_card .estate_card-title .estate_card-title-name a:hover {
  color: var(--primary);
}
.estate_card .estate_card-title .estate_card-title-place {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-title .estate_card-title-place {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
  }
}
.estate_card .estate_card-title .estate_card-title-place span {
  font-size: var(--fz-medium);
  color: var(--gray-600);
  font-weight: 400;
}
.estate_card .estate_card-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }
}
.estate_card .estate_card-row .estate_card-broker {
  display: flex;
  width: 12.5rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1.5rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-broker {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
  }
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group {
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-broker .estate_card-broker_group {
    flex-direction: row;
    align-items: center;
  }
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_img {
  width: 5rem;
  height: 5rem;
  border-radius: 5rem;
  background: var(--gray-200);
  position: relative;
  overflow: hidden;
  display: block;
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_img::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg%20width='22'%20height='24'%20viewBox='0%200%2022%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M11.4453%2012C9.28906%2012%207.32031%2010.875%206.24219%209C5.16406%207.17188%205.16406%204.875%206.24219%203C7.32031%201.17188%209.28906%200%2011.4453%200C13.5547%200%2015.5234%201.17188%2016.6016%203C17.6797%204.875%2017.6797%207.17188%2016.6016%209C15.5234%2010.875%2013.5547%2012%2011.4453%2012ZM10.7422%2016.875L9.85156%2015.4219C9.57031%2014.9062%209.89844%2014.25%2010.5078%2014.25H12.3359C12.9453%2014.25%2013.2734%2014.9062%2012.9922%2015.4219L12.1016%2016.875L13.6953%2022.6875L15.3828%2015.7969C15.4766%2015.4219%2015.8516%2015.1406%2016.2266%2015.2344C19.5078%2016.0781%2021.9453%2019.0312%2021.9453%2022.5938C21.9453%2023.3906%2021.2891%2024%2020.4922%2024H14.3047C14.2109%2024%2014.1172%2024%2014.0234%2023.9531L14.0703%2024H8.82031V23.9531C8.72656%2024%208.63281%2024%208.53906%2024H2.35156C1.55469%2024%200.945312%2023.3906%200.945312%2022.5938C0.945312%2019.0312%203.33594%2016.0781%206.61719%2015.2344C7.03906%2015.1406%207.36719%2015.4219%207.46094%2015.7969L9.14844%2022.6875L10.7422%2016.875Z'%20fill='white'/%3E%3C/svg%3E%0A");
  background-size: 2.5rem;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_img::after {
    background-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_img {
    width: 3rem;
    height: 3rem;
  }
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  object-fit: cover;
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_name {
  display: flex;
  flex-direction: column;
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_name span {
  font-size: 1rem;
  font-weight: 500;
}
.estate_card .estate_card-row .estate_card-broker .estate_card-broker_group .estate_card-broker_name small {
  color: var(--gray-750);
  font-size: 0.75rem;
}
.estate_card .estate_card-row .estate_card-broker .btn-contact {
  height: 2.25rem;
  border-radius: 0.25rem;
  background-color: var(--gray-200);
  color: var(--gray-900);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1rem;
  font-weight: 500;
  width: 100%;
  font-size: 1rem;
  cursor: pointer;
  transition: all 350ms ease;
}
.estate_card .estate_card-row .estate_card-broker .btn-contact:hover {
  background-color: var(--gray-100);
  transition: all 350ms ease;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-broker .btn-contact {
    text-indent: -9999px;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 2.75rem;
    background-color: var(--primary);
    background-image: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M5.125%200.781241L6.375%203.78124C6.59375%204.28124%206.46875%204.87499%206.03125%205.21874L4.5%206.49999C5.53125%208.68749%207.3125%2010.4687%209.5%2011.5L10.7812%209.96874C11.125%209.53124%2011.7188%209.40624%2012.2188%209.62499L15.2188%2010.875C15.8125%2011.0937%2016.0938%2011.75%2015.9375%2012.3437L15.1875%2015.0937C15.0312%2015.625%2014.5625%2016%2014%2016C6.25%2016%200%209.74999%200%201.99999C0%201.43749%200.375%200.968741%200.90625%200.812491L3.65625%200.0624906C4.25%20-0.0937594%204.90625%200.187491%205.125%200.781241Z'%20fill='white'/%3E%3C/svg%3E%0A");
    background-size: 1rem;
    background-position: center;
    background-repeat: no-repeat;
  }
  .estate_card .estate_card-row .estate_card-broker .btn-contact:hover {
    background-color: var(--primary);
  }
}
.estate_card .estate_card-row .estate_card-description {
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: flex-start;
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-description {
    margin: 0;
    width: 100%;
    flex-direction: column-reverse;
  }
}
.estate_card .estate_card-row .estate_card-description .estate_card-price {
  width: 13rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-description .estate_card-price {
    width: 100%;
    display: flex;
    gap: var(--gap-xs);
    align-items: baseline;
  }
}
.estate_card .estate_card-row .estate_card-description .estate_card-price .estate_card-price-actual {
  font-size: var(--fz-more-large);
  line-height: var(--lh-100);
  margin-bottom: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-description .estate_card-price .estate_card-price-actual {
    margin-bottom: 0;
    font-size: var(--fz-large);
  }
}
.estate_card .estate_card-row .estate_card-description .estate_card-price .estate_card-price-unit {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: start;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-description .estate_card-text_group {
    gap: 0.25rem;
  }
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-text {
  font-weight: var(--fw-regular);
  color: var(--gray-750);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 8;
  -webkit-line-clamp: 8;
  align-self: stretch;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 21.875rem;
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-text p {
  font-weight: var(--fw-regular);
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-text img {
  display: none;
}
@media screen and (max-width: 767px) {
  .estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-text {
    line-clamp: 2;
    -webkit-line-clamp: 2;
  }
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-btn_more {
  display: inline-block;
  width: auto;
  color: var(--primary);
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  text-decoration: none;
}
.estate_card .estate_card-row .estate_card-description .estate_card-text_group .estate_card-btn_more:hover {
  opacity: 0.7;
}

@media screen and (max-width: 767px) {
  .popular-buildings .wrapper {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .popular-buildings h2 {
    padding: 0 var(--gap-m);
  }
}

.popular-buildings_cards-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap-l);
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .popular-buildings_cards-wrap {
    display: flex;
    flex-direction: column;
    gap: var(--gap-m);
    margin-bottom: 0;
  }
}

.popular-buildings_card {
  grid-column: span 1;
  position: relative;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .popular-buildings_card {
    grid-column: unset;
    display: flex;
    flex-direction: column;
    margin-bottom: 0;
  }
}
.popular-buildings_card:hover img {
  transform: scale(var(--scale));
}
.popular-buildings_card .img-wrap {
  aspect-ratio: 4/3;
  height: inherit;
  position: relative;
  margin-bottom: var(--gap-s);
  border-radius: var(--gap-xs);
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .popular-buildings_card .img-wrap {
    border-radius: 0;
    margin-bottom: 0;
    height: 16.75rem;
  }
}
.popular-buildings_card img,
.popular-buildings_card .popular-buildings_card-img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
@media screen and (max-width: 767px) {
  .popular-buildings_card img,
  .popular-buildings_card .popular-buildings_card-img {
    height: 16.75rem;
  }
}
.popular-buildings_card .popular-buildings_card-img {
  background: var(--white-hover);
  display: flex;
  align-items: center;
  justify-content: center;
}
.popular-buildings_card a {
  z-index: 10;
}

@media screen and (max-width: 767px) {
  .popular-buildings_card-content {
    padding: var(--gap-m) var(--gap-m) var(--gap-l) var(--gap-m);
  }
}

.popular-buildings_card-title {
  display: flex;
  align-items: flex-end;
  margin-bottom: var(--gap-xxs);
  gap: var(--gap-s);
}
.popular-buildings_card-title h3 {
  transition: var(--transition-base);
}
@media screen and (max-width: 767px) {
  .popular-buildings_card-title {
    flex-wrap: wrap;
  }
}

.popular-buildings_card-price {
  flex-shrink: 0;
}

.popular-buildings_card-place {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.popular-buildings_card-place span {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
}

.popular-buildings_main-card {
  aspect-ratio: 16/9;
  grid-column: span 2;
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card {
    grid-column: unset;
    height: max-content;
    aspect-ratio: 0;
  }
}
.popular-buildings_main-card > * {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card > * {
    color: var(--gray-900);
  }
}
.popular-buildings_main-card img,
.popular-buildings_main-card .img-wrap,
.popular-buildings_main-card .popular-buildings_card-img {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card img,
  .popular-buildings_main-card .img-wrap,
  .popular-buildings_main-card .popular-buildings_card-img {
    border-radius: 0;
    height: 16.75rem;
  }
}
.popular-buildings_main-card .img-wrap {
  margin-bottom: 0;
}

.popular-buildings_main-card .popular-buildings_card-content {
  position: absolute;
  width: 100%;
  bottom: 0;
  padding: var(--gap-xxl) var(--gap-l) var(--gap-l) var(--gap-l);
  border-radius: 0 0 var(--br-large) var(--br-large);
  overflow: hidden;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.82) 0%, rgba(0, 0, 0, 0.5) 28%, rgba(0, 0, 0, 0.15) 52%, transparent 72%);
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card .popular-buildings_card-content {
    position: initial;
    padding: var(--gap-m) var(--gap-m) var(--gap-l) var(--gap-m);
    border-radius: 0;
    background: none;
  }
}
.popular-buildings_main-card .popular-buildings_card-content .overlay {
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card .popular-buildings_card-content .overlay {
    display: none;
  }
}
.popular-buildings_main-card .popular-buildings_card-content .popular-buildings_card-place > * {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .popular-buildings_main-card .popular-buildings_card-content .popular-buildings_card-place > * {
    color: var(--gray-600);
  }
}

.popular-buildings_card-item {
  grid-column: span 1;
}
@media screen and (max-width: 767px) {
  .popular-buildings_card-item {
    grid-column: unset;
  }
}
.popular-buildings_card-item .img-wrap {
  aspect-ratio: 4/3;
  height: inherit;
  position: relative;
}
.popular-buildings_card-item .img-wrap img {
  height: 100%;
  position: absolute;
  inset: 0;
}

.popular-buildings_tag-wrap {
  position: absolute;
  z-index: 10;
}

.category {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .category {
    padding-bottom: var(--gap-x);
  }
}
.category h1 {
  margin-top: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .category h1 {
    margin-top: var(--gap-l);
  }
}

.category_content {
  display: grid;
  grid-template-rows: auto auto;
  grid-template-columns: repeat(4, 1fr);
  grid-row-gap: var(--gap-x);
  grid-column-gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .category_content {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--gap-xs);
  }
}

.category_content-card {
  position: relative;
  width: auto;
}
@media screen and (max-width: 767px) {
  .category_content-card {
    height: 12.5rem;
    overflow: hidden;
  }
}
.category_content-card:hover img {
  transform: scale(var(--scale));
}
.category_content-card:hover h3 {
  color: var(--primary);
}
@media screen and (max-width: 767px) {
  .category_content-card:hover h3 {
    color: var(--white);
  }
}
.category_content-card:nth-child(1), .category_content-card:nth-child(2) {
  grid-column: span 2;
}
@media screen and (max-width: 767px) {
  .category_content-card:nth-child(1), .category_content-card:nth-child(2) {
    grid-column: unset;
  }
}
.category_content-card:nth-child(1) .img-wrap, .category_content-card:nth-child(2) .img-wrap {
  background-color: #444;
  aspect-ratio: 3/2;
}
@media screen and (max-width: 767px) {
  .category_content-card:nth-child(1) .img-wrap, .category_content-card:nth-child(2) .img-wrap {
    height: 12.5rem;
  }
}
@media screen and (max-width: 767px) {
  .category_content-card:nth-child(1) img, .category_content-card:nth-child(2) img {
    height: 12.5rem;
  }
}
.category_content-card .img-wrap {
  aspect-ratio: 3/4;
  border-radius: var(--br-large);
  margin-bottom: var(--gap-s);
  position: relative;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .category_content-card .img-wrap {
    height: 12.5rem;
    margin-bottom: 0;
  }
}
.category_content-card img {
  width: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
@media screen and (max-width: 767px) {
  .category_content-card img {
    height: 12.5rem;
  }
}
.category_content-card h3 {
  line-height: var(--lh-120);
  transition: var(--transition-base);
}
@media screen and (max-width: 767px) {
  .category_content-card h3 {
    position: absolute;
    padding: var(--gap-m);
    z-index: 10;
    bottom: 0;
    color: var(--white);
    background: var(--lg-black-60);
    line-height: var(--lh-100);
    font-size: var(--fz-base);
    width: 100%;
    border-radius: 0 0 var(--br-large) var(--br-large);
    overflow: hidden;
  }
}
.category_content-card a {
  z-index: 10;
}

.video-reviews_title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .video-reviews_title {
    margin-bottom: var(--gap-l);
  }
}
@media screen and (max-width: 767px) {
  .video-reviews_title a {
    display: none;
  }
}

.video-reviews_cards-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .video-reviews_cards-wrap {
    flex-direction: column;
  }
}

.video-reviews_card {
  flex: 1;
  position: relative;
  cursor: pointer;
}
.video-reviews_card:hover img {
  transform: scale(var(--scale));
}
.video-reviews_card:hover h3 {
  color: var(--primary);
}
.video-reviews_card .img-wrap {
  border-radius: var(--br-large);
  height: inherit;
  aspect-ratio: 16/9;
  position: relative;
  margin-bottom: var(--gap-m);
  background-color: #e3e5e9;
}
@media screen and (max-width: 767px) {
  .video-reviews_card .img-wrap {
    height: 12.5625rem;
    margin-bottom: var(--gap-xs);
  }
}
.video-reviews_card img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}
@media screen and (max-width: 767px) {
  .video-reviews_card img {
    height: 12.5625rem;
  }
}
.video-reviews_card h3 {
  font-size: var(--fz-large);
  transition: var(--transition-base);
}
@media screen and (max-width: 767px) {
  .video-reviews_card h3 {
    font-size: var(--fz-m);
  }
}
.video-reviews_more-reviews {
  display: none;
}
@media screen and (max-width: 767px) {
  .video-reviews_more-reviews {
    display: flex;
    margin-top: var(--gap-l);
  }
}

.company-numbers {
  padding-bottom: var(--gap-large);
}
@media screen and (max-width: 767px) {
  .company-numbers {
    padding-bottom: var(--gap-x);
  }
}
.company-numbers .company-numbers_content-info {
  margin-bottom: var(--gap-large);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_content-info {
    margin-bottom: var(--gap-x);
  }
}
.company-numbers .company-numbers_content-right {
  display: flex;
  flex-direction: column;
  gap: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_content-right {
    gap: var(--gap-l);
  }
}
.company-numbers .company-numbers_title {
  width: 51.875rem;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_title {
    width: 100%;
  }
}
.company-numbers .company-numbers_title h2 {
  margin-bottom: var(--gap-l);
}
.company-numbers .company-numbers_title p {
  font-weight: var(--fw-regular);
  padding-left: 22.8125rem;
  width: 50.75rem;
  color: var(--gray-750);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_title p {
    width: 100%;
    padding: 0;
  }
}
.company-numbers .company-numbers_card-name {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card-name {
    flex-wrap: nowrap;
    align-items: flex-start;
  }
}
.company-numbers .company-numbers_cards-content {
  width: 100%;
  display: flex;
  justify-content: flex-end;
}
.company-numbers .company-numbers_cards-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_cards-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: var(--gap-xs);
    width: 100%;
  }
}
.company-numbers .company-numbers_card {
  padding: var(--gap-medium);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--white);
  width: 100%;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card:first-child {
    grid-column: span 2;
  }
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card:first-child .company-numbers_card-name span:first-child {
    font-size: var(--fz-56);
  }
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card:first-child .company-numbers_card-info {
    width: 11.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card {
    width: 100%;
    padding: var(--gap-m);
    border-radius: var(--br-large);
    height: 10.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card .company-numbers_card-name {
    display: flex;
    flex-direction: column;
  }
}
.company-numbers .company-numbers_card .company-numbers_card-name > * {
  color: var(--primary);
  font-weight: var(--fw-regular);
}
.company-numbers .company-numbers_card .company-numbers_card-name span:first-child {
  font-size: var(--fz-56);
  line-height: var(--lh-100);
  margin-right: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card .company-numbers_card-name span:first-child {
    font-size: var(--fz-h1-mob);
    margin-right: 0;
  }
}
.company-numbers .company-numbers_card .company-numbers_card-name span:last-child {
  font-size: var(--fz-large);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_card .company-numbers_card-name span:last-child {
    font-size: var(--fz-base);
    line-height: var(--lh-100);
  }
}
.company-numbers .company-numbers_card .company-numbers_card-info {
  color: var(--gray-600);
  font-weight: var(--fw-regular);
}
.company-numbers .company-numbers_location {
  position: relative;
  height: 51.25rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_location {
    height: 24.375rem;
  }
}
.company-numbers .company-numbers_location .company-numbers_location-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.4) 100%);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_location .company-numbers_location-overlay {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  }
}
.company-numbers .company-numbers_location .swiper-wrapper {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
.company-numbers .company-numbers_location .swiper-slide {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.company-numbers .company-numbers_location .img-wrap {
  grid-column: 1/-1;
  grid-row: 1/-1;
  height: 51.25rem;
  position: relative;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_location .img-wrap {
    height: 24.375rem;
  }
}
.company-numbers .company-numbers_location img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
}
.company-numbers .company-numbers_location .company-numbers_location-wrap {
  grid-column: 1/-1;
  grid-row: 1/-1;
  margin: 0 auto;
  padding: 0 var(--gap-l) var(--gap-medium) var(--gap-l);
  width: 100%;
  max-width: 93rem;
  justify-content: flex-end;
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_location .company-numbers_location-wrap {
    padding-top: var(--gap-l);
    justify-content: flex-start;
  }
}
.company-numbers .company-numbers_location .company-numbers_location-wrap h3 {
  font-size: var(--fz-h3);
  color: var(--white);
  line-height: var(--lh-120);
  z-index: 10;
}
.company-numbers .company-numbers_location .company-numbers_location-info {
  background: var(--rgba-gray);
  backdrop-filter: blur(var(--blur-small));
  -webkit-backdrop-filter: blur(var(--blur-small));
  border-radius: var(--br-large);
  padding: 0.6875rem var(--gap-s);
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
  width: max-content;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_location .company-numbers_location-info {
    background: none;
    padding: 0;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    color: wheat;
    position: relative;
    z-index: 1;
  }
}
.company-numbers .company-numbers_location .company-numbers_location-info svg {
  width: 0.6875rem;
  height: 0.9375rem;
}
.company-numbers .company-numbers_location .company-numbers_location-info span {
  color: var(--white);
  font-size: var(--fz-medium);
}
.company-numbers .company-numbers_slider-action-wrap {
  grid-column: 1/-1;
  grid-row: 1/-1;
  margin: 0 auto;
  padding: 0 var(--gap-l) var(--gap-medium) var(--gap-l);
  width: 100%;
  max-width: 93rem;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.company-numbers .company-numbers_slider-action {
  display: flex;
  align-items: center;
  width: 29rem;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_slider-action {
    bottom: var(--gap-m);
    right: auto;
    left: var(--gap-m);
    width: max-content;
  }
}
.company-numbers .company-numbers_slider-pagination {
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_slider-pagination {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .company-numbers .company-numbers_slider-navigation {
    display: flex;
    position: absolute;
    bottom: 1.5rem;
    left: 1.5rem;
  }
}

.brokers {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .brokers {
    padding-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .brokers .wrapper {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .brokers_content {
    padding: 0 0.5rem;
  }
}

.brokers_slider {
  flex: 1 0 0;
}
@media screen and (max-width: 767px) {
  .brokers_slider {
    padding: 0 0.5rem;
  }
}
.brokers_slider .swiper-slide {
  aspect-ratio: 9/16;
  align-items: flex-end;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .brokers_slider .swiper-slide {
    height: 32.5rem;
    aspect-ratio: 0;
  }
}
.brokers_slider .swiper-slide img {
  width: 21.375rem;
  height: 38rem;
  object-fit: cover;
  border-radius: var(--br-large);
  position: absolute;
  top: 0;
  left: 0;
  object-position: top;
}
@media screen and (max-width: 767px) {
  .brokers_slider .swiper-slide img {
    width: 100%;
    height: 100%;
  }
}

.brokers_slider-navigation {
  width: 6.5rem;
}

@media screen and (max-width: 767px) {
  .brokers_slide {
    width: 20.5rem !important;
    height: 32.5rem;
  }
}

.brokers_slide-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: var(--lg-black-50);
  z-index: 5;
  overflow: hidden;
  border-radius: var(--br-large);
}

.brokers_slide-content {
  position: relative;
  z-index: 6;
}

.brokers_slide-name {
  margin-bottom: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
}
.brokers_slide-name > * {
  color: var(--white);
}
.brokers_slide-name span:first-child {
  font-size: var(--fz-large);
}
.brokers_slide-name span:last-child {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
}

.brokers_slide-phone a {
  color: var(--white);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-base);
  border: none;
  outline: none;
  text-decoration: none;
  background: var(--gray-bg);
  border-radius: var(--br-medium);
  backdrop-filter: blur(var(--blur-medium));
  -webkit-backdrop-filter: blur(var(--blur-medium));
  padding: 0.625rem var(--gap-m);
  font-size: var(--fz-medium);
  line-height: normal;
}
@media screen and (max-width: 767px) {
  .brokers_slide-phone a {
    padding: 0 var(--gap-m);
    height: 2.25rem;
    width: max-content;
  }
}
.brokers_slide-phone a:hover {
  background: var(--gray-bg-hover);
}

.reviews {
  background: var(--white);
  padding: var(--gap-xxl) 0;
}
@media screen and (max-width: 767px) {
  .reviews {
    padding: var(--gap-x) 0;
  }
}
@media screen and (max-width: 767px) {
  .reviews .wrapper {
    padding: 0;
  }
}

@media screen and (max-width: 767px) {
  .reviews_content {
    padding: 0 0.5rem;
  }
}

@media screen and (max-width: 767px) {
  .reviews_title {
    display: flex;
    align-items: center;
    gap: var(--gap-m);
  }
}
.reviews_title h2 {
  margin-bottom: var(--gap-m);
}
@media screen and (max-width: 767px) {
  .reviews_title h2 {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .reviews_name-block {
    width: 14.0625rem !important;
  }
}
.reviews_name-block span {
  display: block;
  width: 14.0625rem;
  flex-shrink: 0;
  font-size: var(--fz-large);
}
@media screen and (max-width: 767px) {
  .reviews_name-block span {
    width: 100%;
    font-size: var(--fz-medium);
  }
}

.reviews_rating {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .reviews_rating svg {
    width: 1.75rem;
    height: 1.75rem;
  }
}

@media screen and (max-width: 767px) {
  .reviews_slider {
    padding: 0 0.5rem;
  }
}
.reviews_slider .swiper-slide {
  flex-direction: column;
  background: var(--gray-100);
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767px) {
  .reviews_slider .swiper-slide {
    aspect-ratio: 1/1;
  }
}

.reviews_slider-navigation {
  width: 6.5rem;
}
@media screen and (max-width: 767px) {
  .reviews_slider-navigation {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .reviews_slide {
    width: 20.5rem;
    height: 20.5rem;
  }
}
.reviews_slide a {
  color: var(--gray-900);
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  line-height: var(--lh-100);
  text-decoration: underline;
  width: max-content;
  transition: var(--transition-base);
  position: absolute;
  bottom: 1.5rem;
}
.reviews_slide a:hover {
  color: var(--primary);
}

.reviews_slide-name {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
  margin-bottom: var(--gap-l);
}

.reviews_slide-review {
  font-weight: var(--fw-regular);
  line-height: var(--lh-140);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 8;
  -webkit-line-clamp: 8;
  align-self: stretch;
  margin-bottom: var(--gap-medium);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .reviews_slide-review {
    margin-bottom: var(--gap-l);
    line-clamp: 9;
    -webkit-line-clamp: 9;
  }
}

.deluxe-office {
  padding: var(--gap-xxl) 0;
}
@media screen and (max-width: 767px) {
  .deluxe-office {
    padding: var(--gap-x) 0;
  }
}
.deluxe-office h2 {
  padding-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .deluxe-office h2 {
    padding-bottom: var(--gap-l);
  }
}

.deluxe-office_content {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .deluxe-office_content {
    display: flex;
    flex-direction: column-reverse;
    gap: var(--gap-xs);
  }
}
.deluxe-office_content .map {
  width: 100%;
  height: 34rem;
  border-radius: var(--br-large);
  overflow: hidden;
  background-color: #e3e5e9;
}
@media screen and (max-width: 767px) {
  .deluxe-office_content .map {
    order: 1;
    height: 22.375rem;
  }
}
.deluxe-office_content .btn {
  width: max-content;
  position: absolute;
  bottom: var(--gap-medium-after);
  right: var(--gap-l);
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .deluxe-office_content .btn {
    position: static;
    width: 100%;
  }
}

.deluxe-office_list {
  position: absolute;
  z-index: 10;
  top: var(--gap-l);
  left: var(--gap-l);
  background: var(--white);
  border-radius: var(--br-large);
  padding: var(--gap-xs);
  width: 23.6875rem;
}
@media screen and (max-width: 767px) {
  .deluxe-office_list {
    position: initial;
    order: 2;
    width: 100%;
  }
}

.deluxe-office_list-item {
  padding: var(--gap-s);
  display: flex;
  align-items: center;
  gap: var(--gap-m);
  border-bottom: var(--gap-small) solid var(--gray-100);
}
.deluxe-office_list-item:last-child {
  border-bottom: none;
}
.deluxe-office_list-item img,
.deluxe-office_list-item svg {
  width: 3rem;
  height: 3rem;
  border-radius: 3rem;
  object-fit: cover;
  flex-shrink: 0;
}

.deluxe-office_list-item-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xxs);
}
.deluxe-office_list-item-wrap span:first-child {
  color: var(--black);
}
.deluxe-office_list-item-wrap span:last-child {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
}

.deluxe-office_list-item-type-house,
.deluxe-office_list-item-address,
.deluxe-office_list-item a {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600) !important;
}

.maps {
  position: relative;
}

.front-page {
  /* Секция «Предложение недели» */
}
.front-page .banner {
  padding-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .front-page .banner {
    padding-bottom: var(--gap-m);
  }
}
.front-page .banner .banner_content {
  display: flex;
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content {
    flex-direction: column;
    gap: var(--gap-xs);
  }
}
.front-page .banner .banner_content .banner_content-info {
  padding: 2rem var(--gap-l);
  background: var(--white);
  border-radius: var(--br-large);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 29rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-info {
    order: 2;
  }
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-info {
    width: 100%;
    padding: var(--gap-l) var(--gap-m);
    aspect-ratio: 0;
  }
}
.front-page .banner .banner_content .banner_content-info h1 {
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-info h1 {
    margin-bottom: var(--gap-s);
  }
}
.front-page .banner .banner_content .banner_content-info p {
  font-weight: var(--fw-regular);
  width: 17.5rem;
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-info p {
    width: 100%;
    margin-bottom: var(--gap-l);
  }
}
.front-page .banner .banner_content .banner_content-info a {
  width: max-content;
}
.front-page .banner .banner_content .banner_content-title {
  margin-bottom: 0.9375rem;
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-title {
    margin-bottom: 0;
  }
}
.front-page .banner .banner_content .banner_content-video {
  border-radius: var(--br-large);
  position: relative;
  overflow: hidden;
  flex: 1;
  flex-grow: 1;
  display: flex;
  height: auto;
  aspect-ratio: 16/9;
  background-color: #e3e5e9;
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_content .banner_content-video {
    order: 1;
    aspect-ratio: 16/9;
    width: 100%;
    flex: none;
  }
}
.front-page .banner .banner_content .banner_content-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.front-page .banner .banner_button-play {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: var(--gap-m);
  cursor: pointer;
  padding: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_button-play {
    padding: var(--gap-m);
  }
}
.front-page .banner .banner_button-play svg {
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_button-play svg {
    width: 2.5rem;
    height: 3.25rem;
  }
}
.front-page .banner .banner_button-play span {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .front-page .banner .banner_button-play span {
    font-size: var(--fz-medium);
  }
}
.front-page .banner .banner_button-play .offer_info-name-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--gap-m);
}
.front-page .popular-buildings,
.front-page .popular-estate {
  padding-bottom: var(--gap-xl);
}
@media screen and (max-width: 767px) {
  .front-page .popular-buildings,
  .front-page .popular-estate {
    padding-bottom: var(--gap-x);
  }
}
.front-page .popular-buildings h2,
.front-page .popular-estate h2 {
  padding-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .front-page .popular-buildings h2,
  .front-page .popular-estate h2 {
    padding-bottom: var(--gap-l);
  }
}
.front-page .page-object.popular-buildings {
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .front-page .page-object.popular-buildings {
    margin-bottom: var(--gap-l);
  }
}
.front-page .popular-estate {
  background-color: #fff;
  border-radius: 0.25rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .front-page .popular-estate {
    padding-bottom: 0;
  }
}
.front-page .offer-week {
  padding-bottom: var(--gap-xxl);
  position: relative;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week {
    padding-bottom: var(--gap-x);
  }
}
.front-page .offer-week h2 {
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .front-page .offer-week h2 {
    margin-bottom: var(--gap-l);
  }
}
.front-page .offer-week .offer_content {
  position: absolute;
  z-index: 10;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 51.25rem;
  width: 100%;
  background: radial-gradient(103.46% 50% at 50% 50%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.65) 100%);
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_content {
    height: 26.25rem;
    padding: var(--gap-l) var(--gap-m);
    background: radial-gradient(103.46% 50% at 50% 50%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.8) 100%);
  }
}
.front-page .offer-week .offer_content .wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
  padding: var(--gap-large) var(--gap-l);
  width: 100%;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_content .wrapper {
    padding: 0;
  }
}
.front-page .offer-week .offer_tag-wrap {
  padding: var(--gap-large) var(--gap-l);
  position: absolute;
  top: 0;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_tag-wrap {
    padding: 0;
  }
}
.front-page .offer-week .offer_info-wrap {
  padding-bottom: var(--gap-medium);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-wrap {
    flex-direction: column;
    padding-bottom: var(--gap-l);
  }
}
.front-page .offer-week .offer_info > * {
  color: var(--white);
}
.front-page .offer-week .offer_info-name {
  display: flex;
  gap: 0.3125rem;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-name {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3125rem;
  }
}
.front-page .offer-week .offer_info-name span {
  width: max-content;
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-name span {
    line-height: var(--lh-100);
  }
}
.front-page .offer-week .offer_info-place {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  margin-bottom: var(--gap-l);
  margin-top: 0.25rem;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-place {
    margin-top: 0.5rem;
  }
}
.front-page .offer-week .offer_info-place span {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
}
.front-page .offer-week .offer_info-price {
  font-size: var(--fz-more-large);
  line-height: var(--lh-100);
  margin-bottom: var(--gap-xxs);
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-price {
    font-size: var(--fz-large);
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-price .offer_info-price-wrap {
    display: flex;
    align-items: center;
    gap: var(--gap-xs);
  }
}
.front-page .offer-week .offer_info-unit {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
}
.front-page .offer-week .offer_info-description {
  display: none;
  width: 29rem;
  color: var(--white);
  font-weight: var(--fw-regular);
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_info-description {
    display: none;
  }
}
.front-page .offer-week .offer_slider .overlay {
  width: 100%;
  height: 100%;
  background: var(--radial-gradient);
  position: absolute;
  top: 0;
  left: 0;
}
.front-page .offer-week .offer_slider .offer_slider-action-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.front-page .offer-week .offer_slider .offer_slider-action {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 29rem;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week .offer_slider .offer_slider-action {
    width: max-content;
  }
}
.front-page .offer-week .offer_slider .offer_slider-pagination {
  color: #fff;
}
.front-page .offer-week .offer_slider .offer_slider-pagination .swiper-pagination-current {
  width: 1rem;
  text-align: right;
}
.front-page .offer-week .offer_slider .offer_slider-pagination .swiper-pagination-total {
  width: 1rem;
}
.front-page .offer-week .offer_slider-navigation {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
.front-page .offer-week_slide {
  position: relative;
  height: 51.25rem;
  background-color: #444;
}
@media screen and (max-width: 767px) {
  .front-page .offer-week_slide {
    height: 26.25rem;
    width: 100%;
  }
}
.front-page .offer-week_slide img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
}
.front-page .estate-blog {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .front-page .estate-blog {
    padding-bottom: var(--gap-x);
  }
}
.front-page .estate-blog .estate-blog_title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .front-page .estate-blog .estate-blog_title {
    margin-bottom: var(--gap-l);
  }
}
.front-page .estate-blog .estate-blog_title .estate-blog_title-navigation {
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .front-page .estate-blog .estate-blog_slide {
    display: flex;
    flex-direction: column;
  }
}
.front-page .estate-blog .estate-blog_more-articles {
  display: none;
}
@media screen and (max-width: 767px) {
  .front-page .estate-blog .estate-blog_more-articles {
    display: flex;
    margin-top: var(--gap-l);
  }
}
.front-page .estate-blog .btn {
  display: none;
}
@media screen and (max-width: 767px) {
  .front-page .estate-blog .btn {
    margin-top: var(--gap-l);
    display: flex;
  }
}
.front-page .video-reviews .btn-mobile {
  margin-top: var(--gap-l);
}

.realty-page .category.realty-page-section {
  padding-bottom: 0;
}
.realty-page .category h1 {
  padding-bottom: var(--gap-l);
}
.realty-page .selection-estate {
  margin-top: 0;
}

.residential-complexes-page .residential-complexes h1 {
  margin-bottom: var(--gap-m);
}
@media screen and (max-width: 767px) {
  .residential-complexes-page .residential-complexes h1 {
    margin-bottom: var(--gap-l);
  }
}
@media screen and (max-width: 767px) {
  .residential-complexes-page .residential-complexes .wrapper {
    padding: 0;
  }
}
.residential-complexes-page .residential-complexes .residential-complexes_more-wrap {
  display: flex;
  justify-content: center;
}
.residential-complexes-page .residential-complexes .residential-complexes_more {
  margin-top: var(--gap-l);
  width: max-content;
}

.cottage-settlements-page .cottage-settlements h1 {
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .cottage-settlements-page .cottage-settlements .wrapper {
    padding: 0;
  }
}
.cottage-settlements-page .cottage-settlements .cottage-settlements_more-wrap {
  display: flex;
  justify-content: center;
}
.cottage-settlements-page .cottage-settlements .cottage-settlements_more {
  margin-top: var(--gap-l);
  width: max-content;
}

.apartment-page .apartment h1 {
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .apartment-page .apartment .wrapper {
    padding: 0;
  }
}
.apartment-page .apartment .apartment_more {
  margin-top: var(--gap-x);
  width: max-content;
}

.houses-page .houses h1 {
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .houses-page .houses .wrapper {
    padding: 0;
  }
}
.houses-page .houses .houses_more-wrap {
  display: flex;
  justify-content: center;
}
.houses-page .houses .houses_more {
  margin-top: var(--gap-x);
  width: max-content;
}

.commercial-estate-page .commercial-estate h1 {
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .commercial-estate-page .commercial-estate .wrapper {
    padding: 0;
  }
}
.commercial-estate-page .commercial-estate .commercial-estate_more-wrap {
  display: flex;
  justify-content: center;
}
.commercial-estate-page .commercial-estate .commercial-estate_more {
  margin-top: var(--gap-x);
  width: max-content;
}
@media screen and (max-width: 767px) {
  .commercial-estate-page .commercial-estate .commercial-estate_more {
    margin-top: var(--gap-l);
  }
}

.video-reviews-page .video-reviews {
  padding-bottom: calc(var(--gap-xxl) + var(--gap-l));
}
@media screen and (max-width: 767px) {
  .video-reviews-page .video-reviews {
    padding-bottom: var(--gap-xl);
  }
}
.video-reviews-page .video-reviews .video-reviews_title {
  margin-bottom: var(--gap-l);
}
.video-reviews-page .video-reviews .video-reviews_cards-wrap {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem var(--gap-l);
}
@media screen and (max-width: 767px) {
  .video-reviews-page .video-reviews .video-reviews_cards-wrap {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--gap-l);
  }
}
.video-reviews-page .video-reviews .video-reviews_more-wrap {
  display: flex;
  justify-content: center;
}
.video-reviews-page .video-reviews .video-reviews_more {
  margin-top: var(--gap-x);
  width: max-content;
}

.blog-page .blog {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .blog-page .blog {
    padding-bottom: var(--gap-x);
  }
}
.blog-page .blog .blog_content h1 {
  margin-bottom: var(--gap-l);
  margin-top: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .blog-page .blog .blog_content h1 {
    margin-top: var(--gap-l);
  }
}
.blog-page .blog .blog_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .blog-page .blog .blog_wrap {
    display: flex;
    flex-direction: column;
  }
}
.blog-page .blog .blog_more-wrap {
  display: flex;
  justify-content: center;
}
.blog-page .blog .blog_more {
  margin-top: var(--gap-x);
  width: max-content;
}

@media screen and (max-width: 767px) {
  .article-page .breadcrumbs {
    opacity: 0;
    pointer-events: none;
  }
}
.article-page .article {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .article-page .article {
    padding-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .article-page .article .wrapper {
    padding: 0;
  }
}
.article-page .article h1 {
  padding-bottom: var(--gap-x);
  font-size: 3rem;
  width: 68.75rem;
  line-height: var(--lh-100);
}
@media screen and (max-width: 767px) {
  .article-page .article h1 {
    width: 100%;
    padding: 0 0.5rem var(--gap-l) 0.5rem;
    font-size: 2rem;
  }
}
.article-page .article .article_wrap {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .article-page .article .article_wrap {
    flex-direction: column;
    justify-content: normal;
    gap: 1.5rem;
  }
}
.article-page .article .article_wrap .article_wrap-info {
  gap: var(--gap-l);
  width: 44.25rem;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .article-page .article .article_wrap .article_wrap-info {
    width: 100%;
    order: 2;
    padding: 0 0.5rem;
  }
}
.article-page .article .article_wrap .article_wrap-info p {
  font-weight: var(--fw-regular);
}
.article-page .article .article_wrap .article_wrap-img {
  width: 36.625rem;
  aspect-ratio: 4/3;
  position: relative;
  border-radius: var(--br-large);
  overflow: hidden;
}
.article-page .article .article_wrap .article_wrap-img img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .article-page .article .article_wrap .article_wrap-img {
    width: 100%;
    order: 1;
  }
}
.article-page .article .article_wrap .article_wrap-img img {
  position: absolute;
  inset: 0;
  object-fit: cover;
  border-radius: var(--br-large);
  overflow: hidden;
  margin-bottom: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .article-page .article .article_wrap .article_wrap-img img {
    border-radius: 0;
  }
}
.article-page .article .article_date {
  padding: var(--gap-m) 0;
  border-top: var(--gap-small) solid var(--gray-border);
}
.article-page .article .article_date span {
  padding: var(--gap-m) 0;
  font-weight: var(--fw-regular);
}
.article-page .article .article_signature {
  font-size: var(--fz-medium);
  font-weight: var(--fw-regular);
  color: var(--gray-600);
}
@media screen and (max-width: 767px) {
  .article-page .article .article_signature {
    padding: 0 0.5rem;
  }
}
.article-page .other-article {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .article-page .other-article {
    padding-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .article-page .other-article .wrapper {
    padding: 0;
  }
}
.article-page .other-article h2 {
  padding-bottom: var(--gap-medium);
}
@media screen and (max-width: 767px) {
  .article-page .other-article h2 {
    padding: 0 0.5rem var(--gap-l) 0.5rem;
  }
}
.article-page .other-article .blog .blog_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .article-page .other-article .blog .blog_wrap {
    display: flex;
    align-items: center;
    width: 100vw;
    overflow-x: auto;
    padding: 0 0.5rem;
  }
  .article-page .other-article .blog .blog_wrap::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .article-page .other-article .blog .blog_cards {
    width: 22.375rem;
    flex-shrink: 0;
  }
}

.company-page {
  margin-top: 0;
}
.company-page .banner {
  position: relative;
  margin-bottom: 4.5rem;
  height: 100vh;
  background-color: #444;
  overflow: hidden;
  padding-top: 0;
  /* Градиент сверху — как на landing/object, поверх overlay для читаемости крошек */
}
.company-page .banner .wrapper {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: 0 auto;
  max-width: 93rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .company-page .banner {
    height: 90vh;
    margin-bottom: var(--gap-medium);
  }
}
.company-page .banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: auto;
  height: 8.75rem;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), transparent);
  pointer-events: none;
  z-index: 11;
}
.company-page .banner:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
}
.company-page .banner .overlay {
  background: var(--lg-black-15);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}
.company-page .banner .banner_breadcrumbs {
  position: absolute;
  top: calc(var(--height-large, 3.5rem) + var(--gap-m) + 1rem);
  left: 0;
  right: 0;
  z-index: 20;
  max-width: 90rem;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_content {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_content > * {
  flex-shrink: 0;
  color: #fff;
  font-size: 0.75rem;
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_content > *:last-child {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_content a {
  color: rgba(255, 255, 255, 0.95);
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_content a:hover {
  color: #fff;
}
.company-page .banner .banner_breadcrumbs .breadcrumbs_separator {
  color: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 767px) {
  .company-page .banner .banner_breadcrumbs {
    top: calc(var(--height-large-mob, 3rem) + var(--gap-s) + 0.75rem);
    padding: 0;
    pointer-events: none;
    opacity: 0;
  }
  .company-page .banner .banner_breadcrumbs .breadcrumbs_content a {
    pointer-events: auto;
  }
}
.company-page .banner img {
  position: absolute;
  inset: 0;
  object-fit: cover;
  height: 100vh;
  width: 100%;
}
.company-page .banner .banner_title {
  position: absolute;
  bottom: var(--gap-large);
  left: var(--gap-large);
  z-index: 5;
  grid-column: 1/-1;
  grid-row: 1/-1;
}
@media screen and (max-width: 767px) {
  .company-page .banner .banner_title {
    bottom: var(--gap-medium);
    left: 0.5rem;
  }
}
.company-page .banner .banner_title h1 {
  color: var(--white);
  font-size: 3rem;
  width: 73.75rem;
}
@media screen and (max-width: 767px) {
  .company-page .banner .banner_title h1 {
    width: 100%;
    font-size: 2rem;
    padding-right: 0.5rem;
  }
}
.company-page .faq {
  display: none;
}
@media screen and (max-width: 767px) {
  .company-page .faq {
    display: block;
  }
}

.landing-page {
  margin-top: 0;
  /* Хлебные крошки под шапкой — как на странице объекта */
}
.landing-page .breadcrumbs-under-header {
  padding: var(--gap-s) 0;
  padding-top: 11.3125rem;
  background: var(--white);
  border-bottom: 1px solid var(--gray-200, #eee);
}
@media screen and (max-width: 767px) {
  .landing-page .breadcrumbs-under-header {
    padding: var(--gap-xs) 0;
    padding-top: 6.8125rem;
    opacity: 0;
    pointer-events: none;
  }
}
.landing-page .breadcrumbs-under-header .breadcrumbs_content {
  padding: 0;
  gap: 0.5rem;
}
.landing-page .breadcrumbs-under-header .breadcrumbs_content > * {
  font-size: 0.75rem;
}
@media screen and (max-width: 767px) {
  .landing-page .breadcrumbs-under-header .breadcrumbs_content {
    flex-wrap: nowrap;
    overflow: hidden;
    min-width: 0;
    white-space: nowrap;
  }
  .landing-page .breadcrumbs-under-header .breadcrumbs_content > * {
    flex-shrink: 0;
    white-space: nowrap;
  }
  .landing-page .breadcrumbs-under-header .breadcrumbs_content > *:last-child {
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
.landing-page .banner {
  position: relative;
  margin-bottom: var(--gap-xxl);
  height: 100vh;
  min-height: 640px;
  max-height: 1080px;
  overflow: hidden;
  /* Градиент сверху — как на page object (слайдер), поверх overlay для читаемости крошек */
  /* Слайдер фона: плавная смена по opacity, без кнопок и счётчика — на мобилке как на page object */
  /* Теги на слайдере в мобилке (копия внутри .banner_slider) */
  /* Хлебные крошки поверх слайдера — отступ как на page object (шапка + gap-m + 16px) */
  /* Иконки пешком/машина в тегах баннера — на мобилке фиксируем размер и видимость */
}
@media screen and (max-width: 767px) {
  .landing-page .banner {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    margin-bottom: var(--gap-x);
    overflow: visible;
  }
}
.landing-page .banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 8.75rem;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.35), transparent);
  pointer-events: none;
  z-index: 11;
}
@media screen and (max-width: 767px) {
  .landing-page .banner::before {
    display: none;
  }
}
.landing-page .banner .overlay {
  background: var(--lg-black-double);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 24.375rem;
    bottom: auto;
    background: transparent;
  }
}
.landing-page .banner .banner_slider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_slider {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    min-height: 24.375rem;
    height: 24.375rem;
  }
}
.landing-page .banner .banner_tag-wrap-on-slider {
  display: none;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_tag-wrap-on-slider {
    display: flex;
    position: absolute;
    bottom: 0.5rem;
    left: 0.5rem;
    right: 0.5rem;
    padding: 0;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: flex-start;
    align-items: flex-end;
    z-index: 5;
  }
}
.landing-page .banner .banner_slider-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.8s ease;
  z-index: 0;
  cursor: pointer;
}
.landing-page .banner .banner_slider-slide.is-active {
  opacity: 1;
  z-index: 1;
}
.landing-page .banner .banner_slider-slide img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.landing-page .banner .banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner img {
    height: 24.375rem;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_slider-slide img {
    height: 24.375rem;
  }
}
.landing-page .banner .banner_breadcrumbs {
  position: absolute;
  top: calc(var(--height-large, 3.5rem) + var(--gap-m) + 1rem);
  left: 0;
  right: 0;
  z-index: 20;
  max-width: 90rem;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_content {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_content > * {
  flex-shrink: 0;
  color: #fff;
  font-size: 0.75rem;
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_content > *:last-child {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_content a {
  color: rgba(255, 255, 255, 0.95);
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_content a:hover {
  color: #fff;
}
.landing-page .banner .banner_breadcrumbs .breadcrumbs_separator {
  color: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_breadcrumbs {
    top: calc(var(--height-large-mob, 3rem) + var(--gap-s) + 0.75rem);
    padding: 0 0.5rem;
    pointer-events: none;
    opacity: 0;
  }
  .landing-page .banner .banner_breadcrumbs .breadcrumbs_content a {
    pointer-events: auto;
  }
}
.landing-page .banner .banner_content {
  position: absolute;
  bottom: var(--gap-x);
  max-width: 90rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_content {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    bottom: auto;
    padding: var(--gap-m) 0.5rem 2.5rem;
    left: 0;
  }
}
.landing-page .banner .banner_tag-wrap {
  padding: 0 0 0.5rem 0;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_tag-wrap {
    flex-wrap: wrap;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_tag-wrap-in-content {
    display: none;
  }
}
.landing-page .banner .banner_tag-wrap .banner_tag.tag span svg,
.landing-page .banner .banner_tag-wrap-on-slider .banner_tag.tag span svg {
  display: block;
  flex-shrink: 0;
  color: var(--white);
}
.landing-page .banner .banner_tag-wrap .banner_tag.tag span svg path,
.landing-page .banner .banner_tag-wrap-on-slider .banner_tag.tag span svg path {
  fill: currentColor;
}
.landing-page .banner .banner_tag-wrap .banner_tag.tag span svg path[stroke],
.landing-page .banner .banner_tag-wrap-on-slider .banner_tag.tag span svg path[stroke] {
  fill: none;
  stroke: currentColor;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_tag-wrap .banner_tag.tag span svg,
  .landing-page .banner .banner_tag-wrap-on-slider .banner_tag.tag span svg {
    width: 0.875rem;
    height: 0.875rem;
    min-width: 0.625rem;
    min-height: 0.875rem;
  }
}
.landing-page .banner .banner_title {
  padding-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_title {
    padding-bottom: var(--gap-s);
  }
}
.landing-page .banner .banner_title > * {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_title > * {
    color: var(--gray-900);
  }
}
.landing-page .banner .banner_title h1 {
  font-size: var(--fz-h1);
  width: 58.5rem;
  padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_title h1 {
    font-size: var(--fz-h1-mob);
    width: 100%;
  }
}
.landing-page .banner .banner_title p {
  font-size: var(--fz-large);
  font-weight: var(--fw-regular);
  width: 29rem;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_title p {
    font-size: var(--fz-base);
    width: 100%;
  }
}
.landing-page .banner .banner_content-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--gap-m);
  margin-top: var(--gap-m);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_content-row {
    margin-top: 0.25rem;
    flex-wrap: nowrap;
  }
}
.landing-page .banner .banner_content-row_actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_content-row_actions {
    flex: 1;
    min-width: 0;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_content-row_actions .btn {
    flex: 1;
    min-width: 0;
    width: auto;
  }
}
.landing-page .banner .banner_gallery-btn {
  width: 3.875rem;
  height: 3.875rem;
  padding: 0;
  border: none;
  border-radius: var(--br-medium);
  background: var(--white);
  color: var(--gray-900);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}
.landing-page .banner .banner_gallery-btn:hover {
  opacity: 0.9;
}
.landing-page .banner .banner_gallery-btn svg {
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 767px) {
  .landing-page .banner .banner_gallery-btn {
    width: var(--height-medium);
    height: var(--height-medium);
  }
}
.landing-page .banner .btn {
  width: max-content;
}
.landing-page .about-complex {
  margin-bottom: var(--gap-xxl);
  position: relative;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex {
    margin-bottom: var(--gap-x);
  }
}
.landing-page .about-complex h2 {
  margin-bottom: var(--gap-medium);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex h2 {
    margin-bottom: var(--gap-l);
    padding: 0 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex .wrapper {
    padding: 0;
  }
}
.landing-page .about-complex_info-home {
  grid-template-columns: repeat(3, 1fr) !important;
}
.landing-page .about-complex_info {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-radius: var(--br-large);
  overflow: hidden;
  background: var(--white);
  margin-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_info {
    grid-template-columns: repeat(2, 1fr) !important;
    margin: 0 0.5rem var(--gap-l);
  }
}
.landing-page .about-complex_info-card {
  padding: var(--gap-medium);
  display: flex;
  flex-direction: column;
  gap: var(--gap-s);
  border-right: var(--gap-small) solid var(--gray-100);
  border-bottom: var(--gap-small) solid var(--gray-100);
  grid-column: span 1;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_info-card {
    padding: var(--gap-l) 0.5rem;
    gap: 0;
    grid-column: auto;
  }
}
.landing-page .about-complex_info-card span:first-child {
  color: var(--gray-750);
  font-weight: var(--fw-regular);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_info-card span:first-child {
    font-size: var(--fz-small);
    line-height: var(--lh-text);
  }
}
.landing-page .about-complex_info-card span:last-child {
  color: var(--primary);
  font-size: var(--fz-h3);
  line-height: var(--lh-120);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_info-card span:last-child {
    font-size: 1rem;
  }
}
.landing-page .about-complex_wrap {
  padding-bottom: var(--gap-l);
  display: none;
}
.landing-page .about-complex_description {
  margin-bottom: var(--gap-l);
  background: var(--white);
  padding: var(--gap-xs);
  border-radius: var(--br-large);
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description {
    flex-direction: column-reverse;
    margin: 0 0.5rem var(--gap-x);
  }
}
.landing-page .about-complex_description-text {
  padding: var(--gap-xl);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  align-self: stretch;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description-text {
    padding: var(--gap-xs);
    gap: 0;
  }
}
.landing-page .about-complex_description-text h3 {
  font-size: var(--fz-h2);
  width: 33.25rem;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description-text h3 {
    font-size: var(--fz-h3);
    margin-bottom: var(--gap-m);
    width: 100%;
  }
}
.landing-page .about-complex_description-text-wrap {
  width: 32.25rem;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description-text-wrap {
    width: 100%;
  }
}
.landing-page .about-complex_description-text-wrap p {
  font-weight: var(--fw-regular);
  color: var(--gray-750);
  font-size: var(--fz-large);
  margin-bottom: var(--gap-m);
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description-text-wrap p {
    font-size: var(--fz-base);
    font-weight: var(--fw-medium);
  }
}
.landing-page .about-complex_description-text-wrap p:last-child {
  margin-bottom: 0;
}
.landing-page .about-complex_description .img-wrap {
  aspect-ratio: 4/3;
  position: relative;
  border-radius: var(--br-large);
  overflow: hidden;
  width: 100%;
  background-color: #e3e5e9;
}
.landing-page .about-complex_description img {
  height: 100%;
  object-fit: cover;
  width: 100%;
  position: absolute;
  inset: 0;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex_description img {
    width: 100%;
    flex: 0;
  }
}
.landing-page .about-complex .about-complex_video {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--br-large);
  overflow: hidden;
  aspect-ratio: 16/9;
  background-color: #e3e5e9;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex .about-complex_video {
    border-radius: 0;
  }
}
.landing-page .about-complex .about-complex_video .overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  transition: all 350ms ease-in-out;
  opacity: 0.2;
  z-index: 2;
}
.landing-page .about-complex .about-complex_video:hover {
  cursor: pointer;
  transition: all 350ms ease-in-out;
}
.landing-page .about-complex .about-complex_video:hover img {
  transition: transform 0.5s ease-in-out;
  transform: scale(1.02);
}
.landing-page .about-complex .about-complex_video:hover .overlay {
  opacity: 0;
  transition: all 350ms ease-in-out;
}
.landing-page .about-complex .about-complex_video:hover .about-complex_video-play {
  opacity: 0;
  transition: opacity 350ms ease;
}
.landing-page .about-complex .about-complex_video img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease-in-out;
  transform: scale(1);
}
.landing-page .about-complex .about-complex_video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.landing-page .about-complex .about-complex_video .about-complex_video-play {
  position: absolute;
  cursor: pointer;
  z-index: 10;
  transition: opacity 350ms ease;
}
@media screen and (max-width: 767px) {
  .landing-page .about-complex .about-complex_video .about-complex_video-play svg {
    width: 3.625rem;
    height: 3.625rem;
  }
}
.landing-page .gallery {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .landing-page .gallery {
    margin-bottom: var(--gap-x);
  }
}
.landing-page .gallery_title {
  margin-bottom: var(--gap-medium);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .landing-page .gallery_title {
    margin-bottom: var(--gap-l);
  }
}
.landing-page .gallery .swiper-wrapper {
  max-width: 90rem;
  margin: auto;
  overflow: visible;
}
@media screen and (max-width: 767px) {
  .landing-page .gallery_slider {
    padding: 0 0.5rem;
  }
}
.landing-page .gallery_slider .swiper-slide {
  width: 67.5rem;
  border-radius: var(--br-large);
  overflow: hidden;
  aspect-ratio: 16/9;
  position: relative;
  background-color: rgb(226, 229, 234);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .landing-page .gallery_slider .swiper-slide {
    width: 100%;
    aspect-ratio: 4/3;
  }
}
.landing-page .gallery_slider .swiper-slide img {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.landing-page .layouts {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .landing-page .layouts {
    margin-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .landing-page .layouts .wrapper {
    padding: 0;
  }
}
.landing-page .layouts .layouts_title {
  margin-bottom: var(--gap-medium);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .landing-page .layouts .layouts_title {
    margin-bottom: var(--gap-l);
    padding: 0 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .layouts_slider {
    padding: 0 0.5rem;
  }
}
.landing-page .download-presentation {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation {
    margin-bottom: var(--gap-x);
  }
}
.landing-page .download-presentation .download-presentation_row {
  background: var(--white);
  padding: var(--gap-xs);
  border-radius: var(--br-large);
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: var(--gap-xs);
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row {
    flex-direction: column-reverse;
    gap: 0;
    order: 2;
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description {
  padding: var(--gap-xl);
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description {
    padding: var(--gap-m) var(--gap-xs);
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description h2 {
  margin-bottom: var(--gap-medium-after);
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description h2 {
    margin-bottom: var(--gap-m);
    font-size: var(--fz-h3);
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description h2 span {
  color: var(--primary);
  font-size: var(--fz-h2);
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description h2 span {
    font-size: var(--fz-h1-mob);
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description .download-presentation_description-text {
  width: 29rem;
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description .download-presentation_description-text {
    width: 100%;
    margin-bottom: var(--gap-l);
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description .download-presentation_description-text p {
  font-weight: var(--fw-regular);
  color: var(--gray-750);
  font-size: var(--fz-large);
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description .download-presentation_description-text p {
    font-size: var(--fz-base);
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description .download-presentation_description-text p:last-child {
  margin-bottom: 0;
}
.landing-page .download-presentation .download-presentation_row .download-presentation_description .btn {
  width: auto;
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_description .btn {
    width: 100%;
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_img-wrap {
  width: 44.25rem;
  aspect-ratio: 1/1;
  position: relative;
  border-radius: var(--br-large);
  overflow: hidden;
  background: #e3e5e9;
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_img-wrap {
    width: 100%;
  }
}
.landing-page .download-presentation .download-presentation_row .download-presentation_img-wrap img {
  display: block;
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .landing-page .download-presentation .download-presentation_row .download-presentation_img-wrap img {
    flex: 0;
    order: 1;
  }
}
.landing-page .place-on-map {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .landing-page .place-on-map {
    margin-bottom: var(--gap-x);
  }
}
.landing-page .place-on-map .wrapper > h2 {
  margin-bottom: var(--gap-medium);
}
@media screen and (max-width: 767px) {
  .landing-page .place-on-map .wrapper > h2 {
    margin-bottom: var(--gap-l);
    padding: 0 0.5rem;
  }
}
.landing-page .place-on-map .deluxe-office {
  padding: 0;
}
@media screen and (max-width: 767px) {
  .landing-page .place-on-map .deluxe-office .deluxe-office_content .btn {
    bottom: 14.6875rem;
  }
}
.landing-page .place-on-map .deluxe-office .deluxe-office_list .deluxe-office_list-item .deluxe-office_list-item-name {
  margin-bottom: var(--gap-xxs);
}
.landing-page .place-on-map .deluxe-office .deluxe-office_list .deluxe-office_list-item img {
  width: 5rem;
  height: 5rem;
  border-radius: 5rem;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .landing-page .place-on-map .deluxe-office .deluxe-office_list .deluxe-office_list-item img {
    width: 4.5rem;
    height: 4.5rem;
    border-radius: 4.5rem;
  }
}
.landing-page .place-on-map .deluxe-office .deluxe-office_list .deluxe-office_list-item .deluxe-office_list-item-wrap {
  gap: 0;
}
.landing-page .places-nearby {
  margin-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .landing-page .places-nearby {
    margin-bottom: var(--gap-x);
  }
}
.landing-page .places-nearby .gallery_title {
  margin-bottom: var(--gap-medium);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.landing-page .places-nearby .gallery_title h2 {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .landing-page .places-nearby .gallery_title {
    margin-bottom: var(--gap-l);
    padding: 0 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .places-nearby .places_slider .swiper-slide {
    width: 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .landing-page .places-nearby .places_slider .places-nearby_card {
    width: 100%;
    max-width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
}

.layout-card {
  padding: var(--gap-l);
  background: var(--white);
  border-radius: var(--br-large);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .layout-card {
    padding: 1rem;
    width: 100%;
  }
}
.layout-card .layout-card_img {
  width: 100%;
  aspect-ratio: 4/3;
  position: relative;
  border-radius: var(--br-medium);
  overflow: hidden;
}
.layout-card .layout-card_img img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.layout-card .layout-card_content .layout-card_content-title {
  flex-grow: 1;
  margin-bottom: 0.5rem;
}
.layout-card .layout-card_content .btn {
  margin-top: 1.5rem;
}

/**
 * Страница объекта недвижимости (single-nedvizhimost, group_2: квартиры, дома, коммерция, участки)
 */
/* overflow: visible — чтобы фикс-бар брокера не обрезался и был поверх «Похожие объекты» */
html.object-detail-page,
body.object-detail-page {
  overflow-x: visible;
}

main.object-detail-page {
  overflow: visible;
  margin-top: 0;
}

/* Хлебные крошки под меню (только на странице объекта) */
.breadcrumbs-under-header {
  padding: var(--gap-s) 0;
  padding-top: 11.3125rem;
  background: var(--white);
  border-bottom: 1px solid var(--gray-200, #eee);
}
@media screen and (max-width: 767px) {
  .breadcrumbs-under-header {
    padding: var(--gap-xs) 0;
    padding-top: 6.8125rem;
    opacity: 0;
    pointer-events: none;
  }
}
.breadcrumbs-under-header .breadcrumbs_content {
  padding: 0;
  gap: 0.5rem;
}
.breadcrumbs-under-header .breadcrumbs_content > * {
  font-size: 0.75rem;
}
@media screen and (max-width: 767px) {
  .breadcrumbs-under-header .breadcrumbs_content {
    flex-wrap: nowrap;
    overflow: hidden;
    min-width: 0;
    white-space: nowrap;
  }
  .breadcrumbs-under-header .breadcrumbs_content > * {
    flex-shrink: 0;
    white-space: nowrap;
  }
  .breadcrumbs-under-header .breadcrumbs_content > *:last-child {
    flex-shrink: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* Баннер в стиле page-novostroy: слайдер + заголовок поверх */
.object-detail-page .banner.object-detail-banner {
  position: relative;
  margin-bottom: var(--gap-x);
  height: 100vh;
  min-height: 640px;
  max-height: 1080px;
  overflow: hidden;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    margin-bottom: 0;
  }
}
.object-detail-page .banner.object-detail-banner .overlay {
  background: var(--lg-black-double);
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 24.375rem;
    bottom: auto;
    background: transparent;
  }
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_slider {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  border-radius: 0;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_slider {
    position: relative;
    width: 100%;
    height: 24.375rem;
    flex-shrink: 0;
  }
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_slider .swiper-wrapper {
  height: 100%;
  align-items: stretch;
  box-sizing: border-box;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_slider .swiper-slide {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  box-sizing: border-box;
  border-radius: 0;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_slider {
    position: relative;
    min-height: 24.375rem;
  }
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_no-image {
  position: absolute;
  inset: 0;
  background: var(--gray-300, #ddd);
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_no-image {
    position: relative;
    height: 24.375rem;
    flex-shrink: 0;
  }
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs {
  position: absolute;
  top: calc(var(--height-large, 3.5rem) + var(--gap-m) + 1rem);
  left: 0;
  right: 0;
  z-index: 20;
  max-width: 90rem;
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content > * {
  flex-shrink: 0;
  color: #fff;
  font-size: 0.75rem;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content > *:last-child {
  flex-shrink: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content a {
  color: rgba(255, 255, 255, 0.95);
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content a:hover {
  color: #fff;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_separator {
  color: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs {
    top: calc(var(--height-large-mob, 3rem) + var(--gap-s) + 0.75rem);
    padding: 0 0.5rem;
    pointer-events: none;
    opacity: 0;
  }
  .object-detail-page .banner.object-detail-banner .object-detail-banner_breadcrumbs .breadcrumbs_content a {
    pointer-events: auto;
  }
}
.object-detail-page .banner.object-detail-banner .banner_content {
  position: absolute;
  bottom: var(--gap-x);
  left: 0;
  right: 0;
  max-width: 90rem;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0;
  z-index: 10;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content {
    position: relative;
    padding: var(--gap-m) 0.5rem 1.5rem;
    bottom: auto;
    margin-top: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content .btn,
  .object-detail-page .banner.object-detail-banner .banner_content .banner_content-row_actions,
  .object-detail-page .banner.object-detail-banner .banner_content .estate_card-broker {
    pointer-events: auto;
  }
}
.object-detail-page .banner.object-detail-banner .banner_title {
  padding-bottom: var(--gap-l);
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_title {
    padding-bottom: var(--gap-s);
  }
}
.object-detail-page .banner.object-detail-banner .banner_title > * {
  color: var(--white);
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_title > * {
    color: var(--gray-900);
  }
}
.object-detail-page .banner.object-detail-banner .banner_title h1 {
  font-size: 2.5rem;
  font-weight: 500;
  line-height: 1;
  max-width: 58.5rem;
  padding-bottom: 1rem;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_title h1 {
    font-size: 2rem;
    max-width: 100%;
  }
}
.object-detail-page .banner.object-detail-banner .banner_title .banner_price {
  font-size: var(--fz-large);
  font-weight: var(--fw-regular);
  margin: 0;
  padding-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5rem;
}
.object-detail-page .banner.object-detail-banner .banner_title .banner_price .banner_price-actual {
  font-size: var(--fz-more-large);
  line-height: 1;
}
.object-detail-page .banner.object-detail-banner .banner_title .banner_price .banner_price-unit {
  font-size: var(--fz-medium);
  line-height: 1;
  opacity: 0.9;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_title .banner_price .banner_price-unit {
    display: block;
    opacity: 1;
    color: var(--gray-600);
  }
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_title .banner_price {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
    font-size: var(--fz-base);
  }
  .object-detail-page .banner.object-detail-banner .banner_title .banner_price .banner_price-actual {
    margin-bottom: 0.125rem;
  }
}
.object-detail-page .banner.object-detail-banner .banner_place {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-size: var(--fz-medium);
  color: rgba(255, 255, 255, 0.9);
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_place {
    color: var(--gray-600);
  }
}
.object-detail-page .banner.object-detail-banner .banner_content-row {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--gap-m);
  margin-top: var(--gap-m);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content-row {
    margin-top: 0.25rem;
    flex-wrap: nowrap;
  }
}
.object-detail-page .banner.object-detail-banner .banner_content-row_actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content-row_actions {
    flex: 1;
    min-width: 0;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content-row_actions .btn {
    flex: 1;
    min-width: 0;
    width: auto;
  }
}
.object-detail-page .banner.object-detail-banner .btn {
  width: max-content;
  margin-top: 0;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_gallery-btn {
  width: 3.875rem;
  height: 3.875rem;
  padding: 0;
  border: none;
  border-radius: var(--br-medium);
  background: var(--white);
  color: var(--gray-900);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: opacity 0.2s ease;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_gallery-btn:hover {
  opacity: 0.9;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_gallery-btn svg {
  width: 1.25rem;
  height: 1.25rem;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_gallery-btn {
    width: var(--height-medium);
    height: var(--height-medium);
  }
}

/* Блок брокера в слайдере — компактные отступы, контент чуть крупнее, телефон между именем и иконкой */
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 0.625rem 0.625rem;
  box-sizing: border-box;
  background: #fff;
  border-radius: 0.25rem;
  cursor: pointer;
  flex-shrink: 0;
  width: max-content;
  /* Кнопка телефона — как у estate_card в мобильной версии: круглая зелёная с иконкой */
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_group {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  flex-direction: row;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_img {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 2.75rem;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--gray-200);
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_name {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  line-height: 1.2;
  min-width: 0;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_name span {
  font-size: 0.9375rem;
  font-weight: 500;
  color: var(--gray-900);
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_name small {
  font-size: 0.75rem;
  color: var(--gray-600);
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_button .btn-contact {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border-radius: 2.75rem;
  background-color: var(--primary);
  background-image: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M5.125%200.781241L6.375%203.78124C6.59375%204.28124%206.46875%204.87499%206.03125%205.21874L4.5%206.49999C5.53125%208.68749%207.3125%2010.4687%209.5%2011.5L10.7812%209.96874C11.125%209.53124%2011.7188%209.40624%2012.2188%209.62499L15.2188%2010.875C15.8125%2011.0937%2016.0938%2011.75%2015.9375%2012.3437L15.1875%2015.0937C15.0312%2015.625%2014.5625%2016%2014%2016C6.25%2016%200%209.74999%200%201.99999C0%201.43749%200.375%200.968741%200.90625%200.812491L3.65625%200.0624906C4.25%20-0.0937594%204.90625%200.187491%205.125%200.781241Z'%20fill='white'/%3E%3C/svg%3E%0A");
  background-size: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all 350ms ease;
  flex-shrink: 0;
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_button .btn-contact:hover {
  background-color: var(--primary-hover);
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_broker .estate_card-broker_button .btn-contact.btn-contact_icon svg {
  display: none;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_broker {
    display: none;
  }
}

/* Навигация и пагинация слайдера в баннере page-object — круглые белые кнопки, тёмные иконки */
.object-detail-page .banner.object-detail-banner {
  /* Пагинация в ряду — по центру, отступы и лёгкая прозрачность; в мобилке скрыта */
}
.object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav {
    top: auto;
    bottom: 0.75rem;
    left: 0;
    right: 0;
    transform: none;
    justify-content: flex-end;
    padding-right: 0.5rem;
    gap: 0.25rem;
  }
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .swiper-button-prev:hover,
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .swiper-button-next:hover,
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .slider-prev:hover,
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .slider-next:hover {
    opacity: 1;
    scale: 1;
  }
}
.object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav > .swiper-button-prev.slider-prev,
.object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .swiper-button-next.slider-next {
  border-radius: 50%;
  background-color: var(--white);
  background-image: url("data:image/svg+xml,%3Csvg%20width='14'%20height='12'%20viewBox='0%200%2014%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M13.8516%206.35938L8.35156%2011.8594C8.16406%2012.0469%207.82031%2012.0469%207.63281%2011.8594C7.44531%2011.6719%207.44531%2011.3281%207.63281%2011.1406L12.2891%206.48438H0.507812C0.226562%206.48438%200.0078125%206.26562%200.0078125%205.98438C0.0078125%205.73438%200.226562%205.48438%200.507812%205.48438H12.2891L7.63281%200.859375C7.44531%200.671875%207.44531%200.328125%207.63281%200.140625C7.82031%20-0.046875%208.16406%20-0.046875%208.35156%200.140625L13.8516%205.64062C14.0391%205.82812%2014.0391%206.17188%2013.8516%206.35938Z'%20fill='%23222222'/%3E%3C/svg%3E");
  backdrop-filter: none;
}
.object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav > .swiper-button-prev.slider-prev {
  pointer-events: auto;
  margin: 0;
  position: absolute;
  left: 1.5rem;
  top: 50%;
  transform: translateY(-50%) rotate(180deg);
  z-index: 6;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav > .swiper-button-prev.slider-prev {
    position: static;
    transform: rotate(180deg);
    left: auto;
    top: auto;
    width: 2.25rem;
    height: 2.25rem;
    background-size: 0.75rem;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav > .swiper-button-prev.slider-prev {
    left: auto;
  }
}
.object-detail-page .banner.object-detail-banner .object-detail-banner_nav-right {
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: auto;
  z-index: 6;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .object-detail-banner_nav-right {
    position: static;
    right: auto;
    top: auto;
    transform: none;
  }
}
.object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .swiper-button-next.slider-next {
  pointer-events: auto;
  margin: 0;
  position: static;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .show-about-page_gallery-nav .swiper-button-next.slider-next {
    width: 2.25rem;
    height: 2.25rem;
    background-size: 0.75rem;
  }
}
.object-detail-page .banner.object-detail-banner .show-about-gallery-pagination.object-detail-banner_pagination {
  z-index: 20;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
}
.object-detail-page .banner.object-detail-banner .show-about-gallery-pagination.object-detail-banner_pagination .swiper-pagination-current,
.object-detail-page .banner.object-detail-banner .show-about-gallery-pagination.object-detail-banner_pagination .swiper-pagination-total {
  opacity: 1;
}
.object-detail-page .banner.object-detail-banner .banner_content-row .show-about-gallery-pagination.object-detail-banner_pagination {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.375rem 0.625rem;
  font-size: 0.75rem;
  line-height: 1;
  min-height: 0;
  pointer-events: none;
  opacity: 0.85;
}
.object-detail-page .banner.object-detail-banner .banner_content-row .show-about-gallery-pagination.object-detail-banner_pagination .swiper-pagination-current,
.object-detail-page .banner.object-detail-banner .banner_content-row .show-about-gallery-pagination.object-detail-banner_pagination .swiper-pagination-total {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .object-detail-page .banner.object-detail-banner .banner_content-row .show-about-gallery-pagination.object-detail-banner_pagination {
    display: none;
  }
}

.page-object.object-detail {
  overflow: visible;
  /* когда брокер в фиксе — поднимаем секцию выше «Похожие объекты» по z-index */
}
@media screen and (max-width: 767px) {
  .page-object.object-detail {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  body.broker-bar-fixed .page-object.object-detail {
    position: relative;
    z-index: 300;
  }
}
.page-object.object-detail.has-similar .object-detail-inner {
  padding-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .page-object.object-detail.has-similar .object-detail-inner {
    padding-bottom: var(--gap-s);
  }
}
.page-object.object-detail .object-detail-inner {
  padding: 1.25rem var(--gap-l) var(--gap-xxl);
  max-width: 93rem;
  margin: 0 auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .object-detail-inner {
    max-width: 100%;
    display: flex;
    flex-direction: column;
    padding-top: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: var(--gap-x);
    gap: 0.5rem;
  }
}
@media screen and (max-width: 767px) {
  body.broker-bar-fixed .page-object.object-detail .object-detail-inner {
    padding-bottom: 0;
  }
}
.page-object.object-detail .object-detail_header {
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .object-detail_header {
    margin-bottom: 1.5rem;
  }
}
.page-object.object-detail .show-about-page {
  display: flex;
  gap: 3rem;
  align-items: flex-start;
  justify-content: center;
  overflow: visible;
  max-width: 68rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page {
    flex-direction: column;
    gap: 0.5rem;
    max-width: 100%;
  }
}
.page-object.object-detail .show-about-page_main {
  flex: 1;
  min-width: 0;
  max-width: 45rem;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_main {
    max-width: 100%;
  }
}
.page-object.object-detail .show-about-page_content {
  background: #fff;
  padding: 1.5rem;
  border-radius: var(--gap-s);
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_content {
    padding: 1rem;
  }
}
.page-object.object-detail .show-about-page_sidebar {
  flex: 0 0 20rem;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_sidebar {
    flex: none;
    width: 100%;
    max-width: 100%;
  }
}
.page-object.object-detail .show-about-page_title {
  font-size: 2.5rem;
  line-height: 1.2;
  margin-bottom: 1rem;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_title {
    font-size: 1.5rem;
  }
}
.page-object.object-detail .show-about-page_place {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  font-size: var(--fz-medium);
  color: var(--gray-600);
}
.page-object.object-detail .show-about-page_price {
  margin-bottom: 0;
}
.page-object.object-detail .show-about-page_price-actual {
  font-size: var(--fz-more-large);
  line-height: 1;
  margin-bottom: 0.25rem;
}
.page-object.object-detail .show-about-page_price-unit {
  font-size: var(--fz-medium);
  color: var(--gray-600);
}
.page-object.object-detail .show-about-page_text {
  margin-bottom: 2rem;
}
.page-object.object-detail .show-about-page_text p {
  margin-bottom: 0.75rem;
}
.page-object.object-detail .show-about-page_text b {
  font-weight: 600;
}
.page-object.object-detail .show-about-page_text ul {
  padding-left: 1.25rem;
  margin-bottom: 0.75rem;
}
.page-object.object-detail .show-about-page_text ul li {
  list-style: disc;
}
.page-object.object-detail .show-about-page_gallery {
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_gallery {
    margin-bottom: 1.5rem;
  }
}
.page-object.object-detail .show-about-page_gallery-slider {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: var(--gap-s);
  max-width: 100%;
  /* Фиксированная высота — слайды не смещаются при переключении */
}
.page-object.object-detail .show-about-page_gallery-slider .swiper-wrapper {
  height: 100%;
  align-items: stretch;
}
.page-object.object-detail .show-about-page_gallery-slider .swiper-slide {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gray-200, #eee);
}
.page-object.object-detail .show-about-page_gallery-slider .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_gallery-slider {
    max-width: 100%;
    min-height: 0;
  }
}
.page-object.object-detail .show-about-page_gallery-nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  pointer-events: none;
  z-index: 5;
  display: flex;
  justify-content: space-between;
  padding: 0 var(--gap-s);
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_gallery-nav {
    gap: 0.25rem;
  }
}
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-prev,
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-next {
  pointer-events: auto;
  width: 3rem;
  height: 3rem;
  margin: 0;
  position: static;
}
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-prev::after,
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-next::after {
  display: none;
}
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-prev svg,
.page-object.object-detail .show-about-page_gallery-nav .swiper-button-next svg {
  width: 100%;
  height: 100%;
  display: block;
}
.page-object.object-detail .show-about-gallery-pagination {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  color: #fff;
  font-size: 0.875rem;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
.page-object.object-detail .show-about-page_sidebar {
  position: sticky;
  top: 1.5rem;
  align-self: flex-start;
  background: #fff;
  padding: 1.5rem;
  border-radius: var(--gap-s);
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_sidebar {
    position: static;
    order: -1;
    padding: 1rem;
  }
  .page-object.object-detail .show-about-page_sidebar.broker-fixed {
    position: fixed;
    bottom: calc(0.5rem + env(safe-area-inset-bottom, 0));
    left: 0.5rem;
    right: 0.5rem;
    top: auto;
    width: auto;
    max-width: calc(100vw - 1rem);
    margin: 0 auto;
    box-sizing: border-box;
    z-index: 200;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
  }
  .page-object.object-detail .show-about-page_sidebar.broker-fixed .estate_card-broker {
    width: auto;
    max-width: 100%;
    min-width: 0;
  }
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .show-about-page_sidebar-placeholder {
    flex-shrink: 0;
    order: -1;
  }
}
.page-object.object-detail .estate_card-broker {
  display: flex;
  width: 12.5rem;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1.5rem;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .estate_card-broker {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
  }
}
.page-object.object-detail .estate_card-broker .estate_card-broker_group {
  display: flex;
  gap: 0.5rem;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .estate_card-broker .estate_card-broker_group {
    flex-direction: row;
    align-items: center;
  }
}
.page-object.object-detail .estate_card-broker .estate_card-broker_img {
  width: 5rem;
  height: 5rem;
  border-radius: 5rem;
  background: var(--gray-200);
  position: relative;
  overflow: hidden;
  display: block;
}
.page-object.object-detail .estate_card-broker .estate_card-broker_img::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg%20width='22'%20height='24'%20viewBox='0%200%2022%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M11.4453%2012C9.28906%2012%207.32031%2010.875%206.24219%209C5.16406%207.17188%205.16406%204.875%206.24219%203C7.32031%201.17188%209.28906%200%2011.4453%200C13.5547%200%2015.5234%201.17188%2016.6016%203C17.6797%204.875%2017.6797%207.17188%2016.6016%209C15.5234%2010.875%2013.5547%2012%2011.4453%2012ZM10.7422%2016.875L9.85156%2015.4219C9.57031%2014.9062%209.89844%2014.25%2010.5078%2014.25H12.3359C12.9453%2014.25%2013.2734%2014.9062%2012.9922%2015.4219L12.1016%2016.875L13.6953%2022.6875L15.3828%2015.7969C15.4766%2015.4219%2015.8516%2015.1406%2016.2266%2015.2344C19.5078%2016.0781%2021.9453%2019.0312%2021.9453%2022.5938C21.9453%2023.3906%2021.2891%2024%2020.4922%2024H14.3047C14.2109%2024%2014.1172%2024%2014.0234%2023.9531L14.0703%2024H8.82031V23.9531C8.72656%2024%208.63281%2024%208.53906%2024H2.35156C1.55469%2024%200.945312%2023.3906%200.945312%2022.5938C0.945312%2019.0312%203.33594%2016.0781%206.61719%2015.2344C7.03906%2015.1406%207.36719%2015.4219%207.46094%2015.7969L9.14844%2022.6875L10.7422%2016.875Z'%20fill='white'/%3E%3C/svg%3E%0A");
  background-size: 2.5rem;
  background-position: center;
  background-repeat: no-repeat;
}
.page-object.object-detail .estate_card-broker .estate_card-broker_img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .estate_card-broker .estate_card-broker_img {
    width: 3rem;
    height: 3rem;
  }
  .page-object.object-detail .estate_card-broker .estate_card-broker_img::after {
    background-size: 1.5rem;
  }
}
.page-object.object-detail .estate_card-broker .estate_card-broker_name {
  display: flex;
  flex-direction: column;
}
.page-object.object-detail .estate_card-broker .estate_card-broker_name span {
  font-size: 1rem;
  font-weight: 500;
}
.page-object.object-detail .estate_card-broker .estate_card-broker_name small {
  color: var(--gray-750);
  font-size: 0.75rem;
}
.page-object.object-detail .estate_card-broker .btn-contact {
  height: 2.25rem;
  border-radius: 0.25rem;
  background-color: var(--gray-200);
  color: var(--gray-900);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 1rem;
  font-weight: 500;
  width: 100%;
  font-size: 1rem;
  cursor: pointer;
  transition: all 350ms ease;
}
.page-object.object-detail .estate_card-broker .btn-contact:hover {
  background-color: var(--gray-100);
}
@media screen and (max-width: 767px) {
  .page-object.object-detail .estate_card-broker .btn-contact {
    text-indent: -9999px;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 2.75rem;
    background-color: var(--primary);
    background-image: url("data:image/svg+xml,%3Csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M5.125%200.781241L6.375%203.78124C6.59375%204.28124%206.46875%204.87499%206.03125%205.21874L4.5%206.49999C5.53125%208.68749%207.3125%2010.4687%209.5%2011.5L10.7812%209.96874C11.125%209.53124%2011.7188%209.40624%2012.2188%209.62499L15.2188%2010.875C15.8125%2011.0937%2016.0938%2011.75%2015.9375%2012.3437L15.1875%2015.0937C15.0312%2015.625%2014.5625%2016%2014%2016C6.25%2016%200%209.74999%200%201.99999C0%201.43749%200.375%200.968741%200.90625%200.812491L3.65625%200.0624906C4.25%20-0.0937594%204.90625%200.187491%205.125%200.781241Z'%20fill='white'/%3E%3C/svg%3E%0A");
    background-size: 1rem;
    background-position: center;
    background-repeat: no-repeat;
  }
}

/* Секция «Похожие объекты» — те же карточки что в списке */
.object-detail-similar.popular-estate {
  padding-top: 0;
  padding-bottom: var(--gap-xxl);
  background: var(--gray-100);
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate {
    padding-bottom: var(--gap-x);
  }
}
.object-detail-similar.popular-estate .wrapper {
  max-width: 93rem;
  margin: 0 auto;
  padding: 0 var(--gap-l);
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate .wrapper {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate .popular-estate_content {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate .estate_card {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate .estate_img-slider {
    width: 100%;
    max-width: 100%;
  }
}
.object-detail-similar.popular-estate h2 {
  padding-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .object-detail-similar.popular-estate h2 {
    padding: var(--gap-x) 0.5rem var(--gap-l);
  }
}

.contacts-page .contacts {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts {
    padding-bottom: var(--gap-x);
  }
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .wrapper {
    padding-left: var(--gap-m);
    padding-right: var(--gap-m);
  }
}
.contacts-page .contacts .breadcrumbs_content {
  padding: var(--gap-xs) 0 0;
}
.contacts-page .contacts .section-headline {
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .section-headline {
    margin-bottom: var(--gap-l);
  }
}
.contacts-page .contacts .contacts_info {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--gap-l);
  margin-bottom: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .contacts_info {
    grid-template-columns: 1fr;
    gap: var(--gap-m);
    margin-bottom: var(--gap-l);
    background-color: var(--white);
    padding: var(--gap-l);
    border-radius: var(--br-large);
    margin-bottom: var(--gap-m);
  }
}
.contacts-page .contacts .contacts_info-col {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .contacts_info-col {
    gap: var(--gap-xxs);
  }
}
.contacts-page .contacts .contacts_info-label {
  font-size: var(--fz-medium);
  font-weight: 500;
  color: var(--gray-600);
}
.contacts-page .contacts .contacts_info-value {
  font-size: var(--fz-base);
  color: var(--black);
}
.contacts-page .contacts .contacts_info-value a {
  color: inherit;
  text-decoration: none;
  transition: var(--transition-base);
}
.contacts-page .contacts .contacts_info-value a:hover {
  color: var(--primary);
}
.contacts-page .contacts .deluxe-office_content {
  margin-top: 0;
}
.contacts-page .contacts .contacts_legal {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--gap-l);
  margin-top: var(--gap-x);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .contacts_legal {
    grid-template-columns: 1fr;
    gap: var(--gap-m);
    margin-top: var(--gap-l);
  }
}
.contacts-page .contacts .contacts_legal-col {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
}
@media screen and (max-width: 767px) {
  .contacts-page .contacts .contacts_legal-col {
    gap: var(--gap-xxs);
  }
}
.contacts-page .contacts .contacts_legal-label {
  font-size: var(--fz-medium);
  font-weight: 500;
  color: var(--gray-600);
}
.contacts-page .contacts .contacts_legal-value {
  font-size: var(--fz-base);
  color: var(--black);
}

.policy-page .breadcrumbs_content {
  padding-top: var(--gap-l);
  padding-bottom: var(--gap-s);
}
@media screen and (max-width: 767px) {
  .policy-page .breadcrumbs_content {
    padding: 0.5rem 0 var(--gap-s);
  }
}
.policy-page .policy {
  padding-bottom: var(--gap-xxl);
}
@media screen and (max-width: 767px) {
  .policy-page .policy {
    padding-bottom: var(--gap-x);
  }
}
.policy-page .policy_content {
  max-width: 45rem;
}
.policy-page .policy_title {
  font-size: var(--fz-h1) !important;
  line-height: var(--lh-title);
  font-weight: var(--fw-medium);
  color: var(--black);
  margin: 0 0 var(--gap-xl) 0 !important;
}
@media screen and (max-width: 767px) {
  .policy-page .policy_title {
    font-size: var(--fz-h1-mob) !important;
    margin-bottom: var(--gap-l) !important;
  }
}
.policy-page .policy_text {
  font-size: var(--fz-large);
  line-height: 1.6;
  color: var(--gray-750);
}
@media screen and (max-width: 767px) {
  .policy-page .policy_text {
    font-size: var(--fz-base);
  }
}
.policy-page .policy_text h2,
.policy-page .policy_text .wp-block-heading h2,
.policy-page .policy_text h2.wp-block-heading {
  font-size: var(--fz-h3) !important;
  line-height: 1.25;
  font-weight: var(--fw-medium);
  color: var(--black);
  margin: var(--gap-xl) 0 var(--gap-l) 0 !important;
}
.policy-page .policy_text h2:first-child,
.policy-page .policy_text .wp-block-heading h2:first-child,
.policy-page .policy_text h2.wp-block-heading:first-child {
  margin-top: 0 !important;
}
@media screen and (max-width: 767px) {
  .policy-page .policy_text h2,
  .policy-page .policy_text .wp-block-heading h2,
  .policy-page .policy_text h2.wp-block-heading {
    font-size: var(--fz-more-large) !important;
    margin-top: var(--gap-x) !important;
    margin-bottom: var(--gap-m) !important;
  }
}
.policy-page .policy_text h3,
.policy-page .policy_text .wp-block-heading h3,
.policy-page .policy_text h3.wp-block-heading {
  font-size: var(--fz-more-large) !important;
  line-height: 1.25;
  font-weight: var(--fw-medium);
  color: var(--gray-900);
  margin: var(--gap-x) 0 var(--gap-m) 0 !important;
}
@media screen and (max-width: 767px) {
  .policy-page .policy_text h3,
  .policy-page .policy_text .wp-block-heading h3,
  .policy-page .policy_text h3.wp-block-heading {
    font-size: var(--fz-large) !important;
    margin-top: var(--gap-l) !important;
    margin-bottom: var(--gap-s) !important;
  }
}
.policy-page .policy_text h4, .policy-page .policy_text h5, .policy-page .policy_text h6 {
  font-size: var(--fz-large) !important;
  font-weight: var(--fw-medium);
  color: var(--gray-900);
  margin: var(--gap-l) 0 var(--gap-m) 0 !important;
}
.policy-page .policy_text p,
.policy-page .policy_text .wp-block-paragraph {
  font-size: inherit;
  line-height: 1.6;
  font-weight: var(--fw-regular);
  color: inherit;
  margin: 0 0 var(--gap-l) 0 !important;
}
.policy-page .policy_text p:last-child,
.policy-page .policy_text .wp-block-paragraph:last-child {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  .policy-page .policy_text p,
  .policy-page .policy_text .wp-block-paragraph {
    margin-bottom: var(--gap-m) !important;
  }
}
.policy-page .policy_text ul,
.policy-page .policy_text ol,
.policy-page .policy_text .wp-block-list {
  margin: 0 0 var(--gap-l) 0 !important;
  padding: 0 0 0 var(--gap-x) !important;
  list-style-position: outside;
}
@media screen and (max-width: 767px) {
  .policy-page .policy_text ul,
  .policy-page .policy_text ol,
  .policy-page .policy_text .wp-block-list {
    margin-bottom: var(--gap-m) !important;
    padding-left: var(--gap-l) !important;
  }
}
.policy-page .policy_text ul,
.policy-page .policy_text .wp-block-list ul {
  list-style-type: disc;
}
.policy-page .policy_text ol {
  list-style-type: decimal;
}
.policy-page .policy_text li {
  margin-bottom: var(--gap-s);
  font-size: inherit;
  line-height: 1.6;
}
.policy-page .policy_text li:last-child {
  margin-bottom: 0;
}
.policy-page .policy_text a {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 0.2s ease;
}
.policy-page .policy_text a:hover {
  color: var(--primary-hover);
}
.policy-page .policy_text strong,
.policy-page .policy_text b {
  font-weight: var(--fw-medium);
  color: var(--gray-900);
}
.policy-page .policy_text blockquote,
.policy-page .policy_text .wp-block-quote {
  margin: var(--gap-l) 0;
  padding-left: var(--gap-l);
  border-left: 3px solid var(--gray-200);
}