@media all and (min-width: 1200px) {
    .configurator_preview, .configurator_price {
        position: sticky;
        top: 0;
    }
}

@media all and (max-width: 1439px) {
    .slogans, .top-cart {
        margin-left: 30px;
    }

    .top-search, .top-city, .top-menu ul li {
        margin-right: 30px;
    }

    .top-contacts .btn {
        width: 160px;
    }

    .promo-info_title, .fon-slide_title h1 {
        margin: 0 0 30px 0;
        font-size: 60px;
        line-height: 70px;
    }

    .promo-info_text, .fon-slide_text {
        max-width: 800px;
        font-size: 25px;
        line-height: 35px;
    }

    h2, .h2 {
        margin: 0 0 30px 0;
        font-size: 35px;
        line-height: 45px;
    }

    h3, .h3 {
        font-size: 25px;
        line-height: 35px;
    }

    h4, .h4 {
        font-size: 16px;
    }

    .main-title h1 {
        font-size: 50px;
    }

    .main-title p {
        font-size: 18px;
    }

    .form-body, .fon-text_info {
        padding: 0 40px;
    }

    .hit-item_name, .plus-item_title, .collection-item_title, .team-item_name, .catalog-item_title, .style-specif_title {
        font-size: 16px;
    }

    .collection-item_text {
        padding-right: 160px;
    }

    .collection-item_btn .btn {
        width: 140px;
    }

    .text-img.reverse .text-img_text {
        padding: 0 40px 0 0;
    }

    .text-img_text, .collection-inner_info {
        padding: 0 0 0 40px;
    }

    .addresses-top_title {
        font-size: 35px;
        line-height: 40px;
    }

    .addresses-top_link {
        width: 200px;
        top: 10px;
        font-size: 10px;
        line-height: 20px;
    }
}

@media all and (max-width: 1365px) {
    .wp {
        padding: 0 30px;
    }

    .constructor {
        padding: 30px;
    }

    .form-body, .fon-text_info {
        padding: 0 30px;
    }

    .slogans, .top-cart {
        margin-left: 20px;
    }

    .top-search, .top-city, .top-menu ul li {
        margin-right: 20px;
    }

    .top-contacts .btn {
        width: 140px;
    }

    .btn {
        font-size: 14px;
    }

    .top-search .search-form .search-input:focus {
        width: 135px;
    }

    .top-city_name span {
        max-width: 50px;
    }

    .section, .promo, .fon-slide {
        margin-bottom: 60px;
    }

    .grey {
        padding: 60px 0;
    }

    .footer-top {
        padding: 40px 0;
    }

    .text-img.reverse .text-img_text {
        padding: 0 30px 0 0;
    }

    .text-img_text, .collection-inner_info {
        padding: 0 0 0 30px;
    }

    .number_title big {
        font-size: 48px;
    }

    .number_text {
        margin: 10px 0 0 0;
        font-size: 17px;
    }

    .text-img_text .btn, .fon-text_info .btn {
        margin-top: 0;
    }

    .addresses-map_right {
        padding: 0 30px;
    }

    .footer-top_menu {
        margin-left: 100px;
    }

    .partnership {
        padding: 30px;
    }

    .addresses-map__list {
        height: calc(100% - 140px);
    }

    .addresses-map__search {
        padding-top: 10px;
    }

    .addresses-map__search .search-check, .addresses-map__search .search-form {
        margin: 0 0 10px 0;
    }

    .addresses-map__search .search-check .check {
        font-size: 12px;
    }

    .shop {
        padding-top: 10px;
        margin-bottom: 10px;
        font-size: 13px;
        line-height: 20px;
    }

    .shop_phone .contact-tel {
        font-size: 14px;
        font-weight: 600;
        line-height: 25px;
    }

    .configurator_preview, .configurator_price {
        width: 270px;
    }

    .configurator_params {
        margin: 0 270px;
    }

    .configurator-tabs .item {
        margin-right: 20px;
    }

    .configurator_price .complete-info_price {
        font-size: 20px;
    }

    .configurator_price .complete-info_price big {
        font-size: 30px;
    }
}

@media all and (max-width: 1199px) {
    html, body {
        font-size: 16px;
    }

    .header {
        display: none;
    }

    .header-mob, .mob-close {
        display: block;
    }

    .main-title {
        display: block;
    }

    .main-title h1 {
        width: 100%;
        padding: 0;
        margin: 0 0 20px 0;
    }

    .main-title p {
        width: 70%;
        padding: 0;
    }

    .collection-item_text, .catalog-item_price {
        padding-right: 0;
    }

    .collection-item_btn, .catalog-item_btn {
        position: relative;
        top: auto;
        right: auto;
        margin: 10px 0 0 0;
    }

    h2, .h2 {
        margin: 0 0 20px 0;
        font-size: 30px;
        line-height: 40px;
    }

    .under-title {
        margin: 0 0 20px 0;
    }

    .promo-info_title, .fon-slide_title h1 {
        margin: 0 0 20px 0;
        font-size: 50px;
        line-height: 60px;
    }

    .promo-info_text, .fon-slide_text {
        max-width: 640px;
        font-size: 20px;
        line-height: 30px;
    }

    .promo .carousel .owl-dots {
        bottom: 20px;
    }

    .promo .carousel .owl-dots .owl-dot {
        max-width: 60px;
        margin: 0 5px;
    }

    .style-specif_title {
        padding: 10px;
    }

    .style-specif_text {
        padding: 0 10px;
    }

    .number_title {
        font-size: 30px;
        line-height: 50px;
    }

    .number_title big {
        font-size: 40px;
        line-height: 50px;
    }

    .services {
        min-height: 440px;
        padding-left: 300px;
        background-size: 260px auto;
    }

    .services_title {
        font-size: 20px;
        line-height: 30px;
    }

    .services_title:after {
        width: 30px;
        height: 30px
    }

    .collection, .catalog, .col3, .plus, .team-main, .team-list {
        margin-right: -10px;
        margin-left: -10px;
    }

    .collection-item, .catalog-item, .col3-item, .plus-item, .team-main .team-item, .team-list .team-item {
        padding: 0 10px;
    }

    .addresses-top_title {
        font-size: 30px;
    }

    .fon-slide {
        height: 65vh;
        min-height: 460px;
        padding-top: 90px;
    }

    .bread-crumbs {
        padding-top: 0;
        border-top: none;
    }

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

    .configurator_preview, .configurator_price {
        width: 50%;
        float: none;
    }

    .configurator_preview {
        padding-right: 0;
    }

    .configurator_preview img {
        max-width: 220px;
        margin: 0 auto;
    }

    .configurator_params {
        margin: 20px 0 0 0;
    }

    .content-simple {
        padding-top: 70px;
    }
}

@media all and (max-width: 1023px) {
    .wp {
        padding: 0 20px;
    }

    .section, .promo, .fon-slide {
        margin-bottom: 40px;
    }

    .grey {
        padding: 40px 0;
    }

    .main-title p {
        width: 90%;
    }

    .constructor {
        padding: 20px;
    }

    .check-list {
        margin-right: -10px;
    }

    .chek-label {
        width: calc(25% - 10px);
        padding: 10px;
        margin-right: 10px;
        font-size: 12px;
        line-height: 20px;
    }

    .collection, .catalog {
        margin-bottom: -40px;
    }

    .collection-item, .catalog-item {
        width: 50%;
        margin-bottom: 40px;
    }

    .footer-top_menu {
        margin-left: 60px;
    }

    .fon-slide {
        height: 50vh;
    }

    .page-form, .fon-text {
        height: auto;
        display: block;
    }

    .form-img, .fon-text_img {
        width: 100%;
        height: 300px;
        position: relative;
        top: auto;
        left: auto;
    }

    .fon-text_img {
        margin: 0 0 40px 0;
    }

    .fon-text_info {
        width: 100%;
        padding: 0 20px;
    }

    .form-body {
        width: 100%;
    }

    .white-fon .form-body {
        padding: 40px 20px 0 20px;
    }

    .black-fon .form-body {
        padding: 40px 20px;
    }

    .collection-inner {
        display: block;
    }

    .collection-inner_img {
        display: none;
    }

    .collection-inner_info {
        width: 100%;
        padding: 0;
    }

    .collection-inner_img.door-inner {
        width: 100%;
        padding: 20px 0;
    }

    .collection-inner_img img {
        max-width: 300px;
        width: 100%;
    }

    .complete-info {
        padding: 20px;
        margin: 0 0 10px 0;
    }

    .text-img {
        display: block;
    }

    .text-img_img {
        width: 100%;
        margin: 0 0 40px 0;
        overflow: hidden;
    }

    .text-img_text, .text-img.reverse .text-img_text {
        width: 100%;
        padding: 0;
    }

    .partnership {
        padding: 20px;
    }

    .partner {
        margin-bottom: -20px;
    }

    .partner_item {
        width: calc(50% - 20px);
        margin-bottom: 20px;
    }

    .number_title {
        font-size: 20px;
        line-height: 40px;
    }

    .number_title big {
        font-size: 30px;
        line-height: 40px;
    }

    .services {
        min-height: 0;
        padding-left: 0;
        padding-bottom: 380px;
        background-size: 200px auto;
        background-position: center bottom;
    }

    .contacts {
        display: block;
    }

    .contacts_info {
        width: 100%;
        padding-right: 0;
        margin-bottom: 40px;
    }

    .contacts_map {
        width: 100%;
        height: 400px;
    }

    .contacts-list {
        max-width: 450px
    }

    .addresses-top_title {
        font-size: 25px;
    }

    .addresses-map__close {
        display: block;
    }

    .addresses-map_left {
        width: 100%;
    }

    .addresses-map_right {
        width: 0;
        padding: 0;
    }

    .addresses-map_right.open {
        width: 80%;
        padding: 0 20px;
    }
}

@media all and (max-width: 767px) {
    .wp {
        padding: 0 15px;
    }

    .wp-special {
        padding: 0;
    }

    .mob-menu {
        width: 100%;
    }

    .fon-slide {
        height: auto;
        min-height: 360px;
        padding: 90px 0 60px 0;
    }

    .fon-slide:before {
        background: linear-gradient(180deg, rgba(39, 39, 39, 0.80) 0%, rgba(39, 39, 39, 0.00) 100%);
    }

    .fon-slide_title {
        margin-top: 0;
    }

    .promo-info_title, .fon-slide_title h1 {
        margin: 0 0 10px 0;
        font-size: 36px;
        line-height: 50px;
    }

    .promo-info_text, .fon-slide_text {
        font-size: 18px;
    }

    .bread-crumbs {
        margin-bottom: 40px;
    }

    .main-title {
        margin: 0 0 20px 0;
        text-align: center;
    }

    .main-title h1 {
        font-size: 25px;
        line-height: 35px;
        font-weight: 300;
    }

    .main-title p {
        width: 100%;
        font-size: 16px;
    }

    h2, .h2 {
        font-size: 25px;
        line-height: 35px;
    }

    h2 strong, .h2 strong {
        display: block;
        font-weight: 300;
        text-align: center;
    }

    h3, .h3 {
        font-size: 18px;
        line-height: 30px;
        font-weight: 300;
    }

    p {
        margin: 0 0 20px 0;
    }

    .btn {
        padding: 10px;
        font-size: 15px;
        display: block;
        height: auto;
        line-height: 25px;
    }

    .complete-back {
        padding: 0;
    }

    .complete-back .btn {
        padding: 10px;
    }

    .promo-info_btn .btn {
        display: inline-block;
        padding: 10px 20px;
    }

    .standard-carousel {
        padding: 0 50px;
    }

    .standard-carousel .owl-prev {
        left: -50px;
    }

    .standard-carousel .owl-next {
        right: -50px;
    }

    .owl-prev, .owl-next {
        width: 40px;
        height: 40px;
        margin-top: -20px;
        background-size: 15px;
    }

    .owl-dots .owl-dot {
        max-width: 40px;
    }

    .text-img_img {
        margin: 0 0 20px 0;
    }

    .collection-specif {
        margin: 20px 0 0 0;
    }

    .collection-specif .h4 {
        font-weight: 400;
        text-transform: none;
    }

    .col3, .plus {
        display: block;
        margin: 0;
    }

    .col3-item, .plus-item {
        width: 100%;
        padding: 0;
        margin: 0 0 20px 0;
    }

    .col3-item_img {
        margin: 0 0 10px 0;
    }

    .tabs .tab {
        padding-left: 5px;
        padding-right: 5px;
        padding-bottom: 5px;
        flex: 1 1 0;
        text-transform: none;
        text-align: center;
        line-height: 20px;
    }

    .form-img, .fon-text_img {
        height: 160px;
    }

    .form-body .h2 {
        text-align: center;
    }

    .form-subtitle {
        margin: 0 0 10px 0;
        text-align: center;
    }

    .form-button {
        width: 100%;
    }

    .white-fon .form-body {
        padding: 20px 10px 0 10px;
    }

    .black-fon .form-body {
        padding: 20px 10px;
    }

    .footer {
        font-size: 16px;
        line-height: 30px;
    }

    .footer-top {
        padding: 40px 0 10px 0;
    }

    .footer-top_copyright {
        max-width: 100%;
        float: none;
        margin: 0 0 10px 0;
    }

    .footer-logo {
        width: 140px;
        height: 50px;
        margin: 0 auto 10px auto;
    }

    .footer-top_copyright p {
        text-align: center;
    }

    .footer-top_copyright p span {
        display: inline;
    }
	.footer-top_copyright .rutube-link {
		margin: 20px auto;
	}
    .footer-top_menu {
        display: none;
    }

    .footer-top_contacts {
        width: 100%;
        float: none;
        text-align: center;
    }

    .footer-top_contacts .phone {
        display: inline-block;
    }

    .footer-top_contacts .email {
        margin-top: 20px;
    }

    .footer-bottom {
        display: block;
    }

    .footer-bottom_left, .footer-bottom_center, .footer-bottom_right {
        width: 100%;
        text-align: center;
    }

    .footer-bottom_right {
        margin-top: 10px;
    }

    .social {
        justify-content: center;
    }

    .social a {
        margin: 0 10px;
    }

    .complete-info_price {
        font-size: 20px;
        line-height: 30px;
    }

    .complete-info_price big {
        font-size: 30px;
    }

    .complete-info_text p {
        margin: 0 0 5px 0;
    }

    .complete-info_plus big {
        font-size: 16px;
    }

    .contacts_info, .contacts_item {
        margin-bottom: 20px;
    }

    .contacts-list {
        max-width: 100%;
    }

    .contacts-list_item {
        width: 100%;
        margin: 0 0 10px 0;
    }

    .contacts-list_item:last-child {
        margin: 0;
    }

    .contacts_map {
        height: 300px;
    }

    .team-main .team-item, .team-list .team-item {
        width: 50%;
    }

    .team-list {
        margin-bottom: -20px;
    }

    .team-item {
        margin-bottom: 20px;
    }

    .team-item_name, .team-item_post, .team-item_email {
        font-size: 13px;
        line-height: 20px;
    }

    .partnership h4 {
        text-align: center;
    }

    .partner {
        margin-right: 0;
    }

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

    .number {
        display: block;
        margin: 0 0 -20px 0;
    }

    .number_item {
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }

    .number_title {
        font-weight: 500;
    }

    .services {
        padding-bottom: 300px;
        background-size: 160px auto;
    }

    .services_title, .vacancies_title {
        font-size: 18px;
        line-height: 20px;
        padding-right: 40px;
    }

    .services_title:after, vacancies_title:after {
        width: 20px;
        height: 20px;
        background-size: 8px auto;
    }

    .img-4 .img-list_item {
        width: 50%;
    }

    .img-list {
        margin: 0 -5px;
    }

    .img-list_item {
        padding: 0 5px;
        margin: 0 0 10px 0;
    }

    .video .play {
        background-size: 40px;
    }

    .promo-info {
        padding: 130px 0 0 0;
    }

    .promo-info:before, .promo-info:after, .promo-info_btn:before {
        display: none;
    }

    .promo-info_btn {
        padding-top: 0;
    }

    .promo-item {
        align-items: flex-start;
    }

    .promo .owl-carousel, .promo .owl-carousel .owl-item {
        height: 60vh;
        min-height: 500px;
    }

    .promo .owl-carousel .owl-nav {
        display: none;
    }

    .collection, .catalog {
        margin-right: 0;
        margin-left: 0;
    }

    .collection-item, .catalog-item {
        width: 100%;
        padding: 0;
    }

    .collection-item_btn .btn, .catalog-item_btn .btn, .footer-top_contacts .btn {
        width: 100%;
        padding: 10px;
    }

    .catalog-item_title {
        width: 100%;
        position: relative;
        left: auto;
        bottom: auto;
        padding: 0;
        margin: 10px 0 0 0;
        color: #272727;
    }

    .catalog-item_info {
        margin-top: 10px;
    }

    .catalog-item_img:after {
        display: none;
    }

    .reviews {
        width: 100%;
    }

    .constructor {
        padding: 15px;
    }

    .check-list {
        margin-right: -5px;
        margin-bottom: -5px;
    }

    .chek-label {
        width: calc(50% - 5px);
        padding: 5px;
        margin-right: 5px;
        margin-bottom: 5px;
    }

    .chek-label:after {
        top: 10px;
        bottom: auto;
    }

    .constructor-item_btn .btn-next, .constructor-item_btn .btn-prev {
        width: 140px;
    }

    .hit-item_img img {
        max-height: 280px;
    }

    .addresses-map_right.open {
        width: 85%;
        padding: 0 15px;
    }

    .addresses-top {
        margin: 0 0 10px 0;
    }

    .addresses-top_title {
        font-size: 18px;
        line-height: 30px;
    }

    .addresses-top_link {
        position: relative;
        top: auto;
        right: auto;
        display: block;
        width: 100%;
        text-align: left;
        margin: 10px 0 0 0;
    }

    .city-select__list {
        width: 180px;
    }

    .addresses-map {
        height: 400px;
        max-height: 0;
        min-height: 400px;
    }

    .addresses-map__search .search-check {
        display: flex;
        flex-wrap: wrap;
    }

    .addresses-map__search .search-check .check {
        margin: 0 10px 5px 0;
        padding: 0 0 0 25px;
        font-size: 10px;
        line-height: 15px;
        background-size: 15px;
    }

    .addresses-map__search .search-check .check:last-child {
        margin: 0 0 5px 0;
    }

    .carousel.owl-mob {
        padding: 0 70px;
        box-sizing: border-box;
        overflow: hidden;
    }

    .carousel.owl-mob.owl-carousel .owl-stage-outer {
        overflow: visible;
    }

    .carousel.owl-mob.owl-carousel .owl-item {
        -moz-opacity: 0.40;
        opacity: .40;
        filter: alpha(opacity=40);
        transform: scale(0.9);
    }

    .carousel.owl-mob.owl-carousel .owl-item.active {
        -moz-opacity: 1;
        opacity: 1;
        filter: alpha(opacity=100);
        transform: scale(1);
    }

    .style-specif_title {
        padding: 0 10px 15px 10px;
        text-transform: none;
        font-weight: 400;
        line-height: 20px;
    }

    .style-specif_text {
        display: none;
    }

    .configurator {
        display: block;
        padding-top: 20px;
        margin-top: -20px
    }

    .configurator_preview {
        width: 100%;
        margin: 0 0 20px 0;
    }

    .configurator_preview img {
        max-width: 140px;
    }

    .configurator_params {
        width: 100%;
        height: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        background: rgba(255, 255, 255, 0.2);
        z-index: 100;
        display: none;
    }

    .configurator-content {
        width: 100%;
        height: calc(100% - 320px);
        overflow-y: auto;
        padding: 15px 15px 85px 15px;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .configurator_price {
        width: 100%;
        padding-left: 0;
    }

    .configurator_price .complete-info {
        padding: 0;
        background: #fff;
    }

    .configurator_price .complete-info_price {
        font-size: 16px;
    }

    .configurator_price .complete-info_price big {
        font-size: 25px;
    }

    .configurator_price .complete-info_btn {
        margin: 10px 0 0 0;
    }

    .configurator_price .complete-info_btn .btn {
        padding: 10px;
    }

    .configurator_price .complete-info_text {
        margin: 15px 0 0 0;
    }

    .configurator_price .complete-info_text p {
        font-size: 14px;
    }

    .configurator_price .complete-info_title {
        display: none;
    }

    .configurator_price .complete-more {
        position: absolute;
        top: 0;
        right: 0;
        margin: 0;
    }

    .configurator_mob-btn, .configurator_mob-wp {
        display: block;
    }

    .configurator-tabs .item {
        font-size: 10px;
        line-height: 20px;
    }

    .configurator-groups_name {
        font-size: 12px;
        line-height: 20px;
    }

    .configurator-groups_name .selected-name {
        font-size: 13px;
    }

    .configurator-groups_row {
        overflow: hidden;
        margin: 10px 0 0 0;
    }

    .configurator-groups_list {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        margin-left: -10px;
        margin-bottom: -10px
    }

    .configurator-groups_list__button {
        width: 70px;
        flex: 0 0 auto;
        padding-left: 10px;
        margin-bottom: 10px;
    }

    .configurator-groups_list__button button {
        padding: 5px;
    }

    .configurator-groups_color {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
    }

    .configurator-groups_color__button {
        width: 60px;
        flex: 0 0 auto;
    }

    .title-404 {
        font-size: 100px;
        line-height: 100px;
    }

    .content-simple .bread-crumbs {
        margin: 20px 0;
    }

    h1 {
        font-size: 25px;
        line-height: 1.3;
        margin-bottom: 20px;
    }

    .configurator-button, .configurator-close {
        display: block;
    }

    .developers {
        padding: 15px;
    }

    .developer_item {
        width: calc(33.3% - 10px);
        min-height: 80px;
        margin: 5px;
    }
}

@media all and (max-width: 500px) {
    .promo {
        min-height: 500px;
    }

    .promo .carousel {
        display: block !important;
    }
}

@media all and (max-width: 400px) {
    .promo-info_title, .fon-slide_title h1 {
        font-size: 30px;
        line-height: 40px;
    }
}

@media all and (max-width: 360px) {
    .promo-info_title, .fon-slide_title h1 {
        font-size: 28px;
    }

    .constructor-item_btn .btn-next, .constructor-item_btn .btn-prev {
        width: 120px;
    }
}