@media (min-width: 1350px) {
    .about_us, .contacts_page, .blog, .menu{
        overflow: visible;
    }
}
@media (max-width: 1130px) {
    .container, .contact_form{
        padding-left: 20px;
        padding-right: 20px;
    }
    header nav, footer nav, footer ul {
        column-gap: 32px;
      }
      .blog .row{
        gap: 40px;
      }
      .blog .flex_between .col {
        width: 30%;
      }
      .home_about {
        column-gap: 50px;
      }
      .our_menu_cont .container .flex_between{
        column-gap: 24px;
      }
      .our_menu_cont .container .flex_between .flex_column{
        row-gap: 24px;
      }
      .our_menu_cont .container .flex_between img{
        width: 33%;
      }
      .our_menu_cont .container .flex_between .flex_column img{
        height: 233px;
      }
      .choose_cont .flex_between .col {
        width: 31%;
        height: 310px;
      }
      .our_menu_cont .container .flex_between .flex_column{
        width: 33%;
      }
      .variants .container .flex_between {
        gap: 24px;
      }
      .variants .container .flex_between .col h2{
       width: 100%;
      }
      .custom .flex_between .col p {
        margin-left: 25px;
      }
      .custom .flex_between .col h2{
        margin-bottom: 40px;
        width: 96%;
      }
      .custom .flex_between{
        column-gap: 40px;
      }
      .procces .container .flex_between {
        column-gap: 0;
      }
      .procces .container .flex_between::after{
        display: none;
    }
}
@media (max-width: 950px) {
    header nav, footer nav, footer ul {
        column-gap: 20px;
      }
      .contact_form .container{
        padding: 40px;
        background-position: -10px;
      }
      .about_us .container img:first-of-type{
        height: 550px;
        margin-bottom: 65px;
      }
      .about_us .container .flex_between {
        column-gap: 65px;
      }
      .about_us .container .flex_between img {
        height: 440px;
        margin-bottom: 0;
      }
      .home_about{
        flex-direction: column;
        row-gap: 40px;
      }
      .home_about .col2{
        width: 100%;
      }
      .home_about .col2 img{
        width: 49%;
        height: auto;
      }
      .image_text_cont .flex_between {
        column-gap: 60px;
      }
      .choose_cont .flex_between{
        flex-wrap: wrap;
        gap: 24px;
        justify-content: center;
      }
      .choose_cont .flex_between .col{
        width: 45%;
        height: auto;
      }
      .variants .container .flex_between .col {
        width: 70%;
      }
      .variants .container .flex_between{
        justify-content: center;
      }
      .custom .flex_between img {
        width: 40%;
        height: 460px;
      }
      .custom .flex_between .col p{
        padding: 25px 0;
      }
      .procces .container .flex_between .col{
        width: 49%;
      }
}
@media (max-width: 850px){
    header nav.flex_center, .faq_page p::after, 
    .faq_page::before, .faq_container::after, .img_circle_faq, .blog::before, .blog::after, .circle_blog, .single_page::before, .single_page::after, .single::before, .about_us::before, .about_us::after, .about_img_circle:nth-of-type(2), .about_img_circle:first-of-type, .we::after, .our_menu_cont::after, .home_about_cont::after, .menu::after, .menu::before, .circle_menu_page, .variants::before, 
    .variants::after, .custom::before, .custom::after, 
    .procces .container .flex_between::after, .gallery::after{
        display: none;
    }
    .blog .row{
        flex-wrap: wrap;
        justify-content: center;
      }
      .blog .flex_between .col {
        width: 47%;
      }
    .policy{
        padding: 65px 0;
    }
    .faq_page h2, .blog h2{
        margin-top: 65px;
    }
    h1{
        font-size: 40px;
    }
    .circle_policy, .policy::before{
        width: 115px;
  height: 115px;
    }
    details{
        summary{
            padding-left: 25px;
            padding-right: 25px;
        }
        div{
            padding-left: 25px;
            padding-right: 25px; 
        }
    }
    .contact_form .container{
        flex-direction: column;
        row-gap: 40px;
    }
    .contact_form .container .col, .contact_form .container form{
        width: 100%;
    }
    .faq_page p {
        width: 67%;
        margin-bottom: 65px;
    }
    .single_page .container > .flex_center{
        flex-direction: column;
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        row-gap: 24px;
    }
    .single_page h2 {
        width: 100%;
    }
    .single{
        max-width: 600px;
        width: auto;
    }
    .single img {
        width: 100%;
        height: 300px;
    }
    .about_us .container .flex_between {
        flex-direction: column;
        row-gap: 24px;
      }
      .about_us .container img:first-of-type{
        margin-bottom: 40px;
      }
      .about_us .container .flex_between img{
        width: 100%;
        height: auto;
        margin: 0;
      }
      .about_us .container .flex_between:last-of-type{
        flex-direction: column-reverse;
      }
      .image_text_cont .flex_between {
        column-gap: 30px;
      }
      .menu .container .menu_item{
        flex-direction: column;
        row-gap: 24px;
      }
      .menu .container .menu_item > h4{
        width: 100%;
      }
      .custom .flex_between{
        flex-direction: column;
        row-gap: 24px;
      }
      .custom .flex_between .col{
        width: 100%;
      }
      .custom .flex_between img{
        width: 100%;
        height: auto;
      }
      /* Поп-ап формы для планшетов */
      .fancybox-content {
        padding: 0 !important;
        width: auto !important;
        max-width: 90% !important;
      }
      .fancybox-slide {
        padding: 20px !important;
      }
      #popup_form .container_popup, #popup_form2 .container_popup, #popup_form3 .container_popup {
        width: 100% !important;
        max-width: 500px !important;
        padding: 40px !important;
        row-gap: 30px !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
      }
      #popup_form h2, #popup_form2 h2, #popup_form3 h2 {
        width: 100% !important;
        font-size: 24px !important;
      }
      #popup_form .container_popup form, #popup_form2 .container_popup form, #popup_form3 .container_popup form {
        width: 100% !important;
        box-sizing: border-box !important;
      }
      .fancybox-button svg {
        width: 40px !important;
        height: 40px !important;
        margin-left: -30px !important;
      }
}
@media (max-width: 650px){
    .container{
        padding-left: 16px;
        padding-right: 16px;
    }
    h1{
        font-size: 32px;
    }
    .contacts_page h1{
        margin-bottom: 40px;
    }
    .policy{
        padding: 40px 0;
    }
    .policy p, .policy li{
        font-size: 14px;
        line-height: 15px;
        margin-bottom: 24px;
    }
    .policy li{
        margin-bottom: 5px;
    }
    .policy h4{
        margin-bottom: 12px;
    }
    .policy::before, .policy::after,.circle_policy, .contacts_page::before, .contacts_page::after, .contacts_page .iframe_container::before{
        display: none;
    }
    .contacts_page{
        padding: 40px 0 80px 0;
    }
    .contacts_page .iframe_container{
        display: flex;
        flex-direction: column-reverse;
        row-gap: 40px;
    }
    .contacts_page .col{
        position: relative;
        top: auto;
        right: auto;
        left: auto;
        bottom: auto;
        padding: 0;
    }
    .contacts_page iframe{
        width: calc(100% + 32px);
  margin-left: -16px;
  height: 400px;
    }
    .contacts_page .col h4{
        margin-bottom: 16px;
    }
    .contacts_page .col a:last-of-type{
        margin-bottom: 24px;
    }
    footer .container{
        row-gap: 40px;
    }
    footer{
        position: relative;
    }
    footer .container .flex_between,  footer .container .flex_between .flex_center{
        flex-direction: column;
        align-items: flex-start;
    }
    footer .container .flex_between .social{
        position: absolute;
        top: 40px;
        right: 16px;
        row-gap: 40px;
    }
    .logo{
        width: auto;
        height: 40px;
        margin-bottom: 40px;
    }
    .logo img{
        height: 100%;
        width: 100%;
    }
    footer .container .flex_between .flex_center{
        row-gap: 20px;
    }
    footer ul a{
        font-size: 12px;
    }
    footer{
        padding: 40px 0;
    }
    .faq_page p{
        width: 100%;
        font-size: 20px;
        margin-top: 24px;
        margin-bottom: 60px;
    }
    details[open] summary{
        padding-bottom: 16px;
    }
    details div{
        margin-block-end: 24px;
    }
    .faq_page h2, .blog .row{
        margin-top: 40px;
    }
    .faq{
        margin-bottom: 80px;
    }
    .contact_form .container{
        padding: 24px;
    }
    .contact_form .container .col h2{
        text-align: center;
        font-size: 27px;
    }
    .contact_form .container .col p{
        text-align: center;
        font-size: 16px;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }
    .contact_form .container form{
        row-gap: 16px;
    }
    .contact_form .container{
        background: url(img/form_mob_bg.png) no-repeat;
    }
    .blog .flex_between .col, .blog p,.blog .flex_between .col .content h4{
        width: 100%;
    }
    .blog p{
        font-size: 19px;
    }
    .blog .flex_between .col .content h4{
        font-size: 15px;
    }
    .blog .flex_between .col .content{
        height: 92px;
    }
    .blog .row{
        gap: 24px;
        margin-bottom: 80px;
    }
    .form_blog{
        display: block;
        margin-bottom: 80px;
    }
    .blog h2{
        margin: 40px 0 24px 0;
    }
    .single{
        padding-bottom: 80px;
    }
    .single_page .container > .flex_center{
        width: 100%;
        margin-top: 40px;
    }
    .single img{
        height: 200px;
        border-radius: 8px;
        margin-bottom: 24px;
    }
    .single p{
        font-size: 14px;
    }
    .about_us .container img:first-of-type{
        height: 220px;
        border-radius: 8px;
    }
    .about_us .container .flex_between img{
        height: 340px;
    }
    .about_us .container .flex_between p{
        font-size: 16px;
    }
    .about_us .container .flex_between .flex_column{
        row-gap: 15px;
    }
    .about_us p{
        width: 100%;
        margin: 24px 0;
        font-size: 20px;
    }
    .about_us{
        padding: 40px 0 80px 0 ;
    }
    .about_form, .info_row_home, .home_banner::after{
        display: none;
    }
    .home_banner{
        height: 732px;
    }
    .home_banner .container{
        justify-content: start;
        flex-direction: column;
    }
    /* Кнопка ЗАЛИШИТИ ЗАЯВКУ над слайдером в мобильной версии */
    .home_banner .container .main_request_button_banner {
        order: -1;
        margin-bottom: 30px;
        width: 100%;
    }
    .home_banner .container .home_slide {
        order: 0;
    }
    .home_banner .container .flex_between {
        order: 1;
    }
    .home_banner_text{
        margin-top: 50px;
    }
    .home_banner_text h1{
        width: 80%;
    }
    .home_banner_text .flex_center{
        flex-direction: column;
        row-gap: 16px;
    }
    .home_banner_text .flex_center a, .home_banner_text .flex_center a:first-of-type, .home_banner_text .flex_center a:last-of-type{
        width: 245px;
    }
    .home_banner_text h5{
        width: 100%;
        font-size: 20px;
    }
    .home_about{
        position: relative;
    }
    .home_about .col a{
        position: absolute;
        width: 100%;
        bottom: -78px;
    }
    .home_about .col2{
        column-gap: 24px;
    }
    .our_menu_cont{
        margin-top: 60px;
    }
    .our_menu_cont .container p{
        width: 100%;
        margin-bottom: 24px;
    }
    .home_about .col h2, .our_menu_cont .container h2{
        margin-bottom: 16px;
    }
    .our_menu_cont .container .flex_between{
        flex-wrap: wrap;
        row-gap: 16px;
    }
    .our_menu_cont .container .flex_between img, .our_menu_cont .container .flex_between .flex_column{
        width: 100%;
        row-gap: 16px;
    }
    .our_menu_cont .container .flex_between img:last-of-type{
        display: none;
    }
    .our_menu_cont .container .flex_between .flex_column img{
        display: block;
    }
    a.btn_red.btn_mob{
        width: 100%;
        display: flex;
        margin-top: 24px;
    }
    .our_menu_cont, .choose_cont, .we, .contact_form, .obidi_banner, .variants, .custom, .procces, .reviews, .gallery, .faq, .customization_image_cont, .benefits_list{
        margin-bottom: 80px;
    }
    .choose_cont h2{
        text-align: left;
        margin-bottom: 16px;
    }
    .choose_cont .flex_between .col{
        width: 100%;
        padding: 24px;
    }
    .choose_cont .flex_between{
        gap: 16px;
    }
    .image_text_cont .flex_between{
        flex-direction: column-reverse;
        row-gap: 24px;
        position: relative;
        padding-bottom: 75px;
    }
    .image_text_cont .flex_between .flex_column, .image_text_cont .flex_between img{
        width: 100%;
    }
    .image_text_cont .flex_between .flex_column a{
        position: absolute;
        bottom: 0;
        width: calc(100% - 32px);
    }
    .image_text_cont .flex_between .flex_column p{
        margin-bottom: 0;
    }
    .menu .container .menu_item .menu_item_row{
        column-gap: 20px;
    }
    .menu .container .menu_item .menu_item_row img{
        width: 100px;
        height: 80px;
    }
    .menu .container .menu_item .menu_item_row h4{
        font-size: 12px;
        line-height: 1;
    }
    .menu .container .menu_item{
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .menu .container .menu_item > h4{
        margin-right: 0;
    }
    .menu .container .menu_item .menu_item_row .flex_column:nth-of-type(1)::after, .menu .container .menu_item .menu_item_row .flex_column:nth-of-type(2)::after{
        width: 12px;
        height: 28px;
        object-fit: cover;
        background-size: 100%;
        right: -16px;
    }
    .menu .container .flex_center{
        flex-direction: column;
        width: calc(100% - 32px);
        row-gap: 16px;
        position: absolute;
        top: 160px;    }
    .menu .container .flex_center a{
        width: 100%;
    }
    .menu .tab-content > p{
        width: 100%;
        margin-top: 16px;
        margin-bottom: 230px;
    }
    .menu .container{
        position: relative;
    }
    .menu_all .flex_between {
        column-gap: 20px;
      }
      .menu{
        padding-bottom: 80px;
        padding-top: 40px;
      }
      .menu .container .flex_start{
        margin-bottom: 16px;
      }
      .variants .container .flex_between .col {
        width: 100%;
        height: 240px;
        border-radius: 12px;
      }
      .variants .container .flex_between .col h2{
        font-size: 20px;
        width: 58%;
      
      }
      .variants .container .flex_between .col:nth-of-type(4) h2{
        width: 100%;
        font-size: 20px;
        margin-bottom: 24px;
      }
      
.variants .container .flex_between .col:nth-of-type(4) h2::after{
    display: none;
}
.procces .container .flex_between{
    flex-direction: column;
    row-gap: 16px;
}
.procces .container .flex_between .col{
    width: 100%;
}
.reviews_slider .rev_slide{
    max-width: 500px;
    width: 343px;
}
.slick-slider .slick-track{
    display: flex;
    column-gap: 9px;
}
.swiper-button-prev, .swiper-button-next {
    position: absolute;
    top: -35px;
}
.reviews h2 {
    margin-bottom: 90px;
}
.swiper-button-prev {
    left: 17px;
  }
  .swiper-button-next {
    right: 17px;
  }
  .procces .container h2{
    margin-bottom: 24px;
    text-align: left;
  }
  .custom .flex_between .col p{
    margin-left: 0;
    padding: 16px 0;
  }
  .custom .flex_between .col h2{
    margin-bottom: 24px;
  }
  .variants h2{
    margin-bottom: 16px;
  }
  .gallery .container .flex_between .col{
    width: 100%;
  }
  .gallery .container .row1{
    flex-wrap: wrap;
  }
  .gallery .container .row1 .flex_center{
    width: 45%;
  }
  .gallery .container .row1 .flex_center img{
    width: 100%;
    height: 240px;
  }
  .gallery .container .row1 img:first-of-type{
    display: none;
  }
  .gallery .container .row2{
    margin: 0;
    position: absolute;
    right: 16px;
    top: 156px;
    flex-direction: column;
    row-gap: 16px;
    width: 45%;
  }
  .gallery .container .row2 img,   .gallery .container .row3 img{
    width: 100%;
    height: auto;
  }
  .gallery .container .row2 img{
    height: 112px;
  }
  .gallery .container{
    position: relative;
  }
  .gallery .container .row3{
    flex-direction: column;
    row-gap: 16px;
    margin-top: 16px;
    width: 100%;
  }
  .gallery .container .flex_between .col p{
    max-width: 343px;
    margin-bottom: 24px;
  }
  .faq h2{
    text-align: left;
    margin-bottom: 24px;
  }
  /* Поп-ап формы для мобильных устройств */
  .fancybox-slide--html {
    padding: 0 !important;
  }
  .fancybox-content {
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  .fancybox-slide {
    padding: 0 !important;
  }
  #popup_form .container_popup, #popup_form2 .container_popup, #popup_form3 .container_popup {
    width: calc(100vw - 32px) !important;
    max-width: calc(100vw - 32px) !important;
    min-width: auto !important;
    padding: 24px !important;
    margin: 16px auto !important;
    row-gap: 24px !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
  }
  #popup_form h2, #popup_form2 h2, #popup_form3 h2 {
    width: 100% !important;
    font-size: 20px !important;
    line-height: 1.3 !important;
    margin: 0 !important;
  }
  #popup_form .container_popup form, #popup_form2 .container_popup form, #popup_form3 .container_popup form {
    width: 100% !important;
    row-gap: 16px !important;
    box-sizing: border-box !important;
  }
  #popup_form .container_popup form input, 
  #popup_form .container_popup form textarea, 
  #popup_form2 .container_popup form input, 
  #popup_form2 .container_popup form textarea, 
  #popup_form3 .container_popup form input, 
  #popup_form3 .container_popup form textarea {
    font-size: 14px !important;
    padding: 10px 16px !important;
    height: auto !important;
    min-height: 44px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  #popup_form .container_popup .wpcf7,
  #popup_form2 .container_popup .wpcf7,
  #popup_form3 .container_popup .wpcf7 {
    width: 100% !important;
  }
  .fancybox-button {
    width: 40px !important;
    height: 40px !important;
    margin-right: 8px !important;
    margin-top: 8px !important;
    right: 0 !important;
    z-index: 9999 !important;
  }
  .fancybox-button svg {
    width: 24px !important;
    height: 24px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .fancybox-button--close {
    right: 8px !important;
    top: 8px !important;
  }
}