.hero {
    padding: 0;
    height: 100vh;
    width: 100%;
}

.hero_container {
    position: relative;
    height: 100%;
}

.hero_container img {
	width: 100%;
}

.hero_container:after {
    content: '';
    background: rgb(98, 103, 164);
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%, var(--color-gradient-three) 100%);
    opacity: .7;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.hero_wrapper {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    color: #fff !important;
    z-index: 2;
    padding: 40px 0;
}

.hero_title {
    font-size: 75px;
    text-transform: uppercase;
    margin-bottom: 120px;
    text-align: center;
    margin-top: 0;
    font-family: var(--font-family-bold);
}

.hero_list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 20px;
}

.hero_list_item {
    display: flex;
    flex-direction: column;
    padding: 35px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.20);
}

.hero_list_item span {
    min-height: 20px;
    font-size: 20px;
    font-weight: 800;
}

.hero_list_item_title {
    font-family: var(--font-family-bold);
    font-size: 60px;
    font-weight: 800;
}

.hero_list_item_desc {
    font-size: 20px;
    font-weight: 800;
    max-width: 40%;
    margin-bottom: 20px;
}

@media (max-width: 1440px) {
    .hero_title {
        font-size: 55px;
    }
    .hero_list_item span {
        font-size: 16px;
    }

    .hero_list_item_title {
        font-size: 40px;
    }
    .hero_list_item_desc {
        font-size: 16px;
    }
}

@media (max-width: 1024px) {
    .hero_container {
        height: 100%;
    }
    .hero_title {
        margin-bottom: 30px;
    }

    .hero_list {
        grid-template-columns: repeat(3, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .hero_list_item {
        padding: 15px;
    }
}

@media (max-width: 768px) {
    .hero_list {
        grid-template-columns: repeat(2, 1fr);
    }
    .hero_title {
        font-size: 28px;
    }
    .hero {
        min-height: 800px;
    }
}

.about_item:first-child {
    font-size: 22px;
    font-family: var(--font-family-bold);
    color: #7A7A7A;
}

.about_item:last-child {
    font-size: 18px;
    font-weight: 800;
    color: #7A7A7A;
}

@media (max-width: 1024px) {
    .about_item:first-child {
        font-size: 22px;
    }
    .about_item:last-child {
        font-size: 16px;
    }
}

.map_container img {
    top: 50%;
    left: 50%;
    position: absolute;
    transform: translate(-50%, -50%);
    object-position: center;
    width: 90%;
}


.map_container {
    width: 100%;
    height: 100%;
    position: relative;
}

.map_list {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9;
}

.map_item {
    position: absolute;
    left: 0;
    top: 0;
}

.map_item_marker {
    width: 19px;
    height: 19px;
    position: relative;
    left: 0;
    top: 0;
    background: #b81f24;
    border-radius: 10px;
    border: 1px solid #ffffff;
    z-index: 0;
}

.map_item_title {
    visibility: hidden;
    position: absolute;
    top: -4px;
    left: 35px;
    z-index: 99;
    font-size: 20px;
    color: #ffffff;
    font-weight: 800;
}

.map_item:hover {
    z-index: 99;
}

.map_item:hover .map_item_title {
    visibility: visible;
    z-index: 99;
}

.map_item_marker:after {
    content: '';
    position: absolute;
    width: 33px;
    height: 33px;
    left: -8px;
    top: -8px;
    border-radius: 20px;
    border: 1px solid transparent;
}

.map_item:hover .map_item_marker:after {
    border: 1px solid #b81f24;
}

.map_info {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: flex;
    align-items: center;
}

.map_info .container {
    width: 100%;
}

.map_info_block_title {
    color: #ffffff;
    font-size: 48px;
    font-family: var(--font-family-bold);
    margin-bottom: 150px;
    padding-top: 100px;
}

.map_info_block ul {
    padding: 0;
    margin: 0;
    list-style: none;
    color: #ffffff;
    font-size: 18px;
}

.services_icon {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.services_icon picture {
    width: auto;
}

.services_icon img {
    height: 60px;
    object-fit: contain;
}

hr {
    border-width: 1px;
    border-color: #1a0f4c;
    margin-top: 25px;
    margin-bottom: 50px;
    border-style: double;
    width: 100%;
}

.services {
    margin-top: 40px;
}

@media (max-width: 1024px) {
    .map_list {
        display: none;
    }
}

.news {
    margin-bottom: 40px;
}

.header_newses {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}

.header_newses a {
    color: var(--main-color);
    font-size: 14px;
    font-weight: 800;
}

.header_newses h2 {
    margin-bottom: 0;
}

.news_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
}


.news_list_item_img {
    position: relative;
    height: 290px;
}

.news_list_item_img:after {
    content: '';
    background: rgb(98, 103, 164);
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%, var(--color-gradient-three) 100%);
    opacity: .7;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.news_list_item_date {
    padding: 15px 0;
    font-weight: 800;
    color: #979cba !important;
}

.news_list_item_title {
    font-size: 24px;
    color: #505050 !important;
    margin-bottom: 20px;
}

.news_list_item_short_content_desc {
    color: #505050 !important;
}

@media (max-width: 1024px) {
    .news_list {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 30px;
    }

    .news_list_item_title {
        font-size: 20px;
    }

    .news_list_item {
        margin-bottom: 20px;
    }

    .news_list_item_img {
        height: 190px;
    }
}

.partners {
    position: relative;
    height: 678px;
    padding: 0 !important;
}

.partners_container {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.partners_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.partners_img img {
    filter: grayscale(100%);
}

.partners_img:after {
    content: '';
    background: rgba(255, 255, 255);
    opacity: .8;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.partners_container_block {
    display: flex;
    flex-direction: column;
}

.partners_container_block h2 {
    text-align: center;
    font-size: 48px;
    margin-bottom: 80px;
}

.partners_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 4%;
    row-gap: 120px;
}

.partners_list_item {
    width: 22%;
    height: 100px;
}

.partners_list_item img {
    object-fit: contain;
}

@media (max-width: 1024px) {
    .partners_container_block h2 {
        font-size: 38px;
        margin-bottom: 40px;
    }
    .partners_list {
        gap: 10%;
        row-gap: 40px;
    }
    .partners_list_item {
        width: 45%;
        height: 70px;
    }
}

.footer {
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%);
    position: relative;
}

.footer:before {
    position: absolute;
    content: "";
    left: -20%;
    top: -100%;
    z-index: 2;
    width: 1500px;
    height: 1500px;
    opacity: .6;
    background: rgb(255, 255, 255);
    background: radial-gradient(circle, rgb(22, 147, 231,1) 0%, rgba(98, 103, 164, 0) 50%);
}

.footer:after {
    position: absolute;
    content: "";
    right: -20%;
    top: -5%;
    z-index: 2;
    width: 1200px;
    height: 1200px;
    opacity: .7;
    background: rgb(255, 255, 255);
    background: radial-gradient(circle, rgb(255, 0, 92, 1) 0%, rgba(98, 103, 164, 0) 50%);
}

#loom-companion-mv3 {
    display: none;
}

.menu-footer-container ul {
    list-style: none !important;
    padding: 0;
    margin: 0;
    color: #ffffff;
    font-size: 18px;
}


.footer_container {
    position: relative;
    z-index: 3;
}

.footer_bottom {
    margin-bottom: 50px;
    margin-top: 50px;
    border-top: 1px solid #ffffff;
    padding: 40px 0;
    color: #fff !important;
    font-size: 14px;
}

.polit a {
    margin-left: 20px;
    color: #fff !important;
    font-size: 14px;
    font-weight: 200;
}

.footer_bottom .footer_block, .footer_block a {
    color: #fff !important;
    font-size: 15px;
    font-weight: 800;
}


.footer_bottom
.footer_block {
    display: flex;
}

.footer_block_contacts {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

#footer-menu {
    width: 250px;
}

.footer_block_item {
    width: 232px;
    color: #fff !important;
}

.footer_block_item .footer_mail {
    display: flex;
    margin-bottom: 20px;
}

.footer_block_item .footer_mail, .footer_block_item .footer_address {
    font-size: 14px !important;
    font-weight: 200;
}

.footer_block_item_desc {
    font-family: var(--font-family-bold);
    font-size: 23px;
    color: #fff !important;
}

.footer_block:first-child {
    justify-content: space-between;
}

.footer_block_padding {
    justify-content: flex-end;
}

.footer_tel {
    font-size: 24px !important;
    font-family: var(--font-family-bold);
    white-space: nowrap;
}

.footer_block_item_test {
    color: #9790b3;
}

@media (max-width: 1024px) {
    .footer_block_padding {
        padding-top: 50px;
    }
    #footer-menu {
        margin-top: 50px;
    }

    .footer_bottom .footer_block {
        display: flex;
        flex-direction: column;
    }

    .footer_bottom .footer_block:last-child {
        flex-direction: row;
    }
    .footer_copy {
        margin-bottom: 15px;
    }
}

/* Стили для основного меню */
#header-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Стили для элементов меню */
#header-menu li {
    position: relative;
    display: inline-block;
}

/* Стили для ссылок в меню */
#header-menu li a {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 800;
    transition: all .3s ease-in-out;
}

#header-menu li a:hover {
    color: #dddddd;
    text-decoration: underline;
}

#header-menu .menu-item-has-children > a:after {
    content: '▼';
    position: absolute;
    right: 5px;
    top: 20px;
}

#header-menu .menu-item-has-children .sub-menu {
    background: linear-gradient(90deg, rgba(23, 85, 184, 0.7) 10%, rgba(23, 85, 184, 0.7) 50%, rgba(33, 59, 132, .7) 100%);
    min-width: 300px;
}

/* Стили для подменю */
#header-menu li ul {
    display: none; /* Скрываем подменю по умолчанию */
    position: absolute;
    left: 0;
    top: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Показываем подменю при наведении */
#header-menu li:hover ul {
    display: block;
}

/* Стили для элементов подменю */
#header-menu li ul li {
    display: block; /* Подменю отображается вертикально */
}

.header_page {
    position: relative;
    height: 550px;
    margin-bottom: 70px;
    padding: 0;
}

.header_page_container {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding-top: 80px;
    z-index: 9;
}

.header_page_wrapper {
    display: flex;
    height: 100%;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
}

.header_page_wrapper:after {
    content: '';
    background: rgb(98, 103, 164);
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%, var(--color-gradient-three) 100%);
    opacity: .7;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.header_page_container .rank-math-breadcrumb a {
    color: #ffffff;
    font-weight: 200;
    font-size: 14px;
}

.header_page_container .rank-math-breadcrumb span {
    color: #ffffff;
    font-size: 14px;
}

.header_page_container .separator {
    margin: 0 10px;
    font-size: 14px;
}

.rank-math-breadcrumb p {
    margin-top: 0;
}

#header_page_about {
    list-style: none;
    padding: 0;
    margin: 0;
}

#header_page_about li {
    margin-bottom: 20px;
}

#header_page_about li a {
    color: #ffffff;
    font-weight: 400;
    font-size: 18px;
}

#header_page_about .current-menu-item a {
    font-family: var(--font-family-bold);
}

.header_page_container_block {
    display: flex;
    gap: 100px;
    margin-top: 100px;
}

.header_page_block {
    color: #ffffff;
}

.header_page_block_first {
    color: #ffffff;
    font-size: 28px !important;
    font-family: var(--font-family-bold);
    text-transform: uppercase;
    width: 35%;
}

.header_page_block_two {
    color: #ffffff;
    font-size: 20px !important;
    width: 35%;
}

.services_desc {
    color: var(--main-color);
    font-size: 32px;
    font-family: var(--font-family-bold);
}

.header_page_hr {
    margin-top: 25px !important;
}


.about_container {
    margin: 80px 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
}

.nord_h1 {
    font-size: 48px;
    color: var(--main-color);
    text-transform: uppercase;
    font-family: var(--font-family-bold);
    margin-top: 0;
    margin-bottom: 60px;
}

.services_hero_list {
    margin-bottom: 100px;
}

.services_hero_list .hero_list_item {
    color: var(--main-color);
}

.services_hero_list .hero_list_item {
    background: #dfe2e3;
}

.services_hero_list .hero_list_item span,
.services_hero_list .hero_list_item .hero_list_item_desc {
    font-family: var(--font-family-bold);
}

@media (max-width: 1024px) {
    
.header_page_container {
    padding-top: 0;
}
    .top_section {
        padding-top: 80px;
    }
    .header_page_block_first {
        font-size: 22px !important;
        width: 100%;
    }

    .header_page_block_two {
        font-size: 16px !important;
        width: 100%;
    }
    .header_page {
        height: auto;
        margin-bottom: 50px;
        padding-bottom: 30px;
    }
    .about_container {
        margin: 50px 0;
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 20px;
    }

    .nord_h1 {
        font-size: 32px;
        margin-bottom: 30px;
    }

    .services_desc {
        font-size: 24px;
    }
    .hero_list_item_desc, .hero_list_item span {
        font-size: 12px;
    }


    .container {
        margin: 0;
    }

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

    .services_short_content_desc {
        padding: 0;
    }

    .services_icon img {
        height: 50px;
    }

    .services_img {
        height: 180px;
    }
    .services_hero_list {
        margin-bottom: 50px;
    }
}

@media (max-width: 1440px) {
    .header_page_container_block {
        flex-direction: column;
        display: flex;
        gap: 20px;
        margin-top: 20px;
    }
}

.rukovodstvo_list {
    margin: 50px 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 70px;
    grid-row-gap: 70px;
}

.rukovodstvo_page_hr {
    margin-top: 10px;
    margin-bottom: 20px;
}

.rukovodstvo_list_item_dolzhnost {
    font-family: var(--font-family-bold);
    font-size: 16px;
}

.rukovodstvo_list_item_fio {
    font-family: var(--font-family-bold);
    font-size: 24px;
}

.rukovodstvo_list_item ul {
    list-style: none;
    padding: 0;
}

.rukovodstvo_list_item ul li a {
    color: #000;
    font-size: 16px;
    font-weight: 800;
}

@media (max-width: 1024px) {
    .rukovodstvo_list {
        margin: 30px 0;
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 40px;
    }

    .rukovodstvo_list_item_dolzhnost {
        font-size: 14px;
    }

    .rukovodstvo_list_item_fio {
        font-size: 22px;
    }

    .rukovodstvo_list_item ul li a {
        font-size: 14px;
    }
}

.korp_desc {
    width: 100%;
    display: flex;
    margin-bottom: 50px;
}

.korp_item {
    padding: 50px;
    border-radius: 15px 0 0 15px;
    background: #dfe2e3;
    width: 50%;
}

.korp_item_img {
    border-radius: 0 15px 15px 0;
    overflow: hidden;
    width: 50%;
    position: relative;
    height: 100%;
}

.korp_item_img:after {
    content: '';
    background: rgb(98, 103, 164);
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%, var(--color-gradient-three) 100%);
    opacity: .7;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.korp_item h3 {
    font-family: var(--font-family-bold);
    font-size: 28px;
    margin-top: 0;
}

.korp_item p {
    font-size: 20px;
    line-height: 26px;
}

@media (max-width: 1024px) {
    .korp_desc {
        flex-direction: column;
    }

    .korp_item {
        padding: 20px;
        border-radius: 15px 15px 0 0;
        width: 100%;
    }

    .korp_item_img {
        border-radius: 0 0 15px 15px;
        width: 100%;
    }

    .korp_item h3 {
        font-size: 22px;
    }

    .korp_item p {
        font-size: 16px;
        line-height: 18px;
    }
}

.videnie_block {
    padding: 50px;
    border-radius: 15px;
    background: #dfe2e3;
    width: 100%;
    margin-bottom: 70px;
}

.videnie_block h3 {
    font-family: var(--font-family-bold);
    font-size: 28px;
    margin-top: 0;
    margin-bottom: 0;
}

.cennosti_list {
    margin-bottom: 50px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 30px;
}

.cennosti_list_item_title {
    font-family: var(--font-family-bold);
    font-size: 24px;
    margin-top: 0;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.cennosti_list_item_desc {
    font-size: 20px;
}

.politici {
    margin-bottom: 40px;
}

.politici h3 {
    font-family: var(--font-family-bold);
    font-size: 28px;
    margin-top: 0;
    margin-bottom: 0;
}

@media (max-width: 1024px) {

    .videnie_block {
        padding: 20px;
        margin-bottom: 50px;
    }

    .videnie_block h3 {
        font-size: 20px;
    }

    .cennosti_list {
        margin-bottom: 50px;
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .cennosti_list_item {
        margin-bottom: 30px;
    }
    .cennosti_list_item_title {
        font-size: 20px;
    }
    .cennosti_list_item_desc {
        font-size: 16px;
    }
}


.politici_list {
    margin-top: 50px;
    margin-bottom: 150px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: 40px;
    grid-row-gap: 30px;
}

.politici_list_item_title {
    font-size: 20px;
    color: #000;
}

.politici_list_item_img {
    width: 160px;
    height: 160px;
    margin-bottom: 20px;
}


@media (max-width: 1024px) {
    .politici h3 {
        font-size: 20px;
    }
    .politici_list {
        margin-top: 50px;
        margin-bottom: 10px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .politici_list_item_title {
        color: #000;
        font-size: 12px;
    }

    .politici_list_item_img {
        width: 100px;
        height: 100px;
    }
}

.archive_services .services {
    padding: 0;
    margin: 0;
    margin-bottom: 100px;
}

.archive_services .services h1 {
    font-family: var(--font-family-bold);
    font-size: 31px;
    color: var(--main-color);
    margin-bottom: 0;
}

.menu-archive_services-container {
    max-width: 250px;
}

.service_h1 {
    font-size: 40px;
    color: #ffffff;
    font-family: var(--font-family-bold);
    margin-top: 0;
    text-transform: uppercase;
}

.service_header_opisanie {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 40px;
    grid-row-gap: 20px;
}

.service_header_opisanie p {
    color: #ffffff;
    font-size: 20px !important;
    line-height: 24px;
    margin-top: 0;
}

.otvetstvennyi_list_item_dolzhnost {
    margin-top: 20px;
    font-size: 16px;
}

.service_header_opisanie_otvetstvennyi {
    display: flex;
    justify-content: flex-end;
}

.otvetstvennyi {
    position: relative;
    right: 15px;
    top: 0;
    width: 380px;
    border-radius: 0;
    background: #dfe2e3;
    padding: 40px 30px;
}

.service_first_list {
    width: 60%;
}

.service_second_list {
    width: 100%;
}

.service_first {
    margin-bottom: 50px;
}

.service_first_list_info ul {
    padding-left: 20px;
}

.service_first_list_info ul li {
    padding-left: 10px;
    font-size: 18px;
    margin-bottom: 15px;
}

@media (max-width: 1024px) {
.service_header_opisanie_otvetstvennyi {
    justify-content: flex-start;
}

    .otvetstvennyi {
        position: relative;
        width: 100%;
        max-width: 380px;
        margin-top: 10px;
        margin-left: 15px;
        margin-bottom: 30px;
    }

    .service_h1 {
        font-size: 30px;
    }
    .service_header_opisanie p {
        font-size: 16px;
        width: 100%;
    }

}

@media (max-width: 1440px) {

    .header_page_services {
        height: auto;
    }
    .service_header_opisanie {
        margin-bottom: 30px;
    }
}

.service_galereya {
    margin-bottom: 100px;
}

.service_galereya .swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.service_galereya .swiper-slide {
    width: 60%;
}

.service_galereya .swiper-wrapper {
    height: 555px;
}

.swiper-button-next {
    height: 100% !important;
    background: rgba(255, 255, 255, 0.50) !important;
    top: 0 !important;
    right: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 132px !important;
}

.swiper-button-prev {
    height: 100% !important;
    background: rgba(255, 255, 255, 0.50) !important;
    top: 0 !important;
    left: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 132px !important;
}

.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {
    opacity: 0 !important;
}

.swiper-slide-next {
    opacity: 0.5;
}

.swiper-button-prev:after, .swiper-button-next:after {
    content: "" !important;
}

.swiper-button-prev svg, .swiper-button-next svg {
    width: 30px !important;
    height: 30px !important;
}

.swiper-button-prev svg {
    transform: rotate(180deg);
}

@media (max-width: 1024px) {
    .service_header_opisanie {
        grid-template-columns: repeat(1, 1fr);
    }
    .service_galereya .swiper-wrapper {
        height: 250px;
    }

    .swiper-button-prev, .swiper-button-next {
        width: 32px !important;
    }
    .swiper-button-prev svg, .swiper-button-next svg {
        width: 20px !important;
        height: 20px !important;
    }
    .service_galereya .swiper-slide {
        width: 80%;
    }
    .services_desc_container .services_hero_list {
        grid-template-columns: repeat(1, 1fr) !important;
    }
    .service_first_list {
        width: 100%;
    }
    .service_first_list_info li {
        font-size: 18px !important;
    }
}

.open_form {
    background: #dfe2e3;
}

.open_form_container {
    display: grid;
    grid-template-columns: 43% 43% 12%;
    gap: 1%;
    margin-top: 20px;
}

.open_form .wpcf7-form-control-wrap {
    display: flex;
}

.open_form_block {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.open_form .wpcf7-form-control-wrap {
    width: 100%;
}

.open_form .wpcf7-form-control-wrap input {
    background: #ffffff;
    border: none;
    padding: 30px;
    width: 100%;
}


.open_form .wpcf7-textarea {
    flex: 1;
    resize: none;
    box-sizing: border-box;
    background: #ffffff;
    border: none;
    padding: 30px;
    width: 100%;
}

.open_form .wpcf7-not-valid-tip {
    background: #f6f6f6;
    padding: 3px;
    font-size: 14px;
    position: absolute;
    right: 10px;
    top: -5px;
}

.open_form .wpcf7-submit {
    background: linear-gradient(145deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 63%, var(--color-gradient-three) 102%);
    border: none;
    padding: 10px;
    width: 100%;
    color: #ffffff;
    font-size: 20px;
    text-transform: uppercase;
    font-family: var(--font-family-bold);
    cursor: pointer;
    transition: all .3s ease-in-out;
}

.open_form .wpcf7-submit:hover {
    background: linear-gradient(145deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 35%, var(--color-gradient-three) 102%);
}

.open_form .wpcf7-acceptance .wpcf7-list-item-label {
    display: flex;
    width: 80% !important;
    font-size: 20px;
}

.open_form .wpcf7-acceptance .wpcf7-list-item {
    margin: 0;
}

.open_form .wpcf7-list-item label {
    display: flex;
}

.open_form .wpcf7-list-item label input {
    font-size: 28px;
    width: 20px;
    margin-right: 20px;
    border: none;
    background: #ffffff;
}

@media (max-width: 1024px) {
    .open_form_container {
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 20px;
    }
    .open_form .wpcf7-submit {
        height: 100px;
    }
    .open_form .wpcf7-acceptance .wpcf7-list-item-label {
        font-size: 12px;

    }
}

.open_form_container_two {
    display: grid;
    grid-template-columns: 87% 12%;
    grid-column-gap: 1%;
    grid-row-gap: 12px;
    margin-top: 20px;
}

.open_form_container_two_inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1%;
    grid-row-gap: 12px;
}

.open_form_container_two .wpcf7-textarea {
    min-height: 200px;
}

.contacts_container {
    display: grid;
    grid-template-columns: 35% 62%;
    grid-column-gap: 3%;
    grid-row-gap: 12px;
    margin-top: 20px;
    margin-bottom: 70px;
}

.contacts_adreses .rukovodstvo_list_item_dolzhnost {
    font-size: 26px;
}

.contacts_adreses {
    display: flex;
    flex-direction: column;
    padding-top: 20px;
    gap: 70px;
}

.contacts_adreses .rukovodstvo_list_item_adress,
.contacts_adreses .rukovodstvo_list_item ul li {
    font-size: 18px;
    font-weight: 800;
}

.contacts_adreses .contacts_tel {
    font-family: var(--font-family-bold);
    font-size: 18px;
    margin-bottom: 10px;
    display: flex;
}

.contacts_adreses hr {
    border-color: #dfe2e3;
    border-style: double;
}

.contacts_map {
    display: flex;
}

.contacts_map iframe {
    margin: 0;
}

.contacts_container_rek {
    display: flex;
    flex-direction: column;
    gap: 70px;
    margin-bottom: 70px;
}

.contacts_container_rek hr {
    border-color: #dfe2e3;
    border-style: double;
}

.contacts_container_rek .rukovodstvo_list_item_dolzhnost {
    font-size: 26px;
}

.contacts_container_rek_table table {
    width: 100%;
    font-size: 18px !important;
    font-weight: 800 !important;
}

.contacts_container_rek_table td {
    padding-bottom: 15px;
    padding-left: 0;
}

.contacts_container_rek_table th, tr:first-child td {
    background: #ffffff;
    text-align: left;
    width: auto;
    padding-left: 0;
}

.contacts_container_rek_table tr:nth-child(even) {
    background: #ffffff;
}

.contacts_container_rek_table tr td:first-child {
    width: 38%;
}

.contacts_container_rek_table tr td:last-child {
    width: 62%;
}

@media (max-width: 1024px) {
    .contacts_container {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 50px;
    }
    .contacts_adreses {
        gap: 40px;
    }
    .contacts_adreses .rukovodstvo_list_item_dolzhnost {
        font-size: 26px;
    }
    .contacts_adreses .rukovodstvo_list_item_adress,
    .contacts_adreses .rukovodstvo_list_item ul li {
        font-size: 18px;
    }

    .contacts_adreses .contacts_tel {
        font-size: 18px;
    }

    .contacts_map {
        height: 300px;
    }

    .contacts_container_rek {
        margin-bottom: 50px;
        gap: 40px;
    }


    .contacts_container_rek .rukovodstvo_list_item_dolzhnost {
        font-size: 28px;
    }
    .contacts_container_rek_table {

        overflow: auto;
    }

    .contacts_container_rek_table table {
        font-size: 18px !important;
        width: 700px;
    }
    .contacts_container_rek_table td {
        padding-bottom: 15px;
        padding-left: 0;
    }

    ::-webkit-scrollbar {
        height: 4px;
    }

    .contacts_map iframe {
        height: auto !important;
    }

    .open_form_container_two {
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 12px;
    }
    .open_form_container_two_inner {
        grid-template-columns: repeat(1, 1fr);
    }
}

.posts_container {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 3%;
    grid-row-gap: 12px;
    margin-top: 40px;
    margin-bottom: 70px;
}

#posts {
    list-style: none;
    padding: 0;
    margin: 0;
}

#posts li {
    margin-bottom: 20px;
}

#posts li a {
    color: #505050;
    font-weight: 400;
    font-size: 18px;
}

#posts .current-menu-item a {
    font-family: var(--font-family-bold);
}

.category_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}

.category_list_item {
    position: relative;
    display: flex;
    height: 300px;
}

.category_list_item_img {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    height: 100%;
    width: 100%;
}

.category_list_item_img:after {
    content: '';
    background: rgb(98, 103, 164);
    background: linear-gradient(129deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 49%, var(--color-gradient-three) 100%);
    opacity: .7;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.category_list_item_wrap {
    position: relative;
    left: 0;
    top: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.category_list_item_wrap_img {
    width: 80px;
    height: 80px;
}

.category_list_item_wrap_title {
    font-family: var(--font-family-bold);
    font-size: 36px;
    text-transform: uppercase;
    margin-top: 20px;
    color: #ffffff;
}

@media (max-width: 1024px) {
    .posts_container {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 50px;
    }
    .category_list {
        grid-template-columns: repeat(1, 1fr);
    }
}

.post_container {
    margin-bottom: 50px;
}

.post_h1 {
    font-size: 48px;
    color: var(--main-color);
    text-transform: uppercase;
    font-family: var(--font-family-bold);
    margin-top: 0;
    margin-bottom: 30px;
}

.news_more_container {
    display: flex;
    justify-content: center;
    width: 100%;
    padding-top: 50px;
    margin-bottom: 100px;
}

.news_more {
    font-size: 24px;
    color: var(--main-color);
    text-transform: uppercase;
    font-family: var(--font-family-bold);
    display: flex;
    align-items: center;
}

.news_more svg {
    transform: rotate(180deg);
    margin-right: 20px;
}


.entry_content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 50px;
}

.entry_content_items_content {
    padding-right: 50px;
}

.entry_content_items img {
    object-fit: contain;
}

.content_gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 50px;
    padding-top: 20px;
}

.content_gallery_item {
    height: 227px;
    cursor: pointer;
}

.link_vk {
    display: flex;
    align-items: center;
    gap: 10px;
}

.link_vk .link_svg {
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    width: 50px;
    transition: all 0.3s ease-in-out;
    background: var(--main-color);
    border-radius: 50px;
}

.link_svg svg {
    width: 30px;
    height: 30px;
}

.link_vk span {
    color: var(--main-color);
    font-weight: 800;
}

@media (max-width: 1024px) {
    .entry_content {
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 30px;
        margin-bottom: 40px;
    }
    .entry_content_items_content {
        padding-right: 0;
    }
    .entry_content_items_content p {
        font-size: 14px;
        line-height: 22px;
    }
    .entry-title {
        font-size: 28px;
    }
    .content_gallery {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
        margin-bottom: 30px;
        padding-top: 20px;
    }
    .content_gallery_item {
        height: 150px;
    }
    .post_h1 {
        font-size: 30px;
    }

    .news_more_container {
        padding-top: 20px;
        margin-bottom: 10px;
    }
    .news_more {
        font-size: 20px;
    }

    .news_more svg {
        width: 25px;
        height: 25px;
    }
}

.burger {
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 40px;
    height: 30px;
}

.burger__line {
    background: #ffffff;
    height: 4px;
    width: 100%;
    transition: all 0.3s ease;
    background-color: #ffffff !important;
}

.header .burger::before, .header .burger::after {
    background-color: #ffffff !important;
}

.menu_in_burger {
    display: none; /* Скрываем меню по умолчанию */
    background: linear-gradient(129deg, rgb(86 159 208) -32%, var(--color-gradient-two) 81%, var(--color-gradient-three) 115%);
    position: absolute; /* Позиционируем меню */
    top: 70px; /* Расположение под кнопкой */
    left: 0;
    width: 100%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.menu_in_burger.active {
    display: flex; /* Показываем меню, когда оно активно */
}

.menu_in_burger a {
    display: flex;
    padding: 5px 15px;
    text-decoration: none;
    color: #ffffff !important;
    font-weight: 800 !important;
    font-size: 16px;
}

.header-menu-mobile .sub-menu a {
    color: #ffffff !important;
    font-size: 16px;
}

.header-menu-mobile .sub-menu {
    padding-bottom: 20px;
}

.header-menu-mobile .menu-item-has-children {
    padding-top: 20px;
}

.header-menu-mobile {
    padding: 20px;
}

.header-menu-mobile ul {
    list-style: none;
    padding-left: 0;
}

.vakansii_tabs {
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
    max-height: 400px;
    overflow: auto;
}

.vakansii_tab {
    padding: 20px 0;
    border-top: 2px solid #e3e6e6;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.vakansii_tab-content {
    padding: 20px 0;
}

.vakansii_tab.active {
    color: var(--main-color);
}

.vakansii_header {
    display: grid;
    grid-template-columns: 70% 30%;
    margin-bottom: 70px;
}

.vakansii_header_text {
    display: flex;
    align-items: center;
    padding-right: 70px;
}

.vakansii_header_contacts {
    width: 100%;
    height: 100%;
    border-radius: 15px;
    background: #dfe2e3;
    padding: 50px 30px;
}

.vakansii_header_contacts .rukovodstvo_page_hr {
    border-color: #7e7e7e;
    border-style: double;
}

.vakansii_header_kontakt {
    display: flex;
    flex-direction: column;
}

.vakansii_header_kontakt a {
    color: #1e1e1e;
}

.vakansii_tabs_container {
    display: flex;
    flex-direction: column;
}

.vakansii_tab_name {
    font-size: 30px;
    font-family: var(--font-family-bold);
	min-width:200px;
}

.vakansii_tab_desc {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
	min-width: 120px;
}

.vakansii_tab_desc_item {
    text-align: right;
}

.vakansii_tab_desc_item_dop {
    font-size: 12px;
    text-align: right;
}

.vakansii_tab-content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 70px;
    margin-bottom: 50px;
    padding-top: 50px;
}

.btn_nord {
    background: linear-gradient(145deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 63%, var(--color-gradient-three) 102%);
    border: none;
    padding: 15px 30px;
    width: fit-content;
    color: #ffffff;
    font-size: 20px;
    text-transform: uppercase;
    font-family: var(--font-family-bold);
    text-align: center;
    cursor: pointer;
    transition: all .3s ease-in-out;
}

.btn_nord:hover {
    background: linear-gradient(145deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 35%, var(--color-gradient-three) 102%);
}

.vakansii_tab_content_item h2 {
    color: #000000;
    font-size: 20px;
    font-family: var(--font-family-bold);
}

.vakansii_tab_content_item ul {
    padding-left: 20px;
    margin-bottom: 30px;
}

.vakansii_tab_content_item ul li {
    margin-bottom: 20px;
}

.vakansii_social_item {
    display: flex;
    transition: all .3s ease-in-out;
}

.vakansii_social {
    display: flex;
    gap: 50px;
    margin-bottom: 70px;
}

.vakansii_social_item picture {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 53px;
    height: 53px;
    background: #dfe2e3;
    border-radius: 50px;
    transition: all .3s ease-in-out;
}

.vakansii_social_item:hover picture{
background: var(--main-color);
}
.vakansii_social_item img {
    object-fit: contain;
    width: 33px;
    height: 33px;
}

.vakansii_social_item_name {
    position: relative;
    left: -24px;
    top: 0;
    height: 53px;
    background: linear-gradient(145deg, var(--color-gradient-one) 0%, var(--color-gradient-two) 35%, var(--color-gradient-three) 102%);
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--font-family-bold);
    font-size: 14px;
    min-width: 260px;
    z-index: -1;
    color: #fff;
}

.vakansii_page_hr {
    border-color: #e3e6e6;
    border-style: double;
    margin-bottom: 70px;
}

@media (max-width: 1024px) {
    .vakansii_header {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 50px;
    }
    .vakansii_header_text {
        padding-right: 0;
        margin-bottom: 20px;
    }
    .vakansii_tab_name {
        font-size: 14px;
    }
    .vakansii_tab {
        flex-direction: column;
    }
    .vakansii_tab_desc, .vakansii_tab_desc_item {
        text-align: center;
    }
    .vakansii_tab_desc_item_dop {
        text-align: center;
    }
    .btn_nord {
        width: 100%;
    }
    .vakansii_tab-content {
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 50px;
    }
    .vakansii_social {
        flex-direction: column;
        gap: 20px;
    }
    .vakansii_social_item picture {
        width: 50px;
        height: 50px;
    }

    .vakansii_social_item img {
        width: 30px;
        height: 30px;
        object-fit: contain;
        background: #dfe2e3;
        border-radius: 50px;
    }

    .vakansii_social_item_name {
        position: relative;
        left: -25px;
        top: 0;
        height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;
        font-family: var(--font-family-bold);
        font-size: 16px;
        min-width: 300px;
        z-index: -1;
    }
}

.methods_list_container {
    display: flex;
    flex-direction: column;
    width: 60%;
    margin-bottom: 50px;
    margin-top: 20px;
}

.methods_list_container .header_newses {
    margin-bottom: 0;
}

.methods_item_img {
    height: 100px;
    width: 70px;
}

.methods_item_img img {
    object-fit: contain;
}

.methods_list_container .header_page_hr {
    width: 100%;
}

.methods_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 10px;

}

.methods_item {
    padding: 20px;
    background: #dfe2e3;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    border-radius: 15px;
}

.methods_item_title {
    padding-top: 10px;
    padding-bottom: 20px;
    font-size: 22px;
    color: var(--main-color);
    font-family: var(--font-family-bold);
}

.methods_item_info {
    margin-bottom: 20px;
}

.methods_item_kontakt a {
    font-size: 14px;
    color: var(--main-color);
    font-family: var(--font-family-bold);
}

.lang_switcher {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    height: 100%;
}

.lang_switcher a, .sep {
    color: #fff;
    font-weight: 800;
    font-size: 14px;
}

.catalogue_cats ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 70px;
}

.catalogue_cats ul .catalog_tab {
    border-radius: 15px;
    background: #dfe2e3;
    min-height: 270px;
    display: flex;
    transition: all .3s ease-in-out;
}

.catalogue_cats ul .catalog_tab span {
    border-radius: 15px;
    width: 100%;
    height: 100%;
    padding: 30px;
    color: var(--main-color);
    font-size: 32px;
    font-family: var(--font-family-bold);
    transition: all .3s ease-in-out;
    cursor: pointer;
}

.catalog_tab.active {
    background: var(--main-color) !important;
}

.catalog_tab.active span {
    color: #ffffff !important;
}

.catalogue_cats ul .catalog_tab span:hover {
    font-size: 33px;
}

.fancybox-container {
    z-index: 999999999999999999999999;
}

.catalog_tab, .catalogue_sub_cats {
    display: flex;
    flex-direction: column;
}

.catalogue_sub_cats {
    margin-bottom: 70px;
}

.catalog_tab.active {
    color: #ffffff;
    background: var(--main-color);
}

.catalogue_sub_cats h2 {
    font-size: 40px;
}

.catalogue_sub_cats h3 {
    margin-bottom: 0;
    color: var(--main-color);
    font-family: var(--font-family-bold);
    font-size: 26px;
}

.catalogue_sub_cats ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 40px;
}

.catalogue_sub_cats ul li {
    display: flex;
    flex-direction: column;
    min-height: 270px;
    transition: all .3s ease-in-out;
}

.catalogue_sub_cats ul li a {
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    color: var(--main-color);
    font-size: 20px;
    padding: 30px;
    background: #dfe2e3;
    font-family: var(--font-family-bold);
    transition: all .3s ease-in-out;
}

.catalogue_sub_cats ul li a:hover {
    color: #dfe2e3;
    background: var(--main-color);
}

.product_title {
    font-size: 30px;
    margin-bottom: 10px;
}

.product .methods_item {
    padding: 40px;
}

.product .methods_item_title {
    font-size: 32px;
}

.product .methods_item_desc {
    font-size: 20px;
}

.product .methods_item_kontakt a {
    font-size: 18px;
}

@media (max-width: 1024px) {
    .methods_list_container {
        width: 100%;
    }
    .methods_list {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .product .methods_item {
        padding: 20px;
    }

    .product .methods_item_title {
        font-size: 24px;
    }
    .product .methods_item_desc {
        font-size: 16px;
    }

    .product .methods_item_kontakt a {
        font-size: 14px;
    }

    .catalogue_cats ul {
        margin-bottom: 40px;
        grid-template-columns: repeat(1, 1fr);
    }

    .catalogue_cats ul .catalog_tab span {
        padding: 20px;
        color: var(--main-color);
        font-size: 20px;
    }
    .catalogue_cats ul .catalog_tab {
        min-height: 100px;
    }
    .catalogue_cats ul .catalog_tab span:hover {
        font-size: 21px;
    }

    .catalogue_sub_cats ul {
        grid-template-columns: repeat(2, 1fr);
        grid-column-gap: 10px;
        grid-row-gap: 10px;
        margin-bottom: 40px;
    }
    .catalogue_sub_cats ul li {
        min-height: 140px;
    }
    .catalogue_sub_cats ul li a {
        padding: 20px;
    }
    .product_title {
        font-size: 20px;
        margin-bottom: 10px;
    }
    .product_desc {
        font-size: 14px;
    }
    .catalogue_sub_cats h2 {
        font-size: 28px;
        margin-bottom: 0;
    }
    .catalogue_sub_cats h3 {
        font-size: 20px;
    }
}

strong {
    font-family: var(--font-family-bold);
}

.preimushhestva_product_list {
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    margin-bottom: 70px;
}

.preimushhestva_product_list_item {
    display: flex;
    flex-direction: column;
    padding: 40px;
    border-radius: 15px;
    background: #dfe2e3;
    transition: all .3s ease-in-out;
}
.product .preimushhestva_product_list_item ul {
    margin: 0;
        padding-left: 20px;
}
.preimushhestva_product_list_item table {
    width: auto !important;
}

.product .preimushhestva_product_list_item ul li, .product .preimushhestva_product_list_item p, .product .preimushhestva_product_list_item td {
    margin: 0;
    font-size: 20px;
    line-height: inherit;
    padding-right: 10px;
    padding-bottom: 20px;
    background: inherit !important;
}

.product .preimushhestva_product_list_item .services_desc {
    margin-bottom: 40px;
}

.product .post-categories ul {
    list-style: none;
    padding: 0;
    display: flex;
    gap: 10px;
}

.product .post-categories {
    margin-bottom: 20px;
}

.product .post-categories ul a {
    font-size: 16px;
    color: #4e4e4e;
    font-weight: 800;
}

.product_main_info_item h1 {
    margin: 0;
    margin-bottom: 20px;
    font-size: 60px;
    font-family: var(--font-family-bold);
}

.product_main_info_item .product_desc {
    display: flex;
    flex-direction: column;
    padding: 40px;
    border-radius: 15px;
    background: #dfe2e3;
}

.product_desc_content {
    font-size: 18px;
    font-weight: 800;
}

.product .news_more_container {
    width: fit-content;
    margin-bottom: 20px;
    padding-top: 10px;
}

.product .news_more_container svg {
    transform: rotate(0deg);
}

.product_subtitle {
    margin-bottom: 60px;
    font-size: 32px;
    font-family: var(--font-family-bold);
}

.product_main_info {
    display: grid;
    grid-template-columns: 40% 60%;
    margin-bottom: 70px;
}

.product_main_info_item img {
    object-fit: contain;
    padding: 0 100px;
    width: 100%;
}

.product .header_page_hr {
    margin-bottom: 30px;
}

@media (max-width: 1024px) {
    .product_main_info {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        margin-bottom: 50px;
        grid-row-gap: 10px;
    }
    .product_main_info_item img {
        padding: 0 30px;
    }

    .product_desc_content {
        font-size: 14px;
    }

    .product_subtitle {
        margin-bottom: 30px;
        font-size: 24px;
    }

    .product_main_info_item h1 {
        font-size: 40px;
    }
    .product_main_info_item .product_desc {
        padding: 20px;
    }

    .product .header_page_hr {
        margin: 20px 0;
    }
    .catalogue-categories {
        margin-top: 0;
    }
}

.mob_menu {
    display: flex;
    align-items: center;
    gap: 20px;
}

.popup-form textarea {
    width: 100% !important;
}

@media (max-width: 1024px) {
    .preimushhestva_product_list {
        grid-template-columns: repeat(1, 1fr);
    }
    .preimushhestva_product_list_item {
        padding: 20px;
    }

    .preimushhestva_product_list_item p, .preimushhestva_product_list_item ul li, .preimushhestva_product_list_item td {
        font-size: 16px !important;
    }
    .preimushhestva_product_list_item td {
        padding-right: 5px;
        padding-bottom: 10px;
    }
    .services_desc {
        margin-bottom: 20px !important;
    }
    .footer_mail {
        text-align: center;
        justify-content: center;
    }
    .footer_top .footer_block:last-child {
        padding-bottom: 0;
    }
}

.menu-item-has-children {
    padding-top: 20px;
}

.header-menu-mobile .menu-item-has-children:first-child,
.menu-footer-container .menu-item-has-children:first-child {
    padding-top: 0 !important;
}

.header_container_nav {
    display: flex;
    align-items: center;
    height: 100%;
}


.checkbox-wrapper-21 .control {
    display: block;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    font-size: 20px;
    max-width: 90%;
}

.checkbox-wrapper-21 .control input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.checkbox-wrapper-21 .control__indicator {
    position: absolute;
    top: 2px;
    left: 0;
    height: 20px;
    width: 20px;
    background: #ffffff;
}

.checkbox-wrapper-21 .control:hover input ~ .control__indicator,
.checkbox-wrapper-21 .control input:focus ~ .control__indicator {
    background: #ffffff;
}

.checkbox-wrapper-21 .control input:checked ~ .control__indicator {
    background: var(--main-color);
}

.checkbox-wrapper-21 .control:hover input:not([disabled]):checked ~ .control__indicator,
.checkbox-wrapper-21 .control input:checked:focus ~ .control__indicator {
    background: var(--main-color);
}

.checkbox-wrapper-21 .control input:disabled ~ .control__indicator {
    background: #ffffff;
    opacity: 0.6;
    pointer-events: none;
}

.checkbox-wrapper-21 .control__indicator:after {
    content: '';
    position: absolute;
    display: none;
}

.checkbox-wrapper-21 .control input:checked ~ .control__indicator:after {
    display: block;
}

.checkbox-wrapper-21 .control--checkbox .control__indicator:after {
    left: 8px;
    top: 5px;
    width: 5px;
    height: 9px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.checkbox-wrapper-21 .control--checkbox input:disabled ~ .control__indicator:after {
    border-color: #ffffff;
}

.popup .checkbox-wrapper-21 .control {
    display: block;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    font-size: 14px;
    max-width: 100%;
}


.fancybox-content {
    overflow: hidden;
}

.menu-footer-container .sub-menu, .menu_in_burger .sub-menu  {
    display: none; /* Скрываем подменю по умолчанию */
    opacity: 0; /* Начальная непрозрачность */
    transition: all 0.5s ease; /* Плавный переход */
    max-height: 0; /* Начальная высота */
}

.menu-footer-container .sub-menu.show, .menu_in_burger .sub-menu.show  {
    display: flex; /* Показываем подменю */
    flex-direction: column;
    opacity: 1; /* Полная непрозрачность */
    max-height: 500px; /* Максимальная высота для анимации */
    margin-top: 15px;
}

.menu-footer-container .sub-menu.show a, .menu_in_burger .sub-menu.show a {
    color: #dddddd;
    font-size: 13px;
}

#footer-menu .menu-item-has-children > a, .menu_in_burger .menu-item-has-children > a {
    position: relative;
}
#footer-menu .menu-item-has-children > a:after, .menu_in_burger .menu-item-has-children > a:after {
    content: '▼';
    position: absolute;
    right: -12px;
    top: -4px;
}

#footer-menu .menu-item-has-children, .menu_in_burger  .menu-item-has-children {
    padding-top: 0;

}

#footer-menu .menu-item, .menu_in_burger .menu-item {
    margin-bottom: 10px;
}

.header-menu-mobile {
    width: 100%;
}


.main-navigation .sub-menu li {
    padding: 5px 0 !important;
}

.header_services_desc {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
}
@media (max-width: 1440px) {
    .header_services_desc {
        flex-direction: column;
    }
    .header_page_block_first {
        width: 100%;
    }

    .header_page_block_two {
        width: 100%;
    }
}
.btn_file .wpcf7-form-control-wrap {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.btn_file .wpcf7-form-control-wrap .btn_nord {
	width: 100%;
}

.error-404 {
	padding:150px 0;
}
