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

html {
    font-family: sans-serif;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
    display: block;
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Liberation Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: left;
    background-color: #fff;
}

[tabindex='-1']:focus:not(:focus-visible) {
    outline: 0 !important;
}

hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 0.5rem;
}

#map {
    position: relative;
}


p {
    margin-top: 0;
    margin-bottom: 1rem;
}

abbr[data-original-title],
abbr[title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    border-bottom: 0;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem;
}

    ol ol,
    ol ul,
    ul ol,
    ul ul {
        margin-bottom: 0;
    }

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0.5rem;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small {
    font-size: 80%;
}

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    color: #007bff;
    text-decoration: none;
    background-color: transparent;
}

    a:hover {
        color: #0056b3;
        text-decoration: underline;
    }

    a:not([href]):not([class]) {
        color: inherit;
        text-decoration: none;
    }

        a:not([href]):not([class]):hover {
            color: inherit;
            text-decoration: none;
        }

code,
kbd,
pre,
samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
    font-size: 1em;
}

pre {
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    -ms-overflow-style: scrollbar;
}

figure {
    margin: 0 0 1rem;
}

img {
    vertical-align: middle;
    border-style: none;
}

svg {
    overflow: hidden;
    vertical-align: middle;
}

table {
    border-collapse: collapse;
}

caption {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    color: #6c757d;
    text-align: left;
    caption-side: bottom;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

button {
    border-radius: 0;
}

    button:focus:not(:focus-visible) {
        outline: 0;
    }

button,
input,
optgroup,
select,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

[role='button'] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}

[type='button'],
[type='reset'],
[type='submit'],
button {
    -webkit-appearance: button;
}

    [type='button']:not(:disabled),
    [type='reset']:not(:disabled),
    [type='submit']:not(:disabled),
    button:not(:disabled) {
        cursor: pointer;
    }

    [type='button']::-moz-focus-inner,
    [type='reset']::-moz-focus-inner,
    [type='submit']::-moz-focus-inner,
    button::-moz-focus-inner {
        padding: 0;
        border-style: none;
    }

input[type='checkbox'],
input[type='radio'] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
}

textarea {
    overflow: auto;
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    display: block;
    width: 100%;
    max-width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: 1.5rem;
    line-height: inherit;
    color: inherit;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
    height: auto;
}

[type='search'] {
    outline-offset: -2px;
    -webkit-appearance: none;
}

    [type='search']::-webkit-search-decoration {
        -webkit-appearance: none;
    }

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

output {
    display: inline-block;
}

summary {
    display: list-item;
    cursor: pointer;
}

template {
    display: none;
}

[hidden] {
    display: none !important;
}

@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-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

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

.swiper-container-multirow > .swiper-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out;
    margin: 0 auto;
}

.swiper-container-pointer-events {
    -ms-touch-action: pan-y;
    touch-action: pan-y;
}

    .swiper-container-pointer-events.swiper-container-vertical {
        -ms-touch-action: pan-x;
        touch-action: pan-x;
    }

.swiper-slide {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 250px;
    height: 100%;
    position: relative;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
}

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

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto;
}

    .swiper-container-autoheight .swiper-wrapper {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -webkit-transition-property: height, -webkit-transform;
        transition-property: height, -webkit-transform;
        -o-transition-property: transform, height;
        transition-property: transform, height;
        transition-property: transform, height, -webkit-transform;
    }

.swiper-container-3d {
    -webkit-perspective: 1200px;
    perspective: 1200px;
}

    .swiper-container-3d .swiper-cube-shadow,
    .swiper-container-3d .swiper-slide,
    .swiper-container-3d .swiper-slide-shadow-bottom,
    .swiper-container-3d .swiper-slide-shadow-left,
    .swiper-container-3d .swiper-slide-shadow-right,
    .swiper-container-3d .swiper-slide-shadow-top,
    .swiper-container-3d .swiper-wrapper {
        -webkit-transform-style: preserve-3d;
        transform-style: preserve-3d;
    }

    .swiper-container-3d .swiper-slide-shadow-bottom,
    .swiper-container-3d .swiper-slide-shadow-left,
    .swiper-container-3d .swiper-slide-shadow-right,
    .swiper-container-3d .swiper-slide-shadow-top {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        pointer-events: none;
        z-index: 10;
    }

    .swiper-container-3d .swiper-slide-shadow-left {
        background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
        background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
        background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    }

    .swiper-container-3d .swiper-slide-shadow-right {
        background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
        background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
        background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    }

    .swiper-container-3d .swiper-slide-shadow-top {
        background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
        background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
        background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    }

    .swiper-container-3d .swiper-slide-shadow-bottom {
        background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
        background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
        background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
    }

.swiper-container-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

    .swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
        display: none;
    }

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

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

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

@font-face {
    font-family: Rubik;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Rubik-Regular.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: Rubik;
    font-style: normal;
    font-weight: 800;
    src: url(../fonts/Rubik-Black.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: Rubik;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/Rubik-Bold.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: SansPro;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/SourceSansPro-Bold.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: SansPro;
    font-style: normal;
    font-weight: 200;
    src: url(../fonts/SourceSansPro-Light.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: SansPro;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/SourceSansPro-Regular.woff2) format('woff2');
    font-display: swap;
}

@font-face {
    font-family: SansPro;
    font-style: normal;
    font-weight: 600;
    src: url(../fonts/SourceSansPro-SemiBold.woff2) format('woff2');
    font-display: swap;
}

body {
    overflow-x: hidden;
    position: relative;
    min-width: 320px;
    font-family: SansPro, sans-serif;
    font-size: 14px;
    color: #353535;
    line-height: 1.4;
    font-weight: 400;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

::-moz-selection {
    background-color: #ffb319;
    color: #fff;
}

::selection {
    background-color: #ffb319;
    color: #fff;
}

::-webkit-input-placeholder {
    color: #666;
}

::-moz-placeholder {
    color: #666;
}

:-ms-input-placeholder {
    color: #666;
}

::-ms-input-placeholder {
    color: #666;
}

::placeholder {
    color: #666;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    padding: 0;
}

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

b,
strong {
    font-weight: 700;
}

p {
    margin: 0;
    padding: 0;
}

a,
button {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    a:focus,
    a:hover,
    button:focus,
    button:hover {
        outline: 0;
        text-decoration: none;
        outline: 0;
    }

input,
select,
textarea {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid #000;
}

    input:focus:required:invalid,
    select:focus:required:invalid,
    textarea:focus:required:invalid {
        border-color: red;
        outline: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-appearance: none;
    }

    input:required:valid,
    select:required:valid,
    textarea:required:valid {
        border-color: green;
        outline: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-appearance: none;
    }

    input::-webkit-input-placeholder,
    select::-webkit-input-placeholder,
    textarea::-webkit-input-placeholder {
        color: #353535;
    }

    input::-moz-placeholder,
    select::-moz-placeholder,
    textarea::-moz-placeholder {
        color: #353535;
    }

    input:-ms-input-placeholder,
    select:-ms-input-placeholder,
    textarea:-ms-input-placeholder {
        color: #353535;
    }

    input::-ms-input-placeholder,
    select::-ms-input-placeholder,
    textarea::-ms-input-placeholder {
        color: #353535;
    }

    input::placeholder,
    select::placeholder,
    textarea::placeholder {
        color: #353535;
    }

.container {
    width: 100%;
    max-width: 1320px;
    padding: 0 15px;
    margin: 0 auto;
}

@media only screen and (max-width: 1320px) {
    .container {
        max-width: 1200px;
    }
}

@media only screen and (max-width: 1200px) {
    .container {
        max-width: 992px;
    }
}

@media only screen and (max-width: 992px) {
    .container {
        max-width: 768px;
    }
}

@media only screen and (max-width: 767px) {
    .container {
        max-width: 576px;
    }
}

@media only screen and (max-width: 576px) {
    .container {
        max-width: 480px;
    }
}

.btn,
.form__btn_button {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px;
    border-radius: 20px;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    border: 1px solid #1e53a6;
    background-color: #1e53a6;
    padding: 0 15px;
    font-size: 16px;
    color: #fff;
    font-weight: 600;
}

    .btn:hover,
    .form__btn_button:hover {
        border: 1px solid #ffb319;
        background: #ffb319;
        color: #fff;
    }

    .btn:active,
    .form__btn_button:active {
        background: #ffb319;
        color: #fff;
        -webkit-transform: translate(2px, 1px);
        -ms-transform: translate(2px, 1px);
        transform: translate(2px, 1px);
    }

.btn--banner {
    max-width: 240px;
    width: 100%;
    height: 50px;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #e6e6e6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    margin-bottom: 20px;
}

.main-buttons-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 25px auto;
}

.main-button {
    max-width: 240px;
    height: 50px;
    width: 100%;
    border-radius: 0;
    background: #636363;
    border: 1px solid #636363;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    color: #fff;
    margin: auto;
    font-size: 18px;
    transition: background-color 0.3s ease;
}

    .main-button:hover {
        background-color: #E16F0B;
        border: 1px solid #636363;
    }

    .main-button.active,
    .main-button:active {
        background-color: #E16F0B;
    }

@media only screen and (max-width: 610px) {
    .main-buttons-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin: 25px 20px;
    }

    .main-button {
        max-width: unset;
    }

        .main-button.wide {
            grid-column: span 2; /* растянуть на две колонки */
        }
}

@media only screen and (max-width: 767px) {
    .btn--banner {
        height: 40px;
    }
}

@media only screen and (max-width: 576px) {
    .btn--banner {
        max-width: 160px;
    }
}

.btn--search {
    background: #636363;
    max-width: 100%;
    height: 100%;
    border: none;
    border-radius: 0 10px 10px 0;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .btn--search:hover {
        border: none;
        color: #fff;
        background: #eabc45;
    }

@media only screen and (max-width: 992px) {
    .btn--search {
        height: 50px;
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 4;
        grid-column-end: 5;
        -ms-grid-row: 2;
        grid-row-start: 2;
        -ms-grid-row-span: 0;
        grid-row-end: 2;
        border-radius: 0 0 10px 10px;
    }
}

@media only screen and (max-width: 767px) {
    .btn--search {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 1;
        grid-column-end: 2;
        -ms-grid-row: 5;
        grid-row-start: 5;
        -ms-grid-row-span: 0;
        grid-row-end: 5;
    }
}

.btn--search:active {
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
}

.btn--more {
    max-width: 160px;
    width: 100%;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #e6e6e6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    color: #b2b2b2;
    gap: 10px;
}

@media only screen and (max-width: 576px) {
    .btn--more {
        max-width: 140px;
        font-size: 12px;
        height: 30px;
    }
}

.btn--consult {
    max-width: 230px;
    width: 100%;
    border-radius: 0;
    border: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    background: rgba(31, 31, 31, 0.5);
    gap: 10px;
    padding: 5px;
}

@media only screen and (max-width: 576px) {
    .btn--consult {
        max-width: 180px;
        font-size: 12px;
        height: 30px;
        gap: 5px;
    }
}

.btn--consult:hover {
    border: none;
}

.btn--look {
    max-width: 240px;
    height: 50px;
    width: 100%;
    border-radius: 0;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid #e6e6e6;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    color: #fff;
    margin: auto;
    font-size: 18px;
}

.btn--go {
    max-width: 150px;
    width: 100%;
    border-radius: 0;
    border: 1px solid rgba(31, 31, 31, 0.7);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #d2d2d2;
    font-size: 18px;
    background: #fff;
    gap: 15px;
}

    .btn--go path,
    .btn--go svg {
        fill: #d2d2d2;
    }

.btn--loop {
    border: none;
    border-right: 1px solid #d2d2d2;
    background: 0 0;
    position: absolute;
    right: 30px;
    bottom: 11px;
    width: 39px;
    height: 20px;
}

    .btn--loop path,
    .btn--loop svg {
        fill: #b2b2b2;
    }

.btn--close {
    border: none;
    background: #fff;
    position: absolute;
    right: 6px;
    bottom: 11px;
    width: 20px;
    height: 20px;
    padding: 0;
}

    .btn--close path,
    .btn--close svg {
        fill: #b2b2b2;
    }

.btn--form {
    max-width: 220px;
    width: 220px;
    background: #fff;
    color: #000;
    border-radius: 0;
    border: 1px solid #fff;
    height: 50px;
}

@media only screen and (max-width: 992px) {
    .btn--form {
        width: 200px;
        height: 40px;
    }
}

.btn--searchouse {
    background: #636363;
    height: 48px;
    border: none;
    border-radius: 0;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    display: none;
    transition: all 0.6s;
    width: 100%;
    max-width: 100%;
}

    .btn--searchouse:hover {
        border: none;
        color: #fff;
        background: #eabc45;
    }

@media only screen and (max-width: 992px) {
    .btn--searchouse {
        display: unset;
    }
}

.btn--searchouse:active {
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
}

.btn--modal {
    max-width: 140px;
    width: 140px;
    height: 40px;
    border: 1px solid #d2d2d2;
    border-radius: 0;
    background: #fff;
    color: #474b4f;
}

.btn--filter {
    background: 0 0;
    border: none;
    padding: 0;
}

.btn--filter--active path,
.btn--filter--active svg {
    fill: #ffb319;
}

.btn--submit {
    width: 100%;
    max-width: 360px;
    height: 50px;
    background: rgba(31, 31, 31, 0.7);
    border-radius: 0;
    border: none;
    margin-bottom: 20px;
}

.btn--clsearch {
    border: none;
    background: 0 0;
}

    .btn--clsearch path,
    .btn--clsearch svg {
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .btn--clsearch:hover path,
    .btn--clsearch:hover svg {
        fill: #ffb319;
    }

.h1 {
    font-family: Rubik, sans-serif;
    font-size: 40px;
    color: #e16f0b;
    font-weight: 400;
}

@media only screen and (max-width: 1200px) {
    .h1 {
        font-size: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .h1 {
        font-size: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .h1 {
        font-size: 25px;
    }
}

.h2 {
    font-family: Rubik, sans-serif;
    font-size: 40px;
    color: #fff;
    font-weight: 400;
}

@media only screen and (max-width: 1200px) {
    .h2 {
        font-size: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .h2 {
        font-size: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .h2 {
        font-size: 25px;
    }
}

.footer__list a,
.header__nav a,
.link {
    color: #ffb319;
    position: relative;
    z-index: 1;
}

    .footer__list a::before,
    .header__nav a::before,
    .link::before {
        content: '';
        width: 0;
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        transform: scale(0);
        -webkit-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        position: absolute;
        bottom: -1px;
        width: 100%;
        height: 1px;
        background-color: #ffb319;
        z-index: -1;
    }

    .footer__list a:hover,
    .header__nav a:hover,
    .link:hover {
        color: #ffb319;
        text-decoration: none;
    }

        .footer__list a:hover::before,
        .header__nav a:hover::before,
        .link:hover::before {
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
        }

    .footer__list a:active,
    .header__nav a:active,
    .link:active {
        color: #ffb319;
        text-decoration: none;
    }

        .footer__list a:active::before,
        .header__nav a:active::before,
        .link:active::before {
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
        }

.hamburger {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
    border: none;
    background-color: transparent;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    width: 25px;
    height: 18px;
    margin-right: 15px;
    outline: 0;
    display: none;
    z-index: 100;
}

@media only screen and (max-width: 992px) {
    .hamburger {
        display: block;
    }
}

.hamburger:hover span {
    background-color: #fff;
}

    .hamburger:hover span::after,
    .hamburger:hover span::before {
        background-color: #fff;
    }

.hamburger__item {
    position: absolute;
    right: 0;
    top: 50%;
    width: 25px;
    height: 2px;
    background-color: #fff;
    border-radius: 4px;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    bottom: 0;
}

    .hamburger__item::after,
    .hamburger__item::before {
        content: '';
        display: block;
        position: absolute;
        right: 0;
        background-color: #fff;
        height: 2px;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .hamburger__item::before {
        top: 7px;
        width: 25px;
    }

    .hamburger__item::after {
        top: -7px;
        width: 25px;
    }

.hamburger--active {
    z-index: 100;
}

    .hamburger--active:hover span {
        background-color: transparent;
    }

        .hamburger--active:hover span::after,
        .hamburger--active:hover span::before {
            background-color: rgba(178, 178, 178, 0.7);
        }

    .hamburger--active .hamburger__item {
        background-color: transparent;
    }

        .hamburger--active .hamburger__item::before {
            top: 0;
            width: 25px;
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
            background-color: rgba(178, 178, 178, 0.7);
        }

        .hamburger--active .hamburger__item::after {
            top: 0;
            width: 25px;
            -webkit-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
            background-color: rgba(178, 178, 178, 0.7);
        }

.header {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    padding: 20px 0;
    z-index: 50;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 576px) {
    .header {
        padding: 10px 0;
    }
}

.header__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.header__logo {
    display: block;
    z-index: 100;
}

    .header__logo a img {
        width: 133px;
        height: 29px;
    }

@media only screen and (max-width: 576px) {
    .header__logo a {
        font-size: 20px;
    }
}

.header__logo a span {
    color: rgba(255, 255, 255, 0.8);
    font-size: 20px;
    font-weight: 400;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 576px) {
    .header__logo a span {
        font-size: 16px;
        color: #b7b7b7;
    }
}

.header__nav {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 992px) {
    .header__nav {
        position: fixed;
        top: 0;
        right: -200%;
        bottom: 0;
        background: #1f1f1f;
        z-index: 100;
        width: 100%;
        height: 100%;
        padding: 100px 15px;
        -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.55);
        box-shadow: 0 5px 5px rgba(0, 0, 0, 0.55);
    }
}

.header__nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    font-size: 18px;
    color: #fff;
}

@media only screen and (max-width: 1200px) {
    .header__nav ul {
        gap: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .header__nav ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 20px;
        margin-bottom: 60px;
    }
}

.header__nav a {
    font-variant: small-caps;
    color: #fff;
}

    .header__nav a:first-child {
        font-variant: normal;
    }

.header__nav_mobile {
    display: none;
}

@media only screen and (max-width: 992px) {
    .header__nav_mobile {
        display: block;
        background: rgba(255, 255, 255, 0.1);
        -webkit-backdrop-filter: blur(4px);
        backdrop-filter: blur(4px);
        padding: 10px 40px;
    }
}

.header__nav_mobile p {
    color: #fff;
    text-align: center;
    margin-bottom: 15px;
}

.header__nav_social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 15px;
}

    .header__nav_social svg {
        width: 24px;
        height: 24px;
    }

.header__nav--active {
    right: 0;
}

.header--menu .header__logo a {
    color: #fff !important;
}

.header__phone {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 60px;
}

@media only screen and (max-width: 1200px) {
    .header__phone {
        gap: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .header__phone {
        gap: 25px;
    }
}

@media only screen and (max-width: 767px) {
    .header__phone {
        gap: 20px;
    }
}

.header__search {
    position: relative;
}

.header__search_close {
    cursor: pointer;
}

.header__search_wrap {
    position: absolute;
    display: none;
    width: 740px;
    height: 40px;
    background: #fff;
    right: 0;
    top: -10px;
    z-index: 100;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 1200px) {
    .header__search_wrap {
        width: 570px;
    }
}

@media only screen and (max-width: 992px) {
    .header__search_wrap {
        width: 472px;
    }
}

@media only screen and (max-width: 767px) {
    .header__search_wrap {
        width: 449px;
    }
}

@media only screen and (max-width: 576px) {
    .header__search_wrap {
        width: 360px;
    }
}

@media only screen and (max-width: 500px) {
    .header__search_wrap {
        width: calc(100vw - 120px);
    }
}

@media only screen and (max-width: 312px) {
    .header__search_wrap {
        width: calc(100vw - 110px);
    }
}

@media only screen and (max-width: 302px) {
    .header__search_wrap {
        width: 200px;
    }
}

.header__search_wrap--active {
    display: block !important;
}

.header__search form {
    height: 100%;
}

.header__search_input {
    border: none;
    height: 100%;
    padding-left: 15px;
    padding-right: 7px;
    width: 100%;
    font-size: 16px;
}

.header__search input[type='search']::-webkit-search-cancel-button {
    -webkit-appearance: none;
    cursor: pointer;
    width: 13px;
    height: 13px;
    background: url(/img/close.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.header__tell {
    font-size: 16px;
    font-weight: 700;
    padding: 10px;
    background: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 767px) {
    .header__tell {
        background: 0 0;
        padding: 0;
        -webkit-backdrop-filter: blur(0);
        backdrop-filter: blur(0);
    }
}

.header__tell:hover path,
.header__tell:hover svg {
    fill: #ffb319;
}

.header__tell:hover b {
    color: #ffb319;
}

.header__tell b {
    color: #fff;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 767px) {
    .header__tell b {
        display: none;
    }
}

.header__tell path,
.header__tell svg {
    fill: #fff;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

.header--white {
    background: #fff;
    border-bottom: 1px solid #e6e6e6;
}

.header--hidden {
    transform: translateY(-100%);
    transition: transform 0.3s ease;
}

.header--white .header__search_wrap {
    border: 1px solid #e6e6e6;
}

.header--white ul li a {
    color: #b2b2b2;
}

.header--white .header__logo a {
    color: #1f1f1f;
}

    .header--white .header__logo a span {
        color: #b2b2b2;
    }

.header--white .header__tell {
    background: rgba(31, 31, 31, 0.1);
}

@media only screen and (max-width: 767px) {
    .header--white .header__tell {
        background: 0 0;
    }
}

.header--white .header__tell:hover b {
    color: #e16f0b;
}

.header--white .header__tell:hover path,
.header--white .header__tell:hover svg {
    fill: #e16f0b;
}

.header--white .header__tell b {
    color: #1f1f1f;
}

.header--white .header__tell path,
.header--white .header__tell svg {
    fill: #1f1f1f;
}

.header--white .header__search path,
.header--white .header__search svg {
    fill: rgba(31, 31, 31, 0.7);
}

.header--white .hamburger {
    background-color: transparent;
}

    .header--white .hamburger:hover span {
        background-color: #b2b2b2;
    }

        .header--white .hamburger:hover span::after,
        .header--white .hamburger:hover span::before {
            background-color: #b2b2b2;
        }

.header--white .hamburger__item {
    background-color: #b2b2b2;
}

    .header--white .hamburger__item::after,
    .header--white .hamburger__item::before {
        background-color: #b2b2b2;
    }

.header--white .hamburger--active {
    z-index: 100;
}

    .header--white .hamburger--active:hover span {
        background-color: transparent;
    }

        .header--white .hamburger--active:hover span::after,
        .header--white .hamburger--active:hover span::before {
            background-color: rgba(178, 178, 178, 0.7);
        }

    .header--white .hamburger--active .hamburger__item {
        background-color: transparent;
    }

        .header--white .hamburger--active .hamburger__item::before {
            background-color: rgba(178, 178, 178, 0.7);
        }

        .header--white .hamburger--active .hamburger__item::after {
            background-color: rgba(178, 178, 178, 0.7);
        }

@media only screen and (max-width: 480px) {
    .header--person {
        background: 0 0;
        border: none;
    }

        .header--person .header__logo a {
            color: #fff;
        }

            .header--person .header__logo a span {
                color: #fff;
            }

        .header--person .hamburger {
            background-color: transparent;
        }

            .header--person .hamburger:hover span {
                background-color: #fff;
            }

                .header--person .hamburger:hover span::after,
                .header--person .hamburger:hover span::before {
                    background-color: #fff;
                }

        .header--person .hamburger__item {
            background-color: #fff;
        }

            .header--person .hamburger__item::after,
            .header--person .hamburger__item::before {
                background-color: #fff;
            }

        .header--person .hamburger--active {
            z-index: 100;
        }

            .header--person .hamburger--active:hover span {
                background-color: transparent;
            }

                .header--person .hamburger--active:hover span::after,
                .header--person .hamburger--active:hover span::before {
                    background-color: rgba(178, 178, 178, 0.7);
                }

            .header--person .hamburger--active .hamburger__item {
                background-color: transparent;
            }

                .header--person .hamburger--active .hamburger__item::before {
                    background-color: rgba(178, 178, 178, 0.7);
                }

                .header--person .hamburger--active .hamburger__item::after {
                    background-color: rgba(178, 178, 178, 0.7);
                }

        .header--person .header__tell path,
        .header--person .header__tell svg {
            fill: #fff;
        }
}

.headerpage--active {
    background: #1f1f1f;
    -webkit-box-shadow: 1px 1px 1px #1f1f1f;
    box-shadow: 1px 1px 1px #1f1f1f;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .headerpage--active .header__tell {
        background: 0 0;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.headerpage_mobile--active {
    border-bottom: 1px solid #e6e6e6;
    background: #fff;
}

@media only screen and (max-width: 480px) {
    .headerpage_mobile--active {
        background: #1f1f1f;
        border: none;
    }
}

.banner {
    width: 100vw;
}

.banner__info {
    width: 100%;
    padding-top: 360px;
    padding-bottom: 20px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}

    .banner__info::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.3);
        z-index: 1;
    }

    .banner__info .banner__text {
        position: relative;
        z-index: 2; /* Контент поверх затемнения */
    }

@media only screen and (max-width: 1200px) {
    .banner__info {
        padding-top: 300px;
    }
}

@media only screen and (max-width: 992px) {
    .banner__info {
        padding-top: 200px;
    }
}

@media only screen and (max-width: 767px) {
    .banner__info {
        padding-top: 180px;
    }
}

.banner__info h4 {
    font-size: 30px;
    font-family: Rubik, sans-serif;
    color: #fff;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .banner__info h4 {
        font-size: 28px;
    }
}

@media only screen and (max-width: 992px) {
    .banner__info h4 {
        margin-bottom: 5px;
    }
}

.banner__info p {
    font-size: 24px;
    color: #fff;
    font-family: Rubik, sans-serif;
    font-weight: 400;
}

    .banner__info p:nth-child(3) {
        font-size: 20px;
        margin-bottom: 40px;
    }

@media only screen and (max-width: 1200px) {
    .banner__info p:nth-child(3) {
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .banner__info p:nth-child(3) {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .banner__info p:nth-child(3) {
        font-size: 16px;
    }
}

@media only screen and (max-width: 992px) {
    .banner__info p {
        font-size: 22px;
    }
}

@media only screen and (max-width: 767px) {
    .banner__info p {
        font-size: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .banner__info p {
        font-size: 18px;
    }
}

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

.hero__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.hero__pagination {
    z-index: 1;
    gap: 5px;
    font-size: 20px;
    color: #fff;
    font-family: Rubik, sans-serif;
    font-weight: 500;
}

@media only screen and (max-width: 576px) {
    .hero__pagination {
        font-size: 18px;
    }
}

.hero__next,
.hero__prev {
    z-index: 1;
}

@media only screen and (max-width: 576px) {
    .hero__next svg,
    .hero__prev svg {
        width: 25px;
        height: 25px;
    }
}

.hero__next path,
.hero__next svg,
.hero__prev path,
.hero__prev svg {
    fill: #fff;
}

    .hero__next path:hover,
    .hero__next svg:hover,
    .hero__prev path:hover,
    .hero__prev svg:hover {
        fill: #ffb319;
    }

.house {
    position: relative;
    padding-top: 130px;
    padding-bottom: 45px;
}

@media only screen and (max-width: 1200px) {
    .house {
        padding-top: 110px;
        padding-bottom: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .house {
        padding-bottom: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .house {
        padding-top: 0;
        padding-bottom: 15px;
    }
}

.house__grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 49% 25% 25%;
    grid-template-columns: 49% 25% 25%;
    grid-auto-rows: 80px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 2px;
}

@media only screen and (max-width: 1200px) {
    .house__grid {
        grid-auto-rows: 70px;
    }
}

@media only screen and (max-width: 992px) {
    .house__grid {
        grid-auto-rows: 60px;
    }
}

@media only screen and (max-width: 767px) {
    .house__grid {
        grid-auto-rows: 45px;
    }
}

@media only screen and (max-width: 576px) {
    .house__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        grid-auto-rows: 75px;
    }
}

.house__box {
    font-size: 28px;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    padding: 45px;
    background-blend-mode: multiply;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 1200px) {
    .house__box {
        font-size: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .house__box {
        font-size: 23px;
        padding: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .house__box {
        font-size: 18px;
        padding: 5px;
    }
}

@media only screen and (max-width: 576px) {
    .house__box {
        font-size: 20px;
    }
}

.house__box:hover {
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
}

.house__box--one {
    -ms-grid-column: 1;
    grid-column-start: 1;
    -ms-grid-column-span: 0;
    grid-column-end: 1;
    -ms-grid-row: 1;
    grid-row-start: 1;
    -ms-grid-row-span: 5;
    grid-row-end: 6;
    font-size: 40px;
}

@media only screen and (max-width: 1200px) {
    .house__box--one {
        font-size: 38px;
    }
}

@media only screen and (max-width: 992px) {
    .house__box--one {
        font-size: 35px;
    }
}

@media only screen and (max-width: 767px) {
    .house__box--one {
        font-size: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .house__box--one {
        -ms-grid-row: 1;
        grid-row-start: 1;
        -ms-grid-row-span: 3;
        grid-row-end: 4;
    }
}

.house__box--two {
    -ms-grid-column: 2;
    grid-column-start: 2;
    -ms-grid-column-span: 0;
    grid-column-end: 2;
    -ms-grid-row: 1;
    grid-row-start: 1;
    -ms-grid-row-span: 2;
    grid-row-end: 3;
}

@media only screen and (max-width: 576px) {
    .house__box--two {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 0;
        grid-column-end: 1;
        -ms-grid-row: 4;
        grid-row-start: 4;
        -ms-grid-row-span: 2;
        grid-row-end: 6;
    }
}

.house__box--three {
    -ms-grid-column: 2;
    grid-column-start: 2;
    -ms-grid-column-span: 0;
    grid-column-end: 2;
    -ms-grid-row: 3;
    grid-row-start: 3;
    -ms-grid-row-span: 3;
    grid-row-end: 6;
}

@media only screen and (max-width: 576px) {
    .house__box--three {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 0;
        grid-column-end: 1;
        -ms-grid-row: 6;
        grid-row-start: 6;
        -ms-grid-row-span: 3;
        grid-row-end: 9;
    }
}

.house__box--four {
    -ms-grid-column: 3;
    grid-column-start: 3;
    -ms-grid-column-span: 0;
    grid-column-end: 3;
    -ms-grid-row: 1;
    grid-row-start: 1;
    -ms-grid-row-span: 3;
    grid-row-end: 4;
}

@media only screen and (max-width: 576px) {
    .house__box--four {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 0;
        grid-column-end: 1;
        -ms-grid-row: 9;
        grid-row-start: 9;
        -ms-grid-row-span: 3;
        grid-row-end: 12;
    }
}

.house__box--five {
    -ms-grid-column: 3;
    grid-column-start: 3;
    -ms-grid-column-span: 0;
    grid-column-end: 3;
    -ms-grid-row: 4;
    grid-row-start: 4;
    -ms-grid-row-span: 2;
    grid-row-end: 6;
}

@media only screen and (max-width: 576px) {
    .house__box--five {
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-column-span: 0;
        grid-column-end: 1;
        -ms-grid-row: 12;
        grid-row-start: 12;
        -ms-grid-row-span: 2;
        grid-row-end: 14;
    }
}

.house__search {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (182px) [5];
    grid-template-columns: repeat(5, 182px);
    grid-auto-rows: 80px;
    position: absolute;
    top: 0;
    z-index: 40;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
}

@media only screen and (max-width: 992px) {
    .house__search {
        -ms-grid-columns: (182px) [4];
        grid-template-columns: repeat(4, 182px);
        -ms-grid-rows: 80px 50px;
        grid-template-rows: 80px 50px;
    }
}

@media only screen and (max-width: 767px) {
    .house__search {
        -ms-grid-columns: (1fr) [2];
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-rows: 80px 80px 50px;
        grid-template-rows: 80px 80px 50px;
        position: static;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-bottom: 50px;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@media only screen and (max-width: 380px) {
    .house__search {
        -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
        -ms-grid-rows: 80px 80px 80px 80px 50px;
        grid-template-rows: 80px 80px 80px 80px 50px;
    }
}

.house__select_one {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: absolute;
    width: 728px;
    height: 80px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    top: -80px;
    left: 0;
    opacity: 0;
    visibility: hidden;
    border-bottom: 1px solid rgba(230, 230, 230, 0.5);
}

.house__select_two {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: absolute;
    width: 728px;
    height: 80px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    top: -80px;
    left: -182px;
    opacity: 0;
    visibility: hidden;
    border-bottom: 1px solid rgba(230, 230, 230, 0.5);
}

.house__select_three {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: absolute;
    width: 728px;
    height: 80px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    top: -80px;
    left: -364px;
    opacity: 0;
    visibility: hidden;
    border-bottom: 1px solid rgba(230, 230, 230, 0.5);
}

.house__select_four {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: absolute;
    width: 728px;
    height: 80px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    top: -80px;
    left: -546px;
    opacity: 0;
    visibility: hidden;
    border-bottom: 1px solid rgba(230, 230, 230, 0.5);
}

.garantsell {
    padding-top: 45px;
    padding-bottom: 140px;
    background: url(/img/bg-garantsell.png);
    background-position: bottom;
    background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {
    .garantsell {
        padding-bottom: 115px;
        background-size: 600px;
        background-position-y: 90%;
    }
}

@media only screen and (max-width: 576px) {
    .garantsell__container {
        padding: 0;
    }
}

.garantsell__content {
    padding: 160px 0 60px 70px;
    background: url(/img/garantsell.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 576px) {
    .garantsell__content {
        padding: 230px 15px 30px 15px;
    }
}

.garantsell__content h3 {
    font-family: Rubik, sans-serif;
    font-size: 30px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 20px;
}

@media only screen and (max-width: 576px) {
    .garantsell__content h3 {
        font-size: 20px;
        color: #ead583;
    }
}

.garantsell__content ul {
    margin-bottom: 35px;
}

@media only screen and (max-width: 576px) {
    .garantsell__content ul {
        margin-bottom: 15px;
    }
}

.garantsell__content ul a {
    font-family: Rubik, sans-serif;
    font-size: 18px;
    color: #fff;
    margin-bottom: 3px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .garantsell__content ul a path,
    .garantsell__content ul a svg {
        fill: #fff;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .garantsell__content ul a:hover {
        color: #ffb319;
    }

        .garantsell__content ul a:hover path,
        .garantsell__content ul a:hover svg {
            fill: #ffb319;
            -webkit-transition: all 0.6s;
            -o-transition: all 0.6s;
            transition: all 0.6s;
        }

@media only screen and (max-width: 576px) {
    .garantsell__content ul a {
        margin-bottom: 0;
    }
}

.garantsell__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}

@media only screen and (max-width: 576px) {
    .garantsell__btn {
        gap: 10px;
    }
}

@media only screen and (max-width: 350px) {
    .garantsell__btn {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.team {
    position: relative; /* чтобы можно было положить overlay и текст поверх */
    margin-bottom: 45px;
    overflow: hidden; /* чтобы фото не вылезали */
    height: 400px; /* задаём фиксированную высоту секции */
}

.team__photos {
    display: flex;
    height: 100%;
}

    .team__photos div {
        flex: 1;
        background-size: cover;
        background-position: top center;
    }

.team__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4); /* затемнение */
}

#modal__plan span {
    background: #000000;
}

#modal__map span {
    background: #000000;
}

/* контейнер с текстом по центру */
.team .container {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* планшет: показываем только 3 фото */
@media (max-width: 992px) {
    .team__photos div:nth-child(n+4) {
        display: none;
    }
}

/* телефон: показываем только 2 фото */
@media (max-width: 576px) {
    .team__photos div:nth-child(n+2) {
        display: none;
    }
}

/* у вас уже был .team__content → оставляем, но убираем лишние паддинги */
.team__content {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 30px;
    padding: 20px; /* заменяет старые padding-top/bottom */
}

    .team__content p {
        font-size: 18px;
        max-width: 570px;
        color: #fff;
    }

/* адаптив */
@media only screen and (max-width: 767px) {
    .team__content p {
        font-size: 16px;
    }
}

@media only screen and (max-width: 992px) {
    .team__title {
        font-size: 35px;
    }
}

@media only screen and (max-width: 767px) {
    .team__title {
        font-size: 30px;
        font-weight: 700;
    }
}

.gallery {
    padding-top: 60px;
    padding-bottom: 80px;
}

@media only screen and (max-width: 767px) {
    .gallery {
        padding-top: 40px;
        padding-bottom: 50px;
    }
}

.gallery__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 1200px;
    margin: auto;
    margin-bottom: 60px;
}

@media only screen and (max-width: 1200px) {
    .gallery__content {
        margin-bottom: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .gallery__content {
        margin-bottom: 35px;
    }
}

@media only screen and (max-width: 576px) {
    .gallery__content {
        margin-bottom: 30px;
    }
}

.gallery__logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 20px;
}

    .gallery__logo p {
        font-family: Rubik, sans-serif;
        font-size: 20px;
        font-weight: 400;
        color: #bababa;
    }

    .gallery__logo img {
        width: 50px;
        height: 50px;
    }

.gallery__grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (200px) [6];
    grid-template-columns: repeat(6, 200px);
    grid-auto-rows: 200px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media only screen and (max-width: 1200px) {
    .gallery__grid {
        -ms-grid-columns: (16%) [6];
        grid-template-columns: repeat(6, 16%);
        grid-auto-rows: 153px;
    }
}

@media only screen and (max-width: 992px) {
    .gallery__grid {
        grid-auto-rows: 118px;
    }
}

@media only screen and (max-width: 767px) {
    .gallery__grid {
        grid-auto-rows: 87px;
    }
}

@media only screen and (max-width: 576px) {
    .gallery__grid {
        -ms-grid-columns: (150px) [3];
        grid-template-columns: repeat(3, 150px);
        grid-auto-rows: 150px;
        margin-bottom: 25px;
    }
}

@media only screen and (max-width: 480px) {
    .gallery__grid {
        -ms-grid-columns: (120px) [3];
        grid-template-columns: repeat(3, 120px);
        grid-auto-rows: 120px;
    }
}

@media only screen and (max-width: 400px) {
    .gallery__grid {
        -ms-grid-columns: (95px) [3];
        grid-template-columns: repeat(3, 95px);
        grid-auto-rows: 95px;
    }
}

.gallery__grid a {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 576px) {
    .gallery__grid a:nth-child(n + 10) {
        display: none;
    }
}

.gallery__grid img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 576px) {
    .gallery__btn {
        display: none;
    }
}

.gallery__btn_mobile {
    display: none;
}

@media only screen and (max-width: 576px) {
    .gallery__btn_mobile {
        display: block;
        margin: auto;
    }
}

.gallery__btn:hover path,
.gallery__btn:hover svg {
    fill: #fff;
}

.footer {
    background: #1f1f1f;
    padding: 40px 0;
    z-index: 10;
}

@media only screen and (max-width: 767px) {
    .footer {
        padding: 30px 0;
    }
}

.footer__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 90px;
    margin-bottom: 40px;
}

@media only screen and (max-width: 1200px) {
    .footer__block {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}

@media only screen and (max-width: 767px) {
    .footer__block {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 30px;
        gap: 0;
    }
}

.footer__item:last-child {
    margin-left: 160px;
}

@media only screen and (max-width: 576px) {
    .footer__item:last-child {
        width: 100%;
    }
}

@media only screen and (max-width: 1200px) {
    .footer__item:last-child {
        margin-left: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }
}

@media only screen and (max-width: 767px) {
    .footer__item:last-child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.footer__item p {
    font-size: 14px;
    color: #fff;
    font-weight: 300;
}

@media only screen and (max-width: 992px) {
    .footer__item p br {
        display: none;
    }
}

.footer__item h4 {
    font-size: 20px;
    color: #fff;
    padding-top: 15px;
}

@media only screen and (max-width: 767px) {
    .footer__item h4 {
        display: none;
    }
}

@media only screen and (max-width: 992px) {
    .footer__txt {
        display: none;
    }
}

.footer__logo {
    display: block;
    margin-bottom: 25px;
}

@media only screen and (max-width: 767px) {
    .footer__logo {
        text-align: center;
        margin-bottom: 0;
    }
}

.footer__logo:hover a,
.footer__logo:hover span {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    color: #ffb319;
}

.footer__logo a {
    font-size: 24px;
    font-weight: 600;
    font-variant: small-caps;
    line-height: 12px;
    color: #fff;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 576px) {
    .footer__logo a {
        font-size: 20px;
    }
}

.footer__logo a span {
    font-size: 20px;
    font-weight: 400;
    color: #b7b7b7;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

@media only screen and (max-width: 576px) {
    .footer__logo a span {
        font-size: 16px;
    }
}

.footer__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 90px;
}

@media only screen and (max-width: 992px) {
    .footer__list {
        gap: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .footer__list {
        gap: 90px;
        margin-bottom: 20px;
    }
}

.footer__list ul {
    margin-top: 30px;
}

    .footer__list ul li {
        margin-bottom: 10px;
    }

@media only screen and (max-width: 767px) {
    .footer__list ul {
        margin-top: 20px;
    }
}

.footer__list a {
    font-size: 18px;
    color: #d2d2d2;
}

@media only screen and (max-width: 576px) {
    .footer__list a {
        font-size: 16px;
    }
}

.footer__contact {
    margin-bottom: 25px;
}

    .footer__contact p {
        font-size: 16px;
        font-weight: 600;
    }

    .footer__contact b {
        color: #fff;
    }

.footer__tell {
    margin-top: 20px;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 700;
    padding: 10px;
    background: rgba(255, 255, 255, 0.1);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
}

    .footer__tell:hover path,
    .footer__tell:hover svg {
        fill: #ffb319;
    }

    .footer__tell:hover b {
        color: #ffb319;
    }

    .footer__tell b {
        color: #fff;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .footer__tell path,
    .footer__tell svg {
        fill: #fff;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.footer__social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}

@media only screen and (max-width: 576px) {
    .footer__social {
        padding: 8px;
    }
}

.footer__social path,
.footer__social svg {
    fill: #fff;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .footer__social path:hover,
    .footer__social svg:hover {
        fill: #ffb319;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.footer__end {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    gap: 20px;
}

@media only screen and (max-width: 576px) {
    .footer__end {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 5px;
    }
}

.footer__end p {
    font-weight: 300;
    color: #fff;
}

.footer__end a {
    color: #fff;
}

    .footer__end a:hover {
        color: #ffb319;
    }

.line {
    border: 1px solid rgba(255, 255, 255, 0.05);
    width: 100%;
    margin-bottom: 40px;
}

@media only screen and (max-width: 576px) {
    .line {
        display: none;
    }
}

.line--mobile {
    border: 1px solid rgba(255, 255, 255, 0.05);
    width: 100%;
    display: none;
}

@media only screen and (max-width: 576px) {
    .line--mobile {
        display: block;
    }
}

.line--width {
    border: 1px solid #e6e6e6;
    max-width: 1290px;
    width: 99%;
}

.form__item {
    width: 220px;
    height: 50px;
}

@media only screen and (max-width: 992px) {
    .form__item {
        width: 150px;
        height: 40px;
    }
}

@media only screen and (max-width: 350px) {
    .form__item {
        width: 100%;
    }
}

.form__label {
    font-weight: 500;
    font-size: 14px;
    color: #b2b2b2;
    margin-bottom: 0;
    padding: 0 15px;
    display: none;
}

.form__input {
    width: 100%;
    height: 50px;
    padding: 15px;
    font-size: 16px;
    color: #fff;
    background: 0 0;
    border: 1px solid #fff;
}

@media only screen and (max-width: 992px) {
    .form__input {
        height: 40px;
        padding: 10px;
    }
}

.form__input::-webkit-input-placeholder {
    font-size: 16px;
    color: #fff;
}

.form__input::-moz-placeholder {
    font-size: 16px;
    color: #fff;
}

.form__input:-ms-input-placeholder {
    font-size: 16px;
    color: #fff;
}

.form__input::-ms-input-placeholder {
    font-size: 16px;
    color: #fff;
}

.form__input::placeholder {
    font-size: 16px;
    color: #fff;
}

.form__input:focus {
    -webkit-box-shadow: 0 0 4px 0 #353535;
    box-shadow: 0 0 4px 0 #353535;
}

.form__input._error {
    -webkit-box-shadow: 0 0 4px 0 red;
    box-shadow: 0 0 4px 0 red;
    border-color: red;
}

.form__textarea {
    width: 100%;
    resize: none;
    min-height: 120px;
    padding: 15px;
}

    .form__textarea._error {
        -webkit-box-shadow: 0 0 4px 0 red;
        box-shadow: 0 0 4px 0 red;
        border-color: red;
    }

.form__options_label {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 16px;
    line-height: 140%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .form__options_label::before {
        content: '';
        -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 24px;
        flex: 0 0 24px;
        height: 24px;
        background-color: #1e53a6;
        border-radius: 50%;
        margin-right: 10px;
    }

    .form__options_label::after {
        content: '';
        position: absolute;
        top: 4px;
        left: 4px;
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background-color: #fff;
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        transform: scale(0);
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.form__options_input {
    display: none;
}

    .form__options_input:checked + .form__options_label::after {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }

.form__btn {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.search {
    position: relative;
}

@media only screen and (max-width: 1200px) {
    .search {
        padding-top: 110px;
        padding-bottom: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .search {
        padding-bottom: 30px;
    }
}

@media only screen and (max-width: 767px) {
    .search {
        padding-top: 0;
        padding-bottom: 15px;
    }
}

.search__grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (182px) [5];
    grid-template-columns: repeat(5, 182px);
    grid-auto-rows: 80px;
    position: absolute;
    top: 0;
    z-index: 40;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
}

@media only screen and (max-width: 992px) {
    .search__grid {
        -ms-grid-columns: (182px) [4];
        grid-template-columns: repeat(4, 182px);
        -ms-grid-rows: 80px 50px;
        grid-template-rows: 80px 50px;
    }
}

@media only screen and (max-width: 767px) {
    .search__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        -ms-grid-rows: -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
        -ms-grid-rows: max-content max-content max-content max-content;
        grid-template-rows: -webkit-max-content -webkit-max-content -webkit-max-content -webkit-max-content;
        grid-template-rows: max-content max-content max-content max-content;
        position: static;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-bottom: 50px;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

.search__select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 20px;
    gap: 30px;
    position: absolute;
    width: 728px;
    height: 80px;
    border-radius: 10px 10px 0 0;
    background: #fff;
    display: none;
    border-bottom: 1px solid rgba(230, 230, 230, 0.5);
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

@media only screen and (max-width: 767px) {
    .search__select {
        gap: 10px;
        padding: 0;
        width: 100%;
        z-index: 1;
        border-bottom: none;
        position: static;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.search__select p {
    cursor: pointer;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    font-family: Rubik, sans-serif;
    font-size: 16px;
    color: #b2b2b2;
}

    .search__select p:hover {
        color: #eabc45;
    }

@media only screen and (max-width: 480px) {
    .search__select p {
        font-size: 14px;
    }
}

.search__select_one {
    top: -80px;
    left: 0;
}

.search__select_two {
    top: -80px;
    left: -182px;
}

.search__select_three {
    top: -80px;
    left: -364px;
}

.search__select_four {
    top: -80px;
    left: -546px;
}

.search__house {
    border-right: 1px solid rgba(230, 230, 230, 0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #fff;
    padding: 20px;
    -webkit-box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.05);
    box-shadow: 5px 10px 10px rgba(0, 0, 0, 0.05);
    position: relative;
}

@media only screen and (max-width: 767px) {
    .search__house {
        border: 1px solid rgba(230, 230, 230, 0.5);
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.search__house img {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: absolute;
    width: 20px;
    right: 10px;
    bottom: 20px;
}

@media only screen and (max-width: 767px) {
    .search__house img {
        position: static;
    }
}

.search__house h6 {
    font-size: 14px;
    color: #b2b2b2;
    font-weight: 400;
}

.search__house h5 {
    font-size: 20px;
    color: #1f1f1f;
}

.search__value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 45%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.search__value_lower,
.search__value_upper {
    width: 130px;
    height: 30px;
    border: 1px solid #e6e6e6;
    border-radius: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    color: #000;
}

@media only screen and (max-width: 400px) {
    .search__value_lower,
    .search__value_upper {
        width: 105px;
    }
}

.search__value_input {
    border: none;
    width: 110px;
}

@media only screen and (max-width: 400px) {
    .search__value_input {
        width: 90px;
    }
}

.search__value_inputt {
    border: none;
    width: 100px;
}

@media only screen and (max-width: 400px) {
    .search__value_inputt {
        width: 80px;
    }
}

.search__hr {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 12px;
    border: 1px solid #000;
}

.accordion:last-child {
    margin-bottom: 0;
}

.accordion__header {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    cursor: pointer;
    font-weight: 700;
}

    .accordion__header span {
        width: 13px;
        height: 13px;
        display: block;
        border-top: 2px solid #d2d2d2;
        border-left: 2px solid #d2d2d2;
        position: absolute;
        top: 38px;
        right: 15px;
        -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        transform: rotate(-135deg);
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.accordion__content {
    overflow: hidden;
    color: #b5acac;
    height: 80px;
}

@media only screen and (max-width: 767px) {
    .accordion__content {
        height: 0;
        border-radius: 0;
        opacity: 0;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }
}

@media only screen and (max-width: 767px) {
    .accordion--active .accordion__header {
        margin-bottom: 15px;
    }
}

.accordion--active .accordion__header span {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.accordion--active .accordion__content {
    opacity: 1;
    padding: 0 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media only screen and (max-width: 767px) {
    .accordion--active .search__select_three {
        height: 60px !important;
    }

    .accordion--active .search__select_four {
        height: 60px !important;
    }
}

.ourteam {
    padding-top: 120px;
    padding-bottom: 90px;
}

@media only screen and (max-width: 1200px) {
    .ourteam {
        padding-top: 110px;
        padding-bottom: 50px;
    }
}

.ourteam__title {
    text-align: center;
    margin-bottom: 50px;
}

@media only screen and (max-width: 992px) {
    .ourteam__title {
        margin-bottom: 40px;
    }
}

.ourteam__grid {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 410px 410px 410px;
    grid-template-columns: 410px 410px 410px;
    grid-auto-rows: 470px;
    gap: 30px;
}

@media only screen and (max-width: 1400px) {
    .ourteam__grid {
        -ms-grid-columns: 32% 32% 32%;
        grid-template-columns: 32% 32% 32%;
        gap: 25px;
    }
}

@media only screen and (max-width: 1200px) {
    .ourteam__grid {
        gap: 19px;
        grid-auto-rows: 340px;
    }
}

@media only screen and (max-width: 992px) {
    .ourteam__grid {
        gap: 14px;
        grid-auto-rows: 250px;
    }
}

@media only screen and (max-width: 767px) {
    .ourteam__grid {
        gap: 9px;
        grid-auto-rows: 180px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid {
        -ms-grid-columns: 80%;
        grid-template-columns: 80%;
        grid-auto-rows: 350px;
    }
}

@media only screen and (max-width: 380px) {
    .ourteam__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        gap: 15px;
    }
}

.ourteam__grid h3 {
    font-size: 26px;
    color: #fff;
    z-index: 1;
}

@media only screen and (max-width: 1200px) {
    .ourteam__grid h3 {
        font-size: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .ourteam__grid h3 {
        font-size: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .ourteam__grid h3 {
        font-size: 15px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid h3 {
        font-size: 20px;
    }
}

.ourteam__grid p {
    font-size: 18px;
    color: #e6e6e6;
    z-index: 1;
}

@media only screen and (max-width: 1200px) {
    .ourteam__grid p {
        font-size: 16px;
    }
}

@media only screen and (max-width: 992px) {
    .ourteam__grid p {
        font-size: 13px;
    }
}

@media only screen and (max-width: 767px) {
    .ourteam__grid p {
        font-size: 12px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid p {
        font-size: 14px;
    }
}

.ourteam__grid a {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 20px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 992px) {
    .ourteam__grid a {
        padding: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .ourteam__grid a {
        padding: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid a {
        padding: 15px;
    }
}

.ourteam__grid a img {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .ourteam__grid a img:nth-child(odd) {
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .ourteam__grid a img:nth-child(even) {
        width: 80px;
        height: 30px;
        right: 150px;
    }

@media only screen and (max-width: 992px) {
    .ourteam__grid a img:nth-child(even) {
        width: 50px;
        height: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid a img:nth-child(even) {
        height: 30px;
        width: 80px;
    }
}

.ourteam__grid a:hover img {
    opacity: 1;
    visibility: inherit;
}

    .ourteam__grid a:hover img:nth-child(even) {
        width: 130px;
        right: 30px;
    }

@media only screen and (max-width: 992px) {
    .ourteam__grid a:hover img:nth-child(even) {
        width: 80px;
        right: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .ourteam__grid a:hover img:nth-child(even) {
        right: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .ourteam__grid a:hover img:nth-child(even) {
        width: 130px;
        right: 30px;
    }
}

.team--line {
    border: 1px solid #e6e6e6;
    max-width: 1290px;
    width: 100%;
}

@media only screen and (max-width: 1400px) {
    .team--line {
        width: 99%;
    }
}

.teams {
    padding-top: 90px;
    padding-bottom: 130px;
}

@media only screen and (max-width: 1200px) {
    .teams {
        padding-top: 50px;
        padding-bottom: 100px;
    }
}

@media only screen and (max-width: 992px) {
    .teams {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.teams__grid {
    display: -ms-grid;
    display: grid;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-grid-columns: 300px 300px 300px 300px;
    grid-template-columns: 300px 300px 300px 300px;
    -ms-grid-rows: 350px 350px;
    grid-template-rows: 350px 350px;
    gap: 30px;
}

@media only screen and (max-width: 1400px) {
    .teams__grid {
        -ms-grid-columns: 23% 23% 23% 23%;
        grid-template-columns: 23% 23% 23% 23%;
    }
}

@media only screen and (max-width: 1200px) {
    .teams__grid {
        -ms-grid-rows: 255px 255px;
        grid-template-rows: 255px 255px;
        gap: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .teams__grid {
        -ms-grid-rows: 195px 195px;
        grid-template-rows: 195px 195px;
        gap: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .teams__grid {
        -ms-grid-rows: 145px 145px;
        grid-template-rows: 145px 145px;
    }
}

@media only screen and (max-width: 576px) {
    .teams__grid {
        -ms-grid-columns: 48% 48%;
        grid-template-columns: 48% 48%;
        -ms-grid-rows: 250px 250px 250px;
        grid-template-rows: 250px 250px 250px;
        gap: 10px;
    }
}

@media only screen and (max-width: 400px) {
    .teams__grid {
        -ms-grid-rows: 175px 175px 175px;
        grid-template-rows: 175px 175px 175px;
    }
}

.teams__grid a {
    padding: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 992px) {
    .teams__grid a {
        padding: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .teams__grid a {
        padding: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .teams__grid a {
        padding: 15px;
    }
}

.teams__grid a:hover {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

@media only screen and (max-width: 576px) {
    .teams__grid a:nth-child(n + 7) {
        display: none;
    }
}

.teams__grid h3 {
    font-size: 22px;
    color: #fff;
    z-index: 1;
}

@media only screen and (max-width: 1200px) {
    .teams__grid h3 {
        font-size: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .teams__grid h3 {
        font-size: 16px;
    }
}

@media only screen and (max-width: 767px) {
    .teams__grid h3 {
        font-size: 14px;
    }
}

@media only screen and (max-width: 576px) {
    .teams__grid h3 {
        font-size: 16px;
    }
}

.teams__grid p {
    font-size: 18px;
    color: #e6e6e6;
    z-index: 1;
}

@media only screen and (max-width: 1200px) {
    .teams__grid p {
        font-size: 16px;
    }
}

@media only screen and (max-width: 992px) {
    .teams__grid p {
        font-size: 13px;
    }
}

@media only screen and (max-width: 767px) {
    .teams__grid p {
        font-size: 12px;
    }
}

@media only screen and (max-width: 576px) {
    .teams__grid p {
        font-size: 14px;
    }
}

.formteam {
    padding-bottom: 90px;
}

@media only screen and (max-width: 767px) {
    .formteam {
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 576px) {
    .formteam__container {
        padding: 0;
    }
}

.formteam__wrap {
    padding: 100px 80px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}

    .formteam__wrap::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.6);
        z-index: 1;
    }

    .formteam__wrap .content {
        position: relative;
        z-index: 2; /* Контент поверх затемнения */
    }

@media only screen and (max-width: 1200px) {
    .formteam__wrap {
        padding: 70px 40px;
    }
}

@media only screen and (max-width: 992px) {
    .formteam__wrap {
        padding: 70px 25px;
    }
}

@media only screen and (max-width: 576px) {
    .formteam__wrap {
        padding: 70px 15px;
    }
}

.formteam__wrap h2 {
    font-size: 30px;
    color: #fff;
    margin-bottom: 40px;
}

@media only screen and (max-width: 1200px) {
    .formteam__wrap h2 {
        font-size: 28px;
        margin-bottom: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .formteam__wrap h2 {
        font-size: 26px;
    }
}

@media only screen and (max-width: 767px) {
    .formteam__wrap h2 {
        font-size: 24px;
        margin-bottom: 30px;
    }
}

.formteam__wrap p {
    font-size: 18px;
    color: #fff;
    font-weight: 400;
    max-width: 550px;
    margin-bottom: 50px;
}

@media only screen and (max-width: 992px) {
    .formteam__wrap p {
        font-size: 16px;
        margin-bottom: 40px;
    }
}

@media only screen and (max-width: 767px) {
    .formteam__wrap p {
        margin-bottom: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .formteam__wrap p {
        margin-bottom: 20px;
    }
}

.formteam__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media only screen and (max-width: 350px) {
    .formteam__form {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.person {
    padding-top: 120px;
    padding-bottom: 30px;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .person {
        padding-bottom: 15px;
    }
}

@media only screen and (max-width: 480px) {
    .person {
        padding-top: 0;
        padding-bottom: 10px;
    }
}

.person__container {
    display: flex;
    gap: 150px;
}

@media only screen and (max-width: 1201px) {
    .person__container {
        gap: 70px;
    }
}

.person__info {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 34px;
}

.person__text {
    text-align: left;
}

.mobile_person__text {
    display: none;
}

    .mobile_person__text h1 {
        text-transform: uppercase;
        color: #ffffff !important;
    }

    .mobile_person__text p {
        color: #ffffff !important;
    }

@media only screen and (max-width: 992px) {
    .person__container {
        flex-direction: column;
        gap: unset;
    }

    .person__img {
        position: relative;
    }

    .mobile_person__text {
        position: absolute;
        display: block;
        z-index: 40;
        bottom: 70px;
        left: 48px;
    }

    .person__info .team--line {
        display: none;
    }

    .person__text {
        display: none;
    }

    .person__social {
        align-items: center;
    }
}

@media only screen and (max-width: 576px) {
    .person__container {
        padding: 0;
    }
}

.person__title {
    text-align: left;
    margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
    .person__title {
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 480px) {
    .person__title {
        text-align: left;
        color: #fff;
    }
}

.person__subtitle {
    font-size: 22px;
    color: #b2b2b2;
    text-align: left;
}

@media only screen and (max-width: 1200px) {
    .person__subtitle {
        font-size: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .person__subtitle {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .person__subtitle {
        font-size: 16px;
    }
}

@media only screen and (max-width: 480px) {
    .person__subtitle {
        text-align: left;
        color: #fff;
    }
}

.person__img {
    flex: 1;
    align-items: center;
    display: flex;
    overflow: hidden;
    justify-content: flex-end;
    margin: auto;
    margin-bottom: 35px;
}

@media only screen and (max-width: 1200px) {
    .person__img {
        width: 80%;
        height: auto;
    }
}

@media only screen and (max-width: 767px) {
    .person__img {
        width: 100%;
        margin-bottom: 15px;
    }
}

.person__img img {
    max-width: 416px;
    max-height: 480px;
}

.person__social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    flex-direction: column;
    gap: 20px;
}

    .person__social p {
        color: inherit;
        font-size: 24px;
        font-weight: 600;
    }

    .person__social path,
    .person__social svg {
        fill: #000;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.person__contacts_tg,
.person__contacts_whatsApp {
    border: 1px solid #D9D3CA;
    border-radius: 5px;
    padding: 3px;
}

.person__social_channel_link {
    border: 1px solid #D9D3CA;
    border-radius: 5px;
    width: fit-content !important;
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.person__social a {
    color: inherit;
    text-decoration: none;
    width: unset;
    height: unset;
    font-size: 24px;
}

.object__container {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.person__contacts {
    display: flex;
    gap: 25px;
}

.object {
    padding-top: 90px;
    padding-bottom: 90px;
}

@media only screen and (max-width: 992px) {
    .person__social p {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    .object {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.object h2 {
    font-family: Rubik, sans-serif;
    color: #1f1f1f;
    font-size: 40px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 50px;
}

@media only screen and (max-width: 1200px) {
    .object h2 {
        font-size: 35px;
        margin-bottom: 40px;
    }
}

@media only screen and (max-width: 992px) {
    .object h2 {
        font-size: 25px;
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .object h2 {
        margin-bottom: 15px;
    }
}

.object__grid {
    row-gap: 20px;
    column-gap: 20px;
    display: grid;
    -ms-grid-columns: 24% 24% 24% 24%;
    grid-template-columns: 24% 24% 24% 24%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* Если 1 элемент — одна колонка */
object .object__grid:has(> :only-child) {
    grid-template-columns: 1fr;
}

/* Если 2 элемента — две колонки */
.object__grid:has(> :nth-child(2):last-child) {
    grid-template-columns: 1fr 1fr;
}

/* Если 3 элемента — три колонки */
.object__grid:has(> :nth-child(2):last-child) {
    grid-template-columns: 1fr 1fr 1fr;
}

@media only screen and (max-width: 1320px) {
    .object__grid {
        -ms-grid-columns: 40% 40%;
        grid-template-columns: 40% 40%;
        gap: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .object__grid {
        -ms-grid-columns: 50% 50%;
        grid-template-columns: 50% 50%;
    }
}

@media only screen and (max-width: 767px) {
    .object__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        gap: 20px;
    }
}

.object__item {
    max-width: 350px;
    height: min-content;
    overflow: hidden;
    width: 100%;
    cursor: pointer;
    z-index: 1;
    transition: box-shadow 0.3s ease;
    overflow: hidden; /* обрезает всё, что выходит */
    position: relative; /* чтобы abs-потомки ограничивались карточкой */
}

    .object__item:hover {
        box-shadow: 0 10px 10px rgba(0, 0, 0, 0.3);
    }

.highlight {
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.3);
}

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

    .object__slider img {
        width: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }

.object__pagination {
    position: absolute;
    bottom: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    z-index: 1;
    gap: 5px;
}

    .object__pagination span {
        display: block;
        width: 7px;
        height: 7px;
        background: rgba(255, 255, 255, 0.5);
        border-radius: 50%;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .object__pagination .swiper-pagination-bullet-active {
        background-color: #fff;
    }

.object__next,
.object__prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    z-index: 1;
}

.object__next {
    right: 15px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.object__prev {
    left: 15px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.object__info {
    border: 1px solid #e6e6e6;
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 8px;
    background: #fff;
}

    .object__info h4 {
        color: #e16f0b;
        font-size: 16px;
        font-weight: 600;
    }

    .object__info h5 {
        font-size: 16px;
        color: #474b4f;
        font-weight: 400;
    }

    .object__info h6 {
        font-size: 16px;
        color: #474b4f;
        font-weight: 600;
    }

.object__info_house {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
}

    .object__info_house p {
        font-size: 14px;
        color: #b2b2b2;
        font-weight: 400;
    }

.object__info_person {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.object__info_social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
}

    .object__info_social a {
        display: block;
        height: 18px;
    }

.agent_social_icon {
    width: 18px;
    height: 18px;
}

.agent__social_number {
    font-size: 14px;
}

.object__info_social a:hover path,
.object__info_social a:hover svg {
    fill: #ffb319;
}

.object__info_social path,
.object__info_social svg {
    fill: #000;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

.object__info_social svg {
    width: 100%;
    height: 100%;
}

.type {
    padding-top: 120px;
    padding-bottom: 90px;
    font-size: 18px;
    color: #474b4f;
    text-align: center;
}

@media only screen and (max-width: 1200px) {
    .type {
        padding-top: 110px;
        padding-bottom: 60px;
        font-size: 16px;
    }
}

@media only screen and (max-width: 992px) {
    .type {
        font-size: 14px;
    }
}

@media only screen and (max-width: 576px) {
    .type {
        padding-top: 80px;
    }
}

.type__title {
    text-align: center;
    margin-bottom: 15px;
}

@media only screen and (max-width: 992px) {
    .type__title {
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 1200px) {
    .type__title br {
        display: none;
    }
}

.type__subtitle {
    text-align: center;
    font-size: 22px;
    color: #b2b2b2;
    margin-bottom: 45px;
}

@media only screen and (max-width: 1200px) {
    .type__subtitle {
        margin-bottom: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .type__subtitle {
        font-size: 18px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 1200px) {
    .type__subtitle br {
        display: none;
    }
}

.type__subtitle a {
    color: #e16f0b;
}

.type__grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 410px 410px 410px;
    grid-template-columns: 410px 410px 410px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 30px;
}

@media only screen and (max-width: 1400px) {
    .type__grid {
        -ms-grid-columns: 32% 32% 32%;
        grid-template-columns: 32% 32% 32%;
        gap: 23px;
    }
}

@media only screen and (max-width: 1200px) {
    .type__grid {
        gap: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .type__grid {
        gap: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .type__grid {
        -ms-grid-columns: 48% 48%;
        grid-template-columns: 48% 48%;
    }
}

@media only screen and (max-width: 576px) {
    .type__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
    }
}

.type__wrap {
    padding: 15px;
}

@media only screen and (max-width: 1200px) {
    .type__wrap {
        padding: 10px;
    }
}

.type__item {
    border: 1px solid #e6e6e6;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .type__item:hover {
        -webkit-transform: scale(1.02);
        -ms-transform: scale(1.02);
        transform: scale(1.02);
        -webkit-box-shadow: 0 0 15px #6b6b6b;
        box-shadow: 0 0 15px #6b6b6b;
    }

.type__city {
    color: #e16f0b;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .type__city {
        font-size: 20px;
        margin-bottom: 10px;
    }
}

.type__img {
    display: block;
}

    .type__img img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }

.turnkey {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.turnkey__title {
    padding-top: 550px;
    padding-bottom: 120px;
    text-align: center;
    font-weight: 900;
    color: #fff;
}

@media only screen and (max-width: 1200px) {
    .turnkey__title {
        padding-top: 400px;
        padding-bottom: 80px;
    }
}

@media only screen and (max-width: 992px) {
    .turnkey__title {
        padding-top: 350px;
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 767px) {
    .turnkey__title {
        padding-top: 300px;
    }
}

@media only screen and (max-width: 576px) {
    .turnkey__title {
        text-align: start;
    }
}

.sliderkey {
    padding: 90px 0;
}

@media only screen and (max-width: 992px) {
    .sliderkey {
        padding: 50px 0;
    }
}

.sliderkey__wrap {
    padding: 0 30px;
    position: relative;
}

@media only screen and (max-width: 576px) {
    .sliderkey__wrap {
        padding: 0;
    }
}

.sliderkey__slide {
    height: 820px;
    width: 100vw;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

@media only screen and (max-width: 1200px) {
    .sliderkey__slide {
        height: 620px;
    }
}

@media only screen and (max-width: 992px) {
    .sliderkey__slide {
        height: 480px;
    }
}

@media only screen and (max-width: 767px) {
    .sliderkey__slide {
        height: 380px;
    }
}

@media only screen and (max-width: 576px) {
    .sliderkey__slide {
        height: 310px;
    }
}

.sliderkey__txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    bottom: 100px;
    left: 100px;
    z-index: 1;
}

@media only screen and (max-width: 992px) {
    .sliderkey__txt {
        bottom: 50px;
        left: 60px;
    }
}

@media only screen and (max-width: 576px) {
    .sliderkey__txt {
        bottom: 20px;
        left: 20px;
    }
}

.sliderkey__txt p:nth-child(3n) {
    margin-bottom: 30px;
}

@media only screen and (max-width: 992px) {
    .sliderkey__txt p:nth-child(3n) {
        margin-bottom: 20px;
    }
}

.sliderkey__title {
    font-size: 30px;
    color: #fff;
    font-family: Rubik, sans-serif;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .sliderkey__title {
        font-size: 26px;
    }
}

@media only screen and (max-width: 992px) {
    .sliderkey__title {
        font-size: 24px;
    }
}

.sliderkey__p {
    font-size: 18px;
    color: #fff;
    font-family: Rubik, sans-serif;
    margin-bottom: 5px;
}

@media only screen and (max-width: 992px) {
    .sliderkey__p {
        font-size: 16px;
    }
}

.sliderkey__slider {
    overflow: hidden;
    position: relative;
    margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
    .sliderkey__slider {
        margin-bottom: 15px;
    }
}

.sliderkey__slider img {
    width: 100%;
}

.sliderkey__next,
.sliderkey__prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    z-index: 1;
    width: 50px;
    height: 50px;
    background: #3c3c3c;
    -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border-radius: 50%;
}

@media only screen and (max-width: 576px) {
    .sliderkey__next,
    .sliderkey__prev {
        display: none;
    }
}

.sliderkey__next {
    right: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.sliderkey__prev {
    left: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

.sliderkey__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 30px;
}

@media only screen and (max-width: 767px) {
    .sliderkey__text {
        gap: 20px;
    }
}

@media only screen and (max-width: 576px) {
    .sliderkey__text {
        padding: 0 15px;
    }
}

.sliderkey__text p {
    font-size: 20px;
    color: #474b4f;
}

@media only screen and (max-width: 1200px) {
    .sliderkey__text p {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .sliderkey__text p {
        font-size: 16px;
    }
}

.keyperson {
    padding: 80px 0;
}

@media only screen and (max-width: 992px) {
    .keyperson {
        padding: 50px 0;
    }
}

.keyperson__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 576px) {
    .keyperson__container {
        padding: 0;
    }
}

.keyperson__title {
    text-transform: uppercase;
    color: #474b4f;
    text-align: center;
}

.keyperson__subtitle {
    text-transform: uppercase;
    color: #e16f0b;
    margin-bottom: 40px;
    text-align: center;
}

.keyperson__img {
    width: 45%;
}

@media only screen and (max-width: 992px) {
    .keyperson__img {
        width: 50%;
    }
}

@media only screen and (max-width: 767px) {
    .keyperson__img {
        width: 60%;
    }
}

@media only screen and (max-width: 576px) {
    .keyperson__img {
        width: 100%;
    }
}

.keyperson__img img {
    width: 100%;
    height: 100%;
}

.keyperson__social {
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

    .keyperson__social path,
    .keyperson__social svg {
        fill: #000;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.keyperson__social_number {
    color: #000;
    font-size: 16px;
}

    .keyperson__social_number:hover {
        color: #ffb319;
    }

@media only screen and (max-width: 576px) {
    .keyperson__social_number {
        display: none !important;
    }
}

.keyperson__social_tell {
    display: none !important;
}

@media only screen and (max-width: 576px) {
    .keyperson__social_tell {
        display: block !important;
    }
}

.keyperson__social a {
    display: block;
}

    .keyperson__social a:hover path,
    .keyperson__social a:hover svg {
        fill: #ffb319;
    }

    .keyperson__social a svg {
        width: 100%;
    }

.houselist {
    padding: 0 0 90px 0;
    position: relative;
}

@media only screen and (max-width: 1200px) {
    .houselist {
        padding: 0 0 50px 0;
    }
}

@media only screen and (max-width: 576px) {
    .houselist {
        padding: 15px 0;
    }
}

.houselist--active {
    padding: 0;
}

    .houselist--active .houselist__wrap_text {
        display: none;
    }

    .houselist--active .houselist__grid {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-top: 250px;
        margin-bottom: 0;
    }

    .houselist--active .object__item {
        display: none;
    }

    .houselist--active .object__item--mobile {
        display: block;
    }

.object__slide img {
    height: 250px;
}

#map-card-container .object__slide img {
    height: 160px;
}

.houselist--active .houselist__number {
    display: none;
}

.houselist__container {
    display: -webkit-box;
    display: -ms-flexbox;
    flex-direction: row-reverse;
    position: relative;
    display: flex;
    gap: 30px;
}

@media only screen and (max-width: 992px) {
    .houselist__container {
        align-items: center;
        justify-content: center;
    }
}


.houselist__wrap {
    margin-right: clamp(620px, 30vw, 1500px);
}

#map {
    position: relative;
    min-height: 600px;
}

#map-card-container {
    position: absolute;
    z-index: 9999;
    width: 330px;
    height: 332px;
    bottom: 0;
    left: 50%;
    pointer-events: none;
    opacity: 0;
    transition: transform 0.4s ease-in-out;
    transform: translateX(-50%) translateY(100%);
}

    #map-card-container.active {
        transform: translateX(-50%) translateY(0);
        opacity: 1;
        pointer-events: auto;
    }

.houselist .houselist__map #map-card-container .object__item {
    display: unset;
}

#map-card-container .object__info {
    gap: unset;
    padding: 10px;
}

.houselist__wrap_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #1f1f1f;
    margin: 15px 0 15px 0;
}

@media only screen and (max-width: 576px) {
    .houselist__wrap_text {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: space-around;
        margin: 0 0 10px 0;
    }
}

.houselist__wrap_text img {
    margin-bottom: 3px;
}

.houselist__wrap_text label {
    margin-bottom: 0;
}

.houselist__wrap_text select {
    border: none;
    -webkit-appearance: none;
    appearance: none;
}

select#sort {
    border: 1px solid rgba(230, 230, 230, 0.5);
    font-size: inherit;
    color: #2b99eb;
    padding: 5px 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 200px;
}

.houselist__grid {
    display: grid;
    display: -ms-grid;
    -ms-grid-columns: 50% 50%;
    grid-template-columns: 50% 50%;
    gap: 20px;
    -webkit-box-pack: stretch;
    -ms-flex-pack: stretch;
    justify-content: stretch;
    margin-right: 15px;
    margin-bottom: 20px;
}

.type-buttons {
    display: none;
}

.desktop-only {
    display: block;
}

.mobile-only {
    display: none;
}

/* по умолчанию показываем селект, кнопки скрыты */
.type-buttons {
    display: none;
}

.desktop-only {
    display: block;
}

.mobile-only {
    display: none;
}

/* на мобилках наоборот */
@media only screen and (max-width: 992px) {
    .desktop-only {
        display: none;
    }

    .mobile-only {
        display: flex;
    }

    .type-buttons button {
        height: 48px;
        width: auto;
        flex: 1;
        border: 1px solid #E6E6E6;
        background: #fff;
        border-radius: 4px;
    }

        .type-buttons button.active {
            background: #E16F0B;
            color: #fff;
            border-color: #E16F0B;
        }
}

.houselist__grid > :nth-child(odd) {
    justify-self: start; /* Левая часть */
}

.houselist__grid > :nth-child(even) {
    justify-self: end; /* Правая часть */
}

.houselist__grid .object__item {
    margin: unset;
}


@media only screen and (max-width: 992px) {
    .houselist__grid .object__item {
        width: 280px;
    }
}

@media only screen and (max-width: 767px) {
    .houselist__grid .object__item {
        flex: 0 0 100%;
        width: 100%;
    }
}

.houselist__map {
    position: fixed;
    top: 220px;
    height: calc(100vh - 95px);
    min-height: 600px;
    width: clamp(600px, 29vw, 900px);
}

@media only screen and (max-width: 1321px) {
    .houselist__wrap {
        margin-right: clamp(450px, 30vw, 1000px);
    }

    .houselist__map {
        width: clamp(430px, 30vw, 1000px);
    }
}

@media only screen and (max-width: 992px) {
    .houselist__map {
        display: none;
        position: unset;
        height: -webkit-fill-available;
        top: unset;
        right: unset;
        z-index: unset;
        width: unset;
    }
}

.houselist__map--active {
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

@media only screen and (max-width: 992px) {
    .houselist__map--active {
        position: unset;
    }
}

@media only screen and (max-width: 992px) {
    .houselist__map--active ~ .houselist__wrap {
        display: none !important;
    }

    .houselist__wrap {
        width: -webkit-fill-available;
    }
}


/* Убирает стрелочки в Chrome, Safari, Edge */
.housearch__value_input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

/* Убирает стрелочки в Firefox */
.housearch__value_input[type="number"] {
    -moz-appearance: textfield;
}

.houselist__map--active div {
    width: 100%;
    height: 100%;
}

.houselist__map div {
    width: 100%;
    height: 100%;
}

.houselist__map #map-card-container div {
    width: unset;
    height: unset;
}

.houselist__result {
    color: #b2b2b2;
}

@media only screen and (max-width: 992px) {
    .houselist__result {
        text-align: center;
    }
}

.houselist__number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

@media only screen and (max-width: 992px) {
    .houselist__number {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

@media only screen and (max-width: 576px) {
    .houselist__number {
        gap: 5px;
    }
}

.houselist__number a,
.houselist__number span {
    display: block;
    width: 50px;
    height: 50px;
    border: 1px solid #d2d2d2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    color: #1f1f1f;
}

@media only screen and (max-width: 576px) {
    .houselist__number a,
    .houselist__number span {
        width: 30px;
        height: 30px;
    }
}

.houselist__number span {
    background: #e16f0b;
    -webkit-box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    border: none !important;
    color: #fff !important;
}

.houselist__number_prev {
    background: #e16f0b;
    -webkit-box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    border: none !important;
}

.houselist__number_next {
    background: #e16f0b;
    -webkit-box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    box-shadow: 0 4px 15px rgba(31, 31, 31, 0.15);
    border: none !important;
}

.housearch {
    background: #fff;
    padding-top: 120px;
}

@media only screen and (max-width: 1200px) {
    .housearch {
        padding-bottom: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .housearch {
        padding-top: 100px;
        padding-bottom: 15px;
        -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    }
}

@media only screen and (max-width: 767px) {
    .housearch {
        padding-bottom: 15px;
        padding-top: 90px;
    }
}

@media only screen and (max-width: 576px) {
    .housearch {
        padding-top: 70px;
    }
}

.housearch__grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (184px) [7];
    grid-template-columns: repeat(7, 184px);
    grid-auto-rows: 80px;
    z-index: 40;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
}

@media only screen and (max-width: 1350px) {
    .housearch__grid {
        -ms-grid-columns: (184px) [6];
        grid-template-columns: repeat(6, 184px);
    }
}

@media only screen and (max-width: 1200px) {
    .housearch__grid {
        -ms-grid-columns: (184px) [5];
        grid-template-columns: repeat(5, 184px);
        -ms-grid-rows: 50px 80px;
        grid-template-rows: 50px 80px;
    }
}

@media only screen and (max-width: 992px) {
    .housearch__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        -ms-grid-rows: (-webkit-max-content) [4];
        -ms-grid-rows: (max-content) [4];
        grid-template-rows: repeat(4, -webkit-max-content);
        grid-template-rows: repeat(4, max-content);
        position: static;
        -webkit-box-shadow: none;
        box-shadow: none;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

.housearch__select {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 30px;
    gap: 30px;
    -webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
    -ms-flex-pack: distribute;
    justify-content: space-around;
    position: absolute;
    border-radius: 0 0 10px 10px;
    display: none;
    background: #fff;
    border-top: 1px solid rgba(230, 230, 230, 0.5);
    z-index: 100;
    width: 920px;
    height: 80px;
    left: 0;
    top: 80px;
}

@media only screen and (max-width: 1200px) {
    .housearch__select {
        top: 170px;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
}

@media only screen and (max-width: 992px) {
    .housearch__select {
        gap: 10px;
        padding: 0;
        -webkit-box-shadow: none;
        box-shadow: none;
        width: 100%;
        border-bottom: none;
        position: static;
        opacity: 1;
        visibility: inherit;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        border: none;
        left: 0;
        -webkit-transform: translate(0);
        -ms-transform: translate(0);
        transform: translate(0);
    }
}

.housearch__select p {
    cursor: pointer;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    font-family: Rubik, sans-serif;
    font-size: 16px;
    color: #b2b2b2;
}

    .housearch__select p:hover {
        color: #eabc45;
    }

@media only screen and (max-width: 480px) {
    .housearch__select p {
        font-size: 14px;
    }
}

.housearch__house {
    border-right: 1px solid rgba(230, 230, 230, 0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #fff;
    padding: 20px;
    -webkit-box-shadow: 10px 10px 25px rgba(0, 0, 0, 0.05);
    box-shadow: 10px 10px 25px rgba(0, 0, 0, 0.05);
}

@media only screen and (max-width: 992px) {
    .housearch__house {
        border: 1px solid rgba(230, 230, 230, 0.5);
        -webkit-box-shadow: none;
        box-shadow: none;
    }
}

.housearch__house span {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

.housearch__house h6 {
    font-size: 14px;
    color: #b2b2b2;
    font-weight: 400;
}

.housearch__house h5 {
    font-size: 20px;
    color: #1f1f1f;
}

@media only screen and (max-width: 1350px) {
    .housearch__house_mobile {
        display: none;
    }
}

.housearch__value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 45%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media only screen and (max-width: 992px) {
    .housearch__value {
        margin-bottom: 5px;
        justify-content: center;
        align-items: center;
        display: flex;
        gap: 10px;
        height: min-content;
        flex-direction: column;
    }
}

@media only screen and (max-width: 767px) {
    .housearch__value {
        width: 100%;
    }
}

.housearch__value_lower,
.housearch__value_upper {
    width: 160px;
    height: 35px;
    border: 1px solid #e6e6e6;
    border-radius: 5px;
    display: -webkit-box;
    padding: 5px;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 16px;
    color: #000;
}

.housearch__value_input {
    border: none;
    width: 110px;
}

@media only screen and (max-width: 400px) {
    .housearch__value_input {
        width: 83px;
    }

    .housearch__value_lower,
    .housearch__value_upper {
        width: 140px;
    }
}

.housearch__value_inputt {
    border: none;
    width: 100px;
}

@media only screen and (max-width: 400px) {
    .housearch__value_inputt {
        width: 80px;
    }
}

.housearch__hr {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: 0 !important;
    width: 12px;
    border: 1px solid #000;
}

.accordionr:last-child {
    margin-bottom: 0;
}

.accordionr__header {
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    position: relative;
    cursor: pointer;
    font-weight: 700;
}

    .accordionr__header span {
        width: 12px;
        height: 12px;
        display: block;
        border-top: 2px solid #d2d2d2;
        border-left: 2px solid #d2d2d2;
        position: absolute;
        top: 15px;
        right: -5px;
        -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

.accordionr__content {
    color: #b5acac;
    height: 80px;
    display: none;
}

@media only screen and (max-width: 992px) {
    .accordionr__content {
        height: 0;
        border-radius: 0;
        opacity: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
        overflow: hidden;
    }

        .accordionr__content p {
            margin-bottom: 3px;
        }
}

@media only screen and (max-width: 992px) {
    .accordionr--active .accordionr__header {
        margin-bottom: 15px;
    }
}

.accordionr--active .accordionr__header span {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.accordionr--active .accordionr__content {
    opacity: 1;
    min-height: 70px;
    padding: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.filter__header {
    display: none;
}

@media only screen and (max-width: 992px) {
    .accordionr--active .accordionr__content {
        min-height: 100px;
    }

    .filter__header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        cursor: pointer;
        font-weight: 700;
    }
}

.filter__title {
    border: none;
    background: 0 0;
}

@media only screen and (max-width: 992px) {
    .filter__title {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 5px;
        font-size: 16px;
        font-weight: 400;
    }
}

@media only screen and (max-width: 992px) {
    .filter__content {
        display: none;
        padding-top: 20px;
    }
}

.filter__content--active {
    display: block;
}

@media only screen and (max-width: 992px) {
    .filter__btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .btn--map, .btn--list {
        display: flex;
        gap: 5px;
        align-items: center;
        font-size: 16px;
        justify-content: center;
    }

    /* По умолчанию скрыта кнопка "список" */
    .filter__btn .btn--list {
        display: none;
    }

    /* Когда активна карта — прячем кнопку "карта", показываем кнопку "список" */
    .houselist__map--active .btn--map {
        display: none;
    }

    .houselist__map--active .btn--list {
        display: inline-flex;
    }
}

.filters {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: flex-end;
    font-family: sans-serif;
}

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

    .filter label {
        font-size: 19px;
        color: #898989;
        margin-bottom: 5px;
        text-align: left;
    }

select {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: 0;
    color: #1F1F1F;
    padding-left: 10px;
}

select {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    color: #1F1F1F;
    padding: 8px 40px 8px 10px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: url('/img/arrow-down.png') no-repeat right 10px center;
    background-color: white;
}

.type-select {
    width: 180px;
}

.property-select {
    width: 220px;
}

.purpose {
    display: none;
}

.purpose-select {
    width: 220px;
}

.business-purpose {
    display: none;
}

.business-purpose-select {
    width: 220px;
}

@media only screen and (max-width: 992px) {
    .filter {
        width: 100%;
    }

    .type-select {
        width: stretch;
    }

    .property-select {
        width: stretch
    }

    .purpose-select {
        width: stretch
    }


    .business-purpose-select {
        width: stretch
    }
}

select,
input[type="number"] {
    width: 120px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    height: 48px;
}

    select option {
        color: #000;
    }

.range-group {
    display: flex;
    gap: 10px;
}

.input-with-floating-label {
    position: relative;
    flex: 1;
}

.filter input {
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 16px;
    line-height: 100%;
    height: 48px;
    letter-spacing: 0;
    color: #1F1F1F;
}

.input-with-floating-label input {
    width: 120px;
    padding: 18px 10px 6px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    box-sizing: border-box;
}

.floating-label {
    position: absolute;
    top: 4px;
    left: 10px;
    font-size: 11px;
    color: #999;
    background: white; /* фон, чтобы перекрывал рамку */
    padding: 0 4px;
    pointer-events: none; /* чтобы не мешал клику */
}

.rooms {
    display: flex;
}

    .rooms button {
        border: 1px solid #E6E6E6;
        background: #fff;
        cursor: pointer;
        font-size: 16px;
        width: 40px;
        height: 48px;
    }

        .rooms button + button {
            border-left: none;
        }

        .rooms button.active {
            background: #E16F0B;
            color: #fff;
            border-color: #E16F0B;
        }

        .rooms button:first-child {
            border-radius: 4px 0 0 4px;
        }

        .rooms button:last-child {
            border-radius: 0 4px 4px 0;
        }


@media only screen and (max-width: 992px) {
    .filter_container hr {
        margin: 0 10px;
        height: 20px;
        border: 1px solid #e6e6e6;
    }

    .filter_container {
        padding-right: 15px;
    }

        .filter_container .filter__title {
            padding-left: 0;
        }

    .input-with-floating-label input {
        width: 100%;
    }
}

.type-buttons button.sale-button {
    border-radius: 4px 0 0 4px;
}

.type-buttons button.rent-button {
    border-radius: 0 4px 4px 0;
}

.review {
    padding-top: 120px;
    padding-bottom: 90px;
}


.main-apartmets {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 20px 20px 20px;
    align-items: flex-start;
    justify-content: center;
}

    .main-apartmets .object__item {
        margin: unset;
    }

@media only screen and (max-width: 992px) {
    .review {
        padding-top: 100px;
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 576px) {
    .review {
        padding-top: 65px;
    }
}

.review__title {
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 10px;
}

@media only screen and (max-width: 1200px) {
    .review__title br {
        display: none;
    }
}

.review__subtitle {
    font-size: 22px;
    color: #b2b2b2;
    text-align: center;
}

    .review__subtitle.margin {
        margin-bottom: 40px;
    }

@media only screen and (max-width: 1200px) {
    .review__subtitle.margin {
        margin-bottom: 20px;
    }
}

.review__img {
    width: 90%;
    margin: auto;
    margin-bottom: 45px;
}

@media only screen and (max-width: 1200px) {
    .review__img {
        width: 100%;
    }
}

.review__img img {
    width: 100%;
    height: 688px;
}

@media (width <= 1321px) {
    .review__img img {
        height: 624px;
    }
}

@media (width <= 993px) {
    .review__img img {
        height: 492px;
    }
}

@media (width <= 767px) {
    .review__img img {
        height: 364px;
    }
}

@media (width <= 577px) {
    .review__img img {
        height: 475px;
    }
}

.review__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
}

@media only screen and (max-width: 576px) {
    .review__list {
        gap: 10px;
    }
}

.modal {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    min-width: 100vw;
    min-height: 100vh;
    padding: 10px 30px;
    z-index: 10000;
    background-color: rgba(26, 26, 29, 0.7);
    overflow: auto;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

    .modal.active {
        opacity: 1;
        visibility: visible;
    }

        .modal.active .modal__form {
            -webkit-transform: translate(0, 0);
            -ms-transform: translate(0, 0);
            transform: translate(0, 0);
            opacity: 1;
        }

.modal__close {
    position: fixed;
    right: 50px;
    top: 30px;
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    border: none;
    z-index: 10000;
    cursor: pointer;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    background-color: transparent;
}

@media only screen and (max-width: 992px) {
    .modal {
        padding: 10px;
    }
}

@media only screen and (max-width: 992px) {
    .modal__close {
        right: 25px;
        top: 25px;
    }
}

@media only screen and (max-width: 576px) {
    .modal__close {
        width: 30px;
        height: 30px;
        right: 10px;
        top: 10px;
    }
}

.modal__close:hover {
    outline: 0;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

    .modal__close:hover span {
        background: #ffb319;
    }

.modal__close span {
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #fff;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    border-radius: 4px;
    height: 22px;
    width: 3px;
}

    .modal__close span:first-child {
        -webkit-transform: translate(-50%, -50%) rotate(45deg);
        -ms-transform: translate(-50%, -50%) rotate(45deg);
        transform: translate(-50%, -50%) rotate(45deg);
    }

    .modal__close span:last-child {
        -webkit-transform: translate(-50%, -50%) rotate(-45deg);
        -ms-transform: translate(-50%, -50%) rotate(-45deg);
        transform: translate(-50%, -50%) rotate(-45deg);
    }

.modal__content {
    z-index: 1;
    width: 100%;
    max-width: 1300px;
    height: 100%;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 10px;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

.modal__content_img {
    height: auto;
}

.modal__content img {
    width: 100%;
}

.modal__content::after {
    border-radius: 20px;
}

@media only screen and (max-width: 576px) {
    .modal__content {
        padding: unset;
    }
}

.modal__content_video {
    width: 100%;
    height: 100vw;
}

    .modal__content_video iframe {
        width: 100%;
        height: 100%;
    }

.modal__content_map {
    width: 100%;
    height: 100vw;
}

    .modal__content_map div {
        width: 100%;
        height: 100%;
    }

.agent {
    padding: 90px 0;
}

@media only screen and (max-width: 1200px) {
    .agent {
        padding: 50px 0;
    }
}

.agent__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
}

@media only screen and (max-width: 576px) {
    .agent__container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.agent__title {
    font-family: Rubik, sans-serif;
    font-size: 30px;
    color: #1f1f1f;
    font-weight: 400;
    margin-bottom: 45px;
}

@media only screen and (max-width: 1200px) {
    .agent__title {
        margin-bottom: 35px;
    }
}

.agent__block {
    width: 50%;
}

@media only screen and (max-width: 576px) {
    .agent__block {
        width: 100%;
    }
}

.agent__house {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-bottom: 1px solid #e6e6e6;
}

.agent__house--margin {
    margin-bottom: 50px;
}

.agent__house span {
    font-size: 18px;
    color: #b2b2b2;
    line-height: 50px;
}

@media only screen and (max-width: 1200px) {
    .agent__house span {
        font-size: 16px;
        line-height: 45px;
    }
}

.agent__house span:nth-child(2n) {
    color: #000;
    font-family: Rubik, sans-serif;
    font-weight: 500;
}

.agent__benefits {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 15px;
}

    .agent__benefits p {
        font-family: Rubik, sans-serif;
        font-size: 18px;
        color: #000;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .agent__benefits img {
        max-width: 24px;
        margin-right: 10px;
    }

.agent__wrap {
    max-width: 360px;
    width: 100%;
    margin: auto;
}

@media only screen and (max-width: 576px) {
    .agent__wrap {
        max-width: unset;
    }
}

.agent__img {
    width: 100%;
    position: relative;
}

    .agent__img img {
        width: 100%;
        height: 100%;
    }

    .agent__img p {
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        left: 50%;
        position: absolute;
        color: #fff;
        font-weight: 400;
        width: 100%;
        text-align: center;
    }

.agent__img_title {
    font-family: Rubik, sans-serif;
    font-size: 24px;
    text-transform: uppercase;
    bottom: 25px;
}

.agent__img_subtitle {
    font-size: 16px;
    bottom: 5px;
}

.agent__social {
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

    .agent__social path,
    .agent__social svg {
        fill: #000;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

.floating__agent__social {
    position: fixed;
    bottom: 50px;
    right: 50px;
    gap: 10px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 9999;
    text-align: center;
    text-decoration: none;
}

.agent__social_number {
    color: #000;
    font-size: 16px;
}

    .agent__social_number:hover {
        color: #ffb319;
    }

.agent__social_tell {
    display: none !important;
}

@media only screen and (max-width: 576px) {
    .agent__social_tell {
        display: block !important;
    }

    .agent__social_number span {
        display: none !important;
    }
}

.agent__social a {
    display: block;
}

    .agent__social a:hover path,
    .agent__social a:hover svg {
        fill: #ffb319;
    }

    .agent__social a svg {
        width: 18px;
    }

@media only screen and (max-width: 576px) {
    .agent__social a svg {
        width: 22px;
    }
}

@media only screen and (max-width: 576px) {
    .floating__agent__social {
        gap: 5px;
        right: 8px;
    }
}

.desc {
    padding: 90px 0;
}

@media only screen and (max-width: 1200px) {
    .desc {
        padding: 50px 0;
    }
}

.desc__title {
    font-family: Rubik, sans-serif;
    font-size: 30px;
    color: #1f1f1f;
    font-weight: 400;
    margin-bottom: 45px;
}

@media only screen and (max-width: 1200px) {
    .desc__title {
        font-size: 24px;
        margin-bottom: 20px;
    }
}

.desc p {
    font-size: 18px;
    color: #474b4f;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .desc p {
        font-size: 16px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 992px) {
    .desc p {
        font-size: 14px;
    }
}

.desc p:last-child {
    margin-bottom: 0;
}

.connect {
    padding: 90px 0;
    font-size: 20px;
    color: #474b4f;
}

@media only screen and (max-width: 1200px) {
    .connect {
        padding: 50px 0;
    }
}

.connect p {
    margin-bottom: 15px;
    color: #474b4f;
}

    .connect p:last-child {
        margin-bottom: 0;
    }

@media only screen and (max-width: 992px) {

    .person__img img {
        max-width: 594px;
        max-height: 685px;
    }
}

@media only screen and (max-width: 576px) {

    .person__img img {
        max-width: 594px;
        max-height: 685px;
    }
}

@media only screen and (max-width: 1200px) {
    .connect p {
        font-size: 16px;
    }
}

.connect__title {
    font-family: Rubik, sans-serif;
    font-size: 30px;
    color: #1f1f1f;
    font-weight: 400;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .connect__title {
        font-size: 24px;
        margin-bottom: 20px;
    }
}

.connect__list {
    color: #1f1f1f;
    font-weight: 600;
}

.connect__form input {
    border: 1px solid #e6e6e6;
    padding: 5px;
}

.connect__form_name {
    width: 130px;
    height: 30px;
}

.connect__form_price {
    width: 80px;
    height: 30px;
}

.connect__form_date {
    width: 80px;
    height: 30px;
}

    .connect__form_date::-webkit-input-placeholder {
        font-size: 15px;
        color: #b2b2b2;
    }

    .connect__form_date::-moz-placeholder {
        font-size: 15px;
        color: #b2b2b2;
    }

    .connect__form_date:-ms-input-placeholder {
        font-size: 15px;
        color: #b2b2b2;
    }

    .connect__form_date::-ms-input-placeholder {
        font-size: 15px;
        color: #b2b2b2;
    }

    .connect__form_date::placeholder {
        font-size: 15px;
        color: #b2b2b2;
    }

.connect__form_tell {
    width: 140px;
    height: 30px;
}

.connect__form_text {
    width: 100%;
    height: 100px;
    padding: 5px;
    border: 1px solid #e6e6e6;
}

    .connect__form_text::-webkit-input-placeholder {
        color: #b2b2b2;
    }

    .connect__form_text::-moz-placeholder {
        color: #b2b2b2;
    }

    .connect__form_text:-ms-input-placeholder {
        color: #b2b2b2;
    }

    .connect__form_text::-ms-input-placeholder {
        color: #b2b2b2;
    }

    .connect__form_text::placeholder {
        color: #b2b2b2;
    }

.connect__thank {
    color: #e16f0b;
    font-size: 22px;
    font-weight: 700;
}

.connect__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 10px;
}

.connect__chat a:hover path,
.connect__chat a:hover svg {
    fill: #e16f0b;
}

.connect__chat path,
.connect__chat svg {
    fill: #474b4f;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
}

.connect__checkbox {
    height: 22px;
    margin-right: 10px;
}

.checkbox-custom {
    width: 22px;
    height: 22px;
    border: 1px solid #e6e6e6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

    .checkbox-custom:checked {
        border: 1px solid #e6e6e6;
    }

        .checkbox-custom:checked::after {
            content: url(/img/checked.png);
            height: 25px;
        }

.someobject {
    padding: 90px 0;
}

@media only screen and (max-width: 1200px) {
    .someobject {
        padding: 50px 0;
    }
}

.someobject__title {
    font-family: Rubik, sans-serif;
    font-size: 30px;
    color: #1f1f1f;
    font-weight: 400;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1200px) {
    .someobject__title {
        font-size: 24px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 1320px) {
    .someobject__title {
        text-align: center;
    }
}

.someobject__grid {
    display: -ms-grid;
    row-gap: 20px;
    column-gap: 20px;
    display: grid;
    -ms-grid-columns: 24% 24% 24% 24%;
    grid-template-columns: 24% 24% 24% 24%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media only screen and (max-width: 1320px) {
    .someobject__grid {
        -ms-grid-columns: 40% 40%;
        grid-template-columns: 40% 40%;
        gap: 25px;
    }
}

@media only screen and (max-width: 992px) {
    .someobject__grid {
        -ms-grid-columns: 50% 50%;
        grid-template-columns: 50% 50%;
    }
}

@media only screen and (max-width: 767px) {
    .someobject__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        gap: 20px;
    }
}

.contact {
    display: none;
    height: 40px;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 50px;
    background: #f0b389;
    position: -webkit-sticky;
    position: sticky;
    z-index: 1000;
    bottom: 0;
    width: 100%;
}

@media only screen and (max-width: 992px) {
    .houselist__wrap_text {
        -ms-flex-pack: distribute;
        margin: 15px 0 15px 0;
    }

    .filters {
        display: none;
        align-items: unset;
        flex-direction: column;
        margin-top: 15px;
        justify-content: space-between;
    }

    .houselist__grid {
        margin-right: unset;
    }

    .houselist__wrap {
        margin: unset;
        margin-right: unset;
    }
}

@media only screen and (max-width: 576px) {
    .houselist__wrap {
        margin-right: 15px;
    }
}

.houselist__wrap:has(.houselist__grid > :only-child) {
    margin-right: unset;
    width: -webkit-fill-available;
}

/* Если 1 элемент — одна колонка */
.houselist__grid:has(> :only-child) {
    grid-template-columns: 1fr;
}

@media only screen and (max-width: 767px) {
    .contact {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}

.contact svg {
    width: 20px;
}

    .contact svg:hover path {
        fill: #000;
    }

    .contact svg path {
        fill: #fff;
    }

.plan {
    padding-top: 120px;
    padding-bottom: 120px;
}

@media only screen and (max-width: 992px) {
    .plan {
        padding-top: 100px;
        padding-bottom: 50px;
    }
}

@media only screen and (max-width: 576px) {
    .plan {
        padding-top: 80px;
    }
}

.plan__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media only screen and (max-width: 576px) {
    .plan__container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 50px;
    }
}

.plan__block {
    width: 65%;
}

@media only screen and (max-width: 576px) {
    .plan__block {
        width: 100%;
    }
}

.plan__title {
    text-transform: uppercase;
    font-size: 30px;
    margin-bottom: 50px;
}

@media only screen and (max-width: 1200px) {
    .plan__title {
        font-size: 25px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 576px) {
    .plan__title {
        font-size: 22px;
        margin-bottom: 10px;
    }
}

.plan__title_swiper {
    margin-top: 50px;
    text-align: center;
    font-size: 24px;
    color: #474b4f;
    text-transform: uppercase;
    margin-bottom: 40px;
}

@media only screen and (max-width: 1200px) {
    .plan__title_swiper {
        font-size: 20px;
        margin-bottom: 20px;
        margin-top: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__title_swiper {
        font-size: 18px;
        margin-bottom: 10px;
        margin-top: 10px;
    }
}

.plan__title_swiper span {
    color: #e16f0b;
}

.plan__txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 22px;
    font-weight: 400;
    color: #474b4f;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .plan__txt {
        font-size: 20px;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__txt {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .plan__txt {
        font-size: 16px;
    }
}

.plan__txt a {
    color: #e16f0b;
}

.plan__txt img {
    width: 20px;
    height: 20px;
    margin-top: 5px;
    margin-right: 5px;
}

.plan__txt_between {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 520px;
    width: 100%;
    border-bottom: 1px solid #e6e6e6;
    font-size: 22px;
    color: #474b4f;
    line-height: 45px;
}

@media only screen and (max-width: 1200px) {
    .plan__txt_between {
        font-size: 20px;
        line-height: 35px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__txt_between {
        font-size: 18px;
    }
}

.plan__txt_between span:nth-child(2n) {
    color: #e16f0b;
}

.plan__subtitle {
    font-size: 22px;
    color: #474b4f;
    font-weight: 600;
    margin-bottom: 15px;
}

@media only screen and (max-width: 1200px) {
    .plan__subtitle {
        font-size: 20px;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__subtitle {
        font-size: 18px;
    }
}

.plan__wrap {
    position: relative;
}

.plan__slide {
    margin-top: auto;
    margin-bottom: auto;
}

.plan__slider {
    overflow: hidden;
    height: 400px;
}

@media only screen and (max-width: 1200px) {
    .plan__slider {
        height: 300px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__slider {
        height: 250px;
    }
}

@media only screen and (max-width: 767px) {
    .plan__slider {
        height: 200px;
    }
}

@media only screen and (max-width: 576px) {
    .plan__slider {
        height: 270px;
    }
}

.plan__slider img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.plan__pagination {
    position: absolute;
    bottom: -25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    z-index: 1;
    gap: 10px;
}

    .plan__pagination span {
        display: block;
        width: 7px;
        height: 7px;
        background: #d2d2d2;
        border-radius: 50%;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
    }

    .plan__pagination .swiper-pagination-bullet-active {
        background-color: #e16f0b;
    }

.plan__swipers {
    width: 33%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 50px;
}

@media only screen and (max-width: 992px) {
    .plan__swipers {
        gap: 40px;
    }
}

@media only screen and (max-width: 576px) {
    .plan__swipers {
        width: 100%;
    }
}

.plan__swipers_title {
    font-family: Rubik, sans-serif;
    color: #000;
    font-size: 24px;
    text-align: center;
    margin-bottom: 20px;
    text-transform: uppercase;
}

@media only screen and (max-width: 1200px) {
    .plan__swipers_title {
        font-size: 22px;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 992px) {
    .plan__swipers_title {
        font-size: 18px;
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 576px) {
    .plan__swipers_title {
        font-size: 24px;
    }
}

.planhouse__slide_plan img {
    -o-object-fit: contain;
    object-fit: contain;
    height: 500px;
}

.planhouse__wrap {
    position: relative;
}

.planhouse__slider {
    overflow: hidden;
}

    .planhouse__slider img {
        width: 100%;
    }

.planhouse__next,
.planhouse__prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    z-index: 1;
}

.planhouse__next {
    right: 20px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .planhouse__next {
        right: 0;
    }
}

.planhouse__prev {
    left: 20px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .planhouse__prev {
        left: 0;
    }
}

.planhouse__room {
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    left: 50%;
    top: -22px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    background: #e16f0b;
    color: #fff;
    font-weight: 400;
    font-family: Rubik, sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    padding: 10px 30px;
    z-index: 1;
}

@media only screen and (max-width: 992px) {
    .planhouse__room {
        padding: 10px 15px;
        font-size: 12px;
        top: -10px;
    }
}

@media only screen and (max-width: 767px) {
    .planhouse__room {
        padding: 3px;
    }
}

@media only screen and (max-width: 576px) {
    .planhouse__room {
        padding: 10px 30px;
    }
}

@media only screen and (max-width: 576px) {
    .service {
        padding-top: 30px;
    }
}

.service__banner img {
    width: 100%;
    height: 700px;
    -o-object-fit: cover;
    object-fit: cover;
}

@media only screen and (max-width: 576px) {
    .houselist__grid {
        -ms-grid-columns: 100%;
        grid-template-columns: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

        .houselist__grid > :nth-child(odd) {
            justify-self: center; /* Левая часть */
        }

        .houselist__grid > :nth-child(even) {
            justify-self: center; /* Правая часть */
        }
}

@media only screen and (max-width: 992px) {
    .service__banner img {
        height: auto;
        -o-object-fit: contain;
        object-fit: contain;
    }
}

.service__txt {
    text-align: center;
    padding-top: 40px;
    padding-bottom: 40px;
}

@media only screen and (max-width: 992px) {
    .service__txt {
        padding-top: 25px;
        padding-bottom: 25px;
    }
}

.service__subtitle {
    font-size: 30px;
    font-family: Rubik, sans-serif;
    text-transform: uppercase;
    margin-bottom: 40px;
}

@media only screen and (max-width: 992px) {
    .service__subtitle {
        font-size: 25px;
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .service__subtitle {
        font-size: 22px;
    }
}

@media only screen and (max-width: 767px) {
    .service__subtitle br {
        display: none;
    }
}

.service__text {
    font-size: 20px;
    margin-bottom: 30px;
}

@media only screen and (max-width: 992px) {
    .service__text {
        font-size: 16px;
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 992px) {
    .service__text br {
        display: none;
    }
}

.service__text--more {
    font-size: 24px;
    margin-bottom: 10px;
}

@media only screen and (max-width: 992px) {
    .service__text--more {
        font-size: 20px;
        margin-bottom: 5px;
    }
}

.service__title {
    margin-bottom: 10px;
}

@media only screen and (max-width: 992px) {
    .service__title {
        margin-bottom: 5px;
    }
}

.service__block_container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 15px;
}

@media only screen and (max-width: 1200px) {
    .service__block_container {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.service__item {
    width: 410px;
    border: 1px solid #e6e6e6;
    padding: 30px 10px 25px 10px;
    text-align: center;
    font-size: 18px;
}

@media only screen and (max-width: 1320px) {
    .service__item {
        width: 380px;
    }
}

@media only screen and (max-width: 992px) {
    .service__item {
        width: 48%;
    }
}

@media only screen and (max-width: 767px) {
    .service__item {
        width: 100%;
    }
}

.service__item_img {
    margin-bottom: 30px;
}

    .service__item_img img {
        width: 70px;
        height: 70px;
    }

.service__container {
    position: relative;
    padding: 0 30px;
}

.service__wrap {
    padding-bottom: 90px;
    padding-top: 70px;
}

@media only screen and (max-width: 992px) {
    .service__wrap {
        padding-top: 40px;
        padding-bottom: 50px;
    }
}

.service__slider {
    overflow: hidden;
    height: 390px;
}

@media only screen and (max-width: 1200px) {
    .service__slider {
        height: 300px;
    }
}

@media only screen and (max-width: 992px) {
    .service__slider {
        height: 250px;
    }
}

@media only screen and (max-width: 767px) {
    .service__slider {
        height: 200px;
    }
}

@media only screen and (max-width: 576px) {
    .service__slider {
        height: 270px;
    }
}

.service__slider img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.service__next,
.service__prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    z-index: 1;
    width: 50px;
    height: 50px;
    background: #3c3c3c;
    -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border-radius: 50%;
}

@media only screen and (max-width: 767px) {
    .service__next,
    .service__prev {
        width: 40px;
        height: 40px;
    }
}

@media only screen and (max-width: 576px) {
    .service__next,
    .service__prev {
        width: 30px;
        height: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .service__next svg,
    .service__prev svg {
        width: 10px;
        height: 10px;
    }
}

.service__next {
    right: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .service__next {
        right: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .service__next {
        right: 15px;
    }
}

.service__prev {
    left: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .service__prev {
        left: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .service__prev {
        left: 15px;
    }
}

.img-comp-container {
    position: relative;
    height: 570px;
}

@media only screen and (max-width: 1200px) {
    .img-comp-container {
        height: 400px;
    }
}

@media only screen and (max-width: 992px) {
    .img-comp-container {
        height: 300px;
    }
}

@media only screen and (max-width: 767px) {
    .img-comp-container {
        height: 240px;
    }
}

@media only screen and (max-width: 576px) {
    .img-comp-container {
        height: 220px;
    }
}

@media only screen and (max-width: 480px) {
    .img-comp-container {
        height: 200px;
    }
}

.img-comp-img {
    position: absolute;
    width: auto;
    height: auto;
    overflow: hidden;
}

    .img-comp-img img {
        display: block;
        vertical-align: middle;
        width: 1260px;
        height: 570px;
        -o-object-fit: cover;
        object-fit: cover;
    }

@media only screen and (max-width: 1320px) {
    .img-comp-img img {
        max-width: 1170px;
    }
}

@media only screen and (max-width: 1200px) {
    .img-comp-img img {
        height: 400px;
        max-width: 932px;
    }
}

@media only screen and (max-width: 992px) {
    .img-comp-img img {
        max-width: 707px;
        height: 300px;
    }
}

@media only screen and (max-width: 767px) {
    .img-comp-img img {
        max-width: 516px;
        height: 240px;
    }
}

@media only screen and (max-width: 576px) {
    .img-comp-img img {
        max-width: 420px;
        height: 220px;
    }
}

@media only screen and (max-width: 480px) {
    .img-comp-img img {
        max-width: 85vw;
        height: 200px;
    }
}

.img-comp-slider {
    position: absolute;
    z-index: 500;
    cursor: ew-resize;
    width: 6px;
    height: 100%;
    background-color: #fff;
}

    .img-comp-slider::before {
        width: 60px;
        height: 40px;
        display: block;
        content: ' ';
        background-image: url(/img/aroow-two.png);
        background-repeat: no-repeat;
        background-position: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding-top: 3px;
        position: absolute;
        right: 0;
        border: 1px solid #fff;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }

@media only screen and (max-width: 767px) {
    .img-comp-slider::before {
        width: 50px;
        height: 30px;
        background-size: 40px;
    }
}

.services__container {
    position: relative;
    padding: 0 30px;
}

.services__text {
    text-align: center;
    font-size: 24px;
}

@media only screen and (max-width: 992px) {
    .services__text {
        font-size: 20px;
    }
}

.services__text span {
    color: #e16f0b;
}

@media only screen and (max-width: 992px) {
    .services__text br {
        display: none;
    }
}

.services__wrap {
    padding-bottom: 70px;
    padding-top: 70px;
}

@media only screen and (max-width: 992px) {
    .services__wrap {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

.services__slider {
    overflow: hidden;
    height: 570px;
}

@media only screen and (max-width: 1200px) {
    .services__slider {
        height: 400px;
    }
}

@media only screen and (max-width: 992px) {
    .services__slider {
        height: 300px;
    }
}

@media only screen and (max-width: 767px) {
    .services__slider {
        height: 240px;
    }
}

@media only screen and (max-width: 576px) {
    .services__slider {
        height: 220px;
    }
}

@media only screen and (max-width: 480px) {
    .services__slider {
        height: 200px;
    }
}

.services__next,
.services__prev {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
    z-index: 1;
    width: 50px;
    height: 50px;
    background: #3c3c3c;
    -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border-radius: 50%;
}

@media only screen and (max-width: 767px) {
    .services__next,
    .services__prev {
        width: 40px;
        height: 40px;
    }
}

@media only screen and (max-width: 576px) {
    .services__next,
    .services__prev {
        width: 30px;
        height: 30px;
    }
}

@media only screen and (max-width: 576px) {
    .services__next svg,
    .services__prev svg {
        width: 10px;
        height: 10px;
    }
}

.services__next {
    right: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .services__next {
        right: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .services__next {
        right: 15px;
    }
}

.services__prev {
    left: 5px;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
}

@media only screen and (max-width: 767px) {
    .services__prev {
        left: 10px;
    }
}

@media only screen and (max-width: 576px) {
    .services__prev {
        left: 15px;
    }
}

.cookie-consent {
    left: 0;
    right: 0;
    z-index: 9999;
    color: #fff;
    gap: 10px;
    padding: 14px 16px;
    font-size: 14px;
    align-items: center;
    justify-content: center;
    line-height: 1.5;
    text-align: center;
    display: none;
}


    .cookie-consent a {
        color: #ffffff;
        text-decoration: underline;
    }

.cookie-btn {
    background: #ffffff;
    color: #000000;
    border: none;
    padding: 6px 14px;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
}

/* Десктоп — фиксировано внизу, “стеклянный” фон */
@media (min-width: 992px) {
    .cookie-consent {
        position: fixed;
        bottom: 0;
        border-top: 1px solid rgba(255, 255, 255, 0.15);
        background: rgba(255, 255, 255, 0.05); /* почти прозрачный */
        backdrop-filter: blur(10px); /* эффект “стекла” */
    }
}

/* Мобильные — вверху, НЕ фиксировано, светлый фон */
@media (max-width: 992px) {
    .cookie-consent {
        position: relative; /* перестаёт быть фиксированной */
        top: 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        background: rgba(255, 255, 255, 0.95); /* почти белый */
        color: #000;
        backdrop-filter: none; /* убираем эффект стекла */
    }

    .cookie-btn {
        border: 1px solid #000000;
    }

    .cookie-consent a {
        color: #000000;
    }
}


.form__agree {
    position: relative;
    margin-top: 10px;
    font-size: 14px;
    color: #d2d2d2; /* белый текст, чтобы видно было на фоне */
}

    /* чекбокс — делаем видимым */
    .form__agree input[type="checkbox"] {
        accent-color: #FFFFFF; /* для современных браузеров */
        width: 16px;
        height: 16px;
        margin-right: 6px;
        vertical-align: middle;
        cursor: pointer;
        appearance: auto; /* если где-то был сброшен */
    }

        /* чтобы галочка всегда была видна */
        .form__agree input[type="checkbox"]::before {
            color: #000;
        }

input:focus:required:invalid {
    border-color: #FFFFFF;
}

/* слово «согласие» */
.hover-consent {
    color: #d2d2d2;
    text-decoration: underline dotted;
    cursor: pointer;
    position: relative;
}

/* маленькое всплывающее окно */
.cookie-hover {
    display: none;
    position: absolute;
    left: 0;
    bottom: -450%;
    background: rgba(0, 0, 0, 0.85);
    color: #fff;
    font-size: 13px;
    line-height: 1.4;
    padding: 10px 12px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
    z-index: 1000;
    transition: opacity 1s ease;
}

    /* показываем, если курсор на слове или на самой всплывашке */
    .hover-consent:hover + .cookie-hover,
    .cookie-hover:hover {
        display: block;
        opacity: 1;
        pointer-events: auto;
    }

/* мобильная модалка */
.cookie-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    z-index: 10000;
    align-items: center;
    justify-content: center;
}

.cookie-modal__content {
    background: #fff;
    color: #000;
    padding: 20px;
    border-radius: 12px;
    max-width: 90%;
    text-align: center;
}

.btn--agree {
    margin-top: 12px;
    background: #007bff;
    color: #fff;
    border: none;
    padding: 8px 16px;
    border-radius: 6px;
}

.btn--form:disabled,
.btn--disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

#cookieNoticeHover p {
    margin-bottom: unset;
}

    #cookieNoticeHover p a {
        color: #fff;
        text-decoration: underline;
    }

.object__grid .object__item {
    min-width: 220px;
}
