* {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
    transition: all .3s ease-in-out;
}

:root {
    --color-red: #ED5338;
    --color-red-80: #F17757;
    --color-red-20: #FCD9C9;
    --color-red-8: #FCEFE8;
    --color-text: #363636;
    --color-grey-extra-light: #FAFAFA;
    --color-brown: #704232;
    --color-beige: #C59368;
    --color-grey-50: #A5A5A5;
    --color-grey-40: #C6C6C6;
    --color-grey-20: #E3E3E3;
    --color-grey-10: #F2F2F2;

    --header-height: 158px;
}

*::selection {
    background-color: var(--color-red);
    color: white;
}

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

body {
    background: var(--color-grey-10);
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    line-height: 1.21875;
    font-weight: 500;
    font-style: normal;
    color: var(--color-text);
    overflow-x: hidden;
    z-index: 1;
}

body, div, footer, header, main, section, nav, figure {
    display: block;
    position: relative;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

img {
    max-width: 100%;
}

a {
    color: var(--color-text);
    text-decoration: none;
}

a img {
    vertical-align: bottom;
}

button {
    font-family: 'Montserrat', sans-serif;
    flex-shrink: 0;
    white-space: nowrap;
    cursor: pointer;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
}

h1 {
    font-size: 48px;
    line-height: 1.2;
}

h2 {
    font-size: 42px;
    line-height: 1.3;
}

h3 {
    font-size: 25px;
    line-height: 1.26;
}

.button_red, .button_border {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background-color: var(--color-red);
    color: white;
    font-size: 16px;
    line-height: 1.25;
    font-weight: 500;
    border-radius: 40px;
    flex-shrink: 0;
    cursor: pointer;
}

.button_border {
    background: transparent!important;
    color: var(--color-text)!important;
    border: 1px solid var(--color-text)!important;
    text-decoration: none!important;
}

.button_red:hover {
    background-color: var(--color-text);
    color: white;
}

.button_border:hover {
    background-color: var(--color-text)!important;
    color: white!important;
}

.button_red_l {
    height: 60px;
    padding: 20px 36px;
}

.button_red_s {
    height: 48px;
    padding: 14px 36px;
}

.inline_flex, .button_red.inline_flex {
    display: inline-flex;
}

.bold {
    font-weight: 600;
}

.icon {
    flex-shrink: 0;
}

.mask_icon {
    display: block;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    background-color: var(--color-text);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: 50% 50%;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: 50% 50%;
}

.icon_right {
    mask-image: url('../img/icons/arrow_right.svg');
    -webkit-mask-image: url('../img/icons/arrow_right.svg');
}

.icon_left {
    mask-image: url('../img/icons/arrow_left.svg');
    -webkit-mask-image: url('../img/icons/arrow_left.svg');
}

ul.menu {
    list-style: none;
}

.hidden {
    display: none!important;
}

.mt {
    margin-top: 18px;
}

.mt_0 {
    margin-top: 0!important;
}

.mb {
    margin-bottom: 50px;
}

.color_grey_10 {
    color: var(--color-grey-10);
}

.color_grey_20 {
    color: var(--color-grey-20);
}

.color_grey_40 {
    color: var(--color-grey-40);
}

.color_grey_50 {
    color: var(--color-grey-50);
}

.color_red {
    color: var(--color-red);
}

input:not([type="submit"]), textarea, select {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
    background-color: var(--color-grey-10);
    border: 1px solid var(--color-grey-10);
    color: var(--color-grey-50);
    border-radius: 8px;
    padding: 14px 29px;
    transition-duration: .3s;
}

input:not([type="submit"])::placeholder, textarea::placeholder, select::placeholder {
    color: var(--color-grey-50);
    opacity: 1;
}

input:not([type="submit"]):focus, textarea:focus, select:focus {
    background-color: var(--color-grey-extra-light);
    border-color: var(--color-grey-50);
    color: var(--color-text);
}

input[type="submit"] {
    font-family: 'Montserrat', sans-serif;
}

input.error, textarea.error, select.error {
    background-color: var(--color-red-8);
    border: 1px solid var(--color-red-80);
}

textarea {
    resize: none;
}

.tablebodytext {
    display: none;
}

.radio {
    display: block;
    position: relative;
    color: var(--color-text);
    cursor: pointer;
}

.radio:hover {
    color: var(--color-red);
}

.radio input[type="radio"] {
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
}

.radio_text {
    display: block;
    position: relative;
    font-size: 16px;
    line-height: 1.5;
    padding-left: 36px;
    min-height: 24px;
}

.radio_text::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid var(--color-red);
    box-sizing: border-box;
}

.radio_text::after {
    content: '';
    display: block;
    position: absolute;
    left: 6px;
    top: 6px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: var(--color-red);
    opacity: 0;
    transition: opacity .3s ease-in-out;
}

.radio input[type="radio"]:checked + .radio_text::after {
    opacity: 1;
}

.checkbox {
    display: block;
    position: relative;
    color: var(--color-text);
    cursor: pointer;
}

.checkbox input[type="checkbox"] {
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
}

.checkbox_text {
    display: block;
    position: relative;
    font-size: 12px;
    line-height: 1.219166667;
    min-height: 24px;
    padding-left: 34px;
}

.checkbox_text::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    border: 1px solid var(--color-red);
    box-sizing: border-box;
}

.checkbox_text::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    background-image: url('../img/icons/checkbox.svg');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
    opacity: 0;
    transition: opacity .3s ease-in-out;
}

.checkbox input[type="checkbox"]:checked + .checkbox_text::after {
    opacity: 1;
}



.list {
    display: flex;
    flex-direction: column;
    gap: .25em;
    font-size: 15px;
    line-height: 1.4;
}

.list > li {
    display: block;
    position: relative;
}

.list > li {
    display: block;
    position: relative;
    padding-left: 1.25em;
}

.list > li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: .65em;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: var(--color-red-80);
}



.breadcrumbs {
    padding-block: 50px;
}

.breadcrumb {
    list-style: none;
    display: flex;
}

.breadcrumb_item {
    display: flex;
    align-items: center;
    font-size: 15px;
    line-height: 1.4;
    color: var(--color-grey-50);
    flex-shrink: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.breadcrumb_item:last-child {
    flex-shrink: 1;
}

.breadcrumb_item a {
    color: var(--color-grey-50);
}

.breadcrumb_item a:hover {
    color: var(--color-red);
}

.breadcrumb_item + .breadcrumb_item::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-inline: 8px;
    background: url('../img/icons/breadcrumb_sep.svg') no-repeat center center;
    background-size: cover;
    flex-shrink: 0;
}



body > .header, body > .main, body > .footer {
    display: block;
    position: relative;
    width: 100%;
    max-width: 1600px;
    padding-inline: 20px;
    margin: auto;
}

.section {
    padding-inline: 40px;
}

.info_block {
    background-color: white;
    border-radius: 12px;
    padding: 40px 40px 30px 40px;
    font-size: 16px;
    line-height: 1.5;
}

.info_block a, .accordion_text a {
    text-decoration: underline;
}

.info_block a:hover, .accordion_text a:hover {
    text-decoration: none;
    color: var(--color-red);
}

.info_block p + p, .info_block ul + p, .info_block p + ul, .info_block ol + p, .info_block p + ol, .info_block p + table, .info_block table + p, .accordion_text p + p, .accordion_text ul + p, .accordion_text p + ul, .accordion_text ol + p, .accordion_text p + ol, .info_block ol li + li, .info_block ol li span + p, .accordion_text ol li + li, .accordion_text ol li span + p, .accordion_text p + table, .accordion_text table + p, .main_slider_item_text p + p, .main_slider_item_text ul + p, .main_slider_item_text p + ul, .main_slider_item_text ol + p, .main_slider_item_text p + ol, .main_slider_item_text p + table, .main_slider_item_text table + p, .main_slider_item_text ol li + li, .main_slider_item_text ol li span + p {
    margin-top: 1em;
}

.info_block ul, .accordion_text ul, .main_slider_item_text ul {
    display: flex;
    flex-direction: column;
    gap: .25em;
}

.info_block ul > li, .accordion_text ul > li, .main_slider_item_text ul > li {
    display: block;
    position: relative;
    padding-left: 1.25em;
}

.info_block ul > li::before, .accordion_text ul > li::before, .main_slider_item_text ul > li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: .65em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: var(--color-red-80);
}

.info_block ol, .accordion_text ol, .main_slider_item_text ol {
    list-style-position: inside;
}

.info_block ul li p, .accordion_text ul li p, .info_block ol li p, .accordion_text ol li p, .main_slider_item_text ul li p, .main_slider_item_text ol li p {
    padding-left: 1.125em;
}




.info_block h2, .info_block h3, .accordion_text h2, .accordion_text h3 {
    margin-block: 1em;
}

.info_block h2:first-of-type, .info_block h3:first-of-type, .info_block h2:first-child, .info_block h3:first-child, .info_block * h2:first-child, .info_block * h3:first-child, .accordion_text h2:first-child, .accordion_text h3:first-child, .accordion_text * h2:first-child, .accordion_text * h3:first-child {
    margin-top: 0;
}

.info_block p + h2:first-of-type, .info_block p + h3:first-of-type, .info_block p + h2:first-child, .info_block p + h3:first-child, .info_block * p + h2:first-child, .info_block * p + h3:first-child, .accordion_text p + h2:first-child, .accordion_text p + h3:first-child, .accordion_text * p + h2:first-child, .accordion_text * p + h3:first-child {
    margin-top: 1em;
}

.info_block_content + .info_block_content {
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid var(--color-grey-20);
}

.row {
    display: flex;
    gap: 18px;
}

.row > .content {
    width: calc((100% - 36px) / 3 * 2 + 18px);
}

.row > .sidebar {
    width: calc((100% - 36px) / 3);
}

.gap_40 {
    gap: 40px;
}

.sidebar {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    gap: 0;
}

.info_block + .info_block, .info_block + .row {
    margin-top: 18px;
}

.col_50 {
    flex-shrink: 0;
    width: calc((100% - 18px) / 2);
}

.col_66 {
    flex-shrink: 0;
    width: calc(66.66666% - (18px / 2));
}

.col_33 {
    flex-shrink: 0;
    width: calc(33.33333% - (18px / 2));
}

.gap_40 .col_50 {
    flex-shrink: 0;
    width: calc((100% - 40px) / 2);
}

.gap_40 .col_66 {
    flex-shrink: 0;
    width: calc(66.66666% - (40px / 2));
}

.gap_40 .col_33 {
    flex-shrink: 0;
    width: calc(33.33333% - (40px / 2));
}




body.edit_mode {
    --header-height: 4px;
}

body > .header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
}

body.edit_mode > .header {
    position: relative;
}

.header_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: white;
    border-radius: 0 0 12px 12px;
    height: 90px;
    padding-block: 6px 9px;
}

.header_logos, .header_logos > div[id^="bx_incl_area"] {
    display: flex;
    gap: 29.33px;
}

.header_logos {
    max-height: 100%;
}

.header_logos > a:not(.header_logo) > img {
    max-height: 100%;
    width: auto;
}

.header_logo {
    width: 165px;
    margin-top: 6px;
}

.header_logo_nrp {
    width: 192px;
    margin-top: 3px;
}

.header_contacts, .header_contacts > div[id^="bx_incl_area"] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 40px;
    font-size: 15px;
    line-height: 1.4;
    margin-left: -19.35%;
}

.header_contacts_link:hover {
    color: var(--color-red);
}

.header_social, .header_social > div[id^="bx_incl_area"] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.header_social .social_link {
    display: block;
    width: 28px;
    height: 28px;
}

.header_social .social_link .icon {
    width: 28px;
    height: 28px;
}

.header_social .social_link:hover .icon {
    background-color: var(--color-red);
}

.icon_tg {
    mask-image: url('../img/icons/tg.svg');
    -webkit-mask-image: url('../img/icons/tg.svg');
}

.icon_vk {
    mask-image: url('../img/icons/vk.svg');
    -webkit-mask-image: url('../img/icons/vk.svg');
}

.icon_dzen {
    mask-image: url('../img/icons/dzen.svg');
    -webkit-mask-image: url('../img/icons/dzen.svg');
}

.auth {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 14px;
    line-height: normal;
}

.auth .icon:not(.icon_auth_mobile) {
    width: 14px;
    height: 14px;
    margin-top: -1px;
}

.auth:hover {
    color: var(--color-red);
}

.auth:hover .icon:not(.icon_auth_mobile) {
    background-color: var(--color-red);
}

.icon_auth {
    mask-image: url('../img/icons/user.svg');
    -webkit-mask-image: url('../img/icons/user.svg');
}

.header_menu {
    background-color: white;
    height: 60px;
    border-radius: 12px;
    margin-top: 4px;
}

.header_menu_content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 100%;
}

.header_menu .main_menu .menu {
    display: flex;
    gap: 30px;
}

.header_menu .main_menu .menu li {
    font-size: 15px;
    line-height: normal;
}

a.has_submenu {
    display: flex;
    align-items: center;
    gap: 4px;
}

.icon_submenu {
    width: 16px;
    height: 16px;
    mask-image: url('../img/icons/arrow_down.svg');
    -webkit-mask-image: url('../img/icons/arrow_down.svg');
}

.menu li a:hover {
    color: var(--color-red);
}

a.has_submenu:hover .icon_submenu {
    background-color: var(--color-red);
}

a.has_submenu.active {
    color: var(--color-red);
}

a.has_submenu.active .icon_submenu {
    background-color: var(--color-red);
    mask-image: url('../img/icons/close.svg');
    -webkit-mask-image: url('../img/icons/close.svg');
}

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

.button_vision, .button_search, .button_call_mobile, .button_auth {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: var(--color-text);
}

.button_vision:hover, .button_search:hover, .button_auth:hover {
    background-color: var(--color-red);
}

.icon_vision_on, .icon_vision_off, .icon_search, .icon_menu, .icon_phone, .icon_email, .icon_auth_mobile {
    display: block;
    width: 16px;
    height: 16px;
    background-position: 50% 50%;
    background-size: cover;
}

.icon_vision_on {
    background: url('../img/icons/vision_on.svg') no-repeat center center;
}

.icon_vision_off {
    display: none;
    background: url('../img/icons/vision_off.svg') no-repeat center center;
}

.icon_search {
    background: url('../img/icons/search.svg') no-repeat center center;
}

.icon_menu {
    background: url('../img/icons/menu.svg') no-repeat center center;
}

.icon_auth_mobile {
    background: url('../img/icons/auth.svg') no-repeat center center;
}

.icon_phone {
    width: 24px;
    height: 24px;
    background: url('../img/icons/phone.svg') no-repeat center center;
}

.icon_email {
    width: 24px;
    height: 24px;
    background: url('../img/icons/mail.svg') no-repeat center center;
}

.icon_location {
    width: 24px;
    height: 24px;
    background: url('../img/icons/location.svg') no-repeat center center;
}

.icon_document {
    width: 24px;
    height: 24px;
    background: url('../img/icons/document.svg') no-repeat center center;
}

.mask_icon_phone {
    mask-image: url('../img/icons/phone.svg');
    -webkit-mask-image: url('../img/icons/phone.svg');
}

.mask_icon_email {
    mask-image: url('../img/icons/mail.svg');
    -webkit-mask-image: url('../img/icons/mail.svg');
}

.mask_icon_location {
    mask-image: url('../img/icons/location.svg');
    -webkit-mask-image: url('../img/icons/location.svg');
}

.mask_icon_document {
    mask-image: url('../img/icons/document.svg');
    -webkit-mask-image: url('../img/icons/document.svg');
}

.mask_icon_close {
    mask-image: url('../img/icons/close.svg');
    -webkit-mask-image: url('../img/icons/close.svg');
}

.mask_icon_toggle {
    mask-image: url('../img/icons/arrow_down.svg');
    -webkit-mask-image: url('../img/icons/arrow_down.svg');
}

.mask_icon_prev {
    mask-image: url('../img/icons/arrow_left.svg');
    -webkit-mask-image: url('../img/icons/arrow_left.svg');
}

.mask_icon_next {
    mask-image: url('../img/icons/arrow_right.svg');
    -webkit-mask-image: url('../img/icons/arrow_right.svg');
}

.button_vision.active .icon_vision_on {
    display: none;
}

.button_vision.active .icon_vision_off {
    display: block;
}

.button_search.active {
    background-color: var(--color-grey-20);
}

.button_search.active .icon_search {
    background: url('../img/icons/close.svg') no-repeat center center;
    background-size: contain;
}

.overlay {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    pointer-events: none;
}

.overlay.active, .overlay.active_modal {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.overlay.active_modal {
    z-index: 111;
}

.overlay:before {
    content: '';
    display: block;
    position: absolute;
    inset: 0;
    background-color: var(--color-grey-40);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.overlay.active:before, .overlay.active_modal::before {
    visibility: visible;
    opacity: .9;
}

.modal_wrapper {
    width: 100%;
    max-height: 100%;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.modal_wrapper::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.modal {
    max-width: 704px;
    background-color: white;
    border-radius: 12px;
    padding: 60px 90px 70px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    margin-inline: auto;
    margin-block: 60px;
}

.modal_auth {
    max-width: 704px;
}

.modal_register {
    max-width: 1120px;
}

.modal h2, .form h2 {
    margin-bottom: .47619em;
}

.modal p, .form p {
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 2.63157em;
}

.modal_notice .button_red {
    padding-inline: 120px;
}

.modal_auth .button_red, .modal_register .button_red {
    width: 100%;
}

.close_modal:not(.button_red) {
    display: block;
    position: absolute;
    top: 30px;
    right: 21px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.overlay.active_modal .modal, .overlay.active_modal .close_modal:not(.button_red) {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.header_popup {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    z-index: 100;
}

.header_popup.active {
    visibility: visible;
    opacity: 1;
}

.header_popup_content {
    display: flex;
    align-items: stretch;
    width: 100%;
    margin-top: 4px;
    background-color: white;
    border-radius: 12px;
    overflow: hidden;
}

.header_submenu {
    font-size: 14px;
    line-height: 1.5;
}

.header_submenu_level_1 {
    background-color: var(--color-grey-10);
    max-width: 440px;
}

.header_submenu_level_1 .menu, .header_submenu_level_2 .menu, .header_submenu_level_3 .menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.header_submenu_level_1 .menu > li > a {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 22.5px 16px 40px;
}

.header_submenu_level_1 .menu > li > a.has_submenu.active, .header_submenu_level_1 .menu > li > a.has_submenu:hover {
    background-color: white;
}

.header_submenu .icon_submenu, .header_submenu a.has_submenu.active .icon_submenu {
    width: 16px;
    height: 16px;
    mask-image: url('../img/icons/arrow_right.svg');
    -webkit-mask-image: url('../img/icons/arrow_right.svg');
    background-color: var(--color-red);
}

.header_submenu_level_2, .header_submenu_level_3 {
    max-width: 410px;
    height: 100%;
    padding-block: 10px;
}

.header_submenu_level_2 .menu > li, .header_submenu_level_3 .menu > li {
    padding: 16px 30px 16px 40px;
}

.header_submenu_level_2 .menu > li > a, .header_submenu_level_3 .menu > li > a {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.header_search {
    margin-top: 4px;
    width: 100%;
    background-color: white;
    border-radius: 12px;
    padding: 30px 40px;
}

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

.search_form input {
    width: calc(100% - 59px);
}

.search_form .button_search {
    width: 48px;
    height: 48px;
    background-color: var(--color-red);
}

.search_form .button_search .icon_search {
    width: 24px;
    height: 24px;
    background-size: cover;
}



body > .main {
    margin-top: var(--header-height);
}

.main_slider {
    background-color: white;
    border-radius: 12px;
    padding-block: 40px 30px;
}

.main_slider_item {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 60px;
}

.main_slider_item_content {
    padding-top: 10px;
}

.main_slider_item h2 {
    font-size: 48px;
    line-height: 1.2;
    margin-bottom: 20px;
}

.main_slider_item_text {
    font-size: 19px;
    line-height: 1.5;
    max-width: 574px;
    margin-bottom: 40px;
}

.main_slider_item_image {
    border-radius: 12px;
    overflow: hidden;
}

.main_slider_item_image img {
    display: block;
}

.main_slider_item a.button {
    display: inline-flex;
}

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

.main_slider_counter {
    display: block;
    font-size: 19px;
    line-height: 1.5;
    inset: 0;
}

.slider_navigation {
    display: flex;
    gap: 10px;
}

.button_slider_move {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: var(--color-text);
    border-radius: 50%;
}

.button_slider_move:hover {
    background-color: var(--color-red);
}

.button_slider_move .icon {
    background-color: white;
}




.services_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.years_tags {
    gap: 18px;
    margin-top: 0;
    margin-bottom: 18px;
}

.services_tag {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 33px;
    padding: 30px 32px 30px 30px;
    background-color: white;
    border-radius: 12px;
    font-size: 16px;
    line-height: 1.25;
}

.services_tag.active, .services_tag:hover {
    color: var(--color-red);
    gap: 38px;
    padding-right: 27px;
    background-color: var(--color-grey-extra-light);
}

.icon_tag {
    display: block;
    width: 24px;
    height: 24px;
    background: url('../img/icons/tag.svg') no-repeat center center;
}




.events {
    margin-top: 120px;
}

.title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
    margin-bottom: 50px;
}

.title h1 {
    font-size: 48px;
    line-height: 1.2;
}

.title h2 {
    font-size: 42px;
    line-height: 1.3;
}

.title_link {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 18px;
    line-height: 1.3;
    color: var(--color-red);
    white-space: nowrap;
}

.title_link .icon_tag {
    width: 20px;
    height: 20px;
}

.event_list, .links_list {
    border-radius: 12px;
    background-color: white;
    overflow: hidden;
}

.event + .event, .links_list_item + .links_list_item {
    border-top: 1px solid var(--color-grey-20);
}

.event, .links_list_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 50px;
}

.event_content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 150px);
}

.event_date {
    width: 100px;
    flex-shrink: 0;
}

.event_date_num {
    font-size: 32px;
    line-height: 1.2;
}

.event_date_month {
    font-size: 19px;
    line-height: 1.5;
    margin-top: 2px;
}

.event_name, .links_list_item_name {
    max-width: 900px;
    font-size: 16px;
    line-height: 1.25;
}

a.event_name:hover, a.links_list_item_name:hover {
    color: var(--color-red);
}

.event .button_red_s, .links_list_item .button_red_s {
    height: 44px;
    padding: 12px 40px;
}




.news, .section_top {
    margin-top: 130px;
}

.title + .section_top {
    margin-top: 0;
}

.section_mini_top {
    margin-top: 60px;
}

.news_list {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 18px;
}

.news_item {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    background-color: white;
    border-radius: 12px;
    width: calc((100% - 36px) / 3);
    height: 260px;
    overflow: hidden;
}

.news_item:first-child {
    width: calc((100% - 36px) / 3 * 2 + 18px);
}

.news_item_content {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 20px 40px;
}

.news_item_wrapper {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.news_item_date {
    font-size: 12px;
    line-height: 1.219166667;
    color: var(--color-grey-50);
}

.news_item_title {
    display: block;
    height: 130px;
    font-size: 20px;
    line-height: 1.3;
    text-overflow: ellipsis;
    word-wrap: break-word;
    overflow: hidden;
}

.news_item:first-child .news_item_title {
    font-size: 25px;
    line-height: 1.28;
}

.news_item_title::after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 52px;
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%);
    transition: .3s;
    visibility: visible;
    opacity: 1;
}

.news_item:first-child .news_item_title::after {
    display: none;
}

.news_item:hover .news_item_title::after {
    visibility: hidden;
    opacity: 0;
}

.news_item_image {
    width: 260px;
    height: 260px;
    flex-shrink: 0;
    overflow: hidden;
    border-radius: 12px;
}

.news_item_image img {
    max-width: auto;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}

.news_item:hover .news_item_image img {
    transform: scale(1.1);
}

.news_item_tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 16px;
}

.news_item_tag {
    font-size: 12px;
    line-height: 1.219166667;
    color: var(--color-grey-50);
}

.news_item_tag:hover {
    color: var(--color-red);
}



.support {
    margin-top: 130px;
}

.support_list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 18px;
}

.support_item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: calc((100% - 18px) / 2);
    background-color: white;
    border-radius: 12px;
    padding: 10px 10px 10px 40px
}

.support_item_name {
    font-size: 25px;
    line-height: 1.28;
}

.support_item_image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 140px;
    height: 140px;
    flex-shrink: 0;
    background-color: var(--color-red-8);
    border-radius: 6px;
    overflow: hidden;
}



.consultation {
    margin-top: 130px;
    background-color: white;
    border-radius: 12px;
    padding: 50px 50px 48px 50px;
    display: flex;
    align-items: stretch;
    justify-content: space-between;
}

.consultation h2 {
    font-size: 42px;
    line-height: 1.3;
    margin-bottom: 50px;
}

.consultation h2 br {
    display: none;
}

.consultation_image {
    width: 522px;
    height: 378px;
    background: url('../img/consultation/mb21.jpg') no-repeat;
    background-position: 80% 80%;
    background-size: 140%;
    border-radius: 16px;
    overflow: hidden;
}

.consultation_comment {
    position: absolute;
    top: -20px;
    left: 266px;
    width: 400px;
    background-color: var(--color-red);
    border-radius: 12px;
    border-bottom-left-radius: 0;
    padding: 30px 50px;
    color: white;
    font-size: 19px;
    line-height: 1.5;
}

.consultation_comment::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: 8px solid transparent; border-left: 8px solid var(--color-red); border-top: 8px solid var(--color-red);
    position: absolute;
    left: 0;
    top: 100%;
}

.consultation_form {
    width: 40%;
}

.consultation_form_text {
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 1.5em;
}

.consultation_form_text a {
    text-decoration: underline;
}

.consultation_form_text a:hover {
    color: var(--color-red);
    text-decoration: none;
}

.form input:not([type="submit"]), .form textarea, .form select, .consultation_form input:not([type="submit"]), .consultation_form textarea, .consultation_form select {
    display: block;
    width: 100%;
    padding: 33px 30px 13px 30px;
}

.form select, .consultation_form select {
    padding: 23px 30px;
}

.form input:not([type="submit"]), .form select, .consultation_form input:not([type="submit"]), .consultation_form select {
    margin-bottom: 10px;
}

.form input[type="submit"], .consultation_form input[type="submit"] {
    display: flex;
    border: none;
}

.form input[type="submit"] {
    width: 100%;
    margin-top: 40px;
}

.consultation_form_errors, .form_errors {
    font-size: 14px;
    line-height: 1.3;
    margin-bottom: 32px;
}

.consultation_form_errors > p, .form_errors > p {
    font-size: 14px;
    line-height: 1.3;
    color: var(--color-red);
    margin-block: 0;
}

.form_errors > p + p {
    margin-top: .5em;
}

.form_actions, .consultation_form_actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.form_actions {
    font-size: 12px;
    line-height: 1.219166667;
    margin-top: 40px;
}

.form_actions a {
    color: var(--color-grey-50);
    text-decoration: underline;
}

.check_personal_data {
    font-size: 12px;
    line-height: 1.219166667;
}

.check_personal_data a, .checkbox_text a {
    color: var(--color-grey-50);
    text-decoration: underline;
}

.check_personal_data a:hover, .checkbox_text a:hover {
    color: var(--color-red);
}

.placeholder {
    display: block;
    position: absolute;
    left: 30px;
    top: 23.5px;
    font-size: 15px;
    line-height: 1.4;
    color: var(--color-grey-50);
}

.form_input:focus + .placeholder, .form_input.full + .placeholder {
    font-size: 12px;
    line-height: 1.219166667;
    top: 15px;
}

.form_input.full {
    color: var(--color-text);
}

.form_input.error, .form_input.error + .placeholder {
    color: var(--color-red-80);
}

.form_captcha img {
    display: block;
    margin-bottom: 10px;
}

.form_block h3 {
    margin-bottom: .8em;
}

.form_block_profile_data, .form_block_personal_data, .form_block_status_data, .form_block_theme_data, .form_block_agreement_data {
    margin-bottom: 50px;
}

.form_block_content {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.form_buttons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: flex-end;
    gap: 18px;
}

.form .form_buttons input[type="submit"] {
    margin-top: 0;
}






.msp {
    margin-top: 70px;
}

.msp_slider {
    padding-block: 40px 30px;
    background-color: white;
    border-radius: 12px;
}

.msp_slide {
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.msp_slide_content {
    max-width: 820px;
}

.msp_slide_content h2 {
    font-size: 42px;
    line-height: 1.3;
    margin-bottom: 20px;
}

.msp_slide_content p {
    font-size: 19px;
    line-height: 1.5;
}

.msp_slide_logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 414px;
    height: 200px;
    flex-shrink: 0;
}

.msp_slide_logo img {
    max-width: 100%;
    max-height: 100%;
}

.slider_actions, .msp_slider_actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
}

.slider_pagination {
    display: flex;
    gap: 24px;
    inset: 0!important;
}

.slider_pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0!important;
    opacity: 1!important;
    background-color: var(--color-grey-40);
}

.slider_pagination .swiper-pagination-bullet-active {
    background-color: var(--color-text);
}

.swiper-wrapper {
    height: auto;
}




.footer {
    padding-top: 70px;
}

.footer_top {
    background-color: white;
    padding: 30px 158px 30px 40px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer_logos, .footer_logos > div[id^="bx_incl_area"] {
    display: flex;
    gap: 20px;
}

.footer_logo, .footer_logo img {
    width: 214px;
}

.footer_logo_chr {
    margin-top: 3.5px;
    margin-left: 9px;
    width: 51px;
}

.footer_logo_nrp {
    margin-top: 5px;
}

.footer_logo_nrp img {
    width: 233px;
}


.footer_contacts, .footer_contacts > div[id^="bx_incl_area"] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: -7px;
    margin-left: 108px;
}

.footer_contacts_phone {
    font-size: 20px;
    line-height: 1.3;
}

.footer_contacts_email {
    font-size: 15px;
    line-height: 1.4;
}

.footer_contacts_link:hover {
    color: var(--color-red);
}

.footer_info {
    display: flex;
    gap: 85px;
    font-size: 15px;
    line-height: 1.6;
    margin-top: -7px;
}

.footer_menu {
    margin-top: 4px;
    background-color: white;
    padding: 40px 158px 30px 40px;
    border-radius: 12px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.footer_menu_content, .footer_bottom {
    display: flex;
    justify-content: space-between;
    gap: 35px;
}

.footer a:hover {
    color: var(--color-red);
}

.footer_menu_content h2 {
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 12px;
}

.footer_menu_content h2 + h2 {
    margin-top: 24px;
    margin-bottom: 0;
}

.footer_menu_content .menu li {
    font-size: 12px;
    line-height: 1.219166667;
}

.footer_menu_content .menu li + li {
    margin-top: 12px;
}

.footer_menu_1, .footer_menu_2, .footer_menu_3 {
    width: 280px;
}

.footer_bottom {
    margin-top: 80px;
    font-size: 12px;
    line-height: 1.219166667;
    white-space: nowrap;
}

.footer_bottom a {
    text-decoration: underline;
}



.new, .page_content {
    max-width: 1165px;
}

.ma, .new {
    margin: auto;
}

.new_content {
    background-color: white;
    border-radius: 12px;
    padding-block: 40px 30px;
}

.new .news_item_date {
    font-size: 15px;
    line-height: 1.4;
    margin-bottom: 20px;
}

.new_text {
    font-size: 16px;
    line-height: 1.5;
}

.new_text a {
    text-decoration: underline;
}

.new_text a:hover {
    text-decoration: none;
    color: var(--color-red);
}

.new_image {
    display: inline-block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
}

.new_text p + p {
    margin-top: 1em;
}

.new .news_item_tags {
    gap: 8px 32px;
    margin-top: 60px;
}

.new .news_item_tag {
    font-size: 15px;
    line-height: 1.4;
}




.employees_list {
    display: grid;
    grid-gap: 18px;
    grid-template-columns: repeat(4, 1fr);
    margin-top: 50px;
}

.employees_item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background-color: white;
    border-radius: 12px;
    padding: 40px;
}

.employees_item_image {
    width: 100%;
    aspect-ratio: 1/1;
    border-radius: 6px;
    overflow: hidden;
}

.employees_item_name {
    text-align: center;
    font-size: 19px;
    line-height: 1.5;
    font-weight: 600;
}

.employees_item_name > br:last-child {
    display: none;
}

.employees_item_job_title {
    text-align: center;
    font-size: 12px;
    line-height: 1.219166667;
}

.employees_item_contacts {
    display: flex;
    flex-direction: column;
    gap: 4px;
    text-align: center;
    font-size: 15px;
    line-height: 1.6;
}

.employees_item_contacts a:hover {
    color: var(--color-red);
}



.contacts_block {
    display: flex;
    flex-wrap: nowrap;
    justify-content: stretch;
    padding: 0;
    overflow: hidden;
}

.contacts_content {
    display: flex;
    align-items: center;
    padding: 40px;
    background-color: var(--color-red);
    width: calc((100% - 36px) / 3);
    color: white;
}

.contacts_content a, .contacts_content a:hover {
    color: white;
    text-decoration: none;
}

.contacts_info {
    width: 100%;
}

.contacts_info .mask_icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 1em;
    background-color: var(--color-grey-extra-light);
}

.contacts_map {
    width: calc(100% - ((100% - 36px) / 3));
}

.line {
    display: block;
    height: 1px;
    opacity: .2;
}

.contacts_content .line {
    background-color: var(--color-grey-10);
}



.documents_list {
    display: grid;
    gap: 2em;
    grid-template-columns: repeat(2, 1fr);
}

.document_item_link {
    display: flex;
    flex-wrap: nowrap;
    gap: 1em;
    text-decoration: none!important;
}

.document_item_link .mask_icon {
    width: calc(24/19 * 1em);
    height: calc(24/19 * 1em);
}

.document_item_link:hover .mask_icon {
    background-color: var(--color-red);
    transform: translateX(-5px);
}



.nav_tabs_list {
    display: flex;
    flex-wrap: wrap;
    gap: 3em;
    list-style: none;
    font-size: 25px;
    line-height: 1.26;
    border-bottom: 1px solid var(--color-grey-20);
}

.nav_tabs_list > li {
    display: block;
    position: relative;
    padding-bottom: .5em;
}

.tab_link {
    display: block;
    position: relative;
    transition-duration: .3s;
}

.tab_link::after {
    content: '';
    display: block;
    position: absolute;
    inset: calc(100% + .5em - 1px) 0 auto 0;
    height: 2px;
    background-color: var(--color-red);
    opacity: 0;
    transition-duration: .3s;
}

.tab_link.active, .tab_link:hover {
    color: var(--color-red);
}

.tab_link.active::after {
    opacity: 1;
}

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

.rooms_item {
    background-color: white;
    border-radius: 12px;
    padding: 40px 40px 20px;
}

.rooms_item_title {
    margin-block: 1em;
}

.rooms_item_image {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.rooms_item_image:hover > img {
    transform: scale(1.1);
}

.rooms_item_content {
    font-size: 15px;
    line-height: 1.253333333;
}

.rooms_item_content p + p {
    margin-top: .5em;
}

.tarif_plans {
    margin-top: 130px;
}

.tarif_plans_slider {
    background-color: white;
    border-radius: 12px;
    padding: 40px;
}

.tarif_plans_slide {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 430px;
}

.tarif_plans_slide h3 {
    margin-bottom: 1em;
}

.tarif_plans_slide p {
    font-size: 15px;
    line-height: 1.253333333;
}

.tarif_plans_slide p + p {
    margin-top: .5em;
}

.tarif_plans_slide_price {
    font-size: 25px;
    line-height: 1.26;
    margin-block: 1em;
}

.tarif_plans_slide_action .button_red, .accordion_text .button_red {
    display: inline-flex;
    color: white;
    text-decoration: none;
}

.button_red.button_link {
    text-decoration: none;
}

.accordion_text .button_red:hover, .button_red.button_link:hover {
    color: white;
}



.fancybox-navigation {
    top: 50%;
    transform: translateY(-50%);
    z-index: 99997;
}



.gallery_main_image {
    display: block;
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 18px;
}

.gallery_item {
    display: block;
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    z-index: 0;
}

.gallery_item.active {
    opacity: 1;
    visibility: visible;
    z-index: 1;
}

.gallery_slide {
    display: block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
}

table.features tr td, table.table tr td, table.table tr th {
    font-size: 15px;
    line-height: 1.4;
    padding-block: 1em;
}

table.features tr td + td, table.table tr td + td {
    padding-left: 1em;
}

table.features tr + tr td, table.table tr + tr td {
    border-top: 1px solid var(--color-grey-10);
}

table.features td p + p, table.table td p + p {
    padding-top: .25em;
}

table.features + .button_red {
    margin-top: 2em;
}

table.table {
    border-top: 1px solid var(--color-grey-10);
    border-bottom: 1px solid var(--color-grey-10);
}

table.table tr th {
    font-weight: 600;
    border-bottom: 1px solid var(--color-grey-10);
}




.image_container {
    display: block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
}



.tiles {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.tile {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    background-color: white;
    border-radius: 12px;
    padding: 40px;
}

.tile_image {
    width: 90px;
    height: 60px;
    aspect-ratio: 3 / 2;
}

.tile_image > a, .tile_image > div {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-align: center;
    width: 100%;
    height: 100%;
}

.tile_image img {
    max-width: 100%;
    max-height: 100%;
}

.tile_title {
    font-size: 16px;
    line-height: 1.5;
    margin-block: 1.5em;
}

.tile_title a:hover {
    color: var(--color-red);
}

.tile_title {
    text-align: center;
}

.tile_text {
    align-self: flex-start;
    font-size: 12px;
    line-height: 1.5;
}

.tile_text a {
    text-decoration: underline;
}

.tile_text a:hover {
    color: var(--color-red);
    text-decoration: none;
}



.terms_list {
    border-radius: 12px;
    background-color: white;
    overflow: hidden;
    font-size: 16px;
    line-height: 1.5;
}

.term + .term {
    border-top: 1px solid var(--color-grey-20);
}

.term {
    padding: 32px;
}



.accordion_list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.accordion {
    background-color: white;
    border-radius: 12px;
    overflow: hidden;
}

.accordion_title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 40px;
    cursor: pointer;
    font-weight: 600;
}

.accordion_title h3 {
    font-size: 23px;
    line-height: 1.2;
    margin: 0;
}

.accordion_content {
    max-height: 0;
    overflow: hidden;
}

.accordion.active > .accordion_content {
    max-height: 10000px;
}

.accordion.active > .accordion_title > .mask_icon_toggle {
    transform: scaleY(-1);
}

.accordion_text {
    border-top: 1px solid var(--color-grey-20);
    padding: 40px;
    font-size: 16px;
    line-height: 1.5;
}

.accordion_text .accordion {
    border: 1px solid var(--color-grey-20);
}

.documents_list + .accordion_list {
    margin-top: 2em;
}

.content + .accordion_list, .content + div[id^="bx_incl_area"] {
    margin-top: 18px;
}





.search_results .search_result:first-of-type {
    margin-top: 20px;
}

.search_result + .search_result {
    margin-top: 16px;
}

.search_result_title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 10px;
    font-size: 19px;
    line-height: 1.5;
    color: var(--color-text);
}

.search_result_title b {
    font-weight: inherit;
    color: var(--color-red);
}

.search_result_category {
    font-size: 15px;
    line-height: 1.4;
    color: var(--color-grey-50);
}

.search_result_title:hover, .search_result_category:hover {
    color: var(--color-red);
}

.mask_icon_tag {
    width: 25px;
    height: 25px;
    mask-image: url('../img/icons/tag.svg');
    -webkit-mask-image: url('../img/icons/tag.svg');
}

.search_result_title:hover .mask_icon_tag {
    background-color: var(--color-red);
}

.search_results .button_red {
    display: inline-flex;
    margin-top: 30px;
}

.search_results .button_red .mask_icon_tag {
    width: 20px;
    height: 20px;
    background-color: white;
}

.search_page {
    padding-bottom: 150px;
}

.search_total {
    margin-block: 60px;
}

.search_total p {
    font-size: 19px;
    line-height: 1.5;
    margin-top: 12px;
}

.search_result_block {
    max-width: 1165px;
}

.search_result_block + .search_result_block {
    margin-top: 50px;
}

.search_result_block_title a:hover {
    color: var(--color-red);
}

.search_result_block .breadcrumb {
    margin-block: 8px 10px;
}

.search_result_block_text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.4;
}

.search_result_block_title b, .search_result_block_text b {
    font-weight: inherit;
    color: var(--color-red);
}




.pagination {
    margin-top: 60px;
    display: flex;
    align-items: center;
    gap: 30px;
    font-size: 19px;
    line-height: 1.5;
}

.pagination b {
    font-weight: inherit;
    color: var(--color-red);
}

.pagination a:hover {
    color: var(--color-red);
}

.pagination_button {
    margin-top: -2px;
}

.pagination_button:hover .mask_icon {
    background-color: var(--color-red);
}



.social_links {
    display: flex;
    align-items: center;
    gap: 1em;
}

.social_links > a {
    display: block;
    position: relative;
    flex-shrink: 0;
    width: 2em;
    height: 2em;
}



.select2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    line-height: 1.4;
}

.select2-container .select2-selection {
    background-color: var(--color-grey-10);
    border: 1px solid var(--color-grey-10);
    color: var(--color-grey-50);
    border-radius: 8px;
    padding: 23px 29px;
    transition-duration: .3s;
}

.select2-container .select2-search {
    vertical-align: top;
}

.select2-container .select2-search--inline .select2-search__field {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
    min-height: 21px;
    background: transparent;
    margin: 0;
    vertical-align: middle;
}

.select2-container .select2-search--inline .select2-search__field::placeholder {
    color: var(--color-grey-50);
    opacity: 1;
}

.select2-container--default.select2-container--focus .select2-selection {
    background-color: var(--color-grey-extra-light);
    border-color: var(--color-grey-50);
    color: var(--color-text);
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

.select2-dropdown {
    border-radius: 8px;
    border-color: var(--color-grey-50);
    overflow: hidden;
}

.select2-container--open .select2-dropdown--below {
    top: 4px;
    border-top: 1px solid var(--color-grey-50);
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.select2-container--open .select2-dropdown--above {
    border-bottom: 1px solid var(--color-grey-50);
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.select2-container--default .select2-results > .select2-results__options {
    max-height: 229px;
}

.select2-results__option {
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 500;
    padding-inline: 30px 60px;
    padding-block: 12px;
    position: relative;
}

.select2-results__option::before {
    content: '';
    display: block;
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: 1px solid var(--color-red);
    box-sizing: border-box;
    background: transparent;
}

.select2-results__option.select2-results__option--selected::before {
    background-image: url('../img/icons/checkbox.svg');
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.select2-results__option + .select2-results__option {
    border-top: 1px solid var(--color-grey-20);
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: transparent;
    color: var(--color-red);
}

.select2-container--default .select2-results__option--selected {
    background-color: transparent;
    color: var(--color-red);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 4px;
    align-items: center;
    margin: 0 4px 4px 0;
    font-size: 12px;
    line-height: 1.219166667;
    background-color: transparent;
    border: none;
    padding: 4px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice::before {
    display: none;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
    color: var(--color-text);
    padding: 1px 0 0 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    width: 16px;
    height: 16px;
    padding: 0;
    margin: 0;
    background-image: url('../img/icons/close.svg');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
    border: none;
    position: relative;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove span {
    display: none;
}

select.error + .select2-container > .selection > .select2-selection {
    background-color: var(--color-red-8);
    border-color: var(--color-red-80);
}

select.error + .select2-container > .selection > .select2-selection textarea::placeholder {
    color: var(--color-red-80);
}



.grecaptcha-badge {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}




.profile_content {
    display: flex;
    flex-direction: column;
    gap: 1em;
}

.profile_info_label {
    font-size: .75em;
    color: var(--color-grey-50);
}

.profile_actions {
    display: flex;
    align-items: center;
    gap: 1.5em;
    margin-top: 1.5em;
}




.alert_success {
    margin-bottom: 2em;
}




.cookies_message {
    display: block;
    position: fixed;
    inset: auto 0 0 0;
    z-index: 103;
    background-color: var(--color-text);
}

.cookies_message_content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2em;
    max-width: 1165px;
    width: 100%;
    margin-inline: auto;
    padding: 30px 40px;
}

.cookies_message_text {
    font-size: .875rem;
    line-height: 1.5;
    color: white;
}

.cookies_message_text a {
    color: white;
    text-decoration: underline;
}

.cookies_message_text a:hover {
    text-decoration: none;
}

.cookies_message_accept:hover {
    background-color: var(--color-grey-50)!important;
}



@media (max-width: 1440px) {
    .header_contacts {
        margin-left: 10%;
    }

    .consultation_comment {
        left: 186px;
    }

    .footer_top, .footer_menu {
        padding-right: 40px;
    }


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



    .footer_contacts, .footer_contacts > div[id^="bx_incl_area"] {
        margin-inline: 1em;
    }

    .footer_info {
        gap: 2em;
    }
}



@media (max-width: 1152px) {
    .hidden_md {
        display: none!important;
    }

    .hidden.shown_md {
        display: block!important;
    }



    
    .header_contacts {
        margin-left: 0;
    }



    .support_item_name {
        font-size: 20px;
        line-height: 1.3;
    }



    .contacts_content {
        width: 40%;
    }

    .contacts_map {
        width: 60%;
    }




    .consultation_content {
        width: 38%;
    }

    .consultation_form {
        width: 60%;
    }

    .consultation_image {
        width: 100%;
        height: auto;
        aspect-ratio: 4 / 3;
    }

    .consultation_comment {
        left: 5%;
        width: 90%;
        padding: 1em;
        font-size: 15px;
        line-height: 1.4;
    }




    .footer_logo, .footer_logo img {
        width: 180px;
    }

    .footer_logo_nrp img {
        width: 200px;
    }
    
    .footer_contacts_phone {
        font-size: 15px;
        line-height: 1.4;
    }
}




@media (max-width: 1072px) {
    :root {
        --header-height: 50px;
    }

    .hidden_sm {
        display: none!important;
    }

    .hidden.shown_sm {
        display: block!important;
    }

    .mt {
        margin-top: 4px;
    }

    .mb {
        margin-bottom: 20px;
    }

    .info_block {
        font-size: 12px;
        line-height: 1.5;
    }

    .info_block_content + .info_block_content {
        margin-top: 40px;
        padding-top: 40px;
    }

    h1 {
        font-size: 23px;
        line-height: 1.2;
    }

    h2 {
        font-size: 20px;
        line-height: 1.3;
    }

    h3 {
        font-size: 18px;
        line-height: 1.3;
    }



    .breadcrumbs {
        padding-top: 28px;
        padding-bottom: 33px;
    }
    
    .breadcrumb_item {
        font-size: 9px;
        line-height: 1.218888889;
    }

    .breadcrumb_item + .breadcrumb_item::before {
        width: 12px;
        height: 12px;
        margin-inline: 2px;
    }


    .list {
        font-size: 12px;
        line-height: 1.219166667;
        gap: .5em;
    }
    
    .list > li::before {
        top: .5em;
    }


    body > .header, body > .main, body > .footer {
        padding-inline: 5px;
    }

    input:not([type="submit"]), textarea, select {
        font-size: 11px;
        line-height: 1.181818182;
        font-weight: 500;
        padding: 15px 14px 15px 10px;
    }
    
    .radio_text {
        font-size: 11px;
        line-height: 1.454545455;
        padding-left: 20px;
        min-height: 16px;
    }
    
    .radio_text::before {
        width: 16px;
        height: 16px;
    }
    
    .radio_text::after {
        left: 4px;
        top: 4px;
        width: 8px;
        height: 8px;
    }
    
    .checkbox_text {
        font-size: 11px;
        line-height: 1.219090909;
        min-height: 24px;
        padding-left: 20px;
    }
    
    .checkbox_text::before {
        width: 16px;
        height: 16px;
    }
    
    .checkbox_text::after {
        width: 16px;
        height: 16px;
    }

    .button_red, .button_border {
        font-size: 11px;
        line-height: 1.181818182;
    }
    
    .button_red_l {
        height: 41px;
        padding: 14px 36px;
    }
    
    .button_red_s {
        height: 25px;
        padding: 6px 12px;
    }

    .button_red.inline_flex {
        display: flex;
    }

    .section {
        padding-inline: 10px;
    }

    .info_block {
        padding: 20px 10px;
    }

    .row {
        flex-direction: column;
        gap: 4px;
    }
    
    .row > .content {
        width: 100%;
    }
    
    .row > .sidebar {
        width: 100%;
    }

    .row.reverse_mobile > .content {
        order: 1;
    }
    
    .row.reverse_mobile > .sidebar {
        order: 0;
    }

    .gap_40 {
        gap: 40px;
    }

    .info_block + .info_block, .info_block + .row {
        margin-top: 4px;
    }

    .col_50, .col_66, .col_33, .gap_40 .col_50, .gap_40 .col_66, .gap_40 .col_33 {
        width: 100%;
    }



    .header_top {
        height: 46px;
        padding-top: 3px;
    }

    .header_logos {
        gap: 3vw;
    }

    .header_logo {
        width: 130px;
        margin-top: 2px;
    }

    .header_logos > a:not(.header_logo) {
        transform: translateY(4px);
    }

    .header_actions.hidden.shown_sm  {
        display: flex!important;
    }

    .button_vision, .button_search, .button_call_mobile, .button_auth {
        width: 28px;
        height: 28px;
    }

    .button_auth.hidden.shown_sm {
        display: flex!important;
    }

    .button_call_mobile {
        background-color: var(--color-grey-20);
    }
    
    .icon_vision_on, .icon_vision_off, .icon_search, .icon_menu, .icon_auth_mobile {
        width: 14px;
        height: 14px;
        background-size: contain;
    }

    .button_call_mobile.active .icon_menu {
        background: url('../img/icons/close.svg') no-repeat center center;
        background-size: contain;
    }

    .header_menu {
        position: absolute;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        top: 32px;
        left: 5px;
        right: 5px;
        height: auto;
        padding-block: 27px 35px;
        visibility: hidden;
        opacity: 0;
        z-index: -1;
    }

    .header_menu.active {
        visibility: visible;
        opacity: 1;
    }

    .header_menu_content {
        display: block;
    }

    .header_logo_nrp {
        margin-top: 0;
        width: 130px;
    }

    .header_menu .main_menu {
        margin-block: 20px 120px;
    }

    .header_menu .main_menu .menu {
        display: block;
    }
    
    .header_menu .main_menu .menu li {
        font-size: 13px;
        line-height: 1.5;
    }

    .header_menu .main_menu > .menu > li + li {
        margin-top: 30px;
    }

    .icon_submenu {
        mask-image: url('../img/icons/arrow_right.svg');
        -webkit-mask-image: url('../img/icons/arrow_right.svg');
    }

    .header_mobile_menu_bottom.hidden.shown_sm {
        display: flex!important;
        align-items: center;
        justify-content: space-between;
    }

    .header_contacts {
        margin-left: 0;
        gap: 10px;
    }

    .button_contacts_link {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 40px;
        height: 40px;
        background-color: var(--color-grey-20);
        border-radius: 50%;
    }

    .header_social {
        gap: 10px;
    }

    .header_submenu {
        position: relative;
        inset: 0;
        background: transparent;
        height: 0;
        visibility: hidden;
        opacity: 0;
        margin-top: -35px;
    }

    .header_submenu.active {
        height: auto;
        visibility: visible;
        opacity: 1;
    }



    .modal {
        max-width: calc(100% - 10px);
        padding: 20px;
        margin-top: 20%;
    }
    
    .modal p, .form p {
        font-size: 11px;
        line-height: 1.181818182;
    }
    
    .close_modal:not(.button_red) {
        top: 10px;
        right: 5px;
    }



    .breadcrumb_menu {
        display: flex;
        align-items: center;
        gap: 2px;
        list-style: none;
        margin-top: 37.5px;
        margin-bottom: 25px;
    }

    .breadcrumb_menu li a {
        font-size: 9px;
        line-height: 1.222222222;
        color: var(--color-grey-50);
    }

    .breadcrumb_menu li a:hover {
        color: var(--color-red);
    }

    .breadcrumb_menu li.separator {
        width: 12px;
        height: 12px;
        flex-shrink: 0;
    }

    .breadcrumb_menu li.separator .icon_right {
        width: 12px;
        height: 12px;
        background-color: var(--color-grey-50);
    }

    .header_submenu_level_1, .header_submenu_level_2, .header_submenu_level_3 {
        background-color: transparent;
        padding-bottom: 76px;
    }

    .header_submenu h2 {
        font-size: 20px;
        line-height: 1.3;
    }

    .header_submenu_level_1 .menu, .header_submenu_level_2 .menu, .header_submenu_level_3 .menu{
        padding-left: 10px;
    }

    .header_submenu_level_1 .menu > li, .header_submenu_level_2 .menu > li, .header_submenu_level_3 .menu > li {
        padding: 0;
        margin-top: 20px;
    }

    .header_submenu_level_1 .menu > li > a, .header_submenu_level_2 .menu > li > a, .header_submenu_level_3 .menu > li > a {
        display: flex;
        justify-content: flex-start;
        gap: 4px;
        padding: 0;
        color: var(--color-text);
        font-size: 13px;
        line-height: 1.5;
    }

    .header_submenu .icon_submenu, .header_submenu a.has_submenu.active .icon_submenu {
        width: 16px;
        height: 16px;
        background-color: var(--color-text);
    }

    .header_search {
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        margin-top: -10px;
        z-index: -1;
        padding: 35px 10px 30px 10px;
    }

    .search_form input {
        width: calc(100% - 56px);
    }
    
    .search_form .button_search {
        width: 46px;
        height: 46px;
    }
    
    .search_form .button_search .icon_search {
        width: 23px;
        height: 23px;
    }




    .main_slider {
        padding-block: 10px;
    }
    
    .main_slider_item {
        flex-direction: column;
        gap: 32px;
    }

    .main_slider_item_content {
        width: 100%;
    }
    
    .main_slider_item h2 {
        font-size: 23px;
        line-height: 1.2;
    }

    .main_slider_item a.button {
        width: 100%;
    }

    .main_slider_item_image img {
        width: 100%;
    }
    
    .slider_actions, .main_slider_actions {
        margin-top: 10px;
    }
    
    .main_slider_counter {
        font-size: 15px;
        line-height: auto;
    }




    .services_tags {
        gap: 4px;
        margin-top: 4px;
    }

    .years_tags {
        gap: 4px;
        margin-top: 0;
        margin-bottom: 4px;
    }
    
    .services_tag {
        display: inline-block;
        gap: 0;
        padding: 8px 10px;
        border-radius: 16px;
        font-size: 11px;
        line-height: 1.181818182;
    }
    
    .services_tag:hover {
        gap: 0;
        padding-right: 10px;
    }
    
    .services_tag .icon_tag {
        display: none;
    }




    .events {
        margin-top: 50px;
    }
    
    .title {
        align-items: flex-end;
        gap: 7px;
        margin-bottom: 20px;
        hyphens: auto;
    }
    
    .title h1 {
        font-size: 23px;
        line-height: 1.2;
    }

    .title h2 {
        font-size: 20px;
        line-height: 1.3;
    }
    
    .title_link {
        align-items: flex-end;
        font-size: 11px;
        line-height: 1.181818182;
        margin-bottom: 4px;
        margin-right: 2px;
        gap: 10px;
    }
    
    .title_link .icon_tag {
        margin-bottom: 4px;
        width: 13px;
        height: 13px;
        background-size: contain;
        margin-bottom: 2px;
    }
    
    .event, .links_list_item {
        align-items: flex-start;
        gap: 4px;
        padding: 20px;
    }
    
    .event_content {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        width: calc(100% - 64px);
    }
    
    .event_date {
        width: 80px;
        flex-shrink: 0;
    }
    
    .event_date_num {
        font-size: 20px;
        line-height: 1.3;
    }
    
    .event_date_month {
        font-size: 9px;
        line-height: 1.222222222;
        margin-top: 0;
    }
    
    .event_name, .links_list_item_name {
        font-size: 11px;
        line-height: 1.181818182;
    
    }
    
    .event .button_red_s, .links_list_item .button_red_s {
        height: 25px;
        padding: 6px 12px;
    }




    .news, .section_top {
        margin-top: 50px;
    }

    .title + .section_top {
        margin-top: 0;
    }

    .section_mini_top {
        margin-top: 40px;
    }
    
    .news_list {
        align-items: inherit;
        flex-direction: column;
        gap: 4px;
    }
    
    .news_item {
        flex-direction: column;
        width: 100%;
        height: auto;
    }
    
    .news_item:first-child {
        width: 100%;
    }
    
    .news_item_content {
        gap: 10px;
        padding: 20px;
    }
    
    .news_item_wrapper {
        gap: 8px;
    }
    
    .news_item_date {
        font-size: 9px;
        line-height: 1.222222222;
    }
    
    .news_item_title, .news_item:first-child .news_item_title {
        height: auto;
        font-size: 14px;
        line-height: 1.3;
        text-overflow: inherit;
        overflow: inherit;
    }
    
    .news_item_title::after {
        display: none;
    }
    
    .news_item_image {
        padding: 0 20px 20px;
        width: 100%;
        height: auto;
    }
    
    .news_item_image img {
        max-width: 100%;
        height: auto;
        object-fit: inherit;
        aspect-ratio: inherit;
        border-radius: 12px;
        overflow: hidden;
    }
    
    .news_item:hover .news_item_image img {
        transform: none;
    }
    
    .news_item_tags {
        gap: 4px;
    }
    
    .news_item_tag {
        font-size: 9px;
        line-height: 1.222222222;
    }




    .support {
        margin-top: 50px;
    }
    
    .support_list {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
        gap: 4px;
    }
    
    .support_item {
        flex-direction: column;
        gap: 10px;
        width: calc((100% - 4px) / 2);
        background-color: white;
        padding: 20px
    }
    
    .support_item_name {
        width: 100%;
        font-size: 11px;
        line-height: 1.181818182;
        word-wrap: break-word;
    }
    
    .support_item_image {
        width: 100%;
        height: 70px;
    }

    .support_item_image img {
        max-width: auto;
        height: 60px;
    }




    .consultation {
        margin-top: 50px;
        padding: 20px 20px 32px 20px;
        flex-direction: column;
        gap: 10px;
    }
    
    .consultation h2 {
        font-size: 20px;
        line-height: 1.3;
        margin-bottom: 40px;
    }
    
    .consultation_image {
        background: url('../img/consultation/mb21.jpg') no-repeat;
        background-position: 50% 50%;
        background-size: cover;
        border-radius: 8px;
        overflow: hidden;
    }
    
    .consultation_comment {
        left: 50%;
        transform: translateX(-50%);
        width: 240px;
        padding: 12px 20px;
        color: white;
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .consultation_content, .consultation_form {
        width: 100%;
    }

    .consultation_form_text {
        font-size: 14px;
        line-height: 1.3;
    }
    
    .form input:not([type="submit"]), .form textarea, .form select, .consultation_form input:not([type="submit"]), .consultation_form textarea, .consultation_form select {
        display: block;
        width: 100%;
        padding: 16px 10px;
        font-size: 11px;
        line-height: 1.219090909;
    }

    .select2 {
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .select2-container .select2-selection {
        padding: 14px 10px;
    }
    
    .select2-container .select2-search--inline .select2-search__field {
        font-size: 11px;
        line-height: 1.219090909;
        min-height: 1.219090909em;
    }
    
    .select2-container--default .select2-results > .select2-results__options {
        max-height: 190px;
    }
    
    .select2-results__option {
        font-size: 11px;
        line-height: 1.219090909;
        padding-inline: 10px 30px;
        padding-block: 12px;
    }
    
    .select2-results__option::before {
        right: 10px;
        width: 16px;
        height: 16px;
    }
    
    .select2-container--default .select2-selection--multiple .select2-selection__choice {
        gap: 4px;
        margin: 0 4px 4px 0;
        font-size: 11px;
        line-height: 1.219090909;
        padding: 4px;
    }
    
    .select2-container--default .select2-selection--multiple .select2-selection__choice__display {
        padding: 1px 0 0 0;
    }
    
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
        width: 14px;
        height: 14px;
    }

    .consultation_form_errors, .form_errors {
        margin-bottom: 25px;
    }

    .consultation_form_errors, .form_errors, .consultation_form_errors > p, .form_errors > p {
        font-size: 11px;
        line-height: 1.363636364;
    }
    
    .form input:not([type="submit"]), .form select, .consultation_form input:not([type="submit"]), .consultation_form select {
        margin-bottom: 4px;
    }

    .consultation_form .button_red {
        width: 100%;
    }
    
    .consultation_form_actions {
        flex-direction: column;
        gap: 20px;
    }

    .form input[type="submit"], .form_actions {
        margin-top: 20px;
    }
    
    .form_actions, .check_personal_data {
        font-size: 10px;
        line-height: 1.219;
    }

    .placeholder {
        left: 10px;
        top: 16px;
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .form_input:focus + .placeholder, .form_input.full + .placeholder {
        font-size: 9px;
        line-height: 1.218888889;
        top: 4px;
    }

    .form_captcha img {
        margin-bottom: 4px;
    }

    .form_block_profile_data, .form_block_personal_data, .form_block_status_data, .form_block_theme_data, .form_block_agreement_data {
        margin-bottom: 30px;
    }

    .form_block_content {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    .form_buttons {
        grid-template-columns: 2fr 1fr;
        gap: 4px;
    }




    .msp {
        margin-top: 20px;
    }
    
    .msp_slider {
        padding: 20px;
    }
    
    .msp_slide {
        height: auto;
        flex-direction: column;
    }
    
    .msp_slide_content {
        max-width: 769px;
    }
    
    .msp_slide_content h2 {
        font-size: 20px;
        line-height: 1.3;
        margin-bottom: 8px;
    }
    
    .msp_slide_content p {
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .msp_slide_logo {
        width: 270px;
        height: 130px;
    }
    
    .slider_actions, .msp_slider_actions {
        margin-top: 8px;
    }
    
    .slider_pagination {
        gap: 8px;
    }
    
    .slider_pagination .swiper-pagination-bullet {
        width: 8px;
        height: 8px;
    }




    .footer {
        padding-top: 20px;
    }
    
    .footer_top {
        padding: 20px;
        flex-direction: column;
    }
    
    .footer_logos, .footer_logos > div[id^="bx_incl_area"] {
        display: flex;
        gap: 7px;
        align-items: center;
    }
    
    .footer_logo, .footer_logo img {
        width: auto;
        height: 40px;
    }
    
    .footer_logo_chr {
        margin-top: 5px;
        margin-left: 5px;
        width: 26px;
    }
    
    .footer_logo_nrp {
        margin-top: -1px;
    }
    
    .footer_logo_nrp img {
        width: 122px;
    }
    
    
    .footer_contacts, .footer_contacts > div[id^="bx_incl_area"] {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        margin-top: 20px;
        margin-left: 0;
        width: 100%;
    }
    
    .footer_contacts_phone {
        font-size: 14px;
        line-height: 1.3;
    }
    
    .footer_contacts_email {
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .footer_info {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0;
        font-size: 11px;
        line-height: 1.363636364;
        margin-top: 20px;
        width: 100%;
    }

    .footer_worktime {
        padding-right: 17px;
    }
    
    .footer_menu {
        padding: 30px 20px;
    }
    
    .footer_menu_content, .footer_bottom {
        flex-direction: column;
        gap: 0;
    }
    
    .footer_menu_content h2 {
        font-size: 14px;
        line-height: 1.3;
        margin-bottom: 30px;
    }

    .footer_menu_content h2 a {
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .footer_menu_content h2 a .icon_submenu {
        mask-image: url('../img/icons/arrow_down.svg');
        -webkit-mask-image: url('../img/icons/arrow_down.svg');
    }

    .footer_menu_content h2 a.active .icon_submenu {
        transform: scaleY(-1);
    }

    .footer_menu_content h2 a:hover .icon_submenu {
        background-color: var(--color-red);
    }
    
    .footer_menu_1, .footer_menu_2, .footer_menu_3 {
        width: 100%;
    }

    .footer_menu .button_red {
        width: 100%;
        margin-top: 30px;
        height: 41px;
        padding-block: 14px;
    }

    .footer_menu .menu {
        max-height: 0;
        overflow: hidden;
        top: -15px;
        position: relative;
    }

    .footer_menu .menu li:last-child {
        margin-bottom: 15px;
    }

    .footer_menu .menu.active {
        max-height: 1000px;
    }
    
    .footer_bottom {
        margin-top: 90px;
        font-size: 11px;
        line-height: 1.219090909;
        flex-direction: column;
        gap: 10px;
        white-space: inherit;
    }

    .footer_bottom .footer_menu_1 {
        margin-bottom: 40px;
    }



    .new_content {
        padding: 20px;
    }
    
    .new .news_item_date {
        font-size: 12px;
        line-height: 1.219166667;
    }
    
    .new_text {
        font-size: 12px;
        line-height: 1.5;
    }
    
    .new .news_item_tags {
        gap: 8px 16px;
        margin-top: 40px;
    }
    
    .new .news_item_tag {
        font-size: 12px;
        line-height: 1.219166667;
    }



    .departments_item {
        padding: 0;
    }

    .employees_list {
        gap: 4px;
        grid-template-columns: repeat(2, 1fr);
        margin-top: 20px;
    }
    
    .employees_item {
        gap: 12px;
        padding: 20px;
    }
    
    .employees_item_name {
        font-size: 15px;
        line-height: 1.266666667;
    }

    .employees_item_name > br:last-child {
        display: revert;
    }
    
    .employees_item_contacts {
        font-size: 12px;
        line-height: 1.219166667;
    }



    .contacts_block {
        padding: 0;
        flex-direction: column;
    }
    
    .contacts_content {
        height: auto;
        padding: 20px;
        width: 100%;
    }
    
    .contacts_map {
        width: 100%;
    }



    .documents_list {
        grid-template-columns: 1fr;
        gap: 1em;
    }



    .nav_tabs_list {
        flex-direction: column;
        gap: .5em;
        font-size: 18px;
        line-height: 1.3;
    }

    .tab_link {
        display: inline-block;
    }

    .rooms_list {
        grid-template-columns: 1fr;
        gap: 4px;
    }
    
    .rooms_item {
        padding: 20px;
    }

    .rooms_item_content {
        font-size: 11px;
        line-height: 1.181818182;
    }

    .tarif_plans {
        margin-top: 50px;
    }

    .tarif_plans_slider {
        padding: 20px;
    }

    .tarif_plans_slide {
        min-height: 330px;
    }

    .tarif_plans_slide p {
        font-size: 11px;
        line-height: 1.181818182;
    }
    
    .tarif_plans_slide_price {
        font-size: 18px;
        line-height: 1.3;
    }

    .tarif_plans_slider_actions.hidden.shown_sm {
        display: flex!important;
    }

    .tarif_plans_slide_action .button_red {
        display: flex;
        margin-top: 30px;
        height: 41px;
        padding-block: 14px;
    }



    table.features tr td, table.table tr td, table.table tr th {
        font-size: 12px;
        line-height: 1.219166667;
    }

    table.features td p + p, table.table td p + p {
        padding-top: .5em;
    }

    table.table {
        border: none;
    }

    table.table thead, table.table tr th {
        display: none;
    }

    table.table td {
        display: block;
        position: relative;
        border: none!important;
        padding: 1em!important;
    }

    table.table td::before {
        content: attr(data-title);
        display: block;
        position: relative;
        background-color: var(--color-grey-10);
        font-weight: 600;
        padding: 1em;
        margin-bottom: 1em;
        margin-inline: -1em;
    }

    table.table td.empty_title::before {
        display: none;
    }

    table.table tr {
        display: block;
        border-bottom: 1px solid var(--color-grey-10);
        margin-bottom: 3em;
    }

    table.table tr.empty_title {
        margin-bottom: 0;
    }



    .tiles {
        grid-template-columns: repeat(2, 1fr);
        gap: 4px;
    }
    
    .tile {
        padding: 10px;
    }
    
    .tile_image {
        width: 60px;
        height: 40px;
    }

    .tile_title {
        font-size: 12px;
        line-height: 1.5;
        hyphens: auto;
    }
    
    .tile_text {
        font-size: 11px;
        line-height: 1.454545455;
    }



    .terms_list {
        font-size: 12px;
        line-height: 1.5;
    }

    .term {
        padding: 20px;
    }



    .accordion_list {
        gap: 4px;
    }
    
    .accordion_title {
        gap: 20px;
        padding: 20px;
    }

    .accordion_title h3 {
        font-size: 15px;
        line-height: 1.4;
    }

    .accordion_title .mask_icon {
        width: 20px;
        height: 20px;
    }
    
    .accordion_text {
        padding: 20px;
        font-size: 12px;
        line-height: 1.5;
    }

    .content + .accordion_list, .content + div[id^="bx_incl_area"] {
        margin-top: 4px;
    }

    .accordion.active > .accordion_content {
        max-height: 500000px;
    }




    .search_result + .search_result {
        margin-top: 15px;
    }
    
    .search_result_title {
        font-size: 11px;
        line-height: 1.219090909;
    }
    
    .search_result_category {
        font-size: 9px;
        line-height: 1.218888889;
    }

    .mask_icon_tag {
        width: 16px;
        height: 16px;
    }
    
    .search_results .button_red {
        display: flex;
        margin-top: 20px;
    }

    .search_results .button_red .mask_icon_tag {
        width: 16px;
        height: 16px;
    }

    .search_page {
        padding-bottom: 50px;
    }

    .search_total {
        margin-block: 30px 32px;
    }

    .search_total h3 {
        font-size: 20px;
        line-height: 1.3;
    }
    
    .search_total p {
        font-size: 11px;
        line-height: 1.219090909;
        margin-top: 10px;
    }
    
    .search_result_block + .search_result_block {
        margin-top: 40px;
    }
    
    .search_result_block .breadcrumb {
        margin-block: 4.5px 8.5px;
    }

    .search_result_block_title {
        font-size: 14px;
        line-height: 1.3;
    }
    
    .search_result_block_text {
        -webkit-line-clamp: 5;
        line-clamp: 5;
        font-size: 11px;
        line-height: 1.219090909;
    }




    .pagination {
        align-items: center;
        margin-top: 40px;
        font-size: 13px;
        line-height: 1.5;
    }

    .pagination_button .mask_icon {
        width: 20px;
        height: 20px;
    }

    .pagination_button {
        margin-top: -1px;
    }

    


    .profile_actions {
        flex-direction: column;
    }

    .profile_actions > * {
        width: 100%;
    }




    .cookies_message_content {
        flex-direction: column;
        gap: 1em;
        padding: 20px 15px;
    }
    
    .cookies_message_text {
        font-size: .75rem;
    }

    .cookies_message_accept {
        height: auto!important;
        padding: 12px 24px!important;
    }
}

@media (min-width: 1153px) {
    .header.scrolled {
        transition-property: transform;
        transition-delay: .3s;
    }

    .scrolled .header_top {
        height: 50px;
        overflow: hidden;
    }

    .scrolled .header_top .header_logos .header_logo_nrp, .scrolled .header_top .header_contacts .header_social {
        display: none;
    }

    .scrolled .header_menu {
        position: absolute;
        top: 0;
        left: 20px;
        right: 20px;
        margin-top: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        height: 50px;
        z-index: -1;
    }

    .header.scrolled:not(.searched):hover .header_menu {
        border-top: 1px solid var(--color-grey-10);
        top: 50px;
    }

    .header.scrolled:not(.searched):hover .header_top {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }

    .header.scrolled .header_top .header_actions {
        display: flex!important;
        position: absolute;
        top: 8px;
        right: 40px;
        background-color: white;
    }

    .header.scrolled .header_top .header_actions .button_call_mobile {
        display: none;
    }

    .header.scrolled:not(.searched):hover .header_top .header_actions {
        top: 60px;
    }
}