@media (max-width: 991.98px) {
    body.mobile-nav-open { overflow: hidden; }

    .popkorn .mobile-nav-header {
        position: relative;
        z-index: 51;
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 78px;
        padding: 10px 20px;
        border-top: 3px solid #c22630;
        background: #fff;
        box-shadow: 0 4px 18px rgba(29, 53, 87, .08);
    }

    .popkorn .mobile-nav-header__logo img,
    .popkorn .mobile-nav-drawer__header img {
        display: block;
        width: 105px;
        height: auto;
    }

    .popkorn .mobile-nav-header__toggle {
        display: inline-flex;
        align-items: center;
        gap: 12px;
        min-width: 88px;
        min-height: 48px;
        padding: 0 12px;
        border: 1px solid #e2e5e9;
        border-radius: 6px;
        background: #fff;
        color: #1d3557;
        font: 600 14px/1 'Albert Sans', sans-serif;
        cursor: pointer;
    }

    .popkorn .mobile-nav-header__toggle-icon {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 4px;
        width: 19px;
    }

    .popkorn .mobile-nav-header__toggle-icon span {
        width: 19px;
        height: 2px;
        border-radius: 2px;
        background: #c22630;
    }

    .popkorn .mobile-nav-drawer[hidden] { display: none; }

    .popkorn .mobile-nav-drawer {
        position: fixed;
        inset: 0;
        z-index: 200;
        display: flex;
        flex-direction: column;
        height: 100vh;
        height: 100dvh;
        background: #fff;
        color: #1d3557;
    }

    .popkorn .mobile-nav-drawer__header {
        display: flex;
        flex: none;
        align-items: center;
        justify-content: space-between;
        min-height: 78px;
        padding: 10px 20px;
        border-top: 3px solid #c22630;
        border-bottom: 1px solid #e8eaed;
    }

    .popkorn .mobile-nav-drawer__close {
        width: 48px;
        height: 48px;
        padding: 0;
        border: 1px solid #e2e5e9;
        border-radius: 6px;
        background: #fff;
        color: #c22630;
        font: 32px/1 Arial, sans-serif;
        cursor: pointer;
    }

    .popkorn .mobile-nav-drawer__content {
        flex: 1;
        min-height: 0;
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 22px 24px 32px;
        -webkit-overflow-scrolling: touch;
    }

    .popkorn .mobile-nav-drawer__eyebrow {
        margin: 0 0 8px;
        color: #a32a32;
        font: 700 11px/1.4 'Albert Sans', sans-serif;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    .popkorn .mobile-nav-drawer__list,
    .popkorn .mobile-nav-drawer__sublist {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .popkorn .mobile-nav-drawer__item > a,
    .popkorn .mobile-nav-drawer__item > details > summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 54px;
        padding: 12px 0;
        border-bottom: 1px solid #e9ecef;
        color: #1d3557;
        font: 600 19px/1.35 'Albert Sans', sans-serif;
        text-decoration: none;
    }

    .popkorn .mobile-nav-drawer__item > details > summary {
        cursor: pointer;
        list-style: none;
    }

    .popkorn .mobile-nav-drawer__item > details > summary::-webkit-details-marker { display: none; }

    .popkorn .mobile-nav-drawer__item > details > summary::after {
        content: '';
        width: 9px;
        height: 9px;
        margin-right: 5px;
        border-right: 2px solid #c22630;
        border-bottom: 2px solid #c22630;
        transform: rotate(45deg);
        transition: transform .2s ease;
    }

    .popkorn .mobile-nav-drawer__item > details[open] > summary::after { transform: rotate(225deg); }

    .popkorn .mobile-nav-drawer a[aria-current="page"] {
        color: #c22630;
        font-weight: 700;
    }

    .popkorn .mobile-nav-drawer__sublist {
        padding: 5px 0 8px 16px;
        border-left: 2px solid #c22630;
    }

    .popkorn .mobile-nav-drawer__item--nested > a,
    .popkorn .mobile-nav-drawer__item--nested > details > summary {
        min-height: 46px;
        font-size: 15px;
        font-weight: 500;
    }

    .popkorn .mobile-nav-drawer__secondary {
        margin-top: 30px;
        padding: 20px;
        border-radius: 8px;
        background: #f3f8f8;
    }

    .popkorn .mobile-nav-drawer__secondary li a {
        display: flex;
        align-items: center;
        min-height: 44px;
        color: #1d3557;
        font: 500 15px/1.35 'Albert Sans', sans-serif;
        text-decoration: none;
    }

    .popkorn .mobile-nav-drawer__secondary li + li { border-top: 1px solid #dce8e8; }

    .popkorn .mobile-nav-drawer__social {
        display: flex;
        gap: 10px;
        margin-top: 14px;
    }

    .popkorn .mobile-nav-drawer__social a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        border: 1px solid #d8e3e3;
        border-radius: 50%;
        color: #1d3557;
        background: #fff;
    }

    .popkorn .mobile-nav-drawer__actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        flex: none;
        padding: 14px 20px calc(14px + env(safe-area-inset-bottom));
        border-top: 1px solid #e8eaed;
        background: #fff;
        box-shadow: 0 -6px 18px rgba(29, 53, 87, .06);
    }

    .popkorn .mobile-nav-drawer__actions a {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 50px;
        padding: 10px;
        border: 1px solid #c22630;
        border-radius: 4px;
        font: 700 14px/1.25 'Albert Sans', sans-serif;
        text-align: center;
        text-decoration: none;
    }

    .popkorn .mobile-nav-drawer__actions a:only-child { grid-column: 1 / -1; }
    .popkorn .mobile-nav-drawer__contact { color: #c22630; background: #fff; }
    .popkorn .mobile-nav-drawer__primary { color: #fff; background: #c22630; }

    .popkorn .mobile-nav-drawer a:hover,
    .popkorn .mobile-nav-drawer summary:hover { color: #c22630; }

    .popkorn .mobile-nav-drawer__primary:hover { color: #fff !important; background: #a81f28; }

    .popkorn .mobile-nav-header button:focus-visible,
    .popkorn .mobile-nav-drawer button:focus-visible,
    .popkorn .mobile-nav-drawer a:focus-visible,
    .popkorn .mobile-nav-drawer summary:focus-visible {
        outline: 2px solid #c22630;
        outline-offset: 3px;
    }
}
