/*стайл бандл*/

.footer_contacts {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-right: 10%
}

.footer_contacts .footer_contacts_buttons {
    display: flex;
    gap: .5rem
}

.footer_contacts .footer_contacts_buttons_item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid;
    border-radius: 50%;
    cursor: pointer
}

.footer_contacts .footer_contacts_buttons_item:hover {
    color: #000;
    background: var(--main-color);
    border: 1px solid
}

.footer_contacts .footer_contacts_buttons_item svg,
.footer_contacts .footer_contacts_buttons_item:hover svg,
.footer_contacts svg {
    fill: currentcolor
}



/* --- СТИЛИ ДЛЯ ВЫДЕЛЕНИЯ TELEGRAM --- */

/* 1. Изменяем кружок (контейнер) */
a[href*="telegram"] .footer_contacts_buttons_item {
    /* Увеличиваем размер (как у инстаграма) */
    width: 60px;
    height: 60px;

    /* Фирменный голубой градиент Telegram */
    background: linear-gradient(135deg, #2AABEE 0%, #229ED9 100%);

    /* Убираем рамку */
    border: none;

    /* Голубое свечение */
    box-shadow: 0 0 20px rgba(34, 158, 217, 0.6);

    /* Плавная анимация */
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);

    /* Поднимаем на тот же уровень, что и Instagram */
    margin-top: -10px;
}

/* 2. Изменяем саму иконку (самолетик) */
a[href*="telegram"] .footer_contacts_buttons_item svg {
    /* Размер иконки */
    width: 28px;
    height: 28px;

    /* Делаем иконку белой */
    fill: #ffffff !important;

    /* Небольшая оптическая поправка: самолетик часто кажется смещенным,
       сдвинем его чуть левее для визуального центра */
    margin-right: 2px;
    margin-top: 2px;
}

/* 3. Эффект при наведении */
a[href*="telegram"] .footer_contacts_buttons_item:hover {
    /* Увеличение */
    transform: scale(1.15);

    /* Усиливаем голубое свечение */
    box-shadow: 0 0 30px rgba(34, 158, 217, 0.9);

    /* Перебиваем стандартный ховер */
    background: linear-gradient(135deg, #2AABEE 0%, #229ED9 100%) !important;
    border: none !important;
}

/* --- СТИЛИ ДЛЯ ВЫДЕЛЕНИЯ INSTAGRAM --- */

/* 1. Изменяем сам контейнер (кружок) только для Инстаграма */
a[href*="instagram"] .footer_contacts_buttons_item {
    /* Увеличиваем размер кружка (было 40px) */
    width: 60px;
    height: 60px;

    /* Делаем фирменный градиентный фон Instagram */
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);

    /* Убираем рамку, она не нужна на градиенте */
    border: none;

    /* Добавляем красивое свечение (тень) в цвет бренда */
    box-shadow: 0 0 20px rgba(214, 36, 159, 0.6);

    /* Плавная анимация при наведении */
    transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);

    /* Поднимаем кнопку чуть выше остальных, чтобы она выделялась */
    margin-top: -10px;
}

/* 2. Изменяем саму иконку внутри */
a[href*="instagram"] .footer_contacts_buttons_item svg {
    /* Увеличиваем иконку внутри круга */
    width: 32px;
    height: 32px;

    /* Красим иконку в белый цвет */
    fill: #ffffff !important;
}

/* 3. Эффект при наведении курсора */
a[href*="instagram"] .footer_contacts_buttons_item:hover {
    /* Сильное увеличение (пульсация) */
    transform: scale(1.15);

    /* Усиливаем свечение */
    box-shadow: 0 0 30px rgba(214, 36, 159, 0.9);

    /* ВАЖНО: Перебиваем ваш стандартный ховер (который делает кнопку черной/цветной) */
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important;
    border: none !important;
}

.footer_contacts_text {
    margin-top: 27px;
    margin-bottom: 32px;
    font-size: 16px;
    line-height: 24px;
    color: currentcolor
}

@media(max-width:1279.98px) {
    .footer_contacts_text {
        font-size: 14px
    }
}

@media(max-width:767.98px) {
    .footer_contacts_text {
        font-size: 16px;
        text-align: center
    }
}

.footer_contacts_text p {
    margin-bottom: 0
}

@media(max-width:767.98px) {
    .footer_contacts {
        align-items: center;
        justify-content: center;
        margin: 0;
        padding: 32px 0
    }
}



.footer_container {
    color: #fff;
    background: #222 url(../pics/noise_bg_2.webp)
}

.footer {
    display: flex;
    justify-content: space-between;
    padding: 56px;
    color: #fff;
    border-top: 1px solid;
    border-bottom: 1px solid
}

.footer_logo {
    max-height: 120px;
    width: auto;
    cursor: pointer;
    transition: transform 0.3s ease;
    display: block;
    margin-bottom: 15px;
}

.footer_logo:hover {
    transform: scale(1.05);
}





.footer_quick_links_container {
    display: flex;
    gap: 60px;
    margin: 0 auto;
}

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

.footer_links_title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #ffffff;
    text-transform: uppercase;
}

.footer_links_list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer_links_list li a {
    color: #afafbe;
    text-decoration: none;
    font-size: 15px;
    transition: color 0.3s ease;
}

.footer_links_list li a:hover {
    color: #fff;
}

@media(max-width: 991.98px) {
    .footer_quick_links_container {
        gap: 30px;
        flex-wrap: wrap;
        margin-right: 20px;
    }
}

@media(max-width: 767.98px) {
    .footer_quick_links_container {
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-left: 0;
        margin-right: 0;
        margin-top: 30px;
        margin-bottom: 30px;
        gap: 40px;
    }
}

.footer_menu {
    display: none;
    width: 100%;
    cursor: pointer
}

.footer_menu svg {
    fill: currentcolor
}

.footer_menu svg:hover {
    fill: #838383
}

@media(max-width:767.98px) {
    .footer_menu {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 32px;
        padding: 16px 112px;
        border-top: 1px solid;
        border-bottom: 1px solid
    }
}

.footer_menu_text {
    margin-right: 12px;
    font-size: 20px;
    line-height: 20px;
    color: currentcolor
}

.footer_menu_text:hover {
    color: #838383
}


@media(max-width:767.98px) {
    .footer {
        align-items: center;
        padding: 0;
        flex-direction: column
    }
}





.mini_buttons {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: -moz-fit-content;
    width: fit-content;
    height: -moz-fit-content;
    height: fit-content;
    padding: 10px 28px;
    font-weight: 600;
    font-size: 20px;
    line-height: 29px;
    font-family: Golos, sans-serif;
    text-align: center;
    text-transform: uppercase;
    border: 1px solid #202020;
    border-radius: 10px;
    transition: all .15s ease-in-out;
    cursor: pointer;
    isolation: isolate;
    overflow: hidden
}

.mini_buttons:hover:after {
    border-radius: 10px;
    opacity: 1;
    transform: scale(1.1)
}

.mini_buttons[data-variant=black] {
    color: #fff;
    background: #202020;
    --hover-background-color: #fff
}

.mini_buttons[data-variant=black]:hover {
    color: #202020
}

.mini_buttons[data-variant=white] {
    color: #202020;
    background: #fff;
    border: 1px solid #fff;
    --hover-background-color: #000
}

.mini_buttons[data-variant=white]:hover {
    color: #fff
}

.mini_buttons[data-variant=gradient] {
    color: #fff;
    background: var(--main-color);
    border: none;
    --hover-background-color: $black
}

.mini_buttons[data-variant=gradient]:hover {
    color: #fff
}

.mini_buttons[data-variant=none] {
    color: none;
    background: none;
    border: none
}

.mini_buttons:after {
    position: absolute;
    z-index: -1;
    content: "";
    background-color: var(--hover-background-color);
    border-radius: 50%;
    opacity: 0;
    transition: all .2s ease;
    transform: scale(.3);
    inset: 0
}

.mini_buttons.mini_buttons_border {
    border: 1px solid
}

.mini_buttons.mini_buttons_rounded {
    border-radius: 50px
}

.mini_buttons_width {
    width: 100%
}

@media(max-width:1279.98px) {
    .mini_buttons {
        padding: 8px 28px;
        font-size: 20px;
        line-height: 24px
    }
}


.rules {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 56px;
    font-size: 14px;
    color: currentcolor;
    border-bottom: 1px solid;
    opacity: .7
}

@media(max-width:767.98px) {
    .rules {
        flex-direction: column;
        padding: 32px 12px;
        opacity: 1
    }
}

.rules_1block {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

@media(max-width:767.98px) {
    .rules_1block {
        align-items: center;
        text-align: center
    }
}

.rules_personData {
    font-size: 14px
}

@media(max-width:767.98px) {
    .rules_personData {
        width: 240px;
        margin-bottom: 20px;
        text-align: center
    }
}

.rules_2block {
    display: flex;
    flex-direction: column;
    align-items: flex-end
}

@media(max-width:767.98px) {
    .rules_2block {
        align-items: center
    }
}


@media(max-width:767.98px) {
    .menu_open_item-wrapper {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%
    }
}

.menu_open_item-wrapper svg {
    fill: #202020
}



.menu_open_item:nth-child(3) {
    border-right: none
}

@media(max-width:1279.98px) {
    .menu_open_item {
        width: 50%
    }

    .menu_open_item:nth-child(3) {
        border-right: 1px solid #fff
    }

    .menu_open_item:nth-child(2n) {
        border-right: none
    }
}

@media(max-width:767.98px) {
    .menu_open_item {
        border-right: 0
    }

    .menu_open_item:nth-child(3) {
        border-right: none
    }
}

.menu_open_item h5 {
    margin-bottom: 20px
}

@media(max-width:767.98px) {
    .menu_open_item h5 {
        margin-bottom: 0
    }
}

.menu_open_item {
    width: 100%;
    padding: 24px 12px;

    /* Тонкая белая линия (0.3 - это прозрачность от 0 до 1) */
    border-right: 1px solid rgba(255, 255, 255, 0.3);
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    border-top: 1px solid rgba(255, 255, 255, 0.3);

    /* Важно: чтобы добавление границ не ломало сетку */
    box-sizing: border-box;
}



.menu_list {
    display: flex;
    align-items: center;
    margin-right: 5px;
    margin-left: 50px;
    gap: 16px;
}

.menu_list a {
    font-weight: 600;
    font-size: 20px
}

@media(max-width:1700px) {
    .menu_list a {
        font-size: 16px
    }
}

@media(max-width:1600px) {
    .menu_list {
        margin: 0
    }
}

@media(max-width:1439px) {
    .menu_list {
        display: none
    }
}

.menu_list_item {
    margin-right: 40px;
    cursor: pointer;
    position: relative;
    padding-bottom: 5px;

}



.menu_list_item:last-child {
    margin-right: 0
}

/* 2. Рисуем скрытую линию под текстом */
.menu_list_item::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    /* Толщина линии */
    bottom: 0;
    /* Прижимаем к низу */
    left: 0;
    background-color: #afafbe;
    /* Белый цвет линии */

    /* Скрываем линию (сжимаем её ширину до 0) */
    transform: scaleX(0);
    /* Точка старта анимации (left = слева, center = из центра) */
    transform-origin: left;
    /* Плавность анимации (0.3 секунды) */
    transition: transform 0.3s ease-in-out;
}

/* 3. Показываем линию при наведении (HOVER) ИЛИ если есть класс (ACTIVE) */
.menu_list_item:hover::after,
.menu_list_item.active::after {
    transform: scaleX(1);
    /* Показать линию */
}

/* (Опционально) Меняем цвет текста у активной вкладки */
.menu_list_item.active {
    /* color: var(--main-color);  Можно сделать текст желтым/салатовым */
    opacity: 1;
}

.menu_item_active {
    color: #afafbe;
    pointer-events: none
}

.menu_default_link {
    font-size: 20px;
    text-decoration: none
}


/* контейнер выпадашки */
.menu_dropdown {
    position: relative;
    height: 100%;

}

/* панель */
.menu_dropdown__panel {
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 350px;
    padding: 8px;
    display: none;
    border-radius: 12px;
    background: #eef2f7;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    z-index: 9999;
}

/* пункты */
.menu_dropdown__item {
    display: block;
    padding: 10px 12px;
    border-radius: 10px;
    text-decoration: none;
    color: #090914;
    transition: background 0.2s;
    white-space: nowrap;
}

.menu_dropdown__item:hover {
    background: rgba(10, 3, 36, 0.144);

}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* показать список */
.menu_dropdown:hover .menu_dropdown__panel,
.menu_dropdown:focus-within .menu_dropdown__panel {
    display: block;
}

.menu_dropdown:hover .menu_dropdown__panel {
    display: block;
    /* Показываем список */
    animation: fadeIn 0.2s ease-in-out;
    /* Плавное появление (код анимации ниже) */
}

/* анти-пропадание при наведении */
.menu_dropdown__panel::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 0;
    right: 0;
    height: 8px;
    background: transparent;
}

/* обычное состояние */
.menu_dropdown>.menu_list_item {
    color: #ffffff;
}

/* при наведении */
.menu_dropdown>.menu_list_item:hover {
    color: #afafbe;
    /* серый */
}

/* контейнер пунЕНТ с вложенным списком */
.menu_dropdown_item_with_sub {
    position: relative;

}

/* вложенный список (вправо) */
.menu_dropdown__subpanel {
    position: absolute;
    top: 0;
    left: 100%;
    margin-left: -8px;
    min-width: 240px;

    display: none;
    padding: 8px;

    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
    z-index: 9999;
}

/* показать вложенный список */
.menu_dropdown_item_with_sub:hover>.menu_dropdown__subpanel,
.menu_dropdown_item_with_sub:focus-within>.menu_dropdown__subpanel {
    display: block;
}

/* мостик, чтобы меню не пропадало */
.menu_dropdown__subpanel::before {
    content: "";
    position: absolute;
    left: -8px;
    top: 0;
    width: 8px;
    height: 100%;
}

header,
.Header {
    position: relative;
    z-index: 10000 !important;
    /* Делаем шапку выше всех на сайте */
}

.header_down {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 21px 56px;
    border-bottom: 2px solid #fff
}

.header_down svg {
    color: #202020;
    fill: #fff
}

.header_down_logo>img {
    margin-bottom: 10px;

    cursor: pointer;
    width: 120px;
    height: 120px;
    object-fit: contain;
    /* Ограничиваем максимальную ширину как у старого SVG */
}

@media(max-width:767.98px) {
    .header_down_logo>img {
        width: 120px;
        height: 120px;
        /* auto сохранит правильные пропорции картинки */
    }
}


.header_down_menu_graphics {
    width: 53px;
    height: 53px;
    color: #fff;
    cursor: pointer;
    fill: #202020;
}




@media(max-width:767.98px) {
    .header_down {
        padding: 12px 24px
    }

    .header_down_buttons {
        display: none !important;
    }
}

.header_down_buttons {
    display: flex;
    align-items: center;
    gap: .75rem
}

/* Базовые стили кнопки */
.header_down_menu_btn {
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
}

.header_down_menu_graphics {
    width: 53px;
    height: 53px;
}

/* Стили для группы точек */
.menu-dots {
    /* Жестко задаем центр вращения (центр SVG 53х53) */
    transform-origin: 26.5px 26.5px;
    /* Настраиваем плавность анимации */
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Состояние "Ромб" при активной кнопке */
.header_down_menu_btn.open .menu-dots {
    transform: rotate(45deg);
    /* Можно добавить scale(0.8), если ромб визуально кажется слишком большим */
}

.header_down_locale_changer {
    position: relative;
    width: 2.25rem;
    padding: 0;
    font-size: 1rem;
    text-align: end;
    text-transform: none;
    color: currentcolor;
    background: none;
    border-color: currentcolor;
    border-radius: 50%;
    aspect-ratio: 1
}

.header_down_locale_changer:before {
    position: absolute;
    content: "";
    background-position: 50%;
    border-radius: 50%;
    inset: .3rem;
    background-size: cover
}

.header_down_locale_changer[data-lang="en"]:before {
    background-image: url("../pics/uk-flag.de14d393.webp");
}

.header_down_locale_changer[data-lang="ru"]:before {
    background-image: url("../pics/russia-flag.c20fcc19.jpeg");
}

.header_down_locale_changer[data-lang="kz"]:before {
    background-image: url("../pics/kz-flag.jpg");
}

@media(min-width:768px) {
    .header_down_locale_changer {
        display: none
    }
}

.header_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 56px;
}

@media(max-width:767.98px) {
    .header_top {
        display: none
    }
}


.header_link {
    display: flex;
    align-items: center;
    margin-right: 24px;
    cursor: pointer
}

.header_link-text {
    margin-right: 6px;
    font-weight: 400
}

.header_link-text:hover {
    color: #c8c8c8
}

.header_phone_contact {
    margin-right: 24px
}

.header_email_contact:hover,
.header_phone_contact:hover {
    color: #c8c8c8
}


.header_language_changer {
    position: relative;
    width: 4.5rem;
    height: 2rem;
    padding: 0 .5rem;
    font-size: 1rem;
    text-align: end;
    text-transform: none;
    color: currentcolor;
    background: none;
    border-color: currentcolor;
    border-radius: 10rem
}

.header_language_changer:hover {
    color: #000;
    background-color: #fff
}

.header_language_changer:before {
    position: absolute;
    content: "";
    width: 1.25rem;
    background-position: 50%;
    border-radius: 50%;
    aspect-ratio: 1;
    inset: .3rem .4rem;
    background-size: cover
}

.locale-switcher {
    display: flex;
    align-items: center;
    gap: 8px;
    /* расстояние между кнопками - подберите по вкусу */
    margin-left: 16px;
    /* отступ от блока контактов, при необходимости убрать */
}

.header_language_changer[data-lang="en"]:before {
    background-image: url("../pics/uk-flag.de14d393.webp");
    /* английский (UK/EN) */
}

.header_language_changer[data-lang="ru"]:before {
    background-image: url("../pics/russia-flag.c20fcc19.jpeg");
    /* русский */
}

.header_language_changer[data-lang="kz"]:before {
    background-image: url("../pics/kz-flag.jpg");
    /* казахский */
}

html[lang="ru"] .header_language_changer[data-lang="ru"],
html[lang="en"] .header_language_changer[data-lang="en"],
html[lang="kz"] .header_language_changer[data-lang="kz"] {
    color: #000;
    background-color: #fff;
    font-weight: 600;
}


.Header {

    color: #fff;
    position: relative;


    z-index: 1000;
    /* Больше, чем 800 у меню */

}

.header_white_line {
    width: 100%;
    height: 1px;
    background: #fff
}






.header_blue {
    color: #fff;
    background: #4e668a url(../pics/noise_bg.webp)
}

body {
    overflow-x: hidden;
}

.page-layout {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    color: #000000;
    background: var(--background, transparent);
    z-index: 0;
}

.page-layout.page-layout--overflow-hidden {
    overflow: hidden
}

.all_body {
    flex: 1 0 100%
}

.Default_main-page__ZsjRq {
    --banner-color: #388073
}

.page-layout--bachelor {
    --background: #6685b2 url(../pics/noise_bg.webp);
    --main-color: #e4f0a7;
    --accent-color: #a2b7d8;
    --contrast-color: #e4f0a7;
}

.page-layout--bachelor {
    --menu-main-color: #58739c;
    --menu-accent-color: #4c6080;
    --banner-color: #7da4df;
}









Header:root,
[data-bs-theme=light] {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-rgb: 13, 110, 253;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary-text-emphasis: #052c65;
    --bs-secondary-text-emphasis: #2b2f32;
    --bs-success-text-emphasis: #0a3622;
    --bs-info-text-emphasis: #055160;
    --bs-warning-text-emphasis: #664d03;
    --bs-danger-text-emphasis: #58151c;
    --bs-light-text-emphasis: #495057;
    --bs-dark-text-emphasis: #495057;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-info-bg-subtle: #cff4fc;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #ced4da;
    --bs-primary-border-subtle: #9ec5fe;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-success-border-subtle: #a3cfbb;
    --bs-info-border-subtle: #9eeaf9;
    --bs-warning-border-subtle: #ffe69c;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-light-border-subtle: #e9ecef;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --bs-gradient: linear-gradient(180deg, hsla(0, 0%, 100%, .15), hsla(0, 0%, 100%, 0));
    --bs-body-font-family: "Golos", sans-serif;
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg: #fff;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(33, 37, 41, .75);
    --bs-secondary-color-rgb: 33, 37, 41;
    --bs-secondary-bg: #e9ecef;
    --bs-secondary-bg-rgb: 233, 236, 239;
    --bs-tertiary-color: rgba(33, 37, 41, .5);
    --bs-tertiary-color-rgb: 33, 37, 41;
    --bs-tertiary-bg: #f8f9fa;
    --bs-tertiary-bg-rgb: 248, 249, 250;
    --bs-heading-color: inherit;
    --bs-link-color: #0d6efd;
    --bs-link-color-rgb: 13, 110, 253;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #0a58ca;
    --bs-link-hover-color-rgb: 10, 88, 202;
    --bs-code-color: #d63384;
    --bs-highlight-bg: #fff3cd;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, .175);
    --bs-border-radius: 0.375rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-xxl: 2rem;
    --bs-border-radius-2xl: var(--bs-border-radius-xxl);
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, .15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, .075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .075);
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(13, 110, 253, .25);
    --bs-form-valid-color: #198754;
    --bs-form-valid-border-color: #198754;
    --bs-form-invalid-color: #dc3545;
    --bs-form-invalid-border-color: #dc3545
}

[data-bs-theme=dark] {
    color-scheme: dark;
    --bs-body-color: #dee2e6;
    --bs-body-color-rgb: 222, 226, 230;
    --bs-body-bg: #212529;
    --bs-body-bg-rgb: 33, 37, 41;
    --bs-emphasis-color: #fff;
    --bs-emphasis-color-rgb: 255, 255, 255;
    --bs-secondary-color: rgba(222, 226, 230, .75);
    --bs-secondary-color-rgb: 222, 226, 230;
    --bs-secondary-bg: #343a40;
    --bs-secondary-bg-rgb: 52, 58, 64;
    --bs-tertiary-color: rgba(222, 226, 230, .5);
    --bs-tertiary-color-rgb: 222, 226, 230;
    --bs-tertiary-bg: #2b3035;
    --bs-tertiary-bg-rgb: 43, 48, 53;
    --bs-primary-text-emphasis: #6ea8fe;
    --bs-secondary-text-emphasis: #a7acb1;
    --bs-success-text-emphasis: #75b798;
    --bs-info-text-emphasis: #6edff6;
    --bs-warning-text-emphasis: #ffda6a;
    --bs-danger-text-emphasis: #ea868f;
    --bs-light-text-emphasis: #f8f9fa;
    --bs-dark-text-emphasis: #dee2e6;
    --bs-primary-bg-subtle: #031633;
    --bs-secondary-bg-subtle: #161719;
    --bs-success-bg-subtle: #051b11;
    --bs-info-bg-subtle: #032830;
    --bs-warning-bg-subtle: #332701;
    --bs-danger-bg-subtle: #2c0b0e;
    --bs-light-bg-subtle: #343a40;
    --bs-dark-bg-subtle: #1a1d20;
    --bs-primary-border-subtle: #084298;
    --bs-secondary-border-subtle: #41464b;
    --bs-success-border-subtle: #0f5132;
    --bs-info-border-subtle: #087990;
    --bs-warning-border-subtle: #997404;
    --bs-danger-border-subtle: #842029;
    --bs-light-border-subtle: #495057;
    --bs-dark-border-subtle: #343a40;
    --bs-heading-color: inherit;
    --bs-link-color: #6ea8fe;
    --bs-link-hover-color: #8bb9fe;
    --bs-link-color-rgb: 110, 168, 254;
    --bs-link-hover-color-rgb: 139, 185, 254;
    --bs-code-color: #e685b5;
    --bs-border-color: #495057;
    --bs-border-color-translucent: hsla(0, 0%, 100%, .15);
    --bs-form-valid-color: #75b798;
    --bs-form-valid-border-color: #75b798;
    --bs-form-invalid-color: #ea868f;
    --bs-form-invalid-border-color: #ea868f
}

*,
:after,
:before {
    box-sizing: border-box
}

@media(prefers-reduced-motion:no-preference) {
    :root {
        scroll-behavior: smooth
    }
}

body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    background: #6685b2 url(../pics/noise_bg.webp);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: var(--bs-border-width) solid;
    opacity: .25
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--bs-heading-color)
}

.h1,
h1 {
    font-size: calc(1.375rem + 1.5vw)
}

@media(min-width:1200px) {

    .h1,
    h1 {
        font-size: 2.5rem
    }
}

.h2,
h2 {
    font-size: calc(1.325rem + .9vw)
}

@media(min-width:1200px) {

    .h2,
    h2 {
        font-size: 2rem
    }
}

.h3,
h3 {
    font-size: calc(1.3rem + .6vw)
}

@media(min-width:1200px) {

    .h3,
    h3 {
        font-size: 1.75rem
    }
}

.h4,
h4 {
    font-size: calc(1.275rem + .3vw)
}

@media(min-width:1200px) {

    .h4,
    h4 {
        font-size: 1.5rem
    }
}

.h5,
h5 {
    font-size: 1.25rem
}

.h6,
h6 {
    font-size: 1rem
}

p {
    margin-top: 0;
    margin-bottom: 1rem
}


address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit
}

ol,
ul {
    padding-left: 2rem
}

dl,
ol,
ul {
    margin-top: 0;
    margin-bottom: 1rem
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-bottom: 0
}

dt {
    font-weight: 700
}

dd {
    margin-bottom: .5rem;
    margin-left: 0
}

blockquote {
    margin: 0 0 1rem
}

b,
strong {
    font-weight: bolder
}

.small,
small {
    font-size: .875em
}

.mark,
mark {
    padding: .1875em;
    background-color: var(--bs-highlight-bg)
}

sub,
sup {
    position: relative;
    font-size: .75em;
    line-height: 0;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

a {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
    text-decoration: underline
}

a:hover {
    --bs-link-color-rgb: var(--bs-link-hover-color-rgb)
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none
}

code,
kbd,
pre,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: .875em
}

pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal
}

code {
    font-size: .875em;
    color: var(--bs-code-color);
    word-wrap: break-word
}

a>code {
    color: inherit
}



figure {
    margin: 0 0 1rem
}

img,
svg {
    vertical-align: middle
}

table {
    caption-side: bottom;
    border-collapse: collapse
}

caption {
    padding-top: .5rem;
    padding-bottom: .5rem;
    color: var(--bs-secondary-color);
    text-align: left
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent
}

tbody,
td,
tfoot,
th,
thead,
tr {
    border: 0 solid;
    border-color: inherit
}

label {
    display: inline-block
}

button {
    border-radius: 0
}

button:focus:not(:focus-visible) {
    outline: 0
}

button,
input,
optgroup,
select,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

button,
select {
    text-transform: none
}

[role=button] {
    cursor: pointer
}

select {
    word-wrap: normal
}

select:disabled {
    opacity: 1
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
    display: none !important
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
    cursor: pointer
}

::-moz-focus-inner {
    padding: 0;
    border-style: none
}


::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-year-field {
    padding: 0
}

::-webkit-inner-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-color-swatch-wrapper {
    padding: 0
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button
}

::file-selector-button {
    font: inherit;
    -webkit-appearance: button
}


iframe {
    border: 0
}




[hidden] {
    display: none !important
}

.lead {
    font-size: 1.25rem;
    font-weight: 300
}



.container {
    --bs-gutter-x: 16px;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x)*.5);
    padding-left: calc(var(--bs-gutter-x)*.5);
    margin-right: auto;
    margin-left: auto
}

@media(min-width:576px) {

    .container {
        max-width: 540px
    }
}

@media(min-width:768px) {

    .container {
        max-width: 720px
    }
}

@media(min-width:992px) {

    .container {
        max-width: 960px
    }
}

@media(min-width:1280px) {

    .container {
        max-width: 1248px
    }
}

@media(min-width:1500px) {

    .container {
        max-width: 1420px
    }
}

:root {
    --bs-breakpoint-xs: 0;
    --bs-breakpoint-sm: 576px;
    --bs-breakpoint-md: 768px;
    --bs-breakpoint-lg: 992px;
    --bs-breakpoint-xl: 1280px;
    --bs-breakpoint-xxl: 1500px
}



.table {
    --bs-table-color-type: initial;
    --bs-table-bg-type: initial;
    --bs-table-color-state: initial;
    --bs-table-bg-state: initial;
    --bs-table-color: var(--bs-body-color);
    --bs-table-bg: var(--bs-body-bg);
    --bs-table-border-color: var(--bs-border-color);
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: var(--bs-body-color);
    --bs-table-striped-bg: rgba(0, 0, 0, .05);
    --bs-table-active-color: var(--bs-body-color);
    --bs-table-active-bg: rgba(0, 0, 0, .1);
    --bs-table-hover-color: var(--bs-body-color);
    --bs-table-hover-bg: rgba(0, 0, 0, .075);
    width: 100%;
    margin-bottom: 1rem;
    vertical-align: top;
    border-color: var(--bs-table-border-color)
}

.table>:not(caption)>*>* {
    padding: .5rem;
    color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
    background-color: var(--bs-table-bg);
    border-bottom-width: var(--bs-border-width);
    box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))
}

.table>tbody {
    vertical-align: inherit
}

.table>thead {
    vertical-align: bottom
}





.table-info {
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color)
}

.table-info {
    --bs-table-color: #000;
    --bs-table-bg: #cff4fc;
    --bs-table-border-color: #badce3;
    --bs-table-striped-bg: #c5e8ef;
    --bs-table-striped-color: #000;
    --bs-table-active-bg: #badce3;
    --bs-table-active-color: #000;
    --bs-table-hover-bg: #bfe2e9;
    --bs-table-hover-color: #000
}




.btn {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    --bs-btn-font-family: ;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 400;
    --bs-btn-line-height: 1.5;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: var(--bs-border-radius);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 hsla(0, 0%, 100%, .15), 0 1px 1px rgba(0, 0, 0, .075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
}

@media(prefers-reduced-motion:reduce) {
    .btn {
        transition: none
    }
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color)
}


.btn:focus-visible {
    color: var(--bs-btn-hover-color);
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
    outline: 0;
    box-shadow: var(--bs-btn-focus-box-shadow)
}


.fade {
    transition: opacity .15s linear
}

@media(prefers-reduced-motion:reduce) {
    .fade {
        transition: none
    }
}

.fade:not(.show) {
    opacity: 0
}

.dropdown {
    position: relative
}

.dropdown-toggle {
    white-space: nowrap
}

.dropdown-toggle:after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent
}

.dropdown-toggle:empty:after {
    margin-left: 0
}

.dropdown-menu {
    --bs-dropdown-zindex: 1000;
    --bs-dropdown-min-width: 10rem;
    --bs-dropdown-padding-x: 0;
    --bs-dropdown-padding-y: 0.5rem;
    --bs-dropdown-spacer: 0.125rem;
    --bs-dropdown-font-size: 1rem;
    --bs-dropdown-color: var(--bs-body-color);
    --bs-dropdown-bg: var(--bs-body-bg);
    --bs-dropdown-border-color: var(--bs-border-color-translucent);
    --bs-dropdown-border-radius: var(--bs-border-radius);
    --bs-dropdown-border-width: var(--bs-border-width);
    --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    --bs-dropdown-divider-margin-y: 0.5rem;
    --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, .15);
    --bs-dropdown-link-color: var(--bs-body-color);
    --bs-dropdown-link-hover-color: var(--bs-body-color);
    --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #0d6efd;
    --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
    --bs-dropdown-item-padding-x: 1rem;
    --bs-dropdown-item-padding-y: 0.25rem;
    --bs-dropdown-header-color: #6c757d;
    --bs-dropdown-header-padding-x: 1rem;
    --bs-dropdown-header-padding-y: 0.5rem;
    position: absolute;
    z-index: var(--bs-dropdown-zindex);
    display: none;
    min-width: var(--bs-dropdown-min-width);
    padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
    margin: 0;
    font-size: var(--bs-dropdown-font-size);
    color: var(--bs-dropdown-color);
    text-align: left;
    list-style: none;
    background-color: var(--bs-dropdown-bg);
    background-clip: padding-box;
    border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
    border-radius: var(--bs-dropdown-border-radius)
}

.dropdown-menu[data-bs-popper] {
    top: 100%;
    left: 0;
    margin-top: var(--bs-dropdown-spacer)
}


.dropup .dropdown-menu[data-bs-popper] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: var(--bs-dropdown-spacer)
}

.dropup .dropdown-toggle:after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: 0;
    border-right: .3em solid transparent;
    border-bottom: .3em solid;
    border-left: .3em solid transparent
}

.dropup .dropdown-toggle:empty:after {
    margin-left: 0
}

.dropend .dropdown-menu[data-bs-popper] {
    top: 0;
    right: auto;
    left: 100%;
    margin-top: 0;
    margin-left: var(--bs-dropdown-spacer)
}

.dropend .dropdown-toggle:after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: 0;
    border-bottom: .3em solid transparent;
    border-left: .3em solid
}

.dropend .dropdown-toggle:empty:after {
    margin-left: 0
}

.dropend .dropdown-toggle:after {
    vertical-align: 0
}

.dropstart .dropdown-menu[data-bs-popper] {
    top: 0;
    right: 100%;
    left: auto;
    margin-top: 0;
    margin-right: var(--bs-dropdown-spacer)
}

.dropstart .dropdown-toggle:after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    display: none
}

.dropstart .dropdown-toggle:before {
    display: inline-block;
    margin-right: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid transparent;
    border-right: .3em solid;
    border-bottom: .3em solid transparent
}

.dropstart .dropdown-toggle:empty:after {
    margin-left: 0
}

.dropstart .dropdown-toggle:before {
    vertical-align: 0
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    clear: both;
    font-weight: 400;
    color: var(--bs-dropdown-link-color);
    text-align: inherit;
    text-decoration: none;
    white-space: nowrap;
    background-color: transparent;
    border: 0;
    border-radius: var(--bs-dropdown-item-border-radius, 0)
}

.dropdown-item:focus,
.dropdown-item:hover {
    color: var(--bs-dropdown-link-hover-color);
    background-color: var(--bs-dropdown-link-hover-bg)
}

.dropdown-item.active,
.dropdown-item:active {
    color: var(--bs-dropdown-link-active-color);
    text-decoration: none;
    background-color: var(--bs-dropdown-link-active-bg)
}

.dropdown-item.disabled,
.dropdown-item:disabled {
    color: var(--bs-dropdown-link-disabled-color);
    pointer-events: none;
    background-color: transparent
}

.dropdown-menu.show {
    display: block
}

.dropdown-header {
    display: block;
    padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
    margin-bottom: 0;
    font-size: .875rem;
    color: var(--bs-dropdown-header-color);
    white-space: nowrap
}

.dropdown-item-text {
    display: block;
    padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
    color: var(--bs-dropdown-link-color)
}

.dropdown-menu-dark {
    --bs-dropdown-color: #dee2e6;
    --bs-dropdown-bg: #343a40;
    --bs-dropdown-border-color: var(--bs-border-color-translucent);
    --bs-dropdown-box-shadow: ;
    --bs-dropdown-link-color: #dee2e6;
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
    --bs-dropdown-link-hover-bg: hsla(0, 0%, 100%, .15);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: #0d6efd;
    --bs-dropdown-link-disabled-color: #adb5bd;
    --bs-dropdown-header-color: #adb5bd
}


.dropdown-toggle-split {
    padding-right: .5625rem;
    padding-left: .5625rem
}

.dropdown-toggle-split:after,
.dropend .dropdown-toggle-split:after,
.dropup .dropdown-toggle-split:after {
    margin-left: 0
}

.dropstart .dropdown-toggle-split:before {
    margin-right: 0
}

.nav {
    --bs-nav-link-padding-x: 1rem;
    --bs-nav-link-padding-y: 0.5rem;
    --bs-nav-link-font-weight: ;
    --bs-nav-link-color: var(--bs-link-color);
    --bs-nav-link-hover-color: var(--bs-link-hover-color);
    --bs-nav-link-disabled-color: var(--bs-secondary-color);
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none
}

.nav-link {
    display: block;
    padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    color: var(--bs-nav-link-color);
    text-decoration: none;
    background: none;
    border: 0;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out
}

@media(prefers-reduced-motion:reduce) {
    .nav-link {
        transition: none
    }
}

.nav-link:focus,
.nav-link:hover {
    color: var(--bs-nav-link-hover-color)
}

.nav-link:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
}

.nav-link.disabled,
.nav-link:disabled {
    color: var(--bs-nav-link-disabled-color);
    pointer-events: none;
    cursor: default
}

.nav-tabs {
    --bs-nav-tabs-border-width: var(--bs-border-width);
    --bs-nav-tabs-border-color: var(--bs-border-color);
    --bs-nav-tabs-border-radius: var(--bs-border-radius);
    --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
    --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
    --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
    --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
    border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)
}

.nav-tabs .nav-link {
    margin-bottom: calc(-1*var(--bs-nav-tabs-border-width));
    border: var(--bs-nav-tabs-border-width) solid transparent;
    border-top-left-radius: var(--bs-nav-tabs-border-radius);
    border-top-right-radius: var(--bs-nav-tabs-border-radius)
}

.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    isolation: isolate;
    border-color: var(--bs-nav-tabs-link-hover-border-color)
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    color: var(--bs-nav-tabs-link-active-color);
    background-color: var(--bs-nav-tabs-link-active-bg);
    border-color: var(--bs-nav-tabs-link-active-border-color)
}

.nav-tabs .dropdown-menu {
    margin-top: calc(-1*var(--bs-nav-tabs-border-width));
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.nav-pills {
    --bs-nav-pills-border-radius: var(--bs-border-radius);
    --bs-nav-pills-link-active-color: #fff;
    --bs-nav-pills-link-active-bg: #0d6efd
}

.nav-pills .nav-link {
    border-radius: var(--bs-nav-pills-border-radius)
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: var(--bs-nav-pills-link-active-color);
    background-color: var(--bs-nav-pills-link-active-bg)
}


.tab-content>.tab-pane {
    display: none
}

.tab-content>.active {
    display: block
}

.navbar {
    --bs-navbar-padding-x: 0;
    --bs-navbar-padding-y: 0.5rem;
    --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
    --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
    --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
    --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-brand-padding-y: 0.3125rem;
    --bs-navbar-brand-margin-end: 1rem;
    --bs-navbar-brand-font-size: 1.25rem;
    --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
    --bs-navbar-nav-link-padding-x: 0.5rem;
    --bs-navbar-toggler-padding-y: 0.25rem;
    --bs-navbar-toggler-padding-x: 0.75rem;
    --bs-navbar-toggler-font-size: 1.25rem;
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
    --bs-navbar-toggler-border-radius: var(--bs-border-radius);
    --bs-navbar-toggler-focus-width: 0.25rem;
    --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)
}

.navbar>.container {
    display: flex;
    flex-wrap: inherit;
    align-items: center;
    justify-content: space-between
}



.navbar[data-bs-theme=dark] {
    --bs-navbar-color: hsla(0, 0%, 100%, .55);
    --bs-navbar-hover-color: hsla(0, 0%, 100%, .75);
    --bs-navbar-disabled-color: hsla(0, 0%, 100%, .25);
    --bs-navbar-active-color: #fff;
    --bs-navbar-brand-color: #fff;
    --bs-navbar-brand-hover-color: #fff;
    --bs-navbar-toggler-border-color: hsla(0, 0%, 100%, .1)
}


.navbar[data-bs-theme=dark],
[data-bs-theme=dark] .navbar-toggler-icon {
    --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
}

.card {
    --bs-card-spacer-y: 1rem;
    --bs-card-spacer-x: 1rem;
    --bs-card-title-spacer-y: 0.5rem;
    --bs-card-title-color: ;
    --bs-card-subtitle-color: ;
    --bs-card-border-width: var(--bs-border-width);
    --bs-card-border-color: var(--bs-border-color-translucent);
    --bs-card-border-radius: var(--bs-border-radius);
    --bs-card-box-shadow: ;
    --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
    --bs-card-cap-padding-y: 0.5rem;
    --bs-card-cap-padding-x: 1rem;
    --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
    --bs-card-cap-color: ;
    --bs-card-height: ;
    --bs-card-color: ;
    --bs-card-bg: var(--bs-body-bg);
    --bs-card-img-overlay-padding: 1rem;
    --bs-card-group-margin: 8px;
    position: relative;
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: var(--bs-card-height);

    color: var(--bs-body-color);
    word-wrap: break-word;
    background-color: var(--bs-card-bg);
    background-clip: border-box;
    border: var(--bs-card-border-width) solid var(--bs-card-border-color);
    border-radius: var(--bs-card-border-radius)
}





.d-flex {
    display: flex !important
}




.flex-wrap {
    flex-wrap: wrap !important
}




@media(max-width:1279px) {

    .container,
    .container-xl {
        padding: 0 28px
    }
}

@media(max-width:767px) {

    .container,
    .container-xl {
        padding: 0 12px
    }
}

body,
html {
    margin: 0;
    padding: 0;
    font-family: Golos, sans-serif
}

:root {
    scroll-behavior: smooth
}

.noScroll {
    overflow: hidden
}

a {
    text-decoration: none;
    color: inherit
}

* {
    box-sizing: border-box
}

label {
    font-weight: 600;
    font-size: 14px
}

.h1,
.h2,
.h3,
h1,
h2,
h3 {
    font-weight: 500;
    line-height: 1;
    font-family: ALSGorizont, sans-serif;
    color: inherit
}

.h1:first-letter,
.h2:first-letter,
.h3:first-letter,
h1:first-letter,
h2:first-letter,
h3:first-letter {
    text-transform: capitalize
}

.h4,
.h5,
h4,
h5 {
    font-weight: 400;
    line-height: 1;
    font-family: ALSGorizont, sans-serif;
    color: inherit
}

.h1,
h1 {
    font-weight: 700;
    font-size: 90px;
    line-height: 108px
}

@media(max-width:1279.98px) {

    .h1,
    h1 {
        font-size: 80px;
        line-height: 80px
    }
}

@media(max-width:991.98px) {

    .h1,
    h1 {
        font-size: 60px;
        line-height: 60px
    }
}

@media(max-width:767.98px) {

    .h1,
    h1 {
        font-size: 40px;
        line-height: 40px
    }
}

@media(max-width:575.98px) {

    .h1,
    h1 {
        font-size: 30px;
        line-height: 40px
    }
}

.h2,
h2 {
    margin-bottom: 40px;
    font-weight: 700;
    font-size: 88px;
    line-height: 88px
}

@media(max-width:1279.98px) {

    .h2,
    h2 {
        margin-bottom: 32px;
        font-size: 60px;
        line-height: 60px
    }
}

@media(max-width:767.98px) {

    .h2,
    h2 {
        margin-bottom: 24px;
        font-size: 48px;
        line-height: 48px
    }
}

@media(max-width:575.98px) {

    .h2,
    h2 {
        font-size: 30px
    }
}

.h3,
h3 {
    font-size: 50px;
    line-height: 60px;
    color: #f7f9ec
}

@media(max-width:1279.98px) {

    .h3,
    h3 {
        font-size: 40px;
        line-height: 50px
    }
}

@media(max-width:767.98px) {

    .h3,
    h3 {
        font-size: 32px;
        line-height: 35px
    }
}

.h4,
h4 {
    font-size: 32px;
    line-height: 44px
}

@media(max-width:767.98px) {

    .h4,
    h4 {
        font-size: 18px;
        line-height: 24px
    }
}

.h5,
h5 {
    margin-bottom: 16px;
    font-size: 24px;
    line-height: 32px
}

@media(max-width:767.98px) {

    .h5,
    h5 {
        font-size: 20px;
        line-height: 24px
    }
}

a,
p {
    font-weight: 400;
    font-size: 16px;
    font-family: Golos, sans-serif
}

p.high {
    font-size: 20px
}

@media(max-width:767.98px) {
    p.high {
        font-size: 18px
    }
}

button {
    padding: 12px 28px;
    font-size: 24px;
    line-height: 29px;
    text-transform: uppercase;
    color: #202020;
    background: var(--main-color);
    border: 1px solid #202020;
    border-radius: 10px
}

@media(max-width:767.98px) {
    button {
        padding: 5px 15px;
        font-size: 18px;
        line-height: 22px
    }
}

[class*=-events-pane] * {
    border-radius: 0 10px 10px 0
}

@media(max-width:1499.98px) {
    [class*=-events-pane] * {
        border-radius: 0 0 10px 10px
    }
}


.placemark {
    width: 3rem;
    height: 3rem;
    margin-top: -2.5rem;
    margin-left: -1.2rem;
    background-size: 100%
}

.contain {
    --padding-inline: 2rem;
    --content-max-width: 1400px;
    display: grid;
    grid-template-columns: [full-width-start] minmax(var(--padding-inline), 1fr) [content-start] min(100% - var(--padding-inline)*2, var(--content-max-width)) [content-end] minmax(var(--padding-inline), 1fr) [full-width-end]
}

@media(max-width:767.98px) {
    .contain {
        --padding-inline: 1rem
    }
}

.contain>* {
    grid-column: content
}

.contain>.full-width {
    display: grid;
    grid-column: full-width;
    grid-template-columns: inherit
}

.flow>*+* {
    margin-top: var(--flow-spacing, 1em)
}

@media(max-width:767.98px) {
    .flow>*+* {
        --flow-spacing: 2rem
    }
}

@font-face {
    font-style: normal;
    font-weight: 100 800;
    font-family: ALSGorizont;
    src: local("ALSGorizont, Regular"), url(../fonts/ALSGorizont-Variable.a3521687.woff2) format("woff2");
    font-display: swap
}

@font-face {
    font-style: normal;
    font-weight: 100 800;
    font-family: Golos;
    src: local("Golos, Regular"), url(../fonts/GolosText-Variable.5894e8e5.woff2) format("woff2");
    font-display: swap
}

@font-face {
    font-style: normal;
    font-weight: 400;
    font-family: Sofia Sans;
    src: local("Sofia Sans, Regular"), url(../fonts/SofiaSans-Medium.61c6e0ef.woff) format("woff")
}

@font-face {
    font-style: normal;
    font-weight: 400;
    font-family: montserrat;
    src: local("montserrat, sans-serif, Regular"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("woff2"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("woff"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("opentype");
    font-display: auto
}

@font-face {
    font-style: normal;
    font-weight: 700;
    font-family: montserratBold;
    src: local("montserrat, sans-serif, Bold"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("woff2"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("woff"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("opentype");
    font-display: auto
}


/* ХОМПЕЙДЖ*/



.Slogan {
    display: flex;
    margin-top: 5rem;
    font-family: ALSGorizont, sans-serif;
    gap: 4rem
}

@media(max-width:1279.98px) {
    .Slogan {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 20rem;
        margin-top: 3rem;
        font-size: 1.5rem;
        gap: 3rem
    }
}

@media(max-width:575.98px) {
    .Slogan {
        height: 15rem;
        margin-top: 2rem
    }
}

.Slogan .Slogan_item {
    position: relative;
    padding: 1rem 2rem;
    font-weight: 700;
    font-size: 25px;
    line-height: 2rem;
    text-align: center;
    color: #6685b2;
    background-color: var(--contrast-color);
    border-radius: 50px;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.Slogan .Slogan_item:not(:first-child):before {
    position: absolute;
    top: 50%;
    left: -2rem;
    content: "+";
    font-weight: 800;
    font-size: 4rem;
    line-height: 0;
    color: var(--contrast-color);
    transform: translateX(-50%)
}

@media(max-width:1279.98px) {
    .Slogan .Slogan_item:not(:first-child):before {
        top: -1.5rem;
        left: 50%;
        font-size: 3rem
    }

    .Slogan .Slogan_item {
        font-size: 1.5rem
    }
}

@media(max-width:575.98px) {
    .Slogan .Slogan_item {
        padding: .5rem 1.5rem;
        font-size: 1.2rem
    }
}

.Slogan .Slogan_item.Slogan_main {
    text-transform: uppercase
}


.sam_search {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px
}

@media(max-width:767.98px) {
    .sam_search {
        flex-direction: column;
        align-items: stretch
    }
}

.sam_search_vvod {
    width: 100%;
    padding: 14px 24px;
    font-size: 16px;
    line-height: 24px;
    font-family: Golos, sans-serif;
    color: rgba(0, 0, 0, .4);
    background: #fff;
    border: 1px solid #202020;
    border-radius: 50px
}

@media(max-width:1279.98px) {
    .sam_search_vvod {
        padding: 8px 24px
    }
}

.sam_search_vvod:focus {
    border-color: var(--accent-color);
    box-shadow: none
}

.sam_search_button {
    margin-left: 10px
}

@media(max-width:767.98px) {
    .sam_search_button {
        margin: 10px 0 0
    }
}

.search-all_programs_button {
    width: max-content;
    margin-left: 10px;
    background: transparent
}

@media(max-width:1279.98px) {
    .search-all_programs_button {
        margin-left: 8px;
        padding: 8px 0;
        font-size: 20px;
        line-height: 24px
    }
}

@media(max-width:767.98px) {
    .search-all_programs_button {
        width: 100%;
        margin: 10px 0 0;
        padding: 0;
        order: 5
    }
}



.search_tags {
    margin-right: 8px;
    margin-bottom: 8px;
    padding: 8px 16px;
    font-size: 14px;
    line-height: 16px;
    background: transparent;
    border-radius: 50px;
    transition: all .15s ease-in-out;
    cursor: pointer
}

@media(max-width:767.98px) {
    .search_tags {
        display: none
    }
}

.search_tags_day.search_tags {
    color: #202020;
    border: 1px solid #000
}

.search_tags_day.search_tags:hover {
    color: #fff;
    background: #202020;
    border-color: #202020
}




.search_programs {
    padding: 3rem
}

@media(max-width:767.98px) {
    .search_programs {
        padding: 1.5rem;
        padding: 1rem 0;
        text-align: center
    }
}


.search_programs_heading {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between
}

.search_programs_heading h2 {
    font-weight: 700;
    font-size: 50px
}

@media(max-width:991.98px) {
    .search_programs_heading h2 {
        font-size: 48px;
        line-height: 48px
    }
}

@media(max-width:575.98px) {
    .search_programs_heading h2 {
        font-size: 32px;
        line-height: 32px
    }
}

.search_programs_heading_day.search_programs_heading h2 {
    color: #202020
}

.Programs_programs__heading_night__WBwxd.search_programs_heading h2 {
    color: #fff
}




@media(max-width:767.98px) {
    .search_programs_heading {
        margin-top: 20px
    }

    .search_programs_heading svg {
        width: 118px;
        height: 97px
    }
}

@media(max-width:575.98px) {
    .search_programs_heading {
        padding-bottom: 12px
    }

    .search_programs_heading svg {
        top: -18px;
        right: -45px;
        width: 100px;
        height: 110px
    }
}


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

@media(max-width:1279.98px) {
    .event_news_header {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        margin-bottom: 0
    }
}

.event_news_header img {
    position: relative;
    bottom: 55px;
    left: -19px;
    width: 274px;
    height: 191px
}

@media(max-width:767.98px) {
    .event_news_header img {
        bottom: 26px;
        left: -7px;
        width: 134px;
        height: 94px
    }
}

.event_news_header_title {
    display: flex;
    align-items: center;
    color: var(--main-color)
}

.event_news_content {
    position: relative
}

@media(max-width:1279.98px) {
    .event_news_content {
        display: flex;
        flex-direction: column
    }
}

@media(max-width:767.98px) {
    .event_news_title {
        width: 70%
    }
}

@media(max-width:1279.98px) {
    .event_news_button {
        margin-bottom: 20px
    }
}



.card {
    flex: 0 0 auto;
    width: 300px;
    font-weight: 600;
    font-size: 20px;
    border-radius: 32px;
    overflow: hidden;
    cursor: pointer;
    display: block;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    scroll-snap-align: center;
}

.card_day.card {
    color: #202020;
    background-color: #fff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .05);
}

.Card_card_night__UzpT4.card {
    color: #fff;
    border: 1px solid #fff
}

/* --- ЭФФЕКТ ВСПЛЫТИЯ (HOVER) --- */
/* Работает при наведении */
.card:hover {
    /* Поднимаем карточку вверх на 10px */
    transform: translateY(-10px);
    /* Большая мягкая тень */
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
}

/* Легкий зум картинки при наведении */
.card:hover .card_photo {
    transform: scale(1.03);
}

.card_photo {
    width: 100%;
    height: 331px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

@media(max-width:767.98px) {
    .card_photo {
        width: 100%;
        height: 224px
    }
}

.card_info_wrapper {
    padding: 24px
}

@media(max-width:767.98px) {
    .card_info_wrapper {
        width: auto;
        padding: 17px
    }
}

.card_person_block {
    display: flex;
    align-items: center;
    margin-bottom: 12px
}

.card_person_photo {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.card_person_photo_text {
    margin-left: 8px;
    font-size: 16px;
    line-height: 24px;
    background: #000;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent
}

.card_text {
    font-size: 20px;
    line-height: 28px
}

@media(max-width:767.98px) {
    .card_text {
        font-size: 18px;
        line-height: 24px
    }

    .card {
        height: auto;
        width: 80vw;
        max-width: 300px;
        /* Но не шире оригинала */

    }

    .card:hover {
        transform: none;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    }
}


@media(max-width:767px) {

    .ItmoLife_container-xl__5BELf,
    .ItmoLife_container__XVJ9k {
        padding: 0 12px
    }
}

@font-face {
    font-style: normal;
    font-weight: 100 800;
    font-family: ALSGorizont;
    src: local("ALSGorizont, Regular"), url(../fonts/ALSGorizont-Variable.a3521687.woff2) format("woff2");
    font-display: swap
}

@font-face {
    font-style: normal;
    font-weight: 100 800;
    font-family: Golos;
    src: local("Golos, Regular"), url(../fonts/GolosText-Variable.5894e8e5.woff2) format("woff2");
    font-display: swap
}

@font-face {
    font-style: normal;
    font-weight: 400;
    font-family: Sofia Sans;
    src: local("Sofia Sans, Regular"), url(../fonts/SofiaSans-Medium.61c6e0ef.woff) format("woff")
}

@font-face {
    font-style: normal;
    font-weight: 400;
    font-family: montserrat;
    src: local("montserrat, sans-serif, Regular"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("woff2"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("woff"), url(https://fonts.googleapis.com/css2?family=Montserrat&display=swap) format("opentype");
    font-display: auto
}

@font-face {
    font-style: normal;
    font-weight: 700;
    font-family: montserratBold;
    src: local("montserrat, sans-serif, Bold"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("woff2"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("woff"), url(https://fonts.googleapis.com/css2?family=Montserrat:wght@700&display=swap) format("opentype");
    font-display: auto
}

.ceblLife {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 40px;
    isolation: isolate
}


.ceblLife h2 {
    margin-bottom: 0;
    text-align: center
}

.ceblLife_title {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 40px
}

.ceblLife_title.ceblLife_title_color h2 {
    color: var(--main-color)
}

@media(max-width:767.98px) {
    .ceblLife_title {
        margin-bottom: 30px
    }

    .ceblLife_title h2 {
        text-align: center
    }
}

@media(max-width:575.98px) {
    .ceblLife_title h2 {
        display: block
    }
}


.ceblLife_content {
    position: relative;
    /* Обязательно! */
    width: 100%;
    max-width: 1200px;
    /* Ограничиваем ширину, чтобы по бокам было место */
    margin: 0 auto;
    /* Центрируем блок на странице */
    /* ВАЖНО: overflow должен быть visible, иначе стрелки обрежутся */
    overflow: visible;
}

.ceblLife_wrapper {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 1.5rem;

    margin-inline: calc(var(--padding-inline)*-1);
    padding-inline: var(--padding-inline, 20px);
    padding-top: 20px;
    padding-bottom: 30px;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;

    /* МАГНИТНЫЙ СКРОЛЛ (для удобства на тачскринах) */
    scroll-snap-type: x mandatory;
    /* Обязательная привязка по оси X */

}

.ceblLife_wrapper::-webkit-scrollbar {
    display: none;
}

.ceblLife_wrapper {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
}

@media(max-width:767.98px) {
    .ceblLife_wrapper {
        gap: 16px;
        padding-inline: 20px;
    }
}



@media(max-width:1279.98px) {
    .ceblLife {
        align-items: normal
    }
}

/*СТРЕЛОЧКИ*/
.slider_arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;

    /* Делаем круг */
    border-radius: 50%;
    background-color: #ffffff;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);

    border: none;
    cursor: pointer;
    z-index: 100;
    /* Поднял z-index повыше */

    display: flex;
    align-items: center;
    justify-content: center;

    /* СТИЛИ ДЛЯ СИМВОЛА-СТРЕЛКИ */
    font-size: 24px;
    /* Размер галочки */
    color: #000000;
    /* Чисто черный цвет */
    font-family: sans-serif;
    /* Обычный шрифт без засечек */
    line-height: 1;
    padding-bottom: 3px;
    /* Микро-корректировка, чтобы стояла ровно по центру */

    transition: transform 0.2s, background-color 0.2s;
}

.slider_arrow:hover {
    background-color: #f2f2f2;
    transform: translateY(-50%) scale(1.1);
}

.slider_arrow:active {
    transform: translateY(-50%) scale(0.95);
}

/* Позиция (как мы настроили ранее) */
.arrow_prev {
    left: -70px;
}

.arrow_next {
    right: -70px;
}

/* Принудительно красим иконки внутри стрелок в черный */
/* --- ПРИНУДИТЕЛЬНОЕ ОТОБРАЖЕНИЕ ИКОНОК --- */

/* 1. Задаем размер самой картинке SVG */
.slider_arrow svg {
    width: 24px !important;
    /* Ширина иконки */
    height: 24px !important;
    /* Высота иконки */
    display: block !important;
    /* Чтобы точно не скрывалась */

    /* 2. Красим линии в черный цвет */
    stroke: #000000 !important;
    /* Черный цвет линий */
    stroke-width: 2.5px !important;
    /* Толщина линий */
    fill: none !important;
    /* Убираем заливку, оставляем только контур */
}

/* 3. Центрируем иконку внутри круга (на всякий случай) */
.slider_arrow {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

/* Скрываем кнопки на мобильных, так как там удобно свайпать пальцем */
@media (max-width: 1350px) {
    .arrow_prev {
        left: -20px;
    }

    /* Прижимаем ближе */
    .arrow_next {
        right: -20px;
    }
}

/* 5. На телефонах скрываем (там свайп) */
@media (max-width: 768px) {
    .slider_arrow {
        display: none;
    }
}

/*КОМПОНЕНТ */


@media(max-width:1279px) {

    .Directions_container-xl__WM449,
    .Directions_container__xnA_k {
        padding: 0 28px
    }
}

@media(max-width:767px) {

    .Directions_container-xl__WM449,
    .Directions_container__xnA_k {
        padding: 0 12px
    }
}

.Directions_directions__edkEZ {
    padding-bottom: 75px
}

.Directions_directions__edkEZ .Directions_table__o3YjN {
    display: flex;
    flex-direction: column;
    gap: 1.5rem
}

.Directions_directions__edkEZ .Directions_table__item__206L0 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 32px;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 10px
}

@media(max-width:1279.98px) {
    .Directions_directions__edkEZ .Directions_table__item__206L0 {
        flex-direction: column;
        align-items: flex-start;
        min-width: 40%;
        padding: 24px 32px
    }

    .Directions_directions__edkEZ .Directions_table__item__206L0:last-child {
        margin-right: 24px
    }
}

@media(max-width:767.98px) {
    .Directions_directions__edkEZ .Directions_table__item__206L0 {
        min-width: 80%;
        margin-right: 24px;
        padding: 24px
    }
}

.Directions_directions__edkEZ .Directions_table__header__qV8_J {
    margin-right: 10px
}

.Directions_directions__edkEZ .Directions_table__header__qV8_J p {
    margin-bottom: 4px;
    opacity: .6
}

.Directions_directions__edkEZ .Directions_table__name__CklG5 {
    margin-bottom: 0;
    font-size: 20px
}

.Directions_directions__edkEZ .Directions_table__info__HQR4Y {
    display: flex
}

@media(max-width:1279.98px) {
    .Directions_directions__edkEZ .Directions_table__info__HQR4Y {
        flex-direction: column
    }
}

.Directions_directions__edkEZ .Directions_table__places__RWYBT {
    padding-right: 45px
}

.Directions_directions__edkEZ .Directions_table__places__RWYBT:last-child {
    padding-right: 0
}

.Directions_directions__edkEZ .Directions_table__places__RWYBT div {
    display: flex;
    align-items: center
}

.Directions_directions__edkEZ .Directions_table__places__RWYBT span {
    padding-right: 8px;
    font-size: 20px;
    line-height: 32px
}

.Directions_directions__edkEZ .Directions_table__places__RWYBT p {
    margin-bottom: 0;
    opacity: .6
}

@media(max-width:767.98px) {
    .Directions_directions__edkEZ .Directions_table__places__RWYBT {
        margin-bottom: 24px;
        padding-right: 0
    }

    .Directions_directions__edkEZ .Directions_table__places__RWYBT:last-child {
        margin-bottom: 0
    }
}

@media(max-width:1279.98px) {
    .Directions_directions__edkEZ .Directions_table__o3YjN {
        flex-direction: row;
        margin-right: -26px;
        overflow: scroll;
        -webkit-overflow-scrolling: touch
    }

    .Directions_directions__edkEZ .Directions_table__o3YjN::-webkit-scrollbar {
        display: none
    }
}

@media(max-width:767.98px) {
    .Directions_directions__edkEZ .Directions_table__o3YjN {
        margin-right: -16px
    }
}

@media(max-width:1279.98px) {
    .Directions_directions__edkEZ {
        padding-bottom: 64px
    }
}

@media(max-width:767.98px) {
    .Directions_directions__edkEZ {
        padding-bottom: 40px
    }
}


@media(max-width:1279px) {

    .Menu_container-xl__5ir9s,
    .Menu_container__IJWXf {
        padding: 0 28px
    }
}

@media(max-width:767px) {

    .Menu_container-xl__5ir9s,
    .Menu_container__IJWXf {
        padding: 0 12px
    }
}

.button_up {
    position: fixed;
    right: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    margin-top: 6rem;
    margin-right: 4rem;
    color: #fff;
    background: var(--menu-main-color);
    border: 2px solid var(--menu-accent-color);
    border-radius: 50%;
    transition: all .2s cubic-bezier(0, .12, .99, .69);
    will-change: auto;
    background-clip: padding-box;
    cursor: pointer;
    box-shadow: 5px 9px 10px rgba(0, 0, 0, .25)
}



@media(max-width:1279.98px) {
    .button_up {
        margin-right: 2rem
    }
}

@media(max-width:767.98px) {
    .button_up {
        width: 1.4rem;
        margin-right: 0;
        border-radius: 16px 0 0 16px
    }
}


.button_up_dots {
    width: 2rem;
    height: 2rem;
    background-position: 50%;
    background-repeat: no-repeat;

    /* ВОТ ЭТА СТРОЧКА РЕШИТ ПРОБЛЕМУ */
    background-size: contain;

    background-image: url(../pics/strelka_vverh_oljjiqecj2mg.svg);
    transition: all .2s cubic-bezier(0, .12, .99, .69);
    transform: rotate(0deg);
    will-change: transform;
}

@media(max-width:767.98px) {
    .button_up_dots {
        background-image: url(../pics/strelka_vverh_oljjiqecj2mg.svg);
    }
}

.Menu_burger__dots_selected__zBKFd {
    transform: rotate(45deg)
}

.Menu_menu__BOO0O {
    position: fixed;
    right: 0;
    z-index: 999;
    max-height: 35rem;
    width: 25rem;
    margin-top: 6rem;
    margin-right: 6rem;
    padding: 1.2rem 2.2rem;
    color: #fff;
    background: rgba(0, 0, 0, .8);
    border: 2px solid #fff;
    border-radius: 20px;
    transition: all .2s cubic-bezier(0, .12, .99, .69);
    will-change: auto;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    animation-duration: .2s;
    animation-name: Menu_opacity-animation__CyjF6;
    overflow: auto
}

.Menu_menu__BOO0O::-webkit-scrollbar {
    width: 10px;
    height: 2rem
}

.Menu_menu__BOO0O::-webkit-scrollbar-track {
    background: none
}

.Menu_menu__BOO0O::-webkit-scrollbar-thumb {
    background: #c5c5c5;
    border-radius: .375rem
}

.Menu_menu__fixed__Poh1k {
    margin-top: -1rem
}

@media(max-width:767.98px) {
    .Menu_menu__fixed__Poh1k {
        margin-top: -3rem
    }
}

.Menu_menu__button__dibn1 {
    width: 100%;
    margin-bottom: 1rem
}

.Menu_menu__list__Zh23b {
    margin: 0;
    padding: 0;
    list-style: none
}

.Menu_menu__list__Zh23b li {
    display: flex;
    align-items: center;
    margin: 1.4rem 0;
    cursor: pointer
}

@media(max-width:767.98px) {
    .Menu_menu__list__Zh23b li {
        margin: 1.2rem 0
    }
}

.Menu_menu__list_icon__m_3_n {
    position: absolute;
    margin-left: -1.8rem
}

.Menu_menu__list_text__C7YhQ {
    margin: 0;
    font-size: 1.2rem
}

.Menu_menu__list_text__C7YhQ:hover {
    text-decoration: underline
}

.Menu_menu__list_text__C7YhQ:first-letter {
    text-transform: capitalize
}

@media(max-width:1279.98px) {
    .Menu_menu__list_text__C7YhQ {
        font-size: 1.1rem
    }

    .Menu_menu__BOO0O {
        margin-right: 4rem
    }
}

@media(max-width:767.98px) {
    .Menu_menu__BOO0O {
        max-height: 32rem;
        width: 18rem;
        margin: 0
    }
}


/* кнопка с точками */
.header_down_menu_btn {
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
}

.modal-overlay {
    position: fixed;
    /* top: 140px; убрали, теперь скрипт сам высчитывает отступ! */
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);

    z-index: 9999 !important;
    /* Оверлей лежит ПОД шапкой (9999 < 10000) */

    display: none;
    justify-content: center;
    align-items: flex-start;
}

/* Само модальное окно (бывшее #modalwin) */
.menu-modal-window {
    background: var(--menu-main-color, #4e668a) url(../pics/noise_bg.webp);
    border-radius: 0 0 12px 12px;

    /* Ширина по вашему мейн-контенту */
    width: 100%;
    height: 100%;
    max-width: auto;
    /* Поменяйте эту цифру, если ваш центральный текст шире/уже */
    margin: 0 auto;

    overflow-y: hidden;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
    padding: 30px;
}

/* Шапка модального окна для кнопки "Закрыть" */
.modal-header {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    margin-bottom: 20px;
}

/* Кнопка закрытия из вашего примера */
.close {
    background-color: #d14040;
    /* Сделал красной для акцента */
    border: none;
    border-radius: 7px;
    color: white;
    width: 150px;
    height: 40px;
    cursor: pointer;
    font-size: 16px;
    font-weight: bold;
    transition: 0.3s;
}

.close:hover {
    background-color: #a53030;
}

/* ОВЕРЛЕЙ */
.menu {
    position: relative;
    left: 0;
    right: 0;
    top: var(--header-h);
    bottom: 0;
    z-index: 9999;
    display: none;
    overflow: auto;
    background-color: #4ea199b6;

}

body.menu-lock {
    overflow: hidden;
}


/* открыто */
.menu.menu_open {
    display: block;
}

#megaMenu {
    position: fixed;
    height: 81vb;
    left: 0;
    width: 100%;
    /* Оставляем привязку к высоте хедера */
    top: var(--header-h);

    /* ВАЖНО: z-index должен быть МЕНЬШЕ, чем у вашего .header */
    /* Если у хедера нет z-index, добавьте ему, например, z-index: 1000 */
    z-index: 800;

    background: var(--menu-main-color, #4ea199b6) url(../pics/noise_bg.webp);

    /* Уводим меню вверх на всю его высоту, чтобы оно полностью спряталось за хедером */
    transform: translateY(-100%);

    transition: transform 0.4s ease;
    overflow-y: auto;
    display: block;

    /* Убираем возможные тени в закрытом состоянии, чтобы они не "торчали" */
    visibility: hidden;
}

/* Когда меню открыто */
#megaMenu.menu_open {
    transform: translateY(0);
    visibility: visible;
    /* Проявляем меню */
    display: block;
}

/* сетка как на 2 фото */
.menu__grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}



/* 1. Обертка (оставляем твой вариант) */
.partners-marquee-wrapper {
    width: 100%;
    margin-top: 30px;
    padding: 15px 0 25px 0;
    /* Отступ снизу нужен, чтобы тень подсказки не обрезалась */
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    background-color: rgba(255, 255, 255, 0.03);
}

/* 2. Контейнер с логотипами (статика, по центру) */
.partners-marquee-track {
    display: flex;
    align-items: center;
    margin-top: 2%;
    justify-content: center;
    /* Центрируем логотипы */
    gap: 40px;
    /* Расстояние между логотипами */
    flex-wrap: wrap;
    /* Перенос на новую строку при нехватке места */
}

/* 3. Ссылки (КРИТИЧНО: вернули position: relative) */
.partner-link {
    text-decoration: none;
    display: flex;
    align-items: center;
    position: relative;
    /* Обязательно! Чтобы подсказка позиционировалась ровно над своим логотипом, а не улетала */
}

/* 4. Стили логотипов */
.partner-img {
    height: 40px;
    width: auto;
    opacity: 0.6;
    transition: all 0.3s ease;
}

/* 5. ПОДСКАЗКА (скрыта по умолчанию) */
.partner-tooltip {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.2s, opacity 0.2s ease;

    position: absolute;
    bottom: calc(100% + 15px);
    /* Размещаем над логотипом */
    left: 50%;
    transform: translateX(-50%);
    /* Идеальное центрирование */

    background-color: #1a1a1a;
    color: #ffffff;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 14px;
    white-space: nowrap;
    z-index: 10;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

/* 6. Треугольник-указатель под подсказкой */
.partner-tooltip::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 8px;
    border-style: solid;
    border-color: #1a1a1a transparent transparent transparent;
}

/* 7. Эффекты при наведении (hover) */

/* Показываем подсказку */
.partner-link:hover .partner-tooltip {
    visibility: visible;
    opacity: 1;
}

/* Делаем логотип ярче и чуть больше */
.partner-link:hover .partner-img {
    opacity: 1;
    transform: scale(1.05);
}

/* секции */


.menu_open_item:hover {
    background: rgba(255, 255, 255, 0.05);
}

.menu_open_item .submenu {
    position: absolute;
    top: 100%;
    /* Появляется ровно под ячейкой */
    left: 0;
    width: 100%;
    /* Ширина как у родителя */
    background: #fff;
    /* Цвет фона выпадашки */
    color: #202020;
    padding: 20px;

    /* Анимация появления */
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;

    z-index: 51;
    /* Выше чем сама ячейка */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);

}

/* Показываем вкладку при наведении */
.menu_open_item:hover .submenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* убрать линию справа у каждой 3-й колонки */
.menu_open_item:nth-child(3n) {
    border-right: none;
}

/* нижние блоки (5 элементов -> 4 и 5 станут в 2-й ряд) */
.menu_open_item--wide {
    grid-column: span 1;
}

/* заголовок */
.menu_open_item h4 {
    margin: 0 0 15px 0;
    color: #ffffff;
    font-size: 28px;
    font-weight: 700;
}

/* ссылки */
.menu__link {
    display: block;
    padding: 8px 0;
    color: #ffffff;
    text-decoration: none;
    font-size: 18px;
    transition: 0.2s;
}

.menu__link:hover {
    color: #dfee91;
    /* Ваш акцентный цвет */
    padding-left: 10px;
    /* Красивый эффект сдвига при наведении */
}

/* --- АДАПТИВ (МОБИЛЬНАЯ ВЕРСИЯ) --- */
@media (max-width: 600px) {
    .menu__grid {
        grid-template-columns: 1fr;
    }

    .menu-modal-window {
        width: 95%;
        height: 90vh;
        padding: 15px;
    }
}

@media screen and (max-width: 768px) {

    /* Растягиваем меню на всю высоту и ширину */
    #megaMenu {
        height: calc(100vh - var(--header-h));
        /* Высота экрана минус шапка */
        width: 100%;
        transform: translateY(-100%);
        /* Сохраняем логику выезда */
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;

    }

    /* Превращаем сетку в одну колонку */
    .menu__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Настройки для каждого блока (колледж, обучение и т.д.) */
    .menu_open_item {
        padding: 20px;
        border-radius: 8px;
        transition: background 0.3s;
        border: 1px solid rgba(255, 255, 255, 0.1);
    }

    /* Убираем разделитель у самого последнего элемента */
    .menu_open_item:last-child {
        border-bottom: none;
    }

    /* Сбрасываем правило для каждого 3-го элемента (так как у нас теперь 1 колонка) */
    .menu_open_item:nth-child(3n) {
        border-right: none;
    }

    /* Заголовки разделов */
    .menu_open_item h4 {
        font-size: 24px;
        /* Уменьшаем шрифт с 36px */
        margin-left: 0;
        /* Убираем отступ слева, чтобы текст был по краю */
        margin-top: 0;
        margin-bottom: 15px;
    }

    /* Ссылки */
    .menu__link {
        font-size: 18px;
        /* Уменьшаем шрифт с 25px */
        margin-left: 0;
        /* Выравниваем по левому краю */
        padding: 10px 0;
        /* Делаем область клика больше для пальца */
        display: block;
    }

    /* Эффект при клике/нажатии на телефоне */
    .menu__link:active {
        background: rgba(255, 255, 255, 0.2);
    }
}

@keyframes Menu_opacity-animation__CyjF6 {
    0% {
        opacity: 0;
        transform: translate3d(0, -1rem, 0)
    }

    to {
        opacity: 1;
        transform: translateZ(0)
    }
}





/*статикс*/


.body_search_bg {
    position: relative;
    margin-top: 0;
    background: left bottom -2px/auto min(1000px, 90%), right 2rem bottom/auto min(1000px, 90%);
    overflow: hidden
}

@media(max-width:1279.98px) {
    .body_search_bg {
        background: 0 100%/70% 100% url(../pics/ellipse-left.png), 100% 100%/70% 100% url(../pics/ellipse-right.png);
        background-repeat: no-repeat
    }
}

.body_search_all {
    position: relative;
    padding-bottom: 5rem
}

@media(max-width:575.98px) {
    .body_search_all {
        padding-bottom: 1rem
    }
}






.body_search_motivation {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}


.Slogan_heading {
    margin: 0;
    padding: 40px 0 40px;
    text-align: center;
    color: #fff;
    font-size: 50px;
}

.Slogan_heading>* {
    color: #fff
}

@media(max-width:1279.98px) {
    .Slogan_heading {
        padding: 55px 0 40px
    }
}

@media(max-width:767.98px) {
    .Slogan_heading {
        display: flex;
        flex-direction: column;
        padding: 30px 0 20px
    }
}


/*секшион*/


@media(max-width:1279px) {

    .custom_container {
        padding: 0 28px
    }
}

@media(max-width:767px) {

    .custom_container {
        padding: 0 12px
    }
}

.custom_container {
    padding: 0
}

@media(max-width:767.98px) {
    .custom_container {
        padding: 0
    }
}

.custom_container .custom_tab {
    display: flex;
    margin-bottom: 24px;
    padding-bottom: 1px;
    border: none;
    gap: .5rem;
    overflow-x: auto;
    overflow-y: hidden
}

@media(max-width:767.98px) {
    .custom_container .custom_tab {
        justify-content: center
    }
}

.custom_container .custom_tab_item {
    padding: 4px 24px;
    font-weight: 600;
    font-size: 20px;
    line-height: 32px;
    font-family: Golos, sans-serif;
    color: #838383;
    background: transparent;
    border: none;
    border-radius: 25px
}

.custom_container .custom_tab_item:hover {
    color: #202020
}

.custom_container .custom_tab_item.custom_active,
.custom_container .custom_tab_item:focus {
    color: #fff;
    background: #202020
}

.custom_container .custom_tab_item_night.custom_tab_item {
    position: relative;
    z-index: 2;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 25px
}

.custom_container .custom_tab_item_night.custom_tab_item.custom_active,
.custom_container .custom_tab_item_night.custom_tab_item:focus,
.custom_container .custom_tab_item_night.custom_tab_item:hover {
    position: relative;
    z-index: 2;
    color: #202020;
    background: #fff;
    border: 1px solid #202020;
    border-radius: 25px
}


@media(max-width:1279.98px) {
    .custom_container .custom_tab_item {
        padding: 4px 24px
    }
}

@media(max-width:767.98px) {
    .custom_container .custom_tab_item {
        margin-right: 0;
        margin-bottom: 8px;
        font-size: 18px;
        line-height: 26px
    }
}

.map_container {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 50rem;
    border-radius: 10px
}

.map_container.MapContainer_autoHeight__nbXkw {
    height: 100%
}

@media(max-width:1279.98px) {
    .map_container {
        flex-wrap: wrap;
        height: auto;
        border: none
    }
}

.map_container_night [class*=-ground-pane] {
    filter: grayscale(1) invert(1)
}

.map_container_night [class*=placemark] {
    background-image: url(../pics/placemark.svg)
}

.map_container_night [class*=placemark__active] {
    background-image: url(../pics/placemark.active.svg)
}



.slider_list {
    display: flex;
    margin-bottom: 32px;
    padding-top: 15px;
    height: 350px;
    padding-bottom: 25px;
    gap: 1.5rem;
    list-style-type: none
}

@media(max-width:1279.98px) {
    .slider_list {
        width: auto;
        margin-inline: calc(var(--padding-inline)*-1);
        padding-inline: var(--padding-inline);
        -webkit-overflow-scrolling: touch;
        overflow: scroll
    }

    .slider_list::-webkit-scrollbar {
        display: none
    }
}

.slider_list_noScroll {
    height: auto;
    overflow: initial;

}

.slider_item {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    align-items: flex-start;
    height: auto;
    padding: 32px;
    border-radius: 32px;
    flex-basis: 0;
    overflow: hidden;
    word-break: break-word;
    flex-direction: column-reverse;
    justify-content: flex-end;

}

.slider_item:after {
    position: absolute;
    z-index: -1;
    content: "";
    background-color: var(--main-color);
    border-radius: 50%;
    transition: transform .2s ease, border-radius .4s ease;
    inset: 0;
    transform: scale(0)
}

@media(max-width:1279.98px) {
    .slider_item {
        flex-wrap: nowrap;
        min-width: 40%;
        flex-basis: auto
    }
}

@media(max-width:767.98px) {
    .slider_item {
        padding: 24px
    }

    .slider_item:nth-child(1n) {
        margin-left: 0
    }

    .slider_item:last-child {
        margin-right: 12px
    }
}

@media(max-width:575.98px) {
    .slider_item {
        min-width: 70%
    }
}

.slider_item_day.slider_item {
    color: #fff;
    border: 2px solid #fff
}

.slider_item_day.slider_item:hover .slider_date_icon {
    fill: #000
}

.slider_item_day.slider_item:hover a {
    color: #000 !important
}

.slider_item_day .slider_text {
    color: #fff
}

.slider_item_day.slider_item_activeLink:hover {
    color: #000;
    cursor: pointer
}

.slider_item_day.slider_item_activeLink:hover .slider_tag {
    color: #fff;
    border: 2px solid hsla(0, 0%, 100%, .7)
}

.slider_item_day.slider_item_activeLink:hover .slider_date .slider_date_icon {
    fill: #000
}

.slider_item_day.slider_item_activeLink .slider_tag {
    border: 2px solid #000
}

.slider_item_day.slider_Link a:hover,
.slider_item_day.slider_Link:hover {
    color: #000
}

.slider_item_day.slider_Link a:hover .slider_date .slider_date_icon,
.slider_item_day.slider_Link:hover .slider_date .slider_date_icon {
    fill: #000
}

.slider_item_day.Slider_slider__buttons__0I8jh {
    color: #fff
}

.slider_item_night.slider_item {
    color: #fff;
    border: 2px solid var(--main-color)
}

.slider_item_night.slider_item_activeLink:hover {
    color: #000;
    cursor: pointer
}

.slider_item_night.slider_item_activeLink:hover.slider_item:after {
    border-radius: inherit;
    transform: scale(1.1)
}

.slider_item_night.slider_item_activeLink:hover .slider_tag {
    color: #fff
}

.slider_item_night.slider_item_activeLink:hover .slider_text {
    color: #000
}

.slider_item_night.slider_item_activeLink:hover .slider_date .slider_date_icon {
    fill: #000
}

.slider_item_night.slider_item_activeLink .slider_tag {
    text-transform: capitalize;
    background-color: #000
}

.slider_item_night.Slider_slider__buttons__0I8jh,
.slider_item_night.slider_Link a:hover,
.slider_item_night.slider_Link:hover {
    color: #000
}

.slider_item_card {
    position: relative;
    padding: 56px 64px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.slider_item_card:hover {
    /* Сдвигаем карточку вверх на 10 пикселей */
    transform: translateY(-10px);

    /* Опционально: добавляем легкую тень для создания объема */
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}

@media(max-width:767.98px) {
    .slider_item_card {
        height: max-content;
        padding: 20px;
        border: none
    }
}

.slider_item_card .slider_text {
    margin-bottom: 40px
}

@media(max-width:767.98px) {
    .slider_item_card .slider_text {
        width: 100%;
        order: 2
    }
}

.slider_item_card .slider_header {
    margin-bottom: 0
}


.slider_Link {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: flex-start
}

.slider_Link .slider_tags {
    margin-top: auto
}



.slider_date {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 24px;
    transition: color .2s ease;
    gap: .5rem
}

.slider_date .slider_date_icon {
    width: 18px;
    transition: fill .2s ease
}

.slider_text {

    font-size: 18px;
    line-height: 25px;
    font-family: ALSGorizont, sans-serif;

    color: var(--main-color);
    transition: color .2s ease
}

@media(max-width:767.98px) {
    .slider_text {
        margin-bottom: 40px;
        font-size: 15px
    }
}

.slider_tag {
    display: inline-block;
    margin-bottom: 8px;
    padding: 7px 16px;
    font-size: 14px;
    line-height: 17px;
    border-radius: 5px
}

.slider_tag:first-child {
    margin-right: 8px
}

.slider_header {
    display: flex;
    margin-bottom: 24px
}

@media(max-width:767.98px) {
    .slider_header {
        flex-direction: column;
        align-items: flex-start
    }
}

.slider_img {
    width: 6rem;
    height: 6rem;
    margin-right: 20px;
    border-radius: 50%;
    object-fit: cover;
    overflow: hidden;
    flex-shrink: 0
}

@media(max-width:767.98px) {
    .slider_img {
        width: 4rem;
        height: 4rem
    }
}

.slider_name {
    margin-bottom: 4px;
    font-size: 20px;
    line-height: 32px
}

@media(max-width:767.98px) {
    .slider_name {
        font-size: 18px
    }
}

.slider_year {
    font-size: 16px;
    line-height: 22px;
    opacity: .5
}



.slider_info {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%
}

.slider_showAllWrapper {
    display: none;
    align-items: center;
    margin-top: 12px;
    cursor: pointer
}

.slider_showAllWrapper:hover {
    color: #838383
}

.slider_showAllWrapper:hover svg {
    fill: #838383
}

.slider_showAllWrapper svg {
    fill: #fff
}

@media(max-width:767.98px) {
    .slider_showAllWrapper {
        display: flex
    }
}

.slider_showAllText {
    margin-right: 8px
}

.slider__textForAdaptive {
    display: none;
    white-space: pre-line
}

@media(max-width:767.98px) {
    .slider__textForAdaptive {
        display: block
    }
}

.slider__textForDesktop {
    display: block;
    white-space: pre-line
}

@media(max-width:767.98px) {
    .slider__textForDesktop {
        display: none
    }
}


.slider_day {
    overflow: hidden;
    position: relative;

}


.slider {
    width: auto;
    /* ширина галереи */
    height: 300px;
    /* высота галереи */
    overflow: hidden;
    border-radius: 16px;
}


/* лента */
.slider__track {
    display: flex;
    width: max-content;
    /* Верни max-content, так надежнее всего */

    /* 10 секунд для 23 картинок - это супер-быстро (глаза сломаешь). 
       Поставь 40s или 50s, чтобы они плыли плавно и читаемо */
    animation: scroll 50s linear infinite;
}

/* Сама анимация */
@keyframes scroll {
    0% {
        transform: translateX(0);
    }

    100% {
        /* Сдвигаем ровно на длину 23 картинок (23 * 250px). 
           Браузер сам всё посчитает через calc() */
        transform: translateX(calc(-250px * 20));
    }
}

/* каждый слайд */
.slide {
    flex: 0 0 250px;
    /* <-- Уменьшили ширину с 600px до 250px */
    height: 300px;
    padding: 0 15px;
    /* Добавим отступы, чтобы логотипы не слипались */
    box-sizing: border-box;
    /* Чтобы padding не ломал размеры */

    /* Центрируем картинку внутри слайда */
    display: flex;
    align-items: center;
    justify-content: center;

}

/* картинка */
.slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* чтобы красиво обрезалось */
    display: block;
}

/* пауза при наведении */
.slider:hover .slider__track {
    animation-play-state: paused;
}

/* Сама анимация */


.container_list {
    padding: 0
}

.container_list li {
    padding: .8rem 0;
    list-style: none
}

@media(max-width:1279.98px) {
    .container_list li {
        padding: 1rem
    }

    .container_list li:nth-of-type(n) {
        border-bottom: none
    }

    .container_list li h5 {
        font-size: 16px;
        line-height: 20px
    }
}

.list_container {
    width: 30%;
    height: 100%;
    padding: 1rem 2rem;
    background-color: #000;
    border-radius: 10px 0 0 10px;
    overflow: auto
}

@media(max-width:1279.98px) {
    .list_container {
        width: 100%;
        height: auto;
        border-right: none
    }
}

.container_list_title {
    width: -moz-fit-content;
    width: fit-content;
    margin: 0;
    font-size: 1.4rem;
    text-align: left;
    background-image: #fff;
    transition: all .15s ease-in-out;
    cursor: pointer
}

.container_list_title:hover {
    color: #838383
}

.container_list_body {
    display: flex;
    align-items: baseline;
    justify-content: flex-start
}

@media(max-width:1279.98px) {
    .container_list {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-auto-rows: 1fr
    }
}

@media(max-width:767.98px) {
    .container_list {
        grid-template-columns: repeat(1, 1fr)
    }
}


.map_layout {
    width: 70%;
    height: 100%;
    border-radius: 0 10px 10px 0
}

@media(max-width:1279.98px) {
    .map_layout {
        width: 100%;
        height: 30rem;
        border: 1px solid #fff;
        border-radius: 0 0 10px 10px
    }
}

@media(max-width:767.98px) {
    .map_layout {
        border: none;
        border-top: 1px solid #fff;
        border-radius: 0
    }
}



.corpus {
    position: relative;
    z-index: 3;
    isolation: isolate
}

.corpus:before {
    position: absolute;
    z-index: -1;
    content: "";
    width: 100vw;
    background: right calc(-10rem + var(--client-x, 0)*.035px) top calc(var(--client-y, 0)*.05px) url(../pics/icon-3.webp), right calc(-10rem + var(--client-x, 0)*.015px) top calc(15rem + var(--client-y, 0)*.025px) url(../pics/icon-2_2.svg);
    background-repeat: no-repeat;
    transition: all .1s ease;
    inset: 0 50%;
    transform: translate(-50%)
}

@media(max-width:767.98px) {
    .corpus:before {
        display: none
    }
}



.corpus .corpus_text .corpus_title {
    z-index: 1;
    display: inline-block;
    margin-bottom: 16px;
    color: var(--main-color)
}

@media(max-width:767.98px) {
    .corpus .corpus_text {
        align-items: center;
        text-align: center
    }
}

.directions,
.directions_h2_size {
    position: relative
}

.directions_h2_size .Directions_degreeIndicator__QJOd7 {
    position: absolute;
    top: -50%;
    display: inline-block;
    padding: 12px 30px;
    font-weight: 400;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    border: 2px solid var(--accent-color);
    border-radius: 30px
}

@media(max-width:767.98px) {
    .directions_h2_size .Directions_degreeIndicator__QJOd7 {
        display: none
    }
}

.directions_h2_color {
    color: var(--accent-color)
}

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

@media(max-width:1279.98px) {
    .directions_header {
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        margin-bottom: 1.8rem
    }
}

.Directions_directions__button__mBlM1 {
    margin-bottom: 20px
}

.directions_card {
    position: relative;
    z-index: 1;
    padding: 40px 30px;
    text-transform: uppercase;
    color: var(--accent-color);
    border-radius: 32px;
    cursor: pointer;
    overflow: hidden
}

.directions_card:hover {
    color: #000
}

.directions_card:hover:after {
    border-radius: 10px;
    transform: scale(1.1)
}

.directions_card:after {
    position: absolute;
    z-index: -1;
    content: "";
    background-color: var(--accent-color);
    border-radius: 50%;
    transition: all .2s ease;
    transform: scale(0);
    inset: 0
}

.directions_card h4 {
    font-weight: 600;
    font-size: 24px;
    line-height: 1.25;
    transition: color .2s ease
}

@media(max-width:767.98px) {
    .directions_card h4 {
        font-size: 1.2rem
    }
}

.directions_card_link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all .15s ease-in-out;
    gap: 2rem
}

.directions_card_link:hover {
    color: #000;
    background: var(--accent-color)
}

.directions_card_link h4 {
    color: var(--accent-color)
}

.directions_card_link path {
    stroke: #202020
}

@media(max-width:767.98px) {
    .directions_card {
        display: flex;
        align-items: flex-start;
        padding: 1rem;
        border-radius: 10px
    }

    .directions_card:not(:first-child) {
        margin: -1px 0 0 !important
    }
}

.directions_card_day.directions_card {
    border: 2px solid #a2b7d8;
}

.directions_card_day.directions_card:hover {
    border-color: var(--accent-color)
}

.directions_card_day.directions_card:hover h4 {
    color: #000
}

.directions_card_day.directions_card:hover svg {
    fill: #000
}

.directions_card_day.directions_card h4 {
    font-weight: 500;
    font-size: 20px;
    text-transform: none;
    color: #fff
}

.directions_card_day.directions_card_link svg {
    fill: #fff
}

.directions_card_night.directions_card {
    border: 2px solid var(--accent-color)
}

.directions_card_night.directions_card:hover h4 {
    color: #000
}

.directions_card_night.directions_card_link h4 {
    color: var(--accent-color)
}

.directions_card_night.directions_card_link path {
    stroke: var(--accent-color)
}

.directions_link {
    flex-shrink: 0;
    cursor: pointer
}

@media(max-width:767.98px) {
    .directions_link {
        display: none
    }
}

.directions_title {
    font-family: Golos, sans-serif;
    color: var(--accent-color)
}

@media(max-width:991.98px) {
    .directions_title {
        font-size: 26px
    }
}

@media(max-width:767.98px) {
    .directions_title {
        margin-bottom: 0;
        font-size: 18px
    }
}


.directions_3rows {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-columns: 1fr;
    grid-gap: 1.5rem;
    gap: 1.5rem
}

@media(max-width:1279.98px) {
    .directions_3rows {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media(max-width:767.98px) {
    .directions_3rows {
        grid-template-columns: repeat(1, 1fr)
    }
}

.Otzyvy {
    position: relative;
    isolation: isolate
}

.Otzyvy:before {
    position: absolute;
    z-index: 1;
    content: "";
    width: 100vw;
    transition: all .1s ease;
    inset-inline: 50%;
    transform: translate(-50%)
}


.Otzyvy_header {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: space-between
}

.Otzyvy_header img {
    position: absolute;
    right: 302px;
    bottom: 15px;
    width: 300px;
    height: 250px
}

@media(min-width:1280px)and (max-width:1499.98px) {
    .Otzyvy_header img {
        right: -50px;
        bottom: -52px;
        width: 379px;
        height: 355px
    }
}

@media(min-width:768px)and (max-width:1279.98px) {
    .Otzyvy_header img {
        bottom: -1.75rem;
        left: 33.875rem;
        width: 11.75rem;
        height: 15.75rem
    }
}

@media(max-width:767.98px) {
    .Otzyvy_header img {
        bottom: 4.25rem;
        left: -.125rem;
        width: 9.75rem;
        height: 8.75rem
    }
}

@media(max-width:575.98px) {
    .Otzyvy_header img {
        bottom: 4.25rem;
        left: -.125rem;
        width: 8.75rem
    }
}

.text-center {
    text-align: center !important
}

.Otzyvy_header_title {
    text-align: center;
    color: var(--main-color)
}

.Otzyvy_header_title_white {
    color: #fff;
    margin-inline: auto
}

@media(max-width:767.98px) {
    .Otzyvy {
        margin-top: 75px
    }
}

.block_bg {
    position: relative;
    z-index: 2;
    --flow-spacing: 8rem
}

@media(max-width:767.98px) {
    .block_bg {
        --flow-spacing: 4rem
    }
}

.bg_block {
    padding-block: var(--flow-spacing)
}

.bg_black {
    color: #fff;
    background: #222 url(../pics/noise_bg_2.webp)
}

.Background_white___i48e {
    color: #fff;
    background: rgb(255, 255, 255);
    backdrop-filter: blur(5px);
}


.Background_blue__vxKks {
    color: #fff;
    background: #58a4d9 url(../pics/noise_black_2.png) round;
    background-size: 100%
}

.Background_blueLight__36dFe {
    color: #fff;
    background: #57a3d9 url(../pics/noise_white_new.png) round;
    background-size: 100%
}



.bg_blue_2 {
    color: #fff;
    background: #6685b2 url(../pics/noise_bg.webp)
}

.bg_block_rounded {
    border-radius: 3.75rem;
    min-height: 300px;
    height: auto;
}

@media(max-width:767.98px) {
    .bg_block_rounded {
        border-radius: 2rem
    }
}



@media(max-width:1279px) {


    .partners_container {
        padding: 0 28px
    }
}

@media(max-width:767px) {


    .partners_container {
        padding: 0 12px
    }
}

.partners {
    position: relative;
    z-index: 1;
    isolation: isolate;
}

.partners:before {
    position: absolute;
    z-index: -1;
    content: "";
    width: 100vw;
    transition: all .1s ease;
    inset-inline: 50%;
    transform: translate(-50%)
}

.partners.partners_page:before {
    background: 100% 0 url(../pics/icon_4.png);
    background-repeat: no-repeat;
    inset-block: calc(var(--flow-spacing, 1em)*-1) 0
}

.partners .partners_container {
    padding: 1rem;
    background-color: #fff;
    border-radius: 100px
}

@media(max-width:991.98px) {
    .partners .partners_container {
        padding: 4rem 3rem
    }
}

@media(max-width:575.98px) {
    .partners .partners_container {
        padding: 3rem 2rem
    }
}


.partners_header {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 80px
}

.partners_header_title {
    color: #000
}


@media(max-width:1279.98px) {
    .partners_header {
        margin-bottom: 40px
    }
}

@media(max-width:767.98px) {
    .partners_header {
        align-items: center;
        margin-bottom: 0
    }
}


.partners_card {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    border-right: 2px solid #000;
    transition: all .15s ease-in-out;
    padding-inline: 3rem
}

.partners_card:nth-child(3n+3) {
    border-right: none
}

.partners_card img {
    max-width: 100%;
    max-height: 10rem;
    width: 100%;
    object-fit: contain
}

.partners_card svg {
    max-height: 120px;
    width: 100%
}


@media(max-width:1279.98px) {
    .partners_card {
        padding: 44px
    }

    .partners_card svg {
        max-height: 94px
    }

    .partners_card {
        padding: 0 20px 20px;
        border: none
    }


}


.all-news-button-wrapper {
    text-align: center;
    /* Центрируем кнопку */
    margin-top: 30px;
    /* Отступ от слайдера вниз */
    margin-bottom: 20px;
}

.all-news-btn {
    display: inline-block;
    background-color: transparent;
    color: #dfee91;
    /* Желтовато-зеленый цвет из вашего логотипа/заголовка */
    border: 2px solid #dfee91;
    padding: 12px 35px;
    font-family: "Segoe UI", Tahoma, sans-serif;
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    transition: all 0.3s ease;
    letter-spacing: 1px;
}

.all-news-btn:hover {
    background-color: #dfee91;
    color: #1a1a1a;
    /* Темный цвет фона при наведении */
    box-shadow: 0 4px 15px rgba(223, 238, 145, 0.3);
}

/* =======================================================
   ГЛОБАЛЬНАЯ АДАПТИВКА ДЛЯ МОБИЛЬНЫХ УСТРОЙСТВ (< 768px)
   ======================================================= */
@media screen and (max-width: 768px) {

    /* 1. БАЗОВЫЕ ОТСТУПЫ И КОНТЕЙНЕРЫ */
    .contain {
        --padding-inline: 15px;
        /* Уменьшаем боковые отступы */
    }

    .block_bg,
    .bg_block {
        --flow-spacing: 3rem;
        /* Уменьшаем вертикальные отступы между секциями */
        padding-block: 2rem;
    }

    .directions_card,
    .slider_item_card {
        padding: 20px 15px;
        /* Меньше отступов внутри карточек */
    }

    /* 2. ТИПОГРАФИКА (Уменьшаем гигантские шрифты) */
    .Slogan_heading {
        font-size: 32px !important;
        line-height: 1.2 !important;
        padding: 30px 0 !important;
    }

    .search_programs_heading h2,
    h2.directions_h2_size,
    .event_news_title,
    .Otzyvy_header_title,
    .corpus_title {
        font-size: 28px !important;
        line-height: 1.2 !important;
        margin-bottom: 20px !important;

    }

    /* 3. ШАПКА И НАВИГАЦИЯ */
    .header_down {
        padding: 10px 15px !important;
    }

    .header_down_logo>img {
        width: 120px !important;
        height: 120px !important;
        /* Уменьшаем логотип */
    }

    .header_down_menu_graphics {
        width: 40px !important;
        height: 40px !important;
    }

    /* Скрываем переключатель языков текстом, оставляем только кружки, если нужно */
    .header_language_changer {
        width: 2.5rem;
        padding: 0;
        color: transparent !important;
        /* Прячем текст RU/EN/KZ */
    }

    /* 4. БЛОК ПОИСКА */
    .search_programs {
        padding: 1rem !important;
    }

    .sam_search {
        flex-direction: column;
        gap: 10px;
    }

    .sam_search_vvod {
        width: 100% !important;
        padding: 12px 20px !important;
    }

    .sam_search_button,
    .search-all_programs_button {
        width: 100% !important;
        margin: 0 !important;
    }

    .mini_buttons {
        width: 100% !important;
        font-size: 18px !important;
        padding: 10px !important;
    }

    /* Прячем теги на мобилках, чтобы не захламлять экран */
    .d-flex.align-items-center.flex-wrap {
        display: none !important;
    }

    /* 5. ГАЛЕРЕИ И СЛАЙДЕРЫ (Свайп пальцем) */
    .slider_list,
    .ceblLife_wrapper {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 15px !important;
        margin-inline: 0 !important;
        gap: 15px !important;
    }

    /* Карточки в слайдере */
    .slider_item,
    .card {
        flex: 0 0 85% !important;
        /* Показываем кусочек следующей карточки */
        min-width: 280px !important;
        scroll-snap-align: center;
        margin: 0 !important;
    }

    .card_photo {
        height: 200px !important;
        /* Картинки новостей пониже */
    }

    /* Скрываем стрелки, так как есть свайп */
    .slider_arrow {
        display: none !important;
    }

    /* 6. СЕТКА НАПРАВЛЕНИЙ (1 колонка) */
    .directions_3rows {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .directions_card {
        border-radius: 16px !important;
        text-align: left;
    }

    .directions_card h4 {
        font-size: 18px !important;
        line-height: 1.3 !important;
    }

    /* 7. ПАРТНЕРЫ */
    .partners .partners_container {
        padding: 30px 15px !important;
        border-radius: 30px !important;
    }

    .partners-marquee-track {
        gap: 20px !important;
    }

    .slide {
        flex: 0 0 150px !important;
        /* Логотипы меньше */
        height: 100px !important;
    }

    .partner-img {
        height: 30px !important;
    }

    /* 8. КАМПУСЫ И КАРТА */
    .map_container {
        flex-direction: column !important;
        height: auto !important;
    }

    .list_container {
        width: 100% !important;
        border-radius: 10px 10px 0 0 !important;
        padding: 15px !important;
    }

    .map_layout {
        width: 100% !important;
        height: 300px !important;
        /* Карта на мобилке */
        border-radius: 0 0 10px 10px !important;
    }

    /* 9. ФУТЕР */
    .footer {
        flex-direction: column !important;
        text-align: center !important;
        padding: 30px 15px !important;
        gap: 20px;
    }

    .footer_contacts {
        margin: 0 auto !important;
        align-items: center !important;
    }

    .footer_contacts_buttons {
        justify-content: center !important;
        margin-top: 15px;
    }

    .rules {
        flex-direction: column !important;
        text-align: center !important;
        gap: 15px;
        padding: 20px 15px !important;
    }

    .rules_1block,
    .rules_2block {
        align-items: center !important;
    }

    /* 10. КНОПКА "НАВЕРХ" */
    .button_up {
        width: 45px !important;
        height: 45px !important;
        bottom: 20px !important;
        right: 20px !important;
        margin: 0 !important;
        border-radius: 50% !important;
    }

    .button_up_dots {
        width: 25px !important;
        height: 25px !important;
    }
}

/* Экстра-маленькие экраны (iPhone SE, старые Android) */
@media screen and (max-width: 480px) {
    .Slogan_heading {
        font-size: 26px !important;
    }

    .slider_item,
    .card {
        flex: 0 0 90% !important;
        min-width: 250px !important;
    }

    .search_programs_heading h2 {
        font-size: 24px !important;
    }
}



/* =======================================================
   "СОЦИАЛЬНЫЕ ПАРТНЕРЫ" ДЛЯ ТЕЛЕФОНОВ
   ======================================================= */
@media screen and (max-width: 768px) {

    /* 1. Убираем гигантскую высоту в 300px, делаем блок компактным */
    .slider,
    .slider__track,
    .slide {
        height: 100px !important;
        min-height: 100px !important;
    }

    /* 2. Немного увеличиваем сами логотипы, чтобы они не терялись */
    .slide {
        flex: 0 0 150px !important;
        /* Ширина слота для одного логотипа */
    }

    .slide img {
        max-height: 55px !important;
        /* Ограничиваем высоту логотипа */
        width: auto !important;
        object-fit: contain;
    }

    /* 3. Уменьшаем дыру между заголовком и логотипами (было 80px) */
    .partners_header {
        margin-bottom: 15px !important;
    }

    /* 4. Уменьшаем общие отступы белого фона, чтобы он облегал контент */
    .partners .partners_container {
        padding: 30px 15px 20px 15px !important;
        border-radius: 24px !important;
        /* Делаем углы чуть менее круглыми для мобилок */
        width: 90%;
        /* Чтобы блок не прилипал к краям экрана */
        margin: 0 auto;
        /* Центрируем по горизонтали */
    }
}

/* =======================================================
   СТРЕЛКИ ДЛЯ КАРУСЕЛИ НОВОСТЕЙ НА МОБИЛЬНЫХ
   ======================================================= */
@media screen and (max-width: 768px) {

    /* 1. Включаем стрелки обратно и делаем их чуть компактнее */
    .slider_arrow {
        display: flex !important;
        width: 40px !important;
        height: 40px !important;
        z-index: 100 !important;
        /* Чтобы они точно были поверх карточек */
    }

    /* 2. Прижимаем стрелки к самым краям экрана телефона */
    .arrow_prev {
        left: 0px !important;
    }

    .arrow_next {
        right: 0px !important;
    }

    /* 3. Делаем отступы по бокам внутри ленты, чтобы карточки не прятались под стрелками */
    .ceblLife_wrapper {
        padding-inline: 40px !important;
        scroll-snap-type: none !important;
        /* Отключаем "прилипание", чтобы кнопки листали плавно */
    }
}


/* =======================================================
   ПРИНУДИТЕЛЬНОЕ ОТОБРАЖЕНИЕ ТЕКСТОВОГО МЕНЮ НА ТЕЛЕФОНЕ
   ======================================================= */
@media screen and (max-width: 1440px) {

    /* 1. Жестко убиваем кнопку с 9 точками */
    .header_down_menu_btn {
        display: none !important;
    }

    /* 2. Жестко включаем текстовое меню */
    .menu_list {
        display: flex !important;
        width: 100% !important;
        margin: 15px 0 0 0 !important;
        padding-bottom: 10px !important;
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        /* Включаем свайп вбок */
        -webkit-overflow-scrolling: touch !important;
        gap: 20px !important;
        justify-content: flex-start !important;
    }

    /* Скрываем ползунок прокрутки для красоты */
    .menu_list::-webkit-scrollbar {
        display: none !important;
    }

    /* 3. Перестраиваем шапку: логотип по центру, меню под ним */
    .header_down {
        flex-wrap: wrap !important;
        justify-content: center !important;
        padding: 15px 15px 0 15px !important;
    }

    .header_down_logo {
        margin: 0 auto !important;
    }

    /* 4. Настраиваем размер текста пунктов меню */
    .menu_list_item {
        font-size: 16px !important;
        margin-right: 0 !important;
        white-space: nowrap !important;
        /* Чтобы текст не падал на вторую строку */
    }
}


/* АДАПТИВКА ДЛЯ БОКОВОГО МЕНЮ */
@media screen and (max-width: 768px) {

    /* 1. Прячем горизонтальные ссылки */
    .menu_list {
        display: none !important;
    }

    /* 2. Настраиваем блок шапки, чтобы логотип был слева, а кнопка справа */
    .header_down {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        /* Расталкивает элементы по краям */
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* 3. Кнопка-бургер */
    .burger-menu-btn {
        display: flex !important;
        /* Включаем видимость */
        flex-direction: column;
        justify-content: space-between;
        width: 30px;
        height: 20px;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
        z-index: 10;
        margin-right: 15px;
        /* Отступ от правого края экрана */
    }

    /* 4. Полоски кнопки (ДЕЛАЕМ ИХ БЕЛЫМИ, чтобы было видно на синем фоне) */
    .burger-menu-btn span {
        width: 100%;
        height: 3px;
        background-color: #ffffff !important;
        /* Белый цвет! */
        border-radius: 4px;
    }




    /* 3. Боковая панель (Исправленный выезд) */
    .sidebar-panel {
        display: flex !important;
        /* ЖЕСТКО включаем видимость на мобильных */
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        transform: translateX(120%) !important;
        /* Прячем меню за правый край экрана */
        width: 280px !important;
        height: 100vh !important;
        /* На всю высоту экрана */
        background: #ffffff !important;
        z-index: 9999999 !important;
        /* Делаем меню выше вообще всех элементов на сайте */
        transition: transform 0.35s ease-in-out !important;
        /* Плавный выезд */
        box-shadow: -5px 0 15px rgba(0, 0, 0, 0.2) !important;
        flex-direction: column !important;
        padding-bottom: 0 !important;
    }

    /* Когда меню открыто */
    .sidebar-panel.active {
        transform: translateX(0) !important;
        /* Возвращаем меню на экран */
    }

    /* Оверлей (темный фон) */
    .sidebar-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        background: rgba(0, 0, 0, 0.5) !important;
        z-index: 9999998 !important;
        /* Должен быть чуть ниже самого меню */
        display: none !important;
        backdrop-filter: blur(2px) !important;
    }

    .sidebar-overlay.active {
        display: block !important;
    }

    /* Внутренности меню */
    .sidebar-header {
        padding: 20px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #eee;
        flex-shrink: 0;
    }

    .sidebar-logo {
        width: 50px;
    }

    .sidebar-close {
        font-size: 35px;
        cursor: pointer;
        color: #202038;
    }

    /* САМОЕ ВАЖНОЕ: Включаем скролл для списка ссылок */
    .sidebar-nav {
        padding: 20px 0;
        flex-grow: 1;
        /* Навигация занимает все оставшееся место по высоте */
        overflow-y: auto;
        /* Включаем вертикальную прокрутку! */
        padding-bottom: 80px;
        /* Делаем отступ снизу, чтобы самый последний пункт не прилипал к краю телефона */
    }

    .sidebar-link,
    .sidebar-dropbtn {
        display: block;
        width: 100%;
        padding: 15px 25px;
        font-size: 17px;
        font-weight: 500;
        color: #202038;
        text-decoration: none;
        text-align: left;
        background: none;
        border: none;
        border-bottom: 1px solid #f5f5f5;
        cursor: pointer;
    }

    /* Подменю (аккордеон) */
    .sidebar-submenu {
        background: #f9f9f9;
        display: none;
        /* Скрыто по умолчанию */
    }

    .sidebar-submenu a {
        display: block;
        padding: 12px 40px;
        font-size: 15px;
        color: #555;
        text-decoration: none;
        border-bottom: 1px solid #eee;
    }

    .sidebar-submenu a {
        display: block;
        padding: 12px 40px;
        font-size: 15px;
        color: #555;
        text-decoration: none;
        border-bottom: 1px solid #eee;
    }


    /* Стили для вложенных меню (НПА, Образовательные программы) */
    .sidebar-nested-dropbtn {
        display: block;
        width: 100%;
        padding: 12px 40px;
        font-size: 15px;
        color: #4a5568;
        text-align: left;
        background: #f1f5f9;
        border: none;
        border-bottom: 1px solid #e2e8f0;
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .sidebar-nested-submenu {
        display: none;
        background: #e2e8f0;
    }

    .sidebar-nested-submenu a {
        padding: 10px 50px !important;
        font-size: 14px !important;
        border-bottom: 1px solid #cbd5e1 !important;
    }
}

/* --- Decorative Background Elements --- */
.decor-wrap {
    /* Контейнер теперь не ограничивает фигуры и не обрезает их */
    position: static;
}

/* Поднимаем основные блоки контента выше декораций */
header,
main,
footer,
.container,
.section-header,
.doc-grid,
.all_body,
.schedule-container,
.code-wrapper {
    position: relative;
    z-index: 2;
}

/* Специфичные для страниц блоки тоже поднимаем */
.doc-card,
.archive-list,
.specialty-table-wrapper,
.administration-grid,
.history-content {
    position: relative;
    z-index: 2;
}

/* Large soft blue circle */
.decor-circle-blue::before {
    content: "";
    position: absolute;
    width: 800px;
    height: 800px;
    background: url(../pics/icon-3.webp) no-repeat center/contain;
    z-index: -1;
    opacity: 0.4;
    top: -100px;
    right: -200px;
}

/* Greenish pattern ring */
.decor-ring-green::after {
    content: "";
    position: absolute;
    width: 600px;
    height: 600px;
    background: url(../pics/icon-2_2.svg) no-repeat center/contain;
    z-index: -1;
    opacity: 0.5;
    bottom: 100px;
    left: -150px;
}

/* Peach patterned dots */
.decor-dots-peach::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    background: url(../pics/icon_4.png) no-repeat center/contain;
    z-index: -1;
    opacity: 0.3;
    top: 25%;
    right: 5%;
}

/* Accent patterned circle */
.decor-circle-accent::after {
    content: "";
    position: absolute;
    width: 700px;
    height: 700px;
    background: url(../pics/icon-7.png) no-repeat center/contain;
    z-index: -1;
    opacity: 0.4;
    bottom: 20%;
    right: -100px;
}

@media (max-width: 1200px) {

    .decor-circle-blue::before,
    .decor-ring-green::after,
    .decor-circle-accent::after {
        width: 400px;
        height: 400px;
    }
}

@media (max-width: 768px) {

    .decor-circle-blue::before,
    .decor-ring-green::after,
    .decor-dots-peach::before,
    .decor-circle-accent::after {
        display: none;
    }
}