/* Let flex layout reserve the real logo/search width, including sticky shrink. */
/* Closed lunch remains discoverable and clickable for advance orders. */
html:not([data-xp-lunch-open="true"]) #site-navigation li.xp-lunch-menu-item > a,
html:not([data-xp-lunch-open="true"]) #mobile-drawer li.xp-lunch-menu-item > a,
html:not([data-xp-lunch-open="true"]) body .xp-category-submenu li.xp-lunch-menu-item > a {
    color: #6b7280 !important;
}
html:not([data-xp-lunch-open="true"]) #site-navigation li.xp-lunch-menu-item.xp-category-active > a,
html:not([data-xp-lunch-open="true"]) body .xp-category-submenu li.xp-lunch-menu-item.xp-category-active > a {
    background: #e5e7eb !important; color: #4b5563 !important;
}
.xp-lunch-window-note { margin: 8px 0 0; font-size: .85em; color: #5e6771; }
html:not([data-xp-lunch-open="true"]) .xp-lunch-category-section .xp-category-copy h2 { color: #68717b; }
#xp-lunch-order-hint { padding: 10px 12px; border-left: 3px solid #b46a18; background: #fff6e8; color: #49351b; font-size: .9em; }
#main-header .site-header-main-section-left { flex-shrink: 0; }
#main-header .site-header-main-section-right { flex: 1; min-width: 0; }
#main-header .site-header-item-main-navigation { flex: 1; min-width: 0; margin-left: 16px; }
#site-navigation { width: 100%; min-width: 0; }
#site-navigation .primary-menu-container {
    display: block;
    width: 100%;
    max-width: none;
    padding: 0;
    margin: 0;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain;
}
#site-navigation .primary-menu-container::after { content: none; display: none; }
#site-navigation .primary-menu-container > .menu {
    display: flex;
    justify-content: flex-start !important;
    flex-wrap: nowrap;
    width: max-content !important;
    min-width: 100%;
    padding: 0;
    margin: 0;
}
/* No edge spacers: the first/last category aligns with the available viewport. */
#site-navigation .primary-menu-container > .menu::before,
#site-navigation .primary-menu-container > .menu::after { content: none; display: none; }
#site-navigation .primary-menu-container > .menu > li { margin-left: 0; }
#site-navigation .primary-menu-container > .menu > li > a { white-space: nowrap; }
/* Keep the real dropdown button above the decorative arrow inside the link. */
#site-navigation .dropdown-nav-special-toggle { z-index: 2; pointer-events: auto; cursor: pointer; }
/* Focus may scroll the band; never let its content paint over the logo. */
#site-navigation { overflow: clip; position: relative; }

#site-navigation .primary-menu-container > .menu > li.xp-category-active > a,
body .moved-submenu.xp-category-submenu li.xp-category-active > a {
    color: #fff !important;
    background: var(--global-palette4, #263549) !important;
    border-radius: 6px;
}
body .moved-submenu.xp-category-submenu {
    position: fixed !important;
    max-width: calc(100vw - 24px);
    overflow-y: auto;
    overscroll-behavior: contain;
}
@media (prefers-reduced-motion: reduce) {
    #site-navigation .primary-menu-container { scroll-behavior: auto; }
}

/* One shape for normal, inverted, hover and keyboard-focus category links. */
#site-navigation .primary-menu-container > .menu > li > a,
body .moved-submenu.xp-category-submenu li.menu-item > a { border-radius: 6px !important; }
#site-navigation .xp-nav-scroll {
    position: absolute; top: 50%; transform: translateY(-50%); z-index: 4;
    width: 30px; height: 40px; min-height: 0; padding: 0; margin: 0;
    display: flex; align-items: center; justify-content: center;
    font: 32px/1 sans-serif; border: 1px solid #d5dadd; border-radius: 6px;
    color: var(--global-palette4, #263549); background: var(--global-palette9, #fff);
    box-shadow: 0 1px 5px #0002; cursor: pointer;
}
#site-navigation .xp-nav-scroll[hidden] { display: none !important; }
#site-navigation .xp-nav-scroll-left { left: 0; }
#site-navigation .xp-nav-scroll-right { right: 0; }
#site-navigation .xp-nav-scroll:hover,
#site-navigation .xp-nav-scroll:focus-visible { color: #fff; background: var(--global-palette4, #263549); }

/* Match the German category labels in both header variants and catalogue headings. */
html[lang^="en"] #site-navigation .menu-item > a,
html[lang^="en"] body .moved-submenu.xp-category-submenu .menu-item > a,
html[lang^="en"] #mobile-drawer .menu-item a,
html[lang^="en"] #mobile-drawer .menu-item button,
html[lang^="en"] .xp-category-copy h2 { text-transform: uppercase; }

/* Mobile and tablet category band: the same menu, touch scrolling and dropdowns. */
.xp-mobile-category-band { display: none; }
@media (max-width: 1024px) {
    .xp-mobile-category-band {
        display: block; position: sticky; top: var(--xp-category-top, 0px); z-index: 25;
        margin: 10px 0 20px; padding: 7px 0; background: var(--global-palette9, #fff);
        box-shadow: 0 3px 8px #0000000c;
    }
    .xp-mobile-category-band #site-navigation { display: block; margin: 0; }
    .xp-mobile-category-band #site-navigation .primary-menu-container { scrollbar-width: none; -webkit-overflow-scrolling: touch; min-height: 0 !important; height: auto !important; }
    .xp-mobile-category-band #site-navigation .primary-menu-container::-webkit-scrollbar { display: none; }
    .xp-mobile-category-band #site-navigation .menu > li { display: flex; align-items: center; flex: 0 0 auto; position: relative; margin: 0 5px 0 0; }
    .xp-mobile-category-band #site-navigation .menu > li > a {
        display: flex; align-items: center; min-height: 42px; padding: 8px 13px;
        border: 1px solid #d8dee3; font-size: 13px; line-height: 1.3; font-weight: 700;
        color: var(--global-palette4, #263549); text-transform: uppercase; pointer-events: auto !important;
    }
    .xp-mobile-category-band #site-navigation .menu > li.menu-item-has-children > a { padding-right: 34px; }
    .xp-mobile-category-band #site-navigation .menu > li > .sub-menu { display: none !important; }
    .xp-mobile-category-band #site-navigation .dropdown-nav-special-toggle { position: absolute; left: auto !important; right: 5px !important; top: 50%; transform: translateY(-50%); width: 28px; height: 36px; padding: 0; }
    .xp-mobile-category-band #site-navigation .xp-nav-scroll { width: 26px; height: 38px; }
    body .xp-category-submenu { z-index: 1000 !important; }
}

/* A small second line identifies the active child without widening the band. */
#site-navigation .primary-menu-container > .menu > li > a { position: relative; }
#site-navigation .xp-active-subcategory {
    position: absolute; left: 12px; right: 28px; bottom: 4px; height: 12px;
    font-size: 10px; line-height: 12px; font-weight: 400; letter-spacing: 0;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    text-transform: none !important; opacity: .9; pointer-events: none;
}
#site-navigation .xp-has-current-category > a > .nav-drop-title-wrap { transform: translateY(-6px); }
@media (max-width: 1024px) {
    .xp-mobile-category-band #site-navigation .xp-active-subcategory { left: 13px; right: 31px; bottom: 3px; font-size: 9px; line-height: 11px; height: 11px; }
    .xp-mobile-category-band #site-navigation .xp-has-current-category > a > .nav-drop-title-wrap { transform: translateY(-5px); }
}

/* Native Kadence menu icons: compact, scalable and on the left of the label. */
#site-navigation .menu-label-icon-wrap,
#mobile-drawer .menu-label-icon-wrap {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 18px;
    width: 18px; height: 18px; margin: 0 7px 0 0; padding: 0;
    vertical-align: -3px; color: inherit; pointer-events: none;
}
#site-navigation .menu-label-icon,
#mobile-drawer .menu-label-icon { display: inline-flex; width: 18px; height: 18px; }
#site-navigation .menu-label-icon svg,
#mobile-drawer .menu-label-icon svg { display: block; width: 18px; height: 18px; color: inherit; }
#site-navigation .xp-active-subcategory { left: 37px; }
@media (max-width: 1024px) {
    .xp-mobile-category-band #site-navigation .xp-active-subcategory { left: 38px; }
}
