@media only screen and (max-width: 1024px) {
    .shapka h2 {
        max-width: 520px;
        font-size: 36px;
        line-height: 1.3;
    }
    .content-fon .content h2 {font-size: 42px;}
    .content-fon .content .text {font-size: 28px;}
    .uslugi h2 {font-size: 42px;}
    .uslugi .podrazdely div > a img {
        width: 150px;
        height: 150px;
    }
    .sotrud > h2 {
        font-size: 42px;
        gap: 10px;
    }
    .sotrud > h2 img {
        width: auto;
        height: 60px;
    }
    .sotrud > div {padding: 0 20px;}
    .shema h2 {font-size: 42px;}
    .shema > div {
        grid-template-columns: repeat(2, calc(50% - 15px));
        grid-template-rows: repeat(2, calc(50% - 15px));
    }
    .shema > div span:nth-child(1) {grid-row: auto;}
    .shema > div span:nth-child(3) {
        grid-row: auto;
        justify-content: flex-start;
        align-items: flex-start;
        text-align: left;
    }
    .shema > div span {font-size: 28px;}
    .shema > div span b {
        font-size: 62px;
        margin-bottom: 10px;
    }
    .voprosy > h2 {font-size: 42px;}
    .voprosy > span {padding: 50px;}
    .voprosy > span .vopros {
        gap: 50px;
        font-size: 28px;
        padding-right: 0;
    }
    .voprosy > span .otvet {
        padding-left: 90px;
        font-size: 28px;
        padding-right: 0;
    }
    .parent-pageid-3 .page-content img {
        border-radius: 50px;
        -webkit-box-shadow: -30px -30px 0px 0px #31706f;
        -moz-box-shadow: -30px -30px 0px 0px #31706f;
        box-shadow: -30px -30px 0px 0px #31706f;
        margin-top: 30px;
        margin-left: 30px;
        width: 320px;
        height: 320px;
    }
    .parent-pageid-3 .page-content h1 {font-size: 48px;}
    .page-contacts {gap: 60px;}
}

@media only screen and (max-width: 768px) {
    a.logo img:nth-child(2) {display: none;}
    .shapka {gap: 50px;}
    .shapka h2 {order: 1;}
    .home .preim {
        position: relative;
        top: 0;
        right: 0;
        gap: 50px;
        order: 2;
    }
    .shapka > span {
        font-size: 90px;
        padding-bottom: 30px;
        order: 3;
    }
    .content-fon .content h2 {text-align: center;}
    .content-fon .content img {margin: auto;}
    .content-fon .content .text {
        font-size: 26px;
        width: 90%;
        margin: auto;
    }
    .uslugi > img {
        width: auto;
        height: 530px;
    }
    .uslugi .podrazdely {
        width: calc(100% - 81px - 81px);
        padding: 0;
    }
    .uslugi .podrazdely div > a {gap: 20px;}
    .uslugi .podrazdely div > a img {
        border-radius: 20px;
        -webkit-box-shadow: -10px -10px 0px 0px #31706f;
        -moz-box-shadow: -10px -10px 0px 0px #31706f;
        box-shadow: -10px -10px 0px 0px #31706f;
        margin-top: 10px;
        margin-left: 10px;
        width: 100px;
        height: 100px;
    }
    .uslugi .podrazdely div:nth-child(even) > a img {
        -webkit-box-shadow: -10px -10px 0px 0px #e1f2f2;
        -moz-box-shadow: -10px -10px 0px 0px #e1f2f2;
        box-shadow: -10px -10px 0px 0px #e1f2f2;
    }
    .uslugi .podrazdely div > a p {font-size: 26px;}
    .parent-pageid-3 .podrazd {margin: 30px auto;}
    .parent-pageid-3 .page-content {
        gap: 40px;
        border-radius: 50px 50px 200px 50px;
    }
    .parent-pageid-3 .page-content img {
        border-radius: 30px;
        margin-top: 10px;
        margin-left: 10px;
        width: 240px;
        height: 240px;
    }
    .page-id-26.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -30px -30px 0px 0px #31706f;
        -moz-box-shadow: -30px -30px 0px 0px #31706f;
        box-shadow: -30px -30px 0px 0px #31706f;
    }
    .page-id-27.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -30px -30px 0px 0px #bee2e2;
        -moz-box-shadow: -30px -30px 0px 0px #bee2e2;
        box-shadow: -30px -30px 0px 0px #bee2e2;
    }
    .page-id-28.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -30px -30px 0px 0px #53b4b2;
        -moz-box-shadow: -30px -30px 0px 0px #53b4b2;
        box-shadow: -30px -30px 0px 0px #53b4b2;
    }
    .parent-pageid-3 .page-content h1 {
        font-size: 36px;
        padding-bottom: 0;
    }
    .parent-pageid-3 .podrazd div {
        padding-left: 0;
        padding-bottom: 0;
        margin-left: 0;
        margin-top: 0;
        margin-bottom: 0;
        border-left: 0;
        border-bottom: 0;
    }
    .parent-pageid-3 .podrazd div a:nth-child(1) {
        position: relative;
        top: 0;
        margin-top: 30px;
        margin-left: auto;
        margin-bottom: 30px;
    }
    .parent-pageid-3 .podrazd div > img {display: none;}
    .parent-pageid-3 .podrazd h2 {border-bottom: 3px solid;}
    .parent-pageid-3 .podrazd h2 img {
        display: block !important;
        position: absolute;
        right: 0;
        bottom: -22px;
        zoom: 60%;
    }
}

@media only screen and (max-width: 430px) {
    ul.top-menu {display: none;}
    ul.top-menu.open {
        display: flex;
        flex-direction: column;
        padding: 20px;
        height: 100vh;
        justify-content: flex-start;
        gap: 20px;
        margin-top: 80px;
        align-items: flex-start;
        position: absolute;
        top: 0;
        left: 0;
        background: #f3f7f7;
        z-index: 999;
    }
    ul.top-menu li {
        height: auto;
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    ul.top-menu li ul.sub-menu {
        display: flex;
        list-style: none;
        width: 100%;
        background: none;
        position: relative;
        left: 0;
        top: 0;
        z-index: 2000;
        box-shadow: none;
        flex-direction: column;
        gap: 15px;
        padding-left: 20px;
    }
    ul.top-menu li ul.sub-menu li:not(ul.top-menu li ul.sub-menu li:last-child) {border-bottom: none;}
    ul.top-menu li ul.sub-menu li a {padding: 0;}
    .header .right-cont {display: none;}
    .width {max-width: 380px;}
    .header {
        position: fixed;
        height: 80px;
        top: 0;
        background: #f3f7f7;
        z-index: 99;
        max-width: 100%;
        padding: 0 30px;
    }
    .header a.tel {
        display: flex !important;
        width: 40px;
        height: 40px;
    }
    .shapka-fon,
    .content-fon,
    .uslugi,
    .parent-pageid-3 .page-content,
    .page-contacts {margin-top: 80px;}
    a.logo {margin: auto;}
    #mmenu {
        display: block !important;
        cursor: pointer;
    }
    #mmenu span {
        display: block;
        background-color: #31706f;
        margin-top: 8px;
        height: 5px;
        width: 40px;
        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.open span:nth-child(1) {
        margin-top: 8px;
        position: relative;
        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);
    }
    #mmenu.open span:last-child {opacity: 0;}
    .shapka {
        gap: 25px;
        height: 430px;
    }
    .shapka > span {
        font-size: 50px;
        margin: auto;
    }
    .shapka h2 {
        font-size: 23px;
        padding-top: 20px;
        padding-right: 50px;
        height: 120px;
    }
    .home .preim {gap: 25px;}
    .home .preim div span {font-size: 14px;}
    .home .preim div img {
        width: 24px;
        height: auto;
    }
    .home .preim div {
        gap: 10px;
        min-height: 40px;
        padding: 0 15px;
    }
    .home .preim div:nth-child(2) {margin-right: auto;}
    .content-fon .content {gap: 25px;}
    .content-fon .content h2 {
        font-size: 27px;
        text-align: left;
    }
    .content-fon .content img {display: none;}
    .content-fon .content .text {
        font-size: 14px;
        width: 100%;
        padding: 5px 20px;
    }
    .uslugi h2 {font-size: 32px;}
    .uslugi .podrazdely {
        gap: 20px;
        width: calc(100% - 60px - 60px);
    }
    .uslugi .podrazdely div {gap: 15px;}
    .uslugi .podrazdely div > span {
        width: 20px;
        height: 20px;
    }
    .uslugi .podrazdely div > a {
        border-radius: 10px 70px 70px 10px;
        padding: 10px;
        width: calc(100% - 20px - 15px);
    }
    .uslugi .podrazdely div > a img {
        border-radius: 10px;
        -webkit-box-shadow: -10px -10px 0px 0px #31706f;
        -moz-box-shadow: -10px -10px 0px 0px #31706f;
        box-shadow: -10px -10px 0px 0px #31706f;
        margin-top: 10px;
        margin-left: 10px;
        width: 62px;
        height: 62px;
    }
    .uslugi .podrazdely div > a p {font-size: 16px;}
    .uslugi > img {
        width: 60px;
        height: auto;
    }
    .sotrud > h2 {
        justify-content: center;
        margin-bottom: 70px;
    }
    .sotrud > div {
        row-gap: 80px;
        text-align: center;
    }
    .sotrud > div p:nth-child(1) {
        font-size: 27px;
        width: 100%;
        margin-top: 0;
    }
    .sotrud > div p:nth-child(1) span {
        width: 100px;
        height: 100px;
        margin-left: -50px;
        margin-top: -50px;
    }
    .sotrud > div p:nth-child(2) {
        font-size: 27px;
        width: 100%;
    }
    .sotrud > div p:nth-child(2) span {
        width: 62px;
        height: 62px;
        margin-left: 50px;
        margin-top: -31px;
    }
    .sotrud > div p:nth-child(3) {
        font-size: 34px;
        width: 100%;
    }
    .sotrud > div p:nth-child(3) span {
        width: 106px;
        height: 106px;
        left: 50%;
        margin-left: -53px;
        margin-top: -53px;
    }
    .sotrud > div p:nth-child(4) {
        font-size: 27px;
        width: 100%;
    }
    .sotrud > div p:nth-child(4) span {
        width: 56px;
        height: 56px;
        margin-left: 70px;
        margin-top: -28px;
    }
    .sotrud > div p:nth-child(5) {
        font-size: 34px;
        width: 100%;
    }
    .sotrud > div p:nth-child(5) span {
        width: 100px;
        height: 100px;
        margin-left: -50px;
        margin-top: -50px;
    }
    .shema h2 {font-size: 32px;}
    .shema > div {
        grid-template-columns: repeat(1, calc(100% - 0px));
        grid-template-rows: repeat(4, calc(25% - 23px));
    }
    .shema > div span {font-size: 26px;}
    .shema > div span b {font-size: 54px;}
    .voprosy > h2 {font-size: 32px;}
    .voprosy > span {padding: 20px;}
    .voprosy > span .vopros {
        gap: 15px;
        flex-direction: column;
        font-size: 22px;
    }
    .voprosy > span .otvet {
        padding-left: 0;
        padding-top: 20px;
        font-size: 22px;
    }
    ul.bottom-menu {
        flex-direction: column;
        gap: 14px;
        padding: 0;
    }
    ul.bottom-menu > li {width: 100%;}
    ul.bottom-menu > li:nth-child(1) {order: 1;}
    ul.bottom-menu > li:nth-child(2) {order: 2; text-align: center;}
    ul.bottom-menu > li:nth-child(3) {text-align: center;}
    .footer {
        padding: 20px;
        border-radius: 10px 10px 0 0;
    }
    .footer .block-logo {gap: 20px;}
    .footer .right-cont {
        margin-top: 0;
        padding-right: 0;
        align-items: center;
        text-align: center;
    }
    .footer .block-logo img {width: 76px;}
    ul.bottom-menu li a {font-size: 18px;}
    .parent-pageid-3 .page-content {
        gap: 20px;
        border-radius: 10px 10px 80px 10px;
        padding: 20px;
    }
    .parent-pageid-3 .page-content h1 {font-size: 18px;}
    .parent-pageid-3 .page-content img {
        border-radius: 15px;
        width: 90px;
        height: 90px;
    }
    .page-id-26.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -10px -10px 0px 0px #31706f;
        -moz-box-shadow: -10px -10px 0px 0px #31706f;
        box-shadow: -10px -10px 0px 0px #31706f;
    }
    .page-id-27.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -10px -10px 0px 0px #bee2e2;
        -moz-box-shadow: -10px -10px 0px 0px #bee2e2;
        box-shadow: -10px -10px 0px 0px #bee2e2;
    }
    .page-id-28.parent-pageid-3 .page-content img {
        -webkit-box-shadow: -10px -10px 0px 0px #53b4b2;
        -moz-box-shadow: -10px -10px 0px 0px #53b4b2;
        box-shadow: -10px -10px 0px 0px #53b4b2;
    }
    .parent-pageid-3 .podrazd h2 {font-size: 18px;}
    .parent-pageid-3 .podrazd div a img {
        width: 60px;
        height: 60px;
        border-radius: 10px;
        margin-top: 10px;
        margin-left: 10px;
    }
    .page-id-26.parent-pageid-3 .podrazd div a:nth-child(1) img {
        -webkit-box-shadow: -10px -10px 0px 0px #e1f2f2;
        -moz-box-shadow: -10px -10px 0px 0px #e1f2f2;
        box-shadow: -10px -10px 0px 0px #e1f2f2;
    }
    .parent-pageid-3 .podrazd div a p {
        width: 150px;
        font-size: 16px;
    }
    .parent-pageid-3 .podrazd div a:nth-child(1),
    .parent-pageid-3 .podrazd div a:nth-child(2) {max-width: 250px;}
    .page-contacts h1 {font-size: 24px;}
    .page-contacts h1 img {
        width: auto;
        height: 35px;
    }
    .page-contacts {
        margin-bottom: 60px;
        gap: 30px;
        padding: 30px;
        border-radius: 20px;
    }
    .page-contacts > *:not(.page-contacts h1) {
        gap: 10px;
        font-size: 16px;
    }
    .page-contacts img:not(.page-contacts h1 img) {width: 25px;}
    .language {top: 90px;}
}

@media only screen and (max-width: 375px) {
    .header {padding: 0 10px;}
    .uslugi > img {width: 50px;}
    .uslugi .podrazdely div > a {gap: 10px;}
    .uslugi .podrazdely div > a p {font-size: 12px;}
    .language__img {width: 30px;}
    #toTop {zoom: 60%;}
}

@media only screen and (max-width: 320px) {
    .uslugi .podrazdely div:nth-child(even) {flex-direction: row;}
    .uslugi .podrazdely div > span {display: none;}
    .uslugi .podrazdely div > a {width: 100%;}
}