@media (max-width: 1023px) {
    #burger-toggle {
        display: flex; /* Показываем бургер на мобильных */
        position: fixed; /* Фиксируем, чтобы был поверх меню */
        top: 28px; /* Выравниваем по центру шапки (примерно) */
        right: 5%; /* Отступ справа как у контейнера */
        z-index: 2001; /* Поверх меню и всего остального */
        width: 30px;
        height: 20px;
        flex-direction: column;
        justify-content: space-between;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
    }

    #burger-toggle span {
        display: block;
        width: 100%;
        height: 3px;
        background-color: #D4AF37; /* Цвет полосок (Золотой) */
        border-radius: 2px;
        transition: 0.3s;
    }

    /* Анимация крестика при открытии */
    #burger-toggle.active span:nth-child(1) {
        transform: translateY(8.5px) rotate(45deg);
        background-color: #FDFBF7; /* Белый цвет на темном фоне меню */
    }

    #burger-toggle.active span:nth-child(2) {
        opacity: 0;
    }

    #burger-toggle.active span:nth-child(3) {
        transform: translateY(-8.5px) rotate(-45deg);
        background-color: #FDFBF7;
    }

    .nav-links {
        position: fixed; /* Меню перекрывает контент */
        right: 0;
        transform: translateX(100%); /* Спрятано за экраном через трансформацию */
        width: 100%;
        top: 85px; /* Сдвигаем меню ниже, чтобы не наезжало на логотип */
        bottom: 0; /* Растягиваем до низа экрана */
        height: auto; /* Высота определяется top и bottom */
        padding-top: 20px; /* Внутренний отступ для контента */
        box-sizing: border-box;
        background: #333333; /* Тёмно-серый */
        box-shadow: none;
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); /* Более плавная кривая */
        display: block; /* Смена с flex на блочный вид */
        overflow-y: auto; /* Прокрутка, если 18 ссылок не влезли */
        z-index: 2000; /* Очень высокий слой, чтобы перекрыть слайдеры и формы */
        will-change: transform; /* Подсказка браузеру подготовить GPU */
    }

    .nav-links.active {
        transform: translateX(0); /* Выезжает плавно */
    }

    .dropdown {
        border-bottom: 1px solid #4D4D4D;
    }

    .submenu {
        position: fixed; /* На весь экран, перекрывая основное меню */
        top: 0 !important; /* Меню уже смещено на 85px, поэтому внутри него начинаем с 0 */
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100%;
        height: 100% !important; /* Строго по размеру родителя */
        z-index: 2005;
        box-shadow: none;
        background: #333333; /* Цвет фона как у основного меню */
        padding: 20px 0 !important; /* Нормальные отступы для контента */
        box-sizing: border-box;
        overflow-y: auto !important; /* Своя собственная прокрутка */
        -webkit-overflow-scrolling: touch; /* Плавная прокрутка на iOS */
        visibility: visible;
        opacity: 1;
        display: none; /* Скрываем подменю по умолчанию */
    }

    /* Сброс позиционирования для вложенных меню (перебиваем menu.css) */
    .submenu .submenu {
        left: 0;
        top: 0;
        margin-top: 0;
    }

    /* Увеличиваем область нажатия для пальцев */
    .nav-links a {
        padding: 15px 20px;
        display: block;
        font-size: 18px;
        color: #FDFBF7; /* Молочный текст */
    }

    /* Адаптация ссылок в подвале для мобильных */
    .footer-nav {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .footer-nav a {
        margin: 10px 0 !important; /* Переопределяем инлайн-стили для вертикальных отступов */
    }

    .footer-columns {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .footer-column {
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
        min-width: auto;
    }

    .footer-column h3 {
        display: inline-block;
        padding-bottom: 5px;
    }

    /* Адаптация логотипа */
    .logo {
        margin-left: 0;
        gap: 15px;
        max-width: 80%;
    }

    .logo img {
        max-height: 50px;
    }

    .logo-line-top,
    .logo-line-middle,
    .logo-line-bottom {
        font-size: 12px;
    }

    /* Адаптация Cookie-баннера */
    .cookie-bar {
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        gap: 15px;
    }

    .cookie-content p {
        padding-right: 0;
        text-align: left;
    }

    .cookie-actions {
        width: 100%;
        justify-content: space-between;
    }
    
    .cookie-btn-ok {
        flex-grow: 1;
        text-align: center;
    }

    /* Индикатор подменю для мобильной навигации */
    .nav-links a.has-children::after {
        content: '\00BB'; /* » */
        float: right;
        margin-left: 10px;
        transition: transform 0.3s ease; /* Анимация поворота */
    }

    /* Показываем подменю, когда родительский li имеет класс open */
    .nav-links li.open > .submenu {
        display: block;
        animation: slideIn 0.3s ease forwards;
    }

    @keyframes slideIn {
        from { transform: translateX(100%); }
        to { transform: translateX(0); }
    }

    @keyframes slideOut {
        from { transform: translateX(0); }
        to { transform: translateX(100%); }
    }

    /* Поворачиваем стрелку при открытии */
    li.open > a.has-children::after {
        transform: rotate(90deg);
    }

    /* Стили для кнопки "Назад" в мобильном меню */
    .mobile-back {
        display: block; /* Показываем на мобильных */
        border-bottom: 1px solid #4D4D4D;
    }

    .mobile-back-link::before {
        content: '\00AB'; /* Двойной обратный шеврон « */
        margin-right: 10px;
    }

    /* Уменьшаем отступы для контента на мобильных устройствах */
    main {
        padding: 10px !important;
    }

    .main-container,
    .container {
        padding: 15px !important;
    }
}
