:root {
    --text: #333037;
    --text-light: #5e5e5e;
    --text-green: #00c35a;
    --text-green-g: #006630;
    --text-dark-green: #009d49;
    --text-blue: #0064cb;
    --text-blue-g: #0056b3;
    --text-dark-blue: #0053a7;
    --text-red: #f9002d;
    --score-green: #1cbf60;
    --score-yellow: #ffbf00;
    --score-red: #ff4c5b
}

body {
    margin: 0;
    padding-top: 125px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 16px;
    color: var(--text);
    background-color: #f5f5f5
}

.overflow {
    overflow: hidden
}

.section {
    padding: 32px 0
}

.container {
    margin: auto;
    width: 1125px;
    padding: 0 15px;
    box-sizing: border-box
}

.white-box {
    padding: 32px;
    border-radius: 32px;
    background-color: #fff;
    box-shadow: 0 0 12px rgba(0, 0, 0, .03);
    box-sizing: border-box;
    transition: .3s
}

.white-box:hover {
    box-shadow: 0 0 24px rgba(0, 0, 0, .1)
}

h1, h2, h3 {
    padding: 0;
    margin: 0;
    font-weight: 700
}

.title__main {
    padding: 0;
    margin: 0;
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 3em
}

.title__section {
    margin-bottom: 32px;
    font-size: 2.5em
}

h3 {
    margin-bottom: 1em;
    font-size: 1.5em
}

p {
    margin: 0;
    margin-bottom: 1em
}

.btn__container {
    display: flex;
    flex-direction: row !important;
    align-items: flex-end !important
}

.btn {
    padding: 19px 32px 17px;
    margin: 0;
    display: inline-block;
    border: 2px solid transparent;
    border-radius: 16px;
    outline: none;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 500;
    line-height: 16px;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 2px;
    white-space: nowrap;
    cursor: pointer;
    transition: .3s
}

@media (max-width: 500px) {
    .btn {
        padding: 19px 8px 17px;
        white-space: unset
    }
}

.btn--small {
    padding: 8px 16px;
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    text-transform: none;
    letter-spacing: normal
}

.btn--fill-blue {
    color: #fff;
    background-color: var(--text-blue)
}

.btn--fill-blue:hover {
    background-color: var(--text-dark-blue)
}

.btn--fill-green {
    color: #fff;
    background-color: var(--text-green)
}

.btn--fill-green:hover {
    color: #fff;
    background-color: var(--text-dark-green)
}

.btn--stroke-blue {
    border-color: var(--text-blue);
    color: var(--text-blue);
    background-color: #fff
}

.btn--stroke-blue:hover {
    border-color: transparent;
    color: #fff;
    background-color: var(--text-blue)
}

.btn--stroke-green {
    border-color: var(--text-green);
    color: var(--text-green);
    background-color: #fff;
    white-space: nowrap
}

.btn--stroke-green:hover, .input--radio:checked + .btn--stroke-green {
    color: #fff;
    background-color: var(--text-green)
}

.btn--stroke-green.active {
    color: #fff;
    background-color: var(--text-green)
}

.btn--icon-blue {
    position: relative;
    padding: 0;
    min-width: 56px;
    height: 56px;
    border-color: var(--text-blue);
    color: var(--text-blue);
    background-color: #fff
}

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

.btn--icon:hover {
    color: #fff;
    background-color: var(--text-blue)
}

.btn--icon:hover path {
    fill: #fff
}

.btn__mobile {
    padding: 16px;
    width: 64px;
    height: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    border: none;
    border-radius: 0;
    background-color: transparent
}

.btn__burger--mobile {
    position: relative;
    align-self: flex-end;
    width: 16px;
    height: 4px;
    border-radius: 2px;
    background-color: #333037;
    transition: .3s
}

.btn__burger--mobile:before {
    content: '';
    position: absolute;
    bottom: 8px;
    right: 0;
    display: block;
    width: 32px;
    height: 4px;
    border-radius: 2px;
    background-color: #333037;
    transition: .3s
}

.btn__burger--mobile:after {
    content: '';
    position: absolute;
    top: 8px;
    right: 0;
    display: block;
    width: 24px;
    height: 4px;
    border-radius: 2px;
    background-color: #333037;
    transition: .3s
}

.btn--back {
    padding: 8px 16px;
    margin-bottom: 32px;
    display: inline-flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border: 1px solid #b0afac;
    border-radius: 8px;
    font-size: 14px;
    line-height: 16px
}

.btn--back svg {
    margin-right: 8px
}

.btn--back:hover {
    color: #fff;
    background-color: #b0afac
}

.btn--back:hover svg path {
    fill: #fff
}

.active .btn__burger--mobile {
    background-color: transparent
}

.active .btn__burger--mobile:before {
    transform: rotate(-45deg);
    bottom: unset;
    background-color: #333037
}

.active .btn__burger--mobile:after {
    transform: rotate(45deg);
    top: unset;
    width: 32px;
    background-color: #333037
}

.link {
    text-decoration: none
}

.link--green {
    color: var(--text-blue-g)
}

.link--blue {
    color: var(--text-blue)
}

.header {
    position: fixed;
    z-index: 1000;
    top: 0;
    width: 100%;
    border-radius: 0 0 32px 32px;
    background-color: #fff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .1)
}

.important-message {
    padding: 0 44px 0 16px;
    min-height: 32px;
    width: 100%;
    height: 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    line-height: 16px;
    background-color: var(--text-green);
    color: #fff;
    box-sizing: border-box;
    transition: .3s
}

.important-message .close {
    position: absolute;
    right: 10px;
    width: 12px;
    height: 12px;
    background: url(../img/close.svg) center center;
    background-repeat: no-repeat;
    background-size: auto;
    cursor: pointer
}

.header__container {
    position: relative;
    height: 80px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center
}

.important-message--closed, .important-message.hidden {
    min-height: 0;
    height: 0;
    transition: .3s
}

.nav__list {
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    list-style: none
}

.nav__list--link {
    position: relative;
    color: var(--text);
    text-decoration: none;
    white-space: nowrap
}

.nav__list--link:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 2px;
    background-color: var(--text-green)
}

.nav__list--link:hover:before {
    width: 100%;
    transition: .3s
}

.nav__list--item:not(:last-child) {
    margin-right: 32px
}

.contacts {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end
}

.city {
    position: relative
}

.current-city {
    padding: 8px 14px 8px 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    background: url(../img/arrow-city.svg) right center;
    background-repeat: no-repeat;
    background-size: 6px;
    font-size: 12px
}

.current-city svg {
    margin-right: 8px
}

.city__list {
    position: absolute;
    z-index: 100;
    left: 0;
    padding: 0;
    margin: 0;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    list-style: none;
    background-color: #fff;
    box-shadow: 0 0 6px rgba(0, 0, 0, .1);
    pointer-events: none;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-16px);
    transition: .3s
}

.city:hover .city__list {
    pointer-events: all;
    opacity: 1;
    transform: translateY(0);
    transition: .3s
}

.city__list--item:first-child {
    border-top: 1px solid #f5f5f5
}

.city__list--item {
    border-bottom: 1px solid #f5f5f5
}

.city__list--link {
    padding: 16px 32px;
    display: block;
    font-size: 14px;
    color: var(--text);
    text-align: right;
    text-decoration: none
}

.city__list--link:hover {
    background-color: #f5f5f5
}

.phone {
    padding-top: 8px;
    margin-bottom: 4px;
    font-size: 18px;
    color: var(--text);
    text-align: right;
    text-decoration: none
}

.header__nav--mobile {
    position: relative;
    display: none
}

.nav__list--mobile {
    position: absolute;
    z-index: 100;
    right: -15px;
    padding: 0;
    padding: 0;
    margin: 0;
    width: 100vw;
    height: 0;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    background-color: #fff;
    list-style: none;
    overflow: hidden;
    box-shadow: 0 0 6px rgba(0, 0, 0, .1);
    transition: .3s
}

.nav__list--mobile.active {
    padding: 16px 0;
    height: auto;
    transition: .3s
}

.nav__list--item-mobile:first-child {
    border-top: 1px solid #f5f5f5
}

.nav__list--item-mobile {
    border-bottom: 1px solid #f5f5f5
}

.nav__list--link-mobile {
    padding: 16px;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    color: var(--text);
    text-decoration: none
}

.nav__list--link-mobile:hover {
    background-color: #f5f5f5
}

.add-info {
    right: 16px;
    padding: 4px 8px;
    margin-left: 16px;
    display: inline-block;
    border-radius: 8px;
    font-size: 14px;
    color: #fff;
    background-color: var(--text-green)
}

.footer * {
    color: #fff
}

.footer {
    padding: 64px 0;
    border-radius: 32px 32px 0 0;
    background-color: #333037;
    box-shadow: 0 -3px 12px rgba(0, 0, 0, .1)
}

.footer__container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    box-sizing: border-box
}

.footer__item {
    margin-bottom: 32px;
    width: calc(100% / 4 - 30px * 3 / 4)
}

.footer__item:not(:last-child) {
    margin-right: 30px
}

.footer__title {
    margin-bottom: 32px
}

.footer__list {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    list-style: none
}

.footer__list:not(:last-child) {
    margin-bottom: 32px
}

.footer__list--item {
    width: 100%
}

.footer__list--item:not(:last-child) {
    margin-bottom: 8px
}

.footer__list--link {
    text-decoration: none;
    line-height: 24px
}

.footer__list--link:hover {
    color: var(--text-green)
}

.footer__city {
    display: inline-block;
    line-height: 24px;
    margin-bottom: 8px;
    color: var(--text-green)
}

.subscribe {
    position: relative;
    margin-top: 8px;
    margin-bottom: 32px;
    width: 100%;
    max-width: 320px;
    height: 56px
}

.subscribe .input[type=text] {
    padding-left: 16px;
    width: 100%;
    height: 56px;
    border: 2px solid #fff;
    border-radius: 16px;
    outline: none;
    box-sizing: border-box;
    font-size: 16px;
    color: #fff;
    background-color: transparent
}

.subscribe input[type=text]::-moz-placeholder {
    color: #fff
}

.subscribe input[type=text]::-webkit-input-placeholder {
    color: #fff
}

.subscribe .input[type=text]:hover, .subscribe .input[type=text]:focus {
    border-color: var(--text-green)
}

.btn--subscribe {
    padding: 0;
    position: absolute;
    right: 2px;
    top: 2px;
    width: 56px;
    height: 52px;
    background: 0 0;
    box-sizing: border-box
}

.social__list {
    padding: 0;
    margin: 0;
    margin-top: 8px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    list-style: none
}

.contacts-page .social__list--item {
    margin-bottom: 8px;
}

.social__list--item:not(:last-child) {
    margin-right: 8px
}

.social__list--link {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background-color: var(--text-green)
}

.social__list--link:hover {
    background-color: var(--text-dark-green);
    transition: .3s
}

.subfooter {
    padding-top: 32px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #4a484b
}

.subfooter .logo {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-decoration: none
}

.subfooter .logo span {
    margin-top: 4px;
    font-size: 14px;
    letter-spacing: 1px
}

.subfooter small {
    display: inline-block;
    font-size: 16px;
    line-height: 24px;
    font-style: normal;
    text-align: right
}

.popup-form {
    position: relative;
    padding: 64px;
    margin: auto;
    width: 668px;
    height: auto;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    border-radius: 32px;
    background-color: #fff;
    box-sizing: border-box
}

.success {
    position: absolute;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 32px;
    background: #fff url(../img/no-plan.svg) center center;
    background-repeat: no-repeat;
    background-size: 100%
}

.success h3 {
    margin-bottom: 16px
}

.success p {
    text-align: center
}

.success__subscribe {
    border-radius: 16px;
    background: #fff
}

.success__subscribe h3 {
    margin-bottom: 4px;
    color: var(--text-green)
}

.popup-form > *:not(:nth-last-child(-n+2)) {
    margin-bottom: 32px
}

.popup__title {
    margin-bottom: 64px;
    font-size: 40px;
    color: var(--text);
    text-align: center
}

.popup-form .mfp-close {
    right: 16px;
    top: 16px;
    opacity: .25
}

.policy {
    margin-top: 8px;
    font-size: 14px;
    color: var(--text-light)
}

.policy a {
    font-size: 14px;
    color: var(--text-green)
}

.container__main-info {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start
}

.mobile-section {
    display: none
}

.address {
    padding-left: 22px;
    margin-bottom: 32px;
    width: 100%;
    display: inline-block;
    background: url(../img/geo.svg) left center;
    background-repeat: no-repeat;
    background-size: auto;
    box-sizing: border-box
}

.widget-info {
    margin-bottom: 32px;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center
}

.btn__container .btn--fill-blue {
    margin-right: 8px
}

.widget-info__item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.item__param {
    margin-bottom: 4px;
    display: inline-block;
    font-size: 14px;
    color: var(--text-light)
}

.item__value {
    margin-bottom: 4px;
    display: inline-block;
    color: #000
}

.value__list {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    list-style: none
}

.widget-advantages .value__list li:not(:last-child):after {
    content: '-';
    position: relative;
    margin-right: 6px
}

.item__option {
    font-size: 14px;
    display: inline-block
}

.progress-bar {
    position: relative;
    width: 100%;
    max-width: 120px;
    height: 14px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center
}

.progress-bar:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 8px;
    border-radius: 4px;
    background-color: #e1e1e1
}

.progress-value {
    position: absolute;
    left: 0;
    width: 0;
    height: 8px;
    border-radius: 4px;
    background-color: #00c35a
}

.price--from:before {
    content: 'от '
}

.price--rub:after {
    content: ' руб.'
}

.price--rub--per-month:after {
    content: ' руб./мес.'
}

.price--percent:after {
    content: '%'
}

.space--fromm:before {
    content: 'от '
}

.space--from:after {
    content: ' м²'
}

.image__container {
    position: relative;
    padding: 0;
    margin: 0;
    margin-bottom: 32px;
    width: 730px;
    text-decoration: none;
    box-sizing: border-box
}

.image {
    width: 100%;
    height: 400px;
    border-radius: 32px;
    object-fit: cover
}

.image__container figcaption, .image__container h3 {
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    color: var(--text)
}

.image__container figcaption small {
    margin-bottom: 4px;
    font-size: 14px;
    color: var(--text-light)
}

.widget-advantages {
    margin: 0;
    margin-bottom: 32px;
    width: 350px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

.widget-advantages .widget-info__item {
    margin-bottom: 28px
}

.wrapper__text {
    position: relative;
    max-height: 200px;
    overflow: hidden
}

.wrapper__text.opened {
    max-height: none;
    overflow: visible
}

.text {
    position: relative;
    margin-bottom: 64px;
    width: 100%;
    column-count: 2
}

.wrapper__text:before {
    content: '';
    position: absolute;
    z-index: 90;
    bottom: 0;
    display: block;
    width: 100%;
    height: 150px;
    background: linear-gradient(rgba(245, 245, 245, 0) 0%, rgba(245, 245, 245, 1) 60%)
}

.wrapper__text.opened:before {
    display: none
}

.wrapper__text.opened .link--blue.open {
    bottom: -64px
}

.link--blue.open {
    position: absolute;
    z-index: 100;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    text-align: center
}

.text h3 {
    margin: 32px 0 16px
}

.text p {
    line-height: 24px
}

.ajax-form {
    margin-bottom: 32px;
    display: grid;
    grid-template-columns:1fr 1fr 1fr
}

.fieldset {
    position: relative;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    border: none
}

.ajax-form .fieldset:not(:last-child) {
    margin-bottom: 16px
}

.form-group {
    height: 88px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: stretch;
    box-sizing: border-box
}

.popup-form .form-group {
    height: auto
}

.form-group .btn--fill-blue {
    width: 100%
}

.form-group:not(:nth-child(3n)) {
    margin-right: 8px
}

.popup-form .form-group {
    width: 100%;
    align-items: stretch
}

.popup-form .form-group:not(:last-child) {
    margin-right: 4px
}

.ajax-form .fieldset > *:not(:last-child) {
    margin-right: 8px
}

.ajax-form .fieldset:nth-child(2) .form-group {
    width: 100%
}

.form-group__title {
    margin-bottom: 8px;
    line-height: 24px;
    color: var(--text)
}

.label-group {
    position: relative;
    width: inherit;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center
}

.ajax-form .btn--more {
    display: none
}

@media (max-width: 500px) {
    .ajax-form .btn__container {
        flex-wrap: wrap
    }

    .ajax-form .btn--more {
        margin-bottom: 16px;
        display: block;
        width: 100%
    }

    .ajax-form .btn--fill-blue {
        width: calc(100% - 56px - 8px) !important
    }
}

.input[type=text] {
    padding: 16px;
    height: 56px;
    border: 2px solid #e1e1e1;
    font-size: 16px;
    color: var(--text);
    background-color: #fff;
    box-sizing: border-box
}

.popup-form .textarea {
    padding: 16px;
    width: 100%;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    font-size: 16px;
    color: var(--text);
    background-color: #fff;
    box-sizing: border-box
}

.ajax-form .input[type=text], .ajax-form .label-numbs {
    width: calc(100% / 2 - 1px)
}

.ajax-form .label-numbs .input[type=text] {
    width: 100%
}

.ajax-form .label-numbs:not(:last-child) {
    margin-right: 2px
}

.popup-form .input[type=text] {
    width: 100%;
    border-radius: 16px
}

.input[type=text]::placeholder {
    color: var(--text);
    transition: .3s
}

.input[type=text]:hover {
    border-color: #0064cb
}

.input[type=text]:focus::placeholder {
    color: transparent
}

.label {
    position: relative;
    width: 100%
}

.label-checkbox .input--checkbox, .label-radio .input--radio {
    position: absolute;
    visibility: hidden
}

.label-checkbox > span, .label-radio > span {
    position: relative;
    display: block;
    padding: 17px 16px 15px;
    margin: 0;
    height: 56px;
    text-align: center;
    white-space: nowrap;
    border: 2px solid #e1e1e1;
    box-sizing: border-box;
    cursor: pointer
}

.label-checkbox > span {
    min-width: 56px
}

.label-radio > span {
    min-width: auto
}

.label-select:after {
    content: url(../img/select-arrow.svg);
    position: absolute;
    top: 20px;
    right: 16px
}

.select {
    position: relative;
    padding: 16px;
    margin: 0;
    width: inherit;
    height: 56px;
    white-space: nowrap;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    font-size: 16px;
    box-sizing: border-box;
    appearance: none;
    cursor: pointer
}

@media (max-width: 500px) {
    .select-group {
        height: 56px
    }

    .ajax-form .btn__container {
        margin-bottom: 0;
        height: auto
    }
}

.label-checkbox:not(:last-child) > span, .label-radio:not(:last-child) > span, .ajax-form .input[type=text]:not(:last-child) {
    margin-right: 2px
}

.label-checkbox:first-child > span, .label-radio:first-child > span, .ajax-form .input[type=text]:first-child {
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px
}

.label-checkbox:last-child > span, .label-radio:last-child > span, .ajax-form .input[type=text]:last-child {
    border-top-right-radius: 16px;
    border-bottom-right-radius: 16px
}

.label-checkbox > span:hover, .label-radio > span:hover, .select:hover {
    border-color: #0064cb
}

.label-checkbox .input--checkbox:focus ~ span, .label-radio .input--radio:focus ~ span, .input[type=text]:focus, .select:focus {
    border-color: #0064cb;
    outline: none;
    box-shadow: 0 0 12px rgba(0, 0, 0, .25)
}

.label-checkbox .input--checkbox:checked ~ span, .label-radio .input--radio:checked ~ span, .label-checkbox.checked span {
    border-color: #0064cb;
    color: #fff;
    background-color: #0064cb
}
a.label-checkbox:focus,a.label-checkbox:active{outline: none;color:black;}
a.label-checkbox, a.label-checkbox:visited{
    text-decoration: none;
    color:black;
}
.selectric {
    border: 2px solid #e1e1e1 !important;
    background: 0 0 !important;
    height: 56px !important;
    box-sizing: border-box;
    border-radius: 16px !important
}

.selectric .label {
    margin: 0 38px 0 16px !important;
    font-size: 16px !important;
    line-height: 52px !important;
    height: 56px;
    height: 56px !important
}

.selectric .button {
    display: none !important
}

.selectric-items ul, .selectric-items li {
    font-size: 16px !important
}

.selectric-items li span {
    display: inline-block;
    padding: 4px 8px;
    border-radius: 8px;
    color: #fff;
    background-color: #00c35a
}

#mse2_filters .disabled {
    pointer-events: none
}

.msearch2 {
    width: 100%
}

.special {
    position: relative
}

.tooltip {
    color: var(--text-green);
    cursor: pointer
}

.tooltip:after {
    content: '*';
    cursor: pointer
}

.tooltip[data-placement=top] .tooltip__container {
    position: absolute;
    left: 0;
    bottom: 100px;
    z-index: 80;
    padding: 16px;
    width: auto;
    border-radius: 16px;
    font-size: 14px;
    line-height: 21px;
    color: #fff;
    background-color: var(--text-green);
    box-shadow: 0 0 24px rgba(0, 0, 0, .25);
    pointer-events: none;
    opacity: 0;
    transform: translateY(20px);
    transition: .3s
}

.tooltip[data-placement=top] .tooltip__container:before {
    content: url(../img/tooltip-top.svg);
    position: absolute;
    left: calc(50% - 8px);
    bottom: -12px
}

.special .tooltip:hover .tooltip__container {
    opacity: 1;
    transform: translateY(0)
}

.search__widget {
    position: relative;
    width: 100%;
    height: 300px;
    display: flex;
    justify-self: center;
    align-items: center;
    border-radius: 0 0 32px 32px
}

.search__form {
    position: relative;
    margin: auto;
    width: calc(90%);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    border: 16px solid rgba(255, 255, 255, .25);
    border-radius: 22px
}

.search__form--input {
    padding-left: 16px;
    width: 100%;
    height: 56px;
    border: none;
    border-radius: 8px;
    background-color: #fff;
    box-sizing: border-box
}

.search__form--button {
    position: absolute;
    right: 16px;
    top: 16px;
    padding: 0;
    margin: 0;
    display: flex;
    justify-self: center;
    align-items: center;
    width: 24px;
    height: 24px;
    border: none;
    outline: none;
    background-color: transparent
}

.arrow__prev, .arrow__next {
    position: relative;
    z-index: 10;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 19px;
    outline: none;
    background-color: #00c35a;
    transition: .3s;
    cursor: pointer
}

.estate .container {
    position: relative
}

.estate-prev {
    position: absolute;
    top: calc(50% - 8px);
    left: -60px
}

.estate-next {
    position: absolute;
    top: calc(50% - 8px);
    right: -60px
}

@media (max-width: 1275px) {
    .container .arrow__next, .container .arrow__prev {
        display: none
    }
}

.estate__list {
    margin-bottom: 32px;
    height: 346px
}

.estate__list--link {
    position: relative;
    padding: 16px;
    height: 51px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    border-radius: 8px;
    font-size: 16px;
    color: var(--text);
    text-decoration: none;
    background-color: #fafafa;
    box-sizing: border-box
}

.estate__list--link:hover {
    background-color: #fff;
    box-shadow: 0 0 12px rgba(0, 0, 0, .1);
    transition: .3s
}

.estate__list--year {
    position: absolute;
    right: 16px;
    padding: 4px 8px;
    border-radius: 4px;
    background-color: var(--text-green);
    color: #fff
}

.estate .link, .developer .link {
    display: block;
    text-align: center
}

.developer .container {
    position: relative
}

.developer-prev {
    position: absolute;
    top: calc(50% - 8px);
    left: -60px
}

.developer-next {
    position: absolute;
    top: calc(50% - 8px);
    right: -60px
}

.developer__list {
    margin-bottom: 32px;
    height: 256px
}

.developer__list--item {
    position: relative;
    padding: 8px;
    height: 80px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    border-radius: 8px;
    color: var(--text);
    text-decoration: none;
    background-color: #fafafa;
    box-sizing: border-box
}

.developer__list--item:hover {
    background-color: #fff;
    box-shadow: 0 0 12px rgba(0, 0, 0, .1);
    transition: .3s
}

.widget__img {
    margin-right: 16px;
    width: 64px;
    height: 64px;
    object-fit: contain;
    border-radius: 4px
}

.widget__title {
    margin-bottom: 4px;
    font-size: 16px;
    line-height: 20px;
    color: var(--text)
}

.developer__info {
    font-size: 14px;
    color: #888
}

.arrow__prev.swiper-button-disabled, .arrow__next.swiper-button-disabled {
    opacity: .25;
    pointer-events: none
}

@media (max-width: 500px) {
    .search__widget {
        height: 150px
    }

    .estate-prev, .developer-prev {
        display: none
    }

    .estate-next, .developer-next {
        right: 0
    }

    .estate-next {
        top: calc(50% - 22px)
    }

    .developer-next {
        top: calc(50% - 22px)
    }
}

.catalog {
    position: relative;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px
}

.catalog__item {
    position: relative;
    margin-bottom: 30px;
    width: 100%;
    height: 533px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    box-sizing: border-box
}

.catalog__item.sold {
    filter: grayscale(1);
    opacity: .75;
    pointer-events: none
}

.catalog__item:not(:nth-child(3n)) {
    margin-right: 30px
}

.catalog__img-wrapper {
    margin-bottom: 24px
}

.catalog__img {
    width: 100%;
    height: 220px;
    object-fit: contain
}

.catalog__title-wrapper {
    text-decoration: none
}

.catalog__title {
    margin: 0;
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 19px;
    font-weight: 400;
    color: var(--text);
    text-decoration: none;
}

.parking .catalog__title {
    padding-left: 30px;
    background: url(../img/car.svg) left center;
    background-repeat: no-repeat;
    background-size: auto
}

.catalog__item .price--from {
    margin-bottom: 8px;
    font-size: 20px;
    line-height: 24px;
    color: var(--text-blue)
}

.price--from:before {
    content: 'от '
}

.price--from-month {
    margin-bottom: 24px;
    line-height: 19px;
    color: var(--text-light)
}

.price--from-month:before {
    content: 'от '
}

.price--from-month:after {
    content: ' руб. / м²'
}

.credit {
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    color: var(--text-light)
}

.price--credit-month {
    margin-top: 4px;
    font-size: 16px;
    color: var(--text-blue-g)
}

.price--credit-month:before {
    content: '~'
}

.price--credit-month:after {
    content: ' руб. / мес.'
}

.complexes {
    margin-bottom: 22px
}

.complexes .catalog__item {
    padding: 0;
    margin-bottom: 10px;
    width: 100%;
    height: 450px;
    border-radius: 16px;
    overflow: hidden
}

.complexes .catalog__img-wrapper {
    margin-bottom: 16px
}

.complexes .catalog__img {
    width: 100%;
    height: 200px;
    object-fit: cover
}

.complexes .catalog__content-wrapper {
    padding: 0 16px 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    box-sizing: border-box
}

.complexes .catalog__title {
    margin-bottom: 8px;
    font-size: 15px;
    color: var(--text-blue);
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden !important;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
}

.complexes .price-score {
    margin-bottom: 8px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center
}

.complexes .price-score span.price--from {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 19px;
    color: var(--text)
}

.complexes .score--small {
    padding-left: calc(19px + 8px);
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    font-size: 16px;
    line-height: 19px;
    color: var(--text-light)
}

.complexes .score--small svg {
    margin-right: 8px
}

.complexes .score--small[data-score="0"] svg path {
    fill: #e1e1e1
}

.complexes .address {
    margin-bottom: 16px;
    font-size: 14px;
    color: var(--text-light);
    background-size: contain
}

.complexes .price-list {
    position: relative;
    padding: 0;
    margin: 0;
    margin-bottom: 16px;
    width: 100%;
    height: 72px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    list-style: none
}

.complexes .price-list__item {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center
}

.complexes .catalog__item:not(:nth-child(3n)) {
    margin-right: unset
}

.complexes .catalog__item:not(:nth-child(4n)) {
    margin-right: 10px
}

.price-list__item:before {
    font-size: 14px;
    color: var(--text-light)
}

.complexes .price-list__item .rooms, .complexes .price-list__item .space--from {
    margin: 0;
    font-size: 14px;
    color: var(--text-light)
}

.complexes .price-list__item .price--from {
    margin: 0;
    font-size: 14px;
    color: var(--text)
}

.complexes .btn {
    border-radius: 8px
}

.complexes .adds {
    position: absolute;
    top: 10px;
    left: 10px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start
}

.complexes .adds *:not(:last-child) {
    margin-right: 8px
}

.complexes .adds .parking {
    min-width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #fff url(../img/car.svg) center center;
    background-repeat: no-repeat;
    background-size: auto
}

.deadline {
    position: relative;
    padding: 8px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    border-radius: 8px;
    font-size: 14px;
    color: #fff;
    background-color: var(--text-green)
}

.quarter {
    position: relative;
    padding: 0;
    margin-right: 8px;
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 9px;
    background-color: rgba(255, 255, 255, .25)
}

.q1 .quarter {
    transform: rotate(0deg)
}

.q2 .quarter {
    transform: rotate(90deg)
}

.q3 .quarter {
    transform: rotate(180deg)
}

.q4 .quarter {
    transform: rotate(-90deg)
}

.quarter:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 9px;
    height: 9px;
    display: block;
    background: url(../img/quarter-part.svg) center center;
    background-repeat: no-repeat;
    background-size: contain
}

.pagination {
    padding: 0;
    margin: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    list-style: none
}

.pagination__item:not(:last-child) {
    margin-right: 4px
}

.pagination__link {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 56px;
    height: 56px;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    font-size: 16px;
    color: var(--text);
    text-decoration: none;
    box-sizing: border-box
}

.pagination__item.active .pagination__link {
    border-color: var(--text-blue);
    color: #fff;
    background-color: var(--text-blue)
}

.calc__container {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start
}

.calc {
    margin-right: 30px;
    width: calc(100% / 3 - 15px);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

.calc__result {
    width: calc(100% / 3 * 2 - 15px)
}

.label-calc {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.label-rub:after {
    content: 'руб.';
    position: absolute;
    bottom: 52px;
    right: 16px
}

.label-year:after {
    content: 'лет';
    position: absolute;
    bottom: 52px;
    right: 16px
}

.label-calc__title {
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 19px;
    color: var(--text-light)
}

.input--no-border {
    width: 100%;
    height: 19px;
    border: none;
    outline: none;
    font-size: 16px;
    line-height: 19px;
    color: var(--text);
    pointer-events: none
}

.calc .fieldset {
    margin-bottom: 32px
}

.calc hr {
    margin: 16px 0;
    display: block;
    width: 100%;
    height: 1px;
    border: none;
    background-color: #f5f5f5
}

.calc__fieldset {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

.calc__fieldset > *:not(:last-child) {
    margin-bottom: 32px
}

.calc__fieldset .label-calc__title {
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 24px;
    color: var(--text)
}

.label-calc .input[type=text] {
    padding-left: 16px;
    width: 100%;
    height: 56px;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    outline: none;
    box-sizing: border-box;
    font-size: 16px;
    background-color: #fff
}

.label-calc__checkbox {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 8px
}

.label-calc__checkbox .input--checkbox {
    position: absolute;
    visibility: hidden
}

.label-calc__checkbox span {
    position: relative;
    width: 55px;
    height: 32px
}

.checkbox--small {
    padding: 0 8px;
    width: auto;
    height: 56px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start
}

.label-calc__checkbox span:before {
    content: '';
    position: absolute;
    left: 0;
    display: block;
    width: 55px;
    height: 32px;
    border: 2px solid #e1e1e1;
    border-radius: 16px;
    background-color: #fff;
    box-sizing: border-box
}

.label-calc__checkbox span:after {
    content: '';
    position: absolute;
    bottom: 4px;
    left: 4px;
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 12px;
    background-color: #888;
    cursor: pointer;
    transition: .1s
}

.label-calc__checkbox .input--checkbox:checked + span:before {
    border-color: var(--text-green)
}

.label-calc__checkbox .input--checkbox:checked + span:after {
    left: 27px;
    background-color: var(--text-green)
}

.label-calc__values {
    position: relative;
    margin-top: 8px;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center
}

.label-calc__values span {
    font-size: 14px;
    line-height: 24px;
    color: var(--text-light)
}

.ui-widget.ui-widget-content.ui-slider {
    position: relative;
    margin-left: 16px;
    width: calc(100% - 32px);
    height: 2px;
    display: flex;
    flex-direction: row;
    align-items: center;
    transform: translateY(-2px);
    background: #e1e1e1;
    box-shadow: none;
    z-index: 5
}

.ui-slider .ui-slider-range {
    height: 2px;
    background-color: var(--text-blue)
}

.ui-slider.ui-slider-horizontal .ui-slider-handle {
    position: absolute;
    z-index: 2;
    width: 13px;
    height: 13px;
    border-radius: 8px;
    background-color: var(--text-blue);
    transform: translateX(6px);
    top: -7px
}

.ui-slider .ui-slider-handle:focus {
    outline: 2px solid #fff;
    box-shadow: 0 0 6px rgba(0, 0, 0, .5)
}

.fee.active {
    opacity: .5;
    pointer-events: none;
    transition: .3s
}

.fee.active #initial-fee {
    opacity: 0
}

.fee.active .label-calc__values {
    opacity: 0
}

.calc__result--item {
    position: relative;
    padding-left: calc(128px + 32px + 16px);
    margin-bottom: 16px;
    height: 192px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start
}

.bank-logo {
    position: absolute;
    left: calc(-128px - 16px);
    width: 128px;
    height: 128px;
    border: 1px solid #f5f5f5;
    border-radius: 4px;
    object-fit: cover;
    margin-right: 16px
}

.content-block {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch
}

.content-block__title {
    margin: 0;
    margin-bottom: 4px
}

.content-block__decription {
    margin: 0;
    font-size: 14px;
    color: var(--text-light)
}

.calc__result--item hr {
    width: 100%;
    height: 1px;
    border: none;
    background-color: #f5f5f5
}

.content-block__results {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end
}

.content-block__results .item__value {
    margin: 0;
    font-size: 16px;
    color: var(--text)
}

.navigation__list {
    padding: 0;
    margin-bottom: 32px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.navigation__list--item {
    margin-bottom: 8px
}

.navigation__list--item:not(:last-child) {
    margin-right: 8px
}

.input--radio {
    position: absolute;
    visibility: hidden
}

.gallery {
    width: 100%
}

.gallery .swiper-slide span {
    margin-top: 15px;
    display: inline-block;
    opacity: 0;
    transition: .3s
}

.gallery .swiper-slide-active span {
    opacity: 1
}

.gallery .swiper-slide span small {
    margin-bottom: 5px;
    font-size: 14px;
    color: var(--text-light)
}

.gallery .swiper-slide span h3 {
    margin: 0;
    display: block;
    font-size: 16px;
    color: var(--text)
}

.gallery .swiper-slide span h3:first-letter {
    text-transform: uppercase
}

.gallery-prev, .gallery-next {
    position: absolute;
    z-index: 10;
    top: 185px;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 19px;
    outline: none;
    background-color: #fff;
    transition: .3s;
    cursor: pointer
}

.gallery-prev:hover, .gallery-next:hover {
    background-color: var(--text-blue)
}

.gallery-prev:hover path, .gallery-next:hover path {
    stroke: #fff
}

.gallery-prev {
    left: calc(50% - (730px / 2 + 19px - 32px))
}

.gallery-next {
    right: calc(50% - (730px / 2 + 19px - 32px))
}

.map-wrapper {
    position: relative;
    width: 100%;
    height: 550px;
    border-radius: 32px;
    overflow: hidden
}

.map {
    width: 100%;
    height: 550px;
    border-radius: 32px;
    background-color: #e1e1e1;
    transition: .3s
}

.map.active {
    width: 730px
}

.widget-infrastructure {
    position: absolute;
    top: 0;
    right: 0;
    width: 350px;
    height: 550px;
    opacity: 0;
    transform: translateX(362px);
    pointer-events: none;
    transition: .3s
}

.widget-infrastructure.active {
    opacity: 1;
    transform: translateX(0)
}

.infrastructure__list, .transport__list {
    padding: 0;
    margin: 0;
    list-style: none
}

.infrastructure__list {
    margin-bottom: 30px
}

.infrastructure__list .widget-info__item, .transport__list .widget-info__item {
    flex-direction: row;
    justify-content: space-between
}

.transport__list .widget-info__item {
    align-items: center
}

.infrastructure__list .widget-info__item {
    border-bottom: 1px dashed #e1e1e1
}

.infrastructure__list .widget-info__item:not(:last-child), .transport__list .widget-info__item:not(:last-child) {
    margin-bottom: 12px
}

.infrastructure__list .item__param, .infrastructure__list .item__value, .transport__list .item__param, .transport__list .item__value {
    margin-bottom: -1px;
    font-size: 16px;
    line-height: 1;
    background-color: #fff
}

.infrastructure__list .item__param, .transport__list .item__param {
    padding-right: 8px;
    color: var(--text)
}

.infrastructure__list .item__value {
    padding-left: 8px;
    color: var(--text-green)
}

.transport__list .value__list {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.transport__list .value__list--item {
    padding: 4px 8px;
    border-radius: 4px;
    color: #fff;
    background-color: var(--text-green)
}

.transport__list .value__list--item:not(:last-child) {
    margin-right: 2px
}

.widget-infrastructure h4 {
    margin: 0;
    margin-bottom: 16px;
    font-size: 20px;
    font-weight: 400
}

.btn__infrastructure {
    position: absolute;
    z-index: 50;
    top: 30px;
    right: 30px;
    padding: 16px;
    width: 64px;
    height: 64px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    border: none;
    border-radius: 16px;
    background-color: var(--text-green)
}

.btn__burger {
    position: relative;
    align-self: flex-end;
    width: 16px;
    height: 4px;
    border-radius: 2px;
    background-color: #fff;
    transition: .3s
}

.btn__burger:before {
    content: '';
    position: absolute;
    bottom: 8px;
    right: 0;
    display: block;
    width: 32px;
    height: 4px;
    border-radius: 2px;
    background-color: #fff;
    transition: .3s
}

.btn__burger:after {
    content: '';
    position: absolute;
    top: 8px;
    right: 0;
    display: block;
    width: 24px;
    height: 4px;
    border-radius: 2px;
    background-color: #fff;
    transition: .3s
}

.btn__infrastructure.active {
    background-color: #fff
}

.active .btn__burger {
    background-color: transparent
}

.active .btn__burger:before {
    transform: rotate(-45deg);
    bottom: unset;
    background-color: #e1e1e1
}

.active .btn__burger:after {
    transform: rotate(45deg);
    top: unset;
    width: 32px;
    background-color: #e1e1e1
}

/*.reviews {*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*    justify-content: flex-start;*/
/*    align-items: center*/
/*}*/

/*.reviews__wrapper {*/
/*    position: relative;*/
/*    margin-bottom: 64px;*/
/*    width: 100%;*/
/*    max-height: 550px;*/
/*    overflow: hidden*/
/*}*/

/*.reviews.opened .reviews__wrapper {*/
/*    max-height: none;*/
/*    overflow: visible*/
/*}*/

/*.reviews__wrapper:before {*/
/*    content: '';*/
/*    position: absolute;*/
/*    z-index: 90;*/
/*    bottom: -12px;*/
/*    display: block;*/
/*    width: 100%;*/
/*    height: 200px;*/
/*    background: linear-gradient(rgba(245, 245, 245, 0) 0%, rgba(245, 245, 245, 1) 60%);*/
/*    pointer-events: none*/
/*}*/

/*.reviews.opened .reviews__wrapper:before {*/
/*    display: none*/
/*}*/

/*.reviews__list {*/
/*    margin-bottom: 64px;*/
/*    width: 100%;*/
/*    column-count: 2;*/
/*    column-gap: 30px*/
/*}*/

/*.review__item {*/
/*    position: relative;*/
/*    margin-bottom: 32px;*/
/*    width: auto;*/
/*    page-break-inside: avoid;*/
/*    break-inside: avoid;*/
/*    padding: 0;*/
/*    box-shadow: none;*/
/*    display: flex;*/
/*    overflow: hidden*/
/*}*/

/*.review__item.white-box:hover {*/
/*    box-shadow: none*/
/*}*/

/*.reviews.opened .review__item.white-box:hover {*/
/*    box-shadow: 0 0 24px rgba(0, 0, 0, .1)*/
/*}*/

/*.reviews__list.opened .link--blue.open {*/
/*    bottom: -32px*/
/*}*/

/*.review__authors-name {*/
/*    margin-bottom: 8px*/
/*}*/

/*.review__source {*/
/*    line-height: 24px;*/
/*    color: var(--text-light)*/
/*}*/

/*.review__source:after {*/
/*    content: 'Отзыв с сайта';*/
/*    color: var(--text-green)*/
/*}*/

/*.review__source.flamp:after {*/
/*    line-height: 24px;*/
/*    content: url(../img/flamp.svg)*/
/*}*/

/*.review__text {*/
/*    margin-top: 32px*/
/*}*/

/*.review__text p {*/
/*    line-height: 24px*/
/*}*/

/*.review__text p:not(:last-child) {*/
/*    margin-bottom: 16px*/
/*}*/

/*.review__score {*/
/*    position: absolute;*/
/*    top: 32px;*/
/*    right: 32px;*/
/*    width: 60px;*/
/*    height: 60px;*/
/*    border-radius: 30px;*/
/*    line-height: 60px;*/
/*    text-align: center;*/
/*    color: #fff*/
/*}*/

/*.review__score[data-score="0"] {*/
/*    display: none*/
/*}*/

/*.review__score[data-score="1"], .review__score[data-score="2"] {*/
/*    background-color: var(--score-red)*/
/*}*/

/*.review__score[data-score="3"] {*/
/*    background-color: var(--score-yellow)*/
/*}*/

/*.review__score[data-score="4"], .review__score[data-score="5"] {*/
/*    background-color: var(--score-green)*/
/*}*/

.promo {
    position: relative;
    column-count: 3;
    column-gap: 30px
}

@media (max-width: 1100px) {
    .promo {
        column-count: 2
    }
}

@media (max-width: 780px) {
    .promo {
        column-count: 1
    }
}

.promo__item {
    position: relative;
    margin-bottom: 32px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    page-break-inside: avoid;
    break-inside: avoid
}

.promo__item .btn {
    padding: 18px 8px
}

.promo__item .btn__container {
    column-gap: 8px
}

.promo__item .btn__container .btn {
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 1
}

.promo__item .btn__container .btn--icon-blue {
    flex: none;
    order: 1;
    align-self: stretch;
    flex-grow: 0
}

.promo__item.flash .promo__title {
    padding-right: calc(16px + 48px)
}

.promo__item.flash:before {
    content: url(../img/flash.svg);
    position: absolute;
    top: 32px;
    right: 32px
}

.promo__list {
    padding: 0;
    padding-left: 8px;
    margin: 0
}

.promo__text, .promo__list--item {
    line-height: 24px
}

.promo__list--item::marker {
    content: '– '
}

.promo__img--fill {
    margin-left: -32px;
    width: calc(100% + 64px);
    height: auto;
    object-fit: cover
}

.promo__item > *:not(:last-child) {
    margin-bottom: 32px
}

.documents {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start
}

.documents > *:not(:last-child) {
    margin-bottom: 16px
}

.mobile-section .image__container .btn {
    position: absolute;
    top: 16px;
    left: 16px;
    color: var(--text-blue-g);
    background-color: #fff
}

.mobile-section .image__container .btn:after {
    content: url(../img/arrows-zoom-g.svg);
    margin-left: 4px
}

#consultation, #presentation, .credit-form, .book, .trade-in {
    padding: 32px;
    overflow: hidden
}

#consultation .popup__title, #presentation .popup__title, .credit-form .popup__title, .book .popup__title, .trade-in .popup__title {
    text-align: left
}

.popup-form .wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start
}

.popup-form .one-side {
    width: calc(100% / 2 - 16px)
}

.popup-form .left-side {
    margin-right: 32px
}

#consultation .fieldset, #presentation .fieldset, .credit-form .fieldset, .book .fieldset, .trade-in .fieldset {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

#consultation .form-group, #presentation .form-group, .credit-form .form-group, .book .form-group, .trade-in .form-group {
    margin-bottom: 16px
}

#consultation .btn, #presentation .btn, .credit-form .btn, .book .btn, .trade-in .btn {
    padding: 19px 0 17px
}

.whatsapp-widget {
    padding: 16px;
    padding-left: calc(16px + 48px + 16px);
    border-radius: 16px;
    text-decoration: none;
    background: url(/v3/img/whatsapp.svg) rgba(71, 199, 86, .75);
    background-repeat: no-repeat;
    background-position: 16px center;
    box-shadow: 0px 0px 6px rgba(0, 0, 0, .1);
    backdrop-filter: blur(2px);
    box-sizing: border-box
}

.whatsapp-widget .h4 {
    margin: 0;
    margin-bottom: 8px;
    font-size: 20px;
    font-weight: 400;
    line-height: 24px;
    color: var(--text)
}

.whatsapp-widget p {
    margin: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
    color: var(--text)
}

#consultation .right-side, .credit-form .right-side {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center
}

.book .right-side {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

.trade-in .right-side {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.main-agent {
    width: 256px;
    height: 256px;
    border-radius: 128px;
    object-fit: cover
}

.agents-gallery {
    margin-top: -16px;
    margin-bottom: 16px;
    margin-right: -16px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center
}

.agents-gallery img {
    margin-left: -16px;
    width: 70px;
    height: 70px;
    border-radius: 35px;
    border: 3px solid #1cbf60;
    object-fit: cover;
    box-shadow: 0px 3px 12px rgba(0, 0, 0, .25);
    box-sizing: border-box
}

#consultation .right-side span {
    font-size: 14px;
    font-weight: 400;
    line-height: 16px;
    text-align: center;
    color: #888
}

#consultation .phone {
    margin-bottom: 8px;
    font-size: 20px
}

.files-params {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center
}

.files-params .widget-info__item:not(:last-child) {
    margin-right: 32px
}

#presentation .files-params .widget-info__item:first-child {
    padding: 8px 16px;
    border-radius: 8px;
    background-color: #1cbf60
}

#presentation .files-params .widget-info__item:first-child span {
    color: #fff
}

.files-params .widget-info__item:first-child span.item__value {
    margin: 0
}

.credit-form:before {
    content: '';
    position: absolute;
    right: -230px;
    bottom: -105px;
    z-index: 0;
    display: block;
    width: 417px;
    height: 571px;
    background: #fff url(../img/calculator.jpg) top left;
    background-repeat: no-repeat;
    background-size: contain;
    transform: rotate(16deg)
}

.credit-form .right-side {
    align-items: flex-start
}

.credit-form .right-side img {
    width: 64px;
    border-radius: 16px
}

.credit-form .right-side img:first-child {
    box-shadow: 0 0 6px rgba(0, 0, 0, .1)
}

.credit-form .right-side img:not(:last-child) {
    margin-bottom: 8px
}

.book .image {
    height: 272px;
    object-fit: contain
}

.book .files-params .widget-info__item:first-child span.item__value {
    margin-bottom: 4px
}

@media (max-width: 500px) {
    #presentation {
        background: #fff !important
    }

    .book .files-params .widget-info__item:not(:last-child) {
        margin-bottom: 16px
    }

    .credit-form .right-side {
        flex-direction: row
    }

    .credit-form:before {
        background: 0 0
    }
}

.btn--presentation {
    position: relative;
    margin-bottom: 32px;
    padding: 16px !important;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box
}

.btn--presentation > span {
    position: relative;
    margin-left: 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    font-size: 12px;
    font-weight: 400;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 0;
    color: #72b7ff;
    text-transform: none
}

.btn--presentation:after {
    content: '';
    position: absolute;
    right: -32px;
    top: 32px;
    width: 96px;
    height: 63px;
    background: url(/v3/img/btn-mockup.png) center center;
    background-repeat: no-repeat;
    background-size: contain
}

.btn--presentation > span:before {
    content: '';
    position: absolute;
    left: -16px;
    width: 1px;
    height: 34px;
    background: #fff;
    opacity: .5
}

.btn--presentation > span > span {
    margin-bottom: 4px;
    font-weight: 500;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #fff
}

.form--full {
    padding: 0 !important
}

.form-head {
    position: relative;
    margin-bottom: 32px;
    padding: 32px;
    width: 100%;
    height: 300px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    box-sizing: border-box
}

.form-head:before {
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(51, 48, 55, 0) 0%, rgba(51, 48, 55, .9) 70.31%)
}

.form-head .popup__title {
    z-index: 10;
    margin-bottom: 16px;
    color: #fff
}

.form-head .files-params {
    z-index: 10
}

.form-head .files-params .item__param {
    color: #fff
}

.form-head .files-params .item__value {
    color: #00c35a
}

.form-head .files-params .widget-info__item:first-child {
    background-color: rgba(255, 255, 255, .25) !important;
    backdrop-filter: blur(4px)
}

.form--full .wrapper {
    padding: 0 32px 32px;
    box-sizing: border-box
}

.form--full .whatsapp-widget {
    margin-top: 32px;
    width: 100%
}

@media (max-width: 500px) {
    .form-head {
        padding: 16px;
        height: auto
    }

    .form--full .wrapper {
        padding: 0 16px 16px;
        align-items: center
    }

    .form--full .left-side {
        margin-bottom: 16px
    }

    .form--full .form-group {
        margin-bottom: 8px
    }

    .form--full .form-group__title {
        display: none
    }

    .btn--presentation {
        margin-bottom: 8px
    }

    .btn--presentation:after {
        right: 16px;
        top: 1px
    }

    .form--full .files-params .widget-info__item:first-child {
        margin-bottom: 0
    }

    .form--full .files-params .widget-info__item:not(:first-child) {
        display: none
    }

    .form--full .form-group__title {
        display: none
    }

    .form--full .whatsapp-widget {
        margin-top: 0;
        background-size: 32px
    }

    .form--full .whatsapp-widget h4 {
        margin-bottom: 0;
        font-size: 16px
    }

    .form--full .whatsapp-widget p {
        display: none
    }
}

@media (max-width: 375px) {
    .btn--presentation:after {
        right: 0;
        top: 1px
    }
}

@media (max-width: 340px) {
    .btn--presentation:after {
        right: -16px;
        top: 1px
    }
}

@media (max-width: 330px) {
    .btn--presentation:after {
        right: -26px;
        top: 1px
    }
}

.trade-in {
    background: #fff url(../img/buildings.jpg);
    background-repeat: no-repeat;
    background-position: bottom -2px right -600px;
    background-size: 1150px
}

.params__list {
    margin: 0;
    margin-bottom: 32px;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.params__item {
    margin-bottom: 5px;
    padding: 4px 8px;
    border-radius: 8px;
    font-size: 16px;
    line-height: 24px;
    color: #fff;
    text-align: center;
    background: #00c35a
}

.params__item:not(:last-child) {
    margin-right: 5px
}

.trade-in .popup__description {
    font-size: 20px
}

.trade-in .right-side {
    height: 320px
}

@media (max-width: 500px) {
    .trade-in .right-side {
        display: none
    }
}

.breadcrumb {
    margin: 0;
    margin-bottom: 32px;
    padding: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.breadcrumb a {
    font-size: 14px;
    line-height: 16px;
    color: #b0afac;
    text-decoration: none
}

.breadcrumb span {
    font-size: 14px;
    line-height: 16px;
    color: #b0afac
}

.breadcrumb .active {
    font-size: 14px;
    line-height: 16px;
    color: #333037
}

.breadcrumb li:not(:last-child):after {
    content: url(../img/breadcrumbs-sep.svg);
    margin: 0 16px
}

.blog .blog__top-section {
    padding-top: 32px;
    padding-bottom: 0
}

.blog__section {
    padding-top: 0
}

.blog__container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start
}

.blog__content {
    position: relative;
    width: calc(100% / 12 * 8 - 15px)
}

.blog__nav {
    position: sticky;
    top: 80px;
    width: calc(100% / 12 * 4 - 15px);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-end
}

.blog__list {
    padding: 0;
    width: calc(100% / 4 * 3);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    list-style: none
}

.blog__list--item:not(:last-child) {
    margin-bottom: 0px
}

.blog__list--item.current .blog__list--link {
    background-color: #fff
}

.blog__list--item:hover .blog__list--link {
    background-color: #fff
}

.blog__list--link {
    padding: 8px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    border-radius: 8px;
    font-size: 16px;
    line-height: 32px;
    text-decoration: none;
    color: #4a484b
}

.blog__list--link svg {
    margin-right: 16px
}

.blog__article {
    margin: 0;
    padding: 0;
    margin-bottom: 32px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    border: 0;
    border-radius: 16px;
    background-color: #fff;
    overflow: hidden
}

.article__top-panel {
    margin-bottom: 16px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center
}

.article__top-panel > * {
    margin-right: 16px
}

.article__top-panel cite {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    color: #000
}

.article__top-panel .article__time {
    font-size: 14px;
    color: #888
}

.article__content {
    margin: 0;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch
}

.article__title {
    margin-bottom: 16px;
    font-size: 20px;
    font-weight: 400;
    line-height: 30px;
    color: #000
}

.article__content p {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 32px;
    color: #393939
}

.article__detail-page {
    display: flex;
    flex-direction: column;
    text-decoration: none
}

.article__img {
    display: flex;
    width: 100%;
    height: auto
}

.article .blog__nav {
    position: relative;
    top: unset;
    width: 100%;
    align-items: flex-start
}

.article .blog__list {
    padding: 0;
    margin: 0;
    margin-bottom: 32px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.article .blog__list--item:not(:last-child) {
    margin-right: 8px
}

.article .blog__list--link {
    padding: 8px 16px;
    white-space: nowrap
}

.article .blog__list--link svg {
    margin-right: 8px
}

.article__wrapper {
    padding: 32px 0;
    background-color: #fff
}

.article__wrapper > * {
    width: 729px;
    margin-left: auto;
    margin-right: auto
}

.article__wrapper > figure {
    width: 100%
}

.article__wrapper h1, .article__wrapper h2, .article__wrapper h3, .article__wrapper h4 {
    margin-bottom: 16px
}

.article__wrapper h1 {
    font-size: 32px;
    line-height: 1.5
}

.article__wrapper h2 {
    font-size: 28px;
    line-height: 1.5
}

.article__wrapper h3 {
    font-size: 24px;
    line-height: 1.5
}

.article__wrapper h4 {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.5
}

.article__wrapper p {
    font-size: 16px;
    line-height: 32px;
    color: #393939
}

.article__wrapper figure {
    padding: 0;
    margin: 0;
    margin-bottom: 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-color: #eee
}

.article__wrapper figure img {
    width: 100%;
    max-width: 1110px;
    margin-left: auto;
    margin-right: auto
}

.article__wrapper li {
    font-size: 16px;
    line-height: 32px;
    color: #393939
}

.article__wrapper a {
    color: var(--text-blue-g)
}

.article__wrapper li:not(:last-child) {
    margin-bottom: 16px
}

@media (max-width: 500px) {
    body {
        padding-top: 60px
    }

    .header__panel--wrapper {
        display: none
    }

    .section {
        padding: 16px 0
    }

    .container {
        width: 100%;
        position: relative
    }

    .container--margin {
        padding: 0 16px;
        box-sizing: border-box
    }

    .lr-padding {
        padding: 0 16px
    }

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

    .important-message .close {
        top: unset;
        right: 16px
    }

    .header {
        border-radius: 0
    }

    .header__container {
        height: 60px;
        box-sizing: border-box
    }

    .header__container .logo {
        padding-left: 0
    }

    .header__container .logo-img {
        height: 24px;
        width: auto;
    }

    .header__nav {
        display: none
    }

    .header__container .contacts {
        display: none
    }

    .header__nav--mobile {
        display: block
    }

    .footer {
        padding: 32px 0
    }

    .footer__container {
        padding: 16px
    }

    .footer__item {
        width: 100%
    }

    .footer__item:not(:last-child) {
        margin-right: 0
    }

    .subfooter {
        padding: 32px 16px 0;
        box-sizing: border-box
    }

    .subfooter__item:not(:last-child) {
        margin-bottom: 32px
    }

    .subfooter small {
        text-align: left
    }

    .mobile-section {
        display: block
    }

    .desktop-section {
        display: none
    }

    .image__container {
        margin-bottom: 0;
        width: 100%;
        height: 500px
    }

    .image {
        height: 500px;
        border-radius: 0
    }

    .mobile-section .white-box {
        padding: 16px;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;
        border-radius: 0
    }

    .mobile-section .white-box > *:not(:last-child) {
        margin-bottom: 16px
    }

    .title__main {
        font-size: 24px
    }

    .btn__container .btn--fill-blue {
        width: 100%
    }

    .advantages {
        padding: 16px 0;
        width: 100%;
        height: calc(64px * 2 + 32px)
    }

    .advantages .widget-info__item {
        width: calc((100vw - 32px - 16px) / 2) !important;
        height: 64px !important
    }

    .advantages .widget-info__item:nth-child(odd) {
        margin-bottom: 16px
    }

    .advantages .widget-info__item .item__value {
        margin-bottom: 4px;
        font-size: 16px;
        line-height: 24px;
        color: var(--text)
    }

    .text {
        column-count: 1
    }

    .ajax-form.white-box {
        padding: 16px;
        margin-bottom: 16px;
        grid-template-columns:1fr;
        border-radius: 0
    }

    .ajax-form .fieldset {
        flex-wrap: wrap
    }

    .ajax-form .fieldset:not(:last-child) {
        margin-bottom: 0
    }

    .form-group {
        margin-bottom: 16px;
        width: 100%
    }

    .ajax-form .fieldset > *:not(:last-child) {
        margin-right: 0
    }

    .ajax-form .fieldset .btn__container {
        width: 100%
    }

    .catalog {
        padding: 0 16px;
        flex-direction: column;
        box-sizing: border-box
    }

    .catalog__item {
        margin-bottom: 16px;
        width: 100%;
        height: auto
    }

    .catalog__item:not(:nth-child(3n)) {
        margin-right: 0
    }

    .calc__container {
        flex-direction: column
    }

    .calc {
        margin-right: 0;
        width: 100%
    }

    .calc.white-box {
        padding: 16px;
        margin-bottom: 16px;
        border-radius: 0
    }

    .calc__result {
        padding: 0 16px;
        width: 100%;
        box-sizing: border-box
    }

    .calc__result--item {
        padding-left: 32px;
        height: auto
    }

    .content-block {
        flex-direction: row;
        justify-content: flex-start
    }

    .bank-logo {
        position: relative;
        left: unset;
        width: 64px;
        height: 64px
    }

    .content-block {
        height: auto
    }

    .calc__result--item hr {
        margin: 16px 0
    }

    .calc__result--item .btn {
        margin-top: 32px;
        width: 100%;
        border-radius: 8px
    }

    .navigation__list {
        position: relative;
        padding: 16px 0 0 16px;
        margin-bottom: 0;
        flex-wrap: nowrap;
        background-color: #fff;
        overflow-y: scroll;
        box-sizing: border-box
    }

    .navigation__list::-webkit-scrollbar {
        width: 0
    }

    .navigation__list--item:last-child {
        margin-right: 16px
    }

    .slider-navigation .navigation__list {
        padding: 0 0 0 16px;
        margin-bottom: 8px;
        flex-wrap: nowrap;
        background-color: transparent
    }

    .gallery {
        padding-left: 16px;
        height: 205px;
        box-sizing: border-box
    }

    .gallery .image__container {
        width: 200px;
        height: 200px
    }

    .gallery .image {
        height: 100%;
        border-radius: 16px
    }

    .gallery .image__container h3 {
        display: none
    }

    .map-wrapper, .map {
        height: calc(550px + 32px);
        border-radius: 0
    }

    .widget-infrastructure {
        width: calc(100vw - 32px);
        top: 16px;
        right: 16px
    }

    /*.reviews__list {*/
    /*    width: 100%;*/
    /*    column-count: 1;*/
    /*    padding: 0 16px;*/
    /*    box-sizing: border-box*/
    /*}*/

    /*.review__item {*/
    /*    margin-bottom: 16px*/
    /*}*/

    /*.reviews--empty-wrapper {*/
    /*    padding: 0 16px*/
    /*}*/

    .promo {
        column-count: 1;
        padding: 0 16px
    }

    .promo__item {
        margin-bottom: 16px
    }

    .promo__img {
        width: auto;
        height: auto;
        object-fit: contain
    }

    .promo__img--fill {
        width: calc(100vw - 32px);
        object-fit: contain
    }

    .documents {
        padding: 32px 16px;
        border-radius: 0
    }

    .get-catalog {
        width: calc(100vw - 32px);
        margin: auto;
        margin-bottom: 16px
    }

    .complexes {
        margin-bottom: 0
    }

    .checkbox--small {
        margin-bottom: 16px;
        width: 100%;
        height: auto;
        flex-direction: row;
        align-items: center
    }

    .complexes .catalog__item {
        margin-bottom: 16px;
        width: 100%;
        height: auto
    }

    .complexes .catalog__item:not(:nth-child(4n)) {
        margin-right: 0
    }

    .popup-form {
        padding: 32px 16px;
        width: 100%
    }

    .fieldset {
        flex-wrap: wrap
    }

    .popup-form > *:not(:nth-last-child(-n+2)) {
        margin-bottom: 16px
    }

    #consultation, #presentation {
        padding: 32px 16px
    }

    #consultation .popup__title, #presentation .popup__title, .book .popup__title, .trade-in .popup__title, .credit-form .popup__title {
        font-size: 28px
    }

    .popup-form .wrapper {
        flex-direction: column;
        justify-content: center;
        align-items: flex-start
    }

    .popup-form .one-side {
        width: 100%
    }

    .popup-form .left-side {
        margin-right: 0;
        margin-bottom: 32px
    }

    .article .blog__nav {
        overflow-y: scroll
    }
}

.news__content {
    position: relative;
    top: unset;
    margin-bottom: 32px;
    width: 100%;
    column-count: 3;
    column-gap: 8px;
    box-sizing: border-box
}

.news__widget .blog__nav::-webkit-scrollbar {
    width: 0
}

.news__widget .article__img {
    height: 200px;
    object-fit: cover
}

.news__content .blog__article {
    margin-bottom: 8px
}

.news__content .article__title {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 24px
}

.news__content .article__intro {
    margin-top: 8px;
    font-size: 14px;
    line-height: 18px
}

.news__content .blog__article:nth-child(1) {
    height: 450px
}

.news__content .blog__article:nth-child(2), .news__content .blog__article:nth-child(3) {
    height: calc(450px / 2 - 4px)
}

.news__content .blog__article:nth-child(4), .news__content .blog__article:nth-child(5), .news__content .blog__article:nth-child(6) {
    height: calc(450px / 3 - 16px / 3)
}

.news__widget .link {
    display: block;
    text-align: center
}

.article__detail-page p {
    text-decoration: none;
    color: #393939
}

@media (max-width: 500px) {
    .news__widget .title__section {
        padding: 0 16px
    }

    .news__widget .blog__nav {
        padding-left: 16px;
        box-sizing: border-box
    }

    .news__widget .blog__list {
        margin-bottom: 8px
    }

    .news__widget .blog__nav .blog__list--link {
        background-color: #fff
    }

    .news__content {
        padding: 0 16px;
        column-count: 1
    }

    .news__content .blog__article:nth-child(1) {
        height: auto
    }

    .news__content .blog__article:nth-child(2), .news__content .blog__article:nth-child(3) {
        height: auto
    }

    .news__content .blog__article:nth-child(4), .news__content .blog__article:nth-child(5), .news__content .blog__article:nth-child(6) {
        height: auto
    }
}

.credit__widget, .credit__widget .container {
    position: relative
}

.banks__list {
    height: 163px
}

.bank__item {
    width: 128px;
    height: 163px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    border-radius: 16px;
    overflow: hidden
}

.bank__item img {
    width: 128px;
    height: 128px
}

.bank-rate {
    width: 100%;
    height: 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    font-size: 16px;
    color: #fff;
    text-align: center;
    background-color: #00c35a
}

.banks-prev {
    position: absolute;
    top: calc(50% + 10px);
    left: -60px
}

.banks-next {
    position: absolute;
    top: calc(50% + 10px);
    right: -60px
}

@media (max-width: 500px) {
    .credit__widget .container {
        padding: 0 16px;
        box-sizing: border-box
    }

    .banks-prev {
        display: none
    }

    .banks-next {
        right: 0;
        top: calc(50% + 0px)
    }
}

.cta__plan {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    font-size: 14px;
    line-height: 16px;
    color: #888
}

.plan__id {
    margin-bottom: 8px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    font-size: 20px;
    line-height: 24px;
    color: #333037;
    text-transform: uppercase
}

.plan__id svg {
    margin-right: 8px
}

.plan .breadcrumb {
    margin-bottom: 16px
}

.plan .image__container {
    padding: 0;
    overflow: hidden
}

.plan .image__container img {
    border-radius: 32px;
    width: 100%;
    height: 400px;
    object-fit: cover
}

.btn--photo-zoom {
    position: absolute;
    top: 20px;
    right: 20px;
    display: block;
    width: 34px;
    height: 34px;
    border-radius: 17px;
    background: #00c35a url(./v3/img/zoom.svg) center center;
    background-repeat: no-repeat
}

.plan h1 {
    margin-bottom: 16px
}

.plan #priceZhk2 {
    font-size: 24px;
    color: #0064cb
}

.plan .progress-bar {
    max-width: unset
}

.plan .section:first-child {
    padding-bottom: 0
}

.plan .desktop-section {
    padding-top: 0
}

.plan .calc {
    width: 100%
}

.plan .calc__fieldset {
    flex-direction: row;
    justify-content: space-between
}

.plan .label-calc__checkbox {
    flex-direction: row-reverse
}

.plan .calc__fieldset label {
    width: calc(100% / 3 - 20px)
}

.plan .calc__fieldset > *:not(:last-child) {
    margin-bottom: 0
}

.plan .adv__list, .plan .finish__list {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    list-style: none
}

.plan .object__list {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    list-style: none
}

.plan .object__item:not(:last-child) {
    margin-right: 8px
}

.plan .objects a {
    line-height: 24px;
    color: #333037;
    text-decoration: none
}

.plan .objects a:hover {
    text-decoration: underline
}

.plan .adv__item {
    margin-bottom: 4px;
    padding: 8px;
    border: 1px solid #dfdfdf;
    border-radius: 8px;
    font-size: 14px
}

.plan .adv__item:not(:last-child) {
    margin-right: 4px
}

.plan .finish__item {
    margin-bottom: 16px
}

.plan .finish__item:not(:last-child) {
    margin-right: 28px
}

.developer__logo {
    display: block;
    align-self: flex-start;
    margin-bottom: 32px
}

.plan .complexes {
    position: relative
}

.zhkSlider-prev {
    position: absolute;
    top: calc(50% + 10px);
    left: -60px
}

.zhkSlider-next {
    position: absolute;
    top: calc(50% + 10px);
    right: -60px
}

@media (max-width: 500px) {
    .plan .desktop-section {
        display: block
    }

    .plan .desktop-section .container, .plan .top-section .container, .plan .other-section .container, .plan .advantages .container, .plan .complexes {
        padding: 0 16px;
        box-sizing: border-box
    }

    .plan .title__main {
        font-size: 20px
    }

    .plan .image__container {
        height: auto;
        margin-bottom: 16px
    }

    .plan .widget-advantages {
        width: 100%
    }

    .plan .calc-section .title__section {
        padding: 0 16px;
        box-sizing: border-box
    }

    .plan .calc-section .fieldset .label-calc {
        width: 100%
    }

    .plan .calc .fieldset:first-child {
        column-count: 2
    }

    .plan .calc .fieldset:first-child .label-calc {
        margin-bottom: 32px;
        width: 50%
    }

    .plan .calc .label-calc__checkbox {
        justify-content: flex-end
    }

    .plan .calc .label-calc__checkbox br {
        display: none
    }

    .plan .calc .label-calc__checkbox span {
        margin-right: 16px
    }

    .plan .image__container img {
        border-radius: 16px;
        width: 100%;
        height: auto
    }

    .plan .widget-advantages {
        margin-bottom: 0
    }

    .plan .developer__logo, .plan .objects, .plan .advants, .plan .finish {
        display: none
    }

    .zhkSlider-prev {
        display: none
    }

    .zhkSlider-next {
        right: 0;
        top: calc(50% + 0px)
    }
}

.adv-list {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    list-style: none
}

.adv-item {
    width: calc(100% / 4 - 16px * 3 / 4);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    font-size: 16px;
    line-height: 19px;
    color: #000
}

.adv-item:not(:last-child) {
    margin-right: 16px
}

.adv-title {
    margin-bottom: 8px;
    font-size: 40px;
    font-weight: 700;
    line-height: 48px;
    color: #0064cb
}

@media (max-width: 500px) {
    .adv-item {
        width: 100%
    }

    .plan .advantages {
        height: auto
    }

    .adv-item:not(:last-child) {
        margin-bottom: 32px
    }
}

.share-links {
    position: fixed;
    z-index: 100;
    bottom: 0;
    margin: auto;
    padding: 32px;
    box-sizing: border-box;
    border-radius: 32px 32px 0 0;
    background: #fff;
    box-shadow: 0 -3px 12px rgba(0, 0, 0, .15);
    transform: translateY(150px);
    transition: .3s
}

.share-links .ya-share2__list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center
}

.share-links__active {
    transform: translateY(0);
    transition: .3s
}

@media (max-width: 500px) {
    .share-links {
        padding: 16px;
        width: 100%
    }
}

.advantageskSlider-next {
    position: absolute;
    top: calc(50% - 20px);
    right: 0
}

.nav__list--item-mobile .search__form {
    padding: 16px;
    width: 100%;
    border: none;
    box-sizing: border-box
}

.nav__list--item-mobile .search__form .search__form--button {
    right: 32px;
    top: unset
}

.nav__list--item-mobile .search__form input {
    border: 1px solid #e1e1e1
}

.review__image {
    width: 100%;
    height: 200px;
    object-fit: contain
}

.header__panel--wrapper {
    position: relative;
    width: 100%;
    height: 45px;
    background-color: #333037;
}

.header__panel {
    position: relative;
    width: 100%;
    height: 45px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 32px;
    align-items: center;
    color: #FFF;
}

.header__panel > ul {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    list-style: none;
    font-size: 12px;
}

.header__panel ul.region-info li:not(:last-child) {
    margin-right: 32px;
}

.header__panel .mailto {
    color: #FFF;
    text-decoration: none;
}

.header__panel .mailto:hover {
    text-decoration: underline;
}

.header__panel > ul .to-right {
    margin-left: auto;
}

.header__panel .social__list {
    display: flex;
}

.header__panel .social__list--link {
    width: 32px;
    height: 32px;
    border-radius: 12px;
}

.header__panel .social__list--link svg {
    width: 16px;
}

.callback {
    font-size: 14px;
    text-decoration: none;
    color: #333037;
}

.search-panel {
    position: absolute;
    width: 100%;
    height: 80px;
    background: #FFF;
}

.search-panel .search__form {
    width: 100%;
    height: 80px;
    display: flex;
    border: none;
    border-radius: 0;
}

.search-panel .search__form--input {
    border-radius: 8px;
    border: 1px solid #eee;
}

.search-panel .search__form--button {
    top: unset;
}

.ui-widget.ui-widget-content {
    z-index: 1000;
    border: none;
    box-sizing: border-box;
    box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.15);
    padding: 0;
    margin: 0;
    list-style: none;
    background: #FFF;
}

.ui-widget.ui-widget-content li {
    padding: 8px 16px;
    box-sizing: border-box;
}

.ui-widget.ui-widget-content li:nth-child(odd) {
    background: #FBFBFB;
}

.ui-widget.ui-widget-content li:hover {
    background: #F5F5F5;
    color: #000;
    border: none;
    box-sizing: border-box;
}

.ui-widget.ui-widget-content li .ui-state-active {
    background: none;
    color: #000;
    border: none;
    box-sizing: border-box;
}

.flexmenu li {
    position: relative;
}

.submenu__list {
    position: absolute;
    right: 0;
    top: 49px;
    padding: 0;
    list-style: none;
    background: #FFF;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
}

.submenu__list .nav__list--item:not(:last-child) {
    margin-right: 0;
}

.submenu__list a {
    display: block;
    padding: 16px 32px;
    white-space: nowrap;
}

.flexMenu-viewMore > a {
    color: #00c35a;
}
/*.reviews {*/
/*    position: relative;*/
/*    width: 100%;*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    padding: 100px 0 150px 0;*/
/*    background: #E5EFF3;*/
/*    margin: 40px 0;*/
/*}*/
/*.review__content {*/
/*    position: relative;*/
/*    width: 100%;*/
/*    display: flex;*/
/*    flex-direction: column;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*}*/
/*.reviews h2 {*/
/*    font-family: 'Roboto Condensed', sans-serif;*/
/*    font-size: 32px;*/
/*    font-weight: 400;*/
/*    color: #535353;*/
/*    padding-bottom: 30px;*/
/*    text-align: center;*/
/*}*/
/*.reviews-slider {*/
/*    position: relative;*/
/*    width: 100%;*/
/*}*/
/*.reviews__item {*/
/*    position: relative;*/
/*    height: 439px;*/
/*    padding: 30px;*/
/*    background: #FFF;*/
/*    overflow: hidden;*/
/*    outline: none;*/
/*    margin: 12px 12px;*/
/*}*/
/*.reviews__item:hover {*/
/*    box-shadow: 0 0 12px rgba(0,0,0,.20);*/
/*}*/
/*.review__title {*/
/*    position: relative;*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    justify-content: flex-start;*/
/*    align-items: center;*/
/*    margin-bottom: 30px;*/
/*}*/
/*.review__title img {*/
/*    margin-right: 20px;*/
/*    border-radius: 50%;*/
/*}*/
/*.review__title h3 {*/
/*    font-family: 'Roboto Condensed', sans-serif;*/
/*    font-size: 20px;*/
/*    line-height: 30px;*/
/*    font-weight: 400;*/
/*    color: #535353;*/
/*}*/
/*.review__title p,*/
/*.review__title a {*/
/*    font-family: 'Roboto', sans-serif;*/
/*    font-size: 11px;*/
/*    color: #8F8F8F;*/
/*}*/
/*.review-item__content {*/
/*    height: 260px;*/
/*    overflow-x: hidden;*/
/*}*/
/*.review-item__content p {*/
/*    font-family: 'Roboto', sans-serif;*/
/*    font-size: 14px;*/
/*    line-height: 24px;*/
/*    color: #717171;*/
/*}*/
/*.review-slider__nav {*/
/*    position: absolute;*/
/*    width: 100%;*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    justify-content: space-between;*/
/*    align-items: center;*/
/*    bottom: -50px;*/
/*}*/
/*.review-slider__nav span {*/
/*    display: flex;*/
/*    flex-direction: row;*/
/*    justify-content: center;*/
/*    align-items: center;*/
/*    font-family: 'Roboto Condensed', sans-serif;*/
/*    font-size: 20px;*/
/*    color: #535353;*/
/*    cursor: pointer;*/
/*}*/
/*.review-slider__nav span svg {*/
/*    margin: 0 12px;*/
/*}*/
html.mfp-helper {
    height: 100%;
}
html.mfp-helper body {
    overflow: hidden;
    height: 100%;
}
@media(max-width: 500px){
    .popup-form{
        height: 100%;
        width: 100%;
        overflow-y: scroll;
        border-radius: 0;
        max-height: 100vh;
    }
}

.zhk-rating-stars{
    --star-size: 23px;
    position: relative;
    
    background: linear-gradient(90deg, #fff0 calc(var(--current-stars) / var(--max-stars) * 100%), #ffffffc7 0), url(/v3/img/star.svg) repeat-x left / auto 100%;
     
    width: calc(var(--max-stars) * var(--star-size));
    height: calc(var(--star-size));
    
    cursor:pointer;
}