/* ============================================================
   MOBILE: Header / Navigation
   ============================================================ */

/* ============================================================
   MOBILE: Header / Navigation (Slide-In Menü)
   ============================================================ */

@media (max-width: 600px) {

    /* Header kompakter */
    header {
        padding: 10px 14px;
        position: sticky;
        top: 0;
        z-index: 9999;
    }

    .header-inner {
        justify-content: space-between;
        gap: 10px;
    }

    /* Logo kleiner */
    .brand-logo.circle {
        width: 46px;
        height: 46px;
    }

    /* Vereinsname nicht umbrechen */
    .brand-title {
        white-space: nowrap;
        font-size: 15px;
    }

    .brand-subtitle {
        font-size: 11px;
    }

    /* Hamburger-Button */
    .menu-toggle {
        display: block;
        background: none;
        border: none;
        font-size: 28px;
        color: white;
        cursor: pointer;
        z-index: 10001;
    }

    /* Slide-In Menü */
    nav {
        position: fixed;
        top: 0;
        right: -260px; /* Startposition außerhalb */
        width: 260px;
        height: auto; /* Nur so hoch wie nötig */
        max-height: 100vh; /* Falls viele Einträge */
        overflow-y: auto;
        background: #16385F;
        display: flex;
        flex-direction: column;
        padding: 20px;
        gap: 18px;
        transition: right 0.3s ease;
        z-index: 10000;
        box-shadow: -4px 0 12px rgba(0,0,0,0.25);
        border-left: 1px solid rgba(255,255,255,0.1);
    }

    /* Sichtbar */
    nav.open {
        right: 0;
    }

    /* Overlay hinter dem Menü */
    .menu-overlay {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.35);
        backdrop-filter: blur(4px);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease;
        z-index: 9000;
    }

    .menu-overlay.visible {
        opacity: 1;
        pointer-events: auto;
    }
}