/* ===================== Tokens / Namespace ===================== */
.mega--full {
    --maxw: 1320px;

    /* Farben Desktop */
    --brand: #627E12;
    /* Topbar BG (Ebene 1) */
    --top-fg: #ffffff;
    /* Topbar Text */
    --panel-bg: #ffffff;
    /* Panel/Excerpt BG (Ebene 2/3) */
    --panel-fg: #000000;
    /* Panel/Excerpt Text */
    --panel-hover: #627E12;
    /* Hover im Panel */

    /* Farben Mobile */
    --m-bg: #627E12;
    /* Drawer-Hintergrund (gesamt) */
    --m-fg: #ffffff;
    /* Drawer Text (Ebene 1) */
    --m-sub-bg: #ffffff;
    /* Mobile Ebene 2 BG */
    --m-sub-fg: #000000;
    /* Mobile Ebene 2 Text */
    --m-hover: #627E12;
    /* Mobile Hover */

    /* Sonstiges */
    --muted: #667085;
    --border: #627E12;
    --shadow: 0 12px 30px rgba(0, 0, 0, .08);
    --offset: 0px;
    /* ggf. Headerhöhe */

    position: relative;
    z-index: 100;
    background: var(--brand);
    /* Topbar-Hintergrund */
    color: var(--top-fg);
    /* Topbar-Schrift */
    border-bottom: 1px solid var(--border);
    /*font: 16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;*/
    font-family: 'Delicious' !important;
}

.mega--full,
.mega--full * {
    box-sizing: border-box;
}

.mega--full a {
    color: currentColor;
    text-decoration: none;
    outline-offset: 3px;
}

/* Mouse clicks won't show outline; keep it for keyboard via :focus-visible */
.mega--full a:focus {
    outline: none;
}

.mega--full a:focus-visible {
    outline: 2px solid #FFD700;
    outline-offset: 1px;
    box-shadow: 0 0 0 3px #FFD700;
    border-radius: .375rem;
}

.mega--full summary {
    list-style: none;
}

.mega--full summary::-webkit-details-marker {
    display: none;
}

.nowrap {
    white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
    .mega--full * {
        transition: none !important;
    }
}

/* ===================== Active/Current Item Styles ===================== */
/* Desktop: make current page bold */
.mega--full .mega__bar a[aria-current="page"],
.mega--full .mega__bar a.is-active {
    font-weight: 800;
    text-decoration: none;
}

/* Mobile: highlight the entire row for current */
.mega__m-list>li:has(> a[aria-current="page"]),
.mega__m-sub3 li:has(> a[aria-current="page"]) {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .25);
}

.mega__m-list a[aria-current="page"],
.mega__m-sub3 a[aria-current="page"] {
    font-weight: 800;
}

/* Hauptmenüpunkt fett, wenn Unterlink aktiv ist */
.mega__bar>li:has(.mega__panel a[aria-current="page"])>a {
    font-weight: 800;
    text-decoration: none;
}

/* Mobile: Hauptpunkt hervorheben, wenn Unterlink aktiv ist */
.mega__m-acc:has(.mega__m-sub a[aria-current="page"])>summary {
    font-weight: 800;
    border-color: rgba(255, 255, 255, .6);
    background: rgba(255, 255, 255, .12);
}

/* Zusätzlich den gesamten Listeneintrag leicht hervorheben */
.mega__m-list>li:has(.mega__m-sub a[aria-current="page"]) {
    outline: 2px solid rgba(255, 255, 255, .3);
    outline-offset: -2px;
}

/* ===================== Desktop: Leiste (Ebene 1) ===================== */

/*.mega--full .mega__bar {
    max-width: var(--maxw);
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 67px;
    align-items: center;
    min-height: 56px;
    position: relative;
    z-index: 2;
    background: var(--brand);
    color: var(--top-fg);
}*/

/* Desktop-Menü: bleibt eine Zeile, nutzt volle Breite, kein gap */
@media (min-width: 1025px) {
    .mega--full .mega__bar {
        max-width: var(--maxw);
        margin: 0;
        padding: 0;
        list-style: none;

        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;

        min-height: 56px;
        position: relative;
        z-index: 2;

        background: var(--brand);
        color: var(--top-fg);
    }

    .mega--full .mega__bar > li {
        padding-inline: clamp(17px, 0.5vw, 32px);
        white-space: nowrap;
    }
}




.mega--full .mega__bar>li>a[role="menuitem"] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    padding: 0 30px 0 0;
    text-transform: uppercase !important;
    letter-spacing: .02em;
}

@media (max-width: 1320px) {
    .mega--full .mega__bar>li>a[role="menuitem"] {
        padding: 0 15px 0 0;
    }
}

@media (max-width: 1200px) {
    .mega--full .mega__bar>li>a[role="menuitem"] {
        padding: 0 8px 0 0;
    }
}

@media (max-width: 1120px) {
    .mega--full .mega__bar>li>a[role="menuitem"] {
        padding: 0;
    }
}

.mega--full .mega__bar>li>a[role="menuitem"]:hover,
.mega--full .mega__bar>li>a[role="menuitem"]:focus {
    text-decoration: underline;
}

.mega--full .mega__bar>li>a[role="menuitem"]:focus {
    outline-color: #FFD700;
}

.mega--full .has-mega {
    position: static;
}

/* ===================== Desktop: Panel (Ebene 2/3 + Excerpt) ===================== */

.mega--full .mega__panel {
    position: absolute;
    left: -2px;
    right: 0;
    top: 100%;
    min-width: 100%;
    width: 67vw;
    max-width: 1326px;
    height: 250px;
    background: var(--panel-bg);
    /* Weiß, voll deckend */
    color: var(--panel-fg);
    border-top: 1px solid var(--border);
    box-shadow: var(--shadow);
    /* sichtbarer Shadow */
    opacity: 0;
    visibility: hidden;
    transition: opacity .15s ease, visibility .15s ease;
    pointer-events: none;
    z-index: 1;
    overflow: visible;
    /* Shadow nicht abschneiden */
}

.mega--full .mega__panel::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -20px;
    height: 20px;
}

/* Nur ein Panel gleichzeitig sichtbar */
.mega--full .has-mega:hover>.mega__panel,
.mega--full .has-mega:focus-within>.mega__panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Grid: 3 Spalten + rechte Excerpt-Spalte */
.mega--full .mega__grid {
    max-width: var(--maxw);
    margin: 0 auto;
    padding: 28px 24px;
    display: grid;
    grid-template-columns: repeat(3, minmax(260px, 1fr)) minmax(300px, 360px);
    /*gap: 32px;*/
    align-items: start;
    box-sizing: border-box;
    color: var(--panel-fg);
}

.mega--full .mega__grid a {
    color: var(--panel-fg);
}

.mega--full .mega__grid a:hover,
.mega--full .mega__grid a:focus {
    color: var(--panel-hover);
}

.mega--full h3 {
    margin: .25rem 0 .5rem;
    font-size: 1rem;
    font-weight: 700;
    color: var(--panel-fg);
}

.mega--full ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mega--full li+li {
    margin-top: .35rem;
}

/* Pseudo-Überschriften wie "Mediathek" / "Karriere" (ohne Link) */
.mega__heading {
    font-size: 1rem;
    font-weight: 700;
    color: var(--panel-fg);
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}

.mega__heading:hover,
.mega__heading:focus {
    color: var(--panel-fg);
    text-decoration: none;
}

/* Rechte Spalte (Excerpt) */
.mega__highlight {
    display: grid;
    padding: 16px;
    border-left: 1px solid var(--border);
    box-sizing: border-box;
    background: var(--panel-bg);
    color: var(--panel-fg);
    max-height: 200px;
}

/* Card-Struktur der Excerpts */
.mega__highlight .hl {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 18px;
    background: var(--panel-bg);
    color: var(--panel-fg);
    hyphens: auto;
    overflow-wrap: break-word;
    word-break: normal;
    cursor: default;
    pointer-events: none;
}

.hl__eyebrow {
    font-size: .8rem;
    opacity: .7;
}

.hl__title {
    font-size: 1.1rem;
    font-weight: 600;
}

/* ===================== Preview-Stacking via :has() ===================== */
/* Alle Previews übereinander stacken */
.mega__highlight .preview {
    grid-area: 1 / 1;
    opacity: 0;
    transition: opacity .12s linear;
}

/* Default-Preview sichtbar, solange nichts aktiv ist */
.mega__highlight .preview.is-default {
    opacity: 1;
}

/* Wenn ein Link mit data-preview aktiv ist, Default ausblenden */
.mega__grid:has([data-preview]:hover) .mega__highlight .preview.is-default,
.mega__grid:has([data-preview]:focus) .mega__highlight .preview.is-default {
    opacity: 0;
}

/* Abfall */
.mega__grid:has([data-preview="abf-hoe"]:hover) .preview#pv-abf-hoe,
.mega__grid:has([data-preview="abf-hoe"]:focus) .preview#pv-abf-hoe,
.mega__grid:has([data-preview="abf-kb"]:hover) .preview#pv-abf-kb,
.mega__grid:has([data-preview="abf-kb"]:focus) .preview#pv-abf-kb,
.mega__grid:has([data-preview="abf-esh"]:hover) .preview#pv-abf-esh,
.mega__grid:has([data-preview="abf-esh"]:focus) .preview#pv-abf-esh,
.mega__grid:has([data-preview="abf-spm"]:hover) .preview#pv-abf-spm,
.mega__grid:has([data-preview="abf-spm"]:focus) .preview#pv-abf-spm,
.mega__grid:has([data-preview="abf-term"]:hover) .preview#pv-abf-term,
.mega__grid:has([data-preview="abf-term"]:focus) .preview#pv-abf-term,
.mega__grid:has([data-preview="abf-form"]:hover) .preview#pv-abf-form,
.mega__grid:has([data-preview="abf-form"]:focus) .preview#pv-abf-form,
.mega__grid:has([data-preview="abf-unserv"]:hover) .preview#pv-abf-unserv,
.mega__grid:has([data-preview="abf-unserv"]:focus) .preview#pv-abf-unserv,
.mega__grid:has([data-preview="abf-ms"]:hover) .preview#pv-abf-ms,
.mega__grid:has([data-preview="abf-ms"]:focus) .preview#pv-abf-ms,
.mega__grid:has([data-preview="abf-gebuer"]:hover) .preview#pv-abf-gebuer,
.mega__grid:has([data-preview="abf-gebuer"]:focus) .preview#pv-abf-gebuer,
.mega__grid:has([data-preview="abf-recht"]:hover) .preview#pv-abf-recht,
.mega__grid:has([data-preview="abf-recht"]:focus) .preview#pv-abf-recht,
.mega__grid:has([data-preview="abf-verm"]:hover) .preview#pv-abf-verm,
.mega__grid:has([data-preview="abf-verm"]:focus) .preview#pv-abf-verm,
.mega__grid:has([data-preview="abf-kp"]:hover) .preview#pv-abf-kp,
.mega__grid:has([data-preview="abf-kp"]:focus) .preview#pv-abf-kp,
.mega__grid:has([data-preview="abf-zw"]:hover) .preview#pv-abf-zw,
.mega__grid:has([data-preview="abf-zw"]:focus) .preview#pv-abf-zw {
    opacity: 1;
}



/* Energie */
.mega__grid:has([data-preview="en-eb"]:hover) .preview#pv-en-eb,
.mega__grid:has([data-preview="en-eb"]:focus) .preview#pv-en-eb,
.mega__grid:has([data-preview="en-kb"]:hover) .preview#pv-en-kb,
.mega__grid:has([data-preview="en-kb"]:focus) .preview#pv-en-kb,
.mega__grid:has([data-preview="en-bb"]:hover) .preview#pv-en-bb,
.mega__grid:has([data-preview="en-bb"]:focus) .preview#pv-en-bb,
.mega__grid:has([data-preview="en-be"]:hover) .preview#pv-en-be,
.mega__grid:has([data-preview="en-be"]:focus) .preview#pv-en-be,
.mega__grid:has([data-preview="en-hok"]:hover) .preview#pv-en-hok,
.mega__grid:has([data-preview="en-hok"]:focus) .preview#pv-en-hok {
    opacity: 1;
}

/* Infrastruktur */
.mega__grid:has([data-preview="inf-sgu"]:hover) .preview#pv-inf-sgu,
.mega__grid:has([data-preview="inf-sgu"]:focus) .preview#pv-inf-sgu {
    opacity: 1;
}

/* Mobilität */
.mega__grid:has([data-preview="mob-barshare"]:hover) .preview#pv-mob-barshare,
.mega__grid:has([data-preview="mob-barshare"]:focus) .preview#pv-mob-barshare,
.mega__grid:has([data-preview="mob-ladenetz"]:hover) .preview#pv-mob-ladenetz,
.mega__grid:has([data-preview="mob-ladenetz"]:focus) .preview#pv-mob-ladenetz,
.mega__grid:has([data-preview="mob-h2"]:hover) .preview#pv-mob-h2,
.mega__grid:has([data-preview="mob-h2"]:focus) .preview#pv-mob-h2 {
    opacity: 1;
}

/* Bildung */
.mega__grid:has([data-preview="bil-erfahrbar"]:hover) .preview#pv-bil-erfahrbar,
.mega__grid:has([data-preview="bil-erfahrbar"]:focus) .preview#pv-bil-erfahrbar,
.mega__grid:has([data-preview="bil-ub"]:hover) .preview#pv-bil-ub,
.mega__grid:has([data-preview="bil-ub"]:focus) .preview#pv-bil-ub,
.mega__grid:has([data-preview="bil-kita"]:hover) .preview#pv-bil-kita,
.mega__grid:has([data-preview="bil-kita"]:focus) .preview#pv-bil-kita,
.mega__grid:has([data-preview="bil-gs"]:hover) .preview#pv-bil-gs,
.mega__grid:has([data-preview="bil-gs"]:focus) .preview#pv-bil-gs,
.mega__grid:has([data-preview="bil-sek1"]:hover) .preview#pv-bil-sek1,
.mega__grid:has([data-preview="bil-sek1"]:focus) .preview#pv-bil-sek1,
.mega__grid:has([data-preview="bil-foerd"]:hover) .preview#pv-bil-foerd,
.mega__grid:has([data-preview="bil-foerd"]:focus) .preview#pv-bil-foerd,
.mega__grid:has([data-preview="bil-frei"]:hover) .preview#pv-bil-frei,
.mega__grid:has([data-preview="bil-frei"]:focus) .preview#pv-bil-frei,
.mega__grid:has([data-preview="bil-abfallprofis"]:hover) .preview#pv-bil-abfallprofis,
.mega__grid:has([data-preview="bil-abfallprofis"]:focus) .preview#pv-bil-abfallprofis {
    opacity: 1;
}

/* Projekte */
.mega__grid:has([data-preview="pr-pv"]:hover) .preview#pv-pr-pv,
.mega__grid:has([data-preview="pr-pv"]:focus) .preview#pv-pr-pv,
.mega__grid:has([data-preview="pr-waerme"]:hover) .preview#pv-pr-waerme,
.mega__grid:has([data-preview="pr-waerme"]:focus) .preview#pv-pr-waerme,
.mega__grid:has([data-preview="pr-wind"]:hover) .preview#pv-pr-wind,
.mega__grid:has([data-preview="pr-wind"]:focus) .preview#pv-pr-wind,
.mega__grid:has([data-preview="pr-bau"]:hover) .preview#pv-pr-bau,
.mega__grid:has([data-preview="pr-bau"]:focus) .preview#pv-pr-bau,
.mega__grid:has([data-preview="pr-led"]:hover) .preview#pv-pr-led,
.mega__grid:has([data-preview="pr-led"]:focus) .preview#pv-pr-led,
.mega__grid:has([data-preview="pr-zirk"]:hover) .preview#pv-pr-zirk,
.mega__grid:has([data-preview="pr-zirk"]:focus) .preview#pv-pr-zirk,
.mega__grid:has([data-preview="pr-p2g"]:hover) .preview#pv-pr-p2g,
.mega__grid:has([data-preview="pr-p2g"]:focus) .preview#pv-pr-p2g,
.mega__grid:has([data-preview="pr-p2gfor"]:hover) .preview#pv-pr-p2gfor,
.mega__grid:has([data-preview="pr-p2gfor"]:focus) .preview#pv-pr-p2gfor {
    opacity: 1;
}

/* Mehr über uns */
.mega__grid:has([data-preview="au-wir"]:hover) .preview#pv-au-wir,
.mega__grid:has([data-preview="au-wir"]:focus) .preview#pv-au-wir,
.mega__grid:has([data-preview="au-leitbild"]:hover) .preview#pv-au-leitbild,
.mega__grid:has([data-preview="au-leitbild"]:focus) .preview#pv-au-leitbild,
.mega__grid:has([data-preview="au-untern"]:hover) .preview#pv-au-untern,
.mega__grid:has([data-preview="au-untern"]:focus) .preview#pv-au-untern,
.mega__grid:has([data-preview="au-aufgaben"]:hover) .preview#pv-au-aufgaben,
.mega__grid:has([data-preview="au-aufgaben"]:focus) .preview#pv-au-aufgaben,
.mega__grid:has([data-preview="au-entw"]:hover) .preview#pv-au-entw,
.mega__grid:has([data-preview="au-entw"]:focus) .preview#pv-au-entw,
.mega__grid:has([data-preview="au-med"]:hover) .preview#pv-au-med,
.mega__grid:has([data-preview="au-med"]:focus) .preview#pv-au-med,
.mega__grid:has([data-preview="au-press"]:hover) .preview#pv-au-press,
.mega__grid:has([data-preview="au-press"]:focus) .preview#pv-au-press,
.mega__grid:has([data-preview="au-kwbfoto"]:hover) .preview#pv-au-kwbfoto,
.mega__grid:has([data-preview="au-kwbfoto"]:focus) .preview#pv-au-kwbfoto,
.mega__grid:has([data-preview="au-flyer"]:hover) .preview#pv-au-flyer,
.mega__grid:has([data-preview="au-flyer"]:focus) .preview#pv-au-flyer,
.mega__grid:has([data-preview="au-gal"]:hover) .preview#pv-au-gal,
.mega__grid:has([data-preview="au-gal"]:focus) .preview#pv-au-gal,
.mega__grid:has([data-preview="au-news"]:hover) .preview#pv-au-news,
.mega__grid:has([data-preview="au-news"]:focus) .preview#pv-au-news,
.mega__grid:has([data-preview="au-karriere"]:hover) .preview#pv-au-karriere,
.mega__grid:has([data-preview="au-karriere"]:focus) .preview#pv-au-karriere,
.mega__grid:has([data-preview="au-ag"]:hover) .preview#pv-au-ag,
.mega__grid:has([data-preview="au-ag"]:focus) .preview#pv-au-ag,
.mega__grid:has([data-preview="au-ausb"]:hover) .preview#pv-au-ausb,
.mega__grid:has([data-preview="au-ausb"]:focus) .preview#pv-au-ausb,
.mega__grid:has([data-preview="au-stellen"]:hover) .preview#pv-au-stellen,
.mega__grid:has([data-preview="au-stellen"]:focus) .preview#pv-au-stellen,
.mega__grid:has([data-preview="au-prakt"]:hover) .preview#pv-au-prakt,
.mega__grid:has([data-preview="au-prakt"]:focus) .preview#pv-au-prakt {
    opacity: 1;
}

/* Kontakte */
.mega__grid:has([data-preview="ko-gf"]:hover) .preview#pv-ko-gf,
.mega__grid:has([data-preview="ko-gf"]:focus) .preview#pv-ko-gf,
.mega__grid:has([data-preview="ko-pers"]:hover) .preview#pv-ko-pers,
.mega__grid:has([data-preview="ko-pers"]:focus) .preview#pv-ko-pers,
.mega__grid:has([data-preview="ko-abf"]:hover) .preview#pv-ko-abf,
.mega__grid:has([data-preview="ko-abf"]:focus) .preview#pv-ko-abf,
.mega__grid:has([data-preview="ko-ene"]:hover) .preview#pv-ko-ene,
.mega__grid:has([data-preview="ko-ene"]:focus) .preview#pv-ko-ene,
.mega__grid:has([data-preview="ko-inf"]:hover) .preview#pv-ko-inf,
.mega__grid:has([data-preview="ko-inf"]:focus) .preview#pv-ko-inf,
.mega__grid:has([data-preview="ko-umw"]:hover) .preview#pv-ko-umw,
.mega__grid:has([data-preview="ko-umw"]:focus) .preview#pv-ko-umw,
.mega__grid:has([data-preview="ko-p2g"]:hover) .preview#pv-ko-p2g,
.mega__grid:has([data-preview="ko-p2g"]:focus) .preview#pv-ko-p2g,
.mega__grid:has([data-preview="ko-press"]:hover) .preview#pv-ko-press,
.mega__grid:has([data-preview="ko-press"]:focus) .preview#pv-ko-press {
    opacity: 1;
}

/* ===================== Breakpoints für Desktop-Grid ===================== */
@media (max-width: 960px) {
    .mega--full .mega__grid {
        grid-template-columns: repeat(2, minmax(260px, 1fr));
    }

    .mega__highlight {
        grid-column: 1 / -1;
        border-left: none;
        border-top: 1px solid var(--border);
        margin-top: 16px;
    }
}

@media (max-width: 640px) {
    .mega--full .mega__grid {
        grid-template-columns: 1fr;
    }
}

/* ===================== Screenreader-only Helfer ===================== */
.sr-only {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
    padding: 0;
    margin: 0;
}

/* ===================== Mobile: Hamburger + Drawer ===================== */
.mega__hamburger {
    display: none;
}

/* Obere mobile Leiste (Icon rechts) */
.mega__hamburger-btn {
    position: fixed;
    top: var(--offset);
    left: 0;
    right: 0;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 16px;
    background: var(--m-bg);
    color: var(--m-fg);
    border-bottom: none;
    cursor: pointer;
    z-index: 1002;
}

.mega__hamburger-ico {
    display: inline-flex;
    flex-direction: column;
    gap: 4px;
}

.mega__hamburger-ico span {
    width: 22px;
    height: 2px;
    background: var(--m-fg);
    display: block;
}

.mega__hamburger summary.mega__hamburger-btn::after {
    display: none;
}

/* Fullscreen Drawer */
.mega__drawer {
    position: fixed;
    top: calc(var(--offset) + 56px);
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    overflow: auto;
    z-index: 1001;
    background: var(--m-bg);
    color: var(--m-fg);
    border-top: none;
    box-shadow: var(--shadow);
    padding: 12px 12px 16px;
}

.mega__drawer a {
    color: var(--m-fg);
}

/* Mobile Listenstruktur */
.mega__m-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mega__m-list>li+li {
    margin-top: 6px;
}

.mega__m-list>li>a {
    display: block;
    padding: 12px;
}

/* Akkordeon-Köpfe (Ebene 1 in Mobil) */
.mega__m-acc {
    display: block;
}

.mega__m-acc > summary {
    position: relative;                  /* NEU: für absolut positioniertes Icon */
    padding: 14px 40px 14px 12px;        /* rechts Platz für Icon schaffen */
    cursor: pointer;
    color: var(--m-fg);
    border: 1px solid rgba(255, 255, 255, .25);
    background: transparent;
}

/* Icon-Span – sitzt rechts im Summary */
.mega__m-acc-icon {
    position: absolute;
    right: 12px;                         /* Abstand vom rechten Rand */
    top: 50%;
    transform: translateY(-50%);         /* vertikal zentriert */
    display: inline-block;
    font-size: 1.2em;
    opacity: .85;
    transition: transform .2s ease;
}

/* Offen: Icon drehen (z.B. auf ▾-Optik) */
.mega__m-acc[open] .mega__m-acc-icon {
    transform: translateY(-50%) rotate(90deg);
}



/* Mobile Ebene 2/3 */
.mega__m-sub {
    list-style: none;
    margin: 8px 0 10px;
    padding: 8px 8px 10px;
    background: var(--m-sub-bg);
    color: var(--m-sub-fg);
}

.mega__m-l2 {
    padding: 10px;
}

.mega__m-l2 a {
    font-weight: 700;
    color: #627E12;
    display: block;
    padding: 8px 0;
}

.mega__m-sub3 {
    list-style: none;
    margin: 0 0 10px;
    padding: 0 0 0 12px;
}

.mega__m-sub3 li a {
    display: block;
    padding: 8px 12px;
}

.mega__m-sub3 li a:hover,
.mega__m-sub3 li a:focus {
    color: var(--m-hover);
    text-decoration: underline;
}

/* Breakpoint: Mobile an, Desktop aus */
@media (max-width: 1024px) {
    .mega--full .mega__bar {
        display: none;
    }

    .mega--full .mega__hamburger {
        display: block;
    }

    /* Desktop-Panels auf Mobil komplett ausblenden */
    .mega--full .mega__panel {
        display: none !important;
    }

    /* Platz für fixe Leiste */
    body {
        padding-top: calc(var(--offset) + 56px);
    }

    /* Mobile: Untermenüpunkte in den weißen Boxen dunkel darstellen */
    .mega__m-sub a,
    .mega__m-sub3 a {
        color: var(--m-sub-fg);
        /* = schwarz */
    }

    /* Hover/Fokus in den Unterebenen: grün + Unterstreichung */
    .mega__m-sub a:hover,
    .mega__m-sub a:focus,
    .mega__m-sub3 a:hover,
    .mega__m-sub3 a:focus {
        color: var(--m-hover);
        text-decoration: underline;
    }

    /* Mobile: aktive Unterpunkte deutlich hervorheben */
    .mega__m-sub3 a[aria-current="page"] {
        font-weight: 700;
        color: var(--m-hover);
        /* grün */
    }

    /* Optional: ganze Zeile einfärben, wenn aktuell */
    .mega__m-sub3 li:has(> a[aria-current="page"]) {
        background: #e0ebc8;
        /* helles Grün */
        border-radius: 4px;
    }
}

/* Hauptmenü: Uppercase sicher über HTML-Klasse */
.mega__toplink {
    text-transform: uppercase !important;
    letter-spacing: 0.04em;
    font-weight: 600;
}

.mega__toplink {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  text-align: left;
}

/* Fokus sichtbar lassen (wichtig!)
.mega__toplink:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
} */


/* Globalen summary::after-Pfeil im Mega-Menü-Mobil deaktivieren */
.mega__m-acc > summary::after {
    content: "" !important;
    padding: 0 !important;
    font-size: 0 !important;
}

/* Mega-Highlight: Umbruch erzwingen */
.mega__highlight .hl__title {
  white-space: normal;          /* wichtig: hebelt nowrap aus */
  overflow-wrap: anywhere;      /* lange Wörter/Bindestrich-Ketten brechen */
  word-break: normal;
}

/* Wenn .preview / .hl in Flex/Grid-Kontext steckt: Schrumpfen erlauben */
.mega__highlight .preview,
.mega__highlight .hl {
  min-width: 0;                 /* Flex-Fix: erlaubt Umbruch statt Overflow */
}

