/*
----------------------------------------------------------------------------------------

Styles MainMenu

----------------------------------------------------------------------------------------
*/

ul#mainmenu {
	margin: 0 0 20px 0;
	padding: 0;
}

ul#mainmenu li {
	margin: 0 0 8px 0;
	list-style-type: none;
	list-style-image: none;
	font-weight: bold;
	line-height: 20px;
	position: relative;
}

ul#mainmenu li a {
	display: block;
	padding: 5px 20px 5px 10px;
	margin: 0;
	color: #666;
	text-decoration: none;
	border-radius: 4px;
	background: #eee;
	background-image: linear-gradient(bottom, #dddddd 0%, #eeeeee 100%);
	background-image: -o-linear-gradient(bottom, #dddddd 0%, #eeeeee 100%);
	background-image: -moz-linear-gradient(bottom, #dddddd 0%, #eeeeee 100%);
	background-image: -webkit-linear-gradient(bottom, #dddddd 0%, #eeeeee 100%);
	background-image: -ms-linear-gradient(bottom, #dddddd 0%, #eeeeee 100%);
	position: relative;
}

ul#mainmenu li.active > a {
	color: #000;
}

ul#mainmenu .close:hover + a,
ul#mainmenu li > a:hover {
	color: #fff;
	background: #0A00BC;
}

ul#mainmenu li.has-sub a.current,
ul#mainmenu li.has-sub.active > a {
	border-radius: 4px 4px 0 0;
}

ul#mainmenu li.has-sub .level-2 a.current {
	border-radius: 4px;
}

ul#mainmenu li > a span {
	background: url('../Icons/elaflex_icon_arrows_small.png') no-repeat right 0;
	width: 10px;
	height: 10px;
	display: block;
	position: absolute;
	top: 10px;
	right: 10px;
}

ul#mainmenu span.close {
	width: 30px;
	height: 30px;
	top: 0;
	right: 0;
	position: absolute;
	display: block;
	z-index: 1;
}

ul#mainmenu span.close:hover {
	cursor: pointer;
}

ul#mainmenu li.active > a span {
	background-position: right -10px;
}

ul#mainmenu li.active .close:hover + a span,
ul#mainmenu li.active > a:hover span {
	background-position: right -37px;
}

ul#mainmenu li ul.level-3,
ul#mainmenu li ul.level-2 {
	background: #ddd;
	border-radius: 0 0 4px 4px;
	padding: 0 0 10px 0;
	display: none;
	margin: 0
}

ul#mainmenu li ul.level-3 {
	padding: 0;
	display: block;
}

ul#mainmenu .level-2 li.has-sub {
	font-weight: bold;
}

ul#mainmenu .level-2 li.active ul.level-3,
ul#mainmenu li.active ul.level-2 {
	display: block;
}
ul#mainmenu li ul.level-2 li.active {
	background: transparent url('../Icons/subnav-active.png')  0 6px no-repeat;
}

ul#mainmenu li ul.level-3 li,
ul#mainmenu li ul.level-2 li {
	margin: 0;
	font-weight: normal;
	line-height: 1.3em;
}

ul#mainmenu li ul.level-2 li a {
	background: none;
}

ul#mainmenu li ul.level-2 li a:hover {
	background: #0A00BC;
}

ul#mainmenu li ul.level-3 li a {
	padding: 3px 10px 3px 20px;
	background: none;
}

.indent-1 {
	margin-left: 10px!important;
}

.menu-flag-en {
	background: transparent url('../Icons/Flags/gb.png')  0 0 no-repeat;
	width: 16px;
	height: 12px;
	margin: 4px 0 0 0;
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.arrowLink-blue .menu-flag-en {
	margin: 4px 0 0 4px;
}

ul#mainmenu li .menu-flag-en {
	position: absolute;
	bottom: 9px;
	right: 10px;
}

ul#mainmenu li a:after {
	content: ' ';
	width: 0;
	height: 0;
	clear: both;
}

/*
----------------------------------------------------------------------------------------

Styles HeadMenu

----------------------------------------------------------------------------------------
*/

ul#headMenu {
	margin: 0;
	padding: 0;
}

ul#headMenu > li {
	margin: 0 0 4px 0;
	list-style-type: none;
	list-style-image: none;
	font-weight: bold;
	font-size: 13px;
	line-height: 20px;
	display: inline-block;
	*zoom: 1;
	*display: inline;
	position: relative;
}

ul#headMenu > li span,
ul#headMenu > li a {
	display: inline-block;
	*zoom: 1;
	*display: inline;
	padding: 7px 10px 5px 10px;
	margin: 0;
	color: #666;
	text-decoration: none;
	white-space: nowrap;
}

ul#headMenu > li span {
	cursor: default;
}

ul#headMenu li:hover > a {
	color: #333;
	background: transparent;
}

ul#headMenu li:hover > span {
	color: #333;
}

ul#headMenu li.active > span,
ul#headMenu li.active > a {
	color: #000!important;
}

ul#headMenu li ul.level-2 {
	background: #bbb;
	padding: 10px 0;
	display: none;
	margin: 0;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 10;
	border-radius: 0 0 4px 4px;
	border-top: 1px solid white;
}

ul#headMenu > li:hover ul.level-2 {
	display: block;
}

/* Menu auch bei click im ipad öffnen */
.touch ul#headMenu > li:hover ul.level-2 {
	display: none;
}

.touch ul#headMenu ul.level-2.active {
	display: block !important;
}

ul#headMenu li ul.level-2 li {
	margin: 0;
	list-style-type: none;
	list-style-image: none;
	font-weight: normal;
	line-height: 15px;
}

ul#headMenu li ul.level-2 li a {
	padding: 2px 30px 2px 10px;
	display: block;
	position: relative;
}

ul#headMenu li .menu-flag-en {
	position: absolute;
	right: 10px;
	top: 0;
}

/*
----------------------------------------------------------------------------------------

Styles LangMenu

----------------------------------------------------------------------------------------
*/

#languageMenu {
	padding: 0 5px 0 2px;
	margin-right: 20px;
	color: #666;
	display: inline-block;
	*zoom: 1;
	*display: inline;
	vertical-align: top;
	line-height: 32px;
}

#languageMenu .active,
#languageMenu .inactive,
#languageMenu a {
	color: #666;
	text-decoration: none;
	margin: 0;
	padding: 9px 8px 9px 8px;
	display: inline-block;
	*zoom: 1;
	*display: inline;
	line-height: 10px;
}

#languageMenu a {
	font-weight: bold;
	border-radius: 4px;
}

#languageMenu a:hover {
	color: #fff;
	background-color: #0A00BC;
}

#languageMenu .active {
	color: #fff;
	font-weight: normal;
}

.align_map_menubutton {
	position: absolute;
	right: 40px;
	top: 20px;
}
