@media only screen and (max-width: 1024px) {
    .whyus div {width: calc(50% - 30px);}
    .block-flex,
    .block-flex.rw {flex-direction: column;}
    .block-flex > * {width: 100%;}
    .block-flex > img {height: 500px;}
    .working div {
        width: calc(50% - 10px);
        padding: 0 20px;
    }
    .preim div {
        width: 100%;
        gap: 10px;
    }
    .preim b {width: 70%;}
    .block-uslugy {
        flex-wrap: wrap;
        gap: 30px;
    }
    .block-uslugy a {width: calc(33.33% - 20px);}
    .child-pages-list span h3 {
        line-height: 1.1;
        font-size: 20px;
    }
    .shapka-right .block-uslugy a {width: calc(50% - 15px);}
}

@media only screen and (max-width: 768px) {
    .tels {padding-right: 90px;}
    #mmenu {
        display: block !important;
        cursor: pointer;
        width: 70px;
        height: 70px;
        background: #B9B9B9;
        border-radius: 50%;
        padding-left: 18px;
        padding-top: 20px;
        z-index: 600;
        position: fixed;
        right: 10px;
    }
    #mmenu span {
        display: block;
        background: #fff;
        margin-top: 7px;
        height: 5px;
        width: 34px;
        transition: All 0.2s ease-in-out;
        -webkit-transition: All 0.2s ease-in-out;
        -moz-transition: All 0.2s ease-in-out;
        -o-transition: All 0.2s ease-in-out;
    }
    #mmenu span:nth-child(1) {margin-top: 0;}
    #mmenu span:nth-child(2) {width: 24px;}
    #mmenu span:nth-child(3) {width: 30px;}
    #mmenu.open {/*position: fixed;*/}
    #mmenu.open span:nth-child(1) {
        position: relative;
        margin-top: 7px;
        top: 5px;
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    #mmenu.open span:nth-child(2) {
        margin-top: 0;
        -moz-transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        width: 34px;
    }
    #mmenu.open span:last-child {
        opacity: 0;
        background: none;
        display: none;
    }
    .main-menu.open {
        /* display: flex; */
        display: block;
        position: fixed;
        top: 0;
        width: 100%;
        height: 100vh;
        overflow-y: scroll;
        padding: 20px;
        z-index: 599;
    }
    .main-menu.open ul.top_menu {
        flex-direction: column;
        width: 100%;
        align-items: flex-start;
        height: auto;
    }
    .main-menu.open .tels {
        display: flex;
        text-align: left;
        align-items: flex-start;
        padding-left: 10px;
        margin-top: 30px;
    }
    .main-menu.open .btn {
        display: block !important;
        background: #fff;
        margin-top: 30px;
    }
    a.custom-logo-link img {
        width: auto;
        height: 80px;
    }
    .site-slogan {display: none;}
    .child-pages-list {
        flex-direction: column;
        align-items: center;
    }
    .main-menu {display: none;}
    .content-fon .content-page {padding-top: 30px;}
    .content-fon.o-nas .content-page {padding-right: 10px;}
    .preim b {width: 60%;}
    .fon-footer .width1366 {flex-direction: column;}
    .fon-footer .contact,
    .fon-footer .contact-form {width: 100%;}
    /*.fon-footer .contact {text-align: center;}*/
    .fon-bottom {
        padding-bottom: 30px;
        padding-top: 30px;
    }
    .fon-bottom ul.top_menu {
        flex-direction: column;
        height: auto;
        margin: 0;
        align-items: flex-start;
        width: calc(40% - 25px);
    }
    .fon-bottom .sitemap {
        align-items: flex-end;
        width: calc(60% - 25px);
        text-align: right;
        padding-top: 10px;
    }
    .fon-bottom .logo-w {display: none;}
    .preim p {font-size: 84px;}
    .preim span {font-size: 30px;}
    .posts div {width: 100%;}
    .child-pages-list a {width: 100%;}
    .content-fon .content-page.stat {
        column-gap: 0;
        flex-direction: column;
    }
    .content-fon .content-page.stat .left-content {width: 100%;}
    .content-fon .content-page.stat .right-content {width: 100%;}
    .shapka-left h2 {font-size: 30px;}
    .shapka-left p {font-size: 24px;}
    span.after {
        /*font-size: 24px;*/
        padding-right: 100px;
    }
}

@media only screen and (max-width: 430px) {
    .block-flex .all-clients {
        padding-left: 10px;
        padding-right: 10px;
    }
    .preim b {
        width: 50%;
        font-size: 14px;
    }
    .posts div {gap: 0px;}
    .fon-bottom .width1366.conteiner {gap: 50px;}
    .fon-bottom .copy a.logo-ip {justify-content: flex-start;}
    .block-uslugy a {width: calc(50% - 15px);}
    .child-pages-list span h3 {font-size: 16px;}
    .kartochka {flex-direction: column;}
    .kartochka > * {width: 100%;}
    #toTop {zoom: 50%;}
    .gallery a {width: calc(50% - 15px);}
    .shapka > .width1366 {
        flex-direction: column;
        gap: 50px;
        padding-top: 40px;
        padding-bottom: 50px;
    }
    .shapka > .width1366 > div {width: 100%;}
    .shapka-right .block-uslugy {row-gap: 20px;}
    .fon-help .width1366 {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    h2.block_title {
        font-size: 26px;
        margin-bottom: 50px;
    }
    .whyus span {font-size: 20px;}
    .whyus div {gap: 20px;}
    .working span {font-size: 20px;}
    .carousel_arrowss2 {top: 50px;}
    span.after {
        font-size: 24px;
        /*padding-right: 100px;*/
    }
    /*.skans {flex-wrap: wrap;}
    .skans a {width: 100%;}*/
    .block-faq .faq details summary {
        font-size: 20px;
        /*padding-right: 0;*/
    }
    .block-flex .all-clients div {
        gap: 20px;
        font-size: 18px;
    }
    .shapka-left h2 {margin-bottom: 20px;}
    .shapka-left p {margin-bottom: 30px;}
    .block-flex > img {
        height: auto;
        object-fit: contain;
    }
    .block-uslugy h3 {font-size: 18px;}
    .page-template-page-usluga .content-page img.attachment-post-thumbnail {
        margin-left: 30px;
        margin-bottom: 30px;
        max-width: 200px;
        height: auto;
    }
}

@media only screen and (max-width: 380px) {
    .tels {display: none;}
    h2.block_title {font-size: 24px;}
    .block-flex .all-clients h3 {font-size: 26px;}
    .kartochka .har strong {font-size: 24px;}
    .kartochka .har table th {font-size: 14px;}
    .preim div {
        width: 100%;
        flex-wrap: wrap;
    }
    .preim p {
        width: calc(50% - 5px);
        text-align: right;
    }
    .preim span {
        width: calc(50% - 5px);
        text-align: left;
    }
    .preim b {
        width: 100%;
        text-align: center;
    }
    .btn {
        font-size: 16px;
        padding: 20px;
    }
    .fon-footer .contact-form {padding: 20px;}
    .page-template-page-usluga .content-page img.attachment-post-thumbnail {
        margin-left: 0;
        margin-bottom: 20px;
        float: none;
    }
}






















