/* Modern mobile navigation overrides for Omega menu */
@media only screen and (max-width: 850px) {
    #omega {
        padding: 0 15px;
    }

    #omega-button {
        position: relative;
        float: right;
        width: 44px;
        height: 44px;
        padding: 0;
        border: 1px solid rgba(101,152,0,.18);
        border-radius: 12px;
        background: #f5f8ef;
        color: #659800;
        box-shadow: none;
        cursor: pointer;
        transition: background .2s ease, color .2s ease, transform .2s ease, border-color .2s ease;
    }

    #omega-button:hover,
    #omega-button:focus {
        outline: none;
        background: #659800;
        border-color: #659800;
        color: #fff;
    }

    #omega-button:active {
        transform: scale(.96);
    }

    #omega-button svg,
    #omega-button .svg-inline--fa {
        width: 18px;
        height: 18px;
    }

    #omega-overlay {
        background: rgba(19, 25, 13, .48);
        backdrop-filter: blur(3px);
        -webkit-backdrop-filter: blur(3px);
        opacity: 0;
        transition: opacity .25s ease;
    }

    .omega-activated #omega-overlay {
        opacity: 1;
    }

    #omega-sidebar {
        width: min(88vw, 370px);
        height: 100dvh;
        padding: 0;
        overflow-y: auto;
        background: #fff !important;
        border-radius: 0 22px 22px 0;
        box-shadow: 16px 0 48px rgba(0,0,0,.16);
        transform: translateX(-104%);
        transition: transform .28s cubic-bezier(.22,.61,.36,1);
    }

    .omega-activated #omega-sidebar {
        transform: translateX(0);
    }

    #omega-sidebar .menu-header {
        position: relative;
        display: flex;
        align-items: center;
        min-height: 84px;
        padding: 22px 66px 22px 24px;
        border-bottom: 1px solid #edf0e8;
        color: #659800;
        font-size: 21px;
        line-height: 1.25;
        font-weight: 800;
        background: #fff !important;
    }

    #omega-close {
        position: absolute;
        top: 20px;
        right: 18px;
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: 0;
        border-radius: 12px;
        background: #f3f6ed;
        color: #4f7108;
        font-size: 25px;
        line-height: 1;
        cursor: pointer;
        transition: background .2s ease, color .2s ease;
    }

    #omega-close:hover,
    #omega-close:focus {
        outline: none;
        background: #659800;
        color: #fff;
    }

    #omega-sidebar-body,
    #omega-sidebar-body nav,
    #omega-sidebar-body nav ul,
    #omega-sidebar-body nav ul.menu {
        background: #fff !important;
    }

    #omega-sidebar-body {
        padding: 18px 14px 26px;
    }

    #omega-sidebar-body nav ul.menu {
        display: flex;
        flex-direction: column;
        gap: 8px;
        margin: 0;
        padding: 0;
    }

    #omega-sidebar-body nav ul.menu li {
        position: relative;
        display: block;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        list-style: none;
    }

    #omega-sidebar-body nav ul.menu li::before,
    #omega-sidebar-body nav ul.menu li::after {
        display: none !important;
        content: none !important;
        background: transparent !important;
    }

    #omega-sidebar-body nav ul.menu li a {
        position: relative;
        display: flex;
        align-items: center;
        min-height: 52px;
        margin: 0 !important;
        padding: 12px 42px 12px 16px;
        border: 1px solid #eef1e9 !important;
        border-radius: 12px;
        background: #fff !important;
        box-shadow: none !important;
        color: #343a32;
        font-size: 17px;
        line-height: 1.35;
        font-weight: 600;
        text-decoration: none;
        transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
    }

    #omega-sidebar-body nav ul.menu li a::after {
        content: '\203A';
        position: absolute;
        top: 50%;
        right: 16px;
        transform: translateY(-53%);
        color: #a6ad9f;
        font-size: 25px;
        font-weight: 400;
        transition: color .18s ease, transform .18s ease;
    }

    #omega-sidebar-body nav ul.menu li a:hover,
    #omega-sidebar-body nav ul.menu li a:focus,
    #omega-sidebar-body nav ul.menu li.current-menu-item > a,
    #omega-sidebar-body nav ul.menu li.current_page_item > a {
        outline: none;
        border-color: #dfe9cb !important;
        background: #f4f8ec !important;
        color: #4f7800;
        transform: translateX(2px);
    }

    #omega-sidebar-body nav ul.menu li a:hover::after,
    #omega-sidebar-body nav ul.menu li a:focus::after,
    #omega-sidebar-body nav ul.menu li.current-menu-item > a::after,
    #omega-sidebar-body nav ul.menu li.current_page_item > a::after {
        color: #659800;
        transform: translate(2px, -53%);
    }

    body.omega-menu-open {
        overflow: hidden;
        touch-action: none;
    }
}

@media only screen and (max-width: 420px) {
    #omega-sidebar {
        width: 91vw;
        border-radius: 0 18px 18px 0;
    }

    #omega-sidebar .menu-header {
        min-height: 76px;
        padding: 18px 62px 18px 20px;
        font-size: 19px;
    }

    #omega-close {
        top: 17px;
        right: 15px;
        width: 38px;
        height: 38px;
    }

    #omega-sidebar-body {
        padding: 14px 12px 22px;
    }

    #omega-sidebar-body nav ul.menu li a {
        min-height: 50px;
        padding-left: 14px;
        font-size: 16px;
    }
}
