@font-face {
    font-family: 'Craftwork Grotesk';
    src: local('CraftworkGrotesk-Heavy'),
    url('../fonts/Craftwork/CraftworkGrotesk-Heavy.woff2') format('woff2'),
    url('../fonts/Craftwork/CraftworkGrotesk-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: local('Montserrat-Bold'),
    url('../fonts/Montserrat/Montserrat-Bold.woff2') format('woff2'),
    url('../fonts/Montserrat/montserrat-bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: local('Manrope-Semibold'),
    url('../fonts/Manrope/manrope-semibold.woff2') format('woff2'),
    url('../fonts/Manrope/manrope-semibold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: local('Manrope-Bold'),
    url('../fonts/Manrope/manrope-bold.woff2') format('woff2'),
    url('../fonts/Manrope/manrope-bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: local('Manrope-ExtraBold'),
    url('../fonts/Manrope/manrope-extrabold.woff2') format('woff2'),
    url('../fonts/Manrope/manrope-extrabold.woff') format('woff');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}


/* хлебные крошки */
.breadcrumbs {
    margin: 115px 0 40px;
}

.breadcrumbs__list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.breadcrumbs__item {
    position: relative;
    margin-right: 5px;
    padding-right: 30px;

}

.breadcrumbs__item::before {
    content: url('../img/icons/breadcrumb-arrow.svg');
    position: absolute;

    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.breadcrumbs__item:last-child {
    padding-right: 0;
    margin-right: 0;
}

.breadcrumbs__item:last-child::before {
    display: none;
}


.breadcrumbs__link {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.2;
    color: #8D917D;
    transition: color .4s ease;
}

.breadcrumbs__link:hover {
    color: #27348b;
    transition: color .4s ease;
}

/*  */


/* страница новостройки */
.building {
    margin-bottom: 120px;
}

.building .breadcrumbs{
    position: absolute;
    top: 30px;
    z-index: 1;
}

.building .breadcrumbs__link{
    color: #fff;
}

.building__block {
    position: relative;
}

.building__inner {
    display: flex;
    align-items: stretch;
    gap: 20px;
}

.building__content {
    max-width: 1180px;
    min-width: 800px;
    width: 100%;
}

/*.building__content-block{
    margin-bottom: 100px;
}*/

.building-schemes {
    margin-top: 100px;
}

.building__content-block:last-child {
    margin-bottom: 0;
}

.building__block-title {
    margin-bottom: 40px;
}

.building__preview {
    position: relative;
}


.preview-main__image {
    width: 100%;
    height: 800px;
}

.preview-main__image img {
    width: 100%;
    height: 100%;
/ / object-fit: cover;
    border-radius: 10px;
}


.building__preview-container {
    position: absolute;
    z-index: 2;

    top: 0;
    left: 0;

    height: 100%;
    width: 140px;

    background: rgba(0, 0, 0, 0.15);

    padding: 30px 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;

    border-radius: 10px;
}

.building__privew-arrow svg {
    width: 20px;
    height: 16px;
}

.preview-thumbs {
    max-width: 100px;
    width: 100%;
}


.preview-thumbs__slide {
    min-height: 100px;
}

.preview-thumbs__image {
    width: 100%;
    height: 100px;

    position: relative;
    overflow: hidden;
    border-radius: 10px;
    cursor: pointer;
}

.preview-thumbs__image:hover img {
    transform: scale(1.1);
    transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.preview-thumbs__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;

    position: absolute;
    top: 0;
    left: 0;

    transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.building__aside {
    max-width: 580px;
    width: 100%;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 5px;

}

.building__title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 40px;
    line-height: 110%;
    color: #101010;
    margin-top: 0;
    margin-bottom: 10px;
}

.building__text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    color: #797C94;

    margin-bottom: 40px;
}

.building__info {
    margin-bottom: 40px;
}

.building__info-item {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #F2F3F2;

    display: flex;
    align-items: center;
    gap: 20px;
}

.building__info-text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    color: #797C94;

    max-width: 270px;
    width: 100%;
}

.building_shell-info {
    margin-top: auto;
}

.building__triggers {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 20px;
    margin-bottom: 40px;
}

.building__trigger {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 120%;
    color: #797C94;
}

.building__price {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
    color: #000000;

    margin-bottom: 10px;
}

button.building__order-button {
    width: 100%;
    height: 50px;

    background: #27348B;
    border-radius: 5px;


    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    color: #FFFFFF;

    &.btn__hover {
        &:after {
            border-radius: 5px;
            background: #000;
        }
    }


}


.building__plan {
    background: #D8DFD8;
    padding: 60px 30px;
}

.building__plan-image {
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.building__plan-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


.building__schemes-wrapper {
    display: grid;
    grid-template-columns: 185px 1fr;
}


.building-schemes__item-image {
    width: 100%;
    height: 100%;
}

.building-schemes__item-image image {
    width: 100%;
    height: 100%;
}

.building-schemes__item-image svg {
    width: 100%;
    max-height: 700px;
    height: 100%;
}

.building-schemes__item {
    display: none;
}

.building-schemes__item.-js-visible {
    display: block;
}

.building-schemes__items {
    background: #D8DFD8;
    border-radius: 0 5px 5px 0;
}

.building-schemes__aside {
    background: #E5EBE5;
    padding: 40px 15px;
    border-radius: 5px 0 0 5px;
}

.building-schemes__item-inner {
    padding: 40px 50px;
    position: relative;
}

.building-schemes__item-compas {
    position: absolute;
    top: 15px;
}

.building-schemes__aside-title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 22px;
    line-height: 1.2;
    color: #111111;

    margin-bottom: 18px;
}


.building-schemes__aside-block {
    margin-bottom: 40px;
}

.building-schemes__aside-block:last-child {
    margin-bottom: 0;
}

.building-schemes__item-label {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 20px;
    line-height: 1.2;
    color: #111111;

    border-radius: 10px;
    background: #FFFFFF;

    width: 100%;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    position: relative;

    cursor: pointer;
    transition: all .4s ease;
}

.building-schemes__item-label.-js-hidden {
    display: none;
}

.building-schemes__item-label:hover {
    background: #000;
    color: #fff;
    transition: all .4s ease;
}

.building-schemes__item-label.-js-active {
    background: #000;
    color: #fff;
}

.preview-main__slide {
    width: 100% !important;
}


.building__content-block--mob-v {
    display: none;
}

.building__content-block--bottom {
    padding: 20px 10px 25px;
    background: #D9E9D9;
    border-radius: 5px;

    display: none;
}

.building__info-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;
}


.building__plan {
    display: none;
}

.building__plan.-js-visible {
    display: block;
}

.building-plan__info-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;

    margin-bottom: 30px;
}

.building-plan__info-item:last-child {
    grid-column: span 2;
}

.building__plan-image {
    margin-bottom: 30px;
}

.building-plan__info-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3px;

    padding-bottom: 6px;
    border-bottom: 1px solid #B7C1B7;
}

.building-plan__dowload {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.building-plan__download-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.building-plan__download-text {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 140%;
    text-decoration-line: underline;
    color: #27348B;
    transition: all .4s ease;

}

.building-plan__dowload:hover .building-plan__download-text {
    color: #000;
    transition: all .4s ease;

}

.building-plan__info {
    display: none;
}


.building-plan__info-text {

    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 110%;

    color: #585757;


}

.building-plan__info-title {

    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 110%;

    color: #3C3C3C;


}

@media (max-width: 1440px) {
    .building-schemes__item-image svg {
        max-height: 600px;
    }

    .building-schemes {
        margin-top: 80px;
    }


    .breadcrumbs {
        margin: 115px 0 25px;
    }


   

    .building__inner {
        flex-direction: column;
        align-items: center;
        gap: 30px;
    }

    .building__aside {
        order: -1;
        max-width: 100%;
        position: static;

        background: transparent;
        padding: 0;
    }

    .building__content {
        max-width: 100%;
        min-width: fit-content;
    }

    .building_shell-info {

        display: none;

    }

    .building__content-block--mob-v {
        display: block;
    }

    .building__aside .building__info {
        display: none !important;
    }

    .building__aside .building__triggers {
        display: none !important;
    }

    .building__aside .flat-info {
        display: none !important;
    }

    .building__text {
        margin-bottom: 0;
    }

    .building__content-block--bottom.-js-visible {
        display: block;
    }


    .building__info-item {
        position: relative;
        margin-bottom: 0;
        border-bottom: none;

        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .building__info-item::before {
        content: '';
        position: absolute;

        bottom: 0;
        left: 0;

        height: 1px;
        width: 16px;
        background: #BABABA;
    }

    .building__info-items--triggers .building__info-item {
        padding-bottom: 0;
    }

    .building__info-items--triggers .building__info-item::before {
        display: none;
    }

    .building__info-title {
        font-family: 'Montserrat';
        font-style: normal;
        font-weight: 700;
        font-size: 18px;
        line-height: 1.2;
        color: #3C3C3C;
    }

    .building__info-text {
        font-size: 18px;
    }


    .building-plan__info {
        display: block;
    }

}

 .building__content-block {
        margin-bottom: 50px;
    }

@media (max-width: 1200px) {
    .building-schemes__item-image svg {
        max-height: 450px;
    }
}

@media (max-width: 1024px) {

    .building__preview-container {
        width: 100px;
    }

    .building-schemes__item-image svg {
        max-height: fit-content;
        height: 100%;
    }

    .preview-main__image {
        height: 600px;
    }

    .preview-thumbs {
        max-width: 70px;
    }

    .preview-thumbs__image {
        height: 70px;
    }

    .preview-thumbs__slide {
        min-height: 70px;
    }

    .building__preview-container {
        padding: 20px 0;
    }

    .building__title {
        font-size: 36px;
    }


    .building__manage-value {
        font-size: 70px;
        width: 100px;
        height: 100px;
    }

    .building__plan-image {
        max-width: 300px;
    }

    .building__schemes-wrapper {
        grid-template-columns: 1fr;
    }

    .building-schemes__item-inner {
        padding: 40px 30px;
    }

    .building-schemes__items {
        border-radius: 0 0 5px 5px;
        background: #E7ECE7;
    }

    .building-schemes__aside {
        border-radius: 5px 5px 0 0;
        background: #E7ECE7;
        padding-bottom: 0;
    }


}

@media (max-width: 768px) {


    .building-schemes {
        margin-top: 50px;
    }

    .preview-main__image {
        height: 500px;
    }

    .preview-thumbs {
        max-width: 55px;
    }

    .preview-thumbs__image {
        height: 55px;
    }

    .preview-thumbs__slide {
        min-height: 55px;
    }

    .building__preview-container {
        width: 100px;
    }

    .building__info-item {
        padding-bottom: 15px;
    }


    .building__manage {
        flex-direction: row;
        justify-content: center;
        margin-bottom: 20px;
    }

    .scheme-slide__slide-inner {
        padding: 30px;
    }

    .building__plan {
        padding: 50px 10px 40px;
    }

    .building__content-block {
        margin-bottom: 50px;
    }

    .building__block-title {
        margin-bottom: 30px;
    }

    .building {
        margin-bottom: 80px;
    }

    .building__info-title {
        font-size: 16px;
    }

    .building__info-text {
        font-size: 16px;
    }

    .building__plan-image {
        max-width: 280px;
    }

    .breadcrumbs {
        margin: 50px 0 20px;
    }

    .building__block-title.section__title {
        margin-bottom: 30px;
    }


    .building-schemes__item-inner {
        padding: 40px 20px;
    }
    
    .building .breadcrumbs{
        top: 10px;
    }
}

@media (max-width: 576px) {


    .building {
        margin-bottom: 60px;
    }

    .building__title {
        font-size: 30px;
    }

    .building__block-title {
        margin-bottom: 20px;
    }

    .preview-main__image {
        height: 440px;
    }

    .building__info-title {
        font-size: 14px;
    }

    .building__info-text {
        font-size: 14px;
    }

    .building__plan-image {
        max-width: 260px;
    }

    .building-plan__info-text {
        font-size: 14px;
    }

    .building-plan__info-title {
        font-size: 14px;
    }

    .building-plan__download-text {
        font-size: 14px;
    }

    .building__privew-arrow svg {
        width: 14px;
        height: 8px;
    }

    .building__block-title.section__title {
        margin-bottom: 20px;
    }

    .building-schemes__aside-block {
        margin-bottom: 30px;
    }


    .building-schemes__aside-title {
        font-size: 18px;
        margin-bottom: 10px;
    }
}

@media (max-width: 475px) {
    .preview-main__image {
        height: 300px;
    }

    .preview-thumbs__image {
        height: 50px;
    }

    .preview-thumbs__slide {
        min-height: 50px;
    }

    .preview-thumbs {
        max-width: 50px;
    }

    .building__preview-container {
        width: 70px;
    }

    .building__info-title {
        font-size: 12px;
    }

    .building__info-text {
        font-size: 12px;
    }

    .building__plan-image {
        max-width: 240px;
    }

    .building-plan__info-text {
        font-size: 12px;
    }

    .building-plan__info-title {
        font-size: 12px;
    }

    .building-plan__download-text {
        font-size: 12px;
    }

    .building-schemes__aside {
        padding: 30px 10px 0 10px;
    }

    .building-schemes__item-inner {
        padding: 30px 10px;
    }
}


/*  */

/* страница о нас */
.top-banner {
    margin: 160px 0 80px;


}

.top-banner__inner {
    padding: 70px;
    border-radius: 40px;

    background-image: url('../img/top-banner/bg-image.svg');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: contain;

    background-color: #27348B;

    height: 590px;
}

.top-banner__title {
    font-family: 'Craftwork Grotesk';
    font-style: normal;
    font-weight: 900;
    font-size: 79px;
    line-height: 1.2;
    color: #FFFFFF;

    max-width: 804px;
}

@media (max-width: 1440px) {
    .top-banner__inner {
        height: 480px;
    }

    .top-banner__title {
        font-size: 50px;
        max-width: 700px;
    }
}

@media (max-width: 1200px) {
    .top-banner__inner {
        padding: 40px;
    }
}

@media (max-width: 1024px) {
    .top-banner__title {
        font-size: 40px;
        max-width: 560px;
    }

    .top-banner__inner {
        height: 430px;
    }
}

@media (max-width: 768px) {
    .top-banner {
        margin-top: 50px;
    }

    .top-banner__inner {
        border-radius: 0;
        background-image: url('../img/top-banner/mob-bg-image.svg');
        background-position: center center;

        display: flex;
        align-items: center;
        justify-content: center;
    }

    .top-banner__title {
        text-align: center;
        max-width: 500px;
        font-size: 36px;
    }

    .top-banner .container {
        padding: 0;
    }
}

@media (max-width: 576px) {
    .top-banner {
        margin-top: 30px;
    }

    .top-banner__title {
        font-size: 34px;
    }
}

@media (max-width: 475px) {
    .top-banner {
        margin-top: 30px;
    }

    .top-banner__inner {
        padding: 20px;
    }

    .top-banner__title {
        font-size: 32px;
    }
}

.about-us {
    margin-bottom: 200px;


}

.about-us__inner {
    display: flex;
    align-items: flex-start;
    gap: 40px;
}

.about-us__aside {
    max-width: 410px;
    width: 100%;

    position: sticky;
    top: 100px;

    flex-shrink: 0;
}

.about-us__nav-list {
    border-radius: 40px;
    padding: 25px 0;
    background: rgba(39, 52, 139, 0.05);
    overflow: hidden;
}

.about-us__nav-link {
    display: block;

    padding: 24px 32px;
    transition: all .4s ease;

    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    color: #000000;
}

.about-us__nav-link:hover {
    background: #3949B0;
    color: #fff;
    transition: all .4s ease;
}

.about-us__content {
    max-width: 1330px;
    width: 100%;
}

.about-us__content-block {
    margin-bottom: 120px;
}

.about-us__content-block:last-child {
    margin-bottom: 0;
}

.about-us__content-title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 45px;
    line-height: 117%;
    color: #101010;

    margin-bottom: 24px;
}

.about-us__triggers {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.about-us__trigger {

    margin-bottom: 30px;
    padding-bottom: 30px;

    border-bottom: 1px solid rgba(0, 0, 0, 0.5);

}

.about-us__trigger:last-child {
    margin-bottom: 0;
}

.about-us__trigger-title {
    font-family: 'Gilroy';
    font-style: normal;
    font-weight: 600;
    font-size: 36px;
    line-height: 1.2;
    color: #000000;

    margin-bottom: 15px;
}

.about-us__trigger-title span {
    font-family: 'Gilroy';
    font-style: normal;
    font-weight: 800;
    font-size: 62px;
    line-height: 1.2;

    color: #000000;

    margin-right: 16px;
}

.about-us__trigger-text {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 140%;
    color: #000000;
}

.about-us__triggers-list {
    max-width: 550px;
    width: 100%;
}

.about-us__triggers-image {
    max-width: 730px;
    width: 100%;
}

.about-us__triggers-image:hover img {
    transform: scale(1.01);
    transition: transform .4s ease;
}

.about-us__triggers-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px;
    transition: transform .4s ease;
}

.about-us__content-text {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-size: 19px;
    line-height: 160%;
    color: #000000;

    max-width: 780px;
    margin-bottom: 70px;
}

.about-us__slider {
    position: relative;
}

.about-us__swiper {
    width: 100%;
}

.about-us__slide-inner {
    /* height: 480px; */

    display: flex;
    align-items: flex-end;

    padding: 56px;
    border-radius: 30px;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;

    box-sizing: border-box;
    position: absolute;
    width: 100%;
    height: 100%;
}

.about-us__slide-text {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    font-size: 32px;
    line-height: 117%;
    color: #FFFFFF;
}


.about-us__slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;
}

.about-us__slider-arrow--prev {
    left: 40px;
}

.about-us__slider-arrow--next {
    right: 40px;
}

.about-us__buildings.builings__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 24px 20px;
}

.about-us__buildings .buildings__item-img {
    padding-bottom: 100%;
}

.buildings__items .buildings__item-img {
    padding-bottom: 100%;
}


/*  */


/* Страница "Ипотека" */

.mortgage {
    margin: 100px 0 200px;
    font-family: "Montserrat", sans-serif;
    color: #101010;
}

.mortgage__title {
    margin-bottom: 40px;
    font-weight: 600;
    font-size: 70px;
    line-height: 100%;
}

.mortgage-hero {
    margin-bottom: 80px;
    padding: 70px 70px 130px;
    color: #fff;
    border-radius: 40px;
    background-color: #27348b;
    background-image: url("/assets/templates/img/mortgage/mortgage-bg.png");
    background-repeat: no-repeat;
    background-position: right 50px bottom 0;
}

.mortgage-hero__wrapper {
    max-width: 48%;
}

.mortgage-hero__title {
    font-family: "Craftwork Grotesk", sans-serif;
    font-weight: 900;
    font-size: 79px;
    margin-bottom: 32px;
    line-height: 105%;
}

.mortgage-hero__text {
    font-family: "Montserrat", sans-serif;
    font-size: 19px;
    line-height: 160%;
    color: #fff;
}

.mortgage__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px 21px;
}

.mortgage-item {
    position: relative;
    padding: 33px 40px 32px;
    border-radius: 30px;
    background-color: #fff;
}

.mortgage-item__image {
    margin-bottom: 74px;
    height: 74px;
}


.mortgage-item__image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left;
}

.mortgage-item__info {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 40px;
}

.mortgage-item__info:before {
    position: absolute;
    top: 144px;
    left: 0;
    content: "";
    width: 100%;
    height: 1px;
    background-color: #dce5eb;
}

.mortgage-item__info-wrapper {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.mortgage-item__info-wrapper dd {
    flex-grow: 1;
    font-family: "Gilroy", sans-serif;
    font-weight: 800;
    font-size: 32px;
    line-height: 100%;
    color: #101010;
    margin: 0;
}

.mortgage-item__info-wrapper dt {
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #7b838b;
}

.mortgage-item .feedback__form-btn {
    max-width: 100%;
    height: 52px;
    font-size: 16px;
}

@media (max-width: 1745px) {
    .mortgage-hero__title {
        font-size: 48px;
    }

    .mortgage-item__info-wrapper dd {
        font-size: 28px;
    }

    .mortgage-item {
        padding: 25px;
    }
}

@media (max-width: 1550px) {
    .mortgage__list {
        grid-template-columns: repeat(2, 1fr);
    }

    .mortgage-item__image {
        height: 50px;
    }

    .mortgage-item__info:before {
        top: 100px;
    }

    .mortgage-hero {
        background-position: right 10px bottom 0;
        background-size: 550px 450px;
    }

}

@media (max-width: 1275px) {
    .mortgage__title {
        font-size: 50px;
    }

    .mortgage-hero__wrapper {
        max-width: 100%;
    }

    .mortgage-item__info-wrapper dd {
        font-size: 20px;
    }

    .mortgage-item__info-wrapper dt {
        font-size: 14px;
    }

    .mortgage-hero {
        padding-bottom: 430px;
    }
}

@media (max-width: 990px) {
    .mortgage-hero {
        padding: 35px 35px 430px 35px;
    }

    .mortgage-hero__title {
        font-size: 35px;
    }


    .mortgage-item .feedback__form-btn {
        max-width: 430px;
    }
}

@media (max-width: 768px) {
    .mortgage__title {
        font-size: 35px;
    }

    .mortgage-hero {
        padding-bottom: 300px;
        background-size: 380px 280px;
        background-position: right -25px bottom 0;
    }

    .mortgage__list {
        grid-template-columns: 1fr;
    }

    .mortgage-hero__title {
        font-size: 25px;
    }

    .mortgage-hero__text {
        font-size: 14px;
    }

    .mortgage-item {
        padding: 15px;
    }

    .mortgage {
        margin-bottom: 50px;
    }
}

.scheme-slide__image {
    svg {
        width: 100%;
        height: auto;
    }
}

.rect_background {
    cursor: pointer;
    transition: .2s ease;
}

.anchor {
    text, rect {
        cursor: pointer;
    }
}

.anchor:hover .rect_background {
    fill: #27348B !important;
}

.houses {
    margin-top: 100px;
    font-family: "Montserrat", sans-serif;

}

.houses__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px 20px;
    margin-bottom: 100px;
}

.houses__wrapper {
    position: relative;
    height: 350px;
}

.houses__image {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.houses__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px;
}

.houses__info {
    position: absolute;
    left: 10px;
    padding: 12px 15px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 50px;
    color: #fff;
    z-index: 1;
}

.houses__info span {
    font-weight: 500;
    font-size: 16px;
}

.houses__info span:first-child {
    font-weight: 600;
    font-size: 22px;
}

.houses__info--top {
    top: 10px;
    min-width: 236px;
}

.houses__info--bottom {
    bottom: 10px;
    width: 95%;
}

.houses__title {
    margin-bottom: 40px;
}

.houses__address {
    margin-top: 34px;
    font-weight: 600;
    font-size: 22px;
    color: #000;
}

@media (max-width: 1690px) {
    .houses__list {
        grid-template-columns: repeat(3, 1fr);
    }

    .houses__info span:first-child {
        font-size: 18px;
    }

    .houses__info span {
        font-size: 14px;
    }
}

@media (max-width: 1200px) {
    .houses__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .houses__list {
        grid-template-columns: 1fr;
    }

    .houses__info--bottom span:first-child {
        display: none;
    }

    .houses__address {
        margin-top: 16px;
    }
}

.contact-modal.is-active,
.succes-modal.is-active,
.call-modal.is-active {
    opacity: 1;
    visibility: visible;
}

.call-modal__buttons {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.call-modal__btn.modal__form-btn {
    margin-top: 0;
    display: flex;
    justify-content: center;
}

.page {
    margin-top: 150px;
}

.page--gray{
    background: rgba(250, 250, 250, 1);
}

@media (max-width: 1300px){
    .page{
        margin-top: 100px;
    }
}

@media (max-width: 768px) {
    .page {
        margin-top: 78px;
    }
}

.contact {
    display: flex;
    flex-direction: column;
    font-family: "Gilroy", sans-serif;
    color: #101010;
    background-color: #fff;
    border-radius: 30px;
}

.contact__top {
    position: relative;
    flex-grow: 1;
    padding: 40px;
}

.contacts-page__title {
    margin-bottom: 40px;
}

.contacts__list {
    margin-bottom: 40px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.contact__title {
    font-weight: 800;
    font-size: 32px;
    line-height: 100%;
    color: #101010;
    margin-bottom: 24px;
}

.contact__top:after {
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 100%;
    background-color: #dce5eb;
    content: "";
}

.contact__bottom {
    flex-grow: 1;
    padding: 40px;
}


.contact__description {
    font-weight: 500;
    font-size: 16px;
    line-height: 115%;
    color: #7b838b;
}

.contact__phones a,
.contact__phones {
    font-weight: 500;
    font-size: 24px;
    line-height: 120%;
    color: #3646ad;
}

.contact__phones a:last-child {
    display: block;
}

.contact__phones span {
    padding: 0 20px;
}

.contact__phones {
    margin-bottom: 26px;
}

.contact__time {
    font-weight: 500;
    font-size: 16px;
    line-height: 115%;
    color: #101010;
}

.objects__inner {
    position: relative;
}

.objects__address {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 25px 20px;
    border-radius: 30px;
    background-color: #fff;
    top: 30px;
    left: 30px;
    /* z-index: 2501; */
    font-family: "Gilroy", sans-serif;
    font-weight: 800;
    font-size: 32px;
    line-height: 212%;
    color: #3646ad;
    gap: 16px;
}

.page .objects__inner {
    margin-bottom: 100px;
}

@media (max-width: 1900px) {
    .contact__top,
    .contact__bottom {
        padding: 30px;
    }
}

@media (max-width: 1400px) {
    .contacts__list {
        grid-template-columns: repeat(3, 1fr);

    }
}

@media (max-width: 1200px) {
    .contacts__list {
        grid-template-columns: repeat(2, 1fr);
    }

    .objects__address {
        padding: 15px 10px;
        font-size: 28px;
    }
}

@media (max-width: 768px) {
    .contacts__list {
        grid-template-columns: 1fr;
        gap: 0;
        margin-bottom: 120px;
    }

    .contact {
        padding: 24px 0;
        background: transparent;
    }

    .contact__top:after {
        display: none;
    }

    .contact__top,
    .contact__bottom {
        padding: 0;
    }

    .contact {
        border-bottom: 1px solid #dce5eb;
        border-radius: 0;
    }

    .contact__title {
        font-size: 24px;
        margin-bottom: 16px;
    }

    .contact__description {
        font-size: 14px;
        margin-bottom: 12px;
    }

    .contact__phones {
        font-size: 18px;
        margin-bottom: 18px;
    }

    .objects__address svg {
        display: none;
    }

    .objects__address {
        top: -60px;
        left: 0;
        padding: 0;
        background: transparent;
        font-weight: 800;
        font-size: 12px;
        line-height: 283%;
        color: #101010;
        transform: translateY(-100%);
        font-size: 24px;
        line-height: 100%;
    }

    .page .objects__inner {
        margin-bottom: 40px;
    }
}


.objects__tab.houses__tabs {
    display: inline-flex;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 140%;
    color: #111;
    gap: 10px;
    cursor: pointer;
}

.houses__title-wrapper {
    display: flex;
    align-items: baseline;
    gap: 40px;

}

html {
    scroll-behavior: smooth;
}

#houses-map:before {
    display: block;
    content: " ";
    margin-top: -15px;
    height: 15px;
    visibility: hidden;
}

.more__list.header__menu-more-list {
    width: fit-content;
}

.objects__content-description {
    cursor: pointer;
    transition: color .2s ease;

    &:hover {
        color: #27348b;
    }
}

.flat-info {
    display: none;
}

.about-us__nav-item {
    &.active {
        background: #3949B0;

        .about-us__nav-link {
            color: #fff;
        }
    }
}

.about-us__slide {
    padding-bottom: 36%;
    position: relative;
    width: 49% !important;

}

.swiper-pagination__about {
    display: none;
}

@media (max-width: 1470px) {
    .about-us__buildings {
        &.builings__items {
            grid-template-columns: repeat(1, 1fr);
        }
    }
}

@media (max-width: 1400px) {
    .about-us__slide-inner {
        padding: 22px;
    }

    .about-us__triggers {
        flex-direction: column;
        align-items: start;
    }
}

@media (max-width: 1290px) {
    .about-us__aside {
        position: unset;
        top: unset;
        max-width: unset;
    }

    .about-us__content {
        max-width: unset;
    }

    .about-us__inner {
        flex-direction: column;
    }

    .about-us__nav-list {
        display: flex;
        gap: 4px;
        background: unset;
        overflow: unset;
        margin-right: -10px;
        overflow-x: auto;
        padding-right: 10px;
        -ms-overflow-style: none;
        scrollbar-width: none;
        border-radius: unset;
        padding: unset;

    }

    .about-us__nav-item {
        white-space: nowrap;
        border-radius: 4px;
        border: 1px solid #3949B026;

        &.active {
            border-color: #3949B0;
        }
    }

    .about-us__nav-link {
        padding: 16px 12px;
    }

    .about-us__trigger-title span {
        font-size: 40px;
    }

    .about-us__triggers {
        flex-direction: row;
    }

    .about-us__triggers-list {
        max-width: 400px;
    }

    .about-us__slide {
        padding-bottom: 40%;
    }

    .about-us__buildings {
        &.builings__items {
            grid-template-columns: repeat(2, 1fr);
        }
    }
}

@media (max-width: 991px) {
    .about-us__triggers {
        flex-direction: column;
    }

    .about-us__triggers-list {
        max-width: unset;
    }

    .about-us__content-block {
        margin-bottom: 80px;
    }

    .about-us {
        margin-bottom: 80px;
    }
}

@media (max-width: 800px) {
    .about-us__buildings {
        &.builings__items {
            grid-template-columns: repeat(1, 1fr);
        }
    }
}

@media (max-width: 767px) {
    .swiper-pagination__about {
        display: flex;
        width: fit-content !important;
        margin: 72px auto 0;
    }

    .about-us__slider-arrow {
        display: none;
    }

    .swiper-pagination__about .swiper-pagination-bullet {
        background: #3646AD !important;
        opacity: .2;
        transition: opacity .2s ease;

        &.swiper-pagination-bullet-active {
            opacity: 1;
        }
    }

    .about-us__slide-text {
        position: absolute;
        bottom: -46px;
        color: #101010;
        right: 0;
        left: 0;
        margin: auto;
        width: fit-content;
        font-size: 20px;
    }

    .about-us__slide {
        padding-bottom: 70%;
    }

    .about-us__content-text {
        margin-bottom: 32px;
    }

    .about-us__slide {
        width: 100% !important;
    }
}

@media (max-width: 575px) {
    .about-us__triggers {
        flex-direction: column-reverse;
    }

    .top-banner {
        margin-bottom: 40px;
    }

    .about-us__trigger-title span {
        font-size: 32px;
    }

    .about-us__trigger-text {
        font-size: 12px;
    }

    .about-us__trigger {
        margin-bottom: 16px;
        padding-bottom: 16px;
    }

    .about-us__content-block {
        margin-bottom: 60px;
    }

    .top-banner__title {
        font-size: 32px;
    }

    .about-us__content-title {
        font-size: 30px;
    }

    .about-us {
        margin-bottom: 60px;
    }

    .about-us__nav-link {
        font-size: 13px;
    }

    .about-us__content-text {
        font-size: 14px;
    }
}

.headline__content-inner {
    p, img {
        margin-bottom: 20px;
    }

    p {
        font-size: 19px;
        font-weight: 400;
        line-height: 30.4px;

        img {
            margin-bottom: 0;
        }

    }
}

@media (max-width: 575px) {
    .headline__content-inner {
        p, img {
            margin-bottom: 24px;
        }

        p {
            font-size: 14px;
            line-height: 22.4px;
        }
    }
}


/* правки */
.header .header__button-block {
    max-width: fit-content;
    min-width: fit-content;
}

.header .header__logo svg {
    width: 100%;
    height: 100%;
}

.header .header__logo svg path:nth-child(1) {
    fill: #000;
}

.header .header__btn-feedback {
    text-align: left;
}

.header .header__shell-btn {
    gap: 0;
}

.header__call {
    display: none;
}

.banner .banner__swiper {
    height: 100vh;
}

.banner .banner__swiper-image {
    height: 100%;
}

.header .header__animation-wrap {
    height: unset;
}

.banner__swiper-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.banner__swiper-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner__swiper-content {
    position: relative;
    z-index: 3;
}


.stocks__item-img img {
    transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.stocks__item:hover .stocks__item-img img {
    transform: scale(1.1);
    transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}


.textpage__inner {
    display: flex;
    align-items: flex-start;
    gap: 30px;
}

.textpage__aside {
    max-width: 280px;
    width: 100%;

    position: sticky;
    top: 100px;
}

.textpage__aside .headline__return {
    position: relative;
    top: 0;
    left: 0;

    margin-bottom: 30px;
}


.headline__content-inner p.-js-contains-image {
    line-height: 0;
}

.headline__content-inner p:last-child {
    margin-bottom: 0;
}


.headline__content-inner {
    margin-bottom: 40px;
}


@media (max-width: 1500px) {
    .banner .banner__swiper-title {
        font-size: 40px;
    }

    .banner .banner__swiper-content {
        gap: 40px;
    }
}

@media (max-width: 1290px) {

    .textpage__inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 70px;
    }

    .textpage__aside {
        position: static;
        max-width: 100%;
    }

}


@media (max-width: 1250px) {
    .banner .banner__swiper-title {
        font-size: 34px;
    }

    .banner .banner__swiper-content {
        max-width: 500px;
    }

}

@media (max-width: 1024px) {
    .banner .banner__swiper-title {
        font-size: 30px;
    }

    .banner .banner__swiper-content {
        max-width: 400px;
    }

    .textpage__inner {
        gap: 50px;
    }
}

@media (max-width: 768px) {
    .banner .banner__swiper-title {
        font-size: 25px;
    }

    .banner .banner__swiper-content {
        max-width: 100%;
        border-radius: 30px;
    }

    .header .header__shell-btn {
        display: none;
    }

    .header__inner {
        position: relative;
    }

    .header .header__logo {
        max-width: 170px;
        width: 100%;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .header__call {
        display: flex;
    }

    .header .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .header .header__button-block button {
        width: 40px;
        height: 40px;
    }

    .header .header__burger span {
        width: 20px;
    }

    .wrapper .header {
        padding: 10px 0 15px;
    }

    .banner .banner__swiper-title {
        max-width: 360px;
    }

    .textpage__inner {
        gap: 40px;
    }
}

/*  */


/* стилизация select */

.nice-select {
    padding-left: 70px !important;
    background: transparent !important;
    border: none !important;


    font-family: 'Montserrat' !important;
    font-style: normal !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    color: #5A5D71 !important;

    height: auto !important;

}

.nice-select .list {
    border: none !important;
    border-radius: 35px !important;

    padding: 20px 0 !important;
    margin-top: 20px !important;

    width: 100% !important;

    box-shadow: none !important;
}

.nice-select .option {
    padding: 0 25px !important;
    opacity: 1 !important;

    font-family: 'Montserrat' !important;
    font-style: normal !important;
    font-weight: 500 !important;
    font-size: 18px !important;
    line-height: 40px !important;
    color: #5A5D71 !important;
}

.nice-select .option:hover, .nice-select .option.focus, .nice-select .option.selected.focus {
    background-color: #F6F6F6;
}

.nice-select .option.selected {
    font-weight: 500 !important;
}

.nice-select:after {
    content: '';
    position: absolute;
    right: 12px;
    top: 49% !important;


    border: none !important;
    display: block;

    height: 8px !important;
    width: 12px !important;

    margin-top: 0 !important;
    pointer-events: none;


    transform-origin: none !important;
    transform: translateY(-50%) !important;

    background-image: url('../img/icons/select-arrow.svg') !important;
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    background-size: cover;

}

.nice-select.open::after {
    transform: translateY(-50%) rotate(180deg) !important;
}


@media (max-width: 1024px) {
    .nice-select, .nice-select .option {
        font-size: 16px !important;
    }
}

@media (max-width: 768px) {
    .nice-select, .nice-select .option {
        font-size: 14px !important;
    }
}

/*  */

@media (max-width: 768px) {
    .houses__title-wrapper {
        flex-direction: column;
        gap: 15px;
    }

    .section__title {
        margin-bottom: 0;
    }
}

.headline {
    color: #101010;
}


.modal.scheme-modal {
    position: fixed;
    z-index: 1001;

    top: -100%;
    left: 50%;

    transform: translate(-50%, -50%);
    z-index: 1001;

    height: auto;
    width: auto;

    /*max-width: 1770px;*/
    width: 100%;

    opacity: 1;
    visibility: visible;
    transition: all .4s ease;
}

.modal.scheme-modal.-js-visible {
    top: 50%;
    transition: all .4s ease;
    /* transition-delay: .5s; */
}


.scheme-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;

    width: 100%;
    height: 100%;

    background: #F5FAF5;

    z-index: 100;

    opacity: 0;
    visibility: hidden;
    transition: opacity .4s ease-in;
}

.scheme-overlay.-js-visible {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s ease-in;
}

.scheme-modal__inner.modal__inner {
    max-width: 100%;
    background: #F5FAF5;
    border-radius: 0;
}

.scheme-modal__preview-icon {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.scheme-modal__overlay.modal__overlay {
    background: #F5FAF5;
}

.scheme-modal .modal__title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 40px;
    line-height: 110%;
    color: #101010;

    margin: 0;
}

.scheme-modal__container {
    display: grid;
    grid-template-columns: 1fr 420px;
    grid-gap: 20px;
}

.scheme-modal__aside {
    background: #FFFFFF;
    padding: 30px 20px;
    border-radius: 5px;

    display: flex;
    flex-direction: column;
}

.scheme-modal__wrapper {
    background: #D8DFD8;
    border-radius: 5px;
    padding: 25px;
}

.scheme-modal__preview {
    width: 100%;
    height: 100%;
    position: relative;
}

.scheme-modal__preview-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.scheme-modal__preview-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.scheme-modal__title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 30px;
    line-height: 110%;
    color: #101010;

    margin-bottom: 6px;
}

.scheme-modal__text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    color: #797C94;

    margin-bottom: 30px;
}

.scheme-modal__info-text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    color: #797C94;

    max-width: 270px;
    width: 100%;
}

.scheme-modal__info-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;

    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #F2F3F2;
}

.scheme-modal__info-item:last-child {
    margin-bottom: 0;
}

.scheme-modal__info {
    margin-bottom: 30px;
}

.scheme-modal__download {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 30px;
}

.scheme-modal__download-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.scheme-modal__download-text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 15px;
    line-height: 100%;
    text-decoration-line: underline;
    color: #27348B;
    transition: color .4s ease;
}

.scheme-modal__download:hover .scheme-modal__download-text {
    color: #000;
    transition: color .4s ease;
}

.scheme-modal__price {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 120%;
    color: #000000;

    margin-bottom: 10px;
    margin-top: auto;
}

button.scheme-modal__button {
    width: 100%;
    height: 50px;
    background: #27348B;
    border-radius: 5px;

    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 15px;
    line-height: 1.2;
    text-align: center;
    color: #FFFFFF;

    &.btn__hover {
        &:after {
            border-radius: 5px;
            background: #000;
        }
    }
}


.scheme-modal__wrapper-inner {
    display: none;
}

.scheme-modal__details {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;

    margin-bottom: 25px;
}

.scheme-modal__details-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3px;

    padding-bottom: 5px;
    border-bottom: 1px solid #B7C1B7;
}

.scheme-modal__details-title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 14px;
    line-height: 110%;
    color: #3C3C3C;
}

.scheme-modal__details-text {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 110%;
    color: #585757;
}

.scheme-modal__overlay {
    overflow-y: auto;
}

.modal.contact-modal {
    z-index: 12;
}

.objects__tab-tile {
    display: none;
}

.-js-active {
    .objects__tab-tile {
        display: inline-block;
    }

    .objects__tab-on-map {
        display: none;
    }
}


.modal__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 37px;

    position: relative;
    padding-top: 50px;
}

.scheme-modal .modal__close-button {
    top: 0;
    right: 0;
}


@media (max-width: 1440px) {

    .scheme-modal .modal__title {
        font-size: 30px;
    }

    .scheme-modal__title {
        font-size: 26px;
    }
}

@media (max-width: 1024px) {
    .scheme-modal__container {
        grid-template-columns: 1fr;
    }

    .scheme-modal__title,
    .scheme-modal__text,
    .scheme-modal__info,
    .scheme-modal__download {
        display: none;
    }

    .scheme-modal__aside {
        position: absolute;
        width: 100%;
        bottom: 0;
        left: 0;
        right: 0;

        border-radius: 0;

        padding: 20px 20px 25px;
    }

    .scheme-modal__wrapper-inner {
        display: block;
    }

    .scheme-modal__wrapper .scheme-modal__download {
        display: inline-flex;
        margin-bottom: 0;
    }

    .scheme-modal__wrapper {
        padding: 50px 20px;
        border-radius: 0;
    }

    .scheme-modal__preview-icon {
        display: none;
    }

    .scheme-modal .modal__close-button {
        width: 40px;
        height: 40px;
    }

    .modal__top {
        padding-top: 24px;
        margin-bottom: 14px;
    }

    .scheme-modal .modal__inner {
        border-radius: 0;
        padding-bottom: 160px;
    }

    .scheme-modal__preview {
        height: 300px;
        margin-bottom: 50px;
    }

}

@media (max-width: 768px) {

    .scheme-modal__inner.modal__inner {
        padding-left: 10px;
        padding-right: 10px;

    }

    .scheme-modal__wrapper {
        padding-left: 10px;
        padding-right: 10px;
    }

    .scheme-modal__details-title,
    .scheme-modal__details-text,
    .scheme-modal__download-text {
        font-size: 12px;
    }

    .scheme-modal__download-icon svg {
        width: 24px;
        height: 24px;
    }

    button.scheme-modal__button {
        height: 40px;
    }

    .scheme-modal .modal__title {
        font-size: 28px;
    }

    .scheme-modal__details {
        grid-gap: 25px;
    }

    .scheme-modal__aside {
        padding: 10px 10px 15px;
    }

    .scheme-modal .modal__inner {
        padding-bottom: 120px;
    }

    .scheme-modal__preview {
        height: 260px;
    }
}

@media (max-width: 576px) {
    .scheme-modal__details {
        grid-gap: 20px 15px;
        margin-bottom: 20px;
    }

    .scheme-modal__price {
        font-size: 16px;
    }

    .scheme-modal__details-title, .scheme-modal__details-text, .scheme-modal__download-text {
        font-size: 11px;
    }

    .scheme-modal .modal__title {
        font-size: 26px;
    }
}

@media (max-width: 475px) {
    .scheme-modal__preview {
        height: 200px;
    }
}


.contacts-page .objects__content {
    overflow-y: auto;
    border-radius: 30px 0 0 30px;
}

.objects__content::-webkit-scrollbar {
    width: 3px;
}

.objects__content::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.objects__content::-webkit-scrollbar-thumb {
    background-color: #101010;
}

.footer__top-menu-item .footer__top-menu-link:hover {
    color: #27348b;
}

.message-modal.is-active {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s ease;
    z-index: 12;
}

.message-modal__inner.modal__inner {
    max-width: 500px;
}

.banner__swiper .swiper-slide {
    width: 100% !important;
}

#houses-map {
    display: none;
    margin-bottom: 60px;
}

#houses-map.-js-visible {
    display: block;
}

.houses__list.-js-hidden {
    display: none;
}


.houses__tabs.-js-active .objects__tab-dots::before {
    background: transparent;
}

.houses__tabs.-js-active .objects__tab-dots::after {
    background: #000;
}

.houses__tabs .objects__tab-dots::after {
    background: transparent;
}


.houses__item .houses__address {
    margin-top: 24px;
}

.houses__item img {
    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
    transform: scale(1.1);
}

.houses__item:hover img {
    transform: scale(1);
}


.houses__info-title {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.2;
    color: #FFFFFF;
}

.houses__info-label {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.2;
    color: #FFFFFF;

    flex-shrink: 0;
}

.houses__info {
    flex-wrap: wrap;
    gap: 10px;
}

.houses__info--bottom .houses__info-title {


    max-width: 220px;
}

@media (max-width: 1690px) {
    .houses__list {
        grid-template-columns: repeat(4, 1fr);
    }

    .houses__info {
        border-radius: 20px;
    }
}


@media (max-width: 1440px) {

    .houses__list {
        grid-gap: 30px 15px;
    }

    .houses__item .houses__address {
        font-size: 20px;
    }

}

@media (max-width: 1230px) {
    .houses__list {
        grid-template-columns: repeat(3, 1fr);
    }
}


@media (max-width: 1200px) {
    .objects__content::-webkit-scrollbar {
        display: none;
    }

    .contacts-page .objects__content {
        overflow-y: auto;
        border-radius: 30px;
    }

    .feedback__form .feedback__form-inner:before {
        display: none;
    }

    .feedback__form .feedback__form-inner {
        width: 100%;
    }

    .houses__item .houses__address {
        font-size: 18px;
    }
}

@media (max-width: 991px) {
    .houses__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .houses__title-wrapper {
        margin-bottom: 20px;
    }
}


@media (max-width: 576px) {
    .message-modal__inner.modal__inner .modal__title {
        max-width: 200px;
    }

    .houses__list {
        grid-template-columns: repeat(1, 1fr);
    }
}


.header__nav .header__menu-link,
.header__nav .more__list-link {
    font-size: 14px;
    gap: 8px;
}

.header__shell-btn .header__phone {
    font-size: 20px;
}

.preview-thumbs__slide.swiper-slide-thumb-active .preview-thumbs__image img {
    transform: scale(1.1);
    transition: transform .9s cubic-bezier(.22, 1, .36, 1);
}

.bg-flat {
    position: relative;
    z-index: 1;
    transition: fill .3s ease;
}

.solded-flat .bg-flat {
    fill: #AAAAAA !important;
}

.solded-flat .card-small {
    display: none !important;
}

.solded-flat > text {
    display: none !important;
}

.solded-flat .flat-sold {
    display: block !important;
}

.solded-flat .card {
    display: none !important;
}

.solded-flat .bg-flat:hover {
    fill: #AAAAAA !important;
}

.solded-flat .bg-flat {
    cursor: default;
}

.anchor {
    cursor: pointer;
    pointer-events: visible;

    &:hover {
        .card {
            opacity: 1;
            visibility: visible;
        }
    }
}

.bg-flat_blue {
    fill: #E6EBFD;

    &:hover {
        fill: #AAB5DD;
    }
}

.bg-flat_green {
    fill: #E7F5DB;
}

.bg-flat_green:hover {
    fill: #C7E0B1;
}

.bg-flat_gray {
    fill: #E6E3E9;

    &:hover {
        fill: #B0A5A5;
    }
}

.bg-flat_pink {
    fill: #FDE6F1;
}

.bg-flat_pink:hover {
    fill: #DEACC4;
}

.anchor:hover .bg-flat_blue {
    fill: #AAB5DD;
}

.anchor:hover .bg-flat_green {
    fill: #C7E0B1;
}

.anchor:hover .bg-flat_gray {
    fill: #B0A5A5;
}

.anchor:hover .bg-flat_pink {
    fill: #DEACC4;
}

.solded-flat:hover + .bg-flat {
    fill: unset;
    pointer-events: none;
}

.card {
    transition: .3s ease;
    opacity: 0;
    visibility: hidden;
    position: relative;
    pointer-events: none;

    tspan {
        font-weight: bold;
    }
}

.card-small {
    pointer-events: none;
}

.flat-sold {
    display: none;
}


.building-schemes__item-image svg .anchor text {
    font-weight: 800 !important;
    font-size: 14px !important;
}

.with-bgvideo {
    background: url('video.png');
    background-size: cover;
}

.bgvideo {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -9999;
}

.with-bgvideo .headline__inner {
    border-radius: 30px;
    padding: 40px;
    background: rgba(255, 255, 255, 0.9);
}

@media (max-width: 768px) {
    .with-bgvideo .headline__inner {
        padding: 15px;
    }
}

/* .banner__swiper-background img{
    transform: scale(1.08);
} */

.news__item-img img,
.stocks__item-img img {
    transition: .9s cubic-bezier(.22, 1, .36, 1);
}

.buildings__item-img img,
.news__item-img img,
.stocks__item-img img {
    transform: scale(1.2);
}

.buildings__item:hover img,
.news__item:hover img,
.stocks__item:hover img,
.banner__swiper-background:hover img {
    transform: scale(1);
}


.building-schemes__item-labels {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: repeat(2, 1fr);
}


.building-schemes__aside-block--floors .building-schemes__item-labels {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1024px) {
    .building-schemes__aside-block--floors .building-schemes__item-labels {
        grid-template-columns: repeat(6, 1fr);
    }
}

.headline__content-inner a {
    color: #27348b;
    text-decoration: underline;
}

.buildings__item-inner div h4 {
    line-height: 1;
}

.building-schemes__item-text {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.2;
    font-style: normal;
    color: #535353;
    text-transform: uppercase;
    margin-bottom: 30px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - 190px);
}

.building-schemes__item-text span {
    font-weight: 400;
    margin-left: 30px;
}

@media (max-width: 1024px) {
    .building-schemes__item-text {
        font-size: 24px;
    }

    .building-schemes__item-compas svg {
        width: 60px;
        height: 60px;
    }
}

@media (max-width: 768px) {
    .building-schemes__item-text {
        font-size: 16px;
    }

    .building-schemes__item-text span {
        margin-left: 20px;
    }
}


.small-info {
    display: block;
}

.solded-info {
    display: none;
}

.expanded-info {
    display: none;
    pointer-events: none;
}

.anchor:hover .small-info {
    display: none;
}

.anchor:hover .expanded-info {
    display: block;
}

.anchor.solded-flat .small-info,
.anchor.solded-flat .expanded-info {
    display: none !important;
}

.anchor.solded-flat .solded-info {
    display: block;
    pointer-events: none;
}

@keyframes rotate {
    from {
        transform: rotate(-20deg);
    }
    to {
        transform: rotate(60deg);
    }
}

.red-arrow, .blue-arrow {
    animation: rotate 5s infinite alternate;
    transform-origin: center;
}

@media (max-width: 1024px) {
    .building-schemes__item-text {
        width: calc(100% - 120px);
    }
}

.scheme-modal .modal__close-button {
    top: 50px;
}

.preview-main__image img {
    width: 100%;
    height: auto;
    display: block;
}

.preview-main__image {
    width: 100%;
    height: auto;
}

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

.bg-building {
    transition: .4s ease;
    fill: transparent;
}

.anchor-link {
    cursor: pointer;
    pointer-events: visible;
}

.anchor-link:hover .bg-building {
    fill: rgba(19, 19, 19, 0.3);
}

.footer__top-contacts-dev {
    color: #fff;
    transition: .2s ease;
}

.footer__top-contacts-dev span {
    font-weight: 600;
}

.footer__top-contacts-dev:hover {
    color: #27348b;
}

.building__gallery {
    margin-top: 100px;
}

.building-gallery img {
    border-radius: 30px;
    overflow: hidden;
}

.building-gallery__btn.swiper-button-prev,
.building-gallery__btn.swiper-button-next {
    color: #27348b;
}

@media (max-width: 1440px) {
    .building__gallery {
        margin-top: 80px;
    }
}

@media (max-width: 768px) {
    .building__gallery {
        margin-top: 50px;
    }
}

/* Модальное окно request-modal */

.request-modal {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.request-modal--1 {
    position: absolute;
    top: 30%;
    left: 28%;
}

.show-request-window {
    visibility: visible !important;
    z-index: 8 !important;
    width: 521px !important;
    height: auto !important;
}

.show-request-overflow {
    visibility: visible !important;
    z-index: 8 !important;
}

.change-z {
    z-index: 9 !important;
}

.request-modal--2 {
    position: absolute;
    top: 22%;
    left: 48%;
}

.request-modal--3 {
    position: absolute;
    top: 48%;
    left: 70%;
}

.request-modal__overflow {
    position: fixed;
    visibility: hidden;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.request-modal__open-btn {
    z-index: 7;
    border-radius: 50%;
    animation: openBtnAnimation 3s ease infinite;
}

.request-modal__open-btn img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@keyframes openBtnAnimation {
    0% {
        scale: 0.7;
    }
    50% {
        scale: 1;
    }
    100% {
        scale: 0.7;
    }
}

.request-modal__window {
    visibility: hidden;
    margin-top: -27px;
    margin-left: -206px;
    /* width: 521px; */
    width: 0;
    height: 0;
    background-color: #fff;
    border-radius: 20px;
    transition: width 0.1s ease;
}

.request-modal__header {
    display: none;
    margin-bottom: 50px;
    padding: 20px 30px;
    width: 100%;
    height: 76px;
    justify-content: space-between;
    background-color: #fff;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
}

.request-modal__close-btn {
    width: 36px;
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #797c94;
    border-radius: 50%;
}

.request-modal__close-btn img {
    width: 14px;
    height: 14px;
}

.request-modal__content {
    padding: 40px;
}

.request-modal__title {
    margin-top: 0;
    font-size: 32px;
    font-weight: 700;
    line-height: 36.8px;
}

.request-modal__subtitle {
    margin-top: 20px;
    font-size: 15px;
    font-weight: 500;
    color: #797c94;
}

.request-modal__info {
    margin-top: 31px;
    display: flex;
    flex-direction: column;
    color: #797c94;
}

.request-modal__info-item {
    padding: 9px 0 10px;
    display: flex;
    border-bottom: 1px solid #f2f3f2;
}

.request-modal__info-caption {
    width: 202px;
}

.request-modal__additional-info {
    margin-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: #797c94;
}

.request-modal__additional-item {
    display: flex;
}

.request-modal__additional-item::before {
    content: "—";
    padding-right: 10px;
}

.request-modal__price {
    margin-top: 40px;
    font-size: 18px;
    font-weight: 600;
}

.request-modal__send-btn {
    margin-top: 10px;
    width: 100%;
    height: 50px;
    background-color: #27348b;
    color: #fff;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.request-modal__send-btn:hover {
    background-color: #000;
}

@media (max-width: 768px) {
    .request-modal__open-btn {
        z-index: 1 !important;
    }

    .show-request-window {
        width: 100% !important;
        height: 100% !important;
    }

    /*   .show-request-overflow {
      visibility: visible !important;
      z-index: 8 !important;
    } */
    .request-modal__window {
        position: fixed;
        top: 0;
        left: 0;
        /* width: 100%;
        height: 100%; */
        z-index: 10 !important;
        overflow-x: scroll;
        margin-top: auto;
        margin-left: auto;
        border-radius: 0%;
        background-color: #f0f0f0;
        transition: width 0.1s ease;
    }

    .request-modal__header {
        display: flex;
    }

    .request-modal__content {
        padding: 0 15px;
    }
}

@media (max-width: 480px) {
    .request-modal__title {
        font-size: 24px;
        line-height: 27.6px;
    }

    .request-modal__subtitle {
        font-size: 14px;
    }

    .request-modal__info-item {
        flex-direction: column;
        gap: 6px;
        border-bottom: 1px solid #dbdbdb;
    }

    .request-modal__info-caption {
        font-size: 12px;
        font-weight: 700;
        color: #575864;
    }
}

/* Модальное окно callback */
.callback-modal {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    z-index: 20;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow-y: scroll;
    transition: all 0.2s ease;
}

.show-callback-modal {
    visibility: visible;
    opacity: 1;
}

.callback-modal__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.2);
}

.callback-modal__window {
    width: 400px;
    padding: 22px;
    z-index: 21;
    background-color: #fff;
    border-radius: 20px;
}

.callback-modal__title {
    margin-top: 15px;
    font-weight: 600;
}

.callback-modal__form-input {
    position: relative;
    margin-bottom: 20px;
    padding: 5px 40px 5px 20px;
    width: 100%;
    height: 60px;
    border: 1px solid rgba(0, 0, 0, 0.8);
    border-radius: 18px;
}

.callback-modal__form-input input {
    width: 100%;
    height: 100%;
    outline: none;
}

.callback-modal__form-input::after {
    content: '*';
    position: absolute;
    top: 20px;
    right: 15px;
    width: 10px;
    height: 10px;
    color: #27348b;
    transform: scale(1.2);
}

.callback-modal__form-button {
    margin-top: 20px;
    width: 100%;
    height: 60px;
    font-weight: 500;
    background-color: #27348b;
    color: #fff;
    border-radius: 35px;
    transition: all 0.3s ease;
}

.callback-modal__form-button:hover {
    background-color: #000;
}

.callback-modal__close-btn {
    margin-left: auto;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #a1a1a1;
    border-radius: 50%;
}

.callback-modal__close-btn:hover {
    border: 1px solid #000;
}

@media (max-width: 425px) {
    .callback-modal__window {
        width: 100%;
        height: 100%;
        border-radius: 0;
    }
}

/* Подбор квартир */
.wrapper_gray {
    background: #FAFAFA;
}

.selection-apartments {
    margin-bottom: 230px;
}

.selection-apartments__title {
    font-family: 'Montserrat', sans-serif;
    font-size: 70px;
    font-weight: 500;
    line-height: 140%;
    margin: unset;
}

.selection-apartments__block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    margin-bottom: 50px;
}

.selection-apartments__address {
    font-size: 16px;
    font-weight: 700;
    line-height: 22.4px;
    color: #121212;
}

.selection-apartments__due-date {
    font-size: 14px;
    font-weight: 400;
    line-height: 19.6px;
    color: #121212;
}

.selection-apartments__block-info {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.selection-apartments__block-buttons {
    display: flex;
    gap: 20px;
}

.selection-apartments__block-btn {
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    color: #434343;
    padding: 14px 32px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: .4s ease;
    border: 2px solid #27348B;
    color: #27348B;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__block-btn:hover {
    background: #27348B;
    color: #fff;
}

.selection-apartments__block-btn.active {
    background: #27348B;
    color: #fff;
}

.selection-apartments__block-btn.active svg path, .selection-apartments__block-btn.active svg rect {
    fill: #fff;
}

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

.selection-apartments__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 50px;
    align-items: start;
}

.selection-apartments__items {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.selection-apartments__item {
    background: #fff;
    border-radius: 30px;
    padding: 30px;
    text-decoration: unset;
    transition: .4s ease;
    gap: 20px;
    display: flex;
    flex-direction: column;
    cursor: pointer;
    border: 2px solid transparent;
    position: relative;
}

.selection-apartments__item:hover {
    border-color: #CECECE;
}

.selection-apartments__info-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: unset;
    margin: unset;
}

.selection-apartments__row .selection-apartments__item-address{
    display: none;
}

.selection-apartments__item-address{
    position: absolute;
    top: 10px;
    left: 10px;
    border: 2px solid #27348b;
    border-radius: 40px;
    color: #27348b;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.1;
    padding: 2px 12px;
    width: -moz-fit-content;
    width: fit-content;
    pointer-events: none;
}

.favourites-btn{
    position: absolute;
    top: 10px;
    right: 10px;
    width: 22px;
    height: 20px;
}
.favourites-btn.voted svg path{
    fill: red;
    stroke: red;
}

.favourites-btn:hover svg path{
    stroke: red;
}
.selection-apartments__info-item {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    font-size: 20px;
    font-weight: 400;
    line-height: 140%;
    color: #121212;
    font-family: 'Montserrat', sans-serif;
}

.favourites-block{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.favourites-select{
    position: relative;    
    min-width: 300px;
    display: flex;
    width: fit-content;
    cursor: pointer;
}

.favourites-select__dropdown{
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    background: #fff;
    border-radius: 12px;
    display: none;
    flex-direction: column;
    z-index: 1;
    padding: 5px;
    width: 100%;
}

.favourites-select.open .favourites-select__dropdown{
    display: flex;
}

.favourites-select__option--active{
    background: #27348b;
    color: #fff !important;
}

.favourites-select__selected{
    border-radius: 12px;
    padding: 16px 24px;
    background: #fff;
    font-size: 18px;
    line-height: 140%;
    display: flex;
    align-items: center;
    gap: 20px;
    width: 100%;
    justify-content: space-between;
}

.favourites-select__selected::after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' fill='none'%3E%3Cpath fill='%230E0044' fill-rule='evenodd' d='M14 18.084a.58.58 0 0 0 .413-.171l7-7a.583.583 0 1 0-.825-.825L14 16.675l-6.587-6.587a.583.583 0 1 0-.825.825l7 7c.11.109.258.17.412.17Z' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: "";
    height: 24px;
    width: 24px;
    display: block;
}

.favourites-select__option{
    padding: 10px;
    font-size: 18px;
    border-radius: 12px;
    cursor: pointer;
}

.favourites-select__option:hover{
    color: #27348b;
}

.favourites-text{
    font-size: 18px;
    line-height: 140%;
}

.favourites-text-count{
    color: #27348b;
    font-weight: 500;
}

.selection-apartments__info-item span {
    font-weight: 500;
}

.selection-apartments__btn {
    background: rgba(255, 255, 255, 0.5);
    width: 100%;
    padding: 18px 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    color: #27348B;
    border: 2px solid #27348B;
    border-radius: 100px;
    transition: background .4s ease;
    margin-top: 50px;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__btn:hover {
    background: #fff;
}

.selection-apartments__filter {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.selection-apartments__filter-title {
    font-size: 24px;
    font-weight: 500;
    line-height: 33.6px;
    color: #121212;
}

.selection-apartments__filter-top {
    display: flex;
    align-items: center;
    gap: 74px;
}

.selection-apartments__filter-reset {
    font-size: 14px;
    font-weight: 600;
    line-height: 140%;
    display: flex;
    gap: 5px;
    background: unset;
    padding: unset;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__filter-reset:hover svg {
    transition: .4s ease;
    transform: rotate(90deg);
}

.selection-apartments__filter-count {
    font-size: 14px;
    font-weight: 600;
    line-height: 140%;
    color: #A1A1A1;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__filter-list {
    display: grid;
    gap: 20px;
    grid-template-columns: 2fr 1fr 1fr 1fr 2fr;
}

.selection-apartments__filter-label {
    font-size: 14px;
    font-weight: 600;
    line-height: 140%;
    height: 28px;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__filter-item {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.selection-apartments__radios-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.selection-apartments__radio-label {
    background: #fff;
    border-radius: 10px;
    color: #121212;
    font-size: 16px;
    font-weight: 400;
    line-height: 25.6px;
    padding: 15px 17px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    cursor: pointer;
    transition: color .4s ease, background .4s ease;
}

.selection-apartments__radio-label:hover {
    background: #248F29;
    color: #fff;
}

.selection-apartments__radio-input {
    display: none;
}

.selection-apartments__radio-input:checked + label {
    background: #248F29;
    color: #fff;
}

.selection-apartments__wrapper-header {
    display: none;
    gap: 50px;
    justify-content: space-between;
    padding: 0 50px;
    border-bottom: 1px solid #E4E4E4;
    padding-bottom: 30px;
}

.selection-apartments__row {
    background: #fff;
    padding-top: 50px;
    padding-bottom: 50px;
    border-radius: 30px;
}

.selection-apartments__item-img {
    padding-bottom: 10px;
    border-bottom: 1px solid #E4E4E4;
    display: flex;
    justify-content: center;
}

.selection-apartments__row .selection-apartments__item-img {
    padding-bottom: unset;
    border: unset;
}

.selection-apartments__row .selection-apartments__btn {
    width: calc(100% - 100px);
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.selection-apartments__row .selection-apartments__item {
    border-left: unset;
    border-right: unset;
    border-top: unset;
}

.selection-apartments__row .selection-apartments__items {
    gap: 0;
}

.selection-apartments__row .selection-apartments__wrapper-header {
    display: flex;
}

.selection-apartments__row .selection-apartments__items {
    grid-template-columns: 1fr;
}

.selection-apartments__row .selection-apartments__info-item span {
    display: none;
}

.selection-apartments__row .selection-apartments__item {
    flex-direction: row;
    padding: 20px 50px;
    gap: 50px;
    border-bottom: 1px solid #E4E4E4;
    border-radius: unset;
}

.selection-apartments__row .selection-apartments__item:hover {
    background: #FAFAFA;
}

.selection-apartments__row .selection-apartments__info-item {
    display: flex;
    align-items: center;
    flex-direction: row;
    grid-row-start: 1;
    justify-content: start;
}

.selection-apartments__row .selection-apartments__item-img {
    width: 130px;
    height: 130px;
    flex-shrink: 0;
}

.selection-apartments__row .selection-apartments__item-img img {
    width: 100%;
    height: 100%;
}

.selection-apartments__row .selection-apartments__info-list {
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.selection-apartments__header-text {
    font-size: 14px;
    font-weight: 700;
    line-height: 140%;
    display: flex;
    align-items: center;
    color: #101010;
    font-family: 'Montserrat', sans-serif;
    display: flex;
    align-items: center;
    gap: 15px;
}

.selection-apartments__wrapper-header > .selection-apartments__header-text:first-of-type {
    min-width: 130px;
}

.selection-apartments__header-form {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 2fr 1fr 1fr 1fr;
    gap: 10px;
    width: 100%;
}

.selection-apartments__row .selection-apartments__info-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 2fr 1fr 1fr 1fr;
}

.selection-apartments__row .selection-apartments__info-item:nth-child(1) {
    grid-column-start: 7;
}

.selection-apartments__row [data-ceiling-height] {
    display: none;
}

.selection-apartments__info-table {
    display: none;
    gap: 10px;
    align-items: center;
}

.selection-apartments__info-status {
    width: 12px;
    height: 12px;
    border-radius: 50%;
}

.selection-apartments__row .selection-apartments__info-item .selection-apartments__info-status {
    display: block;
}

[data-status="Забронировано"] .selection-apartments__info-status {
    background: #FACD77;
}

[data-status="Свободно"] .selection-apartments__info-status {
    background: #B8ED48;
}

[data-status="Продано"] .selection-apartments__info-status {
    background: #E1E1E1;
}

.popup-plan {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 11;
    display: none;
}

.popup-plan__inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1210px;
    margin: auto;
    height: 100%;
    padding: 0 15px;
}

.popup-plan__inner-header {
    display: flex;
    background: #fff;
    justify-content: space-between;
    gap: 10px;
    align-items: start;
    padding: 20px 50px 20px;
    border-radius: 30px 30px 0 0;
    position: relative;
}

.header__logo.-js-active {
    margin-top: 30px;
}

.popup-plan__inner-header::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 40px;
    height: 1px;
    width: calc(100% - 417px);
    background: #DCDCDC;
}

.popup-close {
    width: 42px;
    height: 42px;
    background: unset;
    border: unset;
    outline: unset;
    padding: unset;
    opacity: .6;
    transition: opacity .4s ease;
}

.popup-close:hover {
    opacity: 1;
}

.popup-plan__inner-header .header__logo img {
    width: 204px;
}

.popup-plan__inner-content {
    padding: 40px 20px 44px 50px;
    display: flex;
    flex-direction: row-reverse;
    gap: 50px;
    background: #fff;
    border-radius: 0 0 30px 30px;
    max-height: calc(100% - 200px);
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.popup-plan__content {
    position: relative;
    background: #fff;
    width: 100%;
}

.popup-plan__content::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #fff 100%);
    pointer-events: none;
    z-index: 1;
}

.popup-plan__content-wrapper {
    overflow: auto;
    height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.popup-plan__content-wrapper::-webkit-scrollbar {
    display: none;
}

.popup-plan__aside {
    flex-shrink: 0;
    background: #27348B;
    padding: 40px;
    border-radius: 30px;
    overflow: auto;
}

.popup-plan__aside-inner {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.popup-plan__aside-text {
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
}

.popup-plan__aside hr {
    width: 100%;
    border: unset;
    height: 1px;
    background: rgba(255, 255, 255, .3);
}

.popup-plan .header__logo svg {
    width: 280px;
    height: 61px;
}

.popup-plan__aside-text_big {
    font-size: 30px;
    font-weight: 400;
    line-height: 42px;
    color: #fff;
    text-decoration: unset;
    font-family: 'Montserrat', sans-serif;
}

.popup-plan__aside-block {
    display: flex;
    flex-direction: column;
}

.popup-plan__aside-text.popup-plan__aside-text_small {
    margin-top: 20px;
    font-weight: 400;
    font-family: 'Montserrat', sans-serif;
}

.popup-plan__aside-buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.popup-plan__aside-btn {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 140%;
    border-radius: 10px;
    padding: 15px 0;
    text-decoration: unset;
    text-align: center;
    transition: background .4s ease, border .4s ease, color .4s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn_white {
    background: #fff;
    color: #434343;
    border: 1px solid transparent;
}

.btn_white:hover {
    border: 1px solid #fff;
    color: #fff;
    background: transparent;
}

.btn_border {
    border: 1px solid #fff;
    color: #fff;
}

.btn_border:hover {
    background: #fff;
    color: #434343;
}

.popup-plan__content-aside {
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 186px;
    flex-shrink: 0;
}

.popup-plan__content-status {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    color: #121212;
    padding: 16px;
    width: 100%;
    border-radius: 10px;
    text-align: center;
    color: #21450A;
}

[data-popup-status="Свободно"] {
    background: #B8ED48;
}

[data-popup-status="Забронировано"] {
    background: #FACD77;
}

[data-popup-status="Продано"] {
    background: #E1E1E1;
}

.popup-plan__price-block {
    display: flex;
    align-items: end;
    justify-content: end;
    flex-direction: column;
}

.popup-plan__price {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 160%;
    color: #121212;
}

.popup-plan__price-square {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    color: #333333;
}

.popup-plan__price-square sup {
    font-size: 7px;
}

.popup-plan__content-top {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 20px;
    margin-bottom: 50px;
}

.popup-plan__content-main {
    max-width: 530px;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.popup-plan__content-title {
    font-size: 32px;
    font-weight: 600;
    line-height: 160%;
    font-family: 'Montserrat', sans-serif;
    margin: 0;
    position: relative;
    width: calc(100% - 32px);
}
.popup-plan__content-title .favourites-btn{
    right: -24px;
}

.popup-plan__content-title sup {
    font-weight: 500;
    margin-left: 20px;
    white-space: nowrap;
}

.popup-plan__content-block {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.popup-plan__content-list {
    padding: unset;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin: unset;
}

.popup-plan__content-item {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 160%;
    color: #333;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 5px;
    border-bottom: 1px solid #F2F2F2;
}

.popup-plan__content-item:last-child {
    padding-bottom: unset;
    border: unset;
}

.popup-plan__content-item span {
    font-weight: 400;
}

.popup-plan__deadline-entry {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 160%;
    color: #27348B;
    border: 1px solid #27348B;
    text-align: center;
    padding: 16px 5px;
    border-radius: 6px;
}

.popup-plan__address-block {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.popup-plan__title-second {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 160%;
    margin: 0;
}

.popup-plan__address-text {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    color: #333;
}

.popup-plan__content-address {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.popup-plan__content-plan {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.popup-plan__content-bottom {
    display: flex;
    flex-direction: column;
    gap: 50px;
}

.popup-plan__content-map {
    height: 387px;
}

.text-weight {
    font-weight: 700;
}

.selection-apartments__filter-dropdown {
    position: relative;
}

.selection-apartments__filter-btn {
    padding: 20px 30px;
    border-radius: 100px;
    border: 1px solid #CECECE;
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__filter-btn span {
    overflow: hidden;
    white-space: nowrap;
}

.selection-apartments__filter-btn img {
    width: 20px;
    height: 20px;
}

.selection-apartments__filter-slider.noUi-target {
    border: unset;
    height: 2px;
}

.selection-apartments__filter-slider.noUi-horizontal .noUi-handle {
    width: 18px;
    height: 18px;
    background: #27348B;
    border-radius: 50%;
    box-shadow: unset;
    border: unset;
    top: 0;
    bottom: 0;
    margin: auto;
}

.selection-apartments__filter-slider .noUi-handle:before, .selection-apartments__filter-slider .noUi-handle:after {
    content: unset;
}

.selection-apartments__filter-slider .noUi-connect {
    background: #27348B;
}

.selection-apartments__filter-slider .noUi-handle.noUi-handle-lower {
    right: -15px;
}

.selection-apartments__filter-slider .noUi-handle.noUi-handle-upper {
    right: 0;
}

.selection-apartments__slider-wrapper {
    padding: 20px 30px 0;
    border-radius: 100px;
    border: 1px solid #CECECE;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.selection-apartments__slider-inputs {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.selection-apartments__slider-input {
    border: unset;
    font-size: 16px;
    font-weight: 500;
    line-height: 160%;
    background: unset;
    width: fit-content;
    max-width: 60px;
    padding: unset;
    font-family: 'Montserrat', sans-serif;
}

.selection-apartments__slider-input:focus-visible {
    outline: unset;
}

.selection-apartments__checkbox {
    display: flex;
    gap: 20px;
    position: relative;
    z-index: 1;
}

.selection-apartments__checkbox-input {
    position: absolute;
    width: 26px;
    height: 26px;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
    top: 3px;
}

.selection-apartments__checkbox-label {
    font-size: 16px;
    font-weight: 500;
    line-height: 160%;
    color: #121212;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
}

.checkbox__icon {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    overflow: visible;
}

.checkbox__icon path {
    stroke-width: 2;
    stroke: #fff;
}

.checkbox__icon rect {
    stroke: rgba(18, 18, 18, .2);
    fill: transparent;
    rx: 6;
    transition: fill 0.2s ease-out, stroke 0.2s ease-out;
}

.checkbox__icon .tick {
    stroke-dasharray: 20px;
    stroke-dashoffset: 20px;
    transition: stroke-dashoffset 0.2s ease-out;
}

.selection-apartments__checkbox-input:checked + .checkbox__icon .tick {
    stroke-dashoffset: -2;
    stroke-dasharray: 16;
}

.selection-apartments__checkbox-input:checked + .checkbox__icon rect {
    fill: rgb(39 52 139);
    stroke: transparent;
}

.selection-apartments__checkboxs {
    display: none;
    flex-direction: column;
    gap: 15px;
    position: absolute;
    left: 0;
    width: 100%;
    background: #fff;
    height: fit-content;
    padding: 20px;
    border-radius: 20px;
    z-index: 2;
}

.selection-apartments__checkboxs.selection-apartments__checkboxs-first {
    margin-top: unset;
}

@media (max-width: 1600px) {
    .selection-apartments__inner {
        grid-template-columns: 1fr;
    }

    .selection-apartments__filter {
        grid-row-start: 1;
        position: unset;
    }

    .selection-apartments__filter-list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 1550px) {
    .selection-apartments__row .selection-apartments__item {
        gap: 30px;
    }

    .selection-apartments__row .selection-apartments__item-img {
        width: 100px;
        height: 100px;
    }

    .selection-apartments__wrapper-header {
        gap: 30px;
    }

    .selection-apartments__info-item {
        font-size: 16px;
    }
}

@media (max-width: 1350px) {
    .selection-apartments__items {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1300px) {
    .selection-apartments__row .selection-apartments__item {
        padding: 20px 30px;
        gap: 20px;
    }
}

@media (max-width: 1200px) {
    .selection-apartments__btn-table {
        display: none;
    }
}

@media (max-width: 1150px) {
    .selection-apartments__items {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 1050px) {
    .popup-plan__content-top {
        flex-direction: column-reverse;
    }

    .popup-plan__content-main {
        max-width: 100%;
    }

    .popup-plan__content-aside {
        flex-direction: row;
        align-items: start;
        width: 100%;
        background: #fff;
        padding: 10px 60px;
        top: 0;
    }

    .popup-plan__price-block {
        white-space: nowrap;
    }
}

@media (max-width: 991px) {
    .selection-apartments__block-buttons {
        display: none;
    }

    .popup-plan__inner-content {
        padding: 20px;
        max-height: calc(100% - 138px);
        border-radius: unset;
        gap: 20px;
    }

    .popup-plan__content-aside {
        padding: 10px 20px;
    }

    .popup-plan__aside-text_big {
        font-size: 22px;
    }

    .popup-plan__aside {
        padding: 40px 20px;
    }

    .selection-apartments__info-item {
        font-size: 14px;
    }

    .selection-apartments {
        margin-bottom: 160px;
    }

    .popup-plan__inner {
        padding: 0;
        justify-content: flex-start;
    }

    .popup-plan__inner-header {
        border-radius: unset;
    }

    .popup-plan__content {
        height: 100%;
    }

    .popup-plan__inner-header::before {
        content: unset;
    }

    .selection-apartments__filter-top {
        gap: 10px 40px;
    }

    .selection-apartments__title {
        font-size: 50px;
    }
}

@media (max-width: 900px) {
    .selection-apartments__items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .popup-plan__content-title {
        font-size: 26px;
    }

    .popup-plan__content-main {
        gap: 30px
    }

    .popup-plan__price {
        font-size: 20px;
    }

    .popup-plan__content-bottom {
        gap: 30px;
    }

    .selection-apartments__title {
        font-size: 40px;
    }
}

@media (max-width: 575px) {
    .selection-apartments__item {
        padding: 15px;
        gap: 10px;
    }

    .selection-apartments__filter-title {
        font-size: 18px;
    }

    .selection-apartments__radio-label {
        padding: 9px 17px;
        min-width: 48px;
    }

    .selection-apartments__filter-list {
        gap: 20px;
    }

    .selection-apartments__block {
        margin-bottom: 30px;
    }

    .selection-apartments__filter-top {
        flex-wrap: wrap;
    }

    .popup-plan__content::after {
        display: none;
    }

    .popup-plan__content-aside {
        position: unset;
        width: 100%;
        margin-left: unset;
        padding: 0;
    }

    .popup-plan__inner-content {
        max-height: calc(100% - 86px);
        flex-direction: column;
        overflow: auto;
    }

    .popup-plan__content-wrapper {
        overflow: unset;
    }

    .popup-plan__aside {
        position: relative;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px 10px;
        padding: 20px;
    }

    .popup-plan__aside-btn.btn_border {
        display: none;
    }

    .popup-plan__aside-buttons {
        grid-column: span 2;
    }

    .popup-plan__inner-header {
        padding: 20px 20px;
    }

    .popup-close {
        width: 32px;
        height: 32px;
    }

    .popup-close {
        width: 20px;
        height: 20px;
    }

    .popup-plan__content {
        height: calc(100vh - 284px);
    }

    .popup-plan__content-top {
        margin-bottom: 35px;
    }

    .selection-apartments {
        margin-bottom: 80px;
    }

    .selection-apartments__filter-list {
        grid-template-columns: 1fr;
    }

    .selection-apartments__filter-item {
        gap: 5px;
    }

    .selection-apartments__filter-btn {
        font-size: 14px;
    }

    .selection-apartments__slider-wrapper {
        padding: 15px 30px 0;
    }

    .selection-apartments__slider-input {
        font-size: 14px;
    }

    .popup-plan__aside hr {
        display: none;
    }

    .popup-plan__aside {
        border-radius: unset;
    }

    .header__logo.-js-active {
        margin-left: unset;
        margin-top: unset;
    }

    .popup-plan .header__logo svg {
        width: 180px;
        height: unset;
    }

    .selection-apartments__inner {
        gap: 30px;
    }

    .selection-apartments__title {
        font-size: 30px;
    }

    .selection-apartments__block {
        margin-bottom: 20px;
    }

    .popup-plan__content-status {
        font-size: 14px;
        padding: 10px;
    }

    .popup-plan__price {
        font-size: 16px;
    }

    .selection-apartments__btn {
        padding: 14px 0;
        font-size: 14px;
        margin-top: 30px;
    }
    
    .selection-apartments__item-address{
        font-size: 12px;
        top: 5px;
        left: 5px;
        padding: 2px 5px;
    }
}

@media (max-width: 500px) {
    .selection-apartments__item-img img {
        margin: auto;
        display: block;
        max-width: 80%;
    }

    .selection-apartments__items {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        grid-auto-rows: 1fr;
    }
}

@media (max-width: 470px) {
    .popup-plan__inner-header .-js-active.header__logo::after {
        width: 118px;
        height: 47px;
        bottom: -22px;
        transform: unset;
        left: unset;
    }

    .popup-plan__inner-header .header__logo img {
        width: 160px;
    }

    .popup-plan__aside-block {
        display: none;
    }

    .popup-plan__content {
        height: calc(100vh - 160px);
    }
}

/* Подбор квартир */


.snow-container {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100vh;
    z-index: 10;
    pointer-events: none;
}

.snowflake {
    position: absolute;
    background-color: #b5e0ff;
    border-radius: 50%;
    opacity: 0.8;
    pointer-events: none;
    animation-iteration-count: infinite;
}

@keyframes fall {
    0% {
        opacity: 0;
        transform: translateY(0);
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 0.5;
        transform: translateY(100vh);
    }
    100% {
        opacity: 0.5;
        transform: translateY(90vh);
    }
}

@keyframes diagonal-fall {
    0% {
        opacity: 0;
        transform: translate(0, 0);
    }
    10% {
        opacity: 1;
    }
    100% {
        opacity: 0.25;
        transform: translate(10vw, 100vh);
    }
}

.snowdrift-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2;
}

.snowdrift {
    width: 100%;
    height: 10px;
    background: linear-gradient(to top, #ffffff, #f1f8ff);
    box-shadow: 0px 0px 20px 10px rgba(255, 255, 255, 0.8);
    overflow: hidden;
}

.snowdrift__img {
    position: absolute;
    bottom: 0;
    filter: drop-shadow(0px 0px 20px rgba(255, 255, 255, 0.8));
    z-index: -1;
}

.snowdrift__img--1 {
    width: 170px;
    height: 40px;
    left: 12%;
}

.snowdrift__img--2 {
    width: 280px;
    height: 70px;
    right: 3%;
    transform: scaleX(-1);
}

.newyear-decoration--1 {
    position: absolute;
    top: 48px;
    left: 0;
    width: 366px;
    pointer-events: none;
}

.newyear-decoration--2 {
    position: absolute;
    top: 56px;
    right: 0;
    width: 250px;
    transform: scaleX(-1);
    pointer-events: none;
}

[data-sorting="down"] img {
    transform: rotate(180deg);
}

[data-sorting="up"] img {
    transform: rotate(0deg);
}

@media (max-width: 1920px) {
    .newyear-decoration--1 {
        width: 235px;
    }

    .newyear-decoration--2 {
        width: 150px;
    }
}

@media (max-width: 768px) {
    .newyear-decoration--1 {
        top: 40px;
        width: 175px;
    }

    .newyear-decoration--2 {
        width: 120px;
    }

    .snowdrift__img--2 {
        display: none;
    }
}

@media (max-width: 768px) {
    .newyear-decoration--1 {
        width: 140px;
    }

    .newyear-decoration--2 {
        width: 100px;
    }
}

.page404 {
    overflow: hidden;
}

.page404__inner {
    position: relative;
    min-height: 76vh;
}

.page404__wrapper {
    padding: 280px 0 250px;
    max-width: 584px;
}

.page404__title {
    margin-bottom: 32px;
    font-family: 'Montserrat', sans-serif;
    font-size: 50px;
    font-weight: 600;
    line-height: 1;
}

.page404__subtitle {
    margin-bottom: 60px;
    font-family: 'Montserrat', sans-serif;
    font-size: 21px;
    line-height: 1.2;
}

.page404__btn {
    padding: 22px 53px;
    max-width: 406px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 500;
    background-color: #27348B;
    color: #fff;
    white-space: nowrap;
}

.page404__btn.btn__hover::after {
    background-color: #000;
}

.page404__btn.btn__hover:hover {
    color: #fff;
}

.page404__btn.btn__hover:hover svg path {
    stroke: #fff;
}

.page404__image1 {
    max-width: 539px;
    width: 100%;
    position: absolute;
    left: 46%;
    bottom: -24px;
}

.page404__image2 {
    max-width: 688px;
    width: 100%;
    position: absolute;
    left: 48%;
    bottom: 175px;
    z-index: -1;
}

.page404__image1 img, .page404__image2 img {
    width: 100%;
    height: 100%;
}

@media (max-width: 1440px) {
    .page404__image1 {
        max-width: 420px;
        left: 56%;
    }

    .page404__image2 {
        max-width: 530px;
        /* bottom: 300px; */
        left: 55%;
    }
}

@media (max-width: 1200px) {
    .page404__inner {
        min-height: 860px;
        display: flex;
        justify-content: center;
    }

    .page404__wrapper {
        padding: 140px 0 0;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .page404__title {
        margin-bottom: 22px;
        font-size: 40px;
        text-align: center;
    }

    .page404__subtitle {
        margin-bottom: 40px;
        text-align: center;
        font-size: 18px;
    }

    .page404__btn {
        padding: 15px 35px;
        font-size: 18px;
    }

    .page404__image1 {
        max-width: 300px;
        left: auto;
    }

    .page404__image2 {
        max-width: 400px;
        top: auto;
        left: 36%;
        bottom: 100px;
    }
}

@media (max-width: 768px) {
    .page404__image2 {
        left: 27%;
    }
}

@media (max-width: 520px) {
    .page404__inner {
        min-height: 660px;
    }

    .page404__wrapper {
        padding: 70px 0 0;
    }

    .page404__title {
        font-size: 28px;
    }

    .page404__subtitle {
        margin-bottom: 25px;
        font-size: 16px;
    }

    .page404__image1 {
        max-width: 240px;
    }

    .page404__image2 {
        max-width: 300px;
        bottom: 72px;
    }
}

.building__file {
    display: block;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #27348B;
}

@media (max-width: 1440px) {
    .building__text {
        margin-bottom: 5px;
    }
}

.fixed-btn {
    position: sticky;
    margin-top: -215px;
    margin-bottom: 20px;
    width: fit-content;
    bottom: 40px;
    right: unset;
    z-index: 2;
    left: calc(100% - 140px);
}

.fixed-btn__link {
    position: relative;
    width: 142px;
    height: 142px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    background-color: #27348B;
    border-radius: 50%;
}

.fixed-btn__link::before {
    content: '';
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: #27348B;
    border-radius: 50%;
    z-index: -1;

    animation: pulse-dot 2s ease infinite;
}

.fixed-btn__link::after {
    content: '';
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: #27348B;
    border-radius: 50%;
    z-index: -2;

    animation: pulse-ring 2s ease infinite;
}

.fixed-btn__link span {
    max-width: 86px;
    font-family: 'Montserrat', sans-serif;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
}

@keyframes pulse-ring {
    0% {
        transform: scale(1);
    }
    80%, 100% {
        opacity: 0;
        transform: scale(1.2);
    }
}

@keyframes pulse-dot {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.02);
    }
    100% {
        transform: scale(1);
    }
}

@media (max-width: 768px) {
    .fixed-btn {
        bottom: 30px;
        max-width: 215px;
        left: calc(100% - 130px);
    }

    .fixed-btn__link {
        width: 100px;
        height: 100px;
    }

    .fixed-btn__link img {
        width: 35px;
    }

    .fixed-btn__link span {
        font-size: 12px;
    }
}

@media(max-width: 991px){
    .fixed-btn{
        margin-bottom: 0;
        margin-top: -55px;
    }
}

body {
    overflow-x: hidden;
}

main {
    position: relative;
    padding-bottom: 60px;
}

@media (max-width: 768px) {
    main {
        padding-bottom: 30px;
    }
}

.footer .footer__top-contacts-phone:hover, .footer .footer__top-contacts-mail:hover {
    color: #27348b;
}

.cookie {
    position: fixed;
    bottom: 0;
    z-index: 1002;
    width: 100%;
    box-shadow: 0px 4px 54px 0px rgba(0, 0, 0, 0.1);
    background: #fff;
    opacity: 0;
    transform: translateY(200px);
    transition: all 0.3s ease;
}

.cookie.show-cookie {
    opacity: 1;
    transform: translateY(0);
}

.cookie__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 50px;
    padding: 10px 0;
}

.cookie__text-wrapper {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

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

.cookie__text a {
    color: #27348B;
    text-decoration: underline;
    transition: .4s ease;
}

.feedback__form-approval a {
    color: #27348B;
    text-decoration: underline;
    transition: .4s ease;
}

.cookie__text a:hover, .feedback__form-approval a:hover {
    color: #000;
}

.cookie__button {
    width: fit-content;
    font-size: 16px;
    padding: 10px 30px;
    background-color: #27348B;
    border-radius: 40px;
    font-weight: 600;
    color: #fff;
    transition: .3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cookie__button.btn__hover:after {
    background: #000;
}

@media (max-width: 991px) {
    .cookie__wrapper {
        gap: 30px;
        flex-direction: column
    }

    .cookie__text {
        text-align: center;
    }
}

@media (max-width: 768px) {
    .footer .footer__bottom {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 575px) {
    .cookie__wrapper {
        gap: 20px;
    }

    .cookie__text {
        font-size: 12px;
    }

    .footer .footer__bottom {
        align-items: start;
    }
}

.wrapper {
    background-color: #fff;
}

.fixed-btn__link--calculator {
    margin-bottom: 15px;
}

.fixed-btn__link {
    width: 100px;
    height: 100px;
}

.fixed-btn__link span {
    font-size: 12px;
    font-weight: 400;
}

.fixed-btn__link img {
    width: 35px;
    height: auto;
}

.stocks {
    display: none;
}

.houses__info-title {
    margin: 0;
}

.houses__info-label,
.houses__info-title {
    font-size: 14px;
}

.modal__form .modal__form-btn {
    margin-top: 0;
}

.section__title {
    margin-top: 0;
}

.btn-desktop {
    position: sticky;
    width: fit-content;
    bottom: 30px;
    right: unset;
    z-index: 2;
    left: calc(100% - 140px);
}

@media (max-width: 768px) {
    .btn-desktop {
        display: none;
    }
}


.building-gallery__item img {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    object-fit: cover;
}

.header__wa {
    width: 18px;
    height: 18px;
    transition: .3s ease;
}

.header__wa:hover {
    opacity: 0.6;
}

.header__elements-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
}

.scheme-modal__iframe {
    padding-top: 120px;
    position: relative;
}

.scheme-modal__iframe:before {
    position: absolute;
    top: 10px;
    left: 45%;
    content: "";
    width: 100px;
    height: 100px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("data:image/svg+xml,%3Csvg fill='%23000000' width='100' height='100' viewBox='0 0 24 24' id='double-down-sign' xmlns='http://www.w3.org/2000/svg' class='icon line'%3E%3Cpolyline id='primary' points='21 5 12 10 3 5' style='fill: none; stroke: rgb(39, 52, 139); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;'%3E%3C/polyline%3E%3Cpolyline id='primary-2' data-name='primary' points='21 14 12 19 3 14' style='fill: none; stroke: rgb(39, 52, 139); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5;'%3E%3C/polyline%3E%3C/svg%3E");
    animation: bounce 2s infinite;
}

@keyframes bounce {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(20px);
    }
    100% {
        transform: translateY(0);
    }
}

@media (max-width: 768px) {
    .scheme-modal__iframe {
        padding-top: 70px;
    }

    .scheme-modal__iframe:before {
        width: 50px;
        height: 50px;
    }
}

.banner__item {
    position: relative;
    height: 100dvh;
}

.banner__swiper-text {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.banner__swiper-text p {
    font-size: 18px;
    line-height: 1.3;
    color: #fff;
}

.banner__item .banner__swiper-content--wide {
    max-width: 880px;
}

.banner__content-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 20px;
}

.banner__content-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.banner__content-img {
    width: 80px;
    height: 80px;
}

.banner__content-title {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
    color: #fff;
}

@media (max-width: 1250px) {
    .banner__swiper-text p {
        font-size: 16px;
    }

    .banner__content-img {
        width: 50px;
        height: 50px;
    }

    .banner__content-title {
        font-size: 16px;
    }

    .banner__item .banner__swiper-content--wide {
        max-width: 720px;
    }
}

@media (max-width: 575px) {
    .banner__content-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

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

/* Анимированная кнопка для ЖК Багульник */

.building__panoramic-btn {
    position: absolute;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
}

.animated-button {
    z-index: 2;
    background: linear-gradient(-30deg, #2d3b9f 50%, #27348B 50%);
    padding: 15px 25px;
    display: inline-block;
    overflow: hidden;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0.8px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    transition: .3s ease-in-out;
    -webkit-box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}

.animated-button:hover {
    opacity: 0.9;
}

.animated-button span {
    position: absolute;
}

.animated-button span:nth-child(1) {
    top: 0px;
    left: 0px;
    width: 100%;
    height: 2px;
    background: -webkit-gradient(linear, right top, left top, from(rgba(43, 8, 8, 0)), to(#9aa4e3));
    background: linear-gradient(to left, rgba(43, 8, 8, 0), #9aa4e3);
    -webkit-animation: 2s animateTop linear infinite;
    animation: 2s animateTop linear infinite;
}

.animated-button span:nth-child(2) {
    top: 0px;
    right: 0px;
    height: 100%;
    width: 2px;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(43, 8, 8, 0)), to(#9aa4e3));
    background: linear-gradient(to top, rgba(43, 8, 8, 0), #9aa4e3);
    -webkit-animation: 2s animateRight linear -1s infinite;
    animation: 2s animateRight linear -1s infinite;
}

.animated-button span:nth-child(3) {
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 2px;
    background: -webkit-gradient(linear, left top, right top, from(rgba(43, 8, 8, 0)), to(#9aa4e3));
    background: linear-gradient(to right, rgba(43, 8, 8, 0), #9aa4e3);
    -webkit-animation: 2s animateBottom linear infinite;
    animation: 2s animateBottom linear infinite;
}

.animated-button span:nth-child(4) {
    top: 0px;
    left: 0px;
    height: 100%;
    width: 2px;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(43, 8, 8, 0)), to(#9aa4e3));
    background: linear-gradient(to bottom, rgba(43, 8, 8, 0), #9aa4e3);
    -webkit-animation: 2s animateLeft linear -1s infinite;
    animation: 2s animateLeft linear -1s infinite;
}

@media (max-width: 1200px) {
    .building__panoramic-btn {
        bottom: 50px;
    }
}

@media (max-width: 768px) {
    .animated-button {
        padding: 10px 20px;
        font-size: 14px;
    }
}

@media (max-width: 620px) {
    .animated-button {
        padding: 10px 15px;
        font-size: 12px;
    }

    .building__panoramic-btn {
        bottom: 25px;
    }
}

@-webkit-keyframes animateTop {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@keyframes animateTop {
    0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
    100% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

@-webkit-keyframes animateRight {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
    100% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@keyframes animateRight {
    0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
    100% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
}

@-webkit-keyframes animateBottom {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@keyframes animateBottom {
    0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    100% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}

@-webkit-keyframes animateLeft {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
}

@keyframes animateLeft {
    0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
    }
    100% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
    }
}


.zhk-page {
    position: relative;
    margin-top: var(--header-height);
}

.zhk-page .breadcrumbs {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    margin-top: 50px;
}

.zhk-page .breadcrumbs__link {
    color: #fff;
}

@media (max-width: 768px) {
    .zhk-page .breadcrumbs {
        margin-top: 10px;
    }
}


.building__street {
    position: absolute;
    z-index: 1;
    left: 7.5vw;
    bottom: 3.229vw;
    width: auto;
    height: 11.615vw;
}

.building__street img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 1400px) {
    .header .header__menu-list {
        gap: 15px;
    }
}

@media (max-width: 1299px) {
    .header .header__menu-item:nth-child(6),
    .header .header__menu-item:nth-child(7) {
        display: none;
    }
}


@media (min-width: 1300px) {
    .header__menu-more {
        display: none;
    }
}


@media (min-width: 1251px) {
    .header .header__button-block {
        display: none;
    }
}

.old-building {
    color: #000;
}

.old-building__top {
    margin-bottom: 100px;
}

.old-building__title {
    max-width: 1328px;
    margin-top: 0;
    margin-bottom: 50px;
    font-family: 'Montserrat', sans-serif;
    font-size: clamp(30px, calc(64 / 1920) * 100vw, 64px);
    font-weight: 700;
    line-height: 1.1;
}

.old-building__subtitle {
    font-size: clamp(16px, calc(20 / 1920) * 100vw, 20px);
    font-weight: 500;
    line-height: 1.2;
    color: #ADADAD;
}

.old-building-main {
    margin-bottom: 120px;
    display: flex;
    gap: 40px;
}

.old-building-main__sliders {
    max-width: 49%;
    height: 649px;
    display: flex;
    gap: 38px;
}

.old-building-main__thumbnails {
    position: relative;
    max-width: 112px;
    width: 100%;
}

.old-building-main__thumbnails-inner {
    height: 100%;
}

.old-building-main__thumbnails-slide {
    aspect-ratio: 1 / 1;
    flex-shrink: 0;
    cursor: pointer;
    border-radius: 15px;
    overflow: hidden;
}

.old-building-main__thumbnails-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.old-building-main__thumbnails-btn {
    position: absolute;
    bottom: -29px;
    left: 50%;
    width: 62px;
    height: 62px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #00000073;
    backdrop-filter: blur(6px);
    border-radius: 50%;
    z-index: 1;
    transform: translateX(-50%);
    cursor: pointer;
    transition: all 0.3s ease;
}

.old-building-main__slider-slide {
    border-radius: 30px;
    overflow: hidden;
}

.old-building-main__slider-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
    transform: scale(1.1);
}

.old-building-main__slider-slide:hover img {
    transform: scale(1);
}

.old-building-main__slider-btn {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 62px;
    height: 62px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #00000073;
    backdrop-filter: blur(6px);
    border-radius: 50%;
    z-index: 1;
    transform: translateY(-50%);
    cursor: pointer;
    transition: all 0.3s ease;
}

@media (hover: hover) {
    .old-building-main__slider-btn:hover, .old-building-main__thumbnails-btn:hover {
        opacity: 0.8;
    }
}

.old-building-main__content {
    flex-grow: 1;
}

.old-building-main__details {
    margin-bottom: 50px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.old-building-main__detail {
    display: flex;
    align-items: center;
    gap: 20px;
}

.old-building-main__detail-icon {
    width: 64px;
    height: 64px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border: 1px solid #DDDDDD;
    border-radius: 10px;
}

.old-building-main__detail-info {
    padding-bottom: 20px;
    flex-grow: 1;
    border-bottom: 1px dotted #C6C6C6;
}

.old-building-main__detail-info h4 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
}

.old-building-main__detail-info p {
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1;
    hyphens: auto;
}

.old-building-main__panorama {
    padding: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #27348B;
    border-radius: 20px;
}

.old-building-main__panorama-btn {
    padding: 20px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    background-color: #fff;
    font-size: 20px;
    font-weight: 700;
    color: #27348B;
    border: 1px solid #fff;
    border-radius: 100px;
}

.old-building-main__panorama-window {
    position: fixed;
    inset: 0;
    opacity: 0;
    pointer-events: none;
}

.old-building-main__panorama-window.active {
    opacity: 1;
    pointer-events: all;
}

.old-building__map {
    position: relative;
    width: 100%;
    height: 763px;
    overflow: hidden;
    border-radius: 25px;
}

.old-building__map-info {
    position: absolute;
    top: 50%;
    left: 47px;
    z-index: 1;
    transform: translateY(-50%);
    padding: 48px 35px;
    width: 360px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    background-color: #fff;
    border-radius: 30px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease;
}

.old-building__map-info.active {
    opacity: 1;
    pointer-events: all;
}

.old-building__map-title {
    margin: 0;
    padding-bottom: 20px;
    font-size: 16px;
    font-weight: 500;
    color: #7C787C;
    border-bottom: 1px solid #DDCEC2;
}

@media (max-width: 1440px) {
    .old-building__top {
        margin-bottom: 70px;
    }

    .old-building__title {
        margin-bottom: 30px;
    }

    .old-building-main__sliders {
        height: 590px;
        gap: 25px;
    }

    .old-building-main__details {
        gap: 30px;
    }

    .old-building-main__detail-info p {
        font-size: 20px;
    }

    .old-building-main__detail-icon {
        width: 55px;
        height: 55px;
    }

    .building__map {
        height: 680px;
    }
}

@media (max-width: 1300px) {
    .old-building-main__sliders {
        height: 500px;
    }

    .old-building__map {
        height: 600px;
    }
}

@media (max-width: 1200px) {
    .old-building-main {
        margin-bottom: 80px;
        flex-direction: column;
    }

    .old-building-main__sliders {
        max-width: 100%;
    }

    .old-building__map-info {
        width: 280px;
    }
}

@media (max-width: 991px) {
    .old-building__top {
        margin-bottom: 50px;
    }

    .old-building-main__sliders {
        height: 450px;
    }

    .old-building-main__panorama {
        padding: 30px;
    }

    .old-building__map-info {
        padding: 30px;
        width: 250px;
    }
}

@media (max-width: 768px) {
    .old-building__map {
        height: 470px;
    }

    .old-building__map-info {
        top: 20px;
        right: 47px;
        width: auto;
        flex-direction: row;
        transform: translateX(0);
    }

    .old-building__map-title {
        padding-bottom: 0;
        border-bottom: 0;
    }
}

@media (max-width: 575px) {
    .old-building__top {
        margin-bottom: 30px;
    }

    .old-building-main__sliders {
        height: 340px;
        gap: 15px;
    }

    .old-building-main__thumbnails-btn, .old-building-main__slider-btn {
        width: 50px;
        height: 50px;
    }

    .old-building-main {
        margin-bottom: 50px;
    }

    .old-building-main__details {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .old-building-main__detail-info {
        padding-bottom: 15px;
    }

    .old-building-main__detail-info h4 {
        margin-bottom: 10px;
        font-size: 14px;
    }

    .old-building-main__detail-info p {
        font-size: 18px;
    }

    .old-building-main__panorama {
        padding: 20px;
    }

    .old-building-main__panorama-btn {
        padding: 15px;
        font-size: 18px;
    }

    .old-building__map-info {
        padding: 20px;
        top: 10px;
        border-radius: 20px;
    }

    .old-building__map-title {
        font-size: 14px;
    }
}

@media (max-width: 450px) {
    .old-building-main__sliders {
        height: 300px;
    }

    .old-building-main__thumbnails {
        max-width: 80px;
    }
}

.old-building__title {
    max-width: 69.167vw;
    margin-bottom: 30px;
}

.old-building__top {
    margin-bottom: 50px;
}

/* Прелоадер */
#preloader {
    position: fixed;
    inset: 0;
    background: #f0f4ff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.loader {
    position: relative;
    width: 150px;
    height: 150px;
}

.circle-frame {
    position: absolute;
    top: 0;
    left: 0;
    width: 150px;
    height: 150px;
    border: 5px solid #27348b;
    border-radius: 50%;
    border-top-color: transparent;
    animation: spin 1.5s linear infinite;
}

.svg-icon {
    position: absolute;
    top: 25px;
    left: 25px;
    width: 100px;
    height: 100px;
}

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

.houses__info--top {
    min-width: fit-content;
}

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

.header__menu-item {
    display: flex;
    align-items: center;
}

.ui-checkbox__label {
    color: #111;
}

.section--steps {
    margin-top: 100px;
}

.section--steps .building__gallery {
    margin-top: 0;
}

@media (max-width: 768px) {
   .section--steps {
        margin-top: 50px;
    } 
}

.building-gallery__item a {
    display: flex;
    overflow: hidden;
    border-radius: 30px;
}

.building-gallery__item img {
    transform: scale(1.2);
    border-radius: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .9s cubic-bezier(.22, 1, .36, 1);
}

.building-gallery__item:hover img{
    transform: scale(1);
}

.building-gallery__item .date {
    margin-top: 15px;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

.steps-form__top .section__title {
    margin-bottom: 0;
}

.steps-form__top.section__top {
    margin-bottom: 102px;
}

.steps-form__top p {
    max-width: 417px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
}

.steps-form__form {
    max-width: 1114px;
    margin: 0 auto;
}

.steps-form__slider {
    overflow: hidden;
    position: relative;
    height: auto;
}

.steps-form__steps {
    display: flex;
    transition: transform 0.5s ease;
}

.steps-form__step {
    margin-bottom: 150px;
}

.steps-form__bottom {
    display: flex;
    align-items: center;
    gap: 60px;
}

.steps-form__submit.btn__hover {
    padding: 26px 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 26px;
    flex-shrink: 0;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    background-color: #27348B;
}

.steps-form__submit.btn__hover::after {
    background-color: #303030;
}

.steps-form__form h3 {
    margin-top: 0;
    margin-bottom: 50px;
    font-size: 24px;
    font-weight: 500;
}

.steps-form__options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 20px;
}

.steps-form__options label {
    padding: 25px 30px;
    display: flex;
    align-items: center;
    gap: 20px;
    font-weight: 500;
    background-color: #F1F2FA;
    color: #5F6971;
    border: 1px solid #F1F2FA;
    border-radius: 30px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.steps-form__options label:has(input:checked) {
    border-color: #27348B;
}

.steps-form__options label:has(input[type="checkbox"])::before {
    content: '';
    width: 22px;
    height: 22px;
    border: 3px solid #F1F2FA;
    outline: 1px solid #BDBFD3;
    transition: all 0.3s ease;
}

.steps-form__options label:has(input[type="checkbox"]:checked)::before {
    background-color: #27348B;
    outline-color: #27348B;
}

.steps-form__options label:has(input[type="radio"])::before {
    content: '';
    width: 22px;
    height: 22px;
    border: 3px solid #F1F2FA;
    border-radius: 50%;
    outline: 1px solid #BDBFD3;
    transition: all 0.3s ease;
}

.steps-form__options label:has(input[type="radio"]:checked)::before {
    background-color: #27348B;
    outline-color: #27348B;
}

.steps-form__navigation {
    display: flex;
    justify-content: space-between;
    gap: 30px;
}

.steps-form__buttons {
    display: flex;
    gap: 20px;
}

.steps-form__button--prev {
    width: 67px;
    height: 67px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #303030;
    border: 1px solid #303030;
    color: #fff;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.steps-form__button--next {
    padding: 0 35px;
    height: 67px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    font-weight: 500;
    color: #27348B;
    border: 2px solid #27348B;
    border-radius: 30px;
    transition: all 0.3s ease;
}

.steps-form__button--next:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.steps-form__progress {
    flex-grow: 1;
}

.progress {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 20px;
}

.progress__text {
    display: flex;
    gap: 10px;
    font-weight: 500;
    color: #727272;
}

.progress__percent {
    font-weight: 700;
    color: #27348B;
}

.progress__bar {
    width: 100%;
    height: 6px;
}

.progress__fill {
    height: 100%;
    background-color: #27348B;
    border-radius: 5px;
}

.steps-form__range {
    background-color: #F1F2FA;
    border: none;
}

.steps-form__input.ui-input {
    padding: 25px 30px;
    height: auto;
    font-size: 16px;
}

.steps-form__input.ui-input:focus {
    border-color: #27348B;
}

.custom-input__label {
    position: relative;
    padding-left: 32px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    color: #666372;
    cursor: pointer;
}

.custom-input__label::before {
    content: '';
    position: absolute;
    top: -2px;
    left: 0;
    width: 22px;
    height: 22px;
    background: no-repeat center center / 70%;
    background-color: #F1F2FA;
    border: 1px solid #D7D8E6;
    border-radius: 6px;
}

.custom-input__label a {
    text-decoration: underline;
    color: #27348B;
}

.custom-input:has(input:checked) .custom-input__label::before {
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 3L4.5 8.5L2 6' stroke='%2327348B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.steps-form__result {
    display: none;
}

.steps-form__result h3 {
    margin-bottom: 31px;
}

.steps-form__result p {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
}

.steps-form__submit--result {
    width: 100%;
}

.steps-form__presentation {
    margin-bottom: 31px;
    padding: 24px 32px;
    background-color: #F4F5F9;
    border-radius: 30px;
}

.steps-form__presentation-title {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
}

.steps-form__presentation-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.steps-form__presentation-item a {
    padding: 12px 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
    border-radius: 50px;
    color: #27348B;
    border: 2px solid #27348B;
    transition: all 0.3s ease;
}

/* Редизайн шапки */
.header-redesign{
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    width: 100%;
    padding: 16px 0;
    z-index: 10;
}

.header-redesign__inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 143px;
}

.header-redesign__logo{
    width: 157px;
    position: relative;
    z-index: 1;
}

.header-redesign__wrapper{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
}

.header-redesign__contacts{
    display: flex;
    align-items: center;
    gap: 20px;
}

.header-redesign__phone{
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.header-redesign__phone span:first-child{
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 120%;
    color: #111;
    transition: .3s ease;
}

.header-redesign__phone:hover span:first-child{
    color: #27348b;
}

.header-redesign__phone span:last-child{
    font-family: "Gilroy", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 140%;
    color: #7d7d7d;
}

.link-effect{
    border-radius: 50px;
    background: #f5f5f5;
    transition: all .3s;
}

.header-redesign__list{
    display: flex;
    align-items: center;
    gap: 4px;
}

.header-redesign__item{
    position: relative;
}

.header-redesign__link{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 140%;
    text-align: center;
    color: #101010;
    padding: 16px 24px;
    transition: all .3s;
}

.header-redesign__dropdown-more{
    top: calc(100% + 16px);
    padding: 26px 10px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 215px;   
}

.header-redesign__dropdown{
    background: #fff;
    position: absolute;
    left: 0;
    border-radius: 0 0 20px 20px;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    transition: all .3s;
}

.header-redesign__dropdown-building{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 36px 20px 20px;
    width: 100vw;
    max-width: 880px;
    top: calc(100% + 16px);
}

.header-redesign__dropdown-link{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 140%;
    text-align: center;
    color: #101010;
    border-radius: 12px;
    padding: 16px 24px;
    text-align: left;
    transition: all .3s;
}

.header-redesign__link--blue{
    background: #27348b !important;
    color: #fff !important;
}

.header-redesign__contacts-list{
    display: flex;
    align-items: center;
    gap: 4px;
}

.header-redesign__contacts-link{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
}

.header-building{
    display: grid;
    align-items: center;
    grid-template-columns: 112px 1fr;
    gap: 15px;
    border-radius: 15px;
    padding: 4px;
    background: #f5f5f5;
    transition: all .3s;
}

.header-building__img{
    border-radius: 12px;
    object-fit: cover;
}

.header-building__content{
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.header-building__content-title{
    font-family: "Roboto", sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 120%;
    color: #101010;
    transition: all .3s;
}

.header-building__content-text{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 140%;
    color: #101010;
    display: flex;
    align-items: center;
    gap: 9px;
    transition: all .3s;
}

.header-building__content-text span{
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-left: 5px;
    background: #fc0;
}

.header-building__content-text-green {
    background: #34c759 !important;
}

.header-redesign__link-favourites{
    padding: unset;
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-redesign__link-favourites.active svg path{
    fill: #27348B;
}

.header-redesign__link-favourites svg path{
    transition: all .3s;
}

.header-redesign__block{
    display: none;
    align-items: center;
    gap: 6px;
    position: relative;
    z-index: 1;
}

.header-redesign__block-link{
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s;
}

.button-burger{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.button-burger > span{
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 22px;
    height: 10px;
}
.button-burger>span:after, .button-burger>span:before{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: #797C94;
    height: 2px;
    width: 22px;
    -webkit-transition: all .3s;
    transition: all .3s;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    border-radius: 2px;
}

.button-burger span:before{
    top: 0;
}

.button-burger span:after{
    bottom: 0;
}

.button-burger.active span:before{
    top: 4px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.button-burger.active span:after{
    bottom: 4px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.button-burger.active{
    background: rgba(255, 255, 255, 0.2);
}

.button-burger.active span:before, .button-burger.active span:after{
    background: #fff;
}

.header-redesign.active .header-redesign__block-link{
    background: rgba(255, 255, 255, 0.2);
}

.header-redesign.active .header-redesign__block-link svg path{
    stroke: #fff;
}
.header-redesign__logo svg path:first-child, .header-redesign__logo svg path:last-child{
    transition: .3s;
}
.header-redesign.active .header-redesign__logo svg path:first-child{
    fill: #fff;
}

.header-redesign.active .header-redesign__logo svg path:last-child{
    fill: rgba(255, 255, 255, 0.4);
}

@media(max-width: 1750px){
    .header-redesign__inner{
        gap: 30px;
    }
}

@media(max-width: 1650px){
    .header-redesign__link{
        padding: 10px;
        font-size: 14px;
    }
    
    .header-redesign__link-favourites, .header-redesign__contacts-link{
        width: 39px;
        height: 39px;
    }
    .header-redesign__link-favourites svg{
        width: 18px;
        height: 18px;
    }
    
   /* .header-redesign__contacts-link svg{
        width: 30px;
        height: 30px;
    }*/
    
    .header-redesign__phone span:first-child{
        font-size: 18px;
        line-height: 100%;
    }
    
    .header-redesign__phone span:last-child{
        font-size: 14px;
    }
    
    .header-redesign__contacts{
        gap: 10px;
    }
}

@media(max-width: 1300px){
    .header-redesign__wrapper{
        position: fixed;
        top: -100%;
        left: 0;
        width: 100%;
        height: 100%;
        background: #27348b;
        display: flex;
        align-items: center;
        flex-direction: column;
        padding-top: 75px;
        padding-bottom: 50px;
        overflow-y: auto;
        overflow-x: hidden;
        transition: .3s;
    }
    
    .header-redesign__wrapper.show{
        top: 0;
    }
    
    .header-redesign__block{
        display: flex;
    }
    
    .header-redesign__list{
        flex-direction: column;
        gap: 25px
    }
    
    .header-redesign__item{
        display: flex;
    }
    
    .header-redesign__phone span:first-child{
        color: #fff;
    }
    
    .header-redesign__phone span:last-child{
        color: #fff;
        opacity: 0.6;
    }
    
    .header-redesign__item:last-child, .header-redesign__item--hidden{
        display: none;
    }
    
    .header-redesign__link{
        font-size: 28px;
        padding: unset;
        background: unset;
        color: #fff;
        text-transform: uppercase;
    }
    
    .header-redesign__contacts-link{
        background: rgba(255, 255, 255, 0.1);
    }
    
    .header-redesign__contacts-link svg path{
        fill: #fff;
    }
    .header-redesign__contacts{
        gap: 50px;
    }
    
    .header-redesign__contacts-list{
        gap: 10px;
    }
}

@media(max-width: 575px){
    .header-redesign__list{
        gap: 24px;
    }
    .header-redesign__link{
        font-size: 16px;
        text-transform: unset;
    }
    .header-redesign__contacts{
        flex-direction: column;
        gap: 20px;
    }
    
    .header-redesign__phone span:first-child{
        font-size: 24px;
    }
    .header-redesign__phone span:last-child{
        font-size: 16px;
    }
    
    .header-redesign__logo, .header-redesign__logo svg{
        width: 165px;
        height: 38px;
    }
    .header-redesign{
        padding: 10px 0;
    }
}
/* Редизайн шапки */

@media (hover: hover) {
    .steps-form__presentation-item a:hover {
        background-color: #27348B;
        color: #fff;
    }
    
    .link-effect:hover{
        background: rgba(112, 130, 255, 0.15);
        border-radius: 12px;
    }
    
    .header-redesign__link:hover{
        color: #27348b;
    }
    
    .header-redesign__dropdown-link:hover{
        background: #eaecff;
    }
    
    .header-redesign__dropdown-link:hover{
        background: #eaecff;
        color: #27348b;
    }
    
    .header-redesign__item:hover .header-redesign__dropdown{
        opacity: 1;
        visibility: visible;
    }
    
    .header-building:hover{
        background: rgba(112, 130, 255, 0.15);
    }
    
    .header-building:hover span{
        color: #27348b;
    }
    
    
    
    .header-redesign__block-link:hover{
        background: #f5f5f5;
    }
    
    .header-redesign__block-link:hover svg path{
        stroke: #fff;
    }
}

@media (max-width: 1440px) {
    .steps-form__top p {
        max-width: 350px;
        font-size: 18px;
    }
    
    .steps-form__top.section__top {
        margin-bottom: 70px;
    }
    
    .steps-form__step {
        margin-bottom: 110px;
    }
    
    .steps-form__form h3 {
        margin-bottom: 30px;
        font-size: 22px;
    }
    
    .steps-form__options {
        gap: 15px;
    }
    
    .steps-form__options label {
        padding: 20px 25px;
    }
    
    .steps-form__input.ui-input {
        padding: 20px 25px;
    }
    
    .steps-form__button--prev {
        width: 60px;
        height: 60px;
    }
    
    .steps-form__button--next {
        height: 60px;
    }
    
    .steps-form__submit.btn__hover {
        padding: 20px 32px;
        font-size: 22px;
    }
    
    .steps-form__presentation-list {
        gap: 15px;
    }
    
    .steps-form__presentation-item a {
        padding: 10px 25px;
        font-size: 20px;
    }
    
    .steps-form__presentation-item svg {
        width: 24px;
        height: 24px;
    }
}

@media (max-width: 1200px) {
    .steps-form__top.section__top {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .steps-form__top p {
        max-width: unset;
    }
}

@media (max-width: 991px) {
    .steps-form__bottom {
        align-items: flex-start;
        gap: 20px;
        flex-direction: column-reverse;
    }
    
    .steps-form__form h3 {
        font-size: 20px;
    }
    
    .steps-form__presentation {
        padding: 20px 25px;
    }
    
    .steps-form__presentation-title {
        font-size: 22px;
    }
    
    .steps-form__presentation-item a {
        padding: 8px 20px;
        font-size: 18px;
    }
    
    .steps-form__result p {
        font-size: 16px;
    }
}

@media (max-width: 768px) {
    .steps-form__options label {
        padding: 15px 20px;
    }
    
    .steps-form__options label:has(input[type="checkbox"])::before, .steps-form__options label:has(input[type="radio"])::before {
        width: 18px;
        height: 18px;
    }
    
    .steps-form__range {
        padding: 15px 30px 0;
    }
    
    .steps-form__input.ui-input {
        padding: 15px 20px;
    }
    
    .custom-input__label {
        font-size: 14px;
    }
    
    .steps-form__submit.btn__hover {
        padding: 15px 28px;
        font-size: 18px;
    }
}

@media (max-width: 575px) {
    .steps-form__top.section__top {
        margin-bottom: 30px;
        gap: 20px;
    }
    
    .steps-form__top p {
        font-size: 16px;
    }
    
    .steps-form__step {
        margin-bottom: 50px;
    }
    
    .steps-form__form h3 {
        margin-bottom: 20px;
        font-size: 18px;
    }
    
    .steps-form__options {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .steps-form__buttons {
        gap: 10px;
    }
    
    .steps-form__button--next {
        padding: 0 22px;
        height: 50px;
    }
    
    .steps-form__button--prev {
        width: 50px;
        height: 50px;
    }
    
    .steps-form__navigation {
        flex-direction: column;
    }
    
    .steps-form__presentation {
        padding: 20px 15px;
        border-radius: 20px;
    }
    
    .steps-form__presentation-title {
        font-size: 20px;
    }
    
    .steps-form__presentation-list {
        gap: 10px;
    }
    
    .steps-form__presentation-item a {
        padding: 6px 15px;
    }
}

.layouts {
    margin-bottom: 150px;
    padding: 50px 0;
    background-color: #FAFAFA;
}

.layouts__options {
    margin: 50px 0;
    padding: 10px;
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: #27348B;
    border-radius: 15px;
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none; 
}

.layouts__options::-webkit-scrollbar {
  display: none;
}

.layouts__option {
    position: relative;
    padding: 17px 32px;
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
    background-color: rgba(255, 255, 255, 0.15);
    color: #fff;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.layouts__list {
    margin-bottom: 22px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.layouts__link {
    margin: 0 auto;
    padding: 19px 42px;
    width: fit-content;
    display: flex;
    align-items: center;
    gap: 40px;
    font-family: "Montserrat", sans-serif;
    font-size: 24px;
    font-weight: 500;
    background-color: #27348B;
    color: #fff;
}

.layouts__link.btn__hover::after {
    background: #000;
}

.selection-apartments__widget-button{
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom;
    border-radius: 30px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    grid-row-start: 2;
    transition: .7s ease;
}

.selection-apartments__widget-title{
    background: #27348b;
    padding: 24px 30px;
    margin: unset;
    font-family: "Montserrat", sans-serif;
    font-weight: 800;
    font-size: clamp(20px, 0.77vw + 17.23px, 32px);
    line-height: 110%;
    color: #fff;
    border-radius: 24px;
    margin-top: auto;
    text-align: left;
}

@media (hover: hover) {
    .layouts__option:hover {
        background-color: #fff;
        color: #27348B;
    }
    
    .selection-apartments__widget-button:hover{
        background-size: 110%;
    }
}

@media (max-width: 1440px) {
    .layouts__option {
        padding: 12px 28px;
    }
}

@media (max-width: 1300px) {
    .layouts__list {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .layouts__link {
        padding: 16px 35px;
        gap: 30px;
        font-size: 20px;
    }
}

@media (max-width: 900px){
    .selection-apartments__widget-button{
        grid-row-start: 3;
    }
}

@media (max-width: 768px) {
    .layouts__options {
        margin: 30px 0;
        padding: 6px;
        width: auto;
        gap: 6px;
        border-radius: 12px;
    }
    
    .layouts__option {
        padding: 10px 22px;
        font-size: 14px;
        flex-grow: 1;
        border-radius: 10px;
    }
}

@media(max-width: 575px){
    .selection-apartments__widget-button{
        border-radius: 20px;
        padding: 10px;
    }
    
    .selection-apartments__widget-title{
        padding: 15px;
        border-radius: 15px;
    }
}

@media (max-width: 525px) {
    .layouts__list {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .layouts__list > *:nth-child(4) {
        display: none;
    }
    
    .layouts__link {
        padding: 14px 28px;
        font-size: 16px;
        gap: 20px;
    }
}

.header-redesign__link-favourites.active svg path{
    fill: #27348b;
}

.selection-apartments {
    color: #101010;
}

.partners {
    margin-bottom: 120px;
}

.partners__list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 20px;
}

.partners__item {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 30px;
    height: 280px;
    background-color: #fafafa;
    padding: 20px;
}

.partners__item img {
    max-height: 56px;
    width: auto;
}

@media (max-width: 1400px) {
    .partners__item {
        height: 200px;
    }    
        
     .partners__item img {
         max-height: 40px;
     }   
}

@media (max-width: 1200px) {
   .partners__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
   }
   
   .partners__item img {
         max-height: 30px;
     } 
}

@media (max-width: 768px) {
    .partners {
        margin-bottom: 80px;
    }
    
    .partners__list {
        gap: 10px;
    }
    
    .partners__item {
        height: 150px;
    }
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Roboto', sans-serif!important;
}

.steps-form__presentation-title {
    color: #27348b;
}