/* Disable body scroll when menu is open */
.no-scroll {
    overflow: hidden;
}

/* Hamburger Icon Styles */
.hamburger {
    width: 24px;
    height: 24px;
    position: relative;
    display: inline-block;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
}

.hamburger span {
    background: #fff;
    position: absolute;
    display: block;
    height: 2px;
    width: 100%;
    transition: all 0.3s ease-in-out;
    border-radius: 2px;
}

.hamburger span:nth-child(1) {
    top: 6px;
}

.hamburger span:nth-child(2) {
    top: 12px;
}

.hamburger span:nth-child(3) {
    top: 18px;
}

/* Transformations for the 'X' */
.hamburger.open span:nth-child(1) {
    transform: rotate(45deg);
    top: 12px;
}

.hamburger.open span:nth-child(2) {
    opacity: 0;
}

.hamburger.open span:nth-child(3) {
    transform: rotate(-45deg);
    top: 12px;
}

/* Mobile Menu Animation */
#mobile-menu {
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    transform: translateY(-100%);
    opacity: 0;
    visibility: hidden;
}

#mobile-menu.open {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}