html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

body {
    font-family: 'Cera Pro';
    color: #1e1e1e;
    font-size: 19px;
    line-height: 1.5;
    font-weight: 400;
    background: #e5f1e3;
}

a {
    transition: all 0.3s;
}

.container {
    max-width: 1408px;
    padding-left: 20px;
    padding-right: 20px;
}

.container-fluid {
    padding-left: 20px;
    padding-right: 20px;
}

.site-header {
    background: #fff;
    padding: 7px 15px;
}

.header_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn {
    background: #42AC35;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    border-radius: 5px;
    padding: 16px 59px;
}

.btn:focus, .btn:active {
    box-shadow: none;
}

.btn:hover {
    background: #48BB3A;
    color: #D8F360;
}

.site-header .btn {
    font-size: 16px;
    padding: 11px 30px;
}

.site-header .menu-item {
    font-size: 20px;
    font-weight: 500;
}

.site-header .menu-item a {
    color: #1e1e1e;
    text-decoration: none;
}

.site-header .menu-item a:hover {
    color: #117407;
}

.site-header .nav {
    justify-content: space-between;
    gap: 60px;
}

.site-footer {
    background: #fff;
    padding: 15px;
}

.footer_contant {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

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

.social_link {
    display: block;
    min-width: 24px;
    width: 24px;
    text-decoration: none;
}

.copyright {
    font-size: 14px;
}

.main_wrapper {
    padding: 32px 15px;
    overflow: hidden;
}

.site-main {
    padding: 16px 32px 15px;
    padding-bottom: 100px;
    overflow: hidden;
}

.contain_img {
    overflow: hidden;
}

.cover_img {
    overflow: hidden;
}

.contain_img img {
    object-fit: contain;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.cover_img img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.hp_hero_img {
    padding: 25px;
    border-radius: 100px 18px 18px 18px;
    background: #42AC35;
}

.hp_hero_container {
    display: flex;
    gap: 16px;
}

.hp_hero_links {
    width: 1048px;
}

.hp_hero_links .swiper-slide {
    height: auto;
}

.hero_link {
    overflow: hidden;
    background: #fff;
    border-radius: 18px;
    text-decoration: none;
    color: #117407;
    font-weight: 700;
    font-size: 32px;
    line-height: 1.3;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.hero_link:hover {
    color: #42AC35;
}

.hero_link_txt {
    display: block;
    padding: 64px 30px 50px;
}

.hero_link_img {
    display: block;
    border-radius: 18px;
}

.hero_link_img img {
    transition: all .3s;
}

.hero_link:hover .hero_link_img img {
    transform: scale(1.05);
}

.hp_join {
    padding: 120px 0;
}

.hp_join .btn {
    margin-bottom: -34px;
    position: relative;
    z-index: 2;
}

h2 {
    color: #117407;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 56px;
    line-height: 1.2;
    margin-bottom: 50px;
}

h3 {
    text-transform: uppercase;
    font-size: 32px;
    line-height: 1.3;
    font-weight: 700
}

.hp_join_images {
    display: flex;
    align-items: center;
    gap: 32px;
    position: relative;
    z-index: 1;
}

.hp_join_images {
    display: flex;
    align-items: center;
    gap: 32px;
}

.hp_join_small_imgs {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.hp_join_small_img {
    height: 140px;
    width: 208px;
    border-radius: 18px;
    transition: all 1s ease-in-out;
    position: relative;
}

#hp_join_small_imgs1 .hp_join_small_img {
    right: -52px;
}

#hp_join_small_imgs1.active .hp_join_small_img {
    right: 0;
}

#hp_join_small_imgs2 .hp_join_small_img {
    left: -52px;
}

#hp_join_small_imgs2.active .hp_join_small_img {
    left: 0;
}

.hp_join_big_img {
    height: 420px;
    width: 100%;
    border-radius: 80px;
}

.statistics {
    background: #D8F360;
    padding: 40px 0;
    border-radius: 18px 18px 0 0;
}

.stats {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px;
}

.stats_item {
    max-width: 328px;
    width: 100%;
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    text-align: center;
}

.stats_item h3 {
    text-transform: uppercase;
    color: #42AC35;
    font-weight: 900;
    font-size: 60px;
    line-height: 1.2;
    margin-bottom: 0;
}

.about {
    padding: 80px 0;
    background: #fff;
}

.about h3 {
    margin-bottom: 20px;
    color: #42AC35;
}

.about_right {
    margin-left: auto;
    max-width: 600px;
}

.about_img {
    border-radius: 18px;
    border-top-left-radius: 80px;
    height: 424px;
    position: relative;
    z-index: 2;
}

.about_img_ttl {
    background: #D8F360;
    border-radius: 0 0 18px 18px;
    padding: 30px;
    padding-bottom: 10px;
    position: relative;
    margin-top: -20px;
    text-align: center;
    line-height: 1.3;
    color: #42AC35;
    font-weight: 700;
    font-size: 32px;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    top: auto;
    bottom: 0;
    gap: 25px;
}

.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    height: 10px;
    width: 10px;
    min-width: 10px;
    opacity: 1;
    background: #ddf5da;
    margin: 0;
}

.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    height: 15px;
    width: 15px;
    min-width: 15px;
    background: #42AC35;
}

.preferens {
    padding: 80px 0;
    background: #42AC35;
    border-radius: 0 0 18px 18px;
    color: #fff;
    font-weight: 700;
    color: #fff;
}

.preferens_row {
    display: flex;
    gap: 32px;
    justify-content: space-between;
}

.preferens_icon {
    border-radius: 50%;
    background: #D8F360;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 65px;
    width: 65px;
    min-width: 65px;
    margin-bottom: 20px;
}

.preferens h3 {
    color: #D8F360;
    margin-bottom: 20px;
}

.preferens_item {
    max-width: 360px;
}

.histories {
    padding: 120px 0;
}

.history_photo {
    border-radius: 80px 18px 80px 18px;
    height: 425px;
    max-width: 600px;
}

.histories h3 {
    color: #42AC35;
    margin-bottom: 10px;
}

.histories .history_post {
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 20px;
}

.histories .swiper {
    padding-bottom: 45px;
    max-width: 1572px;
    padding-left: 82px;
    padding-right: 82px;
    margin-bottom: 120px;
}

.histories .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet, .hp_hero_links  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    background: #fff;
}

.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active, .hp_hero_links .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #42AC35;
}

.histories .swiper-pagination-bullets.swiper-pagination-horizontal {
    padding-left: 82px;
}

.swiper-button-prev::after, .swiper-rtl .swiper-button-next::after {
    content: url(../img/arrow-left.svg);
    font-size: 17px;
    transition: all .3s;
}

.swiper-button-next::after, .swiper-rtl .swiper-button-prev::after {
    content: url(../img/arrow-right.svg);
    font-size: 17px;
    transition: all .3s;
}

.swiper-button-prev, .swiper-button-next {
    transition: all .3s;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.swiper-button-prev:hover, .swiper-button-next:hover {
    background: #8ddd85;
}

.swiper-button-disabled:hover {
    background: #8ddd85;
}

.history_video {
    overflow: hidden;
    border-radius: 18px;
}

.history_video iframe {
    width: 100%;
    margin-bottom: 0;
    padding-bottom: 0;
    border: none;
}

.hp_news {
    background: #fff;
    border-radius: 18px;
    padding: 80px 0;
}

.news_item {
    overflow: hidden;
    border-radius: 80px 18px 18px 18px;
    background: #E0F0DF;
    color: #1e1e1e;
    text-decoration: none;
    display: block;
    transition: all .3s;
}

.news_item:hover {
    border-radius: 18px 18px 18px 18px;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,.1);
}

.news_item_img {
    height: 232px;
    background: url(../img/news.jpg) no-repeat center center / cover;
}

.news_item_info {
    padding: 20px;
}

.news_item_date {
    background: #8DDD85;
    padding: 3px 10px;
    border-radius: 40px;
    font-size: 14px;
    width: max-content;
    margin-bottom: 15px;
    transition: all .3s;
}

.news_item h3 {
    font-weight: 700;
    line-height: 1.3;
    font-size: 20px;
    text-transform: none;
}

.corp_life {
    padding-top: 120px;
    padding-bottom: 70px;
}

.vacancy_header {
    background: #42AC35;
    border-radius: 18px;
    display: flex;
    align-items: stretch;
    margin-bottom: 32px;
}

.vacancy_header_conent {
    padding: 60px;
    width: 100%;
}

.vacancy_header h1 {
    color: #fff;
    font-weight: 700;
    font-size: 56px;
    line-height: 1.2;
    margin-bottom: 40px;
    text-transform: uppercase;
    max-width: 928px;
}

.vacancy_thumbnail {
    border-radius: 80px 18px 18px 18px;
    max-width: 672px;
    min-width: 672px;
    height: auto;
}

.vacancy_zp {
    font-weight: 700;
    font-size: 32px;
    line-height: 1.3;
    color: #D8F360;
    width: 328px;
}

.gap32 {
    gap: 32px;
}

.white_btn {
    background: #fff;
    color: #42AC35;
}

.vacancy_header .btn {
    min-width: 380px;
}

.zp_row {
    margin-bottom: 40px;
}

.vacancy_header_preferens {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
}

.vacancy_header_preferens .preferens_icon {
    margin-bottom: 0;
    height: 50px;
    width: 50px;
    min-width: 50px;
}

.vacancy_desc {
    background: #fff;
    border-radius: 18px;
    padding: 40px 0 80px;
}

.inner_content {
    padding-top: 80px;
}

.vacancy_desc h3 {
    font-weight: 700;
    font-size: 20px;
    text-transform: none;
    margin-bottom: 20px;
}

ul {
    list-style-image: url(../img/Dot.png);
    padding-left: 20px;
}

.vacancy_info {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
}

.vacancy_info_ttl {
    min-width: 208px;
    max-width: 208px;
}

.vacancy_info_ttl h3 {
    margin-bottom: 0;
}

.vac_tel, .vac_tel:hover {
    color: #1e1e1e;
    text-decoration: none;
}

.vacancy_links {
    margin-top: 40px;
}

.vacancy_links .btn {
    min-width: 380px;
}

.vacancy_back {
    color: #42AC35;
    font-weight: 700;
    font-size: 16px;
    text-decoration: none;
    transition: all .3s;
    display: flex;
    align-items: center;
}

.vacancy_back svg{
    margin-right: 10px;
}

.vacancy_back svg * {
    stroke: #42AC35;
    transition: all .3s;
}

.vacancy_back:hover svg * {
    stroke: #117407;
}

.vacancy_back:hover {
    color: #117407;
}

.vacancy_back span {
    text-transform: lowercase;
    padding-left: 5px;
}

.vacancy_poruch {
    border-radius: 18px;
    padding: 20px;
    margin-bottom: 32px;
    background: #e0f0df;
}

.vacancy_poruch h3,.vacancy_perevagi h3 {
    text-transform: uppercase;
    color: #42AC35;
    text-align: center;
    font-size: 24px;
    margin-bottom: 15px;
}

.vacancy_perevagi {
    background: #D8F360;
    border-radius: 18px;
    padding: 20px;
}

.perevagi_img {
    background: url(../img/perevagi.jpg) no-repeat center center / cover;
    border-radius: 100px 18px 100px 18px;
    height: 289px;
    margin-bottom: 15px;
}

.dep_header h1 {
    max-width: 700px;
}

.term_switcher {
    display: flex;
    align-items: center;
    gap: 15px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 20px;
    color: #42AC35;
    border: 1px solid #42AC35;
    padding: 12px 20px;
    border-radius: 18px;
    background: #fff;
    transition: all .3s;
}

.term_switcher.active {
    background: #42AC35;
    color: #fff;
}

.term_switcher:hover {
    background: #48BB3A;
    color: #fff;
    border-color: #48BB3A;
}

.term_switcher_icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 65px;
    height: 65px;
    min-width: 65px;
    background: #8DDD85;
    border-radius: 50%;
    transition: all .3s;
}

.term_switcher.active .term_switcher_icon, .term_switcher:hover .term_switcher_icon {
    background: #D8F360;
}

.term_switchers {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

.no_vacancy {
    border-radius: 18px;
    background: #e0f0df;
    padding: 40px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
}

.no_vacancy_icon {
    height: 65px;
    width: 65px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: url(../img/alert.svg) no-repeat center center / cover;
}

.view_toggles {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border: 1px solid #cecece;
    border-radius: 5px;
    width: 82px;
    height: 44px;
    padding: 1px;
    background: #fff;
    min-width: 82px;
}

.view_toggle {
    /*border: 1px solid #fff;*/
    border-radius: 5px;
    background: #fff;
    transition: all .3s ease-in-out;
    cursor: pointer;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 3px;
    padding: 12px;
}

.view_toggle#view_grid {
    grid-template-columns: repeat(3, 1fr);
}

.view_toggle span {
    border-radius: 3px;
    background: #646464;
    height: 3px;
    display: block;
    width: 100%;
    transition: all .3s ease-in-out;
}

.view_toggle.active, .view_toggle:hover {
    background: #e0f0df;
}

.view_toggle.active span, .view_toggle:hover span {
    background: #117407;
}

.finded_vacancies {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.finded_vacancies.finded_vacancies_lines {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
}

.finded_vacancy {
    background: #E0F0DF;
    border-radius: 18px;
    padding: 30px;
    text-decoration: none;
    transition: all 0.3s;
    color: #1e1e1e;
    position: relative;
    border: 1px solid #E0F0DF;
    display: block;
    overflow: hidden;
}

.finded_vacancy_ttl {
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 16px;
    line-height: 1.3;
    transition: all 0.3s;
}

.finded_vacancy.hot_vacancy {
    background: #FFDDD6;
    border: 1px solid #FFDDD6;
}

.finded_vacancy:hover {
    background: #fff;
    border: 1px solid #E0F0DF;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.finded_vacancy:hover .finded_vacancy_ttl {
    color: #117407;
}

.hot_label {
    background: rgba(255,255,255,0.7) url(../img/Flame.svg)no-repeat 8px center;
    padding: 3px 8px;
    padding-left: 32px;
    color: #FF4B23;
    position: absolute;
    top: -2px;
    right: -2px;
    border-radius: 15px 18px 0 15px;
    font-size: 14px;
    transition: all 0.3s;
}

.finded_vacancy:hover .hot_label {
    background: #FFDDD6 url(../img/Flame.svg)no-repeat 8px center;
}

.select {
    border: 1px solid #CECECE;
    background: #fff;
    color: #646464;
    padding: 15px 16px;
    padding-right: 56px;
    border-radius: 5px;
    position: relative;
    z-index: 1;
    cursor: pointer;
}

.label{
    background: #fff;
    width: max-content;
    padding: 2px 5px;
    position: relative;
    transform: translate(11px, 50%);
    font-size: 13px;
    line-height: 1.2;
    color: #646464;
    z-index: 2;
}

.select:after {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    content: url(../img/chevron.svg);
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s;
}

.select.active:after {
    transform: translateY(-50%) rotate(180deg);
}

.select_drop {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    max-height: 222px;
    background: #fff;
    padding: 6px;
    border-radius: 5px;
    box-shadow: 0 2px 6px rgba(0,0,0,.1);
    display: none;
}

.select_item {
    padding: 10px;
    background: #fff;
    border-radius: 5px;
    transition: all 0.3s;
    cursor: pointer;
}

.select_item:hover {
    background: #E0F0DF;
    color: #42AC35;
}

.form_bottom_row {
    display: flex;
    align-items: center;
    gap: 40px;
    justify-content: space-between;
}

.form_checboxes {
    display: flex;
    gap: 40px;
    align-items: center;
}

.form_checboxes label {
    display: flex;
    gap: 15px;
}

input[type="checkbox"] {
    width: 24px;
    height: 24px;
    min-width: 24px;
    position: relative;
    background: url(../img/Unselected.svg) no-repeat center center / contain;
    appearance: none;
    -webkit-appearance: none;
}

input[type="checkbox"]:checked {
    background: url(../img/Selected.svg) no-repeat center center / contain;
}

.post_thumbnail {
    height: 424px;
    border-radius: 100px 18px 100px 18px;
}

.post_article h1 {
    color: #117407;
    font-weight: 700;
    font-size: 32px;
    margin-bottom: 20px;
    text-transform: uppercase;
    line-height: 1.2;
}

.post_date {
    padding: 3px 10px;
    border-radius: 30px;
    width: max-content;
    font-size: 14px;
    background: #8DDD85;
    margin-bottom: 20px;
}

.post_gallery {
    background: #42AC35;
    border-radius: 18px;
    padding: 50px;
    margin-top: 40px;
}

.post_gallery_img {
    border-radius: 18px;
    height: 317px;
}

.post_gallery .swiper, .corp_life_img_swiper {
    max-width: 1572px;
    padding-left: 82px;
    padding-right: 82px;
}

.post_gallery .swiper-button-prev::after, .post_gallery .swiper-rtl .swiper-button-next::after {
    content: url(../img/arrow-left-y.svg);
}

.post_gallery .swiper-button-next::after, .post_gallery .swiper-rtl .swiper-button-prev::after {
    content: url(../img/arrow-right-y.svg);
}

.post_gallery .swiper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 82px;
    background: #42AC35;
    z-index: 2;
}

.post_gallery .swiper:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 82px;
    background: #42AC35;
    z-index: 2;
}

.cat_heading {
    color: #117407;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 56px;
    text-align: center;
    margin-bottom: 50px;
}

.posts_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.posts_grid .news_item_img {
    height: 317px;
    background: none;
}

.news_item h3 {
    transition: all .3s;
}

.news_item:hover h3 {
    color: #117407;
}

.news_item:hover .news_item_date {
    background: #D8F360;
}

.posts_pagination {
    margin-top: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    height: 50px;
    width: 50px;
    min-width: 50px;
    background: #fff;
    color: #42AC35;
    border: 1px solid #42AC35;
    text-decoration: none;
    transition: all .3s;
}

.page-numbers.current {
    background: #42AC35;
    color: #fff;
}

.next.page-numbers {
    border: none;
    background: url(../img/arrow-right.svg) no-repeat center center;
}

.prev.page-numbers {
    border: none;
    background: url(../img/arrow-left.svg) no-repeat center center;
}

.history_grid {
    gap: 32px;
}

.history_item {
    padding: 32px;
    border-radius: 18px;
    background: #fff;
}

.history_header {
    border-radius: 18px;
    background: #D8F360;
    padding: 20px;
    margin-bottom: 20px;
}

.history_item h3 {
    color: #117407;
    font-weight: 700;
    font-size: 32px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.history_item .history_post {
    font-weight: 700;
    font-size: 24px;
}

.history_item .history_photo {
    max-width: 600px;
}

.history_item_sec {
    background: #e0f0df;
}

.history_item_sec .history_header {
    background: #8DDD85;
}

.lp_join {
    padding: 0;
    margin-bottom: 50px;
}

.learn_content h1 {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 52px;
    color: #117407;
    margin-bottom: 50px;
}

.learn_content h2 {
    color: #42AC35;
    font-weight: 700;
    font-size: 36px;
    margin-bottom: 32px;
    line-height: 1.3;
}

.mozhlivist h2 {
    color: #117407;
}

.ln_mozh_img {
    border-radius: 80px 18px 80px 18px;
    height: 424px;
    max-width: 600px;
}

.ln_mozh_stats, .ln_preims {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
    margin-top: 2rem;
}

.ln_mozh_stats {
    border-radius: 18px;
    padding: 32px;
    background: #D8F360;
}

.ln_mozh_stats strong {
    font-weight: 700;
    font-size: 24px;
}

.ln_preim {
    display: flex;
    align-items: center;
    gap: 15px;
}

.ln_preim_icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #D8F360;
    width: 65px;
    height: 65px;
    min-width: 65px;
}

.corp_lige_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    margin-bottom: 50px;
}

.corp_life_item {
    border-radius: 18px;
    background: #D8F360;
}

.corp_life_item_img {
    border-radius: 18px 18px 0 0;
    height: 317px;
}

.corp_life_item_img iframe {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.corp_life_ttl {
    border-radius: 0 0 18px 18px;
    padding: 15px 20px 20px;
    background: #D8F360;
    line-height: 1.3;
    font-weight: 700;
    font-size: 20px;
}

.corp_toggles {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 50px;
}

.corp_toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    background: #fff;
    border-radius: 12px;
    border: 1px solid #42AC35;
    color: #42AC35;
    font-weight: 700;
    font-size: 16px;
    height: 50px;
    transition: all .3s;
    padding: 0 20px;
    cursor: pointer;
}

.corp_toggle svg * {
    fill: #42AC35l
}

.corp_toggle.active, .corp_toggle:hover {
    background: #42AC35;
    color: #fff;
}

.corp_toggle.active svg *, .corp_toggle:hover svg * {
    fill: #D8F360;
}

.hp_news .news_item {
    height: 100%;
}

.hp_corp_life {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
}

.hp_corp_life_ttl {
    position: absolute;
    width: 100%;
    height: 50%;
    background: linear-gradient(to top, #000, rgba(0,0,0,0));
    z-index: 2;
    left: 0;
    bottom: -50%;
    padding: 20px;
    display: flex;
    align-items: flex-end;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    color: #fff;
    transition: all .3s ease;
}

.hp_corp_life:hover .hp_corp_life_ttl {
    bottom: 0;
}

.corp_life_img {
    height: 317px;
    border-radius: 18px;
    position: relative;
}

.corp_life_img_swiper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 82px;
    background: #e5f1e3;
    z-index: 2;
}

.corp_life_img_swiper:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: 82px;
    background: #e5f1e3;
    z-index: 2;
}

.corp_life_video_swiper .corp_life_item_img {
    height: 184px;
}

.corp_life_video_swiper .swiper-slide {
    height: auto;
}

.corp_life_video_swiper .swiper-wrapper {
    align-items: stretch;
}

.corp_life_video_swiper .corp_life_item {
    height: 100%;
}

.map {
    height: 600px;
}

.leaflet-tile-pane {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.modal {
    background: #E0F0DFB3;
}

.modal-content {
    border: none;
    border-radius: 18px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

.modal .btn-close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #42ac35;
    color: #fff;
    transition: all .3s;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 45px;
    line-height: 45px;
    opacity: 1;
    z-index: 1000;
}

.modal .btn-close:after {
    content: '×';
}

.modal .btn-close:hover {
    color: #d8f360;
    background: #48BB3A;
}

.form_container {
    padding: 80px 120px;
    margin: 0 auto;
}

.form_container input {
    display: block;
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
}

.form_container h3 {
    text-transform: none;
    font-size: 24px;
    margin-bottom: 20px;
}

.form_desc {
    margin-bottom: 20px;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    text-align: center;
}

.form_container textarea {
    border: 1px solid #CECECE;
    height: 130px;
    width: 100%;
    max-width: 380px;
    margin: 0 auto 40px;
    border-radius: 5px;
    display: block;
    resize: none;
}

.form_container p {
    margin-bottom: 0;
}

.form_container br {
    display: none;
}

.file_select {
    color: #42AC35;
    font-size: 22px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px dashed #42AC35;
    height: 66px;
    width: 100%;
    max-width: 380px;
    margin: 0 auto 20px;
    background: #e0f0df;
    cursor: pointer;
    transition: all .3s;
}

.file_select:hover {
    color: #fff;
    background: #42AC35;
}

.file_name {
    font-size: 17px;
    text-align: center;
    margin-bottom: 20px;
}

.burger {
    position: relative;
    width: 24px;
    height: 20px;
    cursor: pointer;

}

.burger .line {
    background: #42AC35;
    border-radius: 2px;
    height: 2px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: all .6s;
}

.burger .line:nth-child(2) {
    top: 9px;
}

.burger .line:nth-child(3) {
    top: 18px;
}

.burger.active .line:nth-child(2) {
    opacity: 0;
}

.burger.active .line:nth-child(1) {
    top: 9px;
    transform: rotate(45deg);
}

.burger.active .line:nth-child(3) {
    top: 9px;
    transform: rotate(-45deg);
}

.mob_menu {
    position: fixed;
    top: -100vh;
    left: 0;
    background: #fff;
    padding: 65px 20px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 32px;
    width: 100%;
    max-width: 390px;
    height: 100vh;
    overflow: auto;
    z-index: 1000;
    transition: all .6s;
}

.mob_menu.active {
    top: 0;
}

.mob_menu .btn {
    width: 100%;
    font-size: 16px;
}

.mob_menu .nav {
    gap: 20px;
}

.mob_menu .menu-item a {
    text-decoration: none;
    color: #1e1e1e;
    font-weight: 500;
    font-size: 20px;
}

.kama_breadcrumbs {
    display: flex;
    align-items: center;
    font-size: 13px;
    text-transform: uppercase;
    color: #42AC35;
    overflow: auto;
    gap: 10px;
    margin-bottom: 16px;
    white-space: nowrap;
}

.kama_breadcrumbs a {
    text-decoration: none;
    color: #1e1e1e;
}

.kama_breadcrumbs a:hover {
    color: #42AC35;
}

.kb_sep {
    width: 16px;
    min-width: 16px;
    height: 16px;
    background: no-repeat center center / contain;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 13L11 8L6 3' stroke='%2342AC35' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
}

#callback input, .market_content input {
    position: relative;
    border: 1px solid #cecece;
    border-radius: 5px;
    padding: 12px 16px;
    width: 100%;
    height: 56px;
    margin-bottom: 32px;
}

#callback label, .market_content label {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 1px 10px;
    width: max-content;
    display: block;
    margin-left: 6px;
    font-size: 13px;
    line-height: 120%;
    color: #646464;
    transform: translateY(50%);
}

#callback .form_container {
    width: 100%;
}

#callback input.btn {
    max-width: 380px !important;
    height: 66px;
}

#callback .form_container input, .market_content input {
    max-width: 100%;
    margin-bottom: 32px;
}

.market_img {
    text-align: center;
    margin-bottom: 28px;
}

.market_img img {
    border-radius: 18px;
}

.market_content h2 {
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    color: #1e1e1e;
    margin-bottom: 40px;
    text-transform: none;
}

.market_content li {
    margin-bottom: 10px;
}

.wpcf7-form br {
    display: none;
}

.form_block {
    border-radius: 18px;
    padding: 20px;
    background: rgba(224, 240, 223, 0.5);
    margin-bottom: 40px;
}

.wpcf7-radio .wpcf7-list-item {
    display: block;
    margin: 0;
}

.wpcf7-radio .wpcf7-list-item label {
    background: none;
    padding: 0;
    margin-bottom: 20px;
    max-width: 100%;
    font-weight: 400;
    font-size: 19px;
    line-height: 1.5;
    color: #1e1e1e;
    margin-left: 0;
    transform: translateY(0);
    display: flex;
    align-items: center;
}

.market_content input[type="radio"] {
    display: inline-block;
    width: 24px;
    min-width: 24px;
    height: 24px;
    padding: 0;
    margin-right: 15px;
    background: none;
    margin-bottom: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 50%;
    border: 2px solid #42AC35;
}

.market_content input[type="radio"]:checked {
    border: 6px solid #42AC35;
}

.market_content input.wpcf7-submit {
    max-width: 380px;
}

@media screen and (max-width: 1639.8px) {
    .vacancy_thumbnail {
        min-width: 400px;
    }
}

@media screen and (max-width: 1399.8px) {
    .site-header .nav {
        gap: 32px;
    }
    .hp_hero_links {
        width: 900px;
    }
    .vacancy_thumbnail {
        display: none;
    }
    .dep_header .vacancy_thumbnail {
        display: block;
    }
}

@media screen and (max-width: 1199.8px) {
    /*    .hp_hero_img {
            display: none;
        }*/
    .hp_hero_container {
        flex-direction: column;
    }
    .hp_hero_links {
        width: 100%;
    }
    .stats {
        gap: 32px;
        justify-content: center;
    }
    .history_video iframe {
        height: 600px;
    }
    .dep_header .vacancy_thumbnail {
        display: none;
    }
    .dep_header h1 {
        max-width: 100%;
    }
    .term_switchers {
        grid-template-columns: repeat(2, 1fr);
    }
    .form_bottom_row {
        flex-wrap: wrap;
    }
    .corp_life_item_img {
        height: 220px;
    }
}

@media screen and (max-width: 991.8px){
    .view_toggles {
        display: none;
    }
    .hp_join_small_imgs {
        display: none;
    }
    .about_right {
        margin-right: auto;
        margin-bottom: 32px;
    }
    .about .swiper {
        padding-bottom: 30px;
    }
    .preferens_row {
        flex-direction: column;
    }
    .preferens_item {
        max-width: 100%;
    }
    .histories .swiper {
        padding: 0 20px;
        margin-bottom: 50px;
    }
    .histories .swiper-button-next, .histories .swiper-button-prev, .corp_life_img_swiper .swiper-button-next,
    .corp_life_img_swiper .swiper-button-prev, .post_gallery .swiper-button-next, .post_gallery .swiper-button-prev,
    .post_gallery .swiper:before, .corp_life_img_swiper:before, .post_gallery .swiper:after, .corp_life_img_swiper:after {
        display: none;
    }
    .history_photo {
        margin: 0 auto 32px;
    }
    .histories .swiper-pagination-bullets.swiper-pagination-horizontal {
        padding: 0;
        bottom: auto;
        top: 400px;
        justify-content: center;
    }
    .history_video iframe {
        height: 450px;
    }
    .post_gallery .swiper, .corp_life_img_swiper {
        padding: 0;
    }
    .post_gallery {
        padding: 15px;
    }
    .post_gallery .swiper {
        overflow: visible;
    }
    .hp_hero_links .swiper-slide {
        width: 339px;
    }
    .hp_hero_links .swiper {
        padding-bottom: 30px;
    }
    .hp_hero_links .swiper {
        overflow: visible;
    }
    .vacancy_header_preferens {
        margin-top: 16px;
    }
    .zp_row {
        flex-direction: column;
        align-items: flex-start;
    }
    .finded_vacancies {
        grid-template-columns: repeat(1, 1fr);
    }
    .form_checboxes {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
    .term_switchers {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .form_container {
        padding: 80px 40px;
    }
    .posts_grid, .corp_lige_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 767.8px){
    .main_wrapper {
        padding: 20px;
    }
    .hp_join, .histories {
        padding: 60px 0;
    }
    h2, .vacancy_header h1, .cat_heading, .learn_content h1 {
        font-size: 38px;
    }
    h2, .cat_heading, .learn_content h1 {
        margin-bottom: 25px;
    }
    .vacancy_header h1, lp_join {
        margin-bottom: 20px;
    }
    .learn_content h2 {
        margin-bottom: 10px;
    }
    .hp_join_big_img {
        height: 158px;
        border-radius: 40px;
    }
    .hp_join .btn {
        margin-bottom: 16px;
    }
    .statistics, .vacancy_header_conent, .finded_vacancy {
        padding: 20px;
    }
    .stats {
        gap: 5px;
    }
    .preferens_row, .gap32, .finded_vacancies, .posts_grid, .ln_mozh_stats, .ln_preims {
        gap: 16px;
    }
    .stats_item h3 {
        font-size: 45px;
    }
    .stats_item, history_photo, .histories .history_post, .vacancy_poruch h3, .vacancy_perevagi h3,
    .vacancy_header_preferens, .finded_vacancy_ttl, .ln_mozh_stats strong, .history_item .history_post {
        font-size: 20px;
    }
    .about_img_ttl, h3, .hero_link, .post_article h1, .learn_content h2 {
        font-size: 24px;
    }
    .vacancy_zp {
        font-size: 26px;
    }
    .about_right, history_photo, .corp_toggles  {
        margin-bottom: 16px;
    }
    body {
        font-size: 17px;
    }
    .market_content h2 {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .market_content h3 {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .news_item h3, .preferens_item, .corp_life_ttl, .vacancy_desc h3, .term_switcher {
        font-size: 18px;
    }
    .inner_content {
        padding-top: 40px;
    }
    .about, .preferens, .hp_news {
        padding: 40px 0;
    }
    .history_video iframe {
        height: 350px;
    }
    .corp_life {
        padding-top: 60px;
        padding-bottom: 40px;
    }
    .corp_life .swiper-slide {
        width: 303px;
    }
    .corp_life .swiper {
        overflow: visible;
    }
    .preferens h3 {
        margin-bottom: 10px;
    }
    .hp_corp_life .corp_life_img {
        height: 214px;
        border-radius: 18px;
        margin-bottom: 10px;
    }
    .hp_corp_lif {
        border-radius: 0;
    }
    .hp_corp_life_ttl {
        height: auto;
        position: relative;
        background: none;
        color: #1e1e1e;
        font-size: 18px;
        top: auto;
        bottom: auto;
        padding: 0;
    }
    .hero_link_txt {
        padding: 62px 20px 30px;
    }
    .hero_link_img {
        height: 232px;
    }
    .zp_row {
        margin-bottom: 0;
    }
    .site-main {
        padding: 10px 0 40px;
    }
    .vac_tels {
        flex-direction: column;
    }
    .form_bottom_row {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }
    .form_container {
        padding: 40px 20px;
    }
    .posts_grid .news_item_img, .corp_life_item_img {
        height: 220px;
    }
    .ln_mozh_stats, .ln_preims {
        margin-top: 1rem;
        grid-template-columns: repeat(1, 1fr);
    }
    .history_item {
        padding: 16px;
    }
}

@media screen and (max-width: 575.8px){
    .about_img, .history_photo, .news_item {
        border-radius: 40px 18px 18px 18px;
    }
    .perevagi_img, .post_thumbnail, .ln_mozh_img {
        border-radius: 40px 18px 40px 18px;
    }
    .about_img, .post_thumbnail, .ln_mozh_img {
        height: 220px;
    }
    .history_photo {
        height: 247px;
    }
    .histories .swiper-pagination-bullets.swiper-pagination-horizontal {
        top: 222px;
    }
    .socials {
        margin-bottom: 16px;
    }
    .social_link {
        min-width: 32px;
        width: 32px;
    }
    .vacancy_header .btn, .vacancy_links .btn {
        min-width: 0;
        width: 100%;
    }
    .vacancy_info {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    .form_bottom_row .btn {
        padding-left: 15px;
        padding-right: 15px;
        width: 100%;
    }
    .posts_grid, .corp_lige_grid {
        grid-template-columns: repeat(1, 1fr);
    }
    .page-numbers {
        width: 40px;
        height: 40px;
        min-width: 40px;
    }
}