/* 1200 */
@media only screen and (max-width: 1200px) {

.head, .footer {max-width: 940px}
.head .logo {width: 70px}
.head .logo > div:nth-child(2) {display: none}
.head > div:nth-child(2), .footer > div:nth-child(2) {padding: 0 65px 0 40px}

.footer > div:nth-child(3) {display: none}
.bottom {max-width: 940px}
.bottom > div:nth-child(1) {padding-right: 60px}
.bottom-nav > div {min-width: 40%}

.crumbs {margin: 15px auto 70px auto; max-width: 940px}

.wrp-promo {padding: 220px 0 50px 0}
.wrp-promo.p2 {padding-top: 300px}
.promo {max-width: 940px}
.promo .title {font-size: 40px; font-weight: 600; line-height: 52px}
.promo .title.big {font-size: 60px; font-weight: 600; line-height: 70px}
.promo .title_after {font-size: 24px; line-height: 32px}
.promo .text {font-size: 16px}
.promo .txt-link {padding: 2px 10px}
.promo .button {padding: 0 30px; min-width: 300px; height: 50px; font-size: 15px; line-height: 50px}
.promo .button_bg {right: -70px}
.promo .num_wrp {left: 800px}
.promo .dop_image {width: 400px; height: 400px; bottom: -67px; right: 0px}

main {display: block; margin: 0 auto 30px auto; max-width: 940px}

.title_fon::before {left: calc((940px - 100vw) / 2)}

.stick_section:before {left: calc((940px - 100vw) / 2)}
.stick_section > div:nth-child(1) {padding-right: 20px}
.stick_section .title { padding: 20px 0; font-size: 34px; line-height: 45px}
.stick_section .block > div:nth-child(2) {padding: 30px}
.stick_section .block .name {font-size: 24px; line-height: 35px}

.two_blocks::before {left: calc((940px - 100vw) / 2)}
.two_blocks .title {font-size: 35px; line-height: 45px}
.two_blocks .img, .two_blocks .dop_img {width: 360px}
.two_blocks .dop_img {width: 180px; height: 120px; top: 224px; left: 246px}
.two_blocks > div:nth-child(1)::before {left: 330px}
.two_blocks > div:nth-child(1)::after {top: 330px; left: 60px}

section {padding: 100px 0 80px 0}
section .bg {left: calc((940px - 100vw) / 2)}
section .title {font-size: 48px; line-height: 60px}
section .after_title {font-size: 22px; line-height: 30px}
section .title.small {font-size: 36px; line-height: 46px}

.three_icons .name {padding-bottom: 10px}

.project-start .item > div:nth-child(2) {padding-left: 20px; min-width: 320px; max-width: 320px}
.project-start .text {margin-bottom: 12px; font-size: 14px; line-height: 21px}
.project-start .text strong {font-size: 15px}

.two-fl {margin: 0 -10px}
.two-fl > div {padding: 15px 10px}
.two-fl .bg {height: 240px}
.two-fl .name {margin-top: 15px; font-size: 16px; line-height: 24px}

.txt-img {margin: 0 -10px 60px -10px}
.txt-img > div {padding: 20px 10px}

.three_icons.four {margin: 70px -10px 80px -10px}
.three_icons.four > div {padding: 0 10px}

.pic-text {margin: 0 -10px 70px -10px}
.pic-text > div {padding: 20px 10px}
.pic-text .name {font-size: 24px;  line-height: 30px}

.two_sect {margin: 30px -10px 0 -10px}
.two_sect > div {padding: 0 10px}
.two_sect .text {padding: 45px 45px 30px 45px}

.block-w-fon .item {padding: 20px}
.block-w-fon .name {font-size: 28px; line-height: 40px}
.block-w-fon .name.v2 {font-size: 16px; line-height: 22px}

.block-fon-i {margin: 60px -10px 60px -10px}
.block-fon-i > div {padding: 10px}

.photos > a {height: 55px}

.end-projects {margin: 0 -10px 70px -10px}
.end-projects > div {padding: 19px 10px}
.end-projects .name {font-size: 15px}
.end-projects .title {font-size: 17px}

.present {flex-wrap: wrap; flex-direction: column-reverse; align-items: flex-start; margin-bottom: 90px; padding: 20px 20px 20px 51%}
.present > div:nth-child(1) {padding: 20px 0 0 0; width: 100%}
.present > div:nth-child(3) {left: 10px; top: -42px}
.present br {content: ''; display: none}
.present br:after {content: ' '}

.object_section {margin: 0 -10px 80px -10px}
.object_section > div {padding: 15px 10px}

.contacts {margin: 0 -10px 40px -10px}
.contacts > div {padding: 0 10px}
.contacts .item {padding: 25px}
.contacts .param {font-size: 22px; line-height: 28px}
}

/* 950 */
@media only screen and (max-width: 950px) {

.head, .footer {max-width: 600px}
.head .logo {width: 240px}
.head .logo > div:nth-child(1) {width: 40px}
.head .logo > div:nth-child(2) {display: block; font-size: 12px}
.head > div:nth-child(2) {padding: 0; width: 0px !important}
.head > div:nth-child(4) {display: block}

.menu_button {display: block; width: 28px; height: auto; box-sizing: border-box; cursor: pointer; position: relative}
.menu_button > div {display: block; margin: 0 0 5px 0; width: 100%; height: 4px; background: #fff; opacity: 1; visibility: visible; border-radius: 6px; transition:all .2s ease}
.menu_button:hover > div:nth-child(1), .menu_button.active:hover > div:nth-child(1) {transform:rotate(0deg) translate(0,-2px)}
.menu_button:hover > div:nth-child(2), .menu_button.active:hover > div:nth-child(2) {opacity:1.0; visibility:visible}
.menu_button:hover > div:nth-child(3), .menu_button.active:hover > div:nth-child(3) {transform:rotate(0deg) translate(0,2px)}

nav {display: block !important; padding: 90px 0 20px 0; width: 285px; height: 100vh; box-sizing: border-box; box-shadow: 3px 0px 6px 0px rgba(110,109,119,0.5); overflow: hidden; font-size: 17px; line-height: 25px; background: #213567; position: fixed; top: 0; right: -300px; z-index: 99999}
nav a {padding: 0 15px; margin: 0 0 25px 0}
nav a:hover {opacity: .8}
nav .close_menu {position: absolute; right: 15px; top: 15px; display: block; width: 26px; height: 26px; z-index: 501; cursor:pointer; transition:all .3s ease; overflow: hidden}
nav .close_menu:before, nav .close_menu:after {content: ""; position: absolute; top: 13px; right: 1px; width: 26px; height: 2px; background: #fff; opacity: .8}
nav .close_menu:before {transform: rotate(45deg)}
nav .close_menu:after {transform: rotate(-45deg)}
nav .close_menu:hover:before, nav .close_menu:hover:after {opacity: 1}

.footer > div:nth-child(2) {padding: 0 0 0 20px}
.footer > div:nth-child(3) {display: none}
.footer .logo {width: 70px}
.footer .logo > div:nth-child(2) {display: none}
.bottom {max-width: 600px}
.bottom > div:nth-child(1) {padding-right: 20px}
.bottom-nav > div {min-width: inherit; width: 100%}

.crumbs {margin: 15px auto 50px auto; max-width: 600px}
.breadcrumb > div {font-size: 12px}

.wrp-promo.p2 {padding-top: 250px}

.promo {max-width: 600px}
.promo .title {font-size: 34px; line-height: 45px}
.promo .title br {display: none}
.promo .title.big {font-size: 50px; line-height: 64px}
.promo .title_after {font-size: 18px; line-height: 26px}
.promo .text {font-size: 15px}
.promo .txt-link {padding: 1px 10px}
.promo .big_text {font-size: 24px; line-height: 35px}
.promo .sm_text {font-size: 18px; line-height: 28px}
.promo .button {padding: 0 25px; min-width: 280px; font-size: 14px}
.promo .button_bg {width: 100px; height: 80px; right: -60px; bottom: -30px}
.promo .two_marks {flex-wrap: wrap; gap: 15px}
.promo .two_marks.marg {margin: 5px 0}
.promo .two_marks > div {width: 100%}

.promo .num_wrp {margin-top: 15px; left: inherit; bottom: inherit; position: relative}
.promo .num_wrp .num span {font-size: 50px; line-height: 50px}
.promo .promo-form {flex-wrap: wrap; gap: 10px; margin-bottom: 10px; width: 270px}
.promo .promo-form > .row {width: 100%}
.promo .promo-form .name {height: 24px; font-size: 14px; line-height: 24px}
.promo .promo-form > .row:last-child .name {height: 10px}
.promo .promo-form input {width: 100%; height: 50px}
.promo .promo-form .button { width: 100%; height: 50px; line-height: 50px}
.promo .dop_image {bottom: -30px; right: 63px}

main {max-width: 600px}

.title_fon::before {left: calc((600px - 100vw) / 2)}

.stick_section {flex-wrap: wrap}
.stick_section::before {left: calc((600px - 100vw) / 2)}
.stick_section > div {width: 100%}
.stick_section > div:nth-child(1) {padding-right: 0; padding-bottom: 20px}
.stick_section p {width: 100%}
.stick_section .block {margin-bottom: 20px; min-height: 300px}

.two_blocks {flex-wrap: wrap}
.two_blocks::before {left: calc((600px - 100vw) / 2)}
.two_blocks > div {padding-bottom: 30px; width: 100%}
.two_blocks > div:nth-child(1) {padding-right: 0; order: 2} 
.two_blocks > div:nth-child(1)::before {left: 520px; top: 150px}
.two_blocks > div:nth-child(1)::after {left: 180px; top: 480px} 
.two_blocks > div:nth-child(2) {order: 1} 
.two_blocks .img, .two_blocks .img img {width: 540px}
.two_blocks .dop_img {width: 200px; height: 130px; top: inherit; left: inherit; right: 0; bottom: -20px}

section {margin-bottom: 60px; padding: 80px 0 60px 0}
section .bg {left: calc((600px - 100vw) / 2); background-position: top left}
section .title {font-size: 40px; line-height: 52px}
section .title.small {font-size: 28px; line-height: 38px}
section .after_title {font-size: 20px; line-height: 28px}

.three_icons {margin: 60px -10px 70px -10px}
.three_icons > div {padding: 0 10px}
.three_icons.four {flex-wrap: wrap; margin: 60px -10px 40px -10px}
.three_icons.four > div {margin-bottom: 30px; width: 50%}

.project-start {margin: 40px 0 60px 0}
.project-start .item { flex-wrap: wrap; padding-bottom: 70px}
.project-start.v2 .item:nth-child(2n) {flex-direction: row}
.project-start .item > div:nth-child(2) {padding-top: 20px; padding-left: 0; width: 100%; min-width: inherit; max-width: inherit}
.project-start.v2 .item:nth-child(2n) > div:nth-child(2) {padding-right: 0; min-width: inherit; max-width: inherit}

.contact-block {flex-wrap: wrap; padding-top: 60px; margin-top: -60px; position: relative; z-index: 5}
.contact-block:before {content: ''; display: block; width: 100vw; height: 100%; background: #f5f5f5; position: absolute; left: calc((600px - 100vw) / 2); top: 0; z-index: -1}
.contact-block > div {width: 100%}
.contact-block > div:nth-child(1) {padding: 30px}
.contact-block > div:nth-child(2) {margin: 0 calc((600px - 100vw) / 2); width: 100vw; height: 400px}
.contact-block .name {padding-top: 30px} 

.two-fl > div {width: 100%}
.two-fl .bg {height: 300px}

.txt-img {flex-wrap: wrap}
.txt-img.revers {flex-direction: column-reverse}
.txt-img > div {padding: 10px; width: 100%}
.txt-img > div:nth-child(2) {height: 600px}
.txt-img .title {font-size: 26px; line-height: 32px}
.txt-img .title br {display: none}

.pic-text {flex-wrap: wrap; margin: 0 -10px 50px -10px}
.pic-text > div {width: 100%}

.top_icon {margin: 70px 0 50px 0}
.top_icon .title {font-size: 28px; line-height: 36px}
.top_icon .title_after {font-size: 20px; line-height: 28px}

.foto-text {gap: 0; margin: 0 -10px; max-width: inherit}
.foto-text > div {padding: 10px; width: calc(100% / 3)}

.wrp_two_sect {margin: 50px 0}

.two_sect { flex-wrap: wrap}
.two_sect > div {width: 100%}
.two_sect > div:nth-child(1) {margin-bottom: 20px}

.block-w-fon {margin: 0 -10px 50px -10px}
.block-w-fon > div {width: 100%}
.block-w-fon > div:nth-child(1), .block-w-fon > div:nth-child(2) {height: auto}
.block-w-fon > div:nth-child(4), .block-w-fon > div:nth-child(5) {width: 100%}
.block-w-fon.v2 > div:nth-child(4), .block-w-fon.v2 > div:nth-child(5) {width: 100%; height: auto}

.block-fon-i > div {width: 50%}

.poselok-sale {flex-wrap: wrap; padding: 30px}
.poselok-sale > div {width: 100%}
.poselok-sale .text {max-width: inherit}
.poselok-sale .numbers { margin-top: 25px; position: relative; right: inherit; bottom: inherit}

.photos {gap: 14px; margin: 15px 0 60px 0}
.photos > a {height: 64px}
.photos > a:nth-child(7), .photos > a:nth-child(8), .photos > a:nth-child(9) {display: none}

.end-projects {flex-wrap: wrap}
.end-projects > div {width: 50%}

.present {margin-bottom: 135px; padding: 20px 20px 100px 20px}
.present > div {width: 100%; text-align: center}
.present > div:nth-child(3) {left: 80px; top: inherit; bottom: -125px}
.present a {margin: 0 auto}

.object_section > div {width: 100%}

.contacts {flex-wrap: wrap; margin: 0 -10px 20px -10px}
.contacts > div { padding: 10px; width: 100%}

.map {margin: 0 calc((600px - 100vw) / 2) 40px calc((600px - 100vw) / 2); width: 100vw}
}

/* 620 */
@media only screen and (max-width: 620px) {

.head, .footer {padding: 0 20px; width: 100%; max-width: inherit; box-sizing: border-box}
.head {height: 70px}
.head > div:nth-child(1) {width: 100%}
.head > div:nth-child(3) {min-width: 115px; max-width: 115px}
.head > div:nth-child(4) {min-width: 28px; max-width: 28px}
.head .logo {padding-bottom: 0; width: 40px}
.head .logo > div:nth-child(2) {display: none}
.head .top-phone {padding-top: 0}
.head .top-phone > div:nth-child(1) {display: block}
.head .top-phone > div:nth-child(4) {display: none}

.nav-bot {flex-direction: column; justify-content: center; align-items: center}

.footer {flex-wrap: wrap}
.footer > div {padding: 20px 0; width: 100%}
.footer > div:nth-child(1) {border-bottom: 1px solid rgba(255, 255, 255, .1)}
.footer > div:nth-child(2) {padding: 20px 0}
.footer .logo {justify-content: center; width: auto}
.footer .logo > div:nth-child(2) {display: block}
.bottom {flex-wrap: wrap; padding: 20px; font-size: 12px; box-sizing: border-box}
.bottom > div {width: 100%; text-align: center}
.bottom > div:nth-child(1) {padding-right: 0; padding-bottom: 5px} 

.crumbs {margin: 0 0 8px 0}
.crumbs .breadcrumb {display: none}

.wrp-promo {padding: 120px 20px 40px 20px; margin-top: -120px; box-sizing: border-box}
.wrp-promo.p2 {padding-top: 140px}

.promo .title {font-size: 27px; line-height: 35px}
.promo .title.big {font-size: 40px; line-height: 55px}
.promo .title_after {font-size: 16px; line-height: 22px}
.promo .title_after br {display: none}
.promo .text {font-size: 14px}
.promo .text br {display: none}
.promo .num_wrp .num span {font-size: 44px; line-height: 46px}
.promo .big_text {font-size: 22px; line-height: 31px}
.promo .sm_text {font-size: 16px; line-height: 22px}
.promo .dop_image {width: 300px; height: 300px; bottom: -24px; right: -47px}

main {padding: 0 20px}

.title_fon::before {left: -20px}

.stick_section {margin: 50px 0}
.stick_section::before {left: -20px}
.stick_section .title {font-size: 28px; line-height: 38px}
.stick_section .block > div:nth-child(2) {padding: 20px}
.stick_section .block .name {font-size: 20px; line-height: 30px}

.two_blocks:before {left: -20px}
.two_blocks .title {font-size: 28px; line-height: 38px}
.two_blocks > div:nth-child(1)::before {left: inherit; top: 70px; right: 35px}
.two_blocks > div:nth-child(1)::after {left: 100px; top: 350px}
.two_blocks .img, .two_blocks .img {width: 100%; padding-right: 80px; box-sizing: border-box}
.two_blocks .img, .two_blocks .img img {border-radius: 4px}

section {margin-bottom: 50px; padding: 50px 0}
section .bg {left: -20px}
section .title {font-size: 30px; line-height: 44px}
section .title.small {font-size: 26px; line-height: 36px}
section .title.small br {display: none}
section .after_title {font-size: 18px; line-height: 25px}
section .after_title br {display: none}
section p br {display: none}

.three_icons {margin: 50px 0 30px 0; flex-wrap: wrap}
.three_icons > div {padding: 0 0 30px 0; width: 100%}
.three_icons .name br {display: none}
.three_icons .icon {margin-bottom: 15px}

.contact-block {padding-top: 50px; margin-top: -50px}
.contact-block::before {left: -20px}
.contact-block > div:nth-child(1) {padding: 0 0 50px 0}
.contact-block > div:nth-child(2) {margin: -20px}

.top_icon .title br {display: none}

.block-fon-i > div {width: 100%}

.present > div:nth-child(3) {left: calc((100% - 472px) / 2)}

.map {margin: 0 -20px 40px -20px}

.popup .popup_form .row {margin-top: 15px}
.popup .popup_form .title {margin-bottom: 15px; font-size: 20px; line-height: 25px}
.popup .popup_form .frm_wrp .name {font-size: 16px; margin-bottom: 7px}
}

/* 414 */
@media only screen and (max-width: 414px) {

.bottom-nav > div {padding: 3px 0; min-width: inherit; white-space: normal;  line-height: 17px}

.promo .title.big {font-size: 30px; line-height: 45px}
.promo .title_after {font-size: 15px; line-height: 21px}

.stick_section .title {font-size: 20px; line-height: 28px}
.stick_section .block {flex-wrap: wrap}
.stick_section .block > div:nth-child(1) {display: block; width: 100%; height: 200px; background-position: top center; background-repeat: no-repeat; background-size: cover}
.stick_section .block > div:nth-child(3) {display: none}

.two_blocks > div:nth-child(1)::before {top: 0}
.two_blocks > div:nth-child(1):after {display: none}
.two_blocks .title {font-size: 20px; line-height: 28px}
.two_blocks .img {padding-right: 60px}
.two_blocks .dop_img {width: 150px; height: 97px}

section .title {font-size: 28px; line-height: 40px}
section .after_title {font-size: 16px; line-height: 23px}
section .title.small {font-size: 20px; line-height: 28px}
section p.big {padding: 10px 0; font-size: 16px; line-height: 21px}
section p.big br {display: none}
section .wrp_frm {width: 100%}
section .wrp_frm .row {margin-bottom: 18px}

.contact-block .name {padding-top: 20px} 
.contact-block .param {font-size: 18px; line-height: 24px}

.top_icon .title {font-size: 20px; line-height: 28px}
.top_icon .title_after {font-size: 16px; line-height: 24px}

.foto-text > div {width: 50%}
.foto-text .item > div:nth-child(1) {height: 100px}
.foto-text .item > div:nth-child(2) {font-size: 13px; line-height: 16px}

.two_sect .item > div:nth-child(1) {height: 200px}
.two_sect .text {padding: 15px}
.two_sect .name {margin-bottom: 15px; font-size: 18px; line-height: 26px}
.two_sect ul > li {padding: 7px 0 7px 42px}

.block-w-fon .name {font-size: 16px; line-height: 22px}
.block-w-fon .button {display: block; margin-top: 15px; padding: 0 10px; font-size: 13px; text-align: center}

.project-start .button {display: block; width: 100%}

.poselok-sale {margin: 0 -20px; padding: 20px; border-radius: 0}
.poselok-sale .title {padding: 20px 0; font-size: 24px; line-height: 30px}
.poselok-sale .text br {display: none}

.photos {margin: 12px -6px 50px -6px; flex-wrap: wrap}
.photos > a {margin: 1px; height: 64px; width: calc(100% / 4)}

.end-projects {margin: 0 -10px 40px -10px}
.end-projects > div {width: 100%}

.present {margin-bottom: 70px; padding: 20px 15px 100px 15px}
.present > div:nth-child(3) {width: 280px; left: calc((100% - 280px) / 2); bottom: -50px}

.object_section {margin: 0 -10px 50px -10px}
.object_section .block {flex-wrap: wrap}
.object_section .block > div:nth-child(1) {display: block; width: 100%; height: 200px; background-position: top center; background-repeat: no-repeat; background-size: cover}
.object_section .block > div:nth-child(3) {display: none}
.object_section .block > div:nth-child(2) {padding: 20px}
.object_section .block .name {font-size: 20px; line-height: 30px}

.obj_sect {flex-wrap: wrap}
.obj_sect > div {width: 100%; height: 50px; font-size: 14px; line-height: 50px}
.obj_sect > div:nth-child(2) {border: 1px solid #292d54; border-left: none; border-right: none}

.txt-img {margin: 0 -10px 50px -10px}
.txt-img > div:nth-child(2) {height: 400px}
.txt-img .item.bg {padding: 20px}
.txt-img .title {margin-bottom: 18px; padding-bottom: 18px; font-size: 20px; line-height: 26px}
.txt-img .text {font-size: 16px; line-height: 24px}
.txt-img .wrp_btn {margin-top: 30px}

.two-fl .bg {height: 200px}

.three_icons.four > div {margin-bottom: 30px; width: 100%}

.pic-text > div {padding: 10px}

.popup .popup_form {padding: 15px;  max-width: 90%}
.popup .closeForm {top: 5px; right: 5px}
.popup .popup_form .row {margin-top: 12px}
.popup .popup_form .title {margin-bottom: 12px; font-size: 18px; line-height: 22px}
.popup .popup_form .frm_wrp .name {font-size: 14px; margin-bottom: 5px}
.popup .sogl {font-size: 13px; line-height: 18px}
}

/* 320 */
@media only screen and (max-width: 320px) {

.head, .footer {padding: 0 15px}
.bottom {padding: 20px 15px}

.wrp-promo {padding: 120px 15px 40px 15px}
.promo .title {font-size: 26px}
.promo .promo-form {width: 100%}

main {padding: 0 15px}

.title_fon::before {left: -15px}
.stick_section::before {left: -15px}
.stick_section .title {font-size: 19px; line-height: 26px}

section .bg {left: -15px}

.two_blocks::before {left: -15px}

.contact-block::before {left: -15px}
.contacts .item {padding: 15px}
}
