.section {
    --py-section: 30px;
    padding-top: var(--py-section);
    padding-bottom: var(--py-section);
    background-color: var(--white);
}

.ico-ava {
    overflow: hidden;
    background: var(--image-placeholder);
    border-radius: 360px;
}

.ico-ava>img {
    width: 100%;
    height: 100%;
}


.gutters-features {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 30px;
}

.gutters-widget-groups {
    --bs-gutter-x: 30px;
    --bs-gutter-y: 30px;
}

.custom-row {
    display: flex;
    flex-wrap: wrap;
    --total-gutters-row: 20px;
    margin-left: calc((var(--total-gutters-row) / 2) * -1);
    margin-right: calc((var(--total-gutters-row) / 2) * -1);
    gap: var(--total-gutters-row) 0;
}

.custom-row--col {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding-left: calc(var(--total-gutters-row) / 2);
    padding-right: calc(var(--total-gutters-row) / 2);
}

.custom-row>.custom-row--col-4 {
    flex: 0 0 25%;
    max-width: 25%;
}

.custom-row>.custom-row--col-3 {
    flex: 0 0 33.33%;
    max-width: 33.33%;
}

.custom-row>.custom-row--col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.heading-block {
    display: flex;
    flex-direction: column;
}

.feature-simple-block {
    overflow: hidden;
    gap: 20px;
    display: flex;
    align-items: center;
}

.ico-feature {
    --ico-size: 50px;
    color: var(--primary);
}

.feature-title {
    color: var(--primary);
}

.news-block {
    display: flex;
    flex-direction: column;
}

.news-block--header {
    flex-wrap: wrap;
    gap: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.news-block--body {
    gap: 30px;
    display: flex;
    flex-direction: column;
}

.news-label-filter-row {
    gap: 5px;
    display: flex;
    align-items: center;
}

.news-block--header--item {
    gap: var(--gap--sm);
    display: flex;
    align-items: center;
}

.news-links-list {
    overflow: hidden;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.news-links-list,
.news-link-item-li {
    display: flex;
    align-items: center;
}

.news-link-item-li:not(:last-child) {
    padding-right: 8px;
}

.news-link-item-li:not(:last-child)::after {
    content: "";
    display: block;
    min-height: 10px;
    max-height: 10px;
    width: 0.5px;
    background: var(--primary);
    margin-left: 8px;
    pointer-events: none;
}

.single-post-row {
    --total-gutters-row: 20px;
}

.single-post-col-thmbnail {
    overflow: visible !important;
    flex: auto !important;
    max-width: 130px !important;
}


.card-content-inform,
.card-content-inform-body {
    overflow: hidden;
    gap: var(--gap--sm);
    display: flex;
    flex-direction: column;
}

.card-content-inform-head {
    gap: var(--gap--sm);
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    overflow: hidden;
}

.other-news-list {
    gap: 15px;
}

.other-news-list,
.other-news-list--item {
    display: flex;
    flex-direction: column;
}

.group-widgets {
    gap: 30px;
    display: flex;
    flex-direction: column;
}


.usefull-links-list {
    --link-size: 100px;
}

.usefull-links-list,
.usefull-links-list--item {
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.usefull-thumbnail-link {
    --min-height: auto;
    --max-height: var(--link-size);
    height: var(--max-height);
}

.usefull-links-list>.usefull-links-list--item:not(:last-child) {
    border-bottom: 1px solid var(--border-color, --border-4, #e0e1e1);
}


.card-background {
    --bg-color: #ffffff;
    position: relative;
    --bg-position: center center;
    --bg-source-url: url();

}

.card-background::before {
    filter: grayscale(1);
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "";
    background-size: cover;
    background-position: var(--bg-position);
    background-repeat: no-repeat;
    background-image: var(--bg-source-url);
    width: 100%;
    height: 100%;
}

.card-background-color::after {
    opacity: 0.8;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: var(--bg-color);
}

.card-category {
    --rgb-bgColor: 0, 0, 0;
    --bg-source-url: url("");
}

.card-category-header {
    padding: 0 !important;
    position: relative;
    overflow: hidden;
}

.card-category-header--thumbnail {
    z-index: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    filter: grayscale(1);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    background-image: var(--bg-source-url);
}

.card-category-header::before {
    pointer-events: none;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    opacity: 0.98;
    z-index: 1;
    background: linear-gradient(280deg, rgba(var(--rgb-bgColor), 0.5) 0%,
            rgba(var(--rgb-bgColor), 0.8) 19%,
            rgba(var(--rgb-bgColor), 1) 59%);
}

.category-group-title {
    font-weight: 700;
    overflow: hidden;
    color: var(--white);
    padding: var(--paddings);
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    gap: var(--gap--lg);
}

.categories-list,
.categories-list--item {
    display: flex;
    flex-direction: column;
}

.category-group-title h4 {
    margin: 5px 0;
}

.categories-list--item:not(:last-child) {

    border-bottom: 1px solid var(--border-4);
}

.hmnnu-li-menu-navigation-nav-ul .hmnnu-li-menu-navigation-nav-ul.bottom-pos {
    top: 100% !important;
    left: 0 !important;
    width: 100%;
}


.lineMarquee {
    padding: 5px;
    background: var(--border-2);
}

.group-swiper-navs {
    gap: var(--gap--sm);
    display: flex;
    --width: max-content;
    align-items: center;
    --swiper-theme-color: var(--defaultTextColor)
}

.group-swiper-navs>div {
    flex: unset;
    position: relative;
    padding: 5px !important;
    margin-top: 0 !important;
    justify-content: center;
    align-items: center;
    width: 20px;
    height: 30px;
}

.group-swiper-navs>div svg {
    width: 20px;
    height: 20px;
}

.group-swiper-navs .swiper-navigation-icon {
    display: none;
}

.banner-wrapper {
    display: flex;
}


.card-person {
    --fixed-header: 126px;
    --paddings: 20px;
}

.person-post-row {

    width: 100%;
    --total-gutters-row: 0;
}

.card-person-header {
    flex-direction: row;
    min-height: var(--fixed-header);
}


.person-col-thumbnail {
    width: var(--fixed-header);
    max-width: var(--fixed-header);
    background-color: var(--image-placeholder);
}

.person-col-thumbnail .card-thumbnail {
    aspect-ratio: 1 / 1;
    height: 100%;
}

.person-inform-wrapper {
    overflow: hidden;
    gap: 15px;
    display: flex;
    flex-direction: column;
}

.person-col-inform {
    padding: var(--paddings);
    justify-content: center;
}

.custom-line-separator {
    display: block;
    height: 0.5px;
    width: 100%;
    max-width: 50px;
    background-color: var(--border-4);
    pointer-events: none;
}

.card-person-body {
    border-top: 1px solid var(--border-color);
}


.obl-description-group {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    width: 270px;
}

.table-wrapper {
    overflow-y: hidden;
    overflow-x: auto;
}

.table-custom tbody tr:not(:last-child) td {
    border-bottom: 1px solid var(--border-4);
}

.table-custom {
    width: 100%;
    white-space: nowrap;
}

.table-wrapper::-webkit-scrollbar,
.table-custom::-webkit-scrollbar {
    display: none !important;
}

.table-custom td,
.table-custom th {
    padding: 6px;
}

.table-custom td:first-child,
.table-custom th:first-child {
    padding-left: 0;
}

.table-custom td:last-child,
.table-custom th:last-child {
    padding-right: 0;
}

.table-custom tr:first-child td,
.table-custom tr:first-child th {
    padding-top: 0;
}

.table-custom tr:last-child td,
.table-custom tr:last-child th {
    padding-bottom: 0;
}


.article-wrapper {
    gap: 12px;
    display: flex;
    flex-direction: column;
}

.article-wrapper-head {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap--md);
    align-items: center;
}

.breadcrumb-list {
    flex-wrap: wrap;
    --separator-size: 10px;
    --gap-between: 14px;
    position: relative;
    display: flex;
    align-items: center;
    gap: calc(var(--gap-between) / 2) 0;
}

.breadcrumb-list>li {
    gap: 0 var(--gap-between);
    display: flex;
    align-items: center;
    position: relative;
}

.breadcrumb-list>li:not(:last-child) {
    margin-right: var(--gap-between);
}

.breadcrumb-list>li:not(:last-child)::after {
    content: "";
    display: block;
    min-width: 0.5px;
    max-width: 0.5px;
    min-height: var(--separator-size);
    max-height: var(--separator-size);
    background-color: var(--border-5);
}

.breadcrumb-link {
    font-size: var(--text--xs);
    font-weight: 500;
    color: var(--light);
}

.breadcrumb-link:hover {
    color: var(--defaultTextColor);
}

.article-wrapper-body,
.article-page {
    display: flex;
    flex-direction: column;
}

.article-page--header {
    gap: var(--gap--md);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    border-bottom: 4px solid var(--defaultTextColor);
}

.article-page--body {
    gap: var(--gap--xs);
    display: flex;
    flex-direction: column;
}

.article-page--footer {
    display: flex;
    flex-direction: column;
}

.article-page--footer--item {
    flex-wrap: wrap;
    display: flex;
    align-items: center;
    gap: var(--gap--md);
}

.article-group-buttons {
    gap: var(--gap--md);
    display: flex;
    align-items: center;
}

.btn--square-not-width {
    width: max-content;
    min-width: auto;
    flex: unset;
}

.article-page {
    gap: 30px;
}

.article-content {
    gap: 30px;
    display: flex;
    flex-direction: column;
}

.article-content p {
    line-height: 1.5em;
    font-size: var(--defaultFontSize);
}

.article-content h1,
.article-content h2,
.article-content h3 {
    font-weight: 800;
}

.article-content h4,
.article-content h5,
.article-content h6 {
    font-weight: 700;
}

.article-content-float {
    flex-wrap: nowrap;
    position: relative;
    --image-width: 340px;
}

.article-group-text-float>p:not(:last-child) {
    margin-bottom: 20px;
}

.article-image-float {
    margin-right: 30px;
    margin-bottom: 30px;
    --min-height: 210px;
    --max-height: 210px;
    height: 210px;
    margin-right: 30px;
    position: relative;
    float: left;
    min-width: var(--image-width);
    max-width: var(--image-width);
}




.pill-custom {
    text-shadow: none;
    display: flex;
    align-items: center;
    overflow: hidden;
    border-radius: var(--pill-radius);
    width: max-content;
    max-width: 100%;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: var(--pill-width);
    border: 1px solid;
    --ico-size: 12px;
    --pill-text: var(--defaultFontSize);
    --pill-size: max-content;
    --pill-background: var(--white);
    --pill-color: var(--defaultTextColor);
    --pill-border: transparent;
    --pill-gap: var(--gap--xs);
    --pill-radius: 0;
    --pill-width: max-content;
    color: var(--pill-color);
    background: var(--pill-background);
    border-color: var(--pill-border);
    height: var(--pill-size);
    padding: 0 var(--pill-gap);
    font-size: var(--pill-text);
    font-family: var(--fontFamily);
}

.pill-custom.pill--sm {
    --pill-size: 26px;
    --pill-text: var(--text--md);
    --pill-gap: 8px;
}


.pill-custom.pill--custom-1 {
    --pill-color: var(--defaultTextColor);
    --pill-background: var(--border-6);
}

.article-page--footer--item+.article-page--footer--item {
    border-top: 1px solid var(--border-4);
    padding-top: 30px;
    margin-top: 30px;
}

.air-datepicker {
    --adp-font-size: 11px;
    --adp-z-index: 10;
    --adp-font-family: var(--fontFamily);
    --adp-background-color-selected-other-month-focused: var(--primary);
    --adp-background-color-selected-other-month: var(--primary);
    --adp-accent-color: var(--primary);
    --adp-day-name-color: var(--defaultTextColor);
    --adp-day-name-color-hover: var(--primary);
    --adp-cell-background-color-selected: var(--primary);
    --adp-cell-background-color-selected-hover: var(--primary);
}

.datepicker-element-icon {
    flex-direction: column;
    display: flex;
    position: relative;
    overflow: hidden;
    --min-height: max-content;
}

.datepicker-element-icon,
.datepicker-element-icon * {
    cursor: pointer;
}

.datepicker-element-icon>input {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    overflow: hidden;
    opacity: 0 !important;

}

.datepicker-element-icon>.datepicker-fake-button-icon {
    overflow: hidden;
    pointer-events: none;
    width: 100% !important;
    height: 100% !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.select2-wrapper {
    --fontSize: var(--defaultFontSize);
    --color: var(--defaultTextColor);
    display: flex;
    overflow: hidden;
    position: relative;
    --max-width: 100%;
    --min-width: unset;
    --height: unset;
    width: 100%;
    min-height: var(--height);
    max-width: var(--height);
    max-width: var(--max-width);
    min-width: var(--min-width);
    --select-arrow-size: var(--fontSize);
}

.select2-wrapper-lang {
    --max-width: 167px;
}

.select-size-1 {
    --max-width: 85px;
    --min-width: 85px;
}

.select2-wrapper .select2-container,
.select2-wrapper .selection,
.select2-wrapper .select2-selection {
    overflow: hidden;
    width: 100% !important;
    height: var(--height) !important;
    display: flex !important;
}

.select2-wrapper .select2-selection__arrow {
    overflow: hidden;
    display: flex !important;
    height: var(--height) !important;
}

.select2-wrapper .select2-selection__rendered {
    color: var(--color) !important;
    font-size: var(--fontSize) !important;
}

.select2-custom {
    --fontSize: var(--text--sm);
    --height: 15px;
    --color: var(--primary);
}

.select2-custom .select2-selection--single {
    align-items: center;
    gap: 4px;
    border-radius: 0 !important;
    border: none !important;
    background-color: transparent !important;
}

.select2-custom .select2-selection__rendered {
    font-weight: 600 !important;
    padding: 0 !important;
    line-height: 1.2em !important;
}

.select2-custom .select2-selection__arrow {
    width: 100%;
    max-width: max-content !important;
    position: relative !important;
    top: 0 !important;
    right: 0 !important;
}

.select2-custom .select2-selection__arrow>b {
    display: none !important;
}

.select2-custom .select2-selection__arrow::before {
    width: var(--select-arrow-size);
    content: "";
    position: relative;
    display: block;
    background-color: var(--color);
    -webkit-mask-image: url("../../img/icons/ico-fa-arrowDown.svg");
    mask-image: url("../../img/icons/ico-fa-arrowDown.svg");
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-size: var(--select-arrow-size);
    mask-size: var(--select-arrow-size);
}

.select2-custom .select2-selection__rendered {
    border-bottom: 1px dotted var(--color);
}


.select2-dropdown {
    --bg-selectable-option: var(--light-3);
    --color-selectable-option: var(--defaultTextColor);
    --bg-selected-option: var(--primary);
    --color-selected-option: var(--white);
    overflow: hidden;

    border-radius: 0 !important;
    border: 1px solid var(--light-2) !important;
}

.select2-results__options {
    display: flex;
    flex-direction: column;
}

.select2-dropdown .select2-results__option--selectable {
    background-color: var(--bg-selectable-option) !important;
    color: var(--color-selectable-option) !important;
}

.select2-dropdown .select2-results__option--selected {
    background-color: var(--bg-selected-option) !important;
    color: var(--color-selected-option) !important;
}

.select2-dropdown.select2-dropdown--below {
    transform: translateY(5px);
}

.select2-dropdown.select2-dropdown--above {
    transform: translateY(-5px);
}

.select2-results__option {
    padding: 6px !important;
}

.location-wrapper {
    gap: 6px;
    display: flex;
    align-items: center;
}

.ico-obl {
    --ico-size: 14px;
}

.ico-obl .img-flag {
    width: 100%;
    height: 100%;
}

.select2-results__option {
    line-height: normal;
    font-size: var(--text--xs);
}

.select2-custom.select2-custom-notborder .select2-selection__rendered {
    border: none !important;
}


.hm-mobile .header-logo-ico,
.hm-mobile .footer-logo-ico {
    --ico-size: 40px;
}

.header-logo-ico,
.footer-logo-ico {
    --ico-size: 80px;
}

.header-logo-ico>img,
.header-logo-ico>svg,
.footer-logo-ico>img,
.footer-logo-ico>svg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.footer-logo-ico {
    --ico-size: 40px;
}

.scroll_to_top.--active {
    opacity: 1;
    visibility: visible;
}

.scroll_to_top {
    visibility: hidden;
    opacity: 0;
    margin: 30px;
    z-index: 90;
    position: fixed;
    bottom: 0;
    right: 0;
    color: var(--white);
    border-color: transparent;
    background-color: var(--primary);
}

.hasMenuJS {
    position: relative;
}

body.open-menu .hm-mobile.--active {
    transform: translateX(0);
}

body.open-menu .menu-overlay {
    display: flex !important;
}



.is-hoverable>li:hover>ul {
    display: block !important;
}

.categories-style {
    display: flex;
    flex-direction: column;
}

.custom-lang-link~.categories-style {
    border-top: 1px solid var(--border-4);
}

.categories-list--item.mm-active>.custom-lang-link {
    color: var(--primary);
}


.form-label-input {
    overflow: hidden;
}

body .bvi-body .bvi-show.impaired-version {
    display: flex !important;
}

body .bvi-body .bvi-border-none {
    border: none !important;
}

body .bvi-body .bvi-border-b {
    border-bottom: 1px solid !important;
}

body .bvi-body :not(.bvi-no-styles) .btn:not(.bvi-no-styles):hover:not(.bvi-no-styles) {
    background-color: transparent !important;
}

.bvi-blocks {
    width: 100%;
    max-width: var(--container-size);
    justify-content: center !important;
}

html body .bvi-panel {
    z-index: 12 !important;
}

body .bvi-body .bvi-fill-transparent:not(.bvi-no-styles),
body .bvi-body .bvi-fill-transparent *:not(.bvi-no-styles) {
    fill: transparent !important;
}

.bvi-active.bvi-noscroll .header {
    z-index: 10;
}

body .bvi-body .select2-custom .select2-selection__arrow::before {
    background-color: currentColor !important;
}

body .bvi-body .menu-overlay {
    opacity: 0.7;
}

html body .bvi-body :not(.bvi-no-styles) .btn-icon {
    color: currentColor !important;
}

html body .bvi-body :not(.bvi-no-styles) .btn-icon * {
    fill: currentColor !important;
    color: currentColor !important;
}

.bvi-blocks>.bvi-block:nth-child(2) {
    display: none !important;
}

html body .bvi-body .hm-mobile-wrapper-close {
    border: 1px solid;
}

html body .bvi-body .impaired-version {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

html body .bvi-body .hm-mobile .impaired-version {
    display: none !important;
}

html body .bvi-body .card-category-header {
    border-bottom: 1px solid;
}

html body .bvi-body .card {
    --bg-color: #000 !important;
}

.page-item.active .page-link {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}

.page-item:first-child .page-link,
.page-item:last-child .page-link {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.page-link {
    color: var(--primary);
}