

/* Start:/local/templates/gurus/assets/css/app.css?1789486961354413*/
@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Exo+2:wght@300;500&display=swap);
.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle; }

.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  user-select: none;
  -webkit-user-select: none; }

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.select2-container .select2-selection--single .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em; }

.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px; }

.select2-container .select2-selection--multiple {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  user-select: none;
  -webkit-user-select: none; }

.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline;
  list-style: none;
  padding: 0; }

.select2-container .select2-selection--multiple .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em; }

.select2-container .select2-search--inline .select2-search__field {
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  margin-left: 5px;
  padding: 0;
  max-width: 100%;
  resize: none;
  height: 18px;
  vertical-align: bottom;
  font-family: sans-serif;
  overflow: hidden;
  word-break: keep-all; }

.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none; }

.select2-dropdown {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051; }

.select2-results {
  display: block; }

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0; }

.select2-results__option {
  padding: 6px;
  user-select: none;
  -webkit-user-select: none; }

.select2-results__option--selectable {
  cursor: pointer; }

.select2-container--open .select2-dropdown {
  left: 0; }

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-search--dropdown {
  display: block;
  padding: 4px; }

.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  box-sizing: border-box; }

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none; }

.select2-search--dropdown.select2-search--hide {
  display: none; }

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0); }

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important; }

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px; }

.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
  padding-right: 0px; }

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999; }

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px; }

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto; }

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none; }

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px; }

.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  padding-bottom: 5px;
  padding-right: 5px;
  position: relative; }

.select2-container--default .select2-selection--multiple.select2-selection--clearable {
  padding-right: 25px; }

.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  font-weight: bold;
  height: 20px;
  margin-right: 10px;
  margin-top: 5px;
  position: absolute;
  right: 0;
  padding: 1px; }

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  box-sizing: border-box;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
  padding-left: 20px;
  position: relative;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap; }

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px; }

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-right: 1px solid #aaa;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #999;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
  position: absolute;
  left: 0;
  top: 0; }

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover, .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
  background-color: #f1f1f1;
  color: #333;
  outline: none; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  border-left: 1px solid #aaa;
  border-right: none;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__clear {
  float: left;
  margin-left: 10px;
  margin-right: auto; }

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0; }

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default; }

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none; }

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa; }

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield; }

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em; }

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em; }

.select2-container--default .select2-results__option--group {
  padding: 0; }

.select2-container--default .select2-results__option--disabled {
  color: #999; }

.select2-container--default .select2-results__option--selected {
  background-color: #ddd; }

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #5897fb;
  color: white; }

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: linear-gradient(to bottom, #fff 50%, #eee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }

.select2-container--classic .select2-selection--single:focus {
  border: 1px solid #5897fb; }

.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px; }

.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px; }

.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999; }

.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: linear-gradient(to bottom, #eee 50%, #ccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }

.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
  float: left; }

.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto; }

.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb; }

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none; }

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: linear-gradient(to bottom, #fff 0%, #eee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: linear-gradient(to bottom, #eee 50%, #fff 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }

.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  outline: 0;
  padding-bottom: 5px;
  padding-right: 5px; }

.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid #5897fb; }

.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #888;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px; }

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
  outline: none; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px; }

.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb; }

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0; }

.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none; }

.select2-container--classic .select2-dropdown {
  background-color: #fff;
  border: 1px solid transparent; }

.select2-container--classic .select2-dropdown--above {
  border-bottom: none; }

.select2-container--classic .select2-dropdown--below {
  border-top: none; }

.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto; }

.select2-container--classic .select2-results__option--group {
  padding: 0; }

.select2-container--classic .select2-results__option--disabled {
  color: grey; }

.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #3875d7;
  color: #fff; }

.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px; }

.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb; }

/**
 * Swiper 11.0.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 5, 2024
 */
@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal; }

:root {
  --swiper-theme-color: #007aff;
  /*
    --swiper-preloader-color: var(--swiper-theme-color);
    --swiper-wrapper-transition-timing-function: initial;
    */ }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */ }
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none; }

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory; }

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory; }

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none; }

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none; }

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999; }

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always; }

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before); }

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after); }

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before); }

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after); }

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15); }

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

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

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

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

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

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Slide styles end */
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */ }

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color)); }
  .swiper-button-prev.swiper-button-disabled,
  .swiper-button-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none; }
  .swiper-button-prev.swiper-button-hidden,
  .swiper-button-next.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none; }
  .swiper-navigation-disabled .swiper-button-prev, .swiper-navigation-disabled
  .swiper-button-next {
    display: none !important; }
  .swiper-button-prev svg,
  .swiper-button-next svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center; }
  .swiper-rtl .swiper-button-prev svg, .swiper-rtl
  .swiper-button-next svg {
    transform: rotate(180deg); }

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

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

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

/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1; }

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto; }
  .swiper-button-next:after,
  .swiper-rtl .swiper-button-prev:after {
    content: 'next'; }

/* Navigation font end */
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */ }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10; }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0; }
  .swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
    display: none !important; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative; }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1); }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1); }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66); }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33); }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66); }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33); }

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2); }
  button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
            appearance: none; }
  .swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer; }
  .swiper-pagination-bullet:only-child {
    display: none !important; }

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color)); }

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0); }
  .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block; }
  .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px; }
    .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
    .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
      display: inline-block;
      transition: 200ms transform, 200ms top; }

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px); }

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap; }
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform, 200ms left; }

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right; }

/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit); }

/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute; }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top; }
  .swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top; }
  .swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal,
  .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0; }
  .swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical,
  .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0; }

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

:root {
  --f-spinner-width: 36px;
  --f-spinner-height: 36px;
  --f-spinner-color-1: rgba(0, 0, 0, 0.1);
  --f-spinner-color-2: rgba(17, 24, 28, 0.8);
  --f-spinner-stroke: 2.75; }

.f-spinner {
  margin: auto;
  padding: 0;
  width: var(--f-spinner-width);
  height: var(--f-spinner-height); }

.f-spinner svg {
  width: 100%;
  height: 100%;
  vertical-align: top;
  animation: f-spinner-rotate 2s linear infinite; }

.f-spinner svg * {
  stroke-width: var(--f-spinner-stroke);
  fill: none; }

.f-spinner svg *:first-child {
  stroke: var(--f-spinner-color-1); }

.f-spinner svg *:last-child {
  stroke: var(--f-spinner-color-2);
  animation: f-spinner-dash 2s ease-in-out infinite; }

@keyframes f-spinner-rotate {
  100% {
    transform: rotate(360deg); } }

@keyframes f-spinner-dash {
  0% {
    stroke-dasharray: 1,150;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 90,150;
    stroke-dashoffset: -35; }
  100% {
    stroke-dasharray: 90,150;
    stroke-dashoffset: -124; } }

.f-throwOutUp {
  animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutUp; }

.f-throwOutDown {
  animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutDown; }

@keyframes f-throwOutUp {
  to {
    transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
    opacity: 0; } }

@keyframes f-throwOutDown {
  to {
    transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
    opacity: 0; } }

.f-zoomInUp {
  animation: var(--f-transition-duration, 0.2s) ease 0.1s both f-zoomInUp; }

.f-zoomOutDown {
  animation: var(--f-transition-duration, 0.2s) ease both f-zoomOutDown; }

@keyframes f-zoomInUp {
  from {
    transform: scale(0.975) translate3d(0, 16px, 0);
    opacity: 0; }
  to {
    transform: scale(1) translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes f-zoomOutDown {
  to {
    transform: scale(0.975) translate3d(0, 16px, 0);
    opacity: 0; } }

.f-fadeIn {
  animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
  z-index: 2; }

.f-fadeOut {
  animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
  z-index: 1; }

@keyframes f-fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes f-fadeOut {
  100% {
    opacity: 0; } }

.f-fadeFastIn {
  animation: var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;
  z-index: 2; }

.f-fadeFastOut {
  animation: var(--f-transition-duration, 0.1s) ease-out both f-fadeFastOut;
  z-index: 2; }

@keyframes f-fadeFastIn {
  0% {
    opacity: .75; }
  100% {
    opacity: 1; } }

@keyframes f-fadeFastOut {
  100% {
    opacity: 0; } }

.f-fadeSlowIn {
  animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;
  z-index: 2; }

.f-fadeSlowOut {
  animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;
  z-index: 1; }

@keyframes f-fadeSlowIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes f-fadeSlowOut {
  100% {
    opacity: 0; } }

.f-crossfadeIn {
  animation: var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;
  z-index: 2; }

.f-crossfadeOut {
  animation: calc(var(--f-transition-duration, 0.2s)*.5) linear 0.1s both f-crossfadeOut;
  z-index: 1; }

@keyframes f-crossfadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes f-crossfadeOut {
  100% {
    opacity: 0; } }

.f-slideIn.from-next {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext; }

.f-slideIn.from-prev {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev; }

.f-slideOut.to-next {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext; }

.f-slideOut.to-prev {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev; }

@keyframes f-slideInPrev {
  0% {
    transform: translateX(100%); }
  100% {
    transform: translate3d(0, 0, 0); } }

@keyframes f-slideInNext {
  0% {
    transform: translateX(-100%); }
  100% {
    transform: translate3d(0, 0, 0); } }

@keyframes f-slideOutNext {
  100% {
    transform: translateX(-100%); } }

@keyframes f-slideOutPrev {
  100% {
    transform: translateX(100%); } }

.f-classicIn.from-next {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;
  z-index: 2; }

.f-classicIn.from-prev {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;
  z-index: 2; }

.f-classicOut.to-next {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;
  z-index: 1; }

.f-classicOut.to-prev {
  animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;
  z-index: 1; }

@keyframes f-classicInNext {
  0% {
    transform: translateX(-75px);
    opacity: 0; }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes f-classicInPrev {
  0% {
    transform: translateX(75px);
    opacity: 0; }
  100% {
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes f-classicOutNext {
  100% {
    transform: translateX(-75px);
    opacity: 0; } }

@keyframes f-classicOutPrev {
  100% {
    transform: translateX(75px);
    opacity: 0; } }

:root {
  --f-button-width: 40px;
  --f-button-height: 40px;
  --f-button-border: 0;
  --f-button-border-radius: 0;
  --f-button-color: #374151;
  --f-button-bg: #f8f8f8;
  --f-button-hover-bg: #e0e0e0;
  --f-button-active-bg: #d0d0d0;
  --f-button-shadow: none;
  --f-button-transition: all 0.15s ease;
  --f-button-transform: none;
  --f-button-svg-width: 20px;
  --f-button-svg-height: 20px;
  --f-button-svg-stroke-width: 1.5;
  --f-button-svg-fill: none;
  --f-button-svg-filter: none;
  --f-button-svg-disabled-opacity: 0.65; }

.f-button {
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: content-box;
  position: relative;
  margin: 0;
  padding: 0;
  width: var(--f-button-width);
  height: var(--f-button-height);
  border: var(--f-button-border);
  border-radius: var(--f-button-border-radius);
  color: var(--f-button-color);
  background: var(--f-button-bg);
  box-shadow: var(--f-button-shadow);
  pointer-events: all;
  cursor: pointer;
  transition: var(--f-button-transition); }

@media (hover: hover) {
  .f-button:hover:not([disabled]) {
    color: var(--f-button-hover-color);
    background-color: var(--f-button-hover-bg); } }

.f-button:active:not([disabled]) {
  background-color: var(--f-button-active-bg); }

.f-button:focus:not(:focus-visible) {
  outline: none; }

.f-button:focus-visible {
  outline: none;
  box-shadow: inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color)); }

.f-button svg {
  width: var(--f-button-svg-width);
  height: var(--f-button-svg-height);
  fill: var(--f-button-svg-fill);
  stroke: currentColor;
  stroke-width: var(--f-button-svg-stroke-width);
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: opacity .15s ease;
  transform: var(--f-button-transform);
  filter: var(--f-button-svg-filter);
  pointer-events: none; }

.f-button[disabled] {
  cursor: default; }

.f-button[disabled] svg {
  opacity: var(--f-button-svg-disabled-opacity); }

.f-carousel__nav .f-button.is-prev, .f-carousel__nav .f-button.is-next, .fancybox__nav .f-button.is-prev, .fancybox__nav .f-button.is-next {
  position: absolute;
  z-index: 1; }

.is-horizontal .f-carousel__nav .f-button.is-prev, .is-horizontal .f-carousel__nav .f-button.is-next, .is-horizontal .fancybox__nav .f-button.is-prev, .is-horizontal .fancybox__nav .f-button.is-next {
  top: 50%;
  transform: translateY(-50%); }

.is-horizontal .f-carousel__nav .f-button.is-prev, .is-horizontal .fancybox__nav .f-button.is-prev {
  left: var(--f-button-prev-pos); }

.is-horizontal .f-carousel__nav .f-button.is-next, .is-horizontal .fancybox__nav .f-button.is-next {
  right: var(--f-button-next-pos); }

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev, .is-horizontal.is-rtl .fancybox__nav .f-button.is-prev {
  left: auto;
  right: var(--f-button-next-pos); }

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next, .is-horizontal.is-rtl .fancybox__nav .f-button.is-next {
  right: auto;
  left: var(--f-button-prev-pos); }

.is-vertical .f-carousel__nav .f-button.is-prev, .is-vertical .f-carousel__nav .f-button.is-next, .is-vertical .fancybox__nav .f-button.is-prev, .is-vertical .fancybox__nav .f-button.is-next {
  top: auto;
  left: 50%;
  transform: translateX(-50%); }

.is-vertical .f-carousel__nav .f-button.is-prev, .is-vertical .fancybox__nav .f-button.is-prev {
  top: var(--f-button-next-pos); }

.is-vertical .f-carousel__nav .f-button.is-next, .is-vertical .fancybox__nav .f-button.is-next {
  bottom: var(--f-button-next-pos); }

.is-vertical .f-carousel__nav .f-button.is-prev svg, .is-vertical .f-carousel__nav .f-button.is-next svg, .is-vertical .fancybox__nav .f-button.is-prev svg, .is-vertical .fancybox__nav .f-button.is-next svg {
  transform: rotate(90deg); }

.f-carousel__nav .f-button:disabled, .fancybox__nav .f-button:disabled {
  pointer-events: none; }

html.with-fancybox {
  width: auto;
  overflow: visible;
  scroll-behavior: auto; }

html.with-fancybox body {
  touch-action: none; }

html.with-fancybox body.hide-scrollbar {
  width: auto;
  margin-right: calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));
  overflow: hidden !important;
  overscroll-behavior-y: none; }

.fancybox__container {
  --fancybox-color: #dbdbdb;
  --fancybox-hover-color: #fff;
  --fancybox-bg: rgba(24, 24, 27, 0.98);
  --fancybox-slide-gap: 10px;
  --f-spinner-width: 50px;
  --f-spinner-height: 50px;
  --f-spinner-color-1: rgba(255, 255, 255, 0.1);
  --f-spinner-color-2: #bbb;
  --f-spinner-stroke: 3.65;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  direction: ltr;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  color: #f8f8f8;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  overflow: visible;
  z-index: var(--fancybox-zIndex, 1050);
  outline: none;
  transform-origin: top left;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  overscroll-behavior-y: contain; }

.fancybox__container *, .fancybox__container *::before, .fancybox__container *::after {
  box-sizing: inherit; }

.fancybox__container::backdrop {
  background-color: rgba(0, 0, 0, 0); }

.fancybox__backdrop {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  background: var(--fancybox-bg);
  opacity: var(--fancybox-opacity, 1);
  will-change: opacity; }

.fancybox__carousel {
  position: relative;
  box-sizing: border-box;
  flex: 1;
  min-height: 0;
  z-index: 10;
  overflow-y: visible;
  overflow-x: clip; }

.fancybox__viewport {
  width: 100%;
  height: 100%; }

.fancybox__viewport.is-draggable {
  cursor: move;
  cursor: grab; }

.fancybox__viewport.is-dragging {
  cursor: move;
  cursor: grabbing; }

.fancybox__track {
  display: flex;
  margin: 0 auto;
  height: 100%; }

.fancybox__slide {
  flex: 0 0 auto;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  height: 100%;
  margin: 0 var(--fancybox-slide-gap) 0 0;
  padding: 4px;
  overflow: auto;
  overscroll-behavior: contain;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden; }

.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
  padding-top: 40px; }

.fancybox__slide.has-iframe, .fancybox__slide.has-video, .fancybox__slide.has-html5video {
  overflow: hidden; }

.fancybox__slide.has-image {
  overflow: hidden; }

.fancybox__slide.has-image.is-animating, .fancybox__slide.has-image.is-selected {
  overflow: visible; }

.fancybox__slide::before, .fancybox__slide::after {
  content: "";
  flex: 0 0 0;
  margin: auto; }

.fancybox__content {
  align-self: center;
  display: flex;
  flex-direction: column;
  position: relative;
  margin: 0;
  padding: 2rem;
  max-width: 100%;
  color: var(--fancybox-content-color, #374151);
  background: var(--fancybox-content-bg, #fff);
  cursor: default;
  border-radius: 0;
  z-index: 20; }

.is-loading .fancybox__content {
  opacity: 0; }

.is-draggable .fancybox__content {
  cursor: move;
  cursor: grab; }

.can-zoom_in .fancybox__content {
  cursor: zoom-in; }

.can-zoom_out .fancybox__content {
  cursor: zoom-out; }

.is-dragging .fancybox__content {
  cursor: move;
  cursor: grabbing; }

.fancybox__content [data-selectable], .fancybox__content [contenteditable] {
  cursor: auto; }

.fancybox__slide.has-image > .fancybox__content {
  padding: 0;
  background: rgba(0, 0, 0, 0);
  min-height: 1px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  transition: none;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden; }

.fancybox__slide.has-image > .fancybox__content > picture > img {
  width: 100%;
  height: auto;
  max-height: 100%; }

.is-zooming-in .fancybox__viewport:not(.is-dragging) .fancybox__slide:not(.is-selected) .fancybox__content, .is-zooming-out .fancybox__viewport:not(.is-dragging) .fancybox__slide:not(.is-selected) .fancybox__content {
  visibility: hidden; }

.is-animating .fancybox__content, .is-dragging .fancybox__content {
  filter: blur(0px);
  will-change: transform,width,height; }

.fancybox-image {
  margin: auto;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: contain;
  -webkit-user-select: none;
          user-select: none; }

.fancybox__caption {
  align-self: center;
  max-width: 100%;
  flex-shrink: 0;
  margin: 0;
  padding: 14px 0 4px 0;
  overflow-wrap: anywhere;
  line-height: 1.375;
  color: var(--fancybox-color, currentColor);
  opacity: var(--fancybox-opacity, 1);
  cursor: auto;
  visibility: visible; }

.is-loading .fancybox__caption, .is-closing .fancybox__caption {
  opacity: 0;
  visibility: hidden; }

.is-compact .fancybox__caption {
  padding-bottom: 0; }

.f-button.is-close-btn {
  --f-button-svg-stroke-width: 2;
  position: absolute;
  top: 0;
  right: 8px;
  z-index: 40; }

.fancybox__content > .f-button.is-close-btn {
  --f-button-width: 34px;
  --f-button-height: 34px;
  --f-button-border-radius: 4px;
  --f-button-color: var(--fancybox-color, #fff);
  --f-button-hover-color: var(--fancybox-color, #fff);
  --f-button-bg: transparent;
  --f-button-hover-bg: transparent;
  --f-button-active-bg: transparent;
  --f-button-svg-width: 22px;
  --f-button-svg-height: 22px;
  position: absolute;
  top: -38px;
  right: 0;
  opacity: .75; }

.is-loading .fancybox__content > .f-button.is-close-btn {
  visibility: hidden; }

.is-zooming-out .fancybox__content > .f-button.is-close-btn {
  visibility: hidden; }

.fancybox__content > .f-button.is-close-btn:hover {
  opacity: 1; }

.fancybox__footer {
  padding: 0;
  margin: 0;
  position: relative; }

.fancybox__footer .fancybox__caption {
  width: 100%;
  padding: 24px;
  opacity: var(--fancybox-opacity, 1);
  transition: all .25s ease; }

.is-compact .fancybox__footer {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 20;
  background: rgba(24, 24, 27, 0.5); }

.is-compact .fancybox__footer .fancybox__caption {
  padding: 12px; }

.is-compact .fancybox__content > .f-button.is-close-btn {
  --f-button-border-radius: 50%;
  --f-button-color: #fff;
  --f-button-hover-color: #fff;
  --f-button-outline-color: #000;
  --f-button-bg: rgba(0, 0, 0, 0.6);
  --f-button-active-bg: rgba(0, 0, 0, 0.6);
  --f-button-hover-bg: rgba(0, 0, 0, 0.6);
  --f-button-svg-width: 18px;
  --f-button-svg-height: 18px;
  --f-button-svg-filter: none;
  top: 5px;
  right: 5px; }

.fancybox__nav {
  --f-button-width: 50px;
  --f-button-height: 50px;
  --f-button-border: 0;
  --f-button-border-radius: 50%;
  --f-button-color: var(--fancybox-color);
  --f-button-hover-color: var(--fancybox-hover-color);
  --f-button-bg: transparent;
  --f-button-hover-bg: rgba(24, 24, 27, 0.3);
  --f-button-active-bg: rgba(24, 24, 27, 0.5);
  --f-button-shadow: none;
  --f-button-transition: all 0.15s ease;
  --f-button-transform: none;
  --f-button-svg-width: 26px;
  --f-button-svg-height: 26px;
  --f-button-svg-stroke-width: 2.5;
  --f-button-svg-fill: none;
  --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));
  --f-button-svg-disabled-opacity: 0.65;
  --f-button-next-pos: 1rem;
  --f-button-prev-pos: 1rem;
  opacity: var(--fancybox-opacity, 1); }

.fancybox__nav .f-button:before {
  position: absolute;
  content: "";
  top: -30px;
  right: -20px;
  left: -20px;
  bottom: -30px;
  z-index: 1; }

.is-idle .fancybox__nav {
  animation: .15s ease-out both f-fadeOut; }

.is-idle.is-compact .fancybox__footer {
  pointer-events: none;
  animation: .15s ease-out both f-fadeOut; }

.fancybox__slide > .f-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));
  z-index: 30;
  cursor: pointer; }

.fancybox-protected {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 40;
  -webkit-user-select: none;
          user-select: none; }

.fancybox-ghost {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: contain;
  z-index: 40;
  -webkit-user-select: none;
          user-select: none;
  pointer-events: none; }

.fancybox-focus-guard {
  outline: none;
  opacity: 0;
  position: fixed;
  pointer-events: none; }

.fancybox__container:not([aria-hidden]) {
  opacity: 0; }

.fancybox__container.is-animated[aria-hidden=false] > *:not(.fancybox__backdrop, .fancybox__carousel), .fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel > *:not(.fancybox__viewport), .fancybox__container.is-animated[aria-hidden=false] .fancybox__slide > *:not(.fancybox__content) {
  animation: var(--f-interface-enter-duration, 0.25s) ease 0.1s backwards f-fadeIn; }

.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop {
  animation: var(--f-backdrop-enter-duration, 0.35s) ease backwards f-fadeIn; }

.fancybox__container.is-animated[aria-hidden=true] > *:not(.fancybox__backdrop, .fancybox__carousel), .fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel > *:not(.fancybox__viewport), .fancybox__container.is-animated[aria-hidden=true] .fancybox__slide > *:not(.fancybox__content) {
  animation: var(--f-interface-exit-duration, 0.15s) ease forwards f-fadeOut; }

.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop {
  animation: var(--f-backdrop-exit-duration, 0.35s) ease forwards f-fadeOut; }

.has-iframe .fancybox__content, .has-map .fancybox__content, .has-pdf .fancybox__content, .has-youtube .fancybox__content, .has-vimeo .fancybox__content, .has-html5video .fancybox__content {
  max-width: 100%;
  flex-shrink: 1;
  min-height: 1px;
  overflow: visible; }

.has-iframe .fancybox__content, .has-map .fancybox__content, .has-pdf .fancybox__content {
  width: calc(100% - 120px);
  height: 90%; }

.fancybox__container.is-compact .has-iframe .fancybox__content, .fancybox__container.is-compact .has-map .fancybox__content, .fancybox__container.is-compact .has-pdf .fancybox__content {
  width: 100%;
  height: 100%; }

.has-youtube .fancybox__content, .has-vimeo .fancybox__content, .has-html5video .fancybox__content {
  width: 960px;
  height: 540px;
  max-width: 100%;
  max-height: 100%; }

.has-map .fancybox__content, .has-pdf .fancybox__content, .has-youtube .fancybox__content, .has-vimeo .fancybox__content, .has-html5video .fancybox__content {
  padding: 0;
  background: rgba(24, 24, 27, 0.9);
  color: #fff; }

.has-map .fancybox__content {
  background: #e5e3df; }

.fancybox__html5video, .fancybox__iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0); }

.fancybox-placeholder {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important; }

.f-carousel__thumbs {
  --f-thumb-width: 96px;
  --f-thumb-height: 72px;
  --f-thumb-outline: 0;
  --f-thumb-outline-color: #5eb0ef;
  --f-thumb-opacity: 1;
  --f-thumb-hover-opacity: 1;
  --f-thumb-selected-opacity: 1;
  --f-thumb-border-radius: 2px;
  --f-thumb-offset: 0px;
  --f-button-next-pos: 0;
  --f-button-prev-pos: 0; }

.f-carousel__thumbs.is-classic {
  --f-thumb-gap: 8px;
  --f-thumb-opacity: 0.5;
  --f-thumb-hover-opacity: 1;
  --f-thumb-selected-opacity: 1; }

.f-carousel__thumbs.is-modern {
  --f-thumb-gap: 4px;
  --f-thumb-extra-gap: 16px;
  --f-thumb-clip-width: 46px; }

.f-thumbs {
  position: relative;
  flex: 0 0 auto;
  margin: 0;
  overflow: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
          user-select: none;
  perspective: 1000px;
  transform: translateZ(0); }

.f-thumbs .f-spinner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 2px;
  background-image: linear-gradient(#ebeff2, #e2e8f0);
  z-index: -1; }

.f-thumbs .f-spinner svg {
  display: none; }

.f-thumbs.is-vertical {
  height: 100%; }

.f-thumbs__viewport {
  width: 100%;
  height: auto;
  overflow: hidden;
  transform: translate3d(0, 0, 0); }

.f-thumbs__track {
  display: flex; }

.f-thumbs__slide {
  position: relative;
  flex: 0 0 auto;
  box-sizing: content-box;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  width: var(--f-thumb-width);
  height: var(--f-thumb-height);
  overflow: visible;
  cursor: pointer; }

.f-thumbs__slide.is-loading img {
  opacity: 0; }

.is-classic .f-thumbs__viewport {
  height: 100%; }

.is-modern .f-thumbs__track {
  width: max-content; }

.is-modern .f-thumbs__track::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc((var(--f-thumb-clip-width, 0))*-0.5);
  width: calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));
  cursor: pointer; }

.is-modern .f-thumbs__slide {
  width: var(--f-thumb-clip-width);
  transform: translate3d(calc(var(--shift, 0) * -1px), 0, 0);
  transition: none;
  pointer-events: none; }

.is-modern.is-resting .f-thumbs__slide {
  transition: transform .33s ease; }

.is-modern.is-resting .f-thumbs__slide__button {
  transition: -webkit-clip-path .33s ease;
  transition: clip-path .33s ease;
  transition: clip-path .33s ease, -webkit-clip-path .33s ease; }

.is-using-tab .is-modern .f-thumbs__slide:focus-within {
  filter: drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color)); }

.f-thumbs__slide__button {
  -webkit-appearance: none;
          appearance: none;
  width: var(--f-thumb-width);
  height: 100%;
  margin: 0 -100% 0 -100%;
  padding: 0;
  border: 0;
  position: relative;
  border-radius: var(--f-thumb-border-radius);
  overflow: hidden;
  background: rgba(0, 0, 0, 0);
  outline: none;
  cursor: pointer;
  pointer-events: auto;
  touch-action: manipulation;
  opacity: var(--f-thumb-opacity);
  transition: opacity .2s ease; }

.f-thumbs__slide__button:hover {
  opacity: var(--f-thumb-hover-opacity); }

.f-thumbs__slide__button:focus:not(:focus-visible) {
  outline: none; }

.f-thumbs__slide__button:focus-visible {
  outline: none;
  opacity: var(--f-thumb-selected-opacity); }

.is-modern .f-thumbs__slide__button {
  --clip-path: inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5 ) round var(--f-thumb-border-radius, 0) );
  -webkit-clip-path: var(--clip-path);
          clip-path: var(--clip-path); }

.is-classic .is-nav-selected .f-thumbs__slide__button {
  opacity: var(--f-thumb-selected-opacity); }

.is-classic .is-nav-selected .f-thumbs__slide__button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: auto;
  bottom: 0;
  border: var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);
  border-radius: var(--f-thumb-border-radius);
  animation: f-fadeIn .2s ease-out;
  z-index: 10; }

.f-thumbs__slide__img {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: var(--f-thumb-offset);
  box-sizing: border-box;
  pointer-events: none;
  object-fit: cover;
  border-radius: var(--f-thumb-border-radius); }

.f-thumbs.is-horizontal .f-thumbs__track {
  padding: 8px 0 12px 0; }

.f-thumbs.is-horizontal .f-thumbs__slide {
  margin: 0 var(--f-thumb-gap) 0 0; }

.f-thumbs.is-vertical .f-thumbs__track {
  flex-wrap: wrap;
  padding: 0 8px; }

.f-thumbs.is-vertical .f-thumbs__slide {
  margin: 0 0 var(--f-thumb-gap) 0; }

.fancybox__thumbs {
  --f-thumb-width: 96px;
  --f-thumb-height: 72px;
  --f-thumb-border-radius: 2px;
  --f-thumb-outline: 2px;
  --f-thumb-outline-color: #ededed;
  position: relative;
  opacity: var(--fancybox-opacity, 1);
  transition: max-height 0.35s cubic-bezier(0.23, 1, 0.32, 1); }

.fancybox__thumbs.is-classic {
  --f-thumb-gap: 8px;
  --f-thumb-opacity: 0.5;
  --f-thumb-hover-opacity: 1; }

.fancybox__thumbs.is-classic .f-spinner {
  background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05)); }

.fancybox__thumbs.is-modern {
  --f-thumb-gap: 4px;
  --f-thumb-extra-gap: 16px;
  --f-thumb-clip-width: 46px;
  --f-thumb-opacity: 1;
  --f-thumb-hover-opacity: 1; }

.fancybox__thumbs.is-modern .f-spinner {
  background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05)); }

.fancybox__thumbs.is-horizontal {
  padding: 0 var(--f-thumb-gap); }

.fancybox__thumbs.is-vertical {
  padding: var(--f-thumb-gap) 0; }

.is-compact .fancybox__thumbs {
  --f-thumb-width: 64px;
  --f-thumb-clip-width: 32px;
  --f-thumb-height: 48px;
  --f-thumb-extra-gap: 10px; }

.fancybox__thumbs.is-masked {
  max-height: 0px !important; }

.is-closing .fancybox__thumbs {
  transition: none !important; }

.fancybox__toolbar {
  --f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));
  --f-button-width: 46px;
  --f-button-height: 46px;
  --f-button-color: var(--fancybox-color);
  --f-button-hover-color: var(--fancybox-hover-color);
  --f-button-bg: rgba(24, 24, 27, 0.65);
  --f-button-hover-bg: rgba(70, 70, 73, 0.65);
  --f-button-active-bg: rgba(90, 90, 93, 0.65);
  --f-button-border-radius: 0;
  --f-button-svg-width: 24px;
  --f-button-svg-height: 24px;
  --f-button-svg-stroke-width: 1.5;
  --f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));
  --f-button-svg-fill: none;
  --f-button-svg-disabled-opacity: 0.65;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;
  color: var(--fancybox-color, currentColor);
  opacity: var(--fancybox-opacity, 1);
  text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));
  pointer-events: none;
  z-index: 20; }

.fancybox__toolbar :focus-visible {
  z-index: 1; }

.fancybox__toolbar.is-absolute, .is-compact .fancybox__toolbar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

.is-idle .fancybox__toolbar {
  pointer-events: none;
  animation: .15s ease-out both f-fadeOut; }

.fancybox__toolbar__column {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-content: flex-start; }

.fancybox__toolbar__column.is-left, .fancybox__toolbar__column.is-right {
  flex-grow: 1;
  flex-basis: 0; }

.fancybox__toolbar__column.is-right {
  display: flex;
  justify-content: flex-end;
  flex-wrap: nowrap; }

.fancybox__infobar {
  padding: 0 5px;
  line-height: var(--f-button-height);
  text-align: center;
  font-size: 17px;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased;
  cursor: default;
  -webkit-user-select: none;
          user-select: none; }

.fancybox__infobar span {
  padding: 0 5px; }

.fancybox__infobar:not(:first-child):not(:last-child) {
  background: var(--f-button-bg); }

[data-fancybox-toggle-slideshow] {
  position: relative; }

[data-fancybox-toggle-slideshow] .f-progress {
  height: 100%;
  opacity: .3; }

[data-fancybox-toggle-slideshow] svg g:first-child {
  display: flex; }

[data-fancybox-toggle-slideshow] svg g:last-child {
  display: none; }

.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child {
  display: none; }

.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child {
  display: flex; }

[data-fancybox-toggle-fullscreen] svg g:first-child {
  display: flex; }

[data-fancybox-toggle-fullscreen] svg g:last-child {
  display: none; }

:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child {
  display: none; }

:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child {
  display: flex; }

.f-progress {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  background: var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));
  z-index: 30;
  -webkit-user-select: none;
          user-select: none;
  pointer-events: none; }

/* Переменные для медиа запросов */
:root {
  /* Ширина контента */
  --block-padding: 13.5vw;
  --max-width: calc(100vw - 2 * 6.25vw);
  --header-height: 108px;
  --scrollbar-width: 7px;
  --filter-groups-gap: 70px;
  --top-padding-filter-modal: 145px;
  --bottom-padding-filter-modal: 55px;
  --catalog-sidebar-width: 250px;
  --safe-area-bottom: env(safe-area-inset-bottom); }

@media screen and (max-width: 1580px) {
  :root {
    --block-padding: 60px;
    --max-width: calc(100vw - 2 * 60px);
    --header-height: 83px;
    --catalog-sidebar-width: 200px; } }

@media (max-width: 1370px) {
  :root {
    --header-height: 77px;
    --top-padding-filter-modal: 155px; } }

@media screen and (max-width: 1200px) {
  :root {
    --block-padding: 50px;
    --max-width: calc(100vw - 2 * 40px); } }

@media screen and (max-width: 900px) {
  :root {
    --header-height: 81px;
    --top-padding-filter-modal: 130px; } }

@media screen and (max-width: 640px) {
  :root {
    --block-padding: 20px;
    --max-width: calc(100vw - 2 * 20px);
    --header-height: 59px; } }

:root {
  --section-margin: 12rem; }
  @media screen and (max-width: 900px) {
    :root {
      --section-margin: 6rem; } }
  @media screen and (max-width: 640px) {
    :root {
      --section-margin: 4rem; } }

:root {
  --color-pink: #e3104d;
  --color-black: #182827;
  --color-gray-light: #C5CDCD;
  --color-gray-mid: #989797;
  --color-gray-dark: #5D6D6C;
  --color-smoky-white: #F2F2F2;
  --color-whatsapp: #648330;
  --color-white: rgba(255, 255, 255, 1);
  --color-black-base: rgba(0, 0, 0, 1);
  --font-size-main: 24px;
  --font-size-secondary: 18px;
  --color-green-base: rgba(200, 226, 138, 1); }

:root {
  --general-menu-margin: calc(var(--header-height) + 45px); }
  @media screen and (max-width: 1580px) {
    :root {
      --general-menu-margin: calc(var(--header-height) + 55px); } }
  @media screen and (max-width: 1370px) {
    :root {
      --general-menu-margin: calc(var(--header-height) + 27px); } }

:root {
  --mortgage-results-left-padding: 74px;
  --card-about-text-margin: 110px; }
  @media screen and (max-width: 1580px) {
    :root {
      --mortgage-results-left-padding: 56px; } }
  @media screen and (max-width: 900px) {
    :root {
      --mortgage-results-left-padding: 0; } }

/* Переменные для медиа запросов */
:root {
  /* Ширина контента */
  --block-padding: 13.5vw;
  --max-width: calc(100vw - 2 * 6.25vw);
  --header-height: 108px;
  --scrollbar-width: 7px;
  --filter-groups-gap: 70px;
  --top-padding-filter-modal: 145px;
  --bottom-padding-filter-modal: 55px;
  --catalog-sidebar-width: 250px;
  --safe-area-bottom: env(safe-area-inset-bottom); }

@media screen and (max-width: 1580px) {
  :root {
    --block-padding: 60px;
    --max-width: calc(100vw - 2 * 60px);
    --header-height: 83px;
    --catalog-sidebar-width: 200px; } }

@media (max-width: 1370px) {
  :root {
    --header-height: 77px;
    --top-padding-filter-modal: 155px; } }

@media screen and (max-width: 1200px) {
  :root {
    --block-padding: 50px;
    --max-width: calc(100vw - 2 * 40px); } }

@media screen and (max-width: 900px) {
  :root {
    --header-height: 81px;
    --top-padding-filter-modal: 130px; } }

@media screen and (max-width: 640px) {
  :root {
    --block-padding: 20px;
    --max-width: calc(100vw - 2 * 20px);
    --header-height: 59px; } }

:root {
  --section-margin: 12rem; }
  @media screen and (max-width: 900px) {
    :root {
      --section-margin: 6rem; } }
  @media screen and (max-width: 640px) {
    :root {
      --section-margin: 4rem; } }

:root {
  --color-pink: #e3104d;
  --color-black: #182827;
  --color-gray-light: #C5CDCD;
  --color-gray-mid: #989797;
  --color-gray-dark: #5D6D6C;
  --color-smoky-white: #F2F2F2;
  --color-whatsapp: #648330;
  --color-white: rgba(255, 255, 255, 1);
  --color-black-base: rgba(0, 0, 0, 1);
  --font-size-main: 24px;
  --font-size-secondary: 18px;
  --color-green-base: rgba(200, 226, 138, 1); }

:root {
  --general-menu-margin: calc(var(--header-height) + 45px); }
  @media screen and (max-width: 1580px) {
    :root {
      --general-menu-margin: calc(var(--header-height) + 55px); } }
  @media screen and (max-width: 1370px) {
    :root {
      --general-menu-margin: calc(var(--header-height) + 27px); } }

:root {
  --mortgage-results-left-padding: 74px;
  --card-about-text-margin: 110px; }
  @media screen and (max-width: 1580px) {
    :root {
      --mortgage-results-left-padding: 56px; } }
  @media screen and (max-width: 900px) {
    :root {
      --mortgage-results-left-padding: 0; } }

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

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

html {
  box-sizing: border-box;
  font-size: 10px;
  overflow-x: hidden;
  max-width: 100vw;
  font-family: 'Exo 2', 'Arial', sans-serif;
  font-weight: 300;
  color: var(--color-black); }

body {
  margin: 0;
  overflow-x: hidden;
  font-size: 1.6rem;
  background: #101b1a;
  /* W3C standard сейчас только для Firefox */
  /* для Chrome/Edge/Safari */ }
  body * {
    line-height: 120%;
    border-color: var(--color-black); }
  body button {
    -webkit-appearance: none;
    appearance: none; }
  body.menu_opened {
    overflow: hidden;
    height: 100vh; }
    body.menu_opened .general_menu {
      left: 0%;
      right: 0%; }
      body.menu_opened .general_menu > .content-wrapper {
        padding-right: var(--scrollbar-width); }
    body.menu_opened .header {
      padding-right: var(--scrollbar-width); }
    body.menu_opened .header_links,
    body.menu_opened .header_logo {
      transform: translateY(calc(0px - var(--header-height))); }
    @media screen and (max-width: 900px) {
      body.menu_opened .header {
        position: relative;
        z-index: 500;
        background: #101B1A; }
        body.menu_opened .header .content-wrapper {
          padding: 19px 0 19px 24px; }
      body.menu_opened .header_links,
      body.menu_opened .header_logo {
        display: none; }
      body.menu_opened .header_buttons {
        max-width: 100%;
        flex: 0 0 100%;
        width: 100%;
        justify-content: flex-start;
        gap: 25px; }
        body.menu_opened .header_buttons .btn {
          border-color: white;
          color: white;
          background: #101B1A;
          display: flex !important;
          transform: none; }
        body.menu_opened .header_buttons .btn_burger {
          margin: 0 0 0 auto;
          transform: none; }
        body.menu_opened .header_buttons .btn_burger_line {
          background-color: white; }
        body.menu_opened .header_buttons .header_buttons_contacts {
          display: none !important; } }
    @media screen and (max-width: 640px) {
      body.menu_opened .header .content-wrapper {
        padding: 19px 0; } }
  body {
    scrollbar-width: thin;
    scrollbar-color: var(--color-black) var(--color-gray-dark); }
  body::-webkit-scrollbar {
    height: var(--scrollbar-width);
    width: var(--scrollbar-width); }
  body::-webkit-scrollbar-track {
    background: var(--color-gray-dark); }
  body::-webkit-scrollbar-thumb {
    background-color: var(--color-black); }

img {
  max-width: 100%; }

input {
  border-radius: 0;
  color: inherit; }
  input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0;
    /* <-- Apparently some margin are still there even though it's hidden */ }
  input[type=date]::-webkit-date-and-time-value {
    text-align: left;
    color: inherit; }

.input {
  border: 1px solid #D0DBDA;
  height: 68px;
  font-size: 18px;
  font-weight: 300;
  line-height: 41px;
  letter-spacing: 0em;
  text-align: left; }
  .input input {
    padding-left: 20px;
    border: none;
    width: 100%;
    height: 100%;
    background: #101B1A;
    color: #FFFFFF; }
    .input input::placeholder {
      font-size: 18px;
      font-weight: 300;
      line-height: 20px;
      color: #989797; }

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

ul,
ol,
p {
  padding: 0;
  margin: 0; }

button {
  padding: 0;
  border: none;
  background: none;
  color: inherit; }

.content-wrapper {
  max-width: var(--max-width);
  margin: 0 auto;
  width: 100%; }

.mg-top-1 {
  margin-top: 1rem; }

.mg-top-2 {
  margin-top: 2rem; }

.mg-top-3 {
  margin-top: 3rem; }

.mg-top-4 {
  margin-top: 4rem; }

.section-margin {
  margin-top: var(--section-margin); }

.section-padding {
  padding-top: var(--section-margin); }

.row {
  display: flex;
  flex-wrap: wrap; }

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

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

.no-margin {
  margin: unset; }

.width-100 {
  width: 100%; }

.margin-under-header {
  margin-top: calc(0px - var(--header-height)); }

.tablet-show {
  display: none !important; }

@media screen and (max-width: 1580px) {
  .content-wrapper {
    max-width: var(--max-width); } }

@media screen and (max-width: 900px) {
  .content-wrapper {
    max-width: var(--max-width); }
  .tablet-hidden {
    display: none !important; }
  .tablet-show {
    display: block !important; } }

@media screen and (max-width: 640px) {
  .content-wrapper {
    max-width: var(--max-width); } }

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  align-items: center;
  grid-gap: 1rem;
  padding-top: 2rem;
  margin-bottom: 1.6rem;
  font-size: 1.4rem; }
  .breadcrumbs-el {
    opacity: 0.6;
    display: flex;
    align-items: center; }
    @supports not (grid-gap: 1rem) {
      .breadcrumbs-el {
        margin-right: 1rem;
        margin-bottom: 0.5; } }
    .breadcrumbs-el:after {
      content: "";
      display: block;
      margin-left: 1rem;
      width: 1.6rem;
      height: 1.6rem;
      background-image: url(/local/templates/gurus/assets/css/../img/icons/arrow-down-black.svg);
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
      transform: rotateZ(-90deg); }
    .breadcrumbs-el:last-of-type {
      opacity: 1;
      color: pink; }
      .breadcrumbs-el:last-of-type:after {
        display: none; }
  @media screen and (max-width: 1200px) {
    .breadcrumbs {
      font-size: 1.2rem; } }

.btn {
  cursor: pointer;
  overflow: hidden;
  display: flex;
  font-size: 16px;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 12px 19px;
  border-radius: 30px;
  border: 1px solid white;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  color: white; }
  .btn span {
    white-space: nowrap;
    font-weight: 500;
    line-height: 1; }
    .btn span.green {
      color: var(--color-whatsapp); }
  .btn_cube {
    border-radius: 0px;
    background: #E3104D;
    color: #FFFFFF;
    border: none;
    padding: 17px 41px; }
    .btn_cube span {
      font-weight: 500;
      line-height: 25px;
      letter-spacing: 0em;
      white-space: nowrap;
      font-size: 18px; }
    .btn_cube_pink {
      background-color: var(--color-pink);
      border: none;
      border-radius: 0px;
      color: #FFFFFF;
      padding: 18px 46px; }
      .btn_cube_pink span {
        font-weight: 500;
        line-height: 25px;
        letter-spacing: 0em;
        white-space: nowrap;
        font-size: 18px; }
  .btn[disabled] {
    background-color: #D9D9D9;
    color: white;
    cursor: default;
    pointer-events: none; }
  .btn_transparent {
    background-color: transparent;
    color: var(--color-gray-dark); }
  .btn_burger {
    width: 50px;
    height: 50px;
    display: table;
    border-radius: 50px;
    background: white;
    position: relative;
    overflow: hidden;
    border: none; }
    .btn_burger_wrap {
      display: flex;
      flex-wrap: wrap;
      width: 100%;
      max-width: 26px;
      justify-content: space-between;
      align-items: center;
      gap: 3px;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      position: absolute; }
    .btn_burger_line {
      flex: 0 0 100%;
      height: 2px;
      width: 100%;
      background-color: #0d0d0d;
      transform-origin: center center;
      display: table;
      transition: .2s; }
      .btn_burger_line:first-of-type {
        max-width: 50%;
        margin: 0 0 0 auto;
        transform-origin: right center; }
      .btn_burger_line:last-of-type {
        max-width: 50%;
        margin: 0 auto 0 0;
        transform-origin: left center; }
    .btn_burger.opened {
      background-color: var(--color-pink); }
      .btn_burger.opened .btn_burger_line {
        position: absolute;
        background: white; }
        .btn_burger.opened .btn_burger_line:first-of-type {
          max-width: 100%;
          transform: rotate(-45deg);
          transform-origin: center; }
        .btn_burger.opened .btn_burger_line:nth-of-type(2) {
          width: 0; }
        .btn_burger.opened .btn_burger_line:last-of-type {
          max-width: 100%;
          transform: rotate(45deg);
          transform-origin: center; }
  .btn.without_borders {
    border: none; }
  .btn:hover .btn_burger_line {
    max-width: 100%; }
  .btn:hover:not(.btn_burger) {
    text-decoration: underline; }
  .btn:hover.without_hover {
    background-color: transparent; }
  @media screen and (max-width: 1580px) {
    .btn {
      font-size: 14px;
      padding: 10px 17px; }
      .btn_burger {
        width: 43px;
        height: 43px; }
        .btn_burger_wrap {
          width: 22px; }
      .btn_cube, .btn_cube_pink {
        padding: 15px 17px; }
        .btn_cube span, .btn_cube_pink span {
          font-size: 16px; } }
  @media (max-width: 1370px) {
    .btn {
      font-size: 12px;
      padding: 6px 13px; } }
  @media screen and (max-width: 900px) {
    .btn_burger {
      background-color: transparent;
      border: none;
      padding: 0; }
      .btn_burger_wrap {
        width: 100%;
        max-width: 38px; }
      .btn_burger_line {
        background-color: white; }
      .btn_burger.opened {
        background-color: transparent; }
    .btn_cube, .btn_cube_pink {
      padding: 6px 18px; }
      .btn_cube span, .btn_cube_pink span {
        font-size: 14px; } }

.ic, .fa {
  display: block;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }
  .ic_arrow_right, .fa_arrow_right {
    width: 16px;
    height: 8px;
    background-image: url(/local/templates/gurus/assets/css/../img/icons/ic_arrow.svg);
    background-position: right center;
    background-size: cover; }
  .ic_plus, .fa_plus {
    width: 11px;
    height: 11px;
    background: url(/local/templates/gurus/assets/css/../img/icons/ic_plus.svg) no-repeat center;
    background-size: cover; }
  .ic_plus_pink, .fa_plus_pink {
    width: 11px;
    height: 11px;
    background: url(/local/templates/gurus/assets/css/../img/icons/ic_plus_pink.svg) no-repeat center;
    background-size: cover; }
  .ic_location, .fa_location {
    width: 16px;
    height: 21px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_location.svg") no-repeat center;
    background-size: contain; }
  .ic_arrow_diagonal, .fa_arrow_diagonal {
    width: 34px;
    height: 34px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_arrow_diagonal.svg") no-repeat center;
    background-size: contain; }
  .ic_building, .fa_building {
    width: 16px;
    height: 16px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_building.svg") no-repeat center;
    background-size: contain; }
  .ic_advanced_filter, .fa_advanced_filter {
    width: 16px;
    height: 16px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_advanced_filter.svg") no-repeat center;
    background-size: contain; }
  .ic_eye, .fa_eye {
    width: 18px;
    height: 10px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_eye.svg") no-repeat center;
    background-size: contain; }
  .ic_favorite, .ic .fa-heart-o, .fa_favorite, .fa .fa-heart-o {
    width: 25px;
    height: 22px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_favorite.svg") no-repeat 1px center;
    background-size: contain;
    cursor: pointer; }
  .ic_favorite_on, .ic .fa-heart, .fa_favorite_on, .fa .fa-heart {
    width: 25px;
    height: 22px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_favorite_on.svg") no-repeat center;
    background-size: contain;
    cursor: pointer; }
  .ic_link, .fa_link {
    width: 25px;
    height: 22px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_link.svg") no-repeat center;
    background-size: contain; }
  .ic_check, .fa_check {
    width: 19px;
    height: 19px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_check.svg") no-repeat center;
    background-size: contain; }
  .ic_close, .fa_close {
    width: 24px;
    height: 24px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_close.png") no-repeat center;
    background-size: contain; }

.select2-container .select2-selection--general {
  height: 68px;
  border-radius: 0;
  border-color: #D0DBDA;
  background: #101B1A;
  color: #FFFFFF; }
  .select2-container .select2-selection--general .select2-selection__rendered {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 20px;
    font-size: 18px;
    font-weight: 500;
    color: #FFFFFF; }
  .select2-container .select2-selection--general .select2-selection__arrow {
    width: 75px;
    top: 0;
    right: 0;
    height: 100%;
    bottom: 0; }
    .select2-container .select2-selection--general .select2-selection__arrow b {
      background: url("/local/templates/gurus/assets/css/../img/icons/ic_jackdaw.svg") no-repeat center;
      background-size: contain;
      width: 30px;
      height: 15px;
      background-color: transparent;
      border: none;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0; }

.select2-container .select2-selection--filter {
  height: 41px;
  border-radius: 20px;
  border: 1px solid #182827;
  min-width: 78px; }
  .select2-container .select2-selection--filter .select2-selection__rendered {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 20px;
    font-size: 16px;
    font-weight: 500;
    width: 100%;
    background: #ffffff;
    color: black;
    border-radius: 20px; }
  .select2-container .select2-selection--filter .select2-selection__arrow {
    width: 50px;
    top: 0;
    right: 0;
    height: 100%;
    bottom: 0; }
    .select2-container .select2-selection--filter .select2-selection__arrow b {
      background: url("/local/templates/gurus/assets/css/../img/icons/ic_select2_filter_arrow.svg") no-repeat center;
      background-size: contain;
      width: 13px;
      height: 7px;
      background-color: transparent;
      border: none;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0; }
  .select2-container .select2-selection--filter-dark {
    background-color: #FFFFFF; }
    .select2-container .select2-selection--filter-dark .select2-selection__rendered {
      color: black; }
    .select2-container .select2-selection--filter-dark .select2-selection__arrow b {
      background-image: url("/local/templates/gurus/assets/css/../img/icons/ic_select2_filter_arrow_pink.svg");
      opacity: 1; }

.select2-container .select2-selection--dropdown {
  border: none;
  height: 100%; }
  .select2-container .select2-selection--dropdown .select2-selection__rendered {
    text-transform: uppercase;
    height: 100%;
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    white-space: break-spaces;
    line-height: 1.2;
    padding: 10px;
    background: #101B1A;
    color: #FFFFFF; }
  .select2-container .select2-selection--dropdown .select2-selection__arrow {
    width: 50px;
    top: 0;
    right: 0;
    height: 100%;
    bottom: 0; }
    .select2-container .select2-selection--dropdown .select2-selection__arrow b {
      background: url("/local/templates/gurus/assets/css/../img/icons/ic_select2_filter_arrow_white.svg") no-repeat center;
      background-size: contain;
      width: 13px;
      height: 7px;
      background-color: transparent;
      border: none;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0; }

.select2-container .select2-selection--sort {
  border: none;
  height: 100%;
  width: 100px;
  background: #101b1a; }
  .select2-container .select2-selection--sort .select2-selection__rendered {
    text-transform: lowercase;
    height: 100%;
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    padding: 10px;
    opacity: 0;
    background: #101B1A;
    color: #FFFFFF; }
  .select2-container .select2-selection--sort .select2-selection__arrow {
    width: 50px;
    top: 0;
    right: 0;
    height: 100%;
    bottom: 0; }
    .select2-container .select2-selection--sort .select2-selection__arrow b {
      background: url("/local/templates/gurus/assets/css/../img/icons/ic_sort_arrows.svg") no-repeat center;
      opacity: 1;
      background-size: contain;
      width: 13px;
      height: 20px;
      background-color: transparent;
      border: none;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0; }

.select2-container .select2-dropdown--general .select2-results__options {
  max-height: 500px; }

.select2-container .select2-dropdown--general .select2-results__option {
  padding: 0 20px;
  height: 69px;
  display: flex;
  align-items: center;
  line-height: 1;
  border: 1px solid #D0DBDA;
  border-top: none;
  font-size: 16px;
  background-color: #F2F2F2;
  color: black; }
  .select2-container .select2-dropdown--general .select2-results__option--selected {
    background-color: #e9e9e9;
    color: black; }

.select2-container .select2-dropdown--filter {
  overflow: hidden;
  border-color: #182827;
  padding: 10px 20px 5px 10px;
  min-width: 78px; }
  .select2-container .select2-dropdown--filter .select2-results__options {
    padding-top: 10px;
    max-height: 150px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 11px;
    /* W3C standard сейчас только для Firefox */
    /* для Chrome/Edge/Safari */ }
    .select2-container .select2-dropdown--filter .select2-results__options {
      scrollbar-width: thin;
      scrollbar-color: #5D6D6C #D0DBDA; }
    .select2-container .select2-dropdown--filter .select2-results__options::-webkit-scrollbar {
      height: 2px;
      width: 2px; }
    .select2-container .select2-dropdown--filter .select2-results__options::-webkit-scrollbar-track {
      background: #D0DBDA; }
    .select2-container .select2-dropdown--filter .select2-results__options::-webkit-scrollbar-thumb {
      background-color: #5D6D6C; }
  .select2-container .select2-dropdown--filter .select2-results__option {
    padding: 0 0 10px 0;
    height: 20px;
    display: flex;
    flex: 0 0 100%;
    max-width: 25px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border-bottom: 1px dashed #5D6D6C;
    font-size: 16px;
    font-weight: 500;
    color: black; }
    .select2-container .select2-dropdown--filter .select2-results__option--selected {
      background-color: transparent;
      color: black; }
    .select2-container .select2-dropdown--filter .select2-results__option--highlighted {
      background-color: transparent;
      color: #5D6D6C; }
  .select2-container .select2-dropdown--filter.select2-dropdown--above {
    border-top-right-radius: 20px;
    border-top-left-radius: 20px; }
  .select2-container .select2-dropdown--filter.select2-dropdown--below {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px; }
  .select2-container .select2-dropdown--filter-dark {
    background-color: #FFFFFF; }
    .select2-container .select2-dropdown--filter-dark .select2-results__option {
      color: black; }

.select2-container .select2-dropdown--dropdown {
  border: none;
  min-width: max-content;
  padding-top: 10px;
  background: black; }
  .select2-container .select2-dropdown--dropdown .select2-results__options {
    overflow: visible;
    min-width: max-content; }
  .select2-container .select2-dropdown--dropdown .select2-results__option {
    min-width: max-content;
    background-color: black;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 16px;
    text-align: center;
    white-space: nowrap;
    padding: 10px 15px; }
    .select2-container .select2-dropdown--dropdown .select2-results__option--selected {
      background-color: black;
      color: #FFFFFF; }
    .select2-container .select2-dropdown--dropdown .select2-results__option:not(:last-of-type) {
      border-bottom: 1px #5D6D6C dashed; }

.select2-container .select2-dropdown--sort {
  border: none;
  min-width: max-content;
  padding-top: 10px; }
  .select2-container .select2-dropdown--sort .select2-results__options {
    overflow: visible;
    min-width: max-content; }
  .select2-container .select2-dropdown--sort .select2-results__option {
    min-width: max-content;
    background-color: white;
    color: black;
    text-transform: lowercase;
    font-size: 16px;
    text-align: center;
    white-space: nowrap;
    padding: 10px 15px; }
    .select2-container .select2-dropdown--sort .select2-results__option--selected {
      background-color: white;
      color: black; }
    .select2-container .select2-dropdown--sort .select2-results__option:not(:last-of-type) {
      border-bottom: 1px #5D6D6C dashed; }

.select2-container--open .select2-selection--general .select2-selection__arrow,
.select2-container--open .select2-selection--filter .select2-selection__arrow {
  transform: scaleY(-1); }

.select2-container--open .select2-selection--filter-dark .select2-selection__arrow {
  filter: grayscale(1) invert(1) contrast(1); }

.select2-container--open.select2-container--above .select2-selection--filter {
  border-top-color: transparent; }

.select2-container--open.select2-container--below .select2-selection--filter {
  border-bottom-color: transparent; }

.select2-container--open .select2-dropdown--general {
  border: none; }

@media screen and (max-width: 1580px) {
  .select2-container .select2-selection--general .select2-selection__rendered {
    font-size: 16px; }
  .select2-container .select2-selection--general .select2-selection__arrow b {
    width: 20px;
    height: 10px; }
  .select2-container .select2-selection--dropdown .select2-selection__rendered {
    font-size: 14px; } }

@media (max-width: 1370px) {
  .select2-container .select2-selection--dropdown .select2-selection__rendered {
    font-size: 12px; } }

@media screen and (max-width: 1200px) {
  .select2-container .select2-selection--general {
    height: 55px; }
    .select2-container .select2-selection--general .select2-selection__rendered {
      font-size: 14px; }
    .select2-container .select2-selection--general .select2-selection__arrow {
      width: 60px; } }

@media screen and (max-width: 640px) {
  .select2-container .select2-selection--general {
    height: 36px; }
    .select2-container .select2-selection--general .select2-selection__rendered {
      padding: 0 10px; }
    .select2-container .select2-selection--general .select2-selection__arrow {
      width: 60px; }
  .select2-container .select2-dropdown--general .select2-results__option {
    padding: 0 8px;
    height: 34px;
    font-size: 14px; }
  .select2-container .select2-dropdown--sort .select2-results__option {
    font-size: 13px;
    padding: 6px; } }

.checkbox > input {
  position: absolute;
  z-index: -1;
  opacity: 0; }

.checkbox > span {
  display: inline-flex;
  align-items: center;
  -webkit-user-select: none;
          user-select: none; }
  .checkbox > span::before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
    flex-grow: 0;
    border: 1px solid #adb5bd;
    border-radius: 0.25em;
    margin-right: 0.5em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 50% 50%; }

.checkbox > input:not(:disabled):not(:checked) + span:hover::before {
  border-color: #b3d7ff; }

.checkbox > input:not(:disabled):active + span::before {
  background-color: #b3d7ff;
  border-color: #b3d7ff; }

.checkbox > input:focus + span::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.checkbox > input:focus:not(:checked) + span::before {
  border-color: #80bdff; }

.checkbox > input:checked + span::before {
  border-color: #0b76ef;
  background-color: #0b76ef;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"); }

.checkbox > input:disabled + span::before {
  background-color: #e9ecef; }

.checkbox-btn {
  display: flex;
  min-width: 40px;
  align-items: center;
  justify-content: center;
  text-align: center;
  -webkit-user-select: none;
          user-select: none;
  position: relative;
  border-radius: 30px; }
  .checkbox-btn input[type=checkbox] {
    z-index: -1;
    opacity: 0;
    display: block;
    width: 0;
    height: 0; }
    .checkbox-btn input[type=checkbox]:checked + span {
      background: #FFFFFF;
      color: black; }
    .checkbox-btn input[type=checkbox]:disabled + span {
      background: #5D6D6C;
      color: #666;
      cursor: default; }
    .checkbox-btn input[type=checkbox]:checked:disabled + span {
      background: #5D6D6C; }
  .checkbox-btn span {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    cursor: pointer;
    padding: 11px 21px;
    line-height: 1;
    border: 1px solid #FFFFFF;
    border-radius: 30px;
    transition: background 0.2s ease;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    white-space: nowrap;
    gap: 12px;
    justify-content: center;
    color: #FFFFFF; }
  .checkbox-btn.focused span {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }
  .checkbox-btn:hover {
    color: black;
    background: white; }
    .checkbox-btn:hover span {
      color: black; }
      .checkbox-btn:hover span i {
        filter: invert(1); }
  .checkbox-btn_circle span {
    padding-left: 0;
    padding-right: 0;
    max-width: 40px;
    width: 100%; }
  @media screen and (max-width: 1580px) {
    .checkbox-btn span {
      font-size: 14px; } }
  @media (max-width: 1370px) {
    .checkbox-btn span {
      font-size: 12px;
      padding: 11px 13px; } }
  @media screen and (max-width: 900px) {
    .checkbox-btn:hover {
      color: var(--color-black);
      background: white; }
      .checkbox-btn:hover span i {
        filter: none; } }

.range_input {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 55px;
  width: 100%; }
  .range_input input[type="range"] {
    box-sizing: border-box;
    -webkit-appearance: none;
            appearance: none;
    width: 100%;
    margin: 0;
    padding: 0 2px;
    overflow: hidden;
    border: 0;
    border-radius: 1px;
    outline: none;
    background-size: 100% 2px;
    pointer-events: none; }
    .range_input input[type="range"]:active, .range_input input[type="range"]:focus {
      outline: none; }
    .range_input input[type="range"]::-webkit-slider-thumb {
      height: 15px;
      width: 15px;
      border-radius: 28px;
      background: #ffffff;
      z-index: 10;
      position: relative;
      margin: 7px 0;
      cursor: pointer;
      -webkit-appearance: none;
              appearance: none;
      pointer-events: all;
      box-shadow: 0 1px 4px 0.5px rgba(0, 0, 0, 0.25); }
      .range_input input[type="range"]::-webkit-slider-thumb::before {
        content: " ";
        display: block;
        position: absolute;
        top: 13px;
        left: 100%;
        width: 2000px;
        height: 2px; }
    .range_input input[type="range"]::-moz-range-thumb {
      border: none;
      height: 15px;
      width: 15px;
      border-radius: 50%;
      background: #ffffff;
      pointer-events: all;
      cursor: pointer; }
    .range_input input[type="range"]::-moz-range-track {
      height: 2px;
      background: #d0dbda;
      border: none;
      border-radius: 0; }
  .range_input .multi_range {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    width: 100%; }
    .range_input .multi_range .rnd {
      background-color: #FFFFFF;
      height: 2px;
      position: absolute;
      z-index: 50;
      left: 13%;
      right: 31%;
      top: 12px; }
    .range_input .multi_range .rnd2 {
      background-color: #FFFFFF;
      height: 2px;
      position: absolute;
      z-index: 10;
      left: 13%;
      right: 31%;
      top: 9px; }
    .range_input .multi_range input[type="range"] {
      margin-bottom: 0;
      height: 27px; }
      .range_input .multi_range input[type="range"]:nth-child(2) {
        position: absolute;
        background: none; }
    .range_input .multi_range_input1 {
      z-index: 20; }
    .range_input .multi_range_input2 {
      background: linear-gradient(#d0dbda, #d0dbda) no-repeat center; }
    .range_input .multi_range .range-values {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%; }
      .range_input .multi_range .range-values .multi_range_input_field {
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        border-bottom: 1px solid #989787;
        padding-bottom: 3px; }
        .range_input .multi_range .range-values .multi_range_input_field sup {
          font-size: 14px; }
      .range_input .multi_range .range-values .multi_range_input_field:hover {
        cursor: default; }
      .range_input .multi_range .range-values .multi_range_input_field input:hover {
        background-color: #d0dbda;
        cursor: pointer; }
      .range_input .multi_range .range-values label {
        color: white; }
      .range_input .multi_range .range-values input[type="text"] {
        width: 50px;
        text-align: left;
        border: none;
        width: 33px;
        background: transparent;
        color: #ffffff; }
      .range_input .multi_range .range-values span {
        color: #ffffff; }
      .range_input .multi_range .range-values input:focus {
        border: none;
        outline-width: 0;
        background-color: var(--color-smoky-white); }
  @media screen and (max-width: 1580px) {
    .range_input .multi_range .range-values .multi_range_input_field {
      font-size: 14px; } }
  @media (max-width: 1370px) {
    .range_input .multi_range .range-values .multi_range_input_field {
      font-size: 12px; } }

.range_input_single {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 55px;
  width: 100%; }
  .range_input_single input[type="range"] {
    box-sizing: border-box;
    -webkit-appearance: none;
            appearance: none;
    width: 100%;
    margin: 0;
    padding: 0 2px;
    overflow: hidden;
    border: 0;
    border-radius: 1px;
    outline: none;
    background-size: 100% 2px;
    pointer-events: none;
    height: 27px; }
    .range_input_single input[type="range"]:active, .range_input_single input[type="range"]:focus {
      outline: none; }
    .range_input_single input[type="range"]::-webkit-slider-thumb {
      height: 13px;
      width: 13px;
      border-radius: 28px;
      background-color: #FFFFFF;
      z-index: 10;
      position: relative;
      margin: 7px 0;
      cursor: pointer;
      -webkit-appearance: none;
              appearance: none;
      pointer-events: all;
      box-shadow: 0 1px 4px 0.5px rgba(0, 0, 0, 0.25); }
      .range_input_single input[type="range"]::-webkit-slider-thumb::before {
        content: " ";
        display: block;
        position: absolute;
        top: 13px;
        left: 100%;
        width: 2000px;
        height: 2px; }
    .range_input_single input[type="range"]::-moz-range-thumb {
      border: none;
      height: 15px;
      width: 15px;
      border-radius: 50%;
      background: black;
      pointer-events: all;
      cursor: pointer; }
    .range_input_single input[type="range"]::-moz-range-track {
      height: 2px;
      background: #d0dbda;
      border: none;
      border-radius: 0; }
  .range_input_single .single_range {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0;
    width: 100%; }
    .range_input_single .single_range .rnd {
      background-color: #FFFFFF;
      height: 2px;
      position: absolute;
      z-index: 50;
      left: 0%;
      right: 31%;
      top: 13px; }
    .range_input_single .single_range input[type="range"] {
      margin-bottom: 0;
      background: linear-gradient(#d0dbda, #d0dbda) no-repeat center;
      background-size: 100% 2px;
      z-index: 20; }
    .range_input_single .single_range .range-values {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%; }
      .range_input_single .single_range .range-values .single_range_input_field {
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        border-bottom: 1px solid #989787;
        padding-bottom: 3px; }
        .range_input_single .single_range .range-values .single_range_input_field sup {
          font-size: 14px; }
      .range_input_single .single_range .range-values .single_range_input_field:hover {
        cursor: default; }
      .range_input_single .single_range .range-values .single_range_input_field input:hover {
        background-color: #d0dbda;
        cursor: pointer; }
      .range_input_single .single_range .range-values label {
        color: white; }
      .range_input_single .single_range .range-values input[type="text"] {
        width: 50px;
        text-align: left;
        border: none;
        width: 33px; }
      .range_input_single .single_range .range-values input:focus {
        border: none;
        outline-width: 0;
        background-color: var(--color-smoky-white); }
  @media screen and (max-width: 1580px) {
    .range_input_single .single_range .range-values .single_range_input_field {
      font-size: 14px; } }
  @media (max-width: 1370px) {
    .range_input_single .single_range .range-values .single_range_input_field {
      font-size: 12px; } }

.price_input label {
  position: relative;
  font-size: 16px;
  font-weight: 500;
  height: 100%;
  display: block; }
  .price_input label span {
    position: absolute;
    z-index: 50;
    color: #F2F2F2;
    text-transform: uppercase;
    top: 50%;
    transform: translateY(-50%);
    left: 21px; }
  .price_input label input {
    z-index: 10;
    border: none;
    background: #191919;
    color: #F2F2F2;
    padding: 11px 21px 11px 50px;
    width: 100%;
    max-width: 165px;
    min-width: 140px; }
    .price_input label input:active, .price_input label input:focus {
      outline: none; }

@media screen and (max-width: 1580px) {
  .price_input label span {
    font-size: 14px; }
  .price_input label input {
    font-size: 14px; } }

@media (max-width: 1370px) {
  .price_input label span {
    font-size: 12px;
    left: 16px; }
  .price_input label input {
    padding: 10px 20px 11px 35px;
    font-size: 12px; } }

.select_wrapper {
  flex-wrap: nowrap;
  align-items: center;
  display: flex;
  gap: 20px; }
  .select_wrapper .select__label {
    font-size: 16px;
    color: white; }
  .select_wrapper > .select2-container {
    min-width: 78px; }

.page-header {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 10px 0;
  min-height: 142px; }
  .page-header_h1 {
    flex: 0 0 calc(50% - 20px);
    text-align: left;
    color: #FFFFFF; }
    .page-header_h1 h1, .page-header_h1 .h1 {
      font-size: 48px;
      font-weight: 300; }
  .page-header_phone {
    flex: 0 0 30%;
    font-size: 48px;
    font-weight: 300;
    text-align: center; }
    .page-header_phone a {
      color: #FFFFFF; }
  .page-header_breadcrumbs {
    flex: 0 0 calc(50% - 20px);
    text-align: right; }
    .page-header_breadcrumbs ul {
      list-style: none;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      flex-wrap: nowrap;
      gap: 3px 15px; }
      .page-header_breadcrumbs ul li {
        font-size: 16px;
        text-transform: lowercase;
        white-space: nowrap; }
        .page-header_breadcrumbs ul li a {
          position: relative;
          color: #FFFFFF; }
          .page-header_breadcrumbs ul li a:hover {
            text-decoration: underline; }
          .page-header_breadcrumbs ul li a:after {
            position: absolute;
            content: '/';
            right: -12px; }
        .page-header_breadcrumbs ul li span {
          color: #FFFFFF; }
  .page-header_contacts .page-header_h1,
  .page-header_contacts .page-header_breadcrumbs {
    flex: 0 0 30%; }
  @media screen and (max-width: 1580px) {
    .page-header_h1 h1, .page-header_h1 .h1 {
      font-size: 40px; }
    .page-header_phone {
      font-size: 40px; } }
  @media (max-width: 1370px) {
    .page-header_h1 h1, .page-header_h1 .h1 {
      font-size: 36px; }
    .page-header_phone {
      font-size: 36px; } }
  @media (max-width: 1100px) {
    .page-header_h1 h1, .page-header_h1 .h1 {
      font-size: 24px; }
    .page-header_phone {
      font-size: 24px; } }
  @media screen and (max-width: 900px) {
    .page-header {
      flex-wrap: wrap;
      gap: 15px;
      min-height: 60px; }
      .page-header_h1, .page-header_phone {
        flex: 0 0 100% !important;
        text-align: left; }
      .page-header_h1 h1, .page-header_h1 .h1 {
        margin: 0; }
      .page-header_breadcrumbs {
        display: none; } }

/*
Пример
        @font-face {
          font-family: 'IBM Plex Sans';
          src: url('/local/templates/gurus/assets/css/../fonts/ibm_plex_sans_semibold.ttf') format('truetype');
          font-weight: 600;
          font-style: normal;
        }
*/
[tab-title] {
  cursor: pointer; }

[tab-content] {
  opacity: 0;
  display: none; }

[data-tab_title] {
  cursor: pointer; }

[data-tab_container] {
  height: 0px;
  overflow: hidden;
  transition: height 0.3s cubic-bezier(0.5, 1, 0.89, 1); }

.svg_logo_name path {
  fill: var(--color-black); }

/* Изображения lightbox */
.lb-cancel {
  background: url(/local/templates/gurus/assets/css/../img/lightbox/close.png) no-repeat; }

.lb-nav a.lb-prev {
  background: url(/local/templates/gurus/assets/css/../img/lightbox/prev.png) left 48% no-repeat; }

.lb-nav a.lb-next {
  background: url(/local/templates/gurus/assets/css/../img/lightbox/next.png) right 48% no-repeat; }

.lb-data .lb-close {
  background: url(/local/templates/gurus/assets/css/../img/lightbox/close.png) top right no-repeat; }

/* /Изображения lightbox */
.global_backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #182827E5;
  z-index: 590;
  visibility: hidden;
  opacity: 0;
  transition: all .3s ease-out; }
  .global_backdrop.is-active {
    visibility: visible;
    opacity: 1; }

.modal {
  position: fixed;
  top: 0px;
  right: 0px;
  background: #101B1A;
  width: 100%;
  max-width: 839px;
  height: 100vh;
  z-index: 600;
  transition: all 0.3s ease-out;
  transform: translateX(100%) translateY(0%);
  opacity: 0;
  visibility: hidden;
  padding: 33px 117px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
  overflow: auto;
  /* Hover/Active */
  /* Disabled */
  /* Список файлов */ }
  .modal.is-active {
    visibility: visible;
    opacity: 1;
    transform: translateX(0%) translateY(0%); }
  .modal_imgfon {
    bottom: 0px;
    right: 0px;
    width: 374px;
    height: 170px;
    position: absolute;
    background-image: url(/local/templates/gurus/assets/css/../img/masks/modal_fon.png); }
  .modal__inputs {
    display: flex;
    flex-direction: column;
    gap: 27px;
    width: 100%; }
  .modal .input {
    width: 100%; }
  .modal__close {
    background-color: var(--color-pink);
    border: 0px;
    width: 50px;
    height: 50px;
    padding: 0px; }
    .modal__close img {
      width: 22px;
      height: 22px; }
  .modal__title {
    font-size: 48px;
    font-weight: 300;
    line-height: 58px;
    letter-spacing: 0em;
    color: #FFFFFF; }
  .modal__desc {
    color: var(--color-gray-mid);
    font-size: 18px;
    font-weight: 300;
    line-height: 25px;
    letter-spacing: 0em;
    margin-top: 14px; }
  .modal_success_content {
    margin-bottom: 50px; }
  .modal_filters {
    max-width: 1150px;
    padding: var(--top-padding-filter-modal) 54px var(--bottom-padding-filter-modal) 54px;
    background: #101B1A; }
    .modal_filters_close {
      position: absolute;
      top: 58px;
      left: 62px;
      cursor: pointer;
      display: flex;
      height: 45px;
      align-items: center; }
      .modal_filters_close span {
        font-size: 16px;
        color: #ffffff;
        position: relative;
        padding-left: 40px; }
        .modal_filters_close span:before {
          position: absolute;
          content: '';
          width: 33px;
          height: 33px;
          display: block;
          background: url("/local/templates/gurus/assets/css/../img/icons/ic_modal_filter_close.svg") no-repeat center;
          background-size: contain;
          left: 0;
          top: 50%;
          transform: translateY(-50%); }
    .modal_filters_wrapper {
      width: 100%;
      display: flex;
      flex-wrap: nowrap;
      height: 100%;
      max-height: calc(100% - var(--bottom-padding-filter-modal));
      overflow-y: auto;
      /* W3C standard сейчас только для Firefox */
      /* для Chrome/Edge/Safari */ }
      .modal_filters_wrapper {
        scrollbar-width: thin;
        scrollbar-color: #5D6D6C #D0DBDA; }
      .modal_filters_wrapper::-webkit-scrollbar {
        height: 4px;
        width: 4px; }
      .modal_filters_wrapper::-webkit-scrollbar-track {
        background: #D0DBDA; }
      .modal_filters_wrapper::-webkit-scrollbar-thumb {
        background-color: #5D6D6C; }
    .modal_filters_set {
      width: 100%; }
      .modal_filters_set_caption {
        text-transform: lowercase;
        font-size: 16px;
        color: #5D6D6C;
        display: block;
        line-height: 1.3;
        margin-bottom: 20px; }
    .modal_filters_column {
      display: flex;
      flex-wrap: wrap;
      gap: 36px;
      border-right: 1px solid #D0DBDA;
      padding: 0 42px;
      align-content: flex-start; }
      .modal_filters_column:first-of-type {
        padding-left: 0;
        flex: 0 0 440px; }
      .modal_filters_column:last-of-type {
        border: none;
        padding-right: 0; }
    .modal_filters_group {
      display: flex;
      flex-wrap: wrap;
      gap: 13px;
      position: relative;
      align-items: center; }
    .modal_filters_buttons {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      display: flex;
      flex-wrap: nowrap;
      padding-left: 10px;
      padding-bottom: 15px; }
      .modal_filters_buttons #reset_filter {
        border: none;
        order: 1; }
      .modal_filters_buttons #apply_filter {
        order: 2; }
  @media screen and (max-width: 1580px) {
    .modal {
      max-width: 627px; }
      .modal__title {
        font-size: 40px; }
      .modal__desc {
        font-size: 16px; }
      .modal .header_buttons_flats,
      .modal .tablet-hidden {
        padding: 10px 17px;
        padding: 11px 16px;
        height: -moz-fit-content;
        height: fit-content; }
      .modal .modal__close {
        border: 0px;
        width: 40px;
        height: 40px;
        padding: 0px; }
      .modal .btn_cube {
        padding: 15px 20px; }
      .modal_filters {
        max-width: 1140px; } }
  .modal .input-file-row {
    display: inline-block; }
    .modal .input-file-row svg {
      transition: 0.3s;
      stroke: #FFFFFF; }
  .modal .input-file {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px; }
  .modal .input-file span {
    position: relative;
    display: inline-block;
    cursor: pointer;
    outline: none;
    text-decoration: none;
    font-size: 24px;
    vertical-align: middle;
    text-align: center;
    color: #FFFFFF;
    font-weight: 500;
    box-sizing: border-box;
    border: none;
    margin: 0;
    transition: background-color 0.2s; }
  .modal .input-file input[type=file] {
    position: absolute;
    z-index: -1;
    opacity: 0;
    display: block;
    width: 0;
    height: 0; }
  .modal .input-file-row:hover span svg {
    stroke: #E3104D;
    transform: rotate(40deg); }
  .modal .input-file-list {
    padding: 10px 0px; }
  .modal .input-file-list-item {
    margin-bottom: 10px; }
  .modal .input-file-list-name {
    color: #ffffff; }
  .modal .input-file-list-remove {
    color: #E3104D;
    text-decoration: none;
    display: inline-block;
    margin-left: 10px;
    font-size: 18px; }
  @media (max-width: 1370px) {
    .modal_filters {
      max-width: 478px;
      padding: var(--top-padding-filter-modal) 32px var(--bottom-padding-filter-modal) 59px; }
      .modal_filters_wrapper {
        flex-wrap: wrap;
        gap: 30px; }
      .modal_filters_set_caption {
        font-size: 12px;
        margin-bottom: 18px; }
      .modal_filters_group {
        gap: 8px; }
      .modal_filters_column {
        gap: 30px;
        padding: 0 35px 0 0 !important;
        border: none;
        flex: 0 0 100% !important; }
      .modal_filters_buttons {
        padding-left: 40px; } }
  @media screen and (max-width: 1200px) {
    .modal__title {
      font-size: 36px; }
    .modal__desc {
      font-size: 14px; }
    .modal .input {
      height: 55px;
      font-size: 16px; }
    .modal .btn_cube {
      padding: 15px 17px; } }
  @media screen and (max-width: 900px) {
    .modal {
      max-width: 100%;
      padding: 0px 150px; }
      .modal__close {
        background-color: #d0dbda00;
        position: absolute;
        top: 20px;
        right: 20px; }
      .modal_filters {
        padding-top: var(--top-padding-filter-modal); }
        .modal_filters_close {
          left: initial;
          right: 167px;
          width: 34px;
          height: 34px;
          top: 72px; }
          .modal_filters_close span {
            font-size: 0px; }
        .modal_filters_wrapper {
          width: 100%;
          max-width: 70vw; }
        .modal_filters_buttons {
          padding: 0; }
          .modal_filters_buttons #reset_filter {
            order: 2;
            flex: 0 0 35%;
            padding: 9px 17px; }
          .modal_filters_buttons #apply_filter {
            order: 1;
            flex: 0 0 65%;
            padding: 9px 17px; }
      .modal .input-file span {
        font-size: 16px; } }
  @media screen and (max-width: 640px) {
    .modal {
      padding: 0px 50px 20px 50px;
      height: 100vh;
      overflow: scroll; }
      .modal_filters {
        padding: 60px 20px 20px 20px; }
        .modal_filters_wrapper {
          width: 100%;
          max-width: 500px; }
        .modal_filters_column {
          padding: 0 15px 0 0 !important; }
        .modal_filters_close {
          top: 15px;
          right: 20px; }
      .modal .input {
        height: 36px;
        line-height: 1;
        overflow: hidden;
        font-size: 14px; }
        .modal .input input {
          padding: 0 8px;
          line-height: 1;
          font-size: 14px; }
      .modal__inputs {
        gap: 14px; } }

.modal_contact_group {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between; }
  .modal_contact_group .row {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 16px;
    flex-direction: row;
    justify-content: flex-end; }

.modal_contact_form {
  width: 100%;
  display: flex;
  gap: 34px;
  flex-direction: column; }
  .modal_contact_form .row {
    display: flex;
    gap: 24px;
    justify-content: flex-start;
    align-items: center; }

@media screen and (max-width: 1580px) {
  .modal_contact_form .row {
    gap: 55px; } }

@media screen and (max-width: 900px) {
  .modal_contact .header_buttons_flats {
    display: none; } }

@media screen and (max-width: 640px) {
  .modal_contact_form {
    gap: 17px; }
    .modal_contact_form .row {
      gap: 0px;
      align-items: flex-start;
      flex-direction: column; }
      .modal_contact_form .row br {
        display: none; } }

.modal_mortgage .modal__desc {
  flex: 0 0 100%; }

.modal_mortgage .modal__inputs .input {
  max-width: 98%; }

.modal_mortgage__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  overflow: auto;
  height: auto;
  max-height: 26vh;
  padding-right: 5px;
  /* W3C standard сейчас только для Firefox */
  /* для Chrome/Edge/Safari */ }
  .modal_mortgage__list {
    scrollbar-width: thin;
    scrollbar-color: #5D6D6C #D0DBDA; }
  .modal_mortgage__list::-webkit-scrollbar {
    height: 4px;
    width: 4px; }
  .modal_mortgage__list::-webkit-scrollbar-track {
    background: #D0DBDA; }
  .modal_mortgage__list::-webkit-scrollbar-thumb {
    background-color: #5D6D6C; }
  .modal_mortgage__list_item {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: space-between;
    border: 1px #FFFFFF solid;
    align-items: center;
    gap: 10px;
    padding: 15px; }
  .modal_mortgage__list_logo img {
    height: 100%;
    max-height: 36px;
    object-fit: contain;
    display: table; }
  .modal_mortgage__list_title {
    font-size: 24px;
    font-weight: 400;
    flex: auto;
    text-align: left;
    color: #FFFFFF; }
  .modal_mortgage__list_remove {
    cursor: pointer;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-pink);
    border-radius: 40px;
    overflow: hidden;
    filter: grayscale(1);
    opacity: .7;
    transition: .3s; }
    .modal_mortgage__list_remove .ic {
      width: 20px;
      height: 20px; }
    .modal_mortgage__list_remove:hover {
      filter: grayscale(0);
      opacity: 1; }

@media screen and (max-width: 1580px) {
  .modal_mortgage__list_item {
    padding: 7px 15px; } }

@media screen and (max-width: 640px) {
  .modal_mortgage .modal_contact_form .row {
    flex-direction: row; }
  .modal_mortgage__list_item {
    padding: 2px 10px; }
  .modal_mortgage__list_title {
    font-size: 16px; }
  .modal_mortgage__list_logo img {
    max-height: 24px; }
  .modal_mortgage__list_remove .ic {
    width: 14px;
    height: 14px; } }

#vacanciesModal .vacancies {
  background-color: #D0DBDA;
  display: flex;
  align-items: center;
  padding: 18px;
  height: -moz-fit-content;
  height: fit-content;
  min-height: 68px; }
  #vacanciesModal .vacancies_name {
    font-weight: 500;
    font-size: 18px;
    color: #000000; }

@media screen and (max-width: 640px) {
  #vacanciesModal .vacancies {
    padding: 10px;
    min-height: 36px; }
    #vacanciesModal .vacancies_name {
      font-size: 14px; } }

.footer .content-wrapper {
  display: flex;
  flex-wrap: nowrap;
  border-top: 1px #D0DBDA solid;
  padding-bottom: 39px; }

.footer_left {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  border-right: 1px #D0DBDA solid;
  display: flex;
  flex-direction: column;
  padding-top: 58px;
  padding-right: 49px;
  justify-content: space-between;
  padding-bottom: 40px; }

.footer_right {
  flex: 0 0 calc(50% - 1px);
  width: calc(50% - 1px);
  max-width: calc(50% - 1px);
  display: flex;
  flex-wrap: nowrap;
  padding-top: 65px;
  padding-left: 60px; }

.footer_row {
  display: flex;
  width: 100%;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between; }
  .footer_row:last-of-type {
    align-items: flex-end; }

.footer_contacts {
  display: flex;
  flex-direction: column;
  gap: 25px;
  color: white; }

.footer_phone {
  font-size: 48px;
  font-weight: 300;
  color: white; }

.footer_address {
  font-size: 24px; }
  .footer_address p {
    line-height: 40px; }

.footer_buttons {
  display: flex;
  flex-direction: column;
  gap: 29px;
  margin-top: 12px;
  align-items: flex-end; }

.footer_worktime {
  color: white;
  font-size: 24px; }
  .footer_worktime p {
    margin-top: 11px; }

.footer_wa {
  font-size: 18px;
  font-weight: 500;
  color: white; }
  .footer_wa:hover {
    text-decoration: underline; }
  .footer_wa span {
    color: var(--color-whatsapp); }

.footer_menu {
  flex: 0 0 45%;
  width: 45%;
  max-width: 45%; }
  .footer_menu ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .footer_menu ul li {
      margin-bottom: 16px;
      color: white; }
      .footer_menu ul li a {
        font-size: 18px;
        font-weight: 500;
        text-transform: lowercase; }
        .footer_menu ul li a:hover {
          text-decoration: underline; }

.footer_other-links {
  flex: 0 0 55%;
  width: 55%;
  max-width: 55%;
  display: flex;
  flex-direction: column;
  margin-top: 6px;
  align-items: flex-end;
  gap: 61px; }

.footer_catalog-link {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%;
  max-width: 286px;
  padding: 26px 33px;
  gap: 0;
  position: relative; }
  .footer_catalog-link span {
    white-space: pre-wrap;
    line-height: 1.2;
    font-weight: 300;
    font-size: 16px;
    text-transform: lowercase; }
    .footer_catalog-link span:first-of-type {
      font-weight: 500;
      font-size: 18px;
      text-transform: uppercase; }
    .footer_catalog-link span.ic {
      position: absolute;
      top: 58%;
      right: 26px; }

.footer_offer {
  border-radius: 20px;
  font-size: 18px;
  color: white;
  font-weight: 500;
  background-blend-mode: multiply;
  background-color: #e1e1e1;
  padding: 29px 26px;
  width: 100%;
  max-width: 405px;
  height: 231px;
  line-height: 1.3;
  transition: .3s; }
  .footer_offer:hover {
    filter: brightness(1.2); }

.footer_starta {
  background: #101b1a;
  padding-top: 14px;
  padding-bottom: 7px; }
  .footer_starta a {
    display: table;
    margin: 0 0 0 auto; }
    .footer_starta a:hover {
      opacity: .7; }

@media (max-width: 1680px) {
  .footer_offer {
    font-size: 17px; } }

@media screen and (max-width: 1580px) {
  .footer {
    padding-bottom: 35px; }
    .footer .content-wrapper {
      padding: 0 20px; }
    .footer_left {
      flex: 0 0 51%;
      width: 51%;
      max-width: 51%;
      padding-top: 45px;
      padding-right: 36px; }
    .footer_right {
      flex: 0 0 49%;
      width: 49%;
      max-width: 49%;
      padding-top: 52px;
      padding-left: 51px; }
    .footer_phone {
      font-size: 40px; }
    .footer_address {
      font-size: 18px; }
      .footer_address p {
        line-height: 30px; }
    .footer_contacts {
      gap: 22px; }
    .footer_buttons {
      gap: 22px; }
    .footer_menu ul li {
      margin-bottom: 12px; }
      .footer_menu ul li a {
        font-size: 16px; }
    .footer_catalog-link {
      max-width: 235px;
      border-radius: 20px;
      padding: 20px 30px; }
      .footer_catalog-link span {
        font-size: 16px; }
        .footer_catalog-link span:first-of-type {
          font-size: 14px; }
        .footer_catalog-link span.ic {
          top: 58%;
          right: 12px; }
    .footer_other-links {
      gap: 48px; }
    .footer_offer {
      max-width: 328px;
      height: 188px;
      font-size: 16px;
      padding: 23px; }
    .footer_worktime {
      font-size: 18px; }
    .footer_wa {
      font-size: 16px; }
    .footer_starta {
      padding-top: 11px;
      padding-bottom: 5px; }
      .footer_starta .content-wrapper {
        padding: 0 20px; }
      .footer_starta a {
        width: 100%;
        max-width: 171px; } }

@media (max-width: 1370px) {
  .footer .content-wrapper {
    padding: 0; }
  .footer_phone {
    font-size: 36px; }
  .footer_address {
    font-size: 16px; }
    .footer_address p {
      line-height: 28px; }
  .footer_worktime {
    font-size: 16px; }
  .footer_left {
    padding-top: 43px;
    padding-right: 41px; }
  .footer_right {
    padding-top: 46px;
    padding-left: 44px; }
  .footer_contacts {
    gap: 18px; }
  .footer_buttons {
    gap: 28px; }
  .footer_menu ul li {
    margin-bottom: 11px; }
    .footer_menu ul li a {
      font-size: 14px; }
  .footer_catalog-link {
    max-width: 202px;
    border-radius: 20px;
    padding: 13px 28px 13px 18px; }
    .footer_catalog-link span {
      font-size: 14px; }
      .footer_catalog-link span:first-of-type {
        font-size: 12px; }
  .footer_other-links {
    margin-top: 12px;
    gap: 54px; }
  .footer_offer {
    max-width: 306px;
    height: 173px;
    font-size: 14px;
    padding: 21px 18px;
    line-height: 1.4; }
  .footer_starta .content-wrapper {
    padding: 0; } }

@media screen and (max-width: 1200px) {
  .footer {
    padding-bottom: 20px; }
    .footer_phone {
      font-size: 24px; }
    .footer_left {
      padding-top: 30px;
      padding-right: 30px;
      padding-bottom: 20px; }
    .footer_right {
      padding-top: 30px;
      padding-left: 30px; }
    .footer_buttons {
      margin-top: 5px; }
    .footer_contacts {
      gap: 12px; }
    .footer_address {
      font-size: 14px; }
      .footer_address p {
        line-height: 1.4; }
    .footer_buttons {
      gap: 18px; }
    .footer_catalog-link {
      max-width: 190px;
      border-radius: 20px;
      padding: 10px 26px 10px 14px; }
      .footer_catalog-link span {
        font-size: 12px; }
    .footer_menu {
      flex: 0 0 50%;
      width: 50%;
      max-width: 50%; }
    .footer_other-links {
      flex: 0 0 50%;
      width: 50%;
      max-width: 50%;
      margin-top: 8px;
      gap: 22px; }
    .footer_menu ul li {
      margin-bottom: 11px;
      line-height: 1; }
    .footer_offer {
      height: 150px;
      font-size: 12px;
      padding: 14px;
      line-height: 1.2; }
    .footer_worktime {
      font-size: 14px; }
    .footer_wa {
      font-size: 14px; } }

@media screen and (max-width: 900px) {
  .footer {
    padding-bottom: 20px; }
    .footer .content-wrapper {
      flex-direction: column;
      padding-top: 25px; }
    .footer_phone {
      font-size: 16px;
      font-weight: 500;
      margin-top: 5px;
      margin-bottom: 26px; }
    .footer_menu {
      flex: 0 0 100%;
      width: 100%;
      max-width: 100%; }
      .footer_menu ul li {
        margin-bottom: 10px; }
    .footer_wa {
      font-size: 14px; }
    .footer_starta {
      padding-top: 1px;
      padding-bottom: 3px; }
      .footer_starta a {
        max-width: 110px; } }

@media screen and (max-width: 640px) {
  .footer {
    padding-bottom: 27px; }
    .footer_phone {
      margin-top: 3px;
      margin-bottom: 20px; }
    .footer_menu ul li {
      margin-bottom: 12px; }
    .footer_starta a {
      margin: 0 auto; } }

.header .content-wrapper {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 25px 0;
  gap: 35px;
  position: relative;
  z-index: 500;
  height: var(--header-height); }

.header_links {
  flex: auto;
  transition: .2s; }
  .header_links ul {
    display: flex;
    flex-wrap: nowrap;
    gap: 23px;
    list-style: none;
    margin: 0;
    padding: 0;
    font-weight: 500;
    font-size: 18px;
    text-transform: lowercase;
    align-items: center;
    line-height: 1;
    padding: 10px 20px;
    background: #2f3d3c;
    color: white;
    border-radius: 30px;
    width: -moz-fit-content;
    width: fit-content; }
    .header_links ul li {
      position: relative;
      padding-left: 25px;
      padding-right: 10px;
      line-height: 1; }
      .header_links ul li:before {
        position: absolute;
        content: '';
        width: 6px;
        height: 6px;
        background: white;
        top: 62%;
        left: 6px;
        transform: translateY(-50%); }
      .header_links ul li a {
        line-height: 1; }
        .header_links ul li a:hover {
          text-decoration: underline; }
      .header_links ul li.active a {
        color: white; }
      .header_links ul li.active:before {
        background: white; }

.header_logo {
  transition: .2s;
  flex: 0 0 210px;
  width: 210px;
  max-width: 210px; }
  .header_logo a {
    display: table;
    margin: 0 auto; }

.header_buttons {
  flex: auto;
  display: flex;
  gap: 19px;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end; }

@media screen and (max-width: 1580px) {
  .header .content-wrapper {
    padding: 20px 20px; }
  .header_links ul {
    font-size: 16px;
    padding: 8px 18px 9px 18px; }
  .header_logo a {
    max-width: 144px; }
    .header_logo a svg {
      width: 100%;
      height: 100%; }
  .header_buttons {
    gap: 13px; } }

@media (max-width: 1370px) {
  .header .content-wrapper {
    padding: 17px 0; }
  .header_links ul {
    font-size: 14px;
    padding: 6px 9px;
    gap: 9px; }
  .header_buttons {
    gap: 26px; } }

@media (max-width: 1000px) {
  .header .content-wrapper {
    gap: 25px; }
  .header_links ul li {
    padding-left: 20px;
    padding-right: 5px; }
  .header_logo {
    flex: 0 0 180px;
    width: 180px;
    max-width: 180px; }
  .header_buttons {
    gap: 15px; } }

@media screen and (max-width: 900px) {
  .header .content-wrapper {
    padding: 19px 0; }
  .header_logo {
    flex: 0 0 38%;
    width: 38%;
    max-width: 38%; }
    .header_logo a {
      margin-left: 0; }
  .header_buttons {
    flex: auto;
    max-width: 50%;
    width: max-content;
    justify-content: space-between; }
    .header_buttons_flats {
      transform: translateX(-50%); }
  .header_dark-tablet-bg a .svg_logo_name path {
    fill: white; }
  .header_dark-tablet-bg .btn {
    border-color: white;
    color: white; }
  .header_dark-tablet-bg .btn_burger_line {
    background-color: white; } }

@media screen and (max-width: 640px) {
  .header .content-wrapper {
    padding: 8px 0; }
  .header_logo {
    flex: 0 0 28%;
    width: 28%;
    max-width: 28%; }
    .header_logo a {
      max-width: 87px; } }

@media (max-width: 380px) {
  .header_logo {
    flex: 0 0 32%;
    width: 32%;
    max-width: 32%; }
  .header_buttons {
    max-width: 100%; }
    .header_buttons_flats {
      transform: none; } }

.general_menu {
  position: fixed;
  top: 0;
  right: calc(0px - 101% - 3px);
  bottom: 0;
  left: calc(101% + 3px);
  display: block;
  background: #101b1a;
  z-index: 450;
  transition: .3s;
  transition-timing-function: linear; }
  .general_menu .content-wrapper {
    margin-top: var(--general-menu-margin);
    display: flex;
    flex-wrap: nowrap;
    gap: 116px; }
  .general_menu_left {
    order: 1;
    height: calc(95vh - var(--general-menu-margin));
    padding-bottom: 40px;
    flex: 0 0 38%;
    width: 38%;
    padding-right: 30px;
    border-right: 1px #D0DBDA solid;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 20px;
    flex-direction: column; }
  .general_menu_right {
    order: 2;
    height: calc(100vh - var(--general-menu-margin));
    flex: auto;
    margin-top: 9px;
    padding-bottom: 50px; }
  .general_menu_phone {
    order: 1;
    height: 15%;
    color: white; }
    .general_menu_phone a {
      font-size: 48px;
      line-height: 1;
      display: table;
      font-weight: 300;
      white-space: nowrap; }
  .general_menu_links {
    order: 2;
    padding-right: 10px;
    overflow-y: auto;
    /* W3C standard сейчас только для Firefox */
    /* для Chrome/Edge/Safari */ }
    .general_menu_links {
      scrollbar-width: thin;
      scrollbar-color: transparent transparent; }
    .general_menu_links::-webkit-scrollbar {
      height: 4px;
      width: 4px; }
    .general_menu_links::-webkit-scrollbar-track {
      background: transparent; }
    .general_menu_links::-webkit-scrollbar-thumb {
      background-color: transparent; }
    .general_menu_links:hover {
      scrollbar-color: var(--color-gray-light) transparent; }
      .general_menu_links:hover::-webkit-scrollbar-thumb {
        background-color: var(--color-gray-light); }
    @media screen and (max-width: 900px) {
      .general_menu_links {
        scrollbar-color: var(--color-gray-light) transparent; }
        .general_menu_links::-webkit-scrollbar-thumb {
          background-color: var(--color-gray-light); } }
    .general_menu_links ul {
      list-style: none;
      margin: 0;
      padding: 0;
      font-size: 24px;
      font-weight: 500;
      text-transform: uppercase;
      gap: 32px;
      display: flex;
      flex-wrap: wrap; }
      .general_menu_links ul li {
        flex: 0 0 100%;
        color: white; }
        .general_menu_links ul li a {
          display: table; }
          .general_menu_links ul li a:hover {
            text-decoration: underline; }
  .general_menu_buttons {
    order: 3;
    height: 10%;
    min-height: 50px;
    display: flex;
    align-items: end; }
  .general_menu_banners {
    order: 4; }
  .general_menu_banner {
    width: 100%;
    max-width: 378px;
    height: 154px;
    display: flex;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    padding: 10px 13px;
    background-blend-mode: multiply;
    background-color: #e1e1e1; }
    .general_menu_banner p {
      font-size: 14px;
      font-weight: 500;
      color: white;
      line-height: 19px; }
    .general_menu_banner .btn {
      position: absolute;
      bottom: 13px;
      left: 13px;
      border: none;
      width: 29px;
      height: 29px;
      background-color: #FFFFFF;
      padding: 0; }
      .general_menu_banner .btn .ic_plus {
        background: url(/local/templates/gurus/assets/css/../img/icons/ic_plus_black.svg) no-repeat center;
        background-size: cover; }
  .general_menu_projects {
    padding-right: 10px;
    display: grid;
    gap: 55px 114px;
    grid-template-columns: 1fr 1fr;
    overflow-y: auto;
    height: 100%;
    /* W3C standard сейчас только для Firefox */
    /* для Chrome/Edge/Safari */ }
    .general_menu_projects {
      scrollbar-width: thin;
      scrollbar-color: transparent transparent; }
    .general_menu_projects::-webkit-scrollbar {
      height: 4px;
      width: 4px; }
    .general_menu_projects::-webkit-scrollbar-track {
      background: transparent; }
    .general_menu_projects::-webkit-scrollbar-thumb {
      background-color: transparent; }
    .general_menu_projects:hover {
      scrollbar-color: var(--color-gray-light) transparent; }
      .general_menu_projects:hover::-webkit-scrollbar-thumb {
        background-color: var(--color-gray-light); }
    @media screen and (max-width: 900px) {
      .general_menu_projects {
        scrollbar-color: var(--color-gray-light) transparent; }
        .general_menu_projects::-webkit-scrollbar-thumb {
          background-color: var(--color-gray-light); } }
    .general_menu_projects_title {
      font-size: 16px;
      color: white;
      font-weight: 500;
      text-transform: uppercase; }
  .general_menu_project_image {
    width: 100%;
    height: 282px;
    margin-bottom: 22px;
    border-radius: 5px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .general_menu_project_title {
    font-size: 24px;
    text-transform: uppercase;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 22px;
    color: white; }
  @media screen and (max-width: 1580px) {
    .general_menu .content-wrapper {
      padding-left: 20px;
      padding-right: 20px;
      gap: 90px; }
    .general_menu_left {
      flex: 0 0 32%;
      width: 32%; }
    .general_menu_phone a {
      font-size: 40px; }
    .general_menu_links ul {
      font-size: 16px;
      gap: 21px; }
    .general_menu_projects {
      gap: 49px 96px; }
    .general_menu_project_image {
      height: 238px;
      margin-bottom: 18px; }
    .general_menu_project_title {
      font-size: 18px; } }
  @media (max-width: 1370px) {
    .general_menu .content-wrapper {
      padding: 0;
      gap: 100px; }
    .general_menu_left {
      flex: 0 0 33.7%;
      width: 33.7%; }
    .general_menu_links ul {
      font-size: 18px; }
    .general_menu_projects {
      gap: 43px 90px; }
    .general_menu_project_image {
      height: 220px; } }
  @media (max-width: 1250px) {
    .general_menu .content-wrapper {
      gap: 50px; }
    .general_menu_left {
      flex: 0 0 36%;
      width: 36%;
      padding-right: 15px; }
    .general_menu_phone a {
      font-size: 30px; }
    .general_menu_links ul {
      font-size: 16px; }
    .general_menu_projects {
      gap: 35px 30px; }
    .general_menu_project_image {
      height: 180px;
      margin-bottom: 6px; } }
  @media screen and (max-width: 900px) {
    .general_menu {
      overflow-y: scroll; }
      .general_menu > .content-wrapper {
        margin-top: 24px; }
      .general_menu .content-wrapper {
        flex-wrap: wrap;
        padding-left: 24px;
        padding-right: 24px;
        gap: 23px; }
      .general_menu_left {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        order: 2;
        height: auto;
        padding-right: 0;
        gap: 40px;
        border: none; }
      .general_menu_right {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
        order: 1; }
      .general_menu_projects {
        padding: 31px 0 0 0;
        height: -moz-fit-content;
        height: fit-content;
        position: relative;
        display: flex !important;
        background: #101B1A;
        justify-content: center;
        overflow: hidden; }
        .general_menu_projects .content-wrapper {
          overflow: visible;
          margin: 0;
          max-width: var(--max-width);
          padding-bottom: 26px; }
        .general_menu_projects_title {
          margin-bottom: 21px;
          padding-top: 15px; }
          .general_menu_projects_title .content-wrapper {
            margin-top: 80px; }
      .general_menu_project_image {
        height: 131px; }
      .general_menu_project_title {
        font-size: 15px;
        white-space: nowrap;
        gap: 8px; }
        .general_menu_project_title span:first-of-type {
          text-overflow: ellipsis;
          width: -moz-fit-content;
          width: fit-content;
          overflow: hidden; }
        .general_menu_project_title span.ic {
          min-width: 16px; }
      .general_menu_phone {
        order: 2;
        height: -moz-fit-content;
        height: fit-content;
        min-height: 30px; }
        .general_menu_phone a {
          font-size: 24px; }
      .general_menu_links {
        height: -moz-fit-content;
        height: fit-content;
        overflow-y: visible;
        order: 1; }
        .general_menu_links ul {
          gap: 30px;
          font-size: 16px; }
      .general_menu_buttons {
        order: 3;
        height: -moz-fit-content;
        height: fit-content;
        min-height: 30px; } }
  @media screen and (max-width: 640px) {
    .general_menu .content-wrapper {
      padding-left: 0;
      padding-right: 0; }
    .general_menu_right {
      padding-left: 27px;
      margin-top: 63px; } }

.advantages_wrapper {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 60px; }

.advantages_item {
  flex: 0 0 calc(33% - 40px);
  width: calc(33% - 40px);
  max-width: calc(33% - 40px);
  overflow: hidden;
  position: relative; }
  .advantages_item_wrap {
    padding: 50px 40px 50% 40px;
    background: #333333;
    border-radius: 20px; }
  .advantages_item_title {
    font-size: 24px;
    font-weight: 500;
    color: #FFFFFF;
    margin-bottom: 35px; }
  .advantages_item_description {
    font-size: 18px;
    font-weight: 300;
    color: #FFFFFF; }
    .advantages_item_description p {
      margin-bottom: 10px; }
  .advantages_item_image {
    position: relative;
    transform: translateY(calc(-50% + 40px));
    width: 100%;
    max-width: 518px;
    min-height: 29vw;
    max-height: 29vw;
    height: 100%;
    -webkit-mask-size: cover;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .advantages_item:nth-of-type(1) .advantages_item_image {
    -webkit-mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_03.svg");
    mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_03.svg"); }
  .advantages_item:nth-of-type(2) .advantages_item_image {
    -webkit-mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_04.svg");
    mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_04.svg"); }
  .advantages_item:nth-of-type(3) .advantages_item_image {
    -webkit-mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_05.svg");
    mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_05.svg"); }

.advantages_promo {
  display: none; }

@media screen and (max-width: 1580px) {
  .advantages_item_wrap {
    padding: 40px 30px 50% 30px; }
  .advantages_item_title {
    font-size: 18px;
    margin-bottom: 20px; }
  .advantages_item_description {
    font-size: 16px; } }

@media (max-width: 1370px) {
  .advantages_item_title {
    font-size: 16px;
    margin-bottom: 15px; }
  .advantages_item_description {
    font-size: 14px; } }

@media screen and (max-width: 1200px) {
  .advantages_wrapper {
    flex-wrap: wrap;
    gap: 30px; }
  .advantages_item {
    flex: 0 0 calc(50% - 15px);
    width: calc(50% - 15px);
    max-width: calc(50% - 15px); }
    .advantages_item_wrap {
      padding: 30px 20px 28% 20px; }
    .advantages_item_image {
      transform: translateY(calc(-50% + 25px));
      max-width: 55%;
      min-height: 17vw;
      max-height: 25vw;
      margin-left: 20px; }
  .advantages_promo {
    display: block; } }

@media screen and (max-width: 640px) {
  .advantages {
    padding-bottom: 30px; }
    .advantages_item {
      flex: 0 0 100%;
      width: 100%;
      max-width: 100%; }
      .advantages_item_image {
        max-width: 60%;
        min-height: 37vw;
        max-height: 57vw; } }

.project_advantages {
  margin-top: 50px;
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr 1fr 1fr; }
  .project_advantages h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 500;
    line-height: 28.8px;
    color: #ffffff;
    margin-bottom: calc(0.83em + 20px); }
  .project_advantages__text {
    font-size: 18px;
    font-weight: 300;
    line-height: 25.2px;
    color: #ffffff;
    height: 100%; }
    .project_advantages__text p {
      font-size: 18px !important;
      font-weight: 300 !important;
      line-height: 25.2px !important;
      margin: 0 !important; }
  .project_advantages__item {
    border-radius: 0 0 20px 20px;
    background: #2f3d3c;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    overflow: hidden; }
    .project_advantages__item-wrapp {
      padding: 35px 35px 0;
      display: flex;
      flex-direction: column;
      width: 100%;
      margin-bottom: 110px; }
  .project_advantages__img {
    width: 100%;
    display: flex;
    margin-top: auto; }
    .project_advantages__img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  @media (max-width: 1600px) {
    .project_advantages h2 {
      font-size: 18px; }
    .project_advantages__text {
      font-size: 16px; }
      .project_advantages__text p {
        font-size: 16px !important; } }
  @media (max-width: 1400px) {
    .project_advantages h2 {
      font-size: 16px; }
    .project_advantages__item-wrapp {
      margin-bottom: 50px; } }
  @media (max-width: 1200px) {
    .project_advantages {
      grid-template-columns: repeat(2, 1fr); }
      .project_advantages__item {
        max-width: 360px;
        margin-left: auto;
        margin-right: auto; } }
  @media (max-width: 900px) {
    .project_advantages {
      grid-template-columns: repeat(1, 1fr); } }

.main_screen {
  padding-top: 37px;
  padding-bottom: 45px; }
  .main_screen .content-wrapper {
    display: flex;
    flex-wrap: nowrap;
    gap: 100px;
    min-height: 100vh; }
  .main_screen_left {
    flex: 0 0 53%;
    max-width: 888px;
    width: 53%; }
  .main_screen_right {
    flex: auto;
    overflow: hidden;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: space-around;
    gap: 32px; }
  .main_screen_offer {
    height: 38%; }
  .main_screen_image {
    width: 100%;
    max-width: 888px;
    max-height: 937px;
    height: 100%;
    background-image: url("/local/templates/gurus/assets/css/../img/main_screen_image.jpg");
    -webkit-mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_01.svg");
    mask-image: url("/local/templates/gurus/assets/css/../img/masks/mask_01.svg");
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .main_screen_title {
    font-weight: 300;
    text-transform: lowercase;
    margin-top: 35px;
    margin-bottom: 33px;
    color: white; }
    .main_screen_title p {
      line-height: 1;
      margin: 0; }
    .main_screen_title_small {
      font-size: 48px;
      padding-left: 6px; }
    .main_screen_title_large {
      font-size: 96px; }
  .main_screen_subtitle {
    font-size: 24px;
    text-transform: lowercase;
    margin-bottom: 45px;
    color: white;
    padding-left: 10px; }
  .main_screen_buttons {
    padding-left: 6px;
    margin-bottom: 53px; }
  .main_screen_carousel {
    height: 100%; }
    .main_screen_carousel .swiper {
      height: 100%;
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      gap: 5px; }
    .main_screen_carousel .swiper-pagination {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: space-between;
      gap: 0;
      bottom: 0; }
    .main_screen_carousel .swiper-pagination-bullet {
      border-radius: 0;
      margin: 0 !important;
      width: inherit;
      height: 4px;
      background: #2F3D3C; }
    .main_screen_carousel .swiper-pagination-bullet-active {
      background: #FFFFFF; }
    .main_screen_carousel .swiper-buttons {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      height: 60px; }
    .main_screen_carousel .swiper-button-prev,
    .main_screen_carousel .swiper-button-next {
      width: 51px;
      height: 100%;
      background: url("/local/templates/gurus/assets/css/../img/elements/elem_carousel_arrow.svg") no-repeat;
      background-size: contain;
      display: block;
      position: relative;
      top: initial;
      left: initial;
      right: initial;
      margin: 0; }
      .main_screen_carousel .swiper-button-prev:after,
      .main_screen_carousel .swiper-button-next:after {
        display: none; }
    .main_screen_carousel .swiper-button-prev {
      background-position: center 35%; }
    .main_screen_carousel .swiper-button-next {
      transform: rotate(180deg);
      background-position: center 65%; }
  .main_screen_slide {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    height: 100%;
    gap: 14px;
    flex-direction: column; }
    .main_screen_slide_header {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      align-items: center;
      flex-wrap: nowrap;
      width: 100%;
      height: 46px;
      color: white; }
    .main_screen_slide_name {
      font-size: 24px;
      font-weight: 500;
      position: relative;
      padding-left: 25px; }
      .main_screen_slide_name::before {
        position: absolute;
        content: '';
        width: 9px;
        height: 9px;
        display: block;
        background-color: var(--color-pink);
        top: 50%;
        left: 5px;
        transform: translateY(-50%); }
    .main_screen_slide_plate {
      background: #c5cdcd;
      display: flex;
      flex-wrap: nowrap;
      border-radius: 5px;
      max-width: 147px;
      padding: 6px 8px;
      gap: 8px;
      align-items: center;
      color: black; }
      .main_screen_slide_plate p {
        text-transform: lowercase;
        width: min-content;
        line-height: 1.2; }
        .main_screen_slide_plate p.small_text {
          font-size: 14px; }
        .main_screen_slide_plate p.large_text {
          font-size: 24px;
          font-weight: 500; }
    .main_screen_slide_image {
      border-radius: 5px;
      overflow: hidden;
      width: 100%;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      display: block;
      height: 100%;
      margin-bottom: 20px; }
    .main_screen_slide_description {
      height: 50px;
      font-size: 18px; }
      .main_screen_slide_description p {
        margin: 0;
        line-height: 1.3;
        color: white; }
  .main_screen_mobile {
    height: 105.3vh;
    min-height: 100vh; }
    .main_screen_mobile .swiper {
      height: 105.3vh;
      min-height: 100vh; }
      .main_screen_mobile .swiper-slide {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center; }
        .main_screen_mobile .swiper-slide:after {
          position: absolute;
          content: '';
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background: linear-gradient(180deg, rgba(11, 18, 17, 0.9) 14.06%, rgba(11, 18, 17, 0.5) 46.88%, rgba(11, 18, 17, 0.9) 71.87%, rgba(11, 18, 17, 0.9) 92.19%);
          display: block; }
    .main_screen_mobile_swiper-pagination {
      height: 3px !important;
      min-height: 3px !important; }
      .main_screen_mobile_swiper-pagination.swiper-pagination-bullets {
        height: 3px !important;
        min-height: 3px !important;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 9px;
        bottom: 0;
        max-width: var(--max-width);
        position: relative;
        left: initial;
        top: initial;
        right: initial;
        margin: 0 auto;
        bottom: 48px;
        z-index: 100; }
    .main_screen_mobile .swiper-pagination-bullet {
      border-radius: 0;
      margin: 0 !important;
      width: inherit;
      height: 3px;
      background-color: var(--color-gray-dark); }
    .main_screen_mobile .swiper-pagination-bullet-active {
      background-color: var(--color-gray-light); }

.main_promo {
  background-color: black;
  padding-top: 99px;
  padding-bottom: 101px; }
  .main_promo_grid {
    display: grid;
    grid-template-areas: "new offer mortgage" "new flats flats";
    grid-template-columns: 1.3fr 1.2fr 0.6fr;
    grid-template-rows: 0.85fr 1.05fr;
    gap: 32px; }
  .main_promo_new {
    grid-area: new;
    border-radius: 20px;
    height: 569px;
    background: #182827; }
    .main_promo_new_image {
      width: 100%;
      height: 74%;
      max-height: 421px;
      min-height: 74%;
      display: block;
      border-radius: 20px;
      overflow: hidden;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      position: relative;
      transition: .3s; }
    .main_promo_new_plate {
      background-color: var(--color-pink);
      font-size: 16px;
      text-transform: uppercase;
      padding: 0 12px;
      line-height: 31px;
      white-space: nowrap;
      color: white;
      display: flex;
      align-items: center;
      position: absolute;
      height: 31px;
      top: 21px;
      left: 28px; }
    .main_promo_new_description {
      height: 26%;
      padding: 15px 35px;
      overflow-y: scroll;
      /* W3C standard сейчас только для Firefox */
      /* для Chrome/Edge/Safari */ }
      .main_promo_new_description {
        scrollbar-width: thin;
        scrollbar-color: transparent transparent; }
      .main_promo_new_description::-webkit-scrollbar {
        height: 4px;
        width: 4px; }
      .main_promo_new_description::-webkit-scrollbar-track {
        background: transparent; }
      .main_promo_new_description::-webkit-scrollbar-thumb {
        background-color: transparent; }
      .main_promo_new_description:hover {
        scrollbar-color: var(--color-gray-light) transparent; }
        .main_promo_new_description:hover::-webkit-scrollbar-thumb {
          background-color: var(--color-gray-light); }
      @media screen and (max-width: 900px) {
        .main_promo_new_description {
          scrollbar-color: var(--color-gray-light) transparent; }
          .main_promo_new_description::-webkit-scrollbar-thumb {
            background-color: var(--color-gray-light); } }
    .main_promo_new_title {
      font-size: 24px;
      font-weight: 500;
      margin-bottom: 14px;
      color: white; }
    .main_promo_new_tags {
      display: flex;
      gap: 15px;
      margin-bottom: 17px;
      flex-wrap: wrap; }
      @media screen and (max-width: 1580px) {
        .main_promo_new_tags {
          gap: 12px;
          margin-bottom: 7px; } }
      @media (max-width: 1370px) {
        .main_promo_new_tags {
          gap: 10px 20px;
          margin-bottom: 10px; } }
      @media (max-width: 750px) {
        .main_promo_new_tags {
          gap: 8px; } }
    .main_promo_new_tag {
      font-size: 18px;
      line-height: 100%;
      white-space: nowrap;
      height: 35px;
      display: flex;
      align-items: center;
      padding: 0 12px;
      border-radius: 20px;
      background-color: var(--color-gray-light);
      background: #2f3d3c;
      color: white; }
      @media screen and (max-width: 1580px) {
        .main_promo_new_tag {
          font-size: 16px; } }
      @media (max-width: 1370px) {
        .main_promo_new_tag {
          font-size: 14px;
          padding: 0 11px; } }
      @media (max-width: 750px) {
        .main_promo_new_tag {
          height: 28px;
          padding: 0 9px;
          font-size: 12px; } }
      @media screen and (max-width: 640px) {
        .main_promo_new_tag {
          height: 26px; } }
    .main_promo_new_address {
      font-size: 18px;
      color: white;
      display: flex;
      align-items: center;
      gap: 10px; }
    .main_promo_new:hover .main_promo_new_image {
      filter: brightness(1.15); }
  .main_promo_offer {
    grid-area: offer;
    border-radius: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-blend-mode: multiply;
    background-color: #cbcbcb;
    padding: 18px 26px;
    position: relative;
    transition: .3s; }
    .main_promo_offer p {
      font-size: 18px;
      font-weight: 500;
      color: white;
      display: block;
      line-height: 1.4; }
    .main_promo_offer .btn {
      position: absolute;
      bottom: 36px;
      left: 26px;
      border: none;
      width: 51px;
      height: 51px;
      background: #FFFFFF;
      padding: 0; }
      .main_promo_offer .btn .ic {
        width: 19px;
        height: 19px; }
      .main_promo_offer .btn .ic_plus {
        background: url(/local/templates/gurus/assets/css/../img/icons/ic_plus_black.svg) no-repeat center;
        background-size: cover; }
    .main_promo_offer:hover {
      filter: brightness(1.15); }
  .main_promo_mortgage {
    grid-area: mortgage;
    background-color: var(--color-pink);
    border-radius: 20px;
    padding: 51px 54px 22px 41px;
    position: relative;
    transition: .3s; }
    .main_promo_mortgage p {
      color: white;
      font-weight: 300;
      display: table; }
      .main_promo_mortgage p.large_text {
        font-size: 76px;
        margin-bottom: 13px;
        white-space: nowrap; }
      .main_promo_mortgage p.small_text {
        line-height: 1.4;
        font-size: 18px; }
    .main_promo_mortgage .btn {
      position: absolute;
      top: 12px;
      right: 13px;
      border: none;
      width: 51px;
      height: 51px;
      background-color: white;
      padding: 0; }
      .main_promo_mortgage .btn .ic {
        width: 19px;
        height: 19px; }
    .main_promo_mortgage:hover {
      filter: brightness(1.15); }
  .main_promo_flats {
    padding: 20px;
    grid-area: flats;
    border-radius: 19px 20px;
    background: #182827;
    position: relative; }
    .main_promo_flats .swiper {
      width: 100%; }
      .main_promo_flats .swiper-pagination-bullet {
        background: #5f6f6e;
        width: 14px;
        height: 14px;
        margin: 0 !important;
        opacity: 1; }
        .main_promo_flats .swiper-pagination-bullet-active {
          background: linear-gradient(0deg, #AEBEBD, #AEBEBD), linear-gradient(0deg, #AEBEBD, #AEBEBD); }
    .main_promo_flats_slide {
      width: 100%;
      display: flex;
      flex-wrap: nowrap;
      justify-content: space-between;
      align-items: stretch;
      height: 100%; }
    .main_promo_flats_plan {
      flex: 0 0 319px;
      width: 100%;
      max-width: 33%;
      border-right: 1px dashed var(--color-gray-light);
      height: 260px;
      align-self: auto; }
      .main_promo_flats_plan img {
        height: 100%;
        width: 100%;
        max-height: 250px;
        object-fit: contain; }
    .main_promo_flats_description {
      flex: auto;
      align-self: auto;
      height: 260px;
      padding: 0 40px;
      display: flex;
      flex-direction: column;
      justify-content: space-between; }
    .main_promo_flats_arrow {
      flex: 0 0 120px;
      width: 100%;
      max-width: 9%;
      border-left: 1px dashed var(--color-gray-light);
      display: flex;
      align-items: center;
      justify-content: center;
      align-self: auto;
      height: 260px;
      padding-left: 20px; }
      .main_promo_flats_arrow .ic {
        display: block; }
    .main_promo_flats_plate {
      background-color: var(--color-pink);
      font-size: 16px;
      text-transform: uppercase;
      padding: 0 12px;
      line-height: 31px;
      white-space: nowrap;
      color: white;
      display: flex;
      align-items: center;
      height: 31px;
      width: -moz-fit-content;
      width: fit-content;
      margin-bottom: 5px;
      order: 1; }
    .main_promo_flats_prices {
      display: flex;
      gap: 10px;
      flex-wrap: nowrap;
      align-items: center;
      margin-bottom: 10px;
      order: 2; }
    .main_promo_flats_price {
      order: 3; }
      .main_promo_flats_price-new {
        font-size: 24px;
        font-weight: 500;
        color: white; }
      .main_promo_flats_price-old {
        font-size: 18px;
        font-weight: 300;
        text-decoration: line-through;
        color: white; }
    .main_promo_flats_tags {
      display: flex;
      gap: 15px;
      margin-bottom: 17px;
      flex-wrap: wrap;
      margin-bottom: 40px; }
      @media screen and (max-width: 1580px) {
        .main_promo_flats_tags {
          gap: 12px;
          margin-bottom: 7px; } }
      @media (max-width: 1370px) {
        .main_promo_flats_tags {
          gap: 10px 20px;
          margin-bottom: 10px; } }
      @media (max-width: 750px) {
        .main_promo_flats_tags {
          gap: 8px; } }
    .main_promo_flats_tag {
      font-size: 18px;
      line-height: 100%;
      white-space: nowrap;
      height: 35px;
      display: flex;
      align-items: center;
      padding: 0 12px;
      border-radius: 20px;
      background-color: var(--color-gray-light);
      background: #2f3d3c;
      color: white; }
      @media screen and (max-width: 1580px) {
        .main_promo_flats_tag {
          font-size: 16px; } }
      @media (max-width: 1370px) {
        .main_promo_flats_tag {
          font-size: 14px;
          padding: 0 11px; } }
      @media (max-width: 750px) {
        .main_promo_flats_tag {
          height: 28px;
          padding: 0 9px;
          font-size: 12px; } }
      @media screen and (max-width: 640px) {
        .main_promo_flats_tag {
          height: 26px; } }
    .main_promo_flats_project {
      font-size: 18px;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      gap: 10px;
      color: white; }
    .main_promo_flats_pagination.swiper-pagination-bullets {
      position: absolute;
      bottom: -35px;
      gap: 14px;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      justify-content: center; }

.main_about {
  padding-top: 66px;
  padding-bottom: 115px; }
  .main_about .content-wrapper {
    display: flex;
    flex-wrap: nowrap;
    gap: 64px; }
  .main_about h1, .main_about .h1 {
    line-height: 1.2;
    margin: 0 0 28px 0;
    padding: 0;
    font-size: 48px;
    font-weight: 300; }
  .main_about_left {
    flex: 0 0 499px;
    width: 499px;
    max-width: 499px; }
  .main_about_right {
    padding-top: 93px;
    flex: 0 0 calc(100% - 499px - 64px);
    width: calc(100% - 499px - 64px);
    max-width: calc(100% - 499px - 64px);
    position: relative;
    z-index: 150; }
  .main_about_coltext {
    column-count: 2;
    column-gap: 40px;
    padding-right: 105px;
    margin-bottom: 35px; }
    .main_about_coltext p {
      font-size: 18px;
      font-weight: 300;
      line-height: 25px;
      color: white; }
  .main_about_wrapper {
    position: relative;
    padding: 28px 42px;
    background: white;
    border-radius: 30px; }
    .main_about_wrapper .large_text {
      font-size: 24px;
      line-height: 40px;
      margin-bottom: 41px; }
      .main_about_wrapper .large_text p {
        line-height: 41px; }
    .main_about_wrapper .small_text {
      font-size: 18px;
      margin-bottom: 54px; }
      .main_about_wrapper .small_text p {
        line-height: 1.3; }
    .main_about_wrapper:before {
      content: "";
      width: 30px;
      height: 30px;
      background-color: #101b1a;
      right: 123.5px;
      top: 0px;
      position: absolute; }
    .main_about_wrapper:after {
      content: "";
      width: 30px;
      height: 30px;
      background-color: #101b1a;
      right: 0px;
      top: 84px;
      position: absolute; }
  .main_about_plate {
    background-color: #182827;
    width: 128px;
    height: 91px;
    border: 1px solid #101b1a;
    position: absolute;
    top: -1px;
    right: -1px;
    border-bottom-left-radius: 29px;
    z-index: 100;
    background: #101b1a;
    padding: 17px 0 47px 45px; }
    .main_about_plate:before {
      position: absolute;
      content: '';
      width: 30px;
      height: 50px;
      background-color: white;
      border-top: 1px var(--color-black) solid;
      border-right: 1px var(--color-black) solid;
      border-top-right-radius: 30px;
      display: block;
      top: -0.5px;
      left: -29.5px; }
    .main_about_plate:after {
      position: absolute;
      content: '';
      width: 100px;
      height: 30px;
      background-color: white;
      border-top: 1px var(--color-black) solid;
      border-right: 1px var(--color-black) solid;
      border-top-right-radius: 30px;
      display: block;
      top: calc(100% - -0.5px);
      right: -1px; }
    .main_about_plate p {
      right: 25px;
      width: 195px;
      font-size: 18px;
      background: white;
      color: var(--color-black);
      border-radius: 35px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 300;
      height: 54px;
      line-height: 54px;
      padding: 0px 17px;
      font-weight: 300;
      position: relative; }
  .main_about_tags {
    display: flex;
    gap: 15px;
    margin-bottom: 17px;
    flex-wrap: wrap;
    margin-bottom: 10px; }
    @media screen and (max-width: 1580px) {
      .main_about_tags {
        gap: 12px;
        margin-bottom: 7px; } }
    @media (max-width: 1370px) {
      .main_about_tags {
        gap: 10px 20px;
        margin-bottom: 10px; } }
    @media (max-width: 750px) {
      .main_about_tags {
        gap: 8px; } }
  .main_about_tag {
    font-size: 18px;
    line-height: 100%;
    white-space: nowrap;
    height: 35px;
    display: flex;
    align-items: center;
    padding: 0 12px;
    border-radius: 20px;
    background-color: var(--color-gray-light);
    background: #2f3d3c;
    color: white; }
    @media screen and (max-width: 1580px) {
      .main_about_tag {
        font-size: 16px; } }
    @media (max-width: 1370px) {
      .main_about_tag {
        font-size: 14px;
        padding: 0 11px; } }
    @media (max-width: 750px) {
      .main_about_tag {
        height: 28px;
        padding: 0 9px;
        font-size: 12px; } }
    @media screen and (max-width: 640px) {
      .main_about_tag {
        height: 26px; } }
  .main_about_carousel {
    padding-right: 105px;
    position: relative; }
    .main_about_carousel * {
      outline: none; }
  .main_about .swiper-slide {
    max-width: 486px;
    transition: .3s; }
    .main_about .swiper-slide a {
      display: block; }
      .main_about .swiper-slide a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px; }
    .main_about .swiper-slide:hover {
      filter: brightness(1.05); }
  .main_about_swiper-button-next {
    position: absolute;
    width: 51px;
    height: 16px;
    background: url("/local/templates/gurus/assets/css/../img/icons/ic_arrow_long.svg") no-repeat center;
    background-size: contain;
    display: block;
    top: 50%;
    z-index: 100;
    right: 13px;
    transform: translateY(-23px);
    cursor: pointer; }

@media screen and (max-width: 1580px) {
  .main_screen {
    padding-top: 5px;
    padding-bottom: 80px; }
    .main_screen .content-wrapper {
      padding: 0 20px;
      gap: 125px; }
    .main_screen_left {
      flex: 0 0 50%;
      width: 50%;
      padding-top: 20px; }
    .main_screen_title {
      margin-top: 0; }
      .main_screen_title_small {
        font-size: 40px; }
      .main_screen_title_large {
        font-size: 80px; }
    .main_screen_subtitle {
      margin-bottom: 25px; }
    .main_screen_buttons {
      margin-bottom: 13px; }
    .main_screen_carousel .swiper-slider {
      height: 80%; }
    .main_screen_slide_name {
      font-size: 16px;
      padding-left: 20px; }
      .main_screen_slide_name:before {
        width: 7px;
        height: 7px; }
    .main_screen_slide_image {
      margin-bottom: 10px; }
    .main_screen_slide_description {
      height: 40px;
      font-size: 16px; }
  .main_promo {
    padding-bottom: 91px; }
    .main_promo .content-wrapper {
      padding: 0 20px; }
    .main_promo_grid {
      grid-template-columns: 1.4fr 1fr 0.7fr;
      grid-template-rows: 0.9fr 1.1fr;
      gap: 27px; }
    .main_promo_offer, .main_promo_mortgage {
      height: 200px; }
    .main_promo_offer {
      padding: 16px 20px; }
      .main_promo_offer p {
        font-size: 16px; }
      .main_promo_offer .btn {
        width: 47px;
        height: 47px;
        bottom: 25px;
        left: 20px; }
    .main_promo_mortgage {
      padding: 39px 62px 20px 33px; }
      .main_promo_mortgage p.large_text {
        font-size: 64px; }
      .main_promo_mortgage p.small_text {
        font-size: 16px; }
      .main_promo_mortgage .btn {
        width: 47px;
        height: 47px;
        top: 9px; }
    .main_promo_new {
      height: 480px; }
      .main_promo_new_image {
        height: 100%;
        max-height: 350px;
        min-height: 74%; }
      .main_promo_new_plate {
        font-size: 14px;
        padding: 0 8px;
        line-height: 26px;
        height: 26px; }
      .main_promo_new_title {
        font-size: 18px;
        margin-bottom: 10px; }
      .main_promo_new_address {
        font-size: 16px;
        gap: 7px; }
        .main_promo_new_address .ic {
          width: 13px;
          height: 18px; }
    .main_promo_flats .swiper-pagination-bullet {
      width: 10px;
      height: 10px; }
    .main_promo_flats_plan, .main_promo_flats_description, .main_promo_flats_arrow {
      height: 200px; }
    .main_promo_flats_plan {
      max-width: 26%;
      padding-right: 20px; }
    .main_promo_flats_description {
      padding: 0 24px; }
    .main_promo_flats_plate {
      font-size: 14px;
      padding: 0 8px;
      line-height: 26px;
      height: 26px; }
    .main_promo_flats_prices {
      gap: 5px; }
    .main_promo_flats_price-new {
      font-size: 18px; }
    .main_promo_flats_price-old {
      font-size: 16px; }
    .main_promo_flats_arrow {
      max-width: 7%; }
    .main_promo_flats_pagination.swiper-pagination-bullets {
      gap: 18px; }
  .main_about {
    padding-top: 53px;
    padding-bottom: 60px; }
    .main_about .content-wrapper {
      padding: 0 20px;
      gap: 54px; }
    .main_about h1, .main_about .h1 {
      font-size: 40px; }
    .main_about_left {
      flex: 0 0 425px;
      width: 425px;
      max-width: 425px; }
    .main_about_wrapper {
      padding: 22px 35px; }
      .main_about_wrapper .large_text {
        font-size: 18px;
        margin-bottom: 28px; }
        .main_about_wrapper .large_text p {
          line-height: 30px; }
      .main_about_wrapper .small_text {
        font-size: 16px;
        margin-bottom: 63px; }
    .main_about_tags {
      margin-bottom: 4px; }
    .main_about_plate {
      padding: 14px 0 45px 45px; }
      .main_about_plate:after {
        width: 85px; }
      .main_about_plate p {
        font-size: 16px;
        height: 46px;
        line-height: 46px; }
        .main_about_plate p:before {
          bottom: -17px;
          left: -16px; }
    .main_about_right {
      padding-top: 78px;
      flex: 0 0 calc(100% - 425px - 54px);
      width: calc(100% - 425px - 54px);
      max-width: calc(100% - 425px - 54px); }
    .main_about_coltext {
      padding-right: 70px;
      margin-bottom: 32px; }
      .main_about_coltext p {
        font-size: 16px;
        line-height: 22px; }
    .main_about_carousel {
      padding-right: 70px; }
    .main_about_swiper-button-next {
      right: 0;
      transform: translateY(-8px);
      width: 39px; } }

@media (max-width: 1370px) {
  .main_screen .content-wrapper {
    padding: 0;
    gap: 25px; }
  .main_screen_left {
    flex: 0 0 54%;
    width: 54%; }
  .main_screen_title {
    margin-top: 26px;
    margin-bottom: 18px; }
    .main_screen_title_small {
      font-size: 36px; }
    .main_screen_title_large {
      font-size: 76px; }
  .main_screen_subtitle {
    font-size: 14px; }
  .main_screen_slide_plate {
    padding: 2px 8px; }
  .main_screen_slide_description {
    font-size: 14px; }
  .main_promo {
    padding-top: 90px;
    padding-bottom: 96px; }
    .main_promo .content-wrapper {
      padding: 0; }
    .main_promo_grid {
      gap: 25px; }
    .main_promo_new {
      height: 448px; }
      .main_promo_new_image {
        max-height: 330px; }
      .main_promo_new_plate {
        font-size: 14px;
        height: 26px;
        line-height: 26px;
        left: 21px; }
      .main_promo_new_description {
        padding: 12px 27px; }
      .main_promo_new_title {
        font-size: 16px; }
      .main_promo_new_address {
        font-size: 14px;
        gap: 5px; }
        .main_promo_new_address .btn {
          width: 12px;
          height: 17px; }
    .main_promo_offer, .main_promo_mortgage {
      height: 190px; }
    .main_promo_mortgage p.small_text {
      font-size: 14px; }
    .main_promo_mortgage .btn {
      width: 43px;
      height: 43px; }
    .main_promo_offer p {
      font-size: 14px; }
    .main_promo_offer .btn {
      width: 44px;
      height: 44px;
      left: 16px; }
    .main_promo_flats {
      padding: 17px; }
      .main_promo_flats_plan, .main_promo_flats_description, .main_promo_flats_arrow {
        height: 192px; }
      .main_promo_flats_description {
        padding: 0 18px; }
      .main_promo_flats_price-new {
        font-size: 16px; }
      .main_promo_flats_price-old {
        font-size: 14px; }
      .main_promo_flats_plate {
        font-size: 14px;
        height: 26px;
        line-height: 26px; }
      .main_promo_flats_project {
        font-size: 14px;
        gap: 6px; }
        .main_promo_flats_project .ic {
          width: 15px;
          height: 15px; }
  .main_about {
    padding-top: 52px; }
    .main_about .content-wrapper {
      padding: 0;
      gap: 50px; }
    .main_about h1, .main_about .h1 {
      font-size: 36px; }
    .main_about_left {
      flex: 0 0 396px;
      width: 396px;
      max-width: 396px; }
    .main_about_plate {
      padding: 19px 16px 51px 43px; }
      .main_about_plate p {
        font-size: 14px;
        height: 30px;
        line-height: 30px;
        padding: 0 14px; }
        .main_about_plate p:before {
          bottom: -23px;
          left: -14px;
          border-bottom-left-radius: 26px; }
    .main_about_wrapper {
      padding: 20px 33px; }
      .main_about_wrapper .large_text {
        font-size: 16px;
        margin-bottom: 33px; }
        .main_about_wrapper .large_text p {
          line-height: 25px; }
      .main_about_wrapper .small_text {
        font-size: 14px;
        margin-bottom: 46px; }
        .main_about_wrapper .small_text p {
          line-height: 1.4; }
    .main_about_tags {
      margin-bottom: 14px; }
    .main_about_right {
      padding-top: 81px;
      flex: 0 0 calc(100% - 396px - 50px);
      width: calc(100% - 396px - 50px);
      max-width: calc(100% - 396px - 50px); }
    .main_about_carousel {
      padding-right: 65px; }
    .main_about_coltext {
      padding-right: 65px;
      margin-bottom: 24px; }
      .main_about_coltext p {
        font-size: 14px;
        line-height: 20px; } }

@media screen and (max-width: 1200px) {
  .main_screen .content-wrapper {
    min-height: 80vh; }
  .main_screen_left {
    flex: 0 0 52%;
    width: 52%; }
  .main_screen_right {
    gap: 20px; }
  .main_screen_title_small {
    font-size: 24px; }
  .main_screen_title_large {
    font-size: 54px; }
  .main_screen_carousel .swiper-buttons {
    height: 50px; }
  .main_screen_slide_plate p.small_text {
    font-size: 12px; }
  .main_screen_slide_plate p.large_text {
    font-size: 22px; }
  .main_screen_slide_description {
    font-size: 12px; }
  .main_about_coltext {
    columns: unset; } }

@media screen and (max-width: 900px) {
  .main_screen {
    padding: 0; }
    .main_screen .swiper .content-wrapper {
      height: 105.3vh;
      min-height: 100vh; }
    .main_screen_slide {
      z-index: 100;
      position: relative;
      justify-content: flex-end;
      gap: 25px; }
      .main_screen_slide_header {
        flex-wrap: wrap;
        height: auto;
        gap: 25px; }
      .main_screen_slide_name {
        font-size: 36px;
        color: white;
        font-weight: 300;
        padding: 0;
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%; }
        .main_screen_slide_name:before {
          display: none; }
      .main_screen_slide_plate {
        max-width: -moz-fit-content;
        max-width: fit-content;
        padding: 4px 7px; }
        .main_screen_slide_plate p {
          width: max-content;
          white-space: nowrap; }
          .main_screen_slide_plate p.small_text {
            font-size: 14px; }
          .main_screen_slide_plate p.large_text {
            font-size: 16px; }
      .main_screen_slide_description {
        color: var(--color-gray-light);
        font-size: 14px;
        height: auto;
        margin-bottom: 100px; }
  .main_promo {
    padding-top: 53px;
    padding-bottom: 74px; }
    .main_promo_grid {
      grid-template-areas: "new new" "offer mortgage" "flats flats";
      grid-template-columns: 1.1fr 0.75fr;
      grid-template-rows: auto;
      gap: 50px 30px; }
    .main_promo_new {
      max-width: 538px; }
  .main_about {
    padding-top: 50px;
    padding-bottom: 63px; }
    .main_about .content-wrapper {
      flex-wrap: wrap;
      gap: 11px; }
    .main_about h1, .main_about .h1 {
      line-height: 0.9;
      margin-bottom: 37px; }
    .main_about_left {
      flex: 0 0 100%;
      width: 100%;
      max-width: 100%; }
    .main_about_right {
      flex: 0 0 110%;
      width: 110%;
      max-width: 110%; }
    .main_about_wrapper {
      padding: 0;
      border: none;
      width: 100%;
      max-width: 380px;
      background: #101b1a;
      color: white; }
      .main_about_wrapper .small_text {
        margin-bottom: 22px; }
      .main_about_wrapper:after {
        content: none; }
    .main_about_plate {
      padding: 0;
      top: 0;
      right: -8vw;
      width: -moz-fit-content;
      width: fit-content;
      height: 45px; }
      .main_about_plate:before, .main_about_plate:after {
        display: none; }
      .main_about_plate p {
        height: 43px;
        line-height: 43px;
        padding: 0 16px; }
        .main_about_plate p::before {
          display: none; }
    .main_about_right {
      padding-top: 0; }
    .main_about_coltext {
      padding: 0;
      column-gap: 30px;
      margin-bottom: 40px;
      max-width: var(--max-width);
      columns: 2; }
    .main_about_carousel {
      padding: 0; }
    .main_about_swiper-button-next {
      display: none; } }

@media (max-width: 750px) {
  .main_promo_flats_plan, .main_promo_flats_description, .main_promo_flats_arrow {
    height: 175px; } }

@media screen and (max-width: 640px) {
  .main_screen_mobile {
    height: 101.6vh; }
    .main_screen_mobile .swiper {
      height: 101.6vh; }
    .main_screen_mobile_swiper-pagination.swiper-pagination-bullets {
      bottom: 41px; }
  .main_promo {
    padding-top: 55px;
    padding-bottom: 20px;
    position: relative; }
    .main_promo_grid {
      grid-template-areas: "flats" "offer" "new" "mortgage";
      grid-template-columns: auto;
      gap: 25px; }
    .main_promo_flats {
      width: 100%;
      max-width: var(--max-width);
      padding: 24px; }
      .main_promo_flats .swiper {
        margin-bottom: 27px; }
        .main_promo_flats .swiper-pagination-bullet {
          width: 8px;
          height: 8px; }
      .main_promo_flats_slide {
        flex-wrap: wrap; }
      .main_promo_flats_plan, .main_promo_flats_description {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        height: auto;
        border: none; }
      .main_promo_flats_description {
        padding: 0;
        gap: 10px; }
      .main_promo_flats_plan {
        padding: 50px 0 37px 0; }
        .main_promo_flats_plan img {
          max-height: 185px; }
      .main_promo_flats_plate {
        position: absolute;
        top: 4px;
        left: 0px;
        font-size: 12px;
        height: 22px;
        line-height: 22px; }
      .main_promo_flats_prices {
        order: 2;
        margin: 0 0 12px 0; }
      .main_promo_flats_tags {
        order: 3;
        margin: 0; }
      .main_promo_flats_project {
        order: 1;
        margin: 0; }
      .main_promo_flats_arrow {
        display: none; }
      .main_promo_flats_pagination.swiper-pagination-bullets {
        position: relative;
        gap: 14px;
        bottom: 0; }
    .main_promo_offer {
      padding: 23px 12px;
      height: 152px; }
      .main_promo_offer .btn {
        left: initial;
        right: 14px;
        bottom: 55px;
        width: 29px;
        height: 29px; }
        .main_promo_offer .btn .ic {
          width: 13px;
          height: 13px; }
    .main_promo_new {
      height: 523px; }
      .main_promo_new_description {
        padding: 19px 11px; }
      .main_promo_new_title {
        margin-bottom: 19px; }
      .main_promo_new_plate {
        font-size: 12px;
        height: 22px;
        line-height: 22px;
        left: 10px;
        top: 24px; }
      .main_promo_new_tags {
        margin-bottom: 14px; }
    .main_promo_mortgage {
      height: 127px;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      padding: 39px 28px 20px 28px;
      gap: 12%; }
      .main_promo_mortgage .btn {
        width: 30px;
        height: 30px;
        right: 17px;
        top: 13px; }
        .main_promo_mortgage .btn .ic {
          width: 13px;
          height: 13px; }
    .main_promo:before {
      position: absolute;
      content: '';
      width: 100%;
      left: 0;
      right: 0;
      top: 0;
      height: 304px;
      background-color: var(--color-pink);
      display: block; }
  .main_about {
    padding-top: 40px;
    padding-bottom: 40px; }
    .main_about_wrapper .large_text {
      margin-bottom: 25px; }
      .main_about_wrapper .large_text p {
        line-height: 28px; }
    .main_about_wrapper .small_text {
      margin-bottom: 28px; }
    .main_about_tags {
      margin-bottom: 16px;
      gap: 14px 20px; }
    .main_about_right {
      flex: 0 0 129%;
      width: 129%;
      max-width: 129%; }
    .main_about_coltext {
      columns: unset;
      margin-bottom: 35px; } }

@media (max-width: 480px) {
  .main_promo_offer .btn {
    bottom: 15px; } }

.error_page {
  display: flex;
  flex-direction: column;
  gap: 62px;
  padding-top: 50px;
  padding-bottom: 50px; }
  .error_page_grup {
    display: flex;
    flex-direction: column; }
  .error_page p {
    font-size: 24px;
    font-weight: 300;
    color: #FFFFFF;
    letter-spacing: 0em; }
  .error_page .h1 {
    margin: 0.3em 0;
    font-size: 48px;
    font-weight: 300;
    letter-spacing: 0em;
    color: #FFFFFF; }
  @media screen and (max-width: 1580px) {
    .error_page {
      padding-top: 30px;
      padding-bottom: 30px;
      gap: 42px; }
      .error_page .h1 {
        font-size: 40px; }
      .error_page p {
        font-size: 18px; } }
  @media screen and (max-width: 1200px) {
    .error_page {
      gap: 35px; }
      .error_page .h1 {
        font-size: 36px; }
      .error_page p {
        font-size: 16px; } }
  @media screen and (max-width: 900px) {
    .error_page {
      padding-top: 4px;
      padding-bottom: 10px;
      gap: 20px; }
      .error_page .h1 {
        font-size: 24px; } }

.mortgage {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding-top: 50px;
  padding-bottom: 100px; }
  .mortgage_title {
    gap: 51px;
    display: flex;
    flex-direction: column;
    margin-bottom: 120px; }
    .mortgage_title p {
      color: #FFFFFF;
      font-size: 24px;
      font-weight: 300;
      max-width: 48%;
      letter-spacing: 0em;
      line-height: 1.7; }
  .mortgage .h1 {
    margin: 0.3em 0;
    font-size: 48px;
    font-weight: 300;
    letter-spacing: 0em; }
  .mortgage_calc {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    gap: 30px;
    justify-content: space-between;
    align-items: flex-start; }
    .mortgage_calc .range_input_single .single_range .rnd {
      bottom: 12px;
      top: initial !important; }
    .mortgage_calc .disabled .rnd {
      background-color: gray; }
    .mortgage_calc .disabled input:disabled {
      background-color: transparent; }
    .mortgage_calc .disabled input[type="range"]::-webkit-slider-thumb {
      background-color: gray;
      cursor: default; }
    .mortgage_calc .disabled input[type="range"]::-moz-range-thumb {
      background: gray;
      pointer-events: none;
      cursor: default; }
    .mortgage_calc .disabled * {
      filter: grayscale(1);
      color: gray;
      cursor: default !important; }
    .mortgage_calc_inputs {
      flex: 0 0 calc(24% - 20px);
      width: calc(24% - 20px);
      max-width: calc(24% - 20px);
      display: flex;
      flex-wrap: wrap;
      gap: 53px;
      order: 2; }
    .mortgage_calc_results {
      flex: 0 0 calc(70% - 20px);
      width: calc(70% - 20px);
      max-width: calc(70% - 20px); }
      .mortgage_calc_results_header, .mortgage_calc_results_item {
        display: flex;
        flex-wrap: nowrap;
        width: 100%;
        justify-content: space-between;
        gap: 10px;
        cursor: pointer; }
      .mortgage_calc_results_header {
        padding-bottom: 12px;
        width: 96%;
        position: relative; }
        .mortgage_calc_results_header span {
          text-transform: lowercase;
          font-size: 18px;
          line-height: 1.4;
          color: var(--color-gray-mid);
          font-weight: 300; }
        .mortgage_calc_results_header:after {
          position: absolute;
          content: '';
          height: 1px;
          bottom: 0;
          left: 0;
          right: 0;
          display: block;
          background-color: #D0DBDA; }
      .mortgage_calc_results_list {
        max-height: 70vh;
        min-height: 450px;
        overflow: auto;
        /* W3C standard сейчас только для Firefox */
        /* для Chrome/Edge/Safari */ }
        .mortgage_calc_results_list.loading {
          position: relative; }
          .mortgage_calc_results_list.loading > * {
            filter: blur(2px); }
          .mortgage_calc_results_list.loading:after {
            position: absolute;
            content: '';
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            background: url("/local/templates/gurus/assets/css/../img/logo.svg") no-repeat center;
            background-size: 160px;
            display: block; }
          @media screen and (max-width: 900px) {
            .mortgage_calc_results_list.loading:after {
              background-position: center 150px; } }
        .mortgage_calc_results_list {
          scrollbar-width: thin;
          scrollbar-color: #5D6D6C #D0DBDA; }
        .mortgage_calc_results_list::-webkit-scrollbar {
          height: 4px;
          width: 4px; }
        .mortgage_calc_results_list::-webkit-scrollbar-track {
          background: #D0DBDA; }
        .mortgage_calc_results_list::-webkit-scrollbar-thumb {
          background-color: #5D6D6C; }
      .mortgage_calc_results_item {
        align-items: center;
        padding: 25px 0;
        position: relative;
        width: 96%;
        border-bottom: 1px #D0DBDA solid; }
        .mortgage_calc_results_item span {
          color: #FFFFFF;
          font-size: 18px; }
        .mortgage_calc_results_item .mortgage_calc_results_column:not(.mortgage_calc_results_name) span {
          white-space: nowrap; }
      .mortgage_calc_results_logo {
        width: 9%; }
        .mortgage_calc_results_logo img {
          max-width: 100px;
          height: 80px;
          object-fit: contain; }
      .mortgage_calc_results_name {
        width: 14%;
        color: #FFFFFF; }
      .mortgage_calc_results_summ {
        width: 12%;
        color: #FFFFFF; }
      .mortgage_calc_results_rate {
        width: 7%;
        color: #FFFFFF; }
      .mortgage_calc_results_initpay {
        width: 14%;
        color: #FFFFFF; }
      .mortgage_calc_results_period {
        width: 7%;
        color: #FFFFFF; }
      .mortgage_calc_results_payment {
        width: 12%;
        font-weight: 400;
        color: #FFFFFF; }
      .mortgage_calc_results_checkbox {
        position: absolute;
        left: -64px; }
        .mortgage_calc_results_checkbox .checkbox-btn {
          width: 28px;
          height: 28px;
          min-width: auto;
          display: flex;
          border: none;
          background: #2F3D3C; }
          .mortgage_calc_results_checkbox .checkbox-btn .ic.ic_check {
            border: none;
            padding: 0;
            opacity: 0;
            width: 28px;
            height: 28px; }
          .mortgage_calc_results_checkbox .checkbox-btn input[type=checkbox]:checked + span {
            opacity: 1;
            background: url("/local/templates/gurus/assets/css/../img/icons/ic_check.svg") no-repeat center;
            background-color: #9BC555; }
          .mortgage_calc_results_checkbox .checkbox-btn:hover {
            background-color: #b9bebe; }
      .mortgage_calc_results_footer {
        display: flex;
        justify-content: center;
        padding-top: 90px;
        padding-bottom: 50px; }
      .mortgage_calc_results_message {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 30px 0; }
    .mortgage_calc_field {
      display: flex;
      flex-wrap: wrap;
      gap: 22px;
      width: 100%; }
      .mortgage_calc_field_title {
        font-size: 18px;
        line-height: 1.3;
        text-transform: lowercase;
        width: 100%;
        color: #FFFFFF; }
      .mortgage_calc_field-price input {
        border: none;
        background: transparent;
        font-size: 48px;
        font-weight: 300;
        padding: 0;
        line-height: 1;
        width: 100%;
        color: #FFFFFF; }
        .mortgage_calc_field-price input:focus, .mortgage_calc_field-price input:hover, .mortgage_calc_field-price input:active {
          outline: none; }
      .mortgage_calc_field-period .single_range {
        width: 70%; }
      .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field {
        font-size: 24px;
        font-weight: 200;
        color: #FFFFFF; }
        .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field:last-child input[type=text] {
          text-align: right;
          font-size: 24px;
          font-weight: 200;
          color: #FFFFFF; }
      .mortgage_calc_field .range_input_single {
        justify-content: flex-start; }
        .mortgage_calc_field .range_input_single .single_range {
          gap: 15px; }
          .mortgage_calc_field .range_input_single .single_range .range-values .single_range_input_field {
            border-bottom: none; }
            .mortgage_calc_field .range_input_single .single_range .range-values .single_range_input_field input:hover, .mortgage_calc_field .range_input_single .single_range .range-values .single_range_input_field input:focus {
              background-color: transparent; }
          .mortgage_calc_field .range_input_single .single_range .range-values input[type=text] {
            font-size: 24px;
            line-height: 1;
            font-weight: 500;
            width: 100%;
            color: #FFFFFF;
            background: transparent; }
  @media screen and (max-width: 1580px) {
    .mortgage {
      padding-bottom: 83px;
      padding-top: 30px;
      gap: 17px; }
      .mortgage_title {
        gap: 17px; }
        .mortgage_title p {
          line-height: 30px;
          font-size: 18px; }
      .mortgage .h1 {
        font-size: 40px; }
      .mortgage_calc {
        gap: 30px; }
        .mortgage_calc_inputs {
          flex: 0 0 calc(22% - 20px);
          width: calc(22% - 20px);
          max-width: calc(22% - 20px);
          gap: 40px; }
        .mortgage_calc_results {
          flex: 0 0 calc(77% - 20px);
          width: calc(77% - 20px);
          max-width: calc(77% - 20px); }
          .mortgage_calc_results_checkbox {
            left: -50px; }
          .mortgage_calc_results_summ, .mortgage_calc_results_rate, .mortgage_calc_results_initpay, .mortgage_calc_results_period, .mortgage_calc_results_payment {
            text-align: center; }
        .mortgage_calc_field-price input {
          font-size: 38px; }
        .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field {
          font-size: 20px; }
          .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field:last-child input[type=text] {
            font-size: 20px; }
        .mortgage_calc_field .range_input_single .single_range {
          gap: 20px; }
          .mortgage_calc_field .range_input_single .single_range .range-values input[type=text] {
            font-size: 20px; } }
  @media screen and (max-width: 1200px) {
    .mortgage {
      padding-bottom: 64px; }
      .mortgage_title p {
        line-height: 27px;
        font-size: 16px; }
      .mortgage .h1 {
        font-size: 36px; }
      .mortgage_calc {
        gap: 20px; }
        .mortgage_calc_inputs {
          flex: 0 0 calc(24% - 10px);
          width: calc(24% - 10px);
          max-width: calc(24% - 10px);
          gap: 45px; }
        .mortgage_calc_results {
          flex: 0 0 calc(73% - 10px);
          width: calc(73% - 10px);
          max-width: calc(73% - 10px); }
          .mortgage_calc_results_header span {
            font-size: 14px;
            line-height: 1.1;
            display: table; }
          .mortgage_calc_results_list {
            max-height: 50vh;
            min-height: 420px; }
          .mortgage_calc_results_item {
            padding: 15px 0; }
            .mortgage_calc_results_item span {
              font-size: 14px; }
          .mortgage_calc_results_logo img {
            max-width: 64px;
            height: 50px; }
          .mortgage_calc_results_checkbox {
            left: -45px; }
            .mortgage_calc_results_checkbox .checkbox-btn {
              width: 20px;
              height: 20px; }
              .mortgage_calc_results_checkbox .checkbox-btn .ic.ic_check {
                width: 20px;
                height: 20px; }
        .mortgage_calc_field_title {
          font-size: 14px; }
        .mortgage_calc_field-price input {
          font-size: 32px; }
        .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field {
          font-size: 16px; }
          .mortgage_calc_field-initpay .range_input_single .single_range .range-values .single_range_input_field:last-child input[type=text] {
            font-size: 16px; }
        .mortgage_calc_field .range_input_single .single_range {
          gap: 20px; }
          .mortgage_calc_field .range_input_single .single_range .range-values input[type=text] {
            font-size: 20px; } }
  @media screen and (max-width: 900px) {
    .mortgage {
      padding-bottom: 46px;
      padding-top: 4px;
      gap: 10px; }
      .mortgage_title {
        margin-bottom: 50px; }
        .mortgage_title p {
          max-width: 80%; }
      .mortgage .h1 {
        font-size: 24px; }
      .mortgage_calc {
        flex-wrap: wrap; }
        .mortgage_calc_inputs {
          order: 0; }
        .mortgage_calc_inputs, .mortgage_calc_results {
          flex: 0 0 100%;
          gap: 30px;
          width: 100%;
          max-width: 100%; }
        .mortgage_calc_results_header {
          display: none; }
        .mortgage_calc_results_column {
          text-align: left; }
        .mortgage_calc_results_item {
          padding: 20px 0;
          gap: 12px;
          width: 100%; }
          .mortgage_calc_results_item span {
            font-size: 16px; }
        .mortgage_calc_results_checkbox {
          position: relative;
          left: initial;
          width: 30px;
          flex: 0 0 30px;
          max-width: 30px; }
        .mortgage_calc_results_logo {
          width: 13%;
          flex: 0 0 13%;
          max-width: 13%; }
          .mortgage_calc_results_logo img {
            max-width: 90px;
            height: 68px; }
        .mortgage_calc_results_info {
          flex: auto;
          display: flex;
          flex-wrap: wrap;
          gap: 8px; }
        .mortgage_calc_results_name {
          font-weight: 400; }
        .mortgage_calc_results_name, .mortgage_calc_results_payment {
          flex: 0 0 100%;
          color: #FFFFFF; }
        .mortgage_calc_results_summ {
          flex: 0 0 36%;
          width: 36%;
          max-width: 36%;
          color: #FFFFFF; }
          .mortgage_calc_results_summ span {
            position: relative;
            font-weight: 400;
            font-size: 14px; }
            .mortgage_calc_results_summ span:before {
              content: attr(label); }
        .mortgage_calc_results_rate span, .mortgage_calc_results_initpay span, .mortgage_calc_results_period span {
          position: relative;
          font-size: 14px;
          color: #FFFFFF; }
          .mortgage_calc_results_rate span:before, .mortgage_calc_results_initpay span:before, .mortgage_calc_results_period span:before {
            content: attr(label); }
        .mortgage_calc_results_rate, .mortgage_calc_results_initpay, .mortgage_calc_results_period {
          width: -moz-fit-content;
          width: fit-content; }
        .mortgage_calc_results_footer {
          padding-top: 50px; }
          .mortgage_calc_results_footer .btn {
            width: 100%; }
        .mortgage_calc_field {
          gap: 10px; }
          .mortgage_calc_field-price input {
            font-size: 24px; }
          .mortgage_calc_field-period .single_range {
            width: 100%; }
          .mortgage_calc_field .range_input_single .single_range {
            gap: 13px; }
            .mortgage_calc_field .range_input_single .single_range .range-values input[type=text] {
              font-size: 26px; } }
  @media screen and (max-width: 640px) {
    .mortgage {
      padding-bottom: 36px; }
      .mortgage_title p {
        max-width: 100%; }
      .mortgage_calc_results_item {
        gap: 10px; }
      .mortgage_calc_results_logo img {
        max-width: 100%;
        height: 54px; }
      .mortgage_calc_results_info {
        gap: 4px; }
      .mortgage_calc_results_summ span[label] {
        white-space: wrap !important;
        display: table;
        line-height: 1.3; }
      .mortgage_calc_results_checkbox {
        width: 20px;
        flex: 0 0 20px;
        max-width: 30px; } }
  @media (max-width: 495px) {
    .mortgage_calc_results_item span {
      font-size: 13px; } }

.contacts .VK_link {
  color: #1E84BE;
  font-size: 24px;
  font-weight: 500; }

.contacts .Wapp_link {
  color: #648330; }

.contacts p span {
  font-size: 24px;
  font-weight: 500;
  color: #FFFFFF; }

.contacts p {
  font-size: 24px;
  font-weight: 300;
  max-width: 58%;
  letter-spacing: 0em;
  color: #FFFFFF; }

.contacts .p_grey {
  color: var(--color-gray-mid);
  white-space: nowrap; }

.contacts .column {
  display: flex;
  flex-direction: column;
  gap: 24px; }

.contacts .row {
  justify-content: space-between;
  max-width: 472px; }

.contacts_gridblock {
  padding-left: calc(var(--block-padding)/2.1);
  grid-template-columns: minmax(300px, 40%) 1fr;
  margin: 65px auto;
  grid-gap: 0px 15px;
  display: grid; }
  .contacts_gridblock_map {
    grid-row: span 2; }
  .contacts_gridblock_mode {
    padding-top: 82px;
    display: flex;
    flex-direction: column;
    gap: 63px; }
    .contacts_gridblock_mode p {
      line-height: 41px; }

@media screen and (max-width: 1580px) {
  .contacts {
    padding-left: 0px;
    padding-top: 30px;
    gap: 17px; }
    .contacts_title {
      padding: 0px 19px;
      gap: 17px; }
      .contacts_title a {
        font-size: 40px;
        font-weight: 300;
        line-height: 48px; }
    .contacts_gridblock {
      padding-left: var(--block-padding);
      margin: 0px 19px 40px 19px; }
      .contacts_gridblock_address {
        margin-top: 54px; }
      .contacts_gridblock_mode {
        padding-top: 42px;
        gap: 54px; }
        .contacts_gridblock_mode .row {
          max-width: 331px; }
    .contacts .column {
      gap: 7px; }
    .contacts p {
      line-height: 30px;
      font-size: 18px; }
      .contacts p span {
        font-size: 18px;
        font-weight: 500; } }

@media screen and (max-width: 1400px) {
  .contacts {
    padding-top: 42px; }
    .contacts_title {
      padding: 0px; }
      .contacts_title a {
        font-size: 36px; }
    .contacts_gridblock {
      margin: 0px 0px 40px 0px;
      grid-template-columns: minmax(300px, 33%) 1fr; }
      .contacts_gridblock_address {
        margin-top: 31px; }
      .contacts_gridblock_mode {
        padding-top: 29px;
        gap: 34px; }
        .contacts_gridblock_mode .btn {
          padding: 11px 22px; }
    .contacts p {
      line-height: 27px;
      font-size: 16px; } }

@media screen and (max-width: 1200px) {
  .contacts_gridblock {
    grid-template-columns: 1fr; }
    .contacts_gridblock_map {
      height: 354px; } }

@media screen and (max-width: 900px) {
  .contacts {
    padding-top: 36px;
    gap: 10px;
    margin: 0px 0px 36px 0px; }
    .contacts_gridblock {
      grid-gap: 16px 15px;
      padding-left: 0px; }
      .contacts_gridblock_address {
        padding: 0px var(--block-padding);
        margin-top: 24px; }
      .contacts_gridblock_mode {
        padding: 0px var(--block-padding); }
        .contacts_gridblock_mode .row {
          flex-direction: column;
          gap: 10px; }
    .contacts p {
      max-width: 80%; }
    .contacts_title a {
      font-size: 24px; }
    .contacts_title {
      flex-direction: column;
      align-items: flex-start;
      justify-content: space-between;
      gap: 10px; }
      .contacts_title .breadcrumbs {
        display: none; } }

@media screen and (max-width: 640px) {
  .contacts {
    padding-top: 0px; }
    .contacts p {
      max-width: 100%; }
    .contacts_title {
      gap: 17px; }
    .contacts_gridblock_mode {
      padding-top: 0px;
      gap: 34px; }
      .contacts_gridblock_mode .btn {
        padding: 6px 13px; } }

.background-pink {
  background-color: var(--color-pink) !important; }

html.is-filter-open {
  overflow: hidden; }

body.is-filter-open {
  overflow: hidden; }

.catalog .content_flat_first_section div,
.catalog .content_flat_second_section div,
.catalog .seasons span {
  cursor: pointer !important; }

.catalog .content-wrapper {
  box-sizing: border-box; }
  .catalog .content-wrapper .content_headers h1 {
    font-weight: 300;
    font-size: 48px;
    line-height: 57.6px;
    padding: 0;
    margin: 17px 0; }

.catalog_filters {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px; }
  .catalog_filters_groups {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start; }
    .catalog_filters_groups:first-child {
      flex: auto; }
    .catalog_filters_groups:last-child {
      justify-content: flex-end; }
  .catalog_filters_general {
    flex: auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    order: 1; }
  .catalog_filters_adv-button {
    flex: 0 0 var(--catalog-sidebar-width);
    order: 2; }
    .catalog_filters_adv-button .btn {
      margin: 0 0 0 auto;
      background: black; }
  .catalog_filters_group {
    display: flex;
    flex-wrap: nowrap;
    gap: 13px;
    position: relative;
    min-height: 60px;
    align-items: center;
    padding: 0 20px;
    border-right: 1px solid #D0DBDA; }
    .catalog_filters_group_caption {
      text-transform: lowercase;
      font-size: 14px;
      color: #5D6D6C;
      display: table;
      line-height: 1.3; }
    .catalog_filters_group:last-child {
      padding-right: 0;
      border: none; }
    .catalog_filters_group:nth-last-child(1) {
      border: none; }
    .catalog_filters_group:first-child {
      padding-left: 0; }
    .catalog_filters_group .range_input {
      min-width: 200px; }

.catalog_content {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
  margin-top: 50px; }

.catalog_listing {
  flex: auto;
  padding-right: 45px;
  max-height: 70vh;
  overflow: auto;
  /* W3C standard сейчас только для Firefox */
  /* для Chrome/Edge/Safari */ }
  .catalog_listing.loading {
    position: relative; }
    .catalog_listing.loading > * {
      filter: blur(2px); }
    .catalog_listing.loading:after {
      position: absolute;
      content: '';
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: url("/local/templates/gurus/assets/css/../img/logo.svg") no-repeat center;
      background-size: 160px;
      display: block; }
    @media screen and (max-width: 900px) {
      .catalog_listing.loading:after {
        background-position: center 150px; } }
  .catalog_listing {
    scrollbar-width: thin;
    scrollbar-color: #5D6D6C #D0DBDA; }
  .catalog_listing::-webkit-scrollbar {
    height: 4px;
    width: 4px; }
  .catalog_listing::-webkit-scrollbar-track {
    background: #D0DBDA; }
  .catalog_listing::-webkit-scrollbar-thumb {
    background-color: #5D6D6C; }
  .catalog_listing_footer {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 30px;
    margin-top: 45px;
    margin-bottom: 58px; }
    .catalog_listing_footer > div:first-child {
      flex: auto;
      display: flex;
      justify-content: center; }
      .catalog_listing_footer > div:first-child i {
        font-style: normal; }
    .catalog_listing_footer > div:last-child {
      flex: 0 0 var(--catalog-sidebar-width); }

.catalog_item {
  width: 100%;
  border-bottom: 1px dashed #FFFFFF;
  padding-top: 18px;
  padding-bottom: 18px; }
  .catalog_item_visible {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: space-between;
    gap: 10px;
    align-items: center;
    cursor: pointer; }
  .catalog_item_hidden {
    display: none;
    padding: 25px 0 0 0; }
  .catalog_item_col {
    text-transform: uppercase;
    font-size: 18px;
    color: var(--color-black); }
  .catalog_item__type {
    font-weight: 400;
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    color: #FFFFFF; }
  .catalog_item__square {
    font-weight: 400;
    white-space: nowrap;
    flex: 0 0 6%;
    width: 6%;
    max-width: 6%;
    color: #FFFFFF; }
  .catalog_item__stage {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    color: #FFFFFF; }
  .catalog_item__project {
    flex: 0 0 15%;
    width: 15%;
    max-width: 15%;
    color: #FFFFFF; }
  .catalog_item__price {
    font-weight: 400;
    font-size: 18px;
    text-transform: none;
    white-space: nowrap;
    flex: 0 0 13%;
    width: 13%;
    max-width: 13%;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    color: #FFFFFF; }
    .catalog_item__price-new {
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      gap: 5px;
      width: 100%;
      justify-content: flex-end; }
    .catalog_item__price-old {
      width: 100%;
      display: flex;
      justify-content: flex-end;
      text-decoration: line-through;
      font-size: 18px;
      font-weight: 300; }
    .catalog_item__price-sale {
      width: 27px;
      height: 24px;
      padding: 0 3px;
      background-color: var(--color-pink);
      color: white;
      font-size: 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #FFFFFF; }
  .catalog_item__deadline {
    flex: 0 0 12%;
    width: 12%;
    max-width: 12%;
    color: #FFFFFF; }
  .catalog_item__favorite > div {
    width: 36px;
    height: 36px;
    border-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer; }
    .catalog_item__favorite > div span {
      transition: .2s; }
    .catalog_item__favorite > div:hover span {
      transform: scale(1.1); }
  .catalog_item__plan {
    width: 100%;
    margin-bottom: 15px; }
    .catalog_item__plan-image {
      display: block;
      width: 100%;
      max-width: 85vw;
      height: 85vw;
      max-height: 400px;
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat; }
  .catalog_item__bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 15px; }
  .catalog_item__payment {
    font-size: 14px;
    font-weight: 500;
    flex: auto;
    color: #FFFFFF; }
  .catalog_item.is-active .catalog_item_hidden {
    display: block; }

.catalog_sidebar {
  flex: 0 0 var(--catalog-sidebar-width); }

.catalog_promo {
  border-radius: 20px;
  background-color: var(--color-pink);
  color: white;
  padding: 18px;
  position: relative;
  display: block; }
  .catalog_promo .btn {
    position: absolute;
    top: 18px;
    right: 18px;
    border: none;
    width: 32px;
    height: 32px;
    background-color: white;
    padding: 0; }
  .catalog_promo_image {
    display: block;
    width: 100%;
    height: 272px;
    background-image: url(/local/templates/gurus/assets/css/../img/catalog_adv_image.jpg);
    -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_06.svg);
    mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_06.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .catalog_promo p {
    margin: 0;
    display: table; }
  .catalog_promo_title {
    font-size: 76px; }
  .catalog_promo_description {
    font-size: 18px;
    text-transform: lowercase; }

.catalog .content_headers {
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .catalog .content_headers:hover {
    cursor: pointer; }
  .catalog .content_headers p:hover {
    border-bottom: 1px solid black; }

.catalog .content-wrapper .mobile_content_filters {
  display: none; }

.catalog .content-wrapper .bottom_panel {
  display: none; }

.catalog .content_main {
  flex: auto;
  overflow-y: auto;
  scrollbar-width: none; }
  .catalog .content_main_scroll {
    display: block;
    height: auto;
    height: 865px;
    text-align: center;
    flex: auto;
    margin-right: 0;
    overflow-y: auto;
    /* Вертикальный скролл */ }
    .catalog .content_main_scroll .mobile_apartment_preview {
      display: none; }
  .catalog .content_main_scroll::-webkit-scrollbar {
    width: 4px;
    /* Ширина скроллбара */
    border-radius: 10px;
    background-color: #d0dbda; }
  .catalog .content_main_scroll::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: var(--color-gray-dark); }
  .catalog .content_main_more {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px 0 58px 0; }
    .catalog .content_main_more button {
      font-weight: 500;
      font-size: 16px;
      line-height: 19.2px;
      border: 1px solid black;
      border-radius: 30px;
      padding: 11px 21px;
      text-transform: uppercase; }
      .catalog .content_main_more button:hover {
        cursor: pointer;
        background-color: black;
        color: #fff; }
  .catalog .content_main_slider {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    margin-bottom: 85px;
    overflow-x: auto;
    /* Включаем горизонтальный скролл */ }
    .catalog .content_main_slider::-webkit-scrollbar {
      height: 4px;
      /* Высота скроллбара */
      border-radius: 10px;
      background-color: #d0dbda; }
    .catalog .content_main_slider::-webkit-scrollbar-thumb {
      border-radius: 10px;
      background-color: var(--color-gray-dark); }
    .catalog .content_main_slider .mobile_content_adv {
      display: none; }
  .catalog .content_main_card {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    background-color: var(--color-smoky-white);
    border-radius: 20px;
    transition: 0.3s; }
    .catalog .content_main_card_paragraphs {
      padding: 49px 42px; }
      .catalog .content_main_card_paragraphs .title {
        font-size: 24px;
        font-weight: 500;
        line-height: 28.8px;
        margin-bottom: 35px; }
      .catalog .content_main_card_paragraphs .text {
        margin-bottom: 13px;
        line-height: 25.2px; }
    .catalog .content_main_card_image {
      width: 100%;
      max-width: 518px;
      max-height: 545px;
      min-height: 545px;
      height: 100%;
      background-image: url(/local/templates/gurus/assets/css/../img/lightbox/Slider_pic.jpg);
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_03.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_03.svg);
      -webkit-mask-size: cover;
      mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
    .catalog .content_main_card_image2 {
      width: 100%;
      max-width: 524px;
      max-height: 547px;
      min-height: 547px;
      height: 100%;
      background-image: url(/local/templates/gurus/assets/css/../img/lightbox/Slider_pic.jpg);
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_04.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_04.svg);
      -webkit-mask-size: cover;
      mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
    .catalog .content_main_card_image3 {
      width: 100%;
      max-width: 518px;
      max-height: 545px;
      min-height: 545px;
      height: 100%;
      background-image: url(/local/templates/gurus/assets/css/../img/lightbox/Slider_pic.jpg);
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_05.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_05.svg);
      -webkit-mask-size: cover;
      mask-size: contain;
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
  .catalog .content_main_wrapper {
    box-sizing: content-box;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-size: 18px;
    margin-top: 40px; }
    .catalog .content_main_wrapper .content_adv {
      display: flex;
      align-items: flex-start;
      flex-direction: column;
      height: 481px;
      background-color: var(--color-pink);
      border-radius: 20px;
      padding: 23px 18px;
      transition: 0.3s; }
      .catalog .content_main_wrapper .content_adv_header {
        font-size: 76px;
        color: #fff; }
      .catalog .content_main_wrapper .content_adv_text {
        font-size: 18px;
        color: #fff; }
      .catalog .content_main_wrapper .content_adv_button {
        display: flex;
        position: absolute;
        padding-left: 180px; }
      .catalog .content_main_wrapper .content_adv_img {
        width: 100%;
        max-width: 214px;
        min-width: 214px;
        max-height: 272px;
        height: 100%;
        background-image: url(/local/templates/gurus/assets/css/../img/catalog_adv_image.jpg);
        -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_02.svg);
        mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_02.svg);
        -webkit-mask-size: cover;
        mask-size: contain;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        background-size: cover;
        background-position: center; }
      .catalog .content_main_wrapper .content_adv .content_adv_text {
        text-transform: lowercase; }

.catalog .content_flat {
  display: flex;
  display: initial;
  align-items: center;
  justify-content: space-between;
  height: auto;
  max-height: 750px;
  width: auto;
  border-bottom: 1px dashed black; }
  .catalog .content_flat:hover {
    background-color: var(--color-smoky-white); }
  .catalog .content_flat#discount {
    background-color: var(--color-pink); }
  .catalog .content_flat_discount {
    margin: 19px -30px 0 0; }
  .catalog .content_flat_bold {
    font-weight: 500; }
  .catalog .content_flat_crossed_out {
    text-decoration: line-through; }
  .catalog .content_flat_first_section {
    display: flex;
    align-items: center;
    gap: 59px;
    white-space: nowrap; }
    .catalog .content_flat_first_section div {
      cursor: default;
      text-transform: uppercase; }
    .catalog .content_flat_first_section .house {
      max-width: 350px;
      text-align: left;
      text-transform: uppercase;
      font-size: 16px; }
  .catalog .content_flat_second_section {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 55px;
    text-transform: uppercase;
    white-space: nowrap; }
    .catalog .content_flat_second_section .mobile_season {
      display: block; }
    .catalog .content_flat_second_section .content_flat_discount p {
      margin: -15px -11px 0 0;
      padding: 3.45px 6px;
      background-color: var(--color-pink);
      color: #fff; }
    .catalog .content_flat_second_section .fav_button {
      max-width: 23px; }
      .catalog .content_flat_second_section .fav_button:hover {
        cursor: pointer; }
    .catalog .content_flat_second_section div {
      cursor: default; }
      .catalog .content_flat_second_section div img {
        display: flex; }
    .catalog .content_flat_second_section button {
      font-weight: 300;
      border: 1px solid black;
      border-radius: 30px;
      padding: 11px 21px;
      text-transform: uppercase;
      font-size: 16px;
      line-height: 19.2px; }
      .catalog .content_flat_second_section button:hover {
        cursor: pointer;
        background-color: black;
        color: #fff; }
    .catalog .content_flat_second_section span {
      cursor: default; }
  .catalog .content_flat_bold:first-child::after {
    content: "1 Комнатная"; }

.catalog .content .content_advertising {
  background-color: aqua; }

.catalog .content_filters {
  display: flex; }
  .catalog .content_filters * {
    font-size: 16px; }
  .catalog .content_filters .content_filters_left_side {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: auto;
    margin-top: 30px;
    margin-bottom: 5px; }
  .catalog .content_filters .content_filters_right_side {
    display: flex;
    margin-top: 30px;
    margin-bottom: 5px; }
  .catalog .content_filters .content_ellipse_buttons {
    display: flex;
    align-items: center;
    justify-content: center; }
    .catalog .content_filters .content_ellipse_buttons .ellipse_button {
      padding: 11px 21px;
      max-height: 42px;
      text-transform: uppercase; }
    .catalog .content_filters .content_ellipse_buttons button {
      border-radius: 30px;
      border: 1px solid black; }
      .catalog .content_filters .content_ellipse_buttons button:hover {
        cursor: pointer;
        background-color: black;
        color: #fff; }
    .catalog .content_filters .content_ellipse_buttons .button_with_checkbox .ellipse_button.checked {
      background-color: var(--color-black);
      color: #fff; }
    .catalog .content_filters .content_ellipse_buttons .content_round_buttons .button_with_checkbox .checked {
      background-color: var(--color-black);
      color: #fff; }
  .catalog .content_filters .content_round_buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 11px;
    gap: 11px; }
    .catalog .content_filters .content_round_buttons button {
      border-radius: 50%;
      border: 1px solid black;
      width: 42px;
      height: 42px; }
      .catalog .content_filters .content_round_buttons button:hover {
        cursor: pointer;
        background-color: black;
        color: #fff; }
  .catalog .content_filters .content_select {
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 1px solid #d0dbda;
    border-right: 1px solid #d0dbda;
    padding: 0 44px;
    width: 100%;
    max-width: 200px; }
    .catalog .content_filters .content_select select {
      -webkit-appearance: none;
      appearance: none; }
    .catalog .content_filters .content_select select::-ms-expand {
      display: none; }
    .catalog .content_filters .content_select .select-menu.active .options {
      margin-left: -60px; }
    .catalog .content_filters .content_select .select-menu {
      max-width: 150px;
      margin: 0 auto; }
    .catalog .content_filters .content_select .select-menu .select-btn {
      display: flex;
      height: 55px;
      background: #fff;
      font-size: 18px;
      font-weight: 400;
      border-radius: 8px;
      align-items: center;
      cursor: pointer;
      justify-content: space-between;
      text-transform: uppercase; }
      .catalog .content_filters .content_select .select-menu .select-btn i {
        font-size: 250px;
        transition: 0.3s; }
      .catalog .content_filters .content_select .select-menu .select-btn .arr {
        padding-left: 10px; }
    .catalog .content_filters .content_select .select-menu .options {
      position: absolute;
      max-width: -moz-fit-content;
      max-width: fit-content;
      overflow-y: auto;
      max-height: 295px;
      margin-top: 14px;
      margin-left: -50px;
      animation-name: fadeInDown;
      -webkit-animation-name: fadeInDown;
      animation-duration: 0.35s;
      animation-fill-mode: both;
      -webkit-animation-duration: 0.35s;
      -webkit-animation-fill-mode: both;
      display: none; }
    .catalog .content_filters .content_select .select-menu .options .option {
      display: flex;
      justify-content: center;
      height: 46.5px;
      cursor: pointer;
      padding: 0 16px;
      align-items: center;
      background: var(--color-smoky-white);
      border-bottom: 1px dashed var(--color-gray-dark); }
    .catalog .content_filters .content_select .select-menu .options .option:hover {
      background: var(--color-smoky-white); }
    .catalog .content_filters .content_select .select-menu .options .option i {
      font-size: 25px;
      margin-right: 12px; }
    .catalog .content_filters .content_select .select-menu .options .option .option-text {
      font-size: 16px;
      font-weight: 500;
      color: #333;
      text-transform: uppercase; }
    .catalog .content_filters .content_select .select-menu.active .select-btn i {
      transform: rotate(-180deg); }
    .catalog .content_filters .content_select .select-menu.active .options {
      display: block;
      opacity: 0;
      z-index: 10;
      animation-name: fadeInUp;
      -webkit-animation-name: fadeInUp;
      animation-duration: 0.4s;
      animation-fill-mode: both;
      -webkit-animation-duration: 0.4s;
      -webkit-animation-fill-mode: both; }
    .catalog .content_filters .content_select .select-menu .options .option:last-child {
      border-bottom: none; }
  .catalog .content_filters .content_range {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 44px;
    border-right: 1px solid #d0dbda;
    height: 55px; }
    .catalog .content_filters .content_range input[type="range"] {
      box-sizing: border-box;
      -webkit-appearance: none;
              appearance: none;
      width: 190px;
      margin: 0;
      padding: 0 2px;
      overflow: hidden;
      border: 0;
      border-radius: 1px;
      outline: none;
      background-size: 100% 2px;
      pointer-events: none; }
      .catalog .content_filters .content_range input[type="range"]:active, .catalog .content_filters .content_range input[type="range"]:focus {
        outline: none; }
      .catalog .content_filters .content_range input[type="range"]::-webkit-slider-thumb {
        height: 13px;
        width: 13px;
        border-radius: 28px;
        background-color: black;
        z-index: 10;
        position: relative;
        margin: 7px 0;
        cursor: pointer;
        -webkit-appearance: none;
                appearance: none;
        pointer-events: all;
        box-shadow: 0 1px 4px 0.5px rgba(0, 0, 0, 0.25); }
        .catalog .content_filters .content_range input[type="range"]::-webkit-slider-thumb::before {
          content: " ";
          display: block;
          position: absolute;
          top: 13px;
          left: 100%;
          width: 2000px;
          height: 2px; }
    .catalog .content_filters .content_range .multi_range {
      position: relative;
      display: flex;
      flex-direction: column;
      align-items: center;
      margin-bottom: 0; }
      .catalog .content_filters .content_range .multi_range .rnd {
        background-color: black;
        height: 2px;
        position: absolute;
        z-index: 10;
        left: 13%;
        right: 31%;
        top: 13px; }
      .catalog .content_filters .content_range .multi_range .rnd2 {
        background-color: black;
        height: 2px;
        position: absolute;
        z-index: 10;
        left: 13%;
        right: 31%;
        top: 9px; }
      .catalog .content_filters .content_range .multi_range input[type="range"] {
        margin-bottom: 0; }
        .catalog .content_filters .content_range .multi_range input[type="range"]:nth-child(1)::-webkit-slider-thumb::before {
          background-color: red; }
        .catalog .content_filters .content_range .multi_range input[type="range"]:nth-child(2) {
          position: absolute;
          background: none; }
          .catalog .content_filters .content_range .multi_range input[type="range"]:nth-child(2)::-webkit-slider-thumb::before {
            background-color: grey;
            background-color: aqua; }
      .catalog .content_filters .content_range .multi_range_input1 {
        background: linear-gradient(green, green) no-repeat center;
        z-index: 20; }
      .catalog .content_filters .content_range .multi_range_input2 {
        background: linear-gradient(#d0dbda, #d0dbda) no-repeat center; }
      .catalog .content_filters .content_range .multi_range .range-values {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%; }
        .catalog .content_filters .content_range .multi_range .range-values .multi_range_input_field {
          display: flex;
          align-items: center;
          justify-content: center;
          font-weight: 500;
          border-bottom: 1px solid #989787;
          padding-bottom: 3px; }
          .catalog .content_filters .content_range .multi_range .range-values .multi_range_input_field sup {
            font-size: 14px; }
        .catalog .content_filters .content_range .multi_range .range-values .multi_range_input_field:hover {
          cursor: default; }
        .catalog .content_filters .content_range .multi_range .range-values .multi_range_input_field input:hover {
          background-color: #d0dbda;
          cursor: pointer; }
        .catalog .content_filters .content_range .multi_range .range-values label {
          color: white; }
        .catalog .content_filters .content_range .multi_range .range-values input[type="text"] {
          width: 50px;
          text-align: left;
          border: none;
          width: 33px; }
        .catalog .content_filters .content_range .multi_range .range-values input:focus {
          border: none;
          outline-width: 0;
          background-color: var(--color-smoky-white); }
  .catalog .content_filters .content_price_filter {
    display: flex;
    align-items: center;
    justify-content: center;
    outline-width: 0;
    padding: 11px 14.5px; }
    .catalog .content_filters .content_price_filter input {
      border: none;
      outline-width: 0;
      background-color: var(--color-smoky-white);
      max-width: 150px;
      width: 100px; }
      .catalog .content_filters .content_price_filter input:hover {
        cursor: pointer; }
    .catalog .content_filters .content_price_filter .content_price_field {
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 500;
      background-color: var(--color-smoky-white);
      padding: 11px 14.5px;
      min-width: 180px;
      width: 180px; }
    .catalog .content_filters .content_price_filter label {
      width: 165px; }
  .catalog .content_filters .content_price_arrows {
    display: flex;
    align-items: center;
    justify-content: center; }
    .catalog .content_filters .content_price_arrows img {
      max-width: none;
      margin-right: 100px; }
      .catalog .content_filters .content_price_arrows img:hover {
        cursor: pointer; }
  .catalog .content_filters .content_advanced_filter {
    display: flex;
    align-items: center;
    justify-content: center; }
    .catalog .content_filters .content_advanced_filter p {
      min-width: 186px;
      margin: 0 10px;
      font-weight: 500;
      text-transform: uppercase; }
    .catalog .content_filters .content_advanced_filter p:hover,
    .catalog .content_filters .content_advanced_filter img:hover:hover {
      cursor: pointer; }
    .catalog .content_filters .content_advanced_filter p:hover {
      border-bottom: 1px solid black; }

@keyframes fadeInUp {
  from {
    transform: translate3d(0, 30px, 0); }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1; } }

@keyframes fadeInDown {
  from {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  to {
    transform: translate3d(0, 20px, 0);
    opacity: 0; } }

.catalog .content_select2 {
  display: flex;
  align-items: center;
  justify-content: center; }
  .catalog .content_select2 img {
    max-width: none;
    margin-right: 100px; }
    .catalog .content_select2 img:hover {
      cursor: pointer; }
  .catalog .content_select2 select {
    -webkit-appearance: none;
    appearance: none; }
  .catalog .content_select2 select::-ms-expand {
    display: none; }
  .catalog .content_select2 .select-menu2 {
    margin: 0 auto; }
  .catalog .content_select2 .select-menu2 .select-btn2 {
    display: flex;
    height: 55px;
    background: #fff;
    font-size: 18px;
    font-weight: 400;
    border-radius: 8px;
    align-items: center;
    cursor: pointer;
    justify-content: space-between;
    padding-left: 150px;
    text-transform: uppercase; }
    .catalog .content_select2 .select-menu2 .select-btn2 i {
      font-size: 250px;
      transition: 0.3s; }
    .catalog .content_select2 .select-menu2 .select-btn2 img {
      margin-left: 10px; }
  .catalog .content_select2 .select-menu2 .options2 {
    position: absolute;
    max-width: -moz-fit-content;
    max-width: fit-content;
    overflow-y: auto;
    max-height: 295px;
    margin-top: -15px;
    margin-left: -60px;
    animation-name: fadeInDown;
    -webkit-animation-name: fadeInDown;
    animation-duration: 0.35s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.35s;
    -webkit-animation-fill-mode: both;
    display: none;
    color: #fff; }
  .catalog .content_select2 .select-menu2 .options2 .option2 {
    display: flex;
    justify-content: center;
    height: 46.5px;
    cursor: pointer;
    padding: 0 16px;
    align-items: center;
    background: var(--color-black);
    border-bottom: 1px dashed var(--color-gray-dark); }
  .catalog .content_select2 .select-menu2 .options2 .option2:last-child {
    border-bottom: 1px dashed transparent; }
  .catalog .content_select2 .select-menu2 .options2 .option2:hover {
    color: red; }
  .catalog .content_select2 .select-menu2 .options2 .option2 i {
    font-size: 25px;
    margin-right: 12px; }
  .catalog .content_select2 .select-menu2 .options2 .option2 .option-text2 {
    font-size: 16px;
    color: #fff; }
  .catalog .content_select2 .select-menu2.active .select-btn2 i {
    transform: rotate(-180deg); }
  .catalog .content_select2 .select-menu2.active .options2 {
    display: block;
    opacity: 0;
    z-index: 10;
    animation-name: fadeInUp;
    -webkit-animation-name: fadeInUp;
    animation-duration: 0.4s;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.4s;
    -webkit-animation-fill-mode: both;
    margin-left: -40px; }

.catalog .revealed_in_top {
  display: flex;
  justify-content: space-between;
  height: 60px;
  align-items: center;
  gap: 25px;
  padding-top: 10px;
  border-bottom: 1px dashed black;
  padding-bottom: 10px;
  margin-right: 40px; }

.catalog .section_more_details_about_flat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px dashed black;
  padding-top: 10px;
  padding-bottom: 15px; }

.catalog .revealed_in_bottom {
  width: "100%";
  display: inline;
  display: none; }

.catalog .content_flat_bold {
  text-transform: uppercase; }

.catalog .content_flat_bold.price_size::after {
  content: " руб.";
  text-transform: lowercase; }

.catalog .price_size {
  font-size: 20px;
  font-weight: 500;
  line-height: 24px;
  display: flex;
  gap: 5px; }
  .catalog .price_size span:nth-child(2) {
    display: none; }

.catalog .seasons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px; }

.catalog .house {
  font-size: 11px;
  max-width: min-content;
  text-transform: uppercase; }

.catalog .selected {
  background-color: blue; }

.catalog .hidden_checkbox {
  display: none; }

.catalog .selection {
  background-color: pink;
  border: 0; }

.catalog .hidden {
  display: none !important; }

@media (max-width: 1680px) {
  .catalog_filters_square {
    display: none; }
  .catalog_item_visible {
    gap: 6px; }
  .catalog_item_col {
    font-size: 16px; }
  .catalog_item__price {
    font-size: 18px; }
    .catalog_item__price-old {
      font-size: 16px; }
    .catalog_item__price-sale {
      font-size: 16px; } }

@media screen and (max-width: 1580px) {
  .catalog {
    padding-top: 16px; }
    .catalog .content-wrapper {
      padding: 0 20px; }
    .catalog .content_headers {
      margin-bottom: 35px; }
    .catalog_filters_group {
      gap: 12px;
      min-height: 45px;
      padding: 0 10px; }
      .catalog_filters_group .range_input {
        min-width: 170px; }
    .catalog_promo {
      padding: 18px 15px; }
      .catalog_promo .btn {
        width: 25px;
        height: 25px; }
      .catalog_promo_image {
        height: 220px; }
      .catalog_promo_title {
        font-size: 64px; }
      .catalog_promo_description {
        font-size: 16px; }
    .catalog_sort {
      width: 100px; }
      .catalog_sort .select2-container {
        max-width: 100px; } }

@media (max-width: 1450px) {
  .catalog_item_visible {
    gap: 5px; }
  .catalog_item_col {
    font-size: 14px; }
  .catalog_item__price {
    font-size: 16px; }
    .catalog_item__price-old {
      font-size: 14px; }
    .catalog_item__price-sale {
      font-size: 13px;
      height: 20px; }
  .catalog_item__favorite > div {
    width: 32px;
    height: 32px; } }

@media (max-width: 1370px) {
  .catalog .content-wrapper {
    padding: 0; }
  .catalog .content_headers {
    margin-bottom: 40px; }
  .catalog_sort {
    width: auto; }
    .catalog_sort .select2-container {
      max-width: none; }
  .catalog_filters {
    gap: 0; }
    .catalog_filters_general {
      order: 2;
      flex: 0 0 50%;
      justify-content: flex-end; }
    .catalog_filters_adv-button {
      order: 1;
      flex: 0 0 50%; }
      .catalog_filters_adv-button .btn {
        margin: 0 auto 0 0;
        background-color: #ffffff;
        border-radius: 0;
        color: black; }
        .catalog_filters_adv-button .btn span {
          font-size: 0px;
          position: relative; }
          .catalog_filters_adv-button .btn span:after {
            content: 'ФИЛЬТР';
            font-size: 14px; }
        .catalog_filters_adv-button .btn .ic {
          filter: invert(1); }
    .catalog_filters_group {
      gap: 8px;
      padding: 0 15px; }
      .catalog_filters_group:not(.catalog_sort) {
        display: none; } }

@media screen and (max-width: 1200px) {
  .catalog_listing {
    flex: 0 0 100%; }
    .catalog_listing_footer > div:first-child {
      flex: 0 0 100%; }
    .catalog_listing_footer > div:last-child {
      display: none; }
  .catalog_sidebar {
    display: none; }
  .catalog_item_col {
    font-size: 13px; }
  .catalog_item__project {
    text-transform: none; }
  .catalog_item__price {
    font-size: 13px; }
    .catalog_item__price-old {
      font-size: 13px; }
    .catalog_item__price-sale {
      width: 20px;
      height: 20px; }
  .catalog_promo {
    display: flex;
    align-items: flex-end;
    gap: 20px;
    padding-top: 25px; }
    .catalog_promo_image {
      display: none; }
    .catalog_promo_title p {
      line-height: 1; } }

@media screen and (max-width: 900px) {
  .catalog_listing {
    padding-right: 15px; }
  .catalog_item__type {
    flex: 0 0 13%;
    width: 13%;
    max-width: 13%;
    text-transform: none; }
  .catalog_item__square {
    flex: 0 0 18%;
    width: 18%;
    max-width: 18%; }
  .catalog_item__project {
    flex: 0 0 22%;
    width: 22%;
    max-width: 22%; }
  .catalog_item__stage, .catalog_item__deadline {
    display: none; }
  .catalog_item__price {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%; }
  .catalog_promo {
    padding-right: 45px; } }

@media (max-width: 768px) {
  .catalog_listing {
    max-height: none;
    overflow: auto;
    padding: 0; }
  .catalog_item_col.catalog_item__favorite {
    display: none; }
  .catalog_item__btn {
    display: none; }
  .catalog_item:hover {
    background-color: transparent; } }

@media screen and (max-width: 640px) {
  .catalog_sort .select2-container {
    max-width: 50vw !important; }
  .catalog_item__type span {
    position: relative;
    font-size: 0; }
    .catalog_item__type span:after {
      content: attr(data-type_short);
      font-size: 13px; }
  .catalog_item__project {
    flex: 0 0 22%;
    width: 22%;
    max-width: 22%; }
  .catalog_item__stage, .catalog_item__deadline {
    display: none; }
  .catalog_item__price {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%; } }

@media (max-width: 400px) {
  .catalog_filters {
    gap: 0; }
    .catalog_filters_general {
      flex: 0 0 70%; }
    .catalog_filters_adv-button {
      flex: 0 0 30%; }
  .catalog_item__square {
    flex: 0 0 30%;
    width: 30%;
    max-width: 30%; }
  .catalog_item__project {
    display: none; } }

.project-page .swiper-container {
  width: 100%;
  height: 950px;
  position: relative; }
  .project-page .swiper-container .swiper-slide .main_slide {
    height: 100%;
    object-fit: cover;
    width: 100%; }

.project-page .swiper-button-next:after,
.project-page .swiper-rtl .swiper-button-prev:after,
.project-page .swiper-button-prev:after,
.project-page .swiper-rtl .swiper-button-next:after {
  content: inherit; }

.project-page .swiper-button-prev,
.project-page .swiper-button-next {
  width: 54px;
  height: 30px;
  padding: 0 14px;
  border-radius: 30px;
  background: var(--color-white);
  top: 50%;
  transform: translateY(-50%); }

.project-page .swiper-button-prev {
  left: 100px; }

.project-page .swiper-button-next {
  right: 100px; }

.project-page .bottom-gradient {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 450px;
  background: linear-gradient(180deg, var(--color-black-base) 0%, rgba(0, 0, 0, 0.6) 36.98%, rgba(0, 0, 0, 0) 99.91%);
  transform: rotate(-180deg); }

.project-page .slide-content {
  position: absolute;
  bottom: 200px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  color: var(--color-white);
  transform: rotate(180deg);
  padding: 0 100px; }

.project-page .logo-text {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 200px; }
  .project-page .logo-text img {
    margin-right: 10px;
    max-width: 245px; }
  .project-page .logo-text span {
    font-size: var(--font-size-main);
    font-weight: 500;
    line-height: 28.8px;
    margin-left: 50px; }

.project-page .percentage {
  display: flex;
  justify-content: center;
  align-items: center; }
  .project-page .percentage .percentage-circle {
    width: 175px;
    height: 175px;
    border: 10px solid var(--color-white);
    border-left: 10px solid transparent;
    border-radius: 50%;
    transform: rotate(45deg); }
  .project-page .percentage .percentage-text {
    position: absolute;
    top: 27%;
    left: 27%;
    transform: rotate(-45deg);
    font-size: 48px;
    font-weight: 300;
    line-height: 16px;
    text-align: center; }
    .project-page .percentage .percentage-text span {
      font-size: 16px;
      font-weight: 500;
      text-align: left;
      display: block;
      margin: 0; }

.project-page .info-section {
  padding: 50px 0;
  background: #101b1a; }
  .project-page .info-section h1 {
    font-size: 48px;
    font-weight: 300;
    line-height: 57.6px;
    text-align: left;
    color: #ffffff;
    margin: 130px auto 70px;
    max-width: 780px; }
  .project-page .info-section p,
  .project-page .info-section .info-section-subtitle {
    font-size: 24px;
    font-weight: 300;
    line-height: 40.8px;
    text-align: left;
    color: #ffffff;
    margin: 0 auto 90px;
    max-width: 780px;
    display: block; }
  .project-page .info-section .info-section-subtitle {
    margin: 0 0 90px 50%; }

.project-page .cards {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  margin-top: 50px;
  flex-wrap: wrap; }
  .project-page .cards .card {
    width: 100%;
    max-width: 518px;
    border-radius: 0 0 20px 20px;
    background: #2f3d3c;
    overflow: hidden;
    margin-bottom: 20px; }
    .project-page .cards .card h2 {
      font-size: 24px;
      font-weight: 500;
      line-height: 28.8px;
      text-align: left;
      padding: 20px 20px 20px 35px;
      color: #ffffff; }
    .project-page .cards .card p {
      font-size: 18px;
      font-weight: 300;
      line-height: 25.2px;
      text-align: left;
      padding: 0 20px 20px 20px;
      width: 93%;
      color: #ffffff; }
    .project-page .cards .card img {
      width: 100%;
      height: auto;
      border-radius: 0 0 20px 20px; }

.project-page .slider-container {
  position: relative;
  margin-bottom: 100px; }
  .project-page .slider-container .slider-title {
    font-size: 48px;
    font-weight: 300;
    line-height: 57.6px;
    text-align: left;
    margin-bottom: 25px;
    display: block;
    color: #ffffff; }
  .project-page .slider-container .slider-caption {
    font-size: 18px;
    font-weight: 300;
    line-height: 25.2px;
    text-align: left;
    margin-bottom: 40px;
    color: #ffffff; }
  .project-page .slider-container .slider-wrapper {
    margin: 0 80px;
    overflow: hidden;
    width: 100%; }
    .project-page .slider-container .slider-wrapper .slider-slide {
      width: 450px;
      border-radius: 20px;
      margin-right: 80px;
      position: relative; }
      .project-page .slider-container .slider-wrapper .slider-slide img {
        width: 100%;
        height: 100%;
        border-radius: 20px;
        height: 340px; }
    .project-page .slider-container .slider-wrapper .custom-swiper-button-next {
      position: static;
      transform: none; }
      .project-page .slider-container .slider-wrapper .custom-swiper-button-next img {
        position: absolute;
        top: 60%;
        right: 1%;
        cursor: pointer;
        z-index: 1; }
    .project-page .slider-container .slider-wrapper .custom-swiper-button-prev {
      position: static;
      transform: none; }
      .project-page .slider-container .slider-wrapper .custom-swiper-button-prev img {
        position: absolute;
        top: 60%;
        left: 1%;
        cursor: pointer;
        z-index: 1; }
  .project-page .slider-container .project-slider1 {
    overflow: hidden;
    margin-top: 100px; }
    .project-page .slider-container .project-slider1 .swiper-button-next,
    .project-page .slider-container .project-slider1 .swiper-button-prev {
      top: 50%;
      width: 54px;
      height: 30px;
      padding: 0 14px;
      border-radius: 30px;
      background: var(--color-white);
      transform: translateY(-50%); }
    .project-page .slider-container .project-slider1 .swiper-button-next {
      right: 30px; }
    .project-page .slider-container .project-slider1 .swiper-button-prev {
      left: 30px; }
    .project-page .slider-container .project-slider1 .swiper-button-next:after,
    .project-page .slider-container .project-slider1 .swiper-button-prev:after {
      content: none; }
    .project-page .slider-container .project-slider1 .swiper-slide {
      position: relative;
      width: 100%;
      height: 100%;
      border-radius: 20px; }
      .project-page .slider-container .project-slider1 .swiper-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 20px; }

.project-page-slider {
  position: relative; }

.project-page .custom-block {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-sizing: border-box; }
  .project-page .custom-block .custom-content {
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 105px;
    flex-wrap: wrap; }
    .project-page .custom-block .custom-content div {
      flex: 1;
      margin: 0 20px;
      box-sizing: border-box; }
      .project-page .custom-block .custom-content div h2 {
        font-size: 48px;
        font-weight: 300;
        line-height: 57.6px;
        text-align: left;
        color: #ffffff; }
      .project-page .custom-block .custom-content div p {
        font-size: 24px;
        font-weight: 300;
        line-height: 36px;
        text-align: left;
        color: #ffffff; }

.project-page .new-slider-container {
  width: 100%;
  text-align: left;
  display: flex;
  flex-direction: column;
  justify-content: center; }
  .project-page .new-slider-container .new-slider-title {
    font-size: 48px;
    font-weight: 300;
    line-height: 57.6px;
    margin: 100px 0;
    width: 100%;
    color: #ffffff; }
  .project-page .new-slider-container .new-slider-filter-container {
    display: flex;
    margin-bottom: 50px;
    width: 100%; }
    .project-page .new-slider-container .new-slider-filter-container .new-filter-button {
      font-size: 18px;
      font-weight: 500;
      line-height: 25.2px;
      text-align: center;
      width: 109px;
      height: 47px;
      border-radius: 30px;
      border: 1px solid #ffffff;
      margin-right: 11px;
      cursor: pointer;
      color: #ffffff;
      display: flex;
      justify-content: center;
      align-items: center; }
      .project-page .new-slider-container .new-slider-filter-container .new-filter-button.active {
        background-color: var(--color-white);
        color: var(--color-black); }
      .project-page .new-slider-container .new-slider-filter-container .new-filter-button.around {
        width: 42px;
        height: 42px;
        border-radius: 50%; }
    .project-page .new-slider-container .new-slider-filter-container .new-slide-counter {
      font-size: 18px;
      font-weight: 300;
      line-height: 30.6px;
      color: var(--color-gray-mid);
      text-align: center;
      margin-left: 31%; }
  .project-page .new-slider-container .new-swiper-container {
    overflow: hidden;
    position: relative;
    padding: 0 100px;
    height: 590px; }
    .project-page .new-slider-container .new-swiper-container .new-swiper-slide {
      flex-direction: column;
      transition: transform 0.3s;
      max-height: 550px;
      background: #101b1a;
      display: flex;
      align-items: center; }
      .project-page .new-slider-container .new-swiper-container .new-swiper-slide img {
        width: 290px;
        height: 263px;
        object-fit: contain; }
      .project-page .new-slider-container .new-swiper-container .new-swiper-slide:hover {
        padding: 0 0 25px 0; }
      .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info {
        text-align: left;
        width: 290px;
        margin-top: 20px; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .rooms,
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .square,
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .price {
          font-size: 18px;
          font-weight: 300;
          line-height: 25.2px;
          color: #ffffff; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .square {
          display: flex;
          justify-content: center;
          align-items: center;
          justify-content: start;
          gap: 10px;
          margin-top: 10px; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .square,
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .price {
          font-size: 22px;
          font-weight: 500;
          line-height: 28.8px; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .price {
          color: var(--color-gray-mid); }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .new-button {
          width: 100%;
          height: 42px;
          border-radius: 30px;
          border: 1px solid #ffffff;
          color: #ffffff;
          font-size: 16px;
          font-weight: 500;
          line-height: 19.2px;
          text-align: center;
          margin-top: 40px;
          cursor: pointer;
          background-repeat: no-repeat;
          background-position-x: 95%;
          background-position-y: 50%; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .new-button-primary {
          width: 100%;
          height: 61px;
          background: var(--color-pink);
          font-size: 18px;
          font-weight: 500;
          line-height: 28.8px;
          text-align: center;
          margin-top: 40px;
          color: #fff;
          border: none; }
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .new-button,
        .project-page .new-slider-container .new-swiper-container .new-swiper-slide .new-slide-info .new-button-primary {
          display: none; }
    .project-page .new-slider-container .new-swiper-container .new-swiper-slide:hover .new-button,
    .project-page .new-slider-container .new-swiper-container .new-swiper-slide:hover .new-button-primary {
      display: flex;
      display: flex;
      justify-content: center;
      align-items: center; }
  .project-page .new-slider-container .slider-button-prev,
  .project-page .new-slider-container .slider-button-next {
    top: 30%;
    transform: translateY(-50%);
    position: absolute;
    z-index: 9;
    cursor: pointer; }
  .project-page .new-slider-container .slider-button-prev {
    left: 55px; }
  .project-page .new-slider-container .slider-button-next {
    right: 55px; }
  .project-page .new-slider-container .new-swiper-slide:hover .new-button,
  .project-page .new-slider-container .new-swiper-slide:hover .new-button-primary {
    display: flex;
    display: flex;
    justify-content: center;
    align-items: center; }
  .project-page .new-slider-container .new-swiper-slide:hover {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 40px 0px; }

.project-page .transport-access {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  align-items: flex-start;
  background: #2f3d3c;
  padding-left: 120px; }
  .project-page .transport-access .text-block {
    max-width: 800px;
    padding: 90px 0; }
    .project-page .transport-access .text-block h2 {
      font-size: 48px;
      font-weight: 300;
      line-height: 57.6px;
      text-align: left;
      color: #ffffff; }
    .project-page .transport-access .text-block p {
      font-size: 24px;
      font-weight: 300;
      line-height: 40.8px;
      text-align: left;
      margin-top: 20px;
      color: #ffffff; }
    .project-page .transport-access .text-block .points {
      display: flex;
      justify-content: center;
      align-items: center;
      justify-content: start;
      gap: 35px;
      margin-top: 50px;
      flex-wrap: wrap; }
      .project-page .transport-access .text-block .points .point {
        width: 240px;
        height: 330px;
        background: rgba(8, 0, 0, 0.6);
        border-radius: 15%;
        position: relative;
        text-align: left;
        background-blend-mode: color; }
        .project-page .transport-access .text-block .points .point img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          border-radius: 50%; }
        .project-page .transport-access .text-block .points .point h3 {
          position: absolute;
          top: 20px;
          left: 20px;
          font-size: 24px;
          font-weight: 500;
          line-height: 28.8px;
          margin: 0;
          color: #ffffff; }
        .project-page .transport-access .text-block .points .point span {
          position: absolute;
          bottom: 20px;
          left: 20px;
          width: 171px;
          height: 30px;
          border-radius: 30px;
          background: var(--color-white);
          font-size: 16px;
          font-weight: 300;
          line-height: 19.2px;
          display: flex;
          justify-content: center;
          align-items: center;
          margin-bottom: 10px; }

.project-page .map-container {
  position: relative;
  width: 100%;
  margin: auto; }
  .project-page .map-container img {
    width: 100%;
    height: auto; }
  .project-page .map-container .house-point {
    position: absolute;
    width: 20px;
    height: 20px;
    background-color: var(--color-green-base);
    border-radius: 50%;
    cursor: pointer; }
    .project-page .map-container .house-point::before {
      content: "";
      position: absolute;
      top: -24px;
      left: -51%;
      transform: translateX(-50%);
      width: 35px;
      height: 45px;
      background: url(/local/templates/gurus/assets/css/../img/point.svg) no-repeat center center;
      background-size: contain;
      background-position-x: 0px;
      background-position-y: 2px; }
    .project-page .map-container .house-point .label {
      position: absolute;
      top: -38px;
      right: -26%;
      transform: translateX(-50%);
      width: 77.14px;
      height: 32.82px;
      background-color: var(--color-white);
      border-radius: 40px;
      display: flex;
      justify-content: center;
      align-items: center;
      font-size: 12px; }
    .project-page .map-container .house-point .inner-circle {
      position: absolute;
      top: 83%;
      left: 25%;
      transform: translate(-50%, -50%);
      width: 33px;
      height: 33px;
      background-color: var(--color-white);
      border-radius: 50%; }
      .project-page .map-container .house-point .inner-circle::before {
        content: "";
        position: absolute;
        top: 30%;
        left: 29%;
        width: 14px;
        height: 14px;
        background-color: var(--color-green-base);
        border-radius: 50%; }
    .project-page .map-container .house-point.house1 {
      top: 46%;
      left: 13%; }
    .project-page .map-container .house-point.house2 {
      top: 43%;
      left: 29%; }
    .project-page .map-container .house-point.house3 {
      top: 44%;
      left: 44%; }
    .project-page .map-container .house-point.house4 {
      top: 44%;
      left: 60%; }
    .project-page .map-container .house-point.house5 {
      top: 49%;
      left: 75%; }
    .project-page .map-container .house-point.house6 {
      top: 25%;
      left: 86%; }

.project-page #house6::before {
  right: 4%;
  left: auto; }

.project-page .close-button {
  width: 50px;
  height: 50px;
  background: var(--color-pink);
  position: absolute;
  top: -50px;
  right: -50px;
  cursor: pointer;
  display: none;
  border-radius: 50%;
  outline: none;
  border: 1px solid transparent; }
  .project-page .close-button::before, .project-page .close-button::after {
    content: "";
    position: absolute;
    width: 80%;
    height: 2px;
    background: var(--color-white);
    top: 50%;
    left: 50%;
    transform-origin: center; }
  .project-page .close-button::before {
    transform: translate(-50%, -50%) rotate(45deg); }
  .project-page .close-button::after {
    transform: translate(-50%, -50%) rotate(-45deg); }

.project-page .info-box {
  position: absolute;
  background-color: var(--color-white);
  border: 1px solid #ccc;
  padding: 20px;
  display: none;
  z-index: 10;
  width: 310px;
  border-radius: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); }
  .project-page .info-box .info-box-title {
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: space-between; }
    .project-page .info-box .info-box-title p {
      background: #c5cdcd;
      border-radius: 5px;
      padding: 5px; }
  .project-page .info-box::before {
    content: "";
    position: absolute;
    top: 4%;
    left: 4%;
    width: 14px;
    height: 14px;
    background-color: var(--color-green-base);
    border-radius: 50%; }
  .project-page .info-box h3 {
    margin: 0;
    font-size: 20px; }
  .project-page .info-box p {
    margin: 5px 0;
    font-size: 16px; }
  .project-page .info-box .price {
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #d9d9d9;
    padding: 13px 0; }
    .project-page .info-box .price img {
      width: 14px;
      height: 8px;
      min-width: 14px; }
    .project-page .info-box .price span {
      font-size: 16px;
      font-weight: bold;
      width: 140px; }
  .project-page .info-box .quarter {
    text-align: center;
    margin-top: 10px;
    font-size: 14px;
    color: #888; }

.project-page .map-container h2 {
  font-size: 40px;
  font-weight: 300;
  line-height: 48px;
  text-align: left;
  color: #ffffff;
  margin-bottom: 40px; }

.project-page .d-none {
  display: none; }

.project-page .construction .tabs.row {
  gap: 11px;
  align-items: center;
  margin-bottom: 20px; }
  .project-page .construction .tabs.row p {
    font-size: 24px;
    font-weight: 500;
    color: #fff; }

.projects-page h1 {
  font-size: 48px;
  font-weight: 300;
  line-height: 57.6px;
  text-align: left;
  padding: 0 17px;
  color: #ffffff; }

.projects-page .header {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between; }

.projects-page .breadcrumbs {
  display: flex;
  justify-content: center;
  align-items: center; }

.projects-page .projects-list {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  flex-direction: row;
  align-items: flex-start;
  flex-wrap: wrap; }

.projects-page .project-item {
  width: 100%;
  max-width: 770px;
  margin-bottom: 20px;
  padding: 15px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  align-items: flex-start; }
  .projects-page .project-item:nth-child(odd) {
    align-self: flex-start; }
  .projects-page .project-item:nth-child(even) {
    align-self: flex-end; }
  .projects-page .project-item > a {
    display: flex;
    flex-direction: column;
    width: 100%; }
    .projects-page .project-item > a img {
      width: 100%;
      height: auto;
      display: block;
      margin-bottom: 30px;
      border-radius: 5px;
      max-height: 300px;
      object-fit: cover; }
  .projects-page .project-item h2 {
    font-size: 24px;
    font-weight: 300;
    line-height: 40.8px;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 20px;
    text-transform: uppercase;
    color: #ffffff; }

.projects-page .project-info {
  display: flex;
  justify-content: space-between;
  margin-bottom: 45px;
  width: 100%; }

.projects-page .project-label {
  font-size: 18px;
  font-weight: 300;
  line-height: 25.2px;
  text-align: left;
  color: var(--color-gray-mid);
  width: 50%; }

.projects-page .project-value {
  font-size: 18px;
  font-weight: 300;
  line-height: 25.2px;
  text-align: left;
  color: #ffffff;
  width: 50%; }

.projects-page .sold-text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 226px;
  height: 46px;
  border-radius: 5px;
  background: #c5cdcd;
  font-size: 16px;
  font-weight: 300;
  line-height: 19.2px;
  color: var(--color-black);
  padding: 5px;
  text-align: center;
  gap: 6px; }

.projects-page .sold-value {
  font-size: 24px;
  font-weight: 500;
  line-height: 28.8px;
  text-align: right; }

@media (max-width: 1600px) {
  .project-page .cards {
    gap: 20px; }
    .project-page .cards .card {
      max-width: 400px; }
      .project-page .cards .card p {
        font-size: 16px; }
      .project-page .cards .card h2 {
        font-size: 18px; }
  .project-page .info-section h1 {
    font-size: 40px; }
  .project-page .info-section .info-section-subtitle {
    font-size: 18px;
    margin: 0 0 90px 40%; }
  .project-page .new-slider-title {
    font-size: 40px; }
  .project-page .new-swiper-container {
    max-width: 1250px;
    padding: 0 !important; }
  .project-page .transport-access #map {
    width: 650px !important; }
    .project-page .transport-access #map .ymaps-2-1-79-map {
      width: 650px !important; }
  .project-page .transport-access .text-block p {
    font-size: 18px;
    max-width: 550px; }
  .project-page .transport-access .text-block h2 {
    font-size: 40px; }
  .project-page .transport-access .text-block .points {
    gap: 10px; }
    .project-page .transport-access .text-block .points .point {
      width: 225px;
      height: 285px; }
      .project-page .transport-access .text-block .points .point h3 {
        font-size: 18px; }
      .project-page .transport-access .text-block .points .point span {
        font-size: 14px;
        width: 150px;
        height: 24px; }
  .project-page .slider-button-prev {
    left: -2px !important; }
  .project-page .slider-button-next {
    right: 2px !important; }
  .project-page .slider-container .project-slider1 {
    max-height: 550px; }
  .project-page .custom-item h2 {
    font-size: 40px; }
  .project-page .custom-item p {
    font-size: 18px; }
  .project-page .swiper-container {
    height: 620px; } }

@media (max-width: 1500px) {
  .projects-page .project-item {
    max-width: 600px; }
    .projects-page .project-item h2 {
      font-size: 18px; }
  .projects-page .project-label {
    font-size: 16px; }
  .projects-page .project-value {
    font-size: 16px; }
  .projects-page .sold-text {
    width: 190px;
    height: 33px;
    font-size: 14px; }
  .projects-page .sold-value {
    font-size: 18px; }
  .project-page .slider-container .slider-wrapper {
    margin: 0 30px; }
    .project-page .slider-container .slider-wrapper .custom-swiper-button-next img {
      right: -3%; }
    .project-page .slider-container .slider-wrapper .custom-swiper-button-prev img {
      left: -3%; }
  .project-page .logo-text span {
    font-size: 18px; }
  .project-page .logo-text img {
    max-width: 192px; }
  .project-page .slide-content {
    bottom: 200px; } }

@media (max-width: 1400px) {
  .project-page .custom-block .custom-content div h2 {
    font-size: 36px; }
  .project-page .custom-block .custom-content div p {
    font-size: 16px; }
  .project-page .slide-content {
    padding: 0 60px;
    bottom: 253px; }
  .project-page .slider-container .slider-wrapper .slider-slide img {
    height: 245px; }
  .project-page .logo-text {
    padding-left: 100px; }
    .project-page .logo-text img {
      max-width: 150px; }
    .project-page .logo-text span {
      font-size: 16px; }
  .project-page .percentage .percentage-circle {
    width: 150px;
    height: 150px;
    border: 6px solid var(--color-white);
    border-left: 6px solid transparent; }
  .project-page .percentage .percentage-text {
    font-size: 36px; }
    .project-page .percentage .percentage-text span {
      font-size: 12px; }
  .project-page .info-section h1 {
    font-size: 36px;
    max-width: 680px;
    margin: 60px auto 70px; }
  .project-page .info-section p,
  .project-page .info-section .info-section-subtitle {
    font-size: 14px;
    max-width: 509px; }
  .project-page .info-section .info-section-subtitle {
    margin: 0 0 90px 40%; }
  .project-page .cards {
    gap: 21px; }
    .project-page .cards .card {
      max-width: 360px; }
      .project-page .cards .card h2 {
        font-size: 16px; }
      .project-page .cards .card p {
        margin: 0 auto 30px; }
  .project-page .new-filter-button {
    font-size: 12px;
    width: 71px;
    height: 37px; }
  .project-page .new-filter-button.around {
    width: 37px;
    height: 37px; }
  .project-page .new-slide-info .rooms,
  .project-page .new-slide-info .square,
  .project-page .new-slide-info .price {
    font-size: 14px !important; }
  .project-page .new-slide-info .square,
  .project-page .new-slide-info .price {
    font-size: 16px !important; }
  .project-page .new-button {
    width: 192px;
    height: 36px;
    font-size: 14px;
    background-position-x: 93%;
    background-size: 20px; }
  .project-page .new-button-primary {
    width: 100%;
    height: 44px;
    font-size: 13px; }
  .project-page .new-slide-counter {
    margin-left: 19%; }
  .project-page .transport-access #map {
    height: 600px !important;
    width: 600px !important; }
    .project-page .transport-access #map .ymaps-2-1-79-map {
      height: 600px !important;
      width: 600px !important; }
  .project-page .transport-access .text-block {
    padding: 55px 0; }
    .project-page .transport-access .text-block h2 {
      font-size: 36px;
      line-height: 40.6px; }
    .project-page .transport-access .text-block p {
      font-size: 16px;
      line-height: 32.8px;
      max-width: 500px; }
    .project-page .transport-access .text-block .points {
      gap: 10px;
      margin-right: 12px; }
      .project-page .transport-access .text-block .points .point {
        width: 189px;
        height: 225px; }
        .project-page .transport-access .text-block .points .point h3 {
          font-size: 16px;
          line-height: 24.8px; }
        .project-page .transport-access .text-block .points .point span {
          width: 125px;
          height: 20px;
          font-size: 12px; }
  .project-page .slider-container .project-slider1 {
    margin: 50px auto;
    position: relative;
    overflow: hidden;
    max-height: 515px; }
  .project-page .custom-item h2 {
    font-size: 36px; }
  .project-page .custom-item p {
    font-size: 16px; }
  .project-page .custom-content {
    gap: 50px; }
  .project-page .slider-container .slider-title,
  .project-page .new-slider-title,
  .project-page .map-container h2 {
    font-size: 36px; } }

@media (max-width: 1200px) {
  .project-page .info-section {
    padding: 20px 0; }
  .project-page .cards {
    flex-direction: column;
    align-items: center; }
  .project-page .card {
    width: 100%;
    margin-bottom: 20px; }
  .project-page .swiper-button-prev {
    left: 50px; }
  .project-page .swiper-button-next {
    right: 50px; }
  .project-page .slide-content {
    padding: 0 50px;
    bottom: 230px;
    flex-direction: row;
    align-items: center;
    gap: 20px; }
  .project-page .percentage {
    align-self: flex-end; }
    .project-page .percentage .percentage-circle {
      width: 100px;
      height: 100px; }
    .project-page .percentage .percentage-text {
      top: 20%;
      left: 20%;
      font-size: 24px; }
      .project-page .percentage .percentage-text span {
        font-size: 12px; }
  .project-page .logo-text span {
    margin-left: 10px;
    font-size: 18px; } }

@media (max-width: 800px) {
  .project-page-slider1 {
    margin-top: 60px; }
  .project-page .slider-container {
    margin: 50px 0; }
    .project-page .slider-container .slider-wrapper .slider-slide {
      border-radius: 20px;
      margin-right: 36px !important; }
      .project-page .slider-container .slider-wrapper .slider-slide img {
        max-height: 200px;
        height: 100%; }
  .project-page .swiper-container .swiper-slide {
    height: 279px; }
    .project-page .swiper-container .swiper-slide .main_slide {
      height: 500px;
      width: 100%;
      object-fit: cover; }
    .project-page .swiper-container .swiper-slide .bottom-gradient .slide-content .logo-text img {
      height: auto; }
  .project-page .cards {
    gap: 17px;
    flex-direction: row;
    flex-wrap: wrap; }
    .project-page .cards .card {
      max-width: 320px;
      border-radius: 20px; }
      .project-page .cards .card p {
        font-size: 18px;
        font-weight: 300;
        line-height: 25.2px;
        text-align: left;
        padding: 0 20px 20px 20px;
        width: 93%;
        max-width: max-content; }
      .project-page .cards .card h2 {
        max-width: 299px; }
      .project-page .cards .card p {
        max-width: 293px;
        margin-right: 100%;
        padding-left: 35px; }
      .project-page .cards .card img {
        height: 203px; }
  .project-page .info-box {
    position: fixed;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%);
    z-index: 1000;
    display: none;
    width: 80%;
    max-width: 405px;
    background: var(--color-white);
    padding: 20px;
    height: 340px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); }
    .project-page .info-box .info-box-title {
      margin: 20px 0; }
    .project-page .info-box .quarter {
      margin-top: 20px; }
    .project-page .info-box::before {
      content: none; }
  .project-page .info-box.active {
    display: block; }
  .project-page .close-button {
    display: block; }
  .project-page .modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999; }
    .project-page .modal-overlay.active,
    .project-page .modal-overlay .info-box.active {
      display: block; }
  .project-page .map-container {
    overflow: scroll; }
    .project-page .map-container img {
      width: 1500px;
      height: 726px;
      min-width: 1500px; }
    .project-page .map-container .house-point.house1 {
      top: 48%;
      left: 48%; }
    .project-page .map-container .house-point.house2 {
      top: 47%;
      left: 104%; }
    .project-page .map-container .house-point.house3 {
      top: 46%;
      left: 165%; }
    .project-page .map-container .house-point.house4 {
      top: 47%;
      left: 219%; }
    .project-page .map-container .house-point.house5 {
      top: 56%;
      left: 273%; }
    .project-page .map-container .house-point.house6 {
      top: 32%;
      left: 320%; }
  .project-page .new-slider-container {
    padding: 0; }
    .project-page .new-slider-container .new-slider-filter-container .new-slide-counter {
      display: none; }
    .project-page .new-slider-container .swiper-pagination {
      bottom: 100px; }
      .project-page .new-slider-container .swiper-pagination .swiper-pagination-bullet-active {
        background: linear-gradient(0deg, #aebebd, #aebebd), linear-gradient(0deg, #aebebd, #aebebd); }
      .project-page .new-slider-container .swiper-pagination .swiper-pagination-bullet {
        background: #5f6f6e; }
    .project-page .new-slider-container .new-swiper-container .new-swiper-slide:hover {
      height: auto; }
  .project-page .house-point .label {
    top: -28px;
    right: 0;
    width: 57px;
    height: 24px; }
  .project-page .house-point .inner-circle {
    width: 24px;
    height: 24px;
    top: 57%;
    left: 34%; }
    .project-page .house-point .inner-circle::before {
      width: 10px;
      height: 10px; }
  .project-page .house-point::before {
    top: -22px;
    left: -29%;
    width: 33px;
    height: 45px; }
  .project-page .new-swiper-slide img {
    width: 100%;
    height: auto; }
  .project-page .new-swiper-slide .new-slide-info {
    width: 100%;
    text-align: center; }
  .project-page .info-section h1,
  .project-page .info-section p,
  .project-page .info-section .info-section-subtitle {
    width: 100%;
    max-width: 100%;
    padding: 0 10px; }
  .project-page .info-section .info-section-subtitle {
    margin: 0 0 90px 160px;
    max-width: 500px; }
  .project-page .swiper-container {
    height: 500px; }
  .project-page .swiper-button-prev {
    left: 20px; }
  .project-page .swiper-button-next {
    right: 20px; }
  .project-page .slide-content {
    padding: 0 20px;
    bottom: 50px;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    display: none; }
  .project-page .percentage {
    align-self: flex-end; }
    .project-page .percentage .percentage-circle {
      width: 75px;
      height: 75px; }
    .project-page .percentage .percentage-text {
      top: 20%;
      left: 20%;
      font-size: 16px;
      color: #ffffff; }
      .project-page .percentage .percentage-text span {
        font-size: 10px; }
  .project-page .logo-text span {
    margin-left: 5px;
    font-size: 16px; }
  .project-page .slider-wrapper {
    margin: unset; }
  .project-page .custom-block .custom-content {
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    column-gap: 200px; }
    .project-page .custom-block .custom-content div {
      margin: 20px 0;
      max-width: 280px; }
      .project-page .custom-block .custom-content div h2 {
        font-size: 24px; }
  .project-page .bottom-gradient {
    background: linear-gradient(360deg, var(--color-black-base) 0%, rgba(0, 0, 0, 0.6) 36.98%, rgba(0, 0, 0, 0) 99.91%);
    top: 0; }
  .project-page .swiper-container {
    height: 500px; }
  .project-page .swiper-button-prev,
  .project-page .swiper-button-next {
    top: 55%; }
  .project-page .d-none {
    display: flex;
    justify-content: center;
    margin-top: 50px; }
    .project-page .d-none .percentage-circle {
      width: 137px;
      height: 137px;
      border: 4px solid #9bc555;
      border-left: 4px solid transparent; }
    .project-page .d-none .percentage-text {
      font-size: 24px; }
      .project-page .d-none .percentage-text span {
        font-size: 14px; }
  .project-page .new-slider-container .new-swiper-container {
    margin-bottom: 0 !important;
    height: 600px; }
    .project-page .new-slider-container .new-swiper-container .swiper-wrapper .swiper-slide .new-slide-info .new-button,
    .project-page .new-slider-container .new-swiper-container .swiper-wrapper .swiper-slide .new-slide-info .new-button-primary {
      margin-left: auto;
      margin-right: auto;
      align-items: center;
      display: flex;
      justify-content: center; }
    .project-page .new-slider-container .new-swiper-container .swiper-wrapper .swiper-slide .new-slide-info .new-button-primary {
      margin-top: 73px;
      width: 100vw;
      margin-left: calc(-48vw + 42%);
      margin-right: auto;
      display: flex;
      justify-content: center;
      align-items: center; }
  .project-page .slider-button-prev,
  .project-page .slider-button-next {
    display: none; }
  .project-page .new-slider-title {
    padding-left: 20px; }
  .project-page .new-slider-filter-container {
    padding-left: 20px; }
  .project-page .new-slide-info .rooms,
  .project-page .new-slide-info .square,
  .project-page .new-slide-info .price {
    font-size: 18px !important;
    text-align: center; }
  .project-page .new-slide-info .square {
    display: flex !important;
    justify-content: center !important;
    flex-direction: column;
    gap: 0 !important;
    font-size: 24px !important; }
    .project-page .new-slide-info .square .price {
      font-size: 28px; }
  .project-page .info-section h1 {
    font-size: 24px;
    max-width: 460px;
    margin-right: 100%;
    line-height: 29.6px; }
  .project-page .info-section .info-section-subtitle {
    max-width: 471px;
    margin-left: 180px;
    line-height: 30px; }
  .project-page .transport-access {
    padding-left: 35px;
    flex-direction: column; }
    .project-page .transport-access #map {
      height: 275px !important;
      width: calc(100vw - 0px) !important;
      margin-left: -40px; }
      .project-page .transport-access #map .ymaps-2-1-79-map {
        height: 275px !important;
        width: calc(100vw - 0px) !important; }
    .project-page .transport-access .text-block p {
      max-width: 310px; }
    .project-page .transport-access .text-block h2 {
      font-size: 24px;
      font-weight: 300; }
    .project-page .transport-access .text-block .points .point {
      width: 178px;
      height: 166px; }
  .project-page .slider-container .project-slider1 {
    width: calc(100% - 40px);
    margin: 50px auto;
    max-height: 290px; }
    .project-page .slider-container .project-slider1 .swiper-wrapper .swiper-slide {
      max-height: 280px;
      border-radius: 20px; }
  .project-page .custom-block .custom-content img {
    max-height: 325px; }
  .project-page .project-slider1 .swiper-button-next,
  .project-page .project-slider1 .swiper-button-prev {
    display: none; }
  .project-page .map-container h2,
  .project-page .map-container .text-block h2,
  .project-page .map-container .new-slider-title,
  .project-page .map-container .custom-item h2 {
    font-size: 24px; }
  .project-page .custom-content {
    row-gap: 0; }
  .project-page .custom-item {
    max-width: 100%; }
  .project-page .custom-block.mobile {
    padding: 0; }
    .project-page .custom-block.mobile .custom-content img {
      max-height: 325px; }
  .project-page .slide-content {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0; }
    .project-page .slide-content .logo-text {
      flex-direction: column;
      padding-left: 0;
      margin: auto;
      gap: 15px; }
    .project-page .slide-content .percentage {
      display: none; }
  .projects-page .project-item h2 {
    font-size: 16px;
    padding-left: 55px; }
  .projects-page .project-item a {
    width: calc(100vw - 0px);
    margin-left: -55px; }
  .projects-page .project-label {
    font-size: 14px; }
  .projects-page .project-value {
    font-size: 14px; }
  .projects-page .project-info {
    width: 100%; }
  .projects-page .in-stock .project-label {
    display: none; } }

@media (max-width: 600px) {
  .project-page .info-section h1,
  .project-page .info-section p,
  .project-page .info-section .info-section-subtitle {
    width: 100%;
    max-width: 100%;
    padding: 0 10px; }
  .project-page .info-section .info-section-subtitle {
    margin: 0 0 90px 0;
    max-width: 500px; }
  .project-page .cards {
    justify-content: center; }
    .project-page .cards .card {
      max-width: 379px; }
      .project-page .cards .card p {
        font-size: 14px;
        max-width: max-content; }
      .project-page .cards .card h2 {
        max-width: max-content; }
  .project-page .swiper-button-next,
  .project-page .swiper-button-prev {
    display: none; }
  .project-page .slider-container .swiper-slide {
    height: 280px;
    object-fit: cover; }
  .project-page .custom-block .custom-content {
    flex-direction: column;
    gap: 40px; }
    .project-page .custom-block .custom-content div {
      max-width: -moz-fit-content;
      max-width: fit-content;
      margin: 0; }
  .project-page .custom-block.mobile .custom-content img {
    object-fit: cover; }
  .projects-page .project-item h2 {
    padding-left: 35px; }
  .projects-page .project-item a {
    width: calc(100vw - 0px);
    margin-left: -35px; } }

.cooperation {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .cooperation .ellipse_buttons {
    display: flex;
    gap: 20px;
    margin-bottom: 43px; }
    .cooperation .ellipse_buttons .btn {
      border: 1px solid #2f3d3c; }
    .cooperation .ellipse_buttons .btn.is-active {
      border-color: #ffffff; }
  .cooperation .project_tab {
    display: none; }
  .cooperation .project_tab.is-active {
    display: block; }
  .cooperation #tab_vacancies .accordion-title,
  .cooperation #tab_vacancies .accordion-content {
    background-color: #d0dbda;
    color: #000000; }
  .cooperation #tab_vacancies .accordion_list {
    display: flex;
    width: 100%;
    flex-direction: column; }
  .cooperation #tab_vacancies .accordion-title {
    transition: 0.24s; }
    .cooperation #tab_vacancies .accordion-title .content-wrapper {
      padding: 34px 0px 51px 0px;
      display: flex;
      border-bottom: 1px solid #000000;
      align-items: center;
      justify-content: space-between; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper p {
        font-size: 24px;
        font-weight: 500; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper path {
        stroke: #000000; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper .vacancies_experience {
        font-weight: 300; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper .vacancies_title {
        white-space: wrap; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper .row {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 10px;
        display: grid;
        width: 100%;
        align-items: center;
        gap: 30px;
        flex-wrap: nowrap;
        white-space: nowrap; }
        .cooperation #tab_vacancies .accordion-title .content-wrapper .row p {
          margin-right: 15px; }
        .cooperation #tab_vacancies .accordion-title .content-wrapper .row svg {
          width: 24px;
          stroke: #000000; }
  .cooperation #tab_vacancies .accordion-title.is-active,
  .cooperation #tab_vacancies .accordion-title.is-active ~ .accordion-content {
    background-color: #101b1a;
    color: var(--color-white); }
    .cooperation #tab_vacancies .accordion-title.is-active svg,
    .cooperation #tab_vacancies .accordion-title.is-active ~ .accordion-content svg {
      transform: rotate(180deg);
      stroke: #d0dbda;
      width: 24px; }
    .cooperation #tab_vacancies .accordion-title.is-active path,
    .cooperation #tab_vacancies .accordion-title.is-active ~ .accordion-content path {
      stroke: #d0dbda;
      min-width: 24px; }
  .cooperation #tab_vacancies .accordion-content {
    transition: 0.24s; }
    .cooperation #tab_vacancies .accordion-content .vacancies_content {
      max-width: 60%;
      padding: 20px;
      font-size: 24px;
      font-weight: 300; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content_property,
      .cooperation #tab_vacancies .accordion-content .vacancies_content b,
      .cooperation #tab_vacancies .accordion-content .vacancies_content strong {
        margin-top: 20px;
        margin-bottom: 30px;
        color: var(--color-gray-mid); }
      .cooperation #tab_vacancies .accordion-content .vacancies_content p,
      .cooperation #tab_vacancies .accordion-content .vacancies_content li,
      .cooperation #tab_vacancies .accordion-content .vacancies_content ul {
        padding-bottom: 5px; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content ul {
        padding-left: 20px; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content .btn_cube_pink {
        margin-top: 34px; }
  @media screen and (max-width: 900px) {
    .cooperation #tab_vacancies .accordion-title .content-wrapper {
      align-items: flex-start;
      padding: 24px 0px 27px 0px; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper .row {
        grid-template-columns: repeat(1, 1fr);
        align-items: flex-start;
        gap: 10px; }
        .cooperation #tab_vacancies .accordion-title .content-wrapper .row p {
          font-size: 16px; }
      .cooperation #tab_vacancies .accordion-title .content-wrapper svg {
        width: 17px; }
    .cooperation #tab_vacancies .accordion-content .vacancies_content {
      max-width: 100%;
      padding: 0px;
      font-size: 16px; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content p,
      .cooperation #tab_vacancies .accordion-content .vacancies_content li {
        font-size: 16px; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content_property {
        margin-top: 9px;
        margin-bottom: 15px; }
      .cooperation #tab_vacancies .accordion-content .vacancies_content .btn_cube_pink {
        margin-bottom: 20px;
        width: 100%; } }
  @media screen and (max-width: 900px) {
    .cooperation .ellipse_buttons {
      margin-bottom: 27px; }
      .cooperation .ellipse_buttons .btn {
        margin-top: 15px;
        font-size: 12px;
        padding: 6px 7px; } }
  .cooperation #tab_contractors {
    color: #ffffff; }
    .cooperation #tab_contractors .contractors_description {
      width: 100%;
      max-width: 725px; }
      .cooperation #tab_contractors .contractors_description p {
        font-size: 24px;
        line-height: 140%; }
    .cooperation #tab_contractors .row {
      grid-template-columns: repeat(3, 1fr);
      grid-gap: 23px;
      display: grid;
      width: 100%;
      margin-bottom: 40px;
      font-size: 18px; }
      .cooperation #tab_contractors .row div {
        display: flex;
        flex-direction: column;
        gap: 14px; }
      .cooperation #tab_contractors .row_title {
        font-size: 24px; }
    .cooperation #tab_contractors .btn_cube_pink {
      margin-bottom: 60px; }
    @media screen and (max-width: 900px) {
      .cooperation #tab_contractors .contractors_description p {
        font-size: 16px; }
      .cooperation #tab_contractors .page-header_h1 {
        margin: 24px 0px 20px 0px; }
      .cooperation #tab_contractors .row {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 20px;
        font-size: 14px; }
        .cooperation #tab_contractors .row_title {
          font-size: 16px; }
          .cooperation #tab_contractors .row_title div {
            gap: 12px; }
      .cooperation #tab_contractors .btn_cube_pink {
        padding: 15px 30px; } }

.card_page .wrapper_for_card_about {
  max-width: var(--max-width); }

.card_page .d-none,
.card_page .current_project_texts_show,
.card_page .project__tab,
.card_page .details_about_current_project .swiper-container {
  display: none; }

.card_page .content_headers_in_card_about {
  text-align: end; }

.card_page .project_tab {
  display: none; }
  .card_page .project_tab.is-active {
    display: block; }

.card_page .details_about_flat {
  display: flex;
  align-items: stretch;
  margin-top: 40px;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 85px; }
  .card_page .details_about_flat .flat_info {
    min-width: 40%;
    z-index: 20; }
    .card_page .details_about_flat .flat_info h3,
    .card_page .details_about_flat .flat_info p {
      margin: 0 0 30px 0;
      line-height: 28.8px;
      font-size: 24px;
      font-weight: 500;
      color: #ffffff; }
    .card_page .details_about_flat .flat_info h3 {
      margin-bottom: 50px; }
    .card_page .details_about_flat .flat_info .flat_info_prices {
      display: flex;
      align-items: center;
      margin-bottom: 10px; }
      .card_page .details_about_flat .flat_info .flat_info_prices .entire_cost {
        line-height: 57.6px;
        font-size: 48px;
        font-weight: 300; }
      .card_page .details_about_flat .flat_info .flat_info_prices .cost_per_month {
        margin-top: 20px;
        margin-left: 23px;
        line-height: 28.8px;
        font-size: 24px;
        font-weight: 500;
        color: #e3104d; }
    .card_page .details_about_flat .flat_info .flat_info_filters {
      display: flex;
      align-items: center;
      margin-bottom: 40px;
      gap: 25px; }
      .card_page .details_about_flat .flat_info .flat_info_filters div {
        font-size: 18px;
        color: #ffffff; }
      .card_page .details_about_flat .flat_info .flat_info_filters button {
        color: #fff;
        margin: 0 47px; }
      .card_page .details_about_flat .flat_info .flat_info_filters .select2 {
        width: auto !important; }
    .card_page .details_about_flat .flat_info .flat_info_summary {
      line-height: 40.8px;
      margin-bottom: 70px;
      padding-right: 60px;
      display: flex;
      width: 100%;
      flex-wrap: wrap; }
      .card_page .details_about_flat .flat_info .flat_info_summary_item {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        gap: 10px;
        border-bottom: 1px solid #2f3d3c;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: nowrap;
        margin-bottom: 15px;
        padding-bottom: 15px; }
      .card_page .details_about_flat .flat_info .flat_info_summary_name {
        flex: 0 0 calc(50% - 7px);
        width: calc(50% - 7px);
        max-width: calc(50% - 7px);
        text-transform: lowercase;
        font-size: 18px;
        color: #989797; }
      .card_page .details_about_flat .flat_info .flat_info_summary_value {
        flex: 0 0 calc(50% - 7px);
        width: calc(50% - 7px);
        max-width: calc(50% - 7px);
        text-align: right;
        font-size: 20px;
        color: #ffffff; }
        .card_page .details_about_flat .flat_info .flat_info_summary_value span {
          color: #ef1d59;
          text-decoration: underline; }
    .card_page .details_about_flat .flat_info .flat_info_book_button .btn {
      padding: 15px 30px; }
  .card_page .details_about_flat .flat_inside_pic {
    border-left: 1px solid grey;
    padding-left: 80px;
    min-width: 60%;
    display: flex;
    flex-direction: column;
    align-items: center; }
    .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin: 6px 9px 70px;
      width: 100%; }
      .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons {
        display: flex;
        gap: 21px; }
        .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons .ellipse_button {
          padding: 11px 21px;
          border: 1px solid #2f3d3c;
          border-radius: 30px;
          gap: 10px;
          text-transform: uppercase;
          cursor: pointer;
          color: #ffffff; }
          .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons .ellipse_button.is-active {
            border-color: #ffffff; }
    .card_page .details_about_flat .flat_inside_pic .flat_inside_icons {
      display: flex;
      flex-wrap: nowrap;
      gap: 10px;
      align-items: center; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_icons .ic {
        cursor: pointer;
        width: 34px;
        height: 30px; }
    .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      height: 100%; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section img {
        object-fit: contain;
        max-width: 640px;
        max-height: 715px; }
    .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 700px;
      height: 700px;
      position: relative;
      justify-content: center; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section img:first-child {
        max-width: 340px;
        max-height: 350px;
        object-fit: contain; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map {
        pointer-events: none;
        width: 100%;
        height: 700px;
        object-fit: contain;
        top: 0px;
        position: absolute; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="top"] {
        transform: rotate(-180deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="topL"] {
        transform: rotate(-225deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="topR"] {
        transform: rotate(-135deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="right"] {
        transform: rotate(-90deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="left"] {
        transform: rotate(90deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="bottom"] {
        transform: rotate(0deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="bottomR"] {
        transform: rotate(-45deg); }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map[sun_direction="bottomL"] {
        transform: rotate(45deg); }
    .card_page .details_about_flat .flat_inside_pic #tab_from_window {
      max-width: 100%;
      position: relative; }
    .card_page .details_about_flat .flat_inside_pic .swiper_view_window {
      max-width: 100%; }
      .card_page .details_about_flat .flat_inside_pic .swiper_view_window .swiper-slide {
        display: flex;
        align-items: center;
        justify-content: center; }
    .card_page .details_about_flat .flat_inside_pic .swiper-button-next,
    .card_page .details_about_flat .flat_inside_pic .swiper-button-prev {
      width: 51px;
      background: url(/local/templates/gurus/assets/css/../img/elements/elem_carousel_arrow.svg) no-repeat center;
      background-size: contain;
      position: absolute;
      right: 0px;
      top: 40%; }
      .card_page .details_about_flat .flat_inside_pic .swiper-button-next:after,
      .card_page .details_about_flat .flat_inside_pic .swiper-button-prev:after {
        display: none; }
    .card_page .details_about_flat .flat_inside_pic .swiper-button-next {
      transform: rotate(180deg); }

.card_page .details_about_current_project {
  align-items: flex-start;
  background-color: #f2f2f2;
  margin: 0 calc(-50vw + 50% + 1px) 90px;
  padding: 0 122px;
  gap: 25px; }
  .card_page .details_about_current_project .current_project_texts {
    width: 50%;
    z-index: 1; }
    .card_page .details_about_current_project .current_project_texts h3 {
      margin: 53px 0 40px;
      font-weight: 300;
      font-size: 48px;
      line-height: 57.6px; }
    .card_page .details_about_current_project .current_project_texts p {
      font-size: 18px;
      line-height: 25.2px;
      margin: 0 0 45px 10px; }
  .card_page .details_about_current_project .details_about_current_project_background {
    background-color: #f2f2f2;
    position: absolute;
    width: 100%;
    right: 0;
    height: 469px; }
  .card_page .details_about_current_project .current_project_images {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    width: 100%;
    z-index: 1; }
    .card_page .details_about_current_project .current_project_images .project_img_first {
      top: 59px;
      margin-right: 52px;
      position: relative; }
    .card_page .details_about_current_project .current_project_images .project_img_second {
      margin-top: -83px; }

.card_page .details_about_other_flat_layouts .flat_layouts_header {
  font-size: 48px;
  line-height: 57.6px;
  width: 50px;
  display: flex;
  gap: 50px;
  color: #ffffff; }

.card_page .details_about_other_flat_layouts .swiper-button-next {
  width: 51px;
  background: url(/local/templates/gurus/assets/css/../img/elements/elem_carousel_arrow.svg) no-repeat center;
  background-size: contain;
  transform: rotate(180deg);
  position: absolute;
  right: 27%;
  top: 40%; }
  .card_page .details_about_other_flat_layouts .swiper-button-next:after {
    display: none; }

.card_page .details_about_other_flat_layouts .swiper-button-next p {
  line-height: 28.8px;
  font-size: 24px;
  transform: rotate(180deg);
  color: #ffffff;
  font-weight: 500;
  position: relative;
  top: 50px;
  right: 50px; }

.card_page .details_about_other_flat_layouts .swiper-container {
  width: 100%;
  float: left; }

.card_page .details_about_other_flat_layouts .swiper-wrapper {
  display: flex; }
  .card_page .details_about_other_flat_layouts .swiper-wrapper .swiper-slide-next:only-child {
    transform: scale(0.9) translateX(-10%);
    opacity: 1; }

.card_page .details_about_other_flat_layouts .swiper {
  overflow: unset; }

.card_page .details_about_other_flat_layouts .swiper-slide:not(.swiper-slide-next):not(.swiper-slide-active) {
  opacity: 0; }

.card_page .details_about_other_flat_layouts .swiper-slide-active {
  transform: scale(0.9) translateX(-10%);
  z-index: 1;
  transition: transform 0.3s ease;
  opacity: 0.5; }
  .card_page .details_about_other_flat_layouts .swiper-slide-active::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }

.card_page .details_about_other_flat_layouts .price_apartment_in_the_slider {
  margin-left: 50px;
  line-height: 28.8px;
  font-size: 24px;
  font-weight: 500;
  color: #e3104d; }

.card_page .details_about_other_flat_layouts h3,
.card_page .details_about_other_flat_layouts .flat_info_slide p {
  margin-left: 50px;
  line-height: 28.8px;
  font-size: 24px;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 25px; }

.card_page .details_about_other_flat_layouts .swiper-slide-next {
  transform: scale(1.3) translateX(-22%); }
  .card_page .details_about_other_flat_layouts .swiper-slide-next h3 {
    margin-left: 63px;
    font-size: 14px;
    margin: 0; }
  .card_page .details_about_other_flat_layouts .swiper-slide-next img {
    max-height: 505px;
    margin-left: 32px; }
  .card_page .details_about_other_flat_layouts .swiper-slide-next p {
    margin-left: 63px;
    margin-bottom: 0;
    font-size: 19px; }

.card_page__about__tabs .ellipse_buttons {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 20px;
  margin-bottom: 34px; }
  .card_page__about__tabs .ellipse_buttons .ellipse_button {
    text-transform: uppercase;
    border: 1px solid #2f3d3c;
    border-radius: 30px;
    padding: 12px 27px;
    cursor: pointer;
    transition: 0.3s;
    color: #ffffff; }
    .card_page__about__tabs .ellipse_buttons .ellipse_button:hover {
      border-color: black; }
    .card_page__about__tabs .ellipse_buttons .ellipse_button.is-active {
      border: 1px solid white; }

.card_page__about .project__tab {
  display: none; }
  .card_page__about .project__tab.is-active {
    display: block; }

.card_page__about__text {
  background: #000000;
  padding-top: 50px;
  padding-bottom: 50px;
  margin-bottom: 100px; }
  .card_page__about__text > .content-wrapper {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 30px;
    max-height: 361px; }
  .card_page__about__text_left {
    flex: 0 0 calc(35% - 15px);
    width: calc(35% - 15px);
    max-width: calc(35% - 15px);
    overflow: auto;
    padding-right: 20px;
    order: 1;
    /* W3C standard сейчас только для Firefox */
    /* для Chrome/Edge/Safari */ }
    .card_page__about__text_left {
      scrollbar-width: thin;
      scrollbar-color: #5D6D6C #D0DBDA; }
    .card_page__about__text_left::-webkit-scrollbar {
      height: 4px;
      width: 4px; }
    .card_page__about__text_left::-webkit-scrollbar-track {
      background: #D0DBDA; }
    .card_page__about__text_left::-webkit-scrollbar-thumb {
      background-color: #5D6D6C; }
  .card_page__about__text_right {
    flex: 0 0 calc(65% - 15px);
    width: calc(65% - 15px);
    max-width: calc(65% - 15px);
    display: flex;
    flex-wrap: nowrap;
    gap: 50px;
    position: relative;
    justify-content: flex-end;
    order: 2; }
  .card_page__about__text h1,
  .card_page__about__text .h1 {
    font-size: 48px;
    margin-bottom: 37px;
    line-height: 1.2;
    color: #ffffff; }
  .card_page__about__text p,
  .card_page__about__text ul,
  .card_page__about__text ol,
  .card_page__about__text li {
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 42px;
    color: #ffffff; }
    .card_page__about__text p:last-of-type,
    .card_page__about__text ul:last-of-type,
    .card_page__about__text ol:last-of-type,
    .card_page__about__text li:last-of-type {
      margin-bottom: 10px; }
  .card_page__about__text_image {
    -webkit-mask-size: cover;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
    .card_page__about__text_image:nth-of-type(1) {
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_05.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_05.svg);
      width: 436px;
      height: 458px; }
    .card_page__about__text_image:nth-of-type(2) {
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_04.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/mask_04.svg);
      width: 476px;
      height: 547px;
      top: -100px;
      position: relative; }
  .card_page__about__text_showbtn {
    display: none; }

.card_page__about__progress {
  padding-top: 63px;
  padding-bottom: 129px; }
  .card_page__about__progress .tabs {
    gap: 11px;
    align-items: center; }
    .card_page__about__progress .tabs p {
      font-size: 24px;
      font-weight: 500;
      color: #fff; }
  .card_page__about__progress .swiper {
    width: 100%; }
    .card_page__about__progress .swiper-container {
      display: flex;
      flex-wrap: nowrap;
      gap: 50px;
      align-items: center;
      justify-content: space-between; }
    .card_page__about__progress .swiper-slide > div *:focus {
      outline: none; }
    .card_page__about__progress .swiper-slide p {
      font-size: 18px;
      line-height: 1.4;
      display: block;
      margin-bottom: 33px;
      color: #ffffff; }
    .card_page__about__progress .swiper-slide img {
      width: 100%;
      object-fit: cover;
      border-radius: 20px;
      max-height: 338px; }
    .card_page__about__progress .swiper-button-prev, .card_page__about__progress .swiper-button-next {
      flex: 0 0 30px;
      position: relative;
      top: initial;
      left: initial;
      right: initial;
      bottom: initial;
      margin: 0;
      background: url("/local/templates/gurus/assets/css/../img/icons/ic_arrow_long.svg") no-repeat center right;
      background-size: cover;
      height: 20px;
      transform: translateY(17px); }
      .card_page__about__progress .swiper-button-prev:after, .card_page__about__progress .swiper-button-next:after {
        display: none; }
    .card_page__about__progress .swiper-button-prev {
      transform: translateY(17px) rotate(-180deg); }

.card_page__about__mortgage {
  padding-top: 30px; }
  .card_page__about__mortgage .mortgage_calc_results_checkbox,
  .card_page__about__mortgage .mortgage_calc_results_footer {
    display: none; }

@media (max-width: 1800px) {
  .card_page .details_about_other_flat_layouts .swiper-button-next {
    right: 20%;
    top: 39%; } }

@media (max-width: 1500px) {
  .card_page {
    padding: 40px 0 0; }
    .card_page .content_headers_in_card_about {
      padding-right: 38px; }
    .card_page .details_about_flat .flat_info {
      min-width: 36%;
      border-right: 1px solid grey; }
      .card_page .details_about_flat .flat_info .flat_info_filters {
        margin-bottom: 30px; }
      .card_page .details_about_flat .flat_info h3 {
        margin-bottom: 5px;
        font-size: 19px; }
      .card_page .details_about_flat .flat_info p {
        font-size: 18px; }
      .card_page .details_about_flat .flat_info .flat_info_prices .entire_cost {
        font-size: 41px; }
      .card_page .details_about_flat .flat_info .flat_info_prices .cost_per_month {
        margin-top: 13px;
        font-size: 19px; }
    .card_page .details_about_flat .flat_inside_pic {
      padding-left: 5px;
      border: none; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section {
        max-width: 539px; }
        .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section .swiper-buttons {
          padding-right: 40px; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section {
        max-width: 100%; }
      .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel {
        margin: 0 0 75px; }
        .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons {
          gap: 27px; }
          .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons .ellipse_button {
            padding: 9px 15px; }
    .card_page .details_about_project {
      margin-top: 70px; }
      .card_page .details_about_project .ellipse_buttons {
        gap: 15px; }
        .card_page .details_about_project .ellipse_buttons .ellipse_button {
          padding: 9px 24px; }
    .card_page .details_about_current_project {
      margin-bottom: 26px;
      padding: 0 60px 0 50px; }
      .card_page .details_about_current_project .current_project_texts {
        width: 49%; }
        .card_page .details_about_current_project .current_project_texts h3 {
          margin-top: 42px;
          font-size: 40px; }
        .card_page .details_about_current_project .current_project_texts p {
          line-height: 22.2px;
          font-size: 16px;
          margin: 0 0 37px 3px; }
      .card_page .details_about_current_project .current_project_images .project_img_first {
        top: 23px;
        margin-right: -2px;
        position: relative;
        transform: scale(0.9); }
      .card_page .details_about_current_project .current_project_images .project_img_second {
        margin-top: -101px;
        transform: scale(0.9); }
    .card_page .details_about_other_flat_layouts .flat_info_slide h3 {
      margin: 32px 0 16px 36px;
      line-height: 16.8px;
      font-size: 14px; }
    .card_page .details_about_other_flat_layouts .flat_info_slide p {
      margin: 0 0 20px 35px;
      line-height: 21.6px;
      font-size: 18px; }
    .card_page .details_about_other_flat_layouts .price_apartment_in_the_slider {
      margin-left: 35px;
      line-height: 21.6px;
      font-size: 18px; }
    .card_page .details_about_other_flat_layouts .flat_layouts_header {
      font-size: 40px;
      line-height: 48px; }
    .card_page .details_about_other_flat_layouts .swiper-slide-next {
      transform: scale(1.3) translateX(-13%); }
      .card_page .details_about_other_flat_layouts .swiper-slide-next h3 {
        margin-left: 62px;
        font-size: 11px;
        margin-top: 20px; }
      .card_page .details_about_other_flat_layouts .swiper-slide-next p {
        margin-left: 62px;
        font-size: 14px; }
    .card_page .details_about_other_flat_layouts .swiper-slide-active {
      transform: scale(0.8) translateX(-17%); }
    .card_page .details_about_other_flat_layouts .swiper-button-next {
      right: 8%;
      top: 39%; }
      .card_page .details_about_other_flat_layouts .swiper-button-next p {
        line-height: 21.6px;
        font-size: 18px;
        right: 34px;
        top: 41px; }
    .card_page__about__text > .content-wrapper {
      max-height: 290px; }
    .card_page__about__text_left {
      flex: 0 0 calc(40% - 15px);
      width: calc(40% - 15px);
      max-width: calc(40% - 15px); }
    .card_page__about__text_right {
      flex: 0 0 calc(60% - 15px);
      width: calc(60% - 15px);
      max-width: calc(60% - 15px); }
    .card_page__about__text h1,
    .card_page__about__text .h1 {
      font-size: 40px; }
    .card_page__about__text p,
    .card_page__about__text ul,
    .card_page__about__text ol,
    .card_page__about__text li {
      font-size: 16px;
      margin-bottom: 20px; }
    .card_page__about__progress {
      padding-top: 20px;
      padding-bottom: 70px; }
      .card_page__about__progress .swiper-container {
        gap: 30px; } }

@media (max-width: 1366px) {
  .card_page {
    padding: 5px 0 0; }
    .card_page .content_headers_in_card_about {
      padding: 0;
      font-size: 14px; }
    .card_page .details_about_flat {
      margin-top: 30px; }
      .card_page .details_about_flat .flat_info {
        min-width: 38%; }
        .card_page .details_about_flat .flat_info h3 {
          margin-bottom: 0;
          font-size: 17px; }
        .card_page .details_about_flat .flat_info p {
          margin: 0;
          font-size: 16px;
          line-height: 41.8px; }
        .card_page .details_about_flat .flat_info .flat_info_prices {
          margin-bottom: 23px; }
          .card_page .details_about_flat .flat_info .flat_info_prices .entire_cost {
            font-size: 36px; }
          .card_page .details_about_flat .flat_info .flat_info_prices .cost_per_month {
            margin-top: 20px;
            font-size: 16px;
            margin-left: 28px; }
        .card_page .details_about_flat .flat_info .flat_info_filters div {
          font-size: 14px; }
        .card_page .details_about_flat .flat_info .flat_info_filters button {
          margin: 0 32px; }
        .card_page .details_about_flat .flat_info .flat_info_book_button .btn {
          padding: 15px 30px;
          font-size: 16px; }
      .card_page .details_about_flat .flat_inside_pic {
        padding-left: 54px; }
        .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons {
          gap: 5px; }
        .card_page .details_about_flat .flat_inside_pic .flat_inside_icons .icon_share_button,
        .card_page .details_about_flat .flat_inside_pic .flat_inside_icons .icon_add_to_fav {
          padding: 0; }
        .card_page .details_about_flat .flat_inside_pic .flat_inside_icons .icon_add_to_fav {
          padding-right: 14px; }
        .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section {
          max-width: 478px; }
          .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section .swiper-buttons {
            width: calc(100% + 106px);
            top: 37%;
            padding-right: 0; }
    .card_page .details_about_project {
      margin-top: 78px; }
    .card_page .details_about_current_project {
      margin-bottom: 0; }
      .card_page .details_about_current_project .current_project_texts h3 {
        font-size: 34px;
        margin: 47px 0 31px; }
      .card_page .details_about_current_project .current_project_texts p {
        line-height: 19.6px;
        margin-bottom: 46px;
        font-size: 14px; }
      .card_page .details_about_current_project .current_project_images .project_img_first {
        top: 3px;
        margin-right: -125px;
        transform: scale(0.8);
        position: relative; }
      .card_page .details_about_current_project .current_project_images .project_img_second {
        margin-top: -136px;
        transform: scale(0.8);
        position: relative;
        left: 62px;
        top: 26px; }
    .card_page .details_about_other_flat_layouts .swiper-slide-active {
      transform: scale(0.7) translateX(-26%); }
    .card_page .details_about_other_flat_layouts .swiper-slide-next {
      transform: scale(1.2) translateX(-15%); }
    .card_page__about__text > .content-wrapper {
      max-height: 270px; }
    .card_page__about__text_left {
      flex: 0 0 calc(38% - 15px);
      width: calc(38% - 15px);
      max-width: calc(38% - 15px); }
    .card_page__about__text_right {
      flex: 0 0 calc(62% - 15px);
      width: calc(62% - 15px);
      max-width: calc(62% - 15px); }
    .card_page__about__text h1,
    .card_page__about__text .h1 {
      font-size: 36px; }
    .card_page__about__text p,
    .card_page__about__text ul,
    .card_page__about__text ol,
    .card_page__about__text li {
      font-size: 14px; } }

@media (max-width: 1100px) {
  .card_page .details_about_flat {
    flex-wrap: wrap-reverse;
    justify-content: center; }
    .card_page .details_about_flat .flat_inside_pic {
      padding-left: 0; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section img {
        max-width: 500px;
        max-height: 500px; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section .swiper-buttons {
        width: 100%; }
        .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section .swiper-buttons div {
          background-size: 20px; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section {
        max-width: 500px;
        max-height: 500px; }
        .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section img:first-child {
          object-fit: contain;
          max-width: 250px;
          max-height: 250px; }
    .card_page .details_about_flat .flat_info.d-none {
      width: 100vw;
      margin: 20px calc(-50vw + 50% + 1px);
      background: #f2f2f2; }
    .card_page .details_about_flat .flat_info {
      border: none;
      margin-top: 45px;
      width: 100%; }
      .card_page .details_about_flat .flat_info .flat_info_prices {
        flex-direction: column;
        align-items: flex-start; }
        .card_page .details_about_flat .flat_info .flat_info_prices .entire_cost,
        .card_page .details_about_flat .flat_info .flat_info_prices .cost_per_month {
          font-size: 24px;
          margin: 0; }
      .card_page .details_about_flat .flat_info .flat_info_summary {
        width: unset;
        padding: 0;
        margin-bottom: 30px; }
      .card_page .details_about_flat .flat_info .flat_info_filters {
        display: none; }
      .card_page .details_about_flat .flat_info .flat_info_filters.d-none {
        display: flex;
        padding: 20px 15px;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        margin: 0; }
        .card_page .details_about_flat .flat_info .flat_info_filters.d-none div {
          display: flex;
          flex-direction: column-reverse;
          color: #000000; }
        .card_page .details_about_flat .flat_info .flat_info_filters.d-none span {
          font-size: 16px;
          font-weight: 500;
          color: #000000; }
  .card_page .content_headers_in_card_about,
  .card_page .flat_info_header,
  .card_page .details_about_project,
  .card_page .flat_inside_icons,
  .card_page .project_img_second {
    display: none; }
  .card_page .details_about_current_project {
    margin-bottom: 150px; }
    .card_page .details_about_current_project .current_project_texts {
      width: 80%; }
    .card_page .details_about_current_project .current_project_images .project_img_first {
      top: 3px;
      margin-right: 0;
      transform: unset;
      position: relative; }
  .card_page .flat_inside_icons.d-none {
    display: flex;
    position: relative;
    bottom: 670px;
    gap: 30px;
    width: 100%;
    flex-direction: column-reverse;
    align-items: flex-end; }
    .card_page .flat_inside_icons.d-none .icon_share_button,
    .card_page .flat_inside_icons.d-none .icon_add_to_fav {
      padding: 0;
      width: 25px; }
  .card_page .flat_info_header.d-none {
    display: flex;
    width: 100%;
    transform: translateX(-60px);
    margin: 0; }
    .card_page .flat_info_header.d-none p {
      font-size: 16px;
      text-align: center;
      width: 100%;
      transform: translateX(60px);
      margin-bottom: 20px;
      font-weight: 500;
      color: #ffffff; }
  .card_page .project_img_first {
    margin: 3px 0 0;
    position: relative;
    top: 100px; }
  .card_page .mobile_slider_layouts {
    display: flex;
    margin-bottom: 50px; }
    .card_page .mobile_slider_layouts .swiper-container {
      width: 100%; }
      .card_page .mobile_slider_layouts .swiper-container .swiper-slide {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 15px; }
  .card_page .d-none {
    display: flex; }
  .card_page .details_mobile_mortgage_section {
    flex-direction: column;
    margin: 40px 0; }
    .card_page .details_mobile_mortgage_section .it_mortgage {
      display: flex;
      align-items: center;
      border-bottom: 1px solid #d0dbda;
      margin-top: 50px; }
      .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description {
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        justify-content: space-between;
        max-height: 100px;
        gap: 13px;
        column-gap: 20px;
        margin-left: 20px; }
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(1),
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(3) {
          font-weight: 500;
          font-size: 14px; }
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(2),
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(4),
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(5) {
          font-weight: 300;
          font-size: 14px; }
        .card_page .details_mobile_mortgage_section .it_mortgage .it_mortgage_description :nth-child(5) {
          color: #989797;
          font-size: 12px; }
    .card_page .details_mobile_mortgage_section .it_mortgage ~ .it_mortgage {
      margin-top: 0; }
    .card_page .details_mobile_mortgage_section input[type="range"] {
      font-size: 1.5rem;
      width: 100%;
      background: #182827;
      --thumb-height: 1.125em;
      --track-height: 0.125em;
      --track-color: rgba(0, 0, 0, 0.2);
      --brightness-hover: 180%;
      --brightness-down: 80%;
      --clip-edges: 0.125em; }
    .card_page .details_mobile_mortgage_section input[type="range"]::-webkit-slider-runnable-track,
    .card_page .details_mobile_mortgage_section input[type="range"]::-webkit-slider-thumb {
      -webkit-appearance: none;
      -webkit-transition: all ease 100ms;
      transition: all ease 100ms;
      height: var(--thumb-height); }
    .card_page .details_mobile_mortgage_section input[type="range"]::-webkit-slider-thumb {
      --thumb-radius: calc((var(--thumb-height) * 0.5) - 1px);
      --clip-top: calc(
          (var(--thumb-height) - var(--track-height)) * 0.5 - 0.5px
        );
      --clip-bottom: calc(var(--thumb-height) - var(--clip-top));
      --clip-further: calc(100% + 1px);
      --box-fill: calc(-100vmax - var(--thumb-width, var(--thumb-height))) 0 0
          100vmax currentColor;
      width: var(--thumb-width, var(--thumb-height));
      background: linear-gradient(currentColor 0 0) scroll no-repeat left center/50% calc(var(--track-height) + 1px);
      background-color: currentColor;
      box-shadow: var(--box-fill);
      border-radius: var(--thumb-width, var(--thumb-height));
      filter: brightness(100%);
      -webkit-clip-path: polygon(100% -1px, var(--clip-edges) -1px, 0 var(--clip-top), -100vmax var(--clip-top), -100vmax var(--clip-bottom), 0 var(--clip-bottom), var(--clip-edges) 100%, var(--clip-further) var(--clip-further));
              clip-path: polygon(100% -1px, var(--clip-edges) -1px, 0 var(--clip-top), -100vmax var(--clip-top), -100vmax var(--clip-bottom), 0 var(--clip-bottom), var(--clip-edges) 100%, var(--clip-further) var(--clip-further)); }
    .card_page .details_mobile_mortgage_section input[type="range"]:hover::-webkit-slider-thumb {
      filter: brightness(var(--brightness-hover));
      cursor: grab; }
    .card_page .details_mobile_mortgage_section input[type="range"]:active::-webkit-slider-thumb {
      filter: brightness(var(--brightness-down));
      cursor: grabbing; }
    .card_page .details_mobile_mortgage_section input[type="range"]::-webkit-slider-runnable-track {
      background: linear-gradient(var(--track-color) 0 0) scroll no-repeat center/100% calc(var(--track-height) + 1px); }
    .card_page .details_mobile_mortgage_section input[type="range"]:disabled::-webkit-slider-thumb {
      cursor: not-allowed; }
  .card_page .details_mobile_mortgage_section.d-none,
  .card_page .details_about_other_flat_layouts,
  .card_page .details_about_project {
    display: none; }
  .card_page .details_about_other_flat_layouts_mobile {
    background: #182827;
    padding: 40px;
    flex-direction: column; }
    .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container {
      background: #ffffff;
      border-radius: 20px; }
      .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container .swiper-container .swiper .swiper-wrapper {
        margin-bottom: 50px; }
        .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container .swiper-container .swiper .swiper-wrapper .swiper-slide {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center; }
          .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container .swiper-container .swiper .swiper-wrapper .swiper-slide p {
            text-align: center;
            margin-bottom: 15px;
            font-size: 16px;
            color: #e3104d; }
          .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container .swiper-container .swiper .swiper-wrapper .swiper-slide .flat_info_slide h3 {
            text-align: center;
            margin: 30px 0 5px;
            font-size: 14px;
            font-weight: 500;
            color: black; }
          .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container .swiper-container .swiper .swiper-wrapper .swiper-slide .flat_info_slide p {
            margin-bottom: 5px;
            color: #182827; }
    .card_page .details_about_other_flat_layouts_mobile h3 {
      text-align: center;
      margin-bottom: 40px;
      font-size: 24px;
      font-weight: 300;
      color: #ffffff; }
  .card_page .swiper-pagination-bullet {
    background: #aebebd; }
  .card_page .swiper-pagination-bullet-active {
    background: #5f6f6e; }
  .card_page__about__text > .content-wrapper {
    max-height: 32vw; }
  .card_page__about__text_left {
    flex: 0 0 calc(50% - 15px);
    width: calc(50% - 15px);
    max-width: calc(50% - 15px); }
  .card_page__about__text_right {
    flex: 0 0 calc(50% - 15px);
    width: calc(50% - 15px);
    max-width: calc(50% - 15px); }
  .card_page__about__text h1,
  .card_page__about__text .h1 {
    font-size: 36px; }
  .card_page__about__text p,
  .card_page__about__text ul,
  .card_page__about__text ol,
  .card_page__about__text li {
    font-size: 16px; }
  .card_page__about__text_image:nth-of-type(1) {
    height: 40vw;
    width: 40vw; }
  .card_page__about__text_image:nth-of-type(2) {
    display: none; } }

@media (max-width: 900px) {
  .card_page .details_about_flat .flat_info .flat_info_book_button {
    display: flex;
    justify-content: center; }
  .card_page__about__tabs {
    display: none; }
  .card_page__about .project__tab {
    display: block !important; }
  .card_page__about__text {
    margin-bottom: 30px; }
    .card_page__about__text > .content-wrapper {
      max-height: 38vw; }
    .card_page__about__text h1,
    .card_page__about__text .h1 {
      font-size: 36px;
      margin-bottom: 20px; }
    .card_page__about__text p,
    .card_page__about__text ul,
    .card_page__about__text ol,
    .card_page__about__text li {
      font-size: 14px;
      margin-bottom: 8px; }
  .card_page__about__progress > .content-wrapper {
    padding-top: 10px; }
  .card_page__about__progress .swiper-container {
    padding: 0 0 25px 25px; }
  .card_page__about__progress .swiper-button-next, .card_page__about__progress .swiper-button-prev {
    display: none; }
  .card_page__about__progress .swiper-slide p {
    font-size: 14px;
    margin-bottom: 20px; }
  .card_page__about__progress .swiper-slide img {
    border-radius: 0; } }

@media (max-width: 640px) {
  .card_page .details_about_flat .flat_info .flat_info_book_button .btn {
    width: 100%; }
  .card_page__about__text > .content-wrapper {
    gap: 20px;
    max-height: -moz-fit-content;
    max-height: fit-content; }
  .card_page__about__text_left {
    flex: 0 0 calc(50% - 10px);
    width: calc(50% - 10px);
    max-width: calc(50% - 10px);
    padding: 0; }
  .card_page__about__text_right {
    flex: 0 0 calc(50% - 10px);
    width: calc(50% - 10px);
    max-width: calc(50% - 10px); }
  .card_page__about__text h1,
  .card_page__about__text .h1 {
    font-size: 32px; }
  .card_page__about__text p,
  .card_page__about__text ul,
  .card_page__about__text ol,
  .card_page__about__text li {
    font-size: 14px; } }

@media (max-width: 585px) {
  .card_page .flat_info_header.d-none {
    transform: translateX(0); }
    .card_page .flat_info_header.d-none h3 {
      color: #ffffff; }
  .card_page .flat_inside_icons.d-none {
    bottom: 578px; }
  .card_page .mobile_slider_layouts {
    display: none; }
  .card_page .flat_info_header.d.none p {
    width: unset; }
  .card_page .details_about_flat {
    margin-bottom: 0; }
    .card_page .details_about_flat .flat_info {
      margin-top: 15px; }
      .card_page .details_about_flat .flat_info .flat_info_summary {
        margin-bottom: 0; }
        .card_page .details_about_flat .flat_info .flat_info_summary_name {
          flex: 0 0 calc(40% - 7px);
          width: calc(40% - 7px);
          max-width: calc(40% - 7px); }
        .card_page .details_about_flat .flat_info .flat_info_summary_value {
          flex: 0 0 calc(60% - 7px);
          width: calc(60% - 7px);
          max-width: calc(60% - 7px);
          font-size: 18px; }
    .card_page .details_about_flat .flat_inside_pic .flat_inside_icons {
      display: none; }
    .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel {
      width: unset;
      margin-right: 0; }
      .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons {
        display: flex;
        flex-wrap: wrap; }
      .card_page .details_about_flat .flat_inside_pic .inside_pic_top_panel .ellipse_buttons .ellipse_button {
        font-size: 11px;
        white-space: nowrap; }
    .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section {
      max-width: 305px; }
      .card_page .details_about_flat .flat_inside_pic .flat_inside_img_section img {
        object-fit: contain;
        max-width: 305px; }
    .card_page .details_about_flat .flat_inside_pic .swiper_view_window .swiper-wrapper {
      max-width: 280px; }
    .card_page .details_about_flat .flat_inside_pic .swiper-button-next,
    .card_page .details_about_flat .flat_inside_pic .swiper-button-prev {
      top: 50%;
      width: 28px; }
    .card_page .details_about_flat .flat_inside_pic .swiper-button-next {
      right: -26px; }
    .card_page .details_about_flat .flat_inside_pic .swiper-button-prev {
      left: -26px; }
    .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section {
      max-width: 350px;
      max-height: 350px; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section img:first-child {
        max-width: 150px;
        max-height: 150px;
        object-fit: contain; }
      .card_page .details_about_flat .flat_inside_pic #tab_solar_map .flat_inside_img_section .solar_map {
        top: auto; }
  .card_page .details_about_current_project {
    flex-direction: column-reverse;
    background: unset;
    width: 100%;
    padding: 0;
    margin: auto; }
    .card_page .details_about_current_project .current_project_images {
      justify-content: center; }
      .card_page .details_about_current_project .current_project_images .project_img_first {
        width: 100%; }
    .card_page .details_about_current_project .current_project_texts_show {
      position: relative;
      bottom: 128px;
      z-index: 2;
      display: flex;
      flex-direction: column;
      margin: 0 23px;
      color: #ffffff;
      font-size: 14px;
      font-weight: 500;
      padding-bottom: 10px;
      border-bottom: 1px solid #ffffff;
      width: 80%; }
      .card_page .details_about_current_project .current_project_texts_show h1 {
        font-size: 17px; }
      .card_page .details_about_current_project .current_project_texts_show div {
        display: flex;
        justify-content: space-between; }
    .card_page .details_about_current_project .current_project_texts {
      color: #ffffff;
      transition: all 0.5s ease;
      position: relative;
      bottom: 160px;
      width: 100%;
      background: linear-gradient(360deg, #182827 93.79%, rgba(24, 40, 39, 0) 100%);
      z-index: 2; }
      .card_page .details_about_current_project .current_project_texts h3 {
        padding-left: 23px; }
      .card_page .details_about_current_project .current_project_texts p {
        padding: 0 125px 0 23px; }
      .card_page .details_about_current_project .current_project_texts .swiper-container {
        margin-bottom: 45px; }
  .card_page .details_about_other_flat_layouts_mobile {
    margin: 0 calc(-50vw + 50% + 1px);
    padding: 15px; }
    .card_page .details_about_other_flat_layouts_mobile .flat_layouts_container img {
      max-width: 300px; }
  .card_page__about__text {
    margin-bottom: 0;
    padding-bottom: 0;
    background-color: transparent; }
    .card_page__about__text > .content-wrapper {
      flex-wrap: wrap;
      gap: 0; }
    .card_page__about__text_left, .card_page__about__text_right {
      flex: 0 0 100%;
      width: 100%;
      max-width: 100%;
      padding: 0; }
    .card_page__about__text_left {
      order: 2;
      background-color: var(--color-black);
      position: relative;
      z-index: 100;
      margin-top: calc(0px - var(--card-about-text-margin));
      padding: 25px 25px; }
    .card_page__about__text_right {
      order: 1;
      position: relative;
      z-index: 50; }
      .card_page__about__text_right:after {
        position: absolute;
        content: "";
        width: 100%;
        height: 60px;
        background: linear-gradient(to bottom, rgba(229, 229, 229, 0) 0%, #182827 100%);
        display: block;
        bottom: var(--card-about-text-margin);
        left: 0;
        right: 0; }
    .card_page__about__text h1,
    .card_page__about__text .h1 {
      font-size: 24px;
      color: white; }
    .card_page__about__text p,
    .card_page__about__text ul,
    .card_page__about__text ol,
    .card_page__about__text li {
      font-size: 14px;
      color: white;
      margin-bottom: 25px; }
    .card_page__about__text_image:nth-of-type(1) {
      width: 100vw;
      height: 100vw; }
    .card_page__about__text_showbtn {
      display: block;
      width: 100%;
      color: white;
      margin-bottom: 20px; }
      .card_page__about__text_showbtn p {
        font-size: 14px;
        line-height: 1;
        display: table; }
      .card_page__about__text_showbtn > div {
        width: 80%;
        position: relative;
        border-bottom: 1px white solid;
        padding-bottom: 5px; }
        .card_page__about__text_showbtn > div > span {
          font-size: 11px;
          text-transform: uppercase; }
        .card_page__about__text_showbtn > div:after {
          position: absolute;
          content: "";
          width: 9px;
          height: 9px;
          background: url("/local/templates/gurus/assets/css/../img/icons/ic_select2_filter_arrow_pink.svg") no-repeat center;
          background-size: contain;
          top: 50%;
          right: 0;
          transform: translateY(-50%) rotate(0deg); }
      .card_page__about__text_showbtn.is-active > div:after {
        transform: translateY(-50%) rotate(-180deg); }
    .card_page__about__text_content {
      display: none; }
      .card_page__about__text_content.is-active {
        display: block; }
  .card_page__about__progress {
    padding-top: 0; }
    .card_page__about__progress > .content-wrapper {
      background-color: var(--color-black);
      color: white; } }

.page_stock {
  width: 100%;
  position: relative;
  z-index: 1;
  margin-top: 22px; }
  .page_stock_mask {
    min-height: 675px;
    background-image: url(/local/templates/gurus/assets/css/../img/stock_fon.jpg);
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask.svg);
    mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .page_stock p {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 300;
    font-size: 24px;
    line-height: 170%;
    color: #FFFFFF; }
  .page_stock_title {
    position: absolute;
    z-index: 2;
    top: 0px;
    left: 6.3vw;
    max-width: 21%; }
    .page_stock_title .page-header_breadcrumbs {
      display: none; }
    .page_stock_title br {
      display: none; }
  .page_stock .h1,
  .page_stock h1 {
    margin-top: 8px; }
  @media screen and (max-width: 1580px) {
    .page_stock_mask {
      min-height: 581px;
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask2.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask2.svg);
      background-position: left; }
    .page_stock p {
      font-size: 18px; }
    .page_stock_title {
      left: 5.3vw; } }
  @media screen and (max-width: 1200px) {
    .page_stock_mask {
      min-height: 523px;
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask3.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask3.svg);
      background-position: left; } }
  @media screen and (max-width: 900px) {
    .page_stock_mask {
      min-height: 330px;
      -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask4.svg);
      mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask4.svg);
      background-position: left;
      height: 74vw; }
    .page_stock_title {
      max-width: 45%; } }
  @media screen and (max-width: 640px) {
    .page_stock {
      margin-top: 18px; }
      .page_stock .page-header {
        padding: 0px; }
        .page_stock .page-header .h1,
        .page_stock .page-header h1 {
          margin-top: 0px;
          margin-bottom: 13px; }
      .page_stock_title {
        max-width: 53%; }
        .page_stock_title br {
          display: block; }
      .page_stock .page_stock p {
        font-size: 16px; }
      .page_stock_mask {
        background-position: 28% 45%;
        min-height: 360px;
        -webkit-mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask5.svg);
        mask-image: url(/local/templates/gurus/assets/css/../img/masks/stock_fon_mask5.svg); } }
  @media screen and (max-width: 420px) {
    .page_stock .page_stock_mask {
      min-height: 348px;
      -webkit-mask-size: auto;
              mask-size: auto; }
    .page_stock_title {
      max-width: 230px; } }

.stock_list {
  position: relative;
  z-index: 2;
  border-radius: 120px 120px 0px 0px;
  margin-top: -158px;
  background: linear-gradient(to bottom, #0D0D0D 57%, #101B1A 50%);
  margin-bottom: 80px; }
  .stock_list_group {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 24px;
    padding-top: 93px; }
  .stock_list_card {
    min-height: 350px;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    width: 100%;
    background-size: cover;
    background-position: center;
    justify-content: space-between;
    padding: 23px; }
    .stock_list_card_title {
      color: #fff;
      font-family: 'Exo 2';
      font-style: normal;
      font-weight: 300;
      font-size: 24px;
      line-height: 170%; }
    .stock_list_card:hover {
      cursor: pointer; }
  .stock_list_cardmobile {
    display: none; }
  .stock_list_discription {
    width: 100%;
    text-align: end;
    align-items: end;
    display: flex;
    justify-content: flex-end; }
    .stock_list_discription div {
      padding: 10px 16px;
      background: #2F3D3C;
      color: #FFFFFF;
      width: -moz-fit-content;
      width: fit-content;
      height: -moz-fit-content;
      height: fit-content;
      border-radius: 30px; }
  @media screen and (max-width: 1580px) {
    .stock_list_group {
      grid-gap: 51px;
      padding-top: 78px; }
    .stock_list_card {
      min-height: 265px;
      padding: 23px 9px 23px 23px; }
      .stock_list_card_title {
        font-size: 18px; }
    .stock_list_discription div {
      padding: 3px 12px; } }
  @media screen and (max-width: 900px) {
    .stock_list {
      margin-top: 0px; }
      .stock_list_card .stock_list_card_title,
      .stock_list_card .stock_list_discription {
        display: none; }
      .stock_list_group {
        grid-gap: 79px;
        padding-top: 28px;
        row-gap: 46px; }
      .stock_list_card {
        min-height: 163px; }
      .stock_list_cardmobile {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-top: 6px; }
        .stock_list_cardmobile .stock_list_discription {
          justify-content: flex-start;
          color: #989797;
          text-align: left;
          font-size: 14px; }
        .stock_list_cardmobile .stock_list_card_title {
          color: #FFFFFF; } }
  @media screen and (max-width: 640px) {
    .stock_list {
      margin-bottom: 32px; }
      .stock_list_group {
        row-gap: 34px;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 24px;
        padding-top: 20px; }
      .stock_list_card_title {
        font-size: 16px; }
      .stock_list_cardmobile {
        margin-top: 10px; } }
  @media screen and (max-width: 420px) {
    .stock_list_group {
      padding-top: 0px; } }

.stock_news {
  margin-top: 65px;
  margin-bottom: 122px;
  color: #FFFFFF; }
  .stock_news .h1,
  .stock_news .h2 {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 300;
    font-size: 48px;
    line-height: 120%;
    color: #FFFFFF; }
  .stock_news_group {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 507px));
    padding-top: 17px;
    column-gap: 71px;
    row-gap: 81px; }
  .stock_news_date {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 300;
    font-size: 24px;
    line-height: 170%;
    color: #989797 !important; }
  .stock_news_title {
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 300;
    font-size: 24px;
    line-height: 170%;
    margin-bottom: 18px;
    color: #FFFFFF; }
  .stock_news_card {
    font-weight: 300;
    font-size: 18px;
    color: #FFFFFF; }
  @media screen and (max-width: 1580px) {
    .stock_news .h2,
    .stock_news h2 {
      font-size: 40px; }
    .stock_news_date, .stock_news_title {
      font-size: 18px; }
    .stock_news_title {
      margin-bottom: 18px;
      margin-top: 11px;
      padding: 0px; }
    .stock_news_card {
      font-size: 16px; } }
  @media screen and (max-width: 1200px) {
    .stock_news {
      margin-top: 51px; }
      .stock_news_group {
        column-gap: 24px;
        padding-top: 12px;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 507px)); }
      .stock_news .h2,
      .stock_news h2 {
        font-size: 24px; }
      .stock_news_title {
        margin-bottom: 8px;
        margin-top: 8px; } }
  @media screen and (max-width: 640px) {
    .stock_news_group {
      column-gap: 24px;
      padding-top: 12px;
      display: grid;
      grid-template-columns: repeat(1, minmax(0, 507px));
      row-gap: 50px; }
    .stock_news_title {
      font-size: 16px; } }

.card_stock {
  margin-bottom: 95px; }
  .card_stock_img {
    max-width: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; }
  .card_stock_img_mobile {
    display: none; }
  .card_stock_description {
    color: #FFFFFF;
    margin-top: 86px;
    margin-bottom: 60px;
    display: flex;
    flex-direction: column;
    font-family: 'Exo 2';
    font-style: normal;
    font-weight: 300;
    font-size: 24px;
    line-height: 170%;
    color: #FFFFFF; }
    .card_stock_description p {
      max-width: 60%;
      font-family: 'Exo 2';
      font-style: normal;
      font-weight: 300;
      font-size: 24px;
      line-height: 170%;
      margin-bottom: 8px;
      color: #FFFFFF; }
    .card_stock_description span {
      font-size: 18px;
      color: #d8d8d8; }
  @media screen and (max-width: 1580px) {
    .card_stock {
      margin-bottom: 63px; }
      .card_stock_img {
        height: auto; }
      .card_stock_description {
        font-size: 18px;
        margin-top: 40px;
        margin-bottom: 40px; }
      .card_stock span {
        font-size: 14px; } }
  @media screen and (max-width: 1200px) {
    .card_stock_img {
      height: auto; }
    .card_stock_description {
      font-size: 16px;
      margin-top: 36px;
      margin-bottom: 36px; } }
  @media screen and (max-width: 900px) {
    .card_stock_img {
      height: auto; }
    .card_stock_img_mobile {
      display: block;
      max-width: 100%; }
    .card_stock_img_desc {
      display: none; }
    .card_stock_description {
      margin-top: 36px;
      margin-bottom: 36px; }
      .card_stock_description p {
        max-width: 80%;
        font-family: 'Exo 2';
        font-style: normal;
        font-weight: 300;
        font-size: 16px;
        line-height: 170%; }
    .card_stock .btn_cube_pink {
      padding: 13px;
      width: 100%; } }
  @media screen and (max-width: 640px) {
    .card_stock {
      margin-bottom: 36px; }
      .card_stock_img {
        height: auto; }
      .card_stock_description p {
        max-width: 100%; } }

.about_head_color {
  background: #101B1A; }
  @media screen and (max-width: 900px) {
    .about_head_color {
      background: #101B1A; } }

.about .h1 {
  font-size: 48px;
  font-weight: 300;
  margin-bottom: 8px;
  line-height: 169%;
  color: black; }

@media screen and (max-width: 1580px) {
  .about .h1 {
    font-size: 40px; } }

@media screen and (max-width: 1400px) {
  .about .h1 {
    font-size: 36px; } }

@media screen and (max-width: 900px) {
  .about .h1 {
    font-size: 24px; } }

@media screen and (max-width: 640px) {
  .about .h1 {
    font-size: 16px; } }

.about_title {
  text-align: center;
  background: #101B1A;
  padding: 0px 225px 119px 225px; }
  .about_title .page-header_h1 {
    display: none; }
  .about_title .page-header {
    min-height: auto;
    justify-content: flex-end; }
  .about_title .h1 {
    padding-top: 32px;
    text-transform: uppercase;
    color: #FFFFFF; }
    .about_title .h1 span {
      position: relative;
      width: 232px;
      height: 44px;
      display: inline-block;
      margin: 0px 8px; }
    .about_title .h1 img {
      position: absolute;
      width: 232px;
      height: 84px;
      display: inline-flex;
      border-radius: 40px;
      left: 0px;
      top: -15px;
      object-fit: cover; }
  @media screen and (max-width: 1580px) {
    .about_title {
      padding: 0px 167px 86px 156px; }
      .about_title .h1 span {
        width: 190px; }
        .about_title .h1 span img {
          top: -3px;
          width: 190px;
          height: 63px; } }
  @media screen and (max-width: 1200px) {
    .about_title {
      padding: 0px 141px 27px 156px; } }
  @media screen and (max-width: 900px) {
    .about_title {
      padding: 0px 38px 62px 38px; }
      .about_title .page-header {
        padding: 0px; }
      .about_title .h1 {
        padding-top: 27px; }
        .about_title .h1 span {
          width: 81px;
          height: 33px; }
          .about_title .h1 span img {
            top: 6px;
            width: 81px;
            height: 33px; } }
  @media screen and (max-width: 640px) {
    .about_title .h1 span {
      height: 20px; }
    .about_title .h1 span img {
      top: 1px;
      width: 81px;
      height: 27px; } }

.about_target {
  position: relative;
  background-color: #182827; }
  .about_target::after {
    content: "";
    background-image: url(/local/templates/gurus/assets/css/../img/masks/about_target_fon_red.png);
    position: absolute;
    width: 100%;
    height: 301px;
    bottom: 0px;
    z-index: 1; }
  .about_target .main_about {
    padding-top: 88px;
    padding-bottom: 132px; }
  .about_target .main_about_wrapper {
    z-index: 3;
    background-color: #fff;
    position: relative; }
    .about_target .main_about_wrapper::before {
      content: "";
      width: 30px;
      height: 30px;
      background-color: #182827;
      right: 123.5px;
      top: 0px;
      position: absolute; }
    .about_target .main_about_wrapper::after {
      content: "";
      width: 30px;
      height: 30px;
      background-color: #182827;
      right: 0px;
      top: 84px;
      position: absolute; }
    .about_target .main_about_wrapper .main_about_plate {
      background-color: #182827;
      width: 128px;
      height: 91px;
      border: 1px solid var(--color-black);
      position: absolute;
      top: -1px;
      right: -1px;
      border-bottom-left-radius: 29px; }
      .about_target .main_about_wrapper .main_about_plate P {
        display: none; }
      .about_target .main_about_wrapper .main_about_plate::before {
        top: -0.5px;
        left: -29.5px; }
      .about_target .main_about_wrapper .main_about_plate::after {
        top: calc(100% - -0.5px);
        right: -1px; }
  .about_target .main_about_coltext {
    color: #fff; }
  .about_target .main_about_swiper-button-next {
    filter: invert(100%); }
  @media screen and (max-width: 1580px) {
    .about_target::after {
      height: 221px; }
    .about_target .main_about {
      padding-top: 66px;
      padding-bottom: 111px; }
    .about_target .main_about_wrapper::before {
      right: 109.5px; }
    .about_target .main_about_wrapper::after {
      top: 76px; }
    .about_target .main_about_wrapper .main_about_plate {
      width: 112px;
      height: 79px; }
      .about_target .main_about_wrapper .main_about_plate::before {
        top: 0.5px;
        left: -30.5px; } }
  @media screen and (max-width: 900px) {
    .about_target h1,
    .about_target .h1 {
      color: #fff;
      font-size: 36px; }
    .about_target::after {
      height: 221px; }
    .about_target .main_about {
      padding-top: 50px;
      padding-bottom: 84px; }
    .about_target .main_about_wrapper {
      background: none; }
      .about_target .main_about_wrapper p {
        color: #fff; }
      .about_target .main_about_wrapper::before {
        right: 109.5px; }
      .about_target .main_about_wrapper::after {
        top: 76px; }
      .about_target .main_about_wrapper .main_about_plate {
        width: 112px;
        height: 79px; }
        .about_target .main_about_wrapper .main_about_plate::before {
          top: 0.5px;
          left: -30.5px; }
      .about_target .main_about_wrapper .main_about_tag {
        height: 27px;
        color: black;
        background: #FFFFFF; } }
  @media screen and (max-width: 640px) {
    .about_target .main_about {
      padding-top: 50px; } }

.about_documents {
  margin-top: 60px;
  margin-bottom: 70px;
  margin-bottom: 9px; }
  .about_documents h2 {
    color: #FFFFFF !important; }
  .about_documents_list {
    display: flex;
    flex-direction: column;
    gap: 0px; }
    .about_documents_list .documents_list_el {
      padding: 49px 0px;
      display: grid;
      grid-template-columns: 40px auto minmax(0, 394px) minmax(0, 177px) 40px;
      column-gap: 40px;
      align-items: center;
      border-bottom: 1px solid #d0dbda; }
      .about_documents_list .documents_list_el p {
        font-size: 24px;
        font-weight: 300;
        color: #FFFFFF; }
      .about_documents_list .documents_list_el:last-child {
        border-bottom: none; }
  @media screen and (max-width: 1580px) {
    .about_documents {
      margin: 52px 98px 9px 78px; }
      .about_documents_list .documents_list_el {
        padding: 33px 0px;
        grid-template-columns: 40px auto minmax(0, 273px) minmax(0, 177px) 40px; }
        .about_documents_list .documents_list_el p {
          font-size: 18px;
          font-weight: 300; } }
  @media screen and (max-width: 900px) {
    .about_documents {
      margin: 0px; }
      .about_documents .h1 {
        font-size: 36px; }
      .about_documents_list {
        max-width: 378px;
        width: 100%; }
        .about_documents_list .documents_list_el {
          display: flex;
          flex-direction: column;
          position: relative;
          padding-left: 30px;
          align-items: flex-start;
          gap: 6px; }
          .about_documents_list .documents_list_el img {
            max-width: 24px; }
            .about_documents_list .documents_list_el img:first-child {
              position: absolute;
              left: -11px; }
          .about_documents_list .documents_list_el a:last-child {
            position: absolute;
            right: -28px; } }
  @media screen and (max-width: 640px) {
    .about_documents {
      width: 100%; }
      .about_documents_list .documents_list_el {
        padding-right: 40px; }
        .about_documents_list .documents_list_el p {
          font-size: 16px; }
        .about_documents_list .documents_list_el a:last-child {
          right: 16px; } }

/* End */


/* Start:/local/templates/gurus/components/awelite/favorite.icon/favorites/style.css?1725359251479*/
#awelite_favorites_equation {
    height: 64px;
    position: relative;
    display: none;
}
#awelite_favorites_equation i {
    font-size: 32px;
    color: red;
}
#awelite_favorites_equation p.count {
    border-radius: 50%;
    width: 20px;
    height: 20px;
    background-color: #0b011d;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    color: #feae4f;
    right: -5px;
    margin: 0;
    top: -5px;
}
/* End */


/* Start:/local/templates/gurus/components/bitrix/menu/header_left_menu/style.min.css?1712917596490*/
ul.left-menu{list-style:none;margin:0;padding:0;margin-bottom:8px;position:relative}ul.left-menu li{padding:10px 16px;background:#f5f5f5 url(/local/templates/gurus/components/bitrix/menu/header_left_menu/images/left_menu_bg.gif) top repeat-x}ul.left-menu li a{font-size:100%;color:#bc262c;font-weight:bold;text-decoration:none}ul.left-menu li a:visited{color:#bc262c}ul.left-menu li a:hover{color:#bc262c}ul.left-menu li a.selected:link,ul.left-menu li a.selected:visited,ul.left-menu li a.selected:active,ul.left-menu li a.selected:hover{color:#fc8d3d}
/* End */


/* Start:/local/templates/gurus/components/bitrix/menu/general_menu/style.min.css?1712917596490*/
ul.left-menu{list-style:none;margin:0;padding:0;margin-bottom:8px;position:relative}ul.left-menu li{padding:10px 16px;background:#f5f5f5 url(/local/templates/gurus/components/bitrix/menu/general_menu/images/left_menu_bg.gif) top repeat-x}ul.left-menu li a{font-size:100%;color:#bc262c;font-weight:bold;text-decoration:none}ul.left-menu li a:visited{color:#bc262c}ul.left-menu li a:hover{color:#bc262c}ul.left-menu li a.selected:link,ul.left-menu li a.selected:visited,ul.left-menu li a.selected:active,ul.left-menu li a.selected:hover{color:#fc8d3d}
/* End */


/* Start:/local/templates/gurus/components/bitrix/menu/footer_menu/style.min.css?1712917596490*/
ul.left-menu{list-style:none;margin:0;padding:0;margin-bottom:8px;position:relative}ul.left-menu li{padding:10px 16px;background:#f5f5f5 url(/local/templates/gurus/components/bitrix/menu/footer_menu/images/left_menu_bg.gif) top repeat-x}ul.left-menu li a{font-size:100%;color:#bc262c;font-weight:bold;text-decoration:none}ul.left-menu li a:visited{color:#bc262c}ul.left-menu li a:hover{color:#bc262c}ul.left-menu li a.selected:link,ul.left-menu li a.selected:visited,ul.left-menu li a.selected:active,ul.left-menu li a.selected:hover{color:#fc8d3d}
/* End */


/* Start:/local/templates/gurus/template_styles.css?178970482413763*/
#bx_incl_area_3 .page-header{
    flex-direction: column;
}

.card_page__about__progress__tabs {
    margin-bottom: 32px;
}

@media (max-width: 585px) {
    .card_page__about__progress__tabs {
        padding-left: 25px;
        padding-right: 25px;
    }
}
.card_page .project_tab#tab_layout {
    width: 100%;
    height: 100%;
}
.card_page .details_about_flat .flat_inside_pic .flat_inside_img_section img {
    width: 100%;
    height: 100%;
    display: block;
    margin: 0 auto;
}
.card_page .project_tab#tab_layout .flat_inside_img_section > a {
    margin: 0 auto;
    height: 100%;
}

@media (min-width: 900px) {
    .fancybox-image {
        min-width: 800px;
        min-height: 800px;
    }
}
@media (max-width: 900px) {
    .fancybox-image {
        min-width: 90vw;
    }
}

.project-advantages {
    gap: 64px;
    margin: 50px 0;
}

.project-advantages .advantage-item {
    width: 50%;
}

.project-advantages .advantage-item h2 {
    color:#fff;
    font-weight: 300;
}

.project-advantages .advantage-item a {
    width: 100%;
    display: inline-block;
}

.project-advantages .advantage-item a img {
    width: 100%;
    object-fit:cover;
    max-height: 25vw;
}

@media (max-width: 767px) {
    .project-advantages {
        gap: 32px;
    }
}

@media (max-width: 585px) {
    .project-advantages {
        flex-direction: column;
    }

    .project-advantages .advantage-item {
        width: 100%;
    }

    .project-advantages .advantage-item a img {
        max-height: 60vw;
    }
}

.catalog_filters .sorting span.selection {
    display: flex;
    justify-content: flex-end;
    background-color: transparent;
}

.catalog_filters .sorting span.selection span.select2-selection--sort {
    max-width: 50px;
}

body * {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.project-page .slider-container .slider-wrapper .slider-slide {
    cursor: pointer;
}

@media (max-width: 800px) {
    body .project-page .slider-container .slider-wrapper .slider-slide {
        margin-right: 24px !important;
    }
}

@media (max-width: 600px) {
    body .project-page .slider-container .slider-wrapper .slider-slide {
        margin-right: 20px !important;
    }
}

@media (max-width: 991px) {
    html.with-fancybox {
        overflow: auto !important;
    }
}

/*
.modal.modal_popup {
    max-height: none;
    height: 100%;
    background: none;
    border-radius: 0;
    transform: none;
    left: 0;
    right: 0;
    position: fixed;
    padding: 0;
    max-width: none;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
  .modal_stock .modal_contact_group .row {
    gap: 36px;
    flex-wrap: nowrap;
	min-height: 370px;
	align-items: center;
 }
.modal_stock_header {
    font-size: 48px;
    margin-bottom: 24px;
    line-height: 48px;
}
  .modal_stock_subheader {
    font-size: 24px;
    margin-bottom: 24px; }
  .modal_stock_details {
    font-size: 18px;
}
  .modal_stock .modal__close {
    position: relative;
    right: 0;
    position: absolute;
  }
  .modal_popup_outer {
    background: #FFFFFF;
    border-radius: 35px;
    padding: 36px;
    max-width: 1223px;
  }
  .modal.modal_popup .modal_contact_group {
    position: relative;
  }
  .modal_stock_right {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .modal_stock_image {
    width: 512px;
    text-align: center;
    display: block;
  }
  .modal_stock_left img {
    border-radius: 10px;
    max-width: 369px;
  }

@media (max-width: 991px) {
    .modal_stock_image {
        width: auto;
    }
}

@media (max-width: 900px) {
    .modal_stock .modal__close {
        background-color: var(--color-pink);
        width: 50px;
        height: 50px;
        top: 0;
    }
}

@media (max-width: 767px) {
    .modal_stock .modal_contact_group .row {
        flex-direction: column-reverse;
        gap: 36px;
    }

    .modal_stock_header {
        font-size: 36px;
        max-width: calc(100% - 72px);
        line-height: 36px;
    }

    .modal_stock_details {
        font-size: 14px;
    }
}

@media (max-width: 640px) {
    .modal.modal_popup {
        max-width: calc(100% - 40px);
        margin-left: auto;
        margin-right: auto;
    }

    .modal_popup_outer {
        padding: 24px;
        border-radius: 20px;
    }

    .modal_stock_left img {
        max-width: 100%;
        max-height: 236px;
    }

    .modal_stock .modal__close {
        background-color: transparent;
        filter: invert(1);
        margin-right: -10px;
        margin-top: -10px;
    }

    .modal_stock_details {
        font-size: 16px;
    }
}
*/

@media (max-width: 900px) {
    .modal_filters .checkbox-btn:hover {
        background: transparent;
    }

    .modal_filters .checkbox-btn:hover span {
        color: white;
    }

    .modal_filters .checkbox-btn:hover input[type=checkbox]:checked + span {
        color: black;
    }
}

@media (max-width: 640px) {
    .modal.modal_filters {
        height: 100%;
    }
}

/* 05.06.2025 */
#cookie-banner {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #EBEBEB;
	padding: 24px;
	display: none;
	z-index: 9999;
}
#cookie-banner h3 {
	margin: 0;
	margin-bottom: 24px;
}
.cookie-banner__info {
	display: flex;
	align-items: flex-start;
	gap: 24px;
}
.cookie-banner__info p {
	margin: 0;
	color: #878784;
}
.cookie-banner__info a {
	color: #353632;
}
.cookie-banner__btns {
	display: flex;
	gap: 12px;
}
.cookie-banner__btns button {
	outline: none!important;
}
#reject-cookies {
	background: #FFF;
    color: #BF1E2E!important;
}
#reject-cookies:after {
    border: 1px solid #BF1E2E;
}
#accept-cookies {
	background: #182827;
}
@media (max-width: 1024px) {
	.cookie-banner__info {
		flex-direction: column;
	}
}
.checkbox-wrapper {
	z-index: 1;
}
.checkbox-label {
    gap: 10px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}
.checkbox-label input {
	margin-top: 4px;
}
.checkbox-label p {
	color: #FFFFFF;
}

/* ==========================================================================
   Медиа в разделах «Акции» и «Новости»: видео и галерея фотографий
   ========================================================================== */
.media_block {
	margin-top: 48px;
}

.media_video {
	max-width: 50%;
	margin-bottom: 32px;
	border-radius: 20px;
	overflow: hidden;
	background: #101B1A;
}

.media_video_player {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: contain;
	border-radius: 20px;
	background: #000;
}

.media_video_frame {
	position: relative;
	padding-top: 56.25%;
}

.media_video_frame iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.media_gallery {
	max-width: 50%;
}

.media_gallery_viewport {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background: #101B1A;
}

.media_gallery_track {
	display: flex;
	transition: transform .35s ease;
	will-change: transform;
}

.media_gallery_slide {
	flex: 0 0 100%;
	line-height: 0;
}

.media_gallery_image {
	display: block;
	width: 100%;
	height: auto;
}

.media_gallery_arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(16, 27, 26, .65);
	cursor: pointer;
	z-index: 2;
	transition: background .2s;
}

.media_gallery_arrow:hover,
.media_gallery_arrow:focus {
	background: #EF1D59;
}

.media_gallery_arrow:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.media_gallery_arrow_prev {
	left: 16px;
}

.media_gallery_arrow_prev:before {
	transform: translate(-30%, -50%) rotate(-135deg);
}

.media_gallery_arrow_next {
	right: 16px;
}

.media_gallery_arrow_next:before {
	transform: translate(-70%, -50%) rotate(45deg);
}

.media_gallery_thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}

.media_gallery_thumb {
	padding: 0;
	border: 2px solid transparent;
	border-radius: 12px;
	overflow: hidden;
	background: none;
	cursor: pointer;
	line-height: 0;
	opacity: .5;
	transition: opacity .2s, border-color .2s;
}

.media_gallery_thumb:hover {
	opacity: 1;
}

.media_gallery_thumb.is-active {
	border-color: #EF1D59;
	opacity: 1;
}

.media_gallery_thumb img {
	display: block;
	width: 110px;
	height: 82px;
	object-fit: cover;
}

@media screen and (max-width: 900px) {
	.media_video,
	.media_gallery {
		max-width: 100%;
	}

	.media_gallery_thumb img {
		width: 84px;
		height: 62px;
	}

	.media_gallery_arrow {
		width: 36px;
		height: 36px;
	}

	.media_gallery_arrow_prev {
		left: 8px;
	}

	.media_gallery_arrow_next {
		right: 8px;
	}
}

/* Видео в карточках списков акций и новостей */
.stock_list_card {
	position: relative;
	overflow: hidden;
}

.stock_list_card_media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.stock_list_card_media video,
.stock_list_card_media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.stock_list_card_gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 56%, rgba(0, 0, 0, 1) 100%);
}

.stock_list_card > *:not(.stock_list_card_media) {
	position: relative;
	z-index: 1;
}

.stock_list_card_play {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 64px;
	height: 64px;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(239, 29, 89, .9);
}

.stock_list_card_play:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-40%, -50%);
	border-style: solid;
	border-width: 10px 0 10px 16px;
	border-color: transparent transparent transparent #fff;
}

.stock_news_card_media {
	position: relative;
	display: block;
	min-height: 120px;
	margin-bottom: 16px;
	border-radius: 20px;
	overflow: hidden;
	background: #2F3D3C center/cover no-repeat;
}

.stock_news_card_media video {
	display: block;
	width: 100%;
	height: auto;
}

.stock_news_card_media_video {
	background: #101B1A;
}

/* Блок «Новости» на главной странице */
.main_news_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.main_news_all {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: 'Exo 2';
	font-size: 18px;
	color: #FFFFFF;
}

.main_news_all:hover {
	color: #EF1D59;
}

.main_news_all_mobile {
	display: none;
}

/* Акцентные карточки новостей на главной */
.main_news .stock_news_group {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.main_news .stock_news_card {
	position: relative;
	display: flex;
	min-height: 232px;
	flex-direction: column;
	padding: 26px 26px 24px;
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 20px;
	background: linear-gradient(145deg, rgba(47, 61, 60, .94), rgba(16, 27, 26, .94));
	box-shadow: 0 12px 30px rgba(0, 0, 0, .14);
	overflow: hidden;
	transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.main_news .stock_news_card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: #EF1D59;
	transform: scaleX(.34);
	transform-origin: left;
	transition: transform .25s ease;
}

.main_news .stock_news_card::after {
	content: attr(data-index);
	position: absolute;
	top: 22px;
	right: 24px;
	font-family: 'Exo 2';
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .14em;
	color: rgba(255, 255, 255, .42);
}

.main_news .stock_news_card:hover,
.main_news .stock_news_card:focus-visible {
	border-color: rgba(239, 29, 89, .75);
	box-shadow: 0 18px 36px rgba(0, 0, 0, .24), 0 0 0 1px rgba(239, 29, 89, .18);
	transform: translateY(-6px);
}

.main_news .stock_news_card:hover::before,
.main_news .stock_news_card:focus-visible::before {
	transform: scaleX(1);
}

.main_news .stock_news_card:focus-visible {
	outline: 2px solid #FFFFFF;
	outline-offset: 4px;
}

.main_news .stock_news_card_media {
	order: -1;
	min-height: 112px;
	margin: -26px -26px 22px;
	border: 0;
	border-radius: 0;
	opacity: .92;
}

.main_news .stock_news_date {
	margin: 0 48px 14px 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #EF1D59 !important;
}

.main_news .stock_news_title {
	margin: 0 36px 14px 0;
	font-size: 23px;
	font-weight: 500;
	line-height: 1.2;
	color: #FFFFFF;
}

.main_news .main_news_excerpt {
	margin-top: auto;
	font-size: 16px;
	line-height: 1.45;
	color: rgba(255, 255, 255, .72);
}

@media screen and (max-width: 1200px) {
	.main_news .stock_news_group {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 640px) {
	.main_news .stock_news_group {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.main_news .stock_news_card {
		min-height: 198px;
		padding: 22px 20px 20px;
	}

	.main_news .stock_news_card_media {
		margin: -22px -20px 18px;
	}

	.main_news .stock_news_title {
		font-size: 20px;
	}
}

@media screen and (max-width: 900px) {
	.main_news_head .main_news_all {
		display: none;
	}

	.main_news_all_mobile {
		display: inline-flex;
		margin-top: 24px;
	}
}

/* Плашка акции в подвале выводится без фотографии */
.footer .footer_offer {
	background-color: #2F3D3C;
	background-image: none;
	background-blend-mode: normal;
	height: auto;
	min-height: 120px;
	display: flex;
	align-items: center;
}


/* Stock cards: show full source artwork */
.stock_list_card {
	background-size: 100% 100%, contain !important;
	background-position: center, center !important;
	background-repeat: no-repeat !important;
	background-color: #111b1a;
}

/* End */
/* /local/templates/gurus/assets/css/app.css?1789486961354413 */
/* /local/templates/gurus/components/awelite/favorite.icon/favorites/style.css?1725359251479 */
/* /local/templates/gurus/components/bitrix/menu/header_left_menu/style.min.css?1712917596490 */
/* /local/templates/gurus/components/bitrix/menu/general_menu/style.min.css?1712917596490 */
/* /local/templates/gurus/components/bitrix/menu/footer_menu/style.min.css?1712917596490 */
/* /local/templates/gurus/template_styles.css?178970482413763 */
