.reveal-menu-container {
position: relative;
width: 100%;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: flex-start;
overflow: hidden;
padding: 10% 8%;
box-sizing: border-box;
}

.reveal-background-layer {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1;
}

.reveal-bg-image {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-size: cover;
background-position: center;
opacity: 0;
transition: opacity 0.8s cubic-bezier(0.25, 1, 0.5, 1);
z-index: 1;
}

.reveal-bg-image.active {
opacity: 1;
z-index: 2;
}

.reveal-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.4);
z-index: 3;
}

.reveal-menu-wrapper {
position: relative;
z-index: 10;
width: 100%;
max-width: 600px;
}

.reveal-menu-nav {
display: flex;
flex-direction: column;
gap: 1.5rem;
}

.reveal-menu-item {
font-size: clamp(2.5rem, 5vw, 5rem);
font-weight: 800;
text-transform: uppercase;
text-decoration: none;
letter-spacing: 2px;
display: inline-block;
position: relative;
align-self: flex-start;
transition: transform 0.3s ease, color 0.3s ease;
}

.reveal-menu-item::after {
content: ”;
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 4px;
transition: width 0.3s ease;
}

.reveal-menu-item:hover {
transform: translateX(15px);
}

.reveal-menu-item:hover::after,
.reveal-menu-item.active::after {
width: 100%;
}