:root {
    --menu-speed: 0.75s;
}

.menu-wrap {
    display: none;
}

@media(max-width: 500px) {
    .nav-list {
        display: none;
    }
    .menu-wrap {
        display: block;
        position: fixed;
        right: 0;
        top: 0;
        z-index: 1;
    }
    .menu-wrap .toggler {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 2;
        cursor: pointer;
        width: 50px;
        height: 50px;
        opacity: 0;
    }
    .menu-wrap .hamburger {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 1;
        width: 60px;
        height: 60px;
        padding: 1rem;
        background-color: rgba(28, 28, 71, 0.75);
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .menu-wrap .hamburger>div {
        position: relative;
        width: 100%;
        height: 2px;
        background-color: white;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.4s ease;
    }
    /* TOP AND BOTTOM LINES */
    .menu-wrap .hamburger>div::before,
    .menu-wrap .hamburger>div::after {
        content: '';
        position: absolute;
        top: -10px;
        z-index: 1;
        width: 100%;
        height: 2px;
        background: inherit;
    }
    /* MOVES LINE DOWN */
    .menu-wrap .hamburger>div::after {
        top: 10px;
    }
    /* Animation when clicked */
    .menu-wrap .toggler:checked+.hamburger>div {
        transform: rotate(135deg);
    }
    /* TURN INTO X WHEN CHECKED */
    .menu-wrap .toggler:checked+.hamburger>div::before,
    .menu-wrap .toggler:checked+.hamburger>div::after {
        top: 0;
        transform: rotate(90deg);
    }
    /* ROTATE ON HOVER WHEN CHECKED */
    .menu-wrap .toggler:checked:hover+.hamburger>div {
        transform: rotate(225deg);
    }
    /* SHOW MENU */
    .menu-wrap .toggler:checked~.menu {
        visibility: visible;
    }
    .menu-wrap .toggler:checked~.menu>div {
        transform: scaleY(1);
        transition-duration: var(--menu-speed);
    }
    .menu-wrap .toggler:checked~.menu>div>div {
        opacity: 1;
        transition: opacity 0.4s ease;
    }
    .menu-wrap .menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        visibility: hidden;
        overflow: hidden;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .menu-wrap .menu>div {
        background-color: rgba(28, 28, 71, 0.5);
        width: 500vw;
        height: 500vw;
        display: flex;
        align-items: center;
        justify-content: center;
        transform: scaleY(0);
        transition: all 0.4s ease;
    }
    .menu-wrap .menu>div>div {
        text-align: center;
        max-width: 90vw;
        max-height: 100vh;
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    .menu-wrap .menu>div>div>ul>li {
        list-style: none;
        color: #fff;
        font-size: 1.5rem;
        padding: 1rem;
    }
    .menu-wrap .menu>div>div>ul>li>a {
        color: inherit;
        text-decoration: none;
        transition: color 0.4s ease;
    }
}