/* Nur das native, ausdrücklich markierte Portalmenü ergänzen. Die äußeren
 * Abstände und Logo-Größen bleiben über Divis responsive Einstellungen editierbar.
 */
.ejb-primary-menu { -webkit-tap-highlight-color:transparent; }
.ejb-menu-toggle { display:none; }
@media (max-width:980px) {
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_pb_menu__menu { display:none; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_nav_menu { display:block; margin:0; width:100%; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_pb_menu_inner_container { display:block; width:100%; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_pb_menu__wrap { justify-content:flex-end; width:100%; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .mobile_nav { position:relative; text-align:right; width:100%; }
    .ejb-primary-menu .ejb-menu-toggle { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:48px; padding:12px 16px; border:1px solid #dce1ec; border-radius:12px; background:#202c55; color:#fff; font-family:inherit; font-size:16px; font-weight:700; line-height:1.25; cursor:pointer; }
    .ejb-primary-menu .ejb-menu-toggle:focus-visible { outline:3px solid #ffcf4d; outline-offset:4px; }
    .ejb-primary-menu .ejb-hamburger { position:relative; display:block; width:22px; height:2px; background:currentColor; border-radius:2px; transition:background .18s; }
    .ejb-primary-menu .ejb-hamburger::before,.ejb-primary-menu .ejb-hamburger::after { content:""; position:absolute; left:0; width:22px; height:2px; background:currentColor; border-radius:2px; transition:transform .18s; }
    .ejb-primary-menu .ejb-hamburger::before { transform:translateY(-7px); }
    .ejb-primary-menu .ejb-hamburger::after { transform:translateY(7px); }
    .ejb-primary-menu [aria-expanded="true"] .ejb-hamburger { background:transparent; }
    .ejb-primary-menu [aria-expanded="true"] .ejb-hamburger::before { transform:rotate(45deg); }
    .ejb-primary-menu [aria-expanded="true"] .ejb-hamburger::after { transform:rotate(-45deg); }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu { box-sizing:border-box; position:absolute; left:auto; right:0; top:calc(100% + 14px); width:min(88vw,420px); min-width:0; max-height:calc(100dvh - 220px); overflow-y:auto; overscroll-behavior:contain; padding:14px; background:#fff; border:1px solid #e1e6f0; border-top:4px solid #ffcf4d; border-radius:16px; box-shadow:0 16px 48px #14203b30; text-align:left; }
    /* Divis Animationsstil darf den eigenen Zustand nicht überstimmen. */
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu[hidden] { display:none !important; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .opened .et_mobile_menu:not([hidden]) { display:block !important; animation:ejb-menu-in .18s ease-out; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu li { margin:0; padding:0; list-style:none; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu a { display:flex; align-items:center; min-height:46px; padding:10px 14px; box-sizing:border-box; border:0; border-radius:9px; color:#202c55; background:transparent; font-size:16px; font-weight:600; line-height:1.4; text-decoration:none; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu a:hover,.ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu a:focus-visible { background:#fff0bb; opacity:1; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu a[aria-current="page"] { background:#edf1f8; box-shadow:inset 3px 0 #202c55; }
    .ejb-site-header .ejb-primary-menu.ejb-mobile-enhanced .et_mobile_menu a[href$="/beitrag-vorschlagen/"] { background:#ffcf4d; margin-top:6px; margin-bottom:6px; }
}
@keyframes ejb-menu-in { from { opacity:0; transform:translateY(-6px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:reduce) { .ejb-primary-menu *,.ejb-primary-menu *::before,.ejb-primary-menu *::after { animation:none !important; transition:none !important; } }
