@charset "UTF-8";
/* 
CSS Stylesheet by dialog im netz
*/

 :root {
     --rot: #ea6e2e;
     --blaugruen: #6297af;
     --hellblau: #b2cedb;
     --trans: .3s;
     --trans2: .5s;
 }

/* MENÜ / NAVIGATION */


nav {

}
nav ul {
    padding: 0;
    margin: 0;
}
nav > ul > li {
    margin-bottom: .75rem
}
nav ul li {
list-style: none;

}
nav > ul > li {
    padding-left: 0;
}


nav > ul > li.open ul,
nav ul ul ul.open ul,
nav > ul > li.haschildren:hover > ul ,
nav > ul > li.haschildren > ul > li.haschildren:hover > ul {
 max-height: 200px;
}

nav ul ul,
nav ul ul ul {
position: relative;
height: auto;
max-height: 0;
clear: both;
overflow: hidden;
transition: var(--trans2);
}
nav ul ul li a {
padding-left: 60px
}
nav ul ul ul {
}
nav ul ul ul li a {
    width: calc(100% - 60px);
}

nav > ul > li > a {
 font-size: 1.4rem;
}
nav a {
display: block;
text-decoration: none;
padding: 4px 4px 2px 16px;
margin-bottom: 2px;
font-size: 1rem;
color: white;
background-color: var(--blaugruen);
transition: .4s
}

nav a:hover  {
}
nav li.ac > a {
    background-color: var(--rot);
    text-decoration: none 
}
nav li.ext {
    background: transparent url('/img/style/exlink.png') 80% center no-repeat; 
    background-size: 1.5rem auto; 
}
nav li.ac ul{

}

nav ul > li {
    display: flow-root;
}
nav > ul > li > ul > li > a {
padding-left: 40px
}


#searchform {
padding: 0;
background-color: transparent;
}
#searchform  input {
 display: block;
 background-color: var(--blaugruen);
 color: white;
 float: left; 
 margin-right: 10px;
 width: calc(100% - 50px);
 padding: 5px
}
#searchform button {
 display: block;
 position: relative; 
 background: transparent url('/img/style/lupe.png') center center no-repeat; 
 height: 27px; 
 width: 27px;
 margin: 10px 0 0 0;
 padding: 3px;
 border: 0 none;
 clear: none
}

#hamburger-button{
position: fixed;
top: 0;
right: 0;
height: 70px;
width: 90px; 
transition: var(--trans);
cursor: pointer
}
#mobilebutton{
background: transparent url('/img/style/hamburger.png') center right no-repeat;
}
#mobilebutton,
#hidenav {
position: absolute;
display: block;
top:10px;
left:15px;
width: 70%;
height: 70%;
background-size: contain; 
transition: var(--trans);
opacity: 0;
}
#mobilebutton.show,
#hidenav.show{
display:block;
z-index: 252;
opacity: 1;
}
#mobilebutton.hide,
#hidenav.hide{
display:none;
opacity: 0;
z-index: -1;
 
}
#hidenav {
background: transparent url('/img/style/hidenav.png') center right no-repeat;
background-size: 80% auto; 
}
#mobilebutton span ,
#hidenav span,
#topbutton span {
visibility: hidden
}

#topbutton {
    position: fixed;
    opacity: 0;
    bottom: 0px;
    right: 0px;
    width: 60px;
    height: 60px;
    background: transparent url('/img/style/top.svg') center center no-repeat; 
    background-size: contain; 
    transition: .4s;
    z-index: 200
}
#topbutton:hover,
#topbutton:focus {
    opacity: 1!important
}
#topbutton a {
    display: block; 
    width: 60px;
    height: 60px;
    
}

#chlangform {
display: inline-block;
background-color: transparent;
padding: 0;
outline: 1px solid #a0a0a0;
border-radius: 5px;
}
#chlang {
display: inline-block;
position: relative;
margin: 0 ;
width: 120px;
height: 20px;
border: 0 none;
background-size: 60% auto;
cursor: pointer; 
}
#chlang[disabled]{
display: none
}

nav input, nav textarea,nav select {
width: calc(100% - 10px);
}

@media screen and (max-width: 680px) {

nav {
position: fixed;
left: -110%;
top: 60px;
width: 90%;
height: auto;
overflow: auto;
padding: 20px;
margin: 0;
background-color: rgba(255,255,255,.9);
box-shadow: 0 10px 20px rgba(0,0,0,.4);
z-index: 140;
transition: var(--trans)
}
nav p,
nav a {
    font-size: 1.2rem;
}
nav li{
}

#hamburger-button,
#mobilebutton {
opacity: 1;
z-index: 200;
}

}