
.menu-container {
    position: fixed;    
    top: 20px;    
    right: 20px;    
    z-index: 1000;    
}

.menu-container label {
    display: inline-block;
    padding: 10px;
    background-color: #ffae83;
    border-radius: 50%;
    cursor: pointer;
    z-index: 1001;
    position: relative;
    transition: background-color 0.3s ease;
}

.menu-container label:hover {
    background-color: #ad3f00;
}

.menu-container .bar {
    display: block;
    background-color: #3a1200;
    width: 30px;
    height: 3px;
    border-radius: 5px;
    margin: 5px auto;
    transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
    }

.menu-container input[type="checkbox"] {
    display: none;
}

.menu-container input[type="checkbox"]:checked~aside .aside-right {
    transform: translateX(0%);
}

.menu-container input[type="checkbox"]:checked~label .bar {
    background-color: #fff;
}

.menu-container input[type="checkbox"]:checked~label .top {
    transform: translateY(8px) rotateZ(45deg);
}

.menu-container input[type="checkbox"]:checked~label .bottom {
    transform: translateY(-8px) rotateZ(-45deg);
}

.menu-container input[type="checkbox"]:checked~label .middle {
    opacity: 0;
}

.aside-section {
    top: 0;
  
    bottom: 0;
   
    position: fixed;
    width: 100%;
    z-index: 999;
   
}

.aside-right {
    width: 30%;
   
    right: 0;
   
    background-color: #ffae83;
   
    transform: translateX(100%);
    transition: transform 0.4s ease-in-out;
    display: flex;
    
    justify-content: center;
  
    align-items: center;
}

.aside-list {
    list-style: none;
    
    padding: 0;
    margin: 0;
    text-align: center;
}

.aside-list li {
    margin-bottom: 30px;
    
}

.aside-anchor {
    padding-bottom: 7px;
   
    color: rgba(75, 45, 0);
   
    text-decoration: none;
    font-size: 40px;
    position: relative;

    font-weight: bold;
    
}

.aside-anchor:hover {
    text-decoration: none;
    
}

.aside-anchor::after {
    content: "";

    position: absolute;
    
    bottom: 0;
    background-color: rgba(75, 45, 0);
    left: 0;
    right: 0;
    height: 3px;
    border-radius: 3px;

}

.aside-anchor::before {
    border-radius: 3px;
    content: "";
    position: absolute;
    bottom: 0;
    background-color: #fff;
    left: 0;
    height: 3px;
    
    z-index: 1;
    width: 50%;
    transition: transform 0.2s ease-in-out;
}

.aside-anchor:hover:before {
    transform: translateX(100%);
}

/* Стили для оверлея */
.menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(41, 41, 41, 0.5);

    z-index: 998;
  
}

/* Показываем оверлей, когда меню открыто */
input[type="checkbox"]:checked~.menu-overlay {
    display: block;
    
}

/* 1. Скрываем всё, что вылезает за правый край экрана (чтобы не было горизонтального скролла) */
body {
    overflow-x: hidden;
}

/* 2. Адаптируем меню для мобильных телефонов и планшетов (экраны меньше 768px) */
@media (max-width: 768px) {
    .aside-right {
        width: 80%; /* Делаем меню шире на мобильных, чтобы текст поместился */
    }
    
    .aside-anchor {
        font-size: 24px; /* Уменьшаем размер шрифта для телефона */
    }
    
    .aside-list li {
        margin-bottom: 20px; /* Немного уменьшаем отступы между пунктами */
    }
}