@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon.eot');
	src:url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		url('../fonts/icomoon.woff') format('woff'),
		url('../fonts/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}








/* Common styles of menus */

.dl-menuwrapper {
	width: calc(100% + 10vw);
	left: -5vw;
	top: 0px;
	position: absolute;
  height: 77px;
}



.dl-menuwrapper .dl-trigger {
	border: none;
	width: 48px;
	height: 45px;
	text-indent: -900em;
	overflow: hidden;
	position: relative;
	cursor: pointer;
	outline: none;
  left: 5vw;
  top: 15px;
}



.dl-menuwrapper .dl-trigger:hover,
.dl-menuwrapper .dl-trigger.dl-active,
.dl-menuwrapper ul {

}

body.menuopen #dl-menu:before {
	content: " ";
	display: block;
	z-index: 99;
	background: var(--weiss);
	position: fixed;
	left: 0px;
	top: calc(var(--headerheight) + var(--topheaderheight) + 0px);
	width: 100%;
	height: 60px;
}


.dl-menuwrapper ul {
	padding: 0;
	list-style: none;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.dl-menuwrapper li {
	position: relative;
	border-bottom: dotted 1px #CCCCCC;
	list-style-image: none !important;
	list-style-type: none !important;
	list-style-position: outside !important;
	background: #FFFFFF;
}

.dl-menuwrapper ul li:nth-last-child(1),
.dl-menuwrapper ul li ul li:nth-last-child(1) {
	border-bottom: 0px;
}

.dl-menuwrapper li a,
.dl-menuwrapper li a:visited {
	display: block;
	position: relative;
	padding: 15px 20px 15px 5vw;
	color: var(--actioncolor);
	outline: none;
	text-transform: uppercase; /*seb - verhindert flash bei css-wechsel */
	font-family: var(--bold); /*seb - verhindert flash bei css-wechsel */
}

.dl-menuwrapper li a.is-active {
  color: var(--maincolor)
}

.tsh .dl-menuwrapper li a,
.tsh .dl-menuwrapper li a:visited {
	color: var(--tshschwarz);
}

.tsh .dl-menuwrapper li a:hover,
.tsh .dl-menuwrapper li a:active {
	color: var(--actioncolor);
}

.tsh .dl-menuwrapper li a.is-active,
.tsh .dl-menuwrapper li.menu-item--active-trail > a {
	color: var(--actioncolor)
}

.dl-menuwrapper li.mactive span {
	border-bottom: solid 1px #CCCCCC;
}

.dl-menuwrapper .dl-submenu {
  margin-bottom: 20px;
}

.dl-menuwrapper .dl-submenu li a {
	padding: 5px 20px 5px 7vw;
	font-family: var(--regular);
}






.dl-menuwrapper .dl-trigger span {
  background: var(--actioncolor);
  border: none;
  height: 3px;
  border-radius: 0px;
  width:100%;
  position: absolute;
  top: 10px;
  left: 0%;
  cursor: pointer;
   -webkit-transition: all .35s ease;
  transition: all .35s ease;
  display: block;
}

.tsh .dl-menuwrapper .dl-trigger span {
	background: var(--tshschwarz);
}


.dl-menuwrapper .dl-trigger span:nth-of-type(2) {
  top: 20px;
  width: 80%;
}
.dl-menuwrapper .dl-trigger span:nth-of-type(3) {
  top: 30px;
  width: 100%;
}


.dl-menuwrapper .dl-trigger:hover span {
  background: var(--maincolor);
}

.tsh .dl-menuwrapper .dl-trigger:hover span,
.tsh .dl-menuwrapper .dl-trigger.dl-active span {
	background: var(--actioncolor) !important;
}



.dl-menuwrapper .dl-trigger.dl-active .top {
  -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
  transform: translateY(10px) translateX(0) rotate(45deg);

  width:100%;
}
.dl-menuwrapper .dl-trigger.dl-active .middle {
  opacity: 0;

  width:100%;
}
.dl-menuwrapper .dl-trigger.dl-active .bottom {
  -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
  transform: translateY(-10px) translateX(0) rotate(-45deg);

  width:100%;
}







.menu-item--expanded.dl-subviewopen > span {
	display: none;
}


.dl-menuwrapper li.menu-item--active-trail,
.dl-menuwrapper li.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.dl-back > a {

}

.dl-menuwrapper li.orchester.menu-item--active-trail,
.dl-menuwrapper li.orchester.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.menu-item--active-trail {
	background: none !important;
}


.dl-menuwrapper li.konzerte.menu-item--active-trail span,
.dl-menuwrapper li.konzerte.menu-item--active-trail li.menu-item--active-trail span,
.dl-menuwrapper li.konzerte.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.konzerte li.dl-back > a {
	background-image: var(--texbraun) !important;	
}

.dl-menuwrapper li.karten.menu-item--active-trail span,
.dl-menuwrapper li.karten.menu-item--active-trail li.menu-item--active-trail span,
.dl-menuwrapper li.karten.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.karten li.dl-back > a {
	background-image: var(--texrot) !important;	
}

.dl-menuwrapper li.orchester.menu-item--active-trail span,
.dl-menuwrapper li.orchester.menu-item--active-trail li.menu-item--active-trail span,
.dl-menuwrapper li.orchester.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.orchester li.dl-back > a {
	background-image: var(--texblau) !important;
}


.dl-menuwrapper li.verein.menu-item--active-trail span,
.dl-menuwrapper li.verein.menu-item--active-trail li.menu-item--active-trail span,
.dl-menuwrapper li.verein.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.verein li.dl-back > a {
	background-image: var(--texgruen) !important;
}

.dl-menuwrapper li.musikvermittlung.menu-item--active-trail span,
.dl-menuwrapper li.musikvermittlung.menu-item--active-trail li.menu-item--active-trail span,
.dl-menuwrapper li.musikvermittlung.menu-item--active-trail li.menu-item--active-trail,
.dl-menuwrapper li.musikvermittlung li.dl-back > a {
	background-image: var(--texgelb) !important;
}










.dl-menuwrapper .dl-menu {
	margin: 32px 0 0 0;
	position: absolute;
	width: 100%;
	opacity: 0;
	pointer-events: none;
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background: #FFFFFF;
	text-transform: uppercase;
	font-family: var(--scalasansbold);
}

.dl-menuwrapper .dl-menu.dl-menu-toggle {
	transition: all 0.3s ease;
}

.dl-menuwrapper .dl-menu.dl-menuopen {
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
	background: #FFFFFF;
		-webkit-box-shadow: 1px 1px 8px 0px rgba(51,51,51,0.29);
	-moz-box-shadow: 1px 1px 8px 0px rgba(51,51,51,0.29);
	box-shadow: 1px 1px 8px 0px rgba(51,51,51,0.29);
  height: calc(100vh - var(--headerheight));
  padding-top: 60px;
  box-sizing: border-box;
  overflow: auto;
  padding-bottom: 50px;
  box-sizing: border-box;
}

/* Hide the inner submenus */
.dl-menuwrapper li .dl-submenu {
  margin-top: -10px;
	background: #FFFFFF;
}

.dl-menuwrapper li .dl-submenu li {
  border: 0px !important;
}






/* 
When a submenu is openend, we will hide all li siblings.
For that we give a class to the parent menu called "dl-subview".
We also hide the submenu link. 
The opened submenu will get the class "dl-subviewopen".
All this is done for any sub-level being entered.
*/
.dl-menu.dl-subview li,
.dl-menu.dl-subview li.dl-subviewopen > a,
.dl-menu.dl-subview li.dl-subview > a {
	display: none;
}

.dl-menu.dl-subview li.dl-subview,
.dl-menu.dl-subview li.dl-subview .dl-submenu,
.dl-menu.dl-subview li.dl-subviewopen,
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu,
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu > li {
	display: block;
}

/* Dynamically added submenu outside of the menu context */
.dl-menuwrapper > .dl-submenu {
	position: absolute;
	width: 100%;
	top: 80px;
	left: 0;
	margin: 0;
}

