/* Basic styles for horizontal menu and mobile menu */
.cmm-menu {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    background-color: var(--cmm-bg-color, #fff);
}
.cmm-menu > li {
    position: relative;
    padding: 1em;
    cursor: pointer;
}
.cmm-submenu, .cmm-submenu-level-3 {
    display: none;
    position: fixed;
    top: 0;
    height: 100vh;
    width: 50%;
    background-color: var(--cmm-bg-color, #f9f9f9);
    color: var(--cmm-text-color, #000);
    overflow-y: auto;
}
.cmm-submenu { left: 0; }
.cmm-submenu-level-3 { right: 0; }
.cmm-open > .cmm-submenu,
.cmm-open > .cmm-submenu-level-3 {
    display: block;
}
@media (max-width: 1024px) {
    .cmm-menu {
        display: none;
        flex-direction: column;
    }
    .cmm-menu.cmm-mobile-active {
        display: flex;
    }
    .cmm-hamburger {
        display: block;
        cursor: pointer;
        padding: 1em;
    }
}
