.menu-wrapper {
    position: relative;
    display: inline-block;
}

/* Скрываем чекбокс */
.toggle-checkbox {
    display: none;
}

/* Показываем label только на экранах < 1256px */
.toggle-label {
    display: none;
}

/* Меню: скрыто через max-height, но не display:none */
.submenu {
    position: absolute;
    top: 100%;
    left: 0;

    width: 55vw;
    max-width: calc(100vw - 16px);

    max-height: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;

    background-color: #e1dffb;

    border: 2px solid #c5b8f0;
    box-shadow: 0 0 0 4px #e8e0ff,
                0 4px 16px rgba(0, 0, 0, .1);

    z-index: 2000;

    padding: 8px;
    padding-left: 16px;

    transition:
        max-height 0.3s ease,
        opacity 0.3s ease;
}

/* Ссылки внутри меню */
.submenu-link {
    display: block;
    margin-bottom: 8px;
    text-decoration: none;
    color: #333;
}

.submenu-link:hover {
    color: #6a5ac4;
}

.toggle-icon {
    width: 78px;
    height: auto;
    vertical-align: middle;
    user-select: none;
    -webkit-user-drag: none;       /* запрещаем перетаскивание картинки */
}

/* --- Адаптивная часть: показываем только на экранах < 1256px --- */

@media (max-width: 1255px) {
    .toggle-label {
        display: inline-block;
        cursor: pointer;

        /* Полностью убираем любой фон/обводку/тень */
        background: transparent !important;
        outline: none !important;
        box-shadow: none !important;
        border: none !important;
        -webkit-appearance: none;
        appearance: none;

        /* Убираем серый оверлей при тапе на iOS/Android */
        -webkit-tap-highlight-color: transparent;
        tap-highlight-color: transparent;

        padding: 0;
        margin: 0;
    }

    .toggle-label:active,
    .toggle-label:focus,
    .toggle-label:focus-visible {
        background: transparent !important;
        outline: none !important;
        box-shadow: none !important;
        -webkit-tap-highlight-color: transparent;
    }

    .toggle-icon {
        pointer-events: none;          /* клик идёт через label */
        user-select: none;
        -webkit-user-select: none;
        -webkit-touch-callout: none;   /* нет меню при долгом нажатии */
        -webkit-tap-highlight-color: transparent;  /* убираем подсветку и у картинки */
        display: block;
        border: none;
        outline: none;
        padding: 0;
        margin: 0;
    }

    /* Открытое состояние: меню видно и доступно для клика */
    .toggle-checkbox:checked ~ .submenu {
        max-height: 600px;
        opacity: 1;
        pointer-events: auto;
    }
}