#navcontainer nav {
margin: 0;
z-index: 1;
float: left;
width: 100%;
position: relative;font-family: "ouma-devanagari", sans-serif;
}

.headnav {
    position: absolute; top: 50px; right: 20%; -webkit-transition: all 0.5s ease-in;
-moz-transition: all 0.5s ease-in;
transition: all 0.5s ease-in;
}
.headnav a {
    display: inline-block; padding: 13px; text-transform: uppercase; font-weight: 500;
}

#navcontainer nav ul
{
			float: left;
            margin: 0;
			padding: 0;
			list-style-type: none;
            width: 100%;
}

#navcontainer nav ul li {
                         display: block;
                         float: left;
                         margin: 0; padding: 0; width: 51%;
                         position: relative;
                         z-index: 3;

}

#navcontainer nav ul li a {
float: left;
display: block;
padding: 20px 30px;
margin: 0; position: relative; z-index: 2;
font-size: 18px;
text-align: left; color: #fff;
box-sizing: border-box;
width:100%;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
font-weight: 400;
text-transform: uppercase;
}
ul.hauptnav > li > a::after { content: ""; width: 0; height:1px; background: transparent; position: absolute; left: 25px; bottom: 0;-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;}

#navcontainer nav ul li a span {
    display: inline-block; padding: 0 0 10px;
}
#navcontainer nav ul li a:hover span {
    padding: 0 0 8px;
}

#navcontainer nav ul li a:link, #navcontainer nav ul li a:visited {
text-decoration: none;
}
#navcontainer nav ul li a.aktiv {
color: #FCD7B8;
}
#navcontainer nav ul li a:hover, #navcontainer nav ul li a:active {
 color:#FCD7B8;
}



#navcontainer nav ul.unternav {
position: absolute;
top: 0; z-index: 5;
left: 100%; padding:10px 0 0;
width: 100%;
min-width: 220px;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
opacity: 0;
display: block;
visibility: hidden;
}


.vpg nav ul.sichtbar { opacity: 1 !important; top:0; visibility: visible !important; }


#navcontainer nav ul.unternav li {width: 100%; margin: 0; padding: 0;}
#navcontainer nav ul.unternav li a {
padding: 5px 25px;
font-size: 0.9em;
font-weight: 400;
border: none;
height: auto;
width: 100%;
text-align: left;
text-transform: none; position: relative;
font-family: "Montserrat", sans-serif;
}


#navcontainer nav ul.unternav li a:link, #navcontainer nav ul.unternav li a:visited {
color: #fff;text-shadow: none;
}

#navcontainer nav ul.unternav li a:hover, #navcontainer nav ul.unternav li a:active {
 color: #FCD7B8;
}

#navcontainer nav ul.unternav li a.aktiv2 {
 color: #FCD7B8;
}

#navcontainer nav ul.unternav li:last-child a {
    border-bottom: 0;
}

#footnav ul
{
			float: right;
            margin: 0;
			padding: 0;
			list-style-type: none; display: flex; flex-wrap: nowrap; justify-content: center;
}

#footnav ul li {
                         display: block;
                         float: left;
                         margin: 0; padding: 0;

}

#footnav ul li a {display: block; padding:30px 20px;
float:left;
}
#footnav ul li a:hover {

}
#footer a {
    color: #fff;
}

#footer a:hover {
    color: #FCD7B8;
}
.social a:hover svg path{
    fill: #FCD7B8;
}

ul.footnav li a {
    text-transform: uppercase; display: block;
}

span.qn {display: none; font-family: icons; font-size: 1.5em;
position: absolute; top: 5px; right: 0; z-index: 4; width: 20px; height: 25px; cursor: pointer; padding: 12px; color:#fff;
transform: rotate(-90deg);-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
}
nav ul li:hover span.qn {
transform: rotate(0deg);
}

#copyright a {
    color: #fff;
}

a.totop {
    bottom: 0;
    position: fixed;
    right: 30px;z-index: 9; display: block;
    font-family: 'icons'; font-size: 1.5em; z-index: 30;
    background:#5D2131; background: rgba(93, 33, 49, 0.8);; color: #fff !important; padding: 10px 20px;text-decoration: none;
    border-top-left-radius: 5px; border-top-right-radius: 5px;
}
a.totop:hover {  background: #000; text-decoration: none;}


#langnav {
    position: absolute; top: 50px; right:2%; -webkit-transition: all 0.5s ease-in;
-moz-transition: all 0.5s ease-in;
transition: all 0.5s ease-in;
}
#langnav h4 {
    display: none;
}
#langnav a {
    display: inline-block; padding: 13px 5px; text-transform: uppercase; font-weight: 500; position: relative;
}
#langnav a.aktiv {
    font-weight: bold;
}

#langnav a:last-child::before {
 content:"/"; position: absolute; top: 13px;left: -3px;
}

@media only screen and (min-width: 960px) {

.fixiert .headnav {
    top: 25px;
}
.fixiert #langnav {
    top: 25px;
}

}

.social  {  text-align: center; margin: 15px 0; padding: 0; }
.social a {display: inline-flex; margin:5px;  padding: 0; text-decoration: none; font-weight: 400;
box-sizing: border-box; height:40px; color: #4A4A4A !important; text-align: center; text-decoration: none !important;  }
.social a span { justify-content: center; align-items: center; display: flex;}
.social a span svg {
    float: left; width: 100%;
}

.social a#fblink span { transform: translateY(2px); }
.social a.instlink { font-family: 'icons'; font-size:1.8em; position: relative; line-height: 27px;}
.social a.tellink::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  font-size: 1.1em;
  content: "\e804";
}

.social a:hover {
    color: #5D2131 !important; font-weight: 400 !important;  text-decoration: none !important;
}


#navinner .social {
    float: left; width: 100%; text-align: left; padding: 0 5px; box-sizing: border-box;
}


 #menuelink {display: none; position: absolute; top:50px; right: 10%; margin:5px; padding: 2px 5px;text-decoration: none; width: 30px; height: 30px; z-index: 101;
 -webkit-transition: all 0.5s ease-in;
-moz-transition: all 0.5s ease-in;
transition: all 0.5s ease-in;}

 #menuelink span { display: block; float: left; width: 40px; height: 2px; background:var(--designfarbe1); position: absolute; top: 7px; left: 0;
-webkit-transition: all 0.2s;
-moz-transition: all 0.2s;
transition: all 0.2s;
transform-origin: center;}

.fixiert #menuelink {
    top: 25px;
}
 #menuelink.open span {

 }

#menuelink span#mlm { top: 15px; }
#menuelink span#mlu { top: 23px; }
#menuelink.open span#mlo {-webkit-transform: rotate(45deg) translate(7px,8px); -moz-transform: rotate(45deg) translate(7px,8px); transform: rotate(45deg) translate(7px,8px); }
#menuelink.open span#mlm { display: none; }
#menuelink.open span#mlu {-webkit-transform: rotate(-45deg) translate(4px,-4px); -moz-transform: rotate(-45deg) translate(4px,-4px); transform: rotate(-45deg) translate(4px,-4px); }


a#nulink { font-family: icons; font-size: 2.0em; text-decoration: none; position: absolute;
padding:10px 0; bottom: 5%; left: 50%; margin: 0 0 0 -25px;
width: 50px; height: 50px; box-sizing: border-box;
font-weight: normal;
color: #fff;
z-index: 200; text-align: center;
opacity:0.7;-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}
#bilder:hover a#nulink {
bottom:3%;
}
a#nulink:hover {opacity:0.9; color: #fff; }

.iglink {
    font-family: icons; font-size: 2.7em; margin: 10px 0; display: inline-block;
}

.shareandprint {float: left; font-family: icons; margin: 10px 0; }
.shareandprint a {display: block; float: left; padding: 10px; margin: 0 5px; font-size: 1.4em; color: #fff !important; width:30px; height: 30px; line-height: 30px; text-align: center; border-radius: 40px; -moz-border-radius: 40px; -webkit-border-radius: 40px; background: #666; }
.shareandprint a:hover { background: rgb(136,221,251); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(136,221,251,1) 0%, rgba(41,137,216,1) 69%, rgba(1,119,189,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(136,221,251,1) 0%,rgba(41,137,216,1) 69%,rgba(1,119,189,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(136,221,251,1) 0%,rgba(41,137,216,1) 69%,rgba(1,119,189,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88ddfb', endColorstr='#0177bd',GradientType=0 ); /* IE6-9 */ }



.mobilenav #navinner {
    margin-right: -60%; -webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
transition: all 0.5s ease;
}
.mobilenav.open #navinner {
    margin-right: 0;
}

span.qn {display: block; z-index: -2;}

.mobilenav {display: none;}
#navcontainer nav {  width: 70%; margin: 200px 15% 50px; padding:0; text-align: center; }
#navcontainer nav ul {width: 100%;flex-wrap:wrap;}
#navcontainer nav ul li {
                         display: block;
                         float: left;
                         z-index: 2;
                         margin: 0; box-sizing: border-box; padding: 5px 10px;
}

#navcontainer nav ul li a {
padding: 12px 0;
margin: 0;
border-right: none;
border-left: none; font-size: 1.4em; height: auto;text-shadow: none;
}
#navcontainer nav ul li a span {padding: 0 !important; border: 0 !important;}

#navcontainer nav ul li a:hover, #navcontainer nav ul li a:active {
text-decoration: none;
border-left: none; 
border-right: none;margin: 0;
}

#navcontainer nav ul li a.aktiv {
border-left: none;
border-right: none; margin: 0;
}




#menuelink {display: block;}

#sprache { position: absolute;}
#unternav {float: left; width: 100%;padding: 0 0 10px;}

a#nulink { font-size: 2.0em;
padding:10px 0; bottom: 5%;margin: 0 0 0 -25px;
width: 50px; height: 50px; }


#kalender {text-align: center; position: relative; background: #fff; padding: 10px; font-size: 1.2em; width: 100%; overflow: auto; }
table.kalendertab {text-align: center; margin: 0 auto; width: 100%; max-width:1060px; table-layout: fixed; min-width: 800px; }
table.kalendertab tr.tabhead td {padding: 0 0 10px; color: var(--designfarbe1); font-weight: bold; font-size: 1.4em; text-align: center; }
table.kalendertab tr.tabhead td a {display: inline-block; padding: 0 7px; margin: 0 10px; color:#fff; background: var(--designfarbe1); font-family: icons;
border-radius: 30px; -moz-border-radius: 30px; -webkit-border-radius: 30px; box-sizing: border-box; width:40px; height:40px; text-align: center; font-size: 30px;}
table.kalendertab tr.tabhead td a:hover { background: #FCD7B8; color: var(--designfarbe1); }
table.kalendertab tr.tabwd td {font-weight: bold;}
table.kalendertab tr td.heute {
    color: var(--designfarbe1);
}

table.kalendertab td {vertical-align: top;}
table.kalendertab td span {display: block; width: 20px; height: 19px; padding: 1px 0 1px 0;}
.terminfeld > a {display: inline-block; padding:5px 5px; color:#fff; background: var(--designfarbe1);
border-radius: 30px; -moz-border-radius: 30px; -webkit-border-radius: 30px; min-width: 20px; box-sizing: border-box;width:40px; height:40px;}
.terminfeld > a:link,.terminfeld > a:visited {color: #fff;}
.terminfeld > a:hover {text-decoration: none; color: #000; background: #FCD7B8; }



#kalender .cellinfo {
    font-size: 0.75em; width: 100%;
}

#kal > p {
 border-bottom: 1px dashed #fff;
 margin: 5px 0; padding: 5px 0;
}
.kalendertab2 {
    width: 100%;border-spacing: 0;
}

.kalendertab2 tr td {
  border-bottom: 1px dashed #fff;
}
.kalendertab2 tr:hover td {
  background: #fff;
}

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

#navcontainer nav { margin: 150px 10% 30px;width: 80%; }
#navcontainer nav ul li {
                         display: block;
                         float: left;
                         z-index: 2;
                         width: 100%;
}
#navcontainer nav ul.unternav {display: none; position: relative; top: 0; width: 100%;padding: 0;-webkit-transition:none;
-moz-transition:none; left: 0;
transition:none;
opacity: 1 !important; top: 0; visibility: visible !important;}
#navcontainer nav ul.umenaktiv { display: block; visibility: visible !important; position: relative; top: 0; width: 100%;}
#navcontainer nav ul.unternav li {width: 100%;}
#navcontainer nav ul.unternav li a {margin: 0;width: 100%; font-size: 1.0em;  }
span.qn {display: block; z-index: 4;}

#kalender {
    font-size: 1.0em;
}
.terminfeld > a, table.kalendertab tr.tabhead td a { width: 35px; height: 35px;}

}
@media only screen and (max-width: 960px) {

.headnav { top: 0 !important; right: 10px;}
.fixiert #menuelink, .fixiert #langnav {
    top: 45px;
}
#menuelink { right: 15%; }

ul.footnav li a {
   text-align: center;
}

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


 #menuelink {
     right: 20%;
 }

#unternav ul li a {font-size: 1.1em;}
a.totop {padding:8px 15px;}

  #footnav {
      position: relative;
  }

 #footnav ul  {
     width: 100%;
 }


.headnav { font-size: 0.9em;}
.headnav a:first-child {
    display: none;
}

}
