.ah-mobile-nav { display: none; }
@media (max-width: 767.98px) {
    .ah-mobile-nav { display: block; }
    .ah-mobile-nav button {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        padding: 0;
        border: 0;
        border-radius: 7px;
        color: #125632;
        background: #eef6f0;
    }
    .ah-mobile-nav :is(button, a, summary):focus-visible {
        outline: 2px solid #08713f;
        outline-offset: -3px;
    }
    .ah-mobile-drawer {
        position: fixed;
        inset: 0 auto 0 0;
        width: min(100%, 24rem);
        max-width: 100%;
        height: 100%;
        height: 100dvh;
        max-height: none;
        margin: 0;
        padding: 0;
        overflow: auto;
        overscroll-behavior: contain;
        border: 0;
        color: #17392a;
        background: #fff;
    }
    .ah-mobile-drawer::backdrop { background: rgb(10 33 23 / 55%); }
    body:has(.ah-mobile-drawer[open]) { overflow: hidden; }
    .ah-mobile-drawer-content { min-height: 100%; }
    .ah-mobile-drawer-heading {
        position: sticky;
        z-index: 1;
        top: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 8px 12px 8px 16px;
        border-bottom: 1px solid #d4e6d9;
        background: #f7fbf8;
        font-size: 1.125rem;
        font-weight: 700;
    }
    .ah-mobile-drawer nav { padding: 4px 12px 18px; }
    .ah-mobile-drawer nav > :is(details, a) { border-bottom: 1px solid #e0ebe3; }
    .ah-mobile-drawer .ah-mobile-row {
        display: flex;
        min-height: 44px;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 8px;
        color: #17392a;
        font-size: 1rem;
        font-weight: 620;
        line-height: 1.35;
        text-decoration: none;
    }
    .ah-mobile-drawer nav > a:first-child { color: #065f33; }
    .ah-mobile-drawer summary { cursor: pointer; list-style: none; }
    .ah-mobile-drawer summary::-webkit-details-marker { display: none; }
    .ah-mobile-drawer summary::after {
        content: "";
        flex: none;
        width: 8px;
        height: 8px;
        margin-right: 4px;
        border-right: 2px solid #187044;
        border-bottom: 2px solid #187044;
        transform: rotate(45deg);
    }
    .ah-mobile-drawer details[open] > summary::after { transform: rotate(225deg); }
    .ah-mobile-submenu {
        margin: 0 0 7px 7px;
        padding-left: 7px;
        border-left: 2px solid #d4e6d9;
    }
    .ah-mobile-submenu > .ah-mobile-row { font-weight: 500; }
}
