/* Canonical navigation: same geometry and interaction on every school page. */
body header#site-header { box-shadow:none!important; }
body header#site-header .header-cta-btn { border-radius:8px!important;box-shadow:none!important; }

@media(min-width:1025px) {
 body header#site-header .site-branding img.custom-logo { width:172px;height:48px;max-height:48px;object-fit:contain; }
 body header#site-header .site-navigation ul.menu { gap:2px; }
 body header#site-header .site-navigation ul.menu > li { border-radius:8px; }
 body header#site-header .site-navigation ul.menu > li > a { font-size:14px;padding:10px;white-space:nowrap;min-height:44px;box-sizing:border-box; }
 body header#site-header .site-navigation ul.menu > li > a:not(.header-cta-btn) { background:transparent!important; }
 body header#site-header .site-navigation ul.menu > li:focus-within:not(.menu-item-cta),
 body header#site-header .site-navigation ul.menu > li.current-menu-item:not(.menu-item-cta) { background:#edf4f8; }
 body header#site-header .site-navigation ul.sub-menu > li { display:block;width:100%;box-sizing:border-box;margin:0;padding:0; }
 body header#site-header .site-navigation ul.sub-menu > li > a { display:flex;align-items:center;box-sizing:border-box;width:100%;min-height:44px;padding:11px 18px;background:transparent!important; }
 body header#site-header .site-navigation ul.sub-menu > li:focus-within,
 body header#site-header .site-navigation ul.sub-menu > li.current-menu-item { background:#edf4f8; }
 body header#site-header .site-navigation ul.sub-menu > li > a:focus-visible { outline:3px solid #10628c;outline-offset:-3px; }
}
@media(min-width:1280px) {
 body header#site-header .header-inner { max-width:1380px;flex-wrap:nowrap;gap:22px; }
 body header#site-header .site-branding { flex:0 0 auto; }
 body header#site-header .site-navigation ul.menu { flex-wrap:nowrap; }
}
@media(hover:hover) and (min-width:1025px) {
 body header#site-header .site-navigation ul.menu > li:hover:not(.menu-item-cta),
 body header#site-header .site-navigation ul.sub-menu > li:hover { background:#edf4f8; }
 body header#site-header .site-navigation ul.menu > li:hover > a:not(.header-cta-btn) { color:#10628c!important; }
}

/* A category link and its independent submenu button share one row highlight. */
@media(max-width:1024px) {
 body header#site-header .site-navigation-toggle-holder { display:flex!important; }
 body header#site-header nav.site-navigation { display:none!important; }
 body header#site-header .site-navigation-dropdown[aria-hidden="true"] { display:none!important; }
 body header#site-header .site-navigation-dropdown.wm-active[aria-hidden="false"] { display:block!important; }
 body header#site-header .site-navigation-dropdown .wm-menu-row { border-radius:8px; }
 body header#site-header .site-navigation-dropdown .wm-menu-row:focus-within,
 body header#site-header .site-navigation-dropdown .wm-menu-row:active { background:#edf4f8!important; }
 body header#site-header .site-navigation-dropdown .wm-menu-row > a,
 body header#site-header .site-navigation-dropdown .wm-menu-row > button { background:transparent!important; }
 body header#site-header .site-navigation-dropdown li:not(.menu-item-cta) > a { box-sizing:border-box;width:100%;min-height:44px;border-radius:8px; }
 body header#site-header .site-navigation-dropdown li:not(.menu-item-cta) > a:focus-visible,
 body header#site-header .site-navigation-dropdown li:not(.menu-item-cta) > a:active { background:#edf4f8!important; }
}
@media(hover:hover) and (max-width:1024px) {
 body header#site-header .site-navigation-dropdown .wm-menu-row:hover,
 body header#site-header .site-navigation-dropdown li:not(.menu-item-cta) > a:hover { background:#edf4f8!important; }
}
@media(max-width:767px) {
 body .wittmann-mobile-bar { padding:10px 16px!important;background:#ffffffed!important;border-top:1px solid #e3e9ec;box-shadow:0 -4px 20px #0a3d5807!important; }
 body .wittmann-mobile-bar .bar-inner { gap:10px!important;padding:0!important; }
 body .wittmann-mobile-bar a { min-height:44px!important;border-radius:8px!important;padding:12px!important;border:0!important;box-shadow:none!important;font-size:12px!important;line-height:1.3!important;white-space:nowrap; }
}
@media(forced-colors:active) {
 body header#site-header .site-navigation li:focus-within,
 body header#site-header .site-navigation-dropdown .wm-menu-row:focus-within { outline:2px solid Highlight;outline-offset:-2px; }
}

/* Fahrlinie navigation: retain the full row target and independent submenu toggles. */
body header#site-header :is(.site-navigation,.site-navigation-dropdown) a:not(.header-cta-btn) { position:relative; text-decoration:none!important; }
@media(min-width:1025px) {
 body header#site-header .site-navigation ul.menu > li > a:not(.header-cta-btn) { display:flex;align-items:center;width:100%; }
 body header#site-header .site-navigation ul.menu > li:is(.current-menu-item,.current-menu-ancestor,:focus-within) > a:not(.header-cta-btn) { box-shadow:inset 0 -1px #0a3d58; border-radius:8px 8px 0 0; }
 body header#site-header .site-navigation ul.menu > li:is(.current-menu-item,.current-menu-ancestor,:focus-within) > a:not(.header-cta-btn)::before { content:'';position:absolute;right:10px;bottom:-1px;width:22px;height:3px;background:#ffdb22; }
 body header#site-header .site-navigation ul.sub-menu > li:is(.current-menu-item,:focus-within) > a { box-shadow:inset 3px 0 #d4ac00; }
}
@media(hover:hover) and (min-width:1025px) {
 body header#site-header .site-navigation ul.menu > li:hover > a:not(.header-cta-btn) { box-shadow:inset 0 -1px #0a3d58; }
 body header#site-header .site-navigation ul.menu > li:hover > a:not(.header-cta-btn)::before { content:'';position:absolute;right:10px;bottom:-1px;width:22px;height:3px;background:#ffdb22; }
 body header#site-header .site-navigation ul.sub-menu > li:hover > a { box-shadow:inset 3px 0 #d4ac00; }
}
@media(max-width:1024px) {
 body header#site-header .site-navigation-dropdown li:is(.current-menu-item,.current-menu-ancestor) > .wm-menu-row,
 body header#site-header .site-navigation-dropdown li.current-menu-item > a,
 body header#site-header .site-navigation-dropdown .wm-menu-row:focus-within { box-shadow:inset 3px 0 #d4ac00; }
}
