
/* Meta-Navigation */
.navMeta ul {
    display: flex;
    font-family: var(--font_regular);
    font-size: var(--font_size04);
    padding-top: .25rem;
}
.navMeta li {
    display: flex;
    align-items: center;
}
.navMeta li::after {
    color: var(--textColorDark);
    content: '|';
}

.navMeta a, 
.navMeta strong {
    font-weight: bold;
    display: block;
    padding-left: .75rem;
    padding-right: .75rem;
    line-height: 3.5rem;
}

.navMeta a {
    color: var(--textColorDark);
}

.navMeta a:hover, 
.navMeta strong {
    color: var(--ci200);

}

.navMeta li:last-child::after {
    content: '';  
}





/* Haupt-Navigation */

.navMain .megamenu .datenschutz,
.navMain .megamenu .impressum {
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    display: none !important;
}

.navMain {
	--_naviMain-MainFontsize: var(--font_size06);
	--_naviMain-MainLinkColor: var(--white100);
	--_naviMain-MainHoverColor: var(--ci200);
	--_naviMain-MainActiveColor: var(--white100);
	--_naviMain-MainBackgroundMainColor: var(--ci100);
	--_naviMain-MainBackgroundHoverColor: var(--ci100);
	--_naviMain-MainBackgroundActiveColor: var(--ci100);
	--_naviMain-MainPaddingBlock: 1.5rem;
	--_naviMain-MainPaddingInline: 1.5rem;

    position: relative;
    align-self: flex-end;
    z-index: 110;
}
.navMain ul {
	position: relative;
}
.navMain .megamenu {
	display: flex;
    text-transform: uppercase;
}


.navMain a, 
.navMain strong {
    position: relative;
    padding: var(--_naviMain-MainPaddingBlock) var(--_naviMain-MainPaddingInline);
	color: var(--_naviMain-MainLinkColor);
    font-family: var(--font_semibold);
    font-weight: normal;
	font-size: var(--_naviMain-MainFontsize);
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
    hyphens: none;
}

.navMain a::after, 
.navMain strong::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    background: var(--ci300);
    scale: 0 1;
    transition: 
        scale 250ms,
        transision 500ms;
}

.navMain a:hover::after,
.navMain strong:hover::after,
.megamenu .mmactive strong::after,
.megamenu a.active::after, 
.megamenu strong.active::after,
.megamenu a.trail::after,
.megamenu strong.trail::after {
    scale: 1 1;
}

.megamenu .mmactive strong::after,
.megamenu strong.trail::after,
.megamenu a.active::after, 
.megamenu strong.active::after,
.megamenu a.trail::after,
.megamenu strong.trail::after {
    background: var(--ci200);
}


.megamenu a.active, 
.megamenu strong.active,
.megamenu a.trail,
.megamenu strong.trail {
    color: var(--_naviMain-MainActiveColor);
    background: linear-gradient(0deg, var(--ci2033), transparent);
    transition: 500ms;
}



.mega-menu strong {
    cursor: pointer;
}

.mega-dropdown {
	width: calc(var(--site_width) - 2rem); 
	max-height: 0;
	top: 100%;
	left: 0;
	right: 0;
	position: absolute;
	overflow: hidden;
	display: block;
    border: 0px solid transparent;
    border-radius: 0 0 var(--radius_standard) var(--radius_standard);
	background-color: var(--ci400);
    background: linear-gradient(to bottom, var(--ci500) 0%, var(--ci400) 100%);
	transition: all 0.5s, ease-in-out 0.5s;
	box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
	z-index: 100;
}
.mmactive .mega-dropdown {
    max-height: 70vh;
	transition: all 0.5s, ease-in-out 0.5s;
	border-top: 5px solid var(--ci200);
}
.mmclose {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 2rem;
    height: 2rem;
    z-index: 2;
    transition: all 0.5s, ease-in-out 0.5s;
    transform: rotate(0);
    cursor: pointer;
  }
  .mmclose:hover {
    transition: all 0.5s, ease-in-out 0.5s;
    transform: rotate(180deg);
  }
  .megaDropdown_inner {
    padding: 2rem;
    display: flex;
    gap: 2rem
  }

  .megaDropdown_1 .megaSubnav {
    flex: 0 1 33.333%;
  }

  .megaSubnav ul {
    text-transform: none;
  }

  .megaSubnav li {
    display: flex;
    align-items: center;
  }
  .megaSubnav li::before {
    font-family: var(--font_bold);
    font-size: var(--font_size07);
    content: '>';
    color: var(--ci200);
  }

  .megaSubnav a, .megaSubnav strong {
    font-family: var(--font_bold);
    display: inline-block;
    padding: 1rem 1rem 1rem .5rem;

  }
  .megaSubnav a, .megaSubnav a:hover {
    border: none;
  }
  .megaSubnav a:hover {
    color: var(--ci300);
  }
  .megaSubnav strong.active {
    color: var(--ci200) !important;
    background: none !important;
    border: none !important;
  }
  .megaSubnav a.trail {
    background: none;
  }

  .megaSubnav a::after, .megaSubnav strong::after {
    height: 0;
    overflow: hidden;
  }



/* Breadcrumb-Navigation */

.navpath {
    background-color: var(--lightTheme-blue01);
    background: var(--gradient-lightTheme-01);
    z-index: 10;
    padding: 1.5rem 0;
    margin-bottom: 0;
}


.mod_breadcrumb {
    padding: 0 4rem;
}


.mod_breadcrumb ul {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin:0 auto;
}

.mod_breadcrumb li {
    display: flex;
    align-items: center;
    padding: 0.25rem 0.5rem 0.25rem 0;
    font: var(--font_size04) var(--font_semibold);
    color: var(--white100);
}

.mod_breadcrumb li::after {
    padding-left:.5rem;
    content:'»';
}

.mod_breadcrumb li:last-child::after {
    content:'';
}

.mod_breadcrumb a {
    display: flex;
    color: var(--white100);
}

.mod_breadcrumb a:hover {
    color: var(--ci200);
}
.mod_breadcrumb .active {
    color: var(--ci300);
}

.mod_breadcrumb li:first-child span {
    width: 0px;
    height: 0px;
    overflow: hidden;
}
.mod_breadcrumb li:first-child a::after {
    display: block;
    content:'';
    background-image: url(../../theme/layout/svg/MS_Logo_only.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 2rem;
    width: 2rem;
    height: 2rem;
}


/* Footer-Navigation */

footer a  {
    color: var(--white100);
}
footer a:hover {
    color: var(--ci300);
}
footer nav strong, footer a:active {
    color: var(--ci200);
    font-weight: normal;
    font-style: normal;
}

.fooNav {
    font-family: var(--font_semibold);
    font-size: var(--font_size05);
}
.fooNav li {
    display: flex;
    /*align-items: center;*/
    padding-block: .25em;
  }
  .fooNav li::before {
    font-family: var(--font_semibold);
    font-size: var(--font_size05);
    content: '>';
    color: var(--ci200);
    padding-right: .25em;
  }



/* Sitemap */
.mod_sitemap {
    padding: 1rem;
}
.mod_sitemap ul {
    padding-left: 2rem;
}
.mod_sitemap ul.level_1 a {
    font-family: var(--font_bold);
    font-size: var(--font_size06);
}
.mod_sitemap ul.level_2 a {
    font-family: var(--standard);
    font-size: var(--font_size04);
}
.mod_sitemap li {
    padding: 0.5rem 0;
}



/* MMenu */

.hamburger {
    display: none;
    align-self: center;
}



body.mm-wrapper--opened- #wrapper {
    width: 100%;
    height: 100vh;
    position: fixed;
    overflow: hidden;
    display: block;
    cursor: pointer;
}

.mm-menu--theme-light, .mm-menu--theme-light-contrast, .mm-menu--theme-dark, .mm-menu--theme-dark-contrast, .mm-menu--theme-white, .mm-menu--theme-white-contrast, .mm-menu--theme-black, .mm-menu--theme-black-contrast {
    --mm-color-background: linear-gradient(to bottom, var(--ci500) 0%, var(--ci400) 100%);
    --mm-color-border: var(--ci200);
    --mm-color-icon: var(--ci200);
    --mm-color-text: var(--white100);
    --mm-color-text-dimmed: rgb(0 0 0 / 0.4);
    --mm-color-background-highlight: var(--ci500);
    --mm-color-background-emphasis: var(--ci100);
    --mm-color-focusring: var(--ci300);
  }


.mm-panels, .mm-panel {
    background-color: var(--ci600);
}

.mm-listitem.trail a.mm-btn--next,
.mm-listitem.trail a.trail {
    background-color: var(--ci100);
    color: var(--white100);
}
.mm-listitem.trail.submenu.mm-listitem--opened .mm-listitem__btn::after {
    border-color: var(--white100);
}





.mm-navbar__title > span {
    color: var(--white100) !important;
    font-family: var(--font_headline_black);
    font-size: var(--font_size07);
}