.head-menus.mobile { overflow: inherit; position: absolute; display:flex; flex-direction: column; right: 0; top: 108px; z-index: 2; width: 100%; margin:0; padding:0;--mainmenu-mob:0; }
.head-menus.mobile .button { text-align:right; position:absolute; right: 15px; top: -69px; z-index:4; }

.head-menus.mobile>:not(.button) { display:none; }
.head-menus.mobile .mobile-search { padding: 15px; background-color: #dadada; }
.head-menus.mobile .mobile-search .search-wrap { width:100%; line-height:30px; border:none; border-radius: 0; display: flex; }
.head-menus.mobile .mobile-search .search-wrap input { width:96%; padding: 8px 1% 8px 3%; border:none; line-height:30px; font: 1em var(--fontNav); outline: none; }
.head-menus.mobile .mobile-search .search-wrap button { display: block; width:40px; background: #fff; border-style: none none none solid; border-color: #dadada; border-width: 1px; border-radius: 0;}
.head-menus.mobile .mobile-search .search-wrap button::before { content: '\f002'; font: 300 1em var(--fontAwesome); color: #999; }

.head-menus.mobile .main-menu { display: none; background-color:#fff; position: relative; top: var(--mainmenu-mob); }

.head-menus.mobile .navbar { position:relative; z-index:1; }
.head-menus.mobile .navbar ul > li { border-top: 1px dotted #8b8b8b; margin:0 15px; }
.head-menus.mobile .navbar ul > li:first-of-type { border:none; }
.head-menus.mobile .navbar .nav-sec { display:none; background-color:#fff; width:100%; z-index:2; }
.head-menus.mobile .navbar .nav-sec li.back-link a::before { content: '\f053'; font: 300 1em var(--fontAwesome); color: #999; }
.head-menus.mobile .navbar a { margin:0 15px; height:49px; display:flex; position:relative; align-items: center; font: 1em var(--fontNav); color:var(--contentBlue); text-transform: uppercase; background-color:#fff; }
.head-menus.mobile .navbar a.current { color:#b0b5b4; }
.head-menus.mobile .navbar .has-sub > a::after { position:absolute; right:0; content: '\f054'; font: 300 1em var(--fontAwesome); color: #999; }

.head-menus.mobile .nav-header { order: 1; background-color:#fff; padding: 9px 30px 10px 30px; border-top: 1px dotted #8b8b8b; position:relative; z-index: 2; top:var(--mainmenu-mob); }
.head-menus.mobile .nav-header a { font: 0.875em var(--fontNav); color: #6c6c6c; padding: 9px 0 10px 0; }
.head-menus.mobile .nav-header ul { display: flex; justify-content: space-between; }

/* Nav Allgemein */
nav ul { list-style: none; margin: 0; padding: 0; }

/* Nav Main Toggle */
.button label { display: none; }
button.navbar-toggle { padding: 0;  border: 0; background-color: transparent; outline: none; cursor: pointer; width: 36px;  }
button.navbar-toggle .icon-bar {background-color: var(--contentBlue); height: 4px; display: block; }
button.navbar-toggle .icon-bar + .icon-bar { margin-top: 7px; }
header .head-menus .button.show-menu+.main-menu { max-height: 100em; transition: max-height 600ms ease-in-out; }
header .head-menus .button.show-menu button .icon-bar { display: none; }
header .head-menus .button.show-menu button::after { content: '\f00d'; font: 300 40px var(--fontAwesome); color: var(--contentBlue); }

/* Breadcrumb */
.breadcrumb { background-color: var(--contentGreen); overflow: hidden; font-size: clamp(.8em,2vw,1.1em); }
.breadcrumb ol { list-style: none; display: flex; flex-wrap: wrap; max-width: 1320px; margin: 16px auto; padding: 0 15px;  color: #fff; font-family: var(--fontNav);}
.breadcrumb ol a { color: #fff; }
.breadcrumb ol a:hover { }
.breadcrumb ol a.home::before { content: '\f015';}
.breadcrumb ol li{}
.breadcrumb ol li+li::before { content: '\f054';  font: 300 .87em var(--fontAwesome); margin: 0 .65em; }

/* Sec-Nav M-Spalte */
nav.sub-nav { background-color: var(--contentGreen); width: 100%; padding: 22px; font-family: var(--fontNav); border-bottom: 30px solid #fff; box-sizing: border-box; }
nav.sub-nav ul  { display: flex; flex-direction: column; gap: 4px;}
nav.sub-nav a { display: block; color: #fff; }
nav.sub-nav a:hover, nav.sub-nav a.current { color: #d3d3d3; transition: color, 200ms;}
nav.sub-nav a.current::before { content: '|'; display: inline-block; transform: scale(.9,.85); position: relative; top: -1px; padding-right: 10px;  }
nav.sub-nav h5 { font: 1.3em var(--fontNav); margin-bottom: 3px; }

/* Zurück */
a.backward {text-align: right; display: block; margin-bottom: 50px; }
a.backward::before {content:'\f053'; font: 300 1.2em var(--fontAwesome); padding-right: 6px; position: relative; top: 3px; }

/* Footer */
footer { background-color: var(--contentGreenDark); padding: 60px 0 100px; font-family:var(--fontNav); margin-top: 60px; color: #fff; }
footer>.container { padding: 0 15px; font-size: clamp(.8em,3.5vw,1em);}
footer a { color: #fff; display: block; }
footer a:hover { color: #f0f0f0;}
footer .nav-header ul { display: flex; text-transform: uppercase; column-gap: 2em; row-gap: 1em; flex-wrap: wrap;}

footer nav.sitemap { width:100% }
footer nav.sitemap h5 { font: 1.3em var(--fontNav); text-transform: uppercase; margin: 38px 0 14px; }
footer nav.sitemap li>a {color: #e2e2e2;}
footer .meta { margin-top: 40px; flex-shrink: 0; font-size: 1.1em; }
footer .meta a { display: inline-block;}
footer .nav-footer { display: flex; justify-content: space-between; gap: 1.5%; }
footer .nav-footer a { display: block; border: 1px solid #fff; width: 150px; padding: 14px 0; text-align: center; font: clamp(.62em,2vw,.75em) var(--fontText); text-transform: uppercase; margin-top: 24px;}
footer .nav-footer a:hover {background-color: #fff; color: var(--contentGreenDark); transition: background-color, color, 350ms; }

/* Zurück-Button */
.back { display: block; text-align: right; margin: 40px 0;}
a.back::before { content:'\f053'; padding-right: 6px; position: relative; top: 2px;}

@media (min-width: 768px) {

    /* header */
    .head-menus.desktop {display: flex; flex-flow: column; align-items: flex-end; justify-content: space-between;}
    .head-menus.desktop .mobile-search { display:none; }

    /* Nav Header */
    header .nav-header ul {display: flex; font: clamp(.74em,1.4vw,.97em) var(--fontHeadline); text-transform: uppercase; gap: 15px; }
    header .nav-header li a {color: #758681;}

    /* Nav Main Toggle */
    .main-menu { display: block; position: absolute; max-height: 0; overflow: hidden; width: 100%; top: 135px; left: 0;  transition: max-height 300ms ease-out; z-index: 2; }
    .gradient { content: '';  background-image: linear-gradient(to bottom, rgba(0,0,0,.3), transparent); display: block; width: 100%; height: 100vh; }

    /* Nav Main Toggle */
    .head-menus.desktop .button { display: flex; align-items: center; height: 46px;}
    .head-menus.desktop .button label { font: 1.6em var(--fontHeadline); display: block; color: #2f4751; text-transform: uppercase; margin: 0 16px 0 0; cursor: pointer;  }
    .head-menus.desktop .button.show-menu button .icon-bar { display: none; }
    .head-menus.desktop .button.show-menu button::after { content: '\f00d'; font: 300 40px var(--fontAwesome); }
    header.fixed .head-menus.desktop .button { padding-bottom: 0; }

    /* Main Menu Nav 1 */
    nav.navbar {  background-color: var(--contentGreen); padding: 0 0 36px 15px; font-size: clamp(.72em,1.6vw,.9em); box-sizing: content-box; --navWidth: clamp(312px,41vw,650px); --navGap: clamp(36px,2vw,60px); }
    nav.navbar>ul { max-width: 1320px; margin: 0 auto; padding: 30px 0; position: relative; font: 1.5em var(--fontNav); text-transform: uppercase;  }
    nav.navbar>ul>li { width: var(--navWidth);}
    nav.navbar>ul li a { padding: 10px 0 8px; border-bottom: 1px dotted #fff; cursor: pointer; color: #fff; display: flex; justify-content: space-between; }
    nav.navbar>ul>li>a::after { content: '\f054'; font: 300 .7em var(--fontAwesome); position: relative; top: 9px; }
    nav.navbar>ul li a.current { color: #f1820d; }

    /* Main Menu Nav 2 */
    nav .nav-sec { max-height: 0; overflow: hidden; position: absolute; left: var(--navWidth); top: 0; width: clamp(420px,51vw,705px); overflow-y: scroll; scrollbar-width: none; -ms-overflow-style: none; }
    nav .nav-sec::-webkit-scrollbar { width: 0; height: 0; }
    nav ul.dropdown-menu { border-left: 1px solid #fff; padding: 0 var(--navGap); margin: var(--navGap) 0 var(--navGap) var(--navGap); min-height: 350px; text-transform: none;}
    nav ul.dropdown-menu li:first-child { text-transform: uppercase;}

    /* Sec-Nav M-Spalte */
    nav.sub-nav { font-size: 1.2em; padding: 24px 30px; }

    /* Footer */
    footer .footer-items {display: flex; justify-content: space-between; }
    footer nav.sitemap ul { display: flex; flex-wrap: wrap; gap: 7.5%; margin-right: 1.5em;  hyphens: auto;}
    footer .nav-footer { flex-direction: column; }
}

@media (min-width: 992px) {
    a.backward { margin-bottom: 0;}

}

@media (min-width: 1320px) {
    /* Breadcrumb */
    .breadcrumb ol { padding:0; }

    /* Nav Main Toggle */
    .main-menu { top: 167px;}

    /* Footer */
    footer>.container { padding: 0;}

}
