/* Flexnav Base Styles */
.flexnav {
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  transition: none;
  -webkit-transform-style: preserve-3d;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
  max-height: 0; 
}

.flexnav.opacity {
  opacity: 0;
}

.flexnav.flexnav-show {
  max-height: 2000px;
  opacity: 1;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out; 
}

.flexnav.one-page {
  position: fixed;
  top: 50px;
  right: 5%;
  max-width: 200px; 
}

.flexnav li {
  font-size: 100%;
  position: relative;
  overflow: hidden; 
}

.flexnav li a {
  position: relative;
  display: block;
  padding: .96em;
  z-index: 2;
  overflow: hidden;
}

.flexnav li ul {
  width: 100%; 
}

.flexnav li ul li {
  font-size: 100%;
  position: relative;
  overflow: hidden; 
}

.flexnav li ul.flexnav-show li {
  overflow: visible; 
}

.flexnav li ul li a {
  display: block; 
}

.flexnav ul li ul li a { }
.flexnav ul li ul li ul li a { }

.flexnav .touch-button {
  position: absolute;
  z-index: 999;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  display: inline-block;
  text-align: center; 
  border-left: 1px solid #bababa;
}

.flexnav .touch-button:hover {
  cursor: pointer; 
}

.flexnav .touch-button .navicon {
  position: relative;
  font-size: 12px;
  font-style: normal;
}

.flexnav .touch-button.active i.navicon:before {
  content: "\f077";
  font-family: FontAwesome;
  font-size: 35px;
}

.flexnav .touch-button i.navicon:before {
  content: "\f078";
  font-family: FontAwesome;
  font-size: 35px;
}

.menu-button {
		position: relative;
		display: block;  
		color: #222222;
		cursor: pointer;  
		width: 70px;
}
  
#handymenue, 
#handymenue + #ebene1u2ext li {
		position: absolute;
		z-index: 10000;
		width: 100%;
		top: 1px;
}

ul.handymenue {
		border: 1px solid #c7c7c7;
		-webkit-box-shadow: inset 0px 0px 0px 1px rgb(255, 255, 255);
		background-color: #e3e3e3;
		box-shadow: inset 0px 0px 0px 1px rgb(255, 255, 255);
}

#handymenue ul.handymenue li.ebene1 a, 
#handymenue + #ebene1u2ext a {
  font-size: 115%;
  border-bottom: 0;
  display: block;
  width: 80%;
  padding: 15px 0 13px 10px;
}

#handymenue ul.handymenue li.ebene1 {
  border-bottom: 1px solid #dcdcdc;
}

#handymenue ul.handymenue li.ebene2 {
  border-bottom: 1px solid #d4d4d4;
}

#handymenue ul.handymenue li.ebene1
#handymenue ul.handymenue li.ebene2,
#handymenue ul.handymenue li.ebene3,
#handymenue ul.handymenue li.ebene4,
#handymenue ul.handymenue li.ebene5 {
	list-style: none;
}

#handymenue ul.handymenue li.ebene2,
#handymenue ul.handymenue li.ebene3,
#handymenue ul.handymenue li.ebene4,
#handymenue ul.handymenue li.ebene5 {
	padding-left: 1em;
}

#handymenue ul.handymenue li.ebene3,
#handymenue ul.handymenue li.ebene4,
#handymenue ul.handymenue li.ebene5 {
	border-bottom: 1px solid #c7c7c7;
}

#handymenue ul.handymenue li.ebene1.letztes,
#handymenue ul.handymenue li.ebene2.letztes,
#handymenue ul.handymenue li.ebene3.letztes,
#handymenue ul.handymenue li.ebene4.letztes,
#handymenue ul.handymenue li.ebene5.letztes {
	border-bottom: none;
}

#handymenue ul.handymenue2,
#handymenue ul.handymenue3,
#handymenue ul.handymenue4,
#handymenue ul.handymenue5 {
	border-top: 1px solid #c7c7c7;
	border-left: 1px solid #c7c7c7;
	margin-left: -1px;
}
  
.menu-button .touch-button i {
  display: none;
}  

.menu-button.one-page {
  position: fixed;
  top: 0;
  right: 5%;
  padding-right: 45px; 
}

.menu-button .touch-button {
  background: transparent;
  position: absolute;
  z-index: 999;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
  display: inline-block;
  text-align: center; 
}

.menu-button .touch-button .navicon {
  font-size: 16px;
  position: relative;
  top: 1em;
  color: #666; 
}

@media all and (min-width: 750px) {
  body.one-page {
    padding-top: 70px; 
  }

  .flexnav {
    overflow: visible; 
  }
  
  .flexnav.opacity {
    opacity: 1; 
  }
  
  .flexnav.one-page {
    top: 0;
    right: auto;
    max-width: 1080px; 
  }
  
  .flexnav li {
    position: relative;
    list-style: none;
    float: left;
    display: block;
    background-color: #a6a6a2;
    overflow: visible;
    width: 20%; 
  }
  
  .flexnav li a {
    border-left: 1px solid #acaca1;
    border-bottom: none; 
  }
  
  .flexnav li > ul {
    position: absolute;
    top: auto;
    left: 0; 
  }
  
  .flexnav li > ul li {
    width: 100%; 
  }
  
  .flexnav li ul li > ul {
    margin-left: 100%;
    top: 0; 
  }
  
  .flexnav li ul li a {
    border-bottom: none; 
  }
  
  .flexnav li ul.open {
    display: block;
    opacity: 1;
    visibility: visible;
    z-index: 1; 
  }
  
  .flexnav li ul.open li {
    overflow: visible;
    max-height: 100px; 
  }
  
  .flexnav li ul.open ul.open {
    margin-left: 100%;
    top: 0; 
  }

  .menu-button {
    display: none; 
  } 
}

.oldie body.one-page {
  padding-top: 70px; 
}

.oldie .flexnav {
  overflow: visible; 
}

.oldie .flexnav.one-page {
  top: 0;
  right: auto;
  max-width: 1080px; 
}

.oldie .flexnav li {
  position: relative;
  list-style: none;
  float: left;
  display: block;
  background-color: #a6a6a2;
  width: 20%;
  min-height: 50px;
  overflow: visible; 
}

.oldie .flexnav li:hover > ul {
  display: block;
  width: 100%;
  overflow: visible; 
}

.oldie .flexnav li:hover > ul li {
  width: 100%;
  float: none; 
}

.oldie .flexnav li a {
  border-left: 1px solid #acaca1;
  border-bottom: none;
  overflow: visible; 
}

.oldie .flexnav li > ul {
  background: #acaca1;
  position: absolute;
  top: auto;
  left: 0;
  display: none;
  z-index: 1;
  overflow: visible; 
}

.oldie .flexnav li ul li ul {
  top: 0; 
}

.oldie .flexnav li ul li a {
  border-bottom: none; 
}

.oldie .flexnav li ul.open {
  display: block;
  width: 100%;
  overflow: visible; 
}

.oldie .flexnav li ul.open li {
    width: 100%; 
}

.oldie .flexnav li ul.open ul.open {
  margin-left: 100%;
  top: 0;
  display: block;
  width: 100%;
  overflow: visible; 
}

.oldie .flexnav ul li:hover ul {
  margin-left: 100%;
  top: 0; 
}

.oldie .menu-button {
  display: none; 
}

.oldie.ie7 .flexnav li {
  width: 19.9%; 
}
