/* Allgemeine zContent-Navigation */
#easymenu {
    --menu-dark: #343a40;
    --menu-dark-hover: #2b3035;
    --menu-green: #006633;
    --menu-green-light: #95d5b2;
    --menu-submenu: #f4f6f7;
    --menu-border: #d9dee2;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden;
    color: #fff;
    background: var(--menu-dark);
    border: 1px solid var(--menu-dark);
    border-radius: 4px;
    font-family: 'Fira Sans', sans-serif;
    font-size: 16px;
    line-height: 1.35;
    list-style: none;
}

#easymenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

#easymenu li {
    position: relative;
    margin: 0;
    padding: 0;
    color: #fff;
    background: var(--menu-dark);
    border-bottom: 1px solid rgba(255, 255, 255, .28);
    list-style: none;
}

#easymenu > li:last-child,
#easymenu > ul > li:last-child,
#easymenu .last {
    border-bottom: 0;
}

#easymenu a,
#easymenu a:visited {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 46px;
    padding: 10px 16px;
    color: #fff;
    background: transparent;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    overflow-wrap: anywhere;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

#easymenu > li > a:hover,
#easymenu > li > a:focus-visible,
#easymenu > ul > li > a:hover,
#easymenu > ul > li > a:focus-visible {
    color: var(--menu-green-light);
    background: var(--menu-dark-hover);
    box-shadow: inset 4px 0 0 var(--menu-green-light);
}

#easymenu li.treeMenu_active > a,
#easymenu > li > a.current,
#easymenu > ul > li > a.current {
    color: #fff;
    background: var(--menu-green);
    box-shadow: inset 4px 0 0 var(--menu-green-light);
}

/* Unterebenen werden weiterhin durch die vorhandenen CMS-Klassen gesteuert. */
#easymenu li > ul {
    display: none;
    margin: 0;
    padding: 4px 0;
    background: var(--menu-submenu);
    border-top: 1px solid var(--menu-border);
}

#easymenu li.treeMenu_opened > ul {
    display: block;
}

#easymenu li.treeMenu_closed > ul {
    display: none;
}

#easymenu li ul li {
    padding: 0;
    color: var(--menu-dark);
    background: transparent;
    border-bottom: 1px solid var(--menu-border);
}

#easymenu li ul li:last-child {
    border-bottom: 0;
}

#easymenu li ul li a,
#easymenu li ul li a:visited {
    min-height: 42px;
    padding: 8px 16px 8px 30px;
    color: var(--menu-dark);
    background: transparent;
    font-size: 15px;
    font-weight: 500;
}

#easymenu li ul li a::before {
    content: "";
    flex: 0 0 5px;
    width: 5px;
    height: 5px;
    margin-right: 10px;
    background: var(--menu-green);
    border-radius: 50%;
}

#easymenu li ul li a:hover,
#easymenu li ul li a:focus-visible {
    color: var(--menu-green);
    background: #fff;
    box-shadow: inset 4px 0 0 var(--menu-green);
}

#easymenu li ul li.treeMenu_active > a,
#easymenu li ul li a.current,
#easymenu li ul li a:active {
    color: #fff;
    background: var(--menu-green);
    box-shadow: inset 4px 0 0 var(--menu-green-light);
}

#easymenu li ul li.treeMenu_active > a::before,
#easymenu li ul li a.current::before,
#easymenu li ul li a:active::before {
    background: #fff;
}

#easymenu a:focus-visible {
    position: relative;
    z-index: 1;
    outline: 2px solid var(--menu-green-light);
    outline-offset: -3px;
}

@media (max-width: 767.98px) {
    #easymenu a {
        min-height: 48px;
    }

    #easymenu li ul li a {
        min-height: 44px;
    }
}

@media (prefers-reduced-motion: reduce) {
    #easymenu a {
        transition: none;
    }
}

/* Kurzlinks in der Seitenleiste */
.rs-blog .cl-sidebar .svo-quicklinks ul {
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: var(--menu-dark, #343a40);
    border: 1px solid var(--menu-dark, #343a40);
    border-radius: 4px;
    list-style: none;
}

.rs-blog .cl-sidebar .svo-quicklinks ul li {
    margin: 0;
    padding: 0;
    background: transparent;
    border-bottom: 1px solid rgba(255, 255, 255, .28);
    list-style: none;
}

.rs-blog .cl-sidebar .svo-quicklinks ul li:last-child {
    border-bottom: 0;
}

.rs-blog .cl-sidebar .svo-quicklinks ul li a,
.rs-blog .cl-sidebar .svo-quicklinks ul li a:visited {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 46px;
    padding: 10px 16px;
    color: #fff;
    background: transparent;
    font-family: 'Fira Sans', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
    transition: color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.rs-blog .cl-sidebar .svo-quicklinks ul li a:hover,
.rs-blog .cl-sidebar .svo-quicklinks ul li a:focus-visible {
    color: #95d5b2;
    background: #2b3035;
    box-shadow: inset 4px 0 0 #95d5b2;
}

.rs-blog .cl-sidebar .svo-quicklinks ul li a:focus-visible {
    outline: 2px solid #95d5b2;
    outline-offset: -3px;
}

@media (max-width: 767.98px) {
    .rs-blog .cl-sidebar .svo-quicklinks ul li a {
        min-height: 48px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rs-blog .cl-sidebar .svo-quicklinks ul li a {
        transition: none;
    }
}
