/* =========================================================================
 * MODUL: HAUPTNAVIGATION & RESPONSIVER HAMBURGER-DRAWER
 * ========================================================================= */

.rm24-nav-bar {
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    background-color: var(--rm24-menu-bg, #2b2e34) !important;
    border-radius: 6px !important;
    padding: 0 !important;
    height: 48px !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 100 !important;
}

/* -------------------------------------------------------------------------
 * HAMBURGER-BUTTON & DRAWER-KOPF (Desktop unsichtbar, Mobile sichtbar)
 * ------------------------------------------------------------------------- */
.rm24-hamburger-btn {
    display: none;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    background: transparent !important;
    border: none !important;
    color: #ffffff !important;
    padding: 0 16px !important;
    height: 100% !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    touch-action: manipulation !important;
    white-space: nowrap !important;
}

.rm24-hamburger-box {
    width: 20px !important;
    height: 14px !important;
    position: relative !important;
    display: inline-block !important;
    flex-shrink: 0 !important;
}

.rm24-hamburger-inner,
.rm24-hamburger-inner::before,
.rm24-hamburger-inner::after {
    width: 20px !important;
    height: 2px !important;
    background-color: #ffffff !important;
    border-radius: 2px !important;
    position: absolute !important;
    transition: transform 0.2s ease, opacity 0.2s ease !important;
}

.rm24-hamburger-inner {
    top: 6px !important;
    left: 0 !important;
}

.rm24-hamburger-inner::before {
    content: "" !important;
    top: -6px !important;
    left: 0 !important;
}

.rm24-hamburger-inner::after {
    content: "" !important;
    bottom: -6px !important;
    left: 0 !important;
}

.rm24-hamburger-label {
    display: inline-block !important;
    line-height: 1 !important;
}

/* Animiertes X bei aktivem Menü */
.rm24-hamburger-btn.is-active .rm24-hamburger-inner {
    transform: rotate(45deg);
}

.rm24-hamburger-btn.is-active .rm24-hamburger-inner::before {
    opacity: 0;
}

.rm24-hamburger-btn.is-active .rm24-hamburger-inner::after {
    transform: rotate(-90deg) translate(6px, 0);
}

.rm24-drawer-header {
    display: none;
}

.rm24-drawer-backdrop {
    display: none;
}

/* -------------------------------------------------------------------------
 * DESKTOP MENÜBEREICH
 * ------------------------------------------------------------------------- */
.rm24-nav-menu-wrapper {
    display: flex !important;
    align-items: stretch !important;
    height: 100% !important;
    flex: 1 1 auto !important;
}

.rm24-nav-bar ul,
.rm24-nav-bar ul.rm24-menu {
    display: flex !important;
    align-items: stretch !important;
    height: 100% !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-wrap: nowrap !important;
}

.rm24-nav-bar ul > li,
.rm24-nav-bar ul.rm24-menu > li {
    position: relative !important;
    display: flex !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border-right: 1px solid var(--rm24-nav-divider-color, rgba(255, 255, 255, 0.15)) !important;
}

.rm24-nav-bar ul > li:first-child,
.rm24-nav-bar ul.rm24-menu > li:first-child,
.rm24-nav-bar ul > li:first-child > a,
.rm24-nav-bar ul.rm24-menu > li:first-child > a {
    border-top-left-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
    border-left: none !important;
}

.rm24-nav-bar ul > li > a,
.rm24-nav-bar ul.rm24-menu > li > a {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 20px !important;
    height: 100% !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

.rm24-nav-bar ul > li > a:hover,
.rm24-nav-bar ul > li:hover > a {
    background-color: var(--rm24-nav-hover-bg, #0090bb) !important;
    color: #ffffff !important;
}

.rm24-nav-bar ul > li.current-menu-item > a,
.rm24-nav-bar ul > li.current-menu-ancestor > a {
    background-color: var(--rm24-nav-active-bg, #007a9e) !important;
    color: #ffffff !important;
}

/* Akkordeon-Pfeil (auf Desktop unsichtbar) */
.rm24-submenu-toggle {
    display: none;
}

/* -------------------------------------------------------------------------
 * DESKTOP UNTERMENÜS (DROPDOWNS)
 * ------------------------------------------------------------------------- */
.rm24-nav-bar ul.rm24-menu .sub-menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 230px !important;
    background-color: var(--rm24-nav-submenu-bg, #ffffff) !important;
    border: 1px solid var(--rm24-nav-submenu-border, #e2e8f0) !important;
    border-radius: 0 0 6px 6px !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1) !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 6px 0 !important;
    z-index: 9999 !important;
    flex-direction: column !important;
    height: auto !important;
}

.rm24-nav-bar ul.rm24-menu li:hover > .sub-menu {
    display: flex !important;
}

.rm24-nav-bar ul.rm24-menu .sub-menu li {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: block !important;
    height: auto !important;
}

.rm24-nav-bar ul.rm24-menu .sub-menu li a {
    display: block !important;
    padding: 10px 18px !important;
    color: var(--rm24-nav-submenu-color, #0f2733) !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    border-radius: 0 !important;
    height: auto !important;
    transition: background-color 0.15s ease, color 0.15s ease !important;
}

.rm24-nav-bar ul.rm24-menu .sub-menu li a:hover {
    background-color: #f1f5f9 !important;
    color: var(--rm24-accent-color, #0090bb) !important;
}

.rm24-nav-bar ul.rm24-menu .sub-menu .sub-menu {
    top: 0 !important;
    left: 100% !important;
    border-radius: 0 6px 6px 6px !important;
}

/* -------------------------------------------------------------------------
 * RECHTS: KONTO & WARENKORB
 * ------------------------------------------------------------------------- */
.rm24-nav-actions {
    display: flex !important;
    align-items: stretch !important;
    height: 100% !important;
    gap: 0 !important;
    flex-shrink: 0 !important;
}

.rm24-nav-action-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 18px !important;
    height: 100% !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    background-color: transparent !important;
    transition: background-color 0.15s ease !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    border-left: 1px solid var(--rm24-nav-divider-color, rgba(255, 255, 255, 0.15)) !important;
}

.rm24-nav-action-item.rm24-nav-cart {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
    padding: 0 20px !important;
}

.rm24-nav-action-item:hover {
    background-color: var(--rm24-nav-hover-bg, #0090bb) !important;
    color: #ffffff !important;
}

.rm24-nav-action-item.rm24-active {
    background-color: var(--rm24-nav-active-bg, #007a9e) !important;
    color: #ffffff !important;
}

.rm24-action-icon {
    display: inline-flex !important;
    align-items: center !important;
    color: inherit !important;
}

.rm24-cart-count-badge {
    background-color: var(--rm24-accent-color, #0090bb) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    padding: 3px 6px !important;
    border-radius: 10px !important;
    margin-left: 2px !important;
    display: inline-block !important;
}

.rm24-nav-action-item.rm24-active .rm24-cart-count-badge {
    background-color: #ffffff !important;
    color: var(--rm24-accent-dark, #007a9e) !important;
}

/* =========================================================================
 * RESPONSIVE OPTIMIERUNG (<= 768px): VOLLBREITE, KEINE RUNDUNGEN & VON OBEN
 * ========================================================================= */
@media (max-width: 768px) {

    /* Keine Rundungen auf der Hauptleiste */
    .rm24-nav-bar {
        border-radius: 0 !important;
    }

    .rm24-nav-bar ul > li:first-child,
    .rm24-nav-bar ul.rm24-menu > li:first-child,
    .rm24-nav-bar ul > li:first-child > a,
    .rm24-nav-bar ul.rm24-menu > li:first-child > a,
    .rm24-nav-action-item.rm24-nav-cart,
    .rm24-hamburger-btn {
        border-radius: 0 !important;
    }

    /* Hamburger-Button anzeigen */
    .rm24-hamburger-btn {
        display: inline-flex !important;
    }

    /* Backdrop nicht mehr noetig, da Menue 100% Breite hat */
    .rm24-drawer-backdrop {
        display: none !important;
    }

    /* Menue oeffnet direkt unter der Menueleiste ueber die VOLLE BREITE von oben nach unten */
    .rm24-nav-menu-wrapper {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: calc(100dvh - 48px) !important;
        background-color: #ffffff !important;
        z-index: 9999 !important;
        transform: translateY(-10px) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s ease !important;
        display: flex !important;
        flex-direction: column !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important;
        border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-bottom: 2px solid var(--rm24-menu-bg, #2b2e34) !important;
        border-radius: 0 !important;
        padding: 0 !important;
    }

    .rm24-nav-menu-wrapper.is-open {
        transform: translateY(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    /* Drawer-Kopf ausblenden (Hamburger oben steuert Oeffnen/Schliessen) */
    .rm24-drawer-header {
        display: none !important;
    }

    /* Menueliste vertikal & volle Breite */
    .rm24-nav-bar ul.rm24-menu {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .rm24-nav-bar ul.rm24-menu > li {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        border-right: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        width: 100% !important;
        border-radius: 0 !important;
    }

    .rm24-nav-bar ul.rm24-menu > li > a {
        color: #0f2733 !important;
        padding: 14px 20px !important;
        flex: 1 1 auto !important;
        font-size: 15px !important;
        border-radius: 0 !important;
        height: auto !important;
    }

    .rm24-nav-bar ul.rm24-menu > li:hover > a {
        background-color: #f8fafc !important;
        color: var(--rm24-accent-color, #0090bb) !important;
    }

    .rm24-nav-bar ul.rm24-menu > li.current-menu-item > a,
    .rm24-nav-bar ul.rm24-menu > li.current-menu-ancestor > a {
        background-color: var(--rm24-nav-active-bg, #007a9e) !important;
        color: #ffffff !important;
        border-radius: 0 !important;
    }

    /* Akkordeon-Pfeil rechts buendig mit mindestens 48px Touch-Flaeche */
    .rm24-submenu-toggle {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 52px !important;
        height: 48px !important;
        background: transparent !important;
        border: none !important;
        border-left: 1px solid #f1f5f9 !important;
        cursor: pointer !important;
        color: #64748b !important;
        font-size: 14px !important;
        transition: transform 0.2s ease, color 0.2s ease !important;
        flex-shrink: 0 !important;
        border-radius: 0 !important;
    }

    .rm24-submenu-toggle.is-open {
        transform: rotate(180deg) !important;
        color: var(--rm24-accent-color, #0090bb) !important;
    }

    /* Untermenues im Akkordeon */
    .rm24-nav-bar ul.rm24-menu .sub-menu {
        position: static !important;
        display: none !important;
        width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        background-color: #f8fafc !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu.is-open {
        display: flex !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu li {
        border-bottom: 1px solid #e2e8f0 !important;
        border-radius: 0 !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu li a {
        padding: 12px 20px 12px 36px !important;
        font-size: 14px !important;
        border-radius: 0 !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu .sub-menu li a {
        padding-left: 52px !important;
    }
}

/* =========================================================================
 * SMARTPHONES HOCHFORMAT (<= 480px)
 * ========================================================================= */
@media (max-width: 480px) {
    .rm24-nav-account .rm24-action-label {
        display: none !important;
    }

    .rm24-nav-action-item {
        padding: 0 12px !important;
    }

    .rm24-nav-action-item.rm24-nav-cart {
        padding: 0 14px !important;
    }

    .rm24-cart-total-display {
        font-size: 13px !important;
    }
}

/* =========================================================================
 * ZU VIELE MENÜPUNKTE FÜR DIE BREITE: Hamburger auch auf dem Desktop
 * (Klasse wird von navigation.js gesetzt, wenn die Menüpunkte nicht passen)
 * ========================================================================= */
.rm24-nav-bar.rm24-nav-collapse {
        border-radius: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul > li:first-child,
.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li:first-child,
.rm24-nav-bar.rm24-nav-collapse ul > li:first-child > a,
.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li:first-child > a,
.rm24-nav-collapse .rm24-nav-action-item.rm24-nav-cart,
.rm24-nav-collapse .rm24-hamburger-btn {
        border-radius: 0 !important;
    }

.rm24-nav-collapse .rm24-hamburger-btn {
        display: inline-flex !important;
    }

.rm24-nav-collapse .rm24-drawer-backdrop {
        display: none !important;
    }

.rm24-nav-collapse .rm24-nav-menu-wrapper {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        max-height: calc(100dvh - 48px) !important;
        background-color: #ffffff !important;
        z-index: 9999 !important;
        transform: translateY(-10px) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: transform 0.25s ease, opacity 0.25s ease, visibility 0.25s ease !important;
        display: flex !important;
        flex-direction: column !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15) !important;
        border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
        border-bottom: 2px solid var(--rm24-menu-bg, #2b2e34) !important;
        border-radius: 0 !important;
        padding: 0 !important;
    }

.rm24-nav-collapse .rm24-nav-menu-wrapper.is-open {
        transform: translateY(0) !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

.rm24-nav-collapse .rm24-drawer-header {
        display: none !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        border-right: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        width: 100% !important;
        border-radius: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li > a {
        color: #0f2733 !important;
        padding: 14px 20px !important;
        flex: 1 1 auto !important;
        font-size: 15px !important;
        border-radius: 0 !important;
        height: auto !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li:hover > a {
        background-color: #f8fafc !important;
        color: var(--rm24-accent-color, #0090bb) !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li.current-menu-item > a,
.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li.current-menu-ancestor > a {
        background-color: var(--rm24-nav-active-bg, #007a9e) !important;
        color: #ffffff !important;
        border-radius: 0 !important;
    }

.rm24-nav-collapse .rm24-submenu-toggle {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 52px !important;
        height: 48px !important;
        background: transparent !important;
        border: none !important;
        border-left: 1px solid #f1f5f9 !important;
        cursor: pointer !important;
        color: #64748b !important;
        font-size: 14px !important;
        transition: transform 0.2s ease, color 0.2s ease !important;
        flex-shrink: 0 !important;
        border-radius: 0 !important;
    }

.rm24-nav-collapse .rm24-submenu-toggle.is-open {
        transform: rotate(180deg) !important;
        color: var(--rm24-accent-color, #0090bb) !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu .sub-menu {
        position: static !important;
        display: none !important;
        width: 100% !important;
        box-shadow: none !important;
        border: none !important;
        background-color: #f8fafc !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu .sub-menu.is-open {
        display: flex !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu .sub-menu li {
        border-bottom: 1px solid #e2e8f0 !important;
        border-radius: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu .sub-menu li a {
        padding: 12px 20px 12px 36px !important;
        font-size: 14px !important;
        border-radius: 0 !important;
    }

.rm24-nav-bar.rm24-nav-collapse ul.rm24-menu .sub-menu .sub-menu li a {
        padding-left: 52px !important;
    }

/* =========================================================================
 * STIL «OBEN»: Leiste oben mit Menü links, Suche und Symbolen rechts
 * ========================================================================= */
/* Farben: Customizer «Hintergrund Menüleiste» und «Text Menüleiste» */
.rm24-nav-light .rm24-nav-menu-wrapper {
    flex: 0 1 auto !important;
}

.rm24-nav-light .rm24-nav-bar {
    background-color: var(--rm24-menu-bg, #ffffff) !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(15, 39, 51, 0.12) !important;
    height: 57px !important;
    position: sticky !important;
    top: var(--wp-admin--admin-bar--height, 0px);
    gap: 12px;
}

.rm24-nav-light .rm24-nav-bar ul > li,
.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li,
.rm24-nav-light .rm24-nav-action-item {
    border: none !important;
}

.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a {
    color: var(--rm24-menu-color, #1f2937) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 0 14px !important;
    position: relative;
    border-radius: 0 !important;
}

.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a:hover,
.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li:hover > a {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: var(--rm24-menu-color, #1f2937) !important;
}

.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-item > a,
.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-ancestor > a {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: var(--rm24-menu-color, #1f2937) !important;
}

.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-item > a::after,
.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-ancestor > a::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 3px;
    background-color: var(--rm24-menu-color, #1f2937);
}

/* Pfeil bei Menüpunkten mit Untermenü */
.rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.menu-item-has-children > a::before {
    content: "";
    order: 2;
    width: 6px;
    height: 6px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    margin-left: 2px;
}

.rm24-nav-light .rm24-nav-search {
    flex: 0 1 280px;
    padding: 5px 0;
    margin-left: auto;
    display: flex;
    align-items: center;
    min-width: 180px;
}

.rm24-nav-light .rm24-nav-search > * {
    width: 100%;
}

.rm24-nav-light .rm24-nav-search input[type="search"] {
    height: 40px;
    border: 1px solid #e1e5ea;
    border-radius: 8px;
}

.rm24-nav-light .rm24-header-search {
    display: none;
}

.rm24-nav-light .rm24-nav-action-item {
    color: var(--rm24-menu-color, #1f2937) !important;
    padding: 0 12px !important;
    position: relative;
}

.rm24-nav-light .rm24-nav-action-item:hover,
.rm24-nav-light .rm24-nav-action-item.rm24-active {
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: var(--rm24-menu-color, #1f2937) !important;
}

.rm24-nav-light .rm24-action-label {
    display: none !important;
}

.rm24-nav-light .rm24-action-icon svg {
    width: 21px;
    height: 21px;
}

.rm24-nav-light .rm24-cart-count-badge {
    position: absolute;
    top: 9px;
    right: 2px;
    min-width: 18px;
    text-align: center;
    padding: 3px 5px !important;
}

.rm24-nav-light .rm24-hamburger-btn {
    color: var(--rm24-menu-color, #1f2937) !important;
}

.rm24-nav-light .rm24-hamburger-inner,
.rm24-nav-light .rm24-hamburger-inner::before,
.rm24-nav-light .rm24-hamburger-inner::after {
    background-color: var(--rm24-menu-color, #1f2937) !important;
}

.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse .rm24-nav-search {
    display: none;
}

.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse ~ .rm24-site-header .rm24-header-search {
    display: block;
}

.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse {
    justify-content: space-between !important;
}

@media (max-width: 768px) {
    .rm24-nav-light .rm24-nav-search {
        display: none;
    }

    .rm24-nav-light .rm24-header-search {
        display: block;
    }
}

/* Rundungen der Leiste: Warenkorb ist nicht mehr das letzte Element */
.rm24-nav-action-item.rm24-nav-cart {
    border-radius: 0 !important;
}

.rm24-nav-actions > .rm24-nav-action-item:last-child {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

.rm24-nav-light .rm24-nav-actions > .rm24-nav-action-item:last-child {
    border-radius: 0 !important;
}

/* =========================================================================
 * MOBILE: GROESSERE SCHRIFT UND TOUCH-FLAECHEN
 * ========================================================================= */
@media (max-width: 768px) {
    .rm24-nav-bar,
    .rm24-nav-light .rm24-nav-bar {
        min-height: 60px !important;
    }

    .rm24-hamburger-label {
        font-size: 18px !important;
        font-weight: 600 !important;
    }

    .rm24-nav-bar .rm24-action-icon svg,
    .rm24-nav-light .rm24-action-icon svg {
        width: 26px !important;
        height: 26px !important;
    }

    .rm24-nav-bar .rm24-nav-action-item {
        min-width: 52px !important;
        min-height: 52px !important;
        justify-content: center !important;
    }

    .rm24-nav-bar ul.rm24-menu > li > a {
        font-size: 18px !important;
        padding: 16px 20px !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu li a {
        font-size: 17px !important;
        padding: 14px 20px 14px 32px !important;
    }

    .rm24-nav-bar ul.rm24-menu .sub-menu .sub-menu li a {
        font-size: 16px !important;
        padding-left: 44px !important;
    }
}

/* Stil «oben» im aufgeklappten Handy-Menü: Desktop-Regeln zurücksetzen */
@media (max-width: 768px) {
    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a {
        color: #0f2733 !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        padding: 16px 20px !important;
        height: auto !important;
        line-height: 1.3 !important;
    }

    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a:hover,
    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li:hover > a {
        background-color: #f8fafc !important;
    }

    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-item > a,
    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li.current-menu-ancestor > a {
        background-color: var(--rm24-menu-bg, #f1f5f9) !important;
        color: var(--rm24-menu-color, #0f2733) !important;
    }

    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a::after,
    .rm24-nav-light .rm24-nav-bar ul.rm24-menu > li > a::before {
        display: none !important;
    }
}

.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li > a {
    color: #0f2733 !important;
    font-size: 17px !important;
    padding: 15px 20px !important;
    height: auto !important;
}

.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li > a::after,
.rm24-nav-light .rm24-nav-bar.rm24-nav-collapse ul.rm24-menu > li > a::before {
    display: none !important;
}

.rm24-nav-bar ul.rm24-menu .sub-menu li.current-menu-item > a,
.rm24-nav-bar ul.rm24-menu .sub-menu li.current-menu-ancestor > a {
    color: #ffffff !important;
}

/* While the width is measured: no animations (otherwise the menu flashes open). */
.rm24-nav-bar.rm24-nav-measuring,
.rm24-nav-bar.rm24-nav-measuring * {
    transition: none !important;
}

/* Logo at the start of the menu bar (Customizer: "Logo in the menu bar") */
.rm24-nav-bar .rm24-nav-logo {
    display: inline-flex !important;
    align-items: center;
    flex: 0 0 auto;
    padding: 6px 16px 6px 4px;
    line-height: 0;
    text-decoration: none !important;
    background: transparent !important;
}
.rm24-nav-bar .rm24-nav-logo-img {
    display: block;
    height: var(--rm24-nav-logo-height, 40px);
    width: auto;
    max-width: 220px;
    object-fit: contain;
}
@media (max-width: 768px) {
    .rm24-nav-bar .rm24-nav-logo { padding: 4px 10px 4px 2px; order: -1; }
    .rm24-nav-bar .rm24-nav-logo-img { height: min(var(--rm24-nav-logo-height, 40px), 34px); }
}
