

:root {
    /* Исправлены названия переменных под их использование в CSS */
    --color-main-1: #fbf7f0;
    --color-main-2: rgb(24, 21, 9);
    --color-main-3: #14525e;
    --color-white: #f8d487; /* Бежево-розовый фон из вашей задачи */
    --color-link: #ffffff;
    
    /* Новые переменные для требуемых цветов */
    --banner-title-red: #D32F2F; /* Насыщенный красный для заголовка */
    --banner-button-text-red: #B71C1C; /* Темный красный для текста кнопки */
    --banner-text-black: #000000; /* Черный для основного текста */
}

/* Скрытие лишних элементов GC — оставляем как есть */
.gc-main-content:not(.with-left-menu) .top-notification-wrapper {
    display: none;
}

.common-banner-wrapper.hide_banners {
       display:none!important;
}

.info-wrapper .common-banner-wrapper {
    position: relative!important;
}

/* Позиционирование баннера */
.common-banner-wrapper {
	left: 90px !important;
	bottom: 5px !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;
}

/* Фон самого блока баннера */
.common-banner {
	display: flex !important;
	padding: 2px 22px 0px 7px !important;
	border-radius: 8px !important;
	max-height: 103px !important;
	background-color: var(--color-white) !important; /* Бежево-розовый фон */
    background-image: linear-gradient(153deg, #f8d487 7%, #f2f990 49%, #ee90d5 98%)!important;
}

/* Контентная часть */
.common-banner .banner-content {
	width: 250px !important;
	color: var(--banner-text-black) !important; /* Основной текст черный */
}

/* Ссылки внутри контента по умолчанию черные, но наследуют настройки родителя */
.common-banner .banner-content a {
	color: inherit !important;
}

/* Заголовок КРАСНЫМ цветом */
.common-banner .banner-title {
	font-size: 15.5px !important;
	font-weight: bold !important;
	margin: 6px 0 4px 0 !important;
	line-height: 14.18px !important;
	color: var(--banner-title-red) !important; /* Красный цвет заголовка */
}

/* Если у вас обернут только кусок заголовка в span, он тоже будет красным */
.common-banner .banner-title span {
	border: 0px white solid;
	box-sizing: border-box !important;
	border-radius: 6px !important;
	padding: 0.5px 1.1px !important;
}

/* Основной текст */
.common-banner .banner-text {
	padding: 0 !important;
	font-size: 12px !important;
	line-height: 12.32px !important;
	font-weight: 400 !important;
	color: var(--banner-text-black) !important; /* Гарантированно черный основной текст */
}

/* Выделение жирным внутри текста остается черным */
.common-banner .banner-text span {
	font-weight: 600 !important;
	color: var(--banner-text-black) !important;
}

.common-banner .banner-link {
    color: var(--banner-button-text-red) !important; /* Красный текст кнопки */
    text-transform: uppercase !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    background: var(--color-white) !important; /* Бежево-розовый фон кнопки */
    margin-left: 30px !important;
    margin-top: 7px !important;
    padding: 7px !important;
    padding-top: 8px !important;
    width: 90px !important;
    text-align: center !important;
    border-radius: 9px !important;
    display: inline-block !important;
    box-shadow: 0 0 10px 1px #a2d2ed !important;
    
    /* --- Новые свойства для блика --- */
    position: relative !important; /* Устанавливаем контекст позиционирования для ::before */
    overflow: hidden !important;   /* Обязательно, чтобы скрыть часть блика за границами кнопки */
    cursor: pointer !important;
}

/* Псевдоэлемент, который будет создавать сам блик */
.common-banner .banner-link::before {
    content: '';
    position: absolute !important;
    top: 0;
    left: -60%; /* Начинаем левее видимой области кнопки */
    width: 60%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.4); /* Белый полупрозрачный цвет блика */
    transform: skewX(-25deg); /* Наклоняем "луч" света */
    transition: all 0.3s ease; /* Плавность появления/исчезания при наведении */
}

/* Анимация движения блика */
@keyframes bannerButtonShine {
    0% { 
        left: -60%; 
        opacity: 0; /* Скрываем в начале пути */
    }
    30% { 
        opacity: 1; /* Появляемся */
    }
    70% { 
        opacity: 1; /* Держим яркость */
    }
    100% { 
        left: 120%; /* Улетаем вправо за пределы кнопки */
        opacity: 0; /* Исчезаем */
    }
}

/* Запуск анимации при наведении курсора */
.common-banner .banner-link:hover::before {
    animation: bannerButtonShine 1.2s ease-out forwards;
}

/* Для мобильных устройств — запуск по нажатию (активное состояние) */
.common-banner .banner-link:active::before {
    animation: bannerButtonShine 1.2s ease-out forwards;
}

/* Иконка закрытия (крестик) белым цветом для контраста */
.common-banner .banner-close {
	color: #ffffff !important;
	line-height: 1 !important;
	font-size: 45px !important;
	margin-left: 20px !important;
	margin-top: 5px !important;
	font-weight: bold !important;
	display: inline-block !important;
	cursor: pointer !important;
}

/* Наследование ссылок */
.common-banner a {
	color: inherit !important;
	text-decoration: none !important;
        cursor: pointer;
}

.common-banner .banner-wrapper-content {
	display: flex !important;
	margin-left: 10px !important;
	align-items: flex-start !important;
}

.common-banner a.mobile {
	display: none !important;
}

.common-banner__note {
	position: absolute !important;
	bottom: -6px !important;
	right: 27px !important;
	color: var(--color-white) !important;
	opacity: 0.95 !important;
	font-size: 6px !important;
}

.common-banner .banner-logo {
	width: 60px !important;
    height: 60px !important;
    margin-top: 6px !important;
    border-radius: 40%;
}

.mobile-show {
	display: none !important;
}

.banner-title-color {
color: var(--banner-title-red)!important;
}

@media (max-width: 768px) {
	.common-banner-wrapper {
		left: 5px !important;
		bottom: 50px !important;
	}
}

@media (max-width: 560px) {
	.common-banner {
		padding: 1px 10px 10px !important;
		width: 350px !important;
	}

	.common-banner .banner-link {
		height: 30px !important;
		width: 82px !important;
		font-size: 9px !important;
		padding: 2px !important;
		padding-top: 3px !important;
		padding-left: 5px !important;
		padding-right: 6px !important;
		border-radius: 4px !important;
		position: absolute !important;
		line-height: 10px !important;
		top: 18px !important;
		right: 6px !important;
	}

	.common-banner .banner-wrapper-content {
		margin-top: -9px !important;
		margin-left: 11px !important;
	}

	.common-banner .banner-close {
		position: absolute !important;
		right: 6px !important;
		top: -7px !important;
	}

	.banner-wrapper-content {
		flex-direction: column !important;
	}

	.common-banner .banner-title {
		max-width: 203px !important;
		line-height: 10.5px !important;
		font-size: 10px !important;
        margin-top: 11.2px!important;
		color: var(--banner-title-red) !important; /* Сохраняем красный цвет на мобильных */
	}

	.common-banner .banner-text {
		max-width: 180px !important;
		font-size: 12.05px !important;
		line-height: 8px !important;
		color: var(--banner-text-black) !important;
	}

	.common-banner__note {
		right: 7px !important;
		font-size: 8px !important;
	}

	.common-banner .banner-logo {
		margin-top: 6px !important;
	}

	.mobile-show {
		display: block !important;
	}
}
