

:root {
    /* Светлый тёплый оттенок для градиента */
    --color-main-1: #3D3632;

    /* Прозрачный акцент */
    --color-main-2: rgba(214, 186, 163, 0);

    /* Основной тёмный шоколадный цвет */
    --color-main-3: #211B18;

    /* Основной светлый текст */
    --color-white: #F4EFE5;

    /* Акцентный цвет кнопки */
    --color-link: #FFF8F2;
}


/* Скрывает верхнее системное уведомление GetCourse */
.gc-main-content:not(.with-left-menu) .top-notification-wrapper {
    display: none;
}


/* Полностью скрывает баннер при наличии класса hide_banners */
.common-banner-wrapper.hide_banners {
    display: none !important;
}


/* Внутри info-wrapper баннер становится обычным элементом */
.info-wrapper .common-banner-wrapper {
    position: relative !important;
}


/* Внешняя обёртка баннера */
.common-banner-wrapper {
    /* Положение баннера */
    left: 90px !important;
    bottom: 18px !important;

    /* Поверх остальных элементов */
    z-index: 999 !important;

    /* Отображение */
    display: flex !important;
    position: fixed !important;
    justify-content: flex-end !important;

    /* Шрифт */
    font-family: "proxima-nova", "Lato", Helvetica, Arial, sans-serif !important;

    /* Тонкая золотистая рамка */
    background: #D6BAA3 !important;

    /* Более мягкое скругление */
    border-radius: 16px !important;

    /* Толщина внешней рамки */
    padding: 1px !important;

    /* Мягкая тень всего баннера */
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.22),
        0 4px 10px rgba(0, 0, 0, 0.14) !important;
}


/* Основная внутренняя часть баннера */
.common-banner {
    display: flex !important;

    /* Более свободные внутренние отступы */
    padding: 10px 20px 10px 12px !important;

    /* Скругление внутреннего блока */
    border-radius: 15px !important;

    /* Высота баннера */
    height: 100px !important;
    max-height: 100px !important;

    /* Основной тёмный фон */
    background: linear-gradient(
        100deg,
        #211B18 0%,
        #2C2521 55%,
        #3D3632 100%
    ) !important;

    /* Вертикальное выравнивание содержимого */
    align-items: center !important;

    /* Корректный расчёт размеров */
    box-sizing: border-box !important;
}


/* Ширина текстовой части */
.common-banner .banner-content {
    width: 270px !important;
}


/* Цвет основного текста */
.common-banner .banner-content {
    color: var(--color-white) !important;
}


/* Цвет ссылок внутри текстовой части */
.common-banner .banner-content a {
    color: var(--color-white) !important;
}


/* Заголовок баннера */
.common-banner .banner-title {
    font-size: 16px !important;
    font-weight: 700 !important;

    margin: 0 0 5px 0 !important;

    line-height: 1.15 !important;

    color: #F8F2EC !important;
}


/* Выделенная часть заголовка */
.common-banner .banner-title span {
    border: 1px solid rgba(214, 186, 163, 0.7) !important;

    box-sizing: border-box !important;

    border-radius: 6px !important;

    padding: 1px 4px !important;

    color: #E7C9AD !important;
}


/* Основной текст */
.common-banner .banner-text {
    padding: 0 !important;

    margin: 0 !important;

    font-size: 12px !important;
    line-height: 1.3 !important;

    font-weight: 400 !important;

    color: #F4EFE5 !important;
}


/* Выделение отдельных слов */
.common-banner .banner-text span {
    font-weight: 600 !important;

    color: #E7C9AD !important;
}


/* CTA-кнопка */
.common-banner .banner-link {
    color: #FFF8F2 !important;

    text-transform: uppercase !important;

    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;

    background: linear-gradient(
        180deg,
        #C95A60 0%,
        #B5454D 48%,
        #96363E 100%
    ) !important;

    margin-left: 24px !important;
    margin-top: 0 !important;

    padding: 10px 14px !important;

    width: 135px !important;

    text-align: center !important;

    border-radius: 12px !important;

    display: inline-block !important;

    border: 1px solid rgba(231, 201, 173, 0.75) !important;

    box-shadow:
        0 5px 0 #70272E,
        0 8px 18px rgba(0, 0, 0, 0.22) !important;

    box-sizing: border-box !important;
}


/* Крестик закрытия */
.common-banner .banner-close {
    color: #F4EFE5 !important;

    line-height: 1 !important;

    font-size: 28px !important;

    margin-left: 18px !important;
    margin-top: 0 !important;

    font-weight: 600 !important;

    display: inline-block !important;

    opacity: 0.9 !important;
}


/* Все ссылки внутри баннера */
.common-banner a {
    color: inherit !important;

    text-decoration: none !important;

    cursor: pointer;
}


/* Контейнер внутреннего содержимого */
.common-banner .banner-wrapper-content {
    display: flex !important;

    margin-left: 14px !important;

    align-items: center !important;
}


/* Мобильная ссылка по умолчанию скрыта */
.common-banner a.mobile {
    display: none !important;
}


/* Маленькая подпись */
.common-banner__note {
    position: absolute !important;

    bottom: -14px !important;
    right: 28px !important;

    color: #F4EFE5 !important;

    opacity: 0.75 !important;

    font-size: 10px !important;
}


/* Картинка внутри баннера */
.common-banner .banner-logo {
    width: 90px !important;
    height: 60px !important;

    margin-top: 0 !important;

    border-radius: 10px !important;

    object-fit: cover !important;

    flex-shrink: 0 !important;
}


/* Элементы только для мобильных */
.mobile-show {
    display: none !important;
}


/* Планшеты */
@media (max-width: 768px) {

    /* Положение баннера */
    .common-banner-wrapper {
        left: 8px !important;
        bottom: 55px !important;
    }
}


/* Мобильные */
@media (max-width: 560px) {

    /* Внешняя обёртка */
    .common-banner-wrapper {
        left: 8px !important;
        right: 8px !important;

        bottom: 55px !important;

        width: auto !important;
    }


    /* Основной баннер */
    .common-banner {
        padding: 9px 12px !important;

        width: 100% !important;

        height: 92px !important;
        max-height: 92px !important;

        border-radius: 14px !important;
    }


    /* Текстовая часть */
    .common-banner .banner-content {
        width: auto !important;

        max-width: 175px !important;
    }


    /* CTA-кнопка */
    .common-banner .banner-link {
        height: auto !important;

        width: 92px !important;

        font-size: 10px !important;
        line-height: 1.15 !important;

        padding: 6px 5px !important;

        border-radius: 8px !important;

        position: absolute !important;

        top: 29px !important;
        right: 34px !important;

        margin: 0 !important;
    }


    /* Внутренний контейнер */
    .common-banner .banner-wrapper-content {
        margin-top: 0 !important;
        margin-left: 10px !important;

        align-items: flex-start !important;
    }


    /* Крестик */
    .common-banner .banner-close {
        position: absolute !important;

        right: 8px !important;
        top: 8px !important;

        margin: 0 !important;

        font-size: 24px !important;
    }


    /* На мобильном содержимое располагается колонкой */
    .banner-wrapper-content {
        flex-direction: column !important;
    }


    /* Заголовок */
    .common-banner .banner-title {
        max-width: 175px !important;

        line-height: 1.15 !important;

        font-size: 13px !important;

        margin-bottom: 4px !important;
    }


    /* Основной текст */
    .common-banner .banner-text {
        max-width: 170px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;
    }


    /* Маленькая подпись */
    .common-banner__note {
        right: 8px !important;

        bottom: -13px !important;

        font-size: 8px !important;
    }


    /* Картинка на мобильном */
    .common-banner .banner-logo {
        width: 78px !important;
        height: 52px !important;

        margin-top: 0 !important;

        border-radius: 8px !important;
    }


    /* Показываем мобильные элементы */
    .mobile-show {
        display: block !important;
    }
}
