
    /*!* Overlay: hidden by default, shown when .is-open *!*/
#mob-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 32;
    background: rgba(0,0,0,0.6);
}
#mob-overlay.is-open {
    display: block;
}

/* Slide-in panel — always full width on mobile */
#mobileMenu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 33;
    height: 100vh;
    width: 100vw;        /* full viewport width — no gap */
    max-width: 100vw;    /* override any inherited max-width */
    background: #fff;
    overflow-y: auto;
    overflow-x: hidden;
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
    padding-bottom: 2rem;
    box-shadow: none;    /* no shadow needed when full-width */
}
#mobileMenu.is-open {
    transform: translateX(0);
}

/* On tablets (≥540px) cap the panel width and restore shadow */
@media (min-width: 540px) {
    #mobileMenu {
        width: 400px;
        max-width: 400px;
        box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
    }
}

/* Prevent body scroll when menu open */
body.mob-menu-open {
    overflow: hidden;
}

/* Chevron rotation */
.mobile-toggle.is-active > i {
    transform: rotate(180deg);
}
.mobile-toggle > i {
    transition: transform 0.3s ease;
}