﻿/*
natursteinwerk-wilhelm Template
creation Date: 2019-12-02
Author: Sebastian Osinski
http://www.sebbi.net
https://ddm-friends.de
*/

.empty{
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}
#topmenu-wrapper,
#topmenu-wrapper *,
#topmenu-wrapper ul.nav-child li:before,
#submenu, #submenu *{
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}

#topmenu-wrapper{
	text-align: center;
	position: fixed;
	width: 100%;
	height: 140px;
}
#topmenu-wrapper.smaller{
	height: 60px;
}

#topmenu-wrapper .main-container{
	height: 100%;
}

#top-menu{
	display: block;
	position: absolute;
	right: 0px;
	top: 60px;
}
#topmenu-wrapper.smaller #top-menu{
	top: 0px;
}

#logo_img{
	position: absolute;
	height: 100%;
	left: 0px;
	top: 0px;
	z-index: 2;
}
#topmenu-wrapper.smaller #logo_img{
}

#topmenu-wrapper ul.nav{
	display: block;
	position: relative;
	z-index: 1;
	text-align: right;
}
#topmenu-wrapper.smaller ul.nav li{
	margin-top: 20px;
}
#topmenu-wrapper.smaller ul.nav-child li{
	margin-top: 0px;
}
#topmenu-wrapper ul.nav li{
	display: inline-block;
	position: relative;
	width: auto;
	font-size: 16px;
}
#topmenu-wrapper ul.nav li a,
#topmenu-wrapper ul.nav li .nav-header{
	display: block;
	padding-left: 20px;
	padding-right: 20px;
	height: 100%;
	cursor: pointer;
	font-weight: 100;
	text-transform: uppercase;
}

#topmenu-wrapper ul.nav-child li a{
	padding-left: 0px;
	padding-right: 0px;
}

#topmenu-wrapper ul.nav-child{
	position: absolute;
	margin: 0px;
	padding: 0px;
	top: 20px;
	left: 15px;
	overflow: hidden;
	height: 0px;
	min-width: 100%;
	text-align: center;
}
#topmenu-wrapper.smaller ul.nav-child{
}
#topmenu-wrapper ul.nav li.parent ul.nav-child{
	padding-top: 1px;
}
#topmenu-wrapper ul.nav li.parent:hover ul.nav-child{
	overflow: visible;
	padding: 0px;
	padding-top: 20px;
}
#topmenu-wrapper ul.nav-child li,
#topmenu-wrapper.smaller ul.nav-child li{
	line-height: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding: 10px;
	text-align: left;
	display: block;
	overflow: hidden;
	font-size: 14px;
	margin-top: 1px;
}
#topmenu-wrapper ul.nav li.parent:hover ul.nav-child{
	height: auto;
}
#topmenu-wrapper ul.nav-child li.parent:hover{
	overflow: visible;
}


/* MENU ACTIVATOR */
#menu-activator{
	position: fixed;
	height: 20px;
	width: 30px;
	cursor: pointer;
	top: 70px;
	right: -1000px;
	z-index: 3;
}
#menu-activator > div{
	width: 100%;
	height: 3px;
	margin-bottom: 6px;
	margin-left: 0px;
	margin-right: auto;
}
#menu-activator:hover > div:nth-child(1){
	width: 80%;
}
#menu-activator:hover > div:nth-child(2){
	width: 90%;
}
#topmenu-wrapper.smaller #menu-activator{
	top: 20px;
}

#submenu{
	position: fixed;
	overflow: hidden;
	top: 140px;
	width: 100%;
	height: 0px;
	opacity: 0;
}
#submenu.opened{
	height: auto;
	opacity: 1;
}
#submenu.smaller{
	top: 60px;
}

/* MERKLISTE */
#merkliste_activator{
	position: absolute;
	top: 50%;
	right: 100px;
	transform: translateY(-50%);
	cursor: pointer;
	text-align: center;
}
.merkliste_activator_img{
	width: 30px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	vertical-align: middle;
}
.merkliste_activator_img.active,
#merkliste_activator.hasEntries .merkliste_activator_img.inactive,
.merkliste_activator_txt{
	display: none;
}
#merkliste_activator.hasEntries .merkliste_activator_img.active{
	display: block;
}


/* RESPONSIVE */
@media (max-width: 1600px){
	#merkliste_activator{
		right: 10px;
	}
}

@media (max-width: 1260px){
	.mod-languages{
		display: none;
	}
	#topmenu-wrapper #menu-activator{
		right: 30px;
		top: 20px;
	}
	
	#logo_img{
		height: 40px;
		top: 50%;
		transform: translateY(-50%);
	}
	
	#merkliste_activator{
		right: 100px;
	}
	
	#topmenu-wrapper{
		height: 60px;
	}
	#topmenu-wrapper:not(.res_act) ul.nav{
		height: 0px;
		overflow: hidden;
	}
	#topmenu-wrapper ul.nav li{
		width: 100%;
		text-align: center;
		padding: 0px;
	}
	#topmenu-wrapper ul.nav li a{
		padding: 0px;
	}
	
	#topmenu-wrapper.res_act ul.nav{
	}
	#topmenu-wrapper ul.nav > li:nth-child(1) > a{
		padding-left: 0px;
	}
	#topmenu-wrapper.res_act ul.nav li{
		display: block;
		position: relative;
		padding: 0px;
		margin: 0px;
		line-height: 35px;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	#topmenu-wrapper ul.nav-child li, 
	#topmenu-wrapper.smaller ul.nav-child li{
		text-align: center;
	}
	#topmenu-wrapper.res_act #top-menu{
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0px;
		top: 60px;
	}

	#top-menu{
		overflow: hidden;
	}
	
	#topmenu-wrapper.res_act ul.nav li.deeper.parent:after{
		content: "+";
		position: absolute;
		cursor: pointer;
		z-index: 25;
		width: 30px;
		height: 30px;
		line-height: 30px;
		left: 10%;
		top: 2px;
		font-weight: bold;
	}
	#topmenu-wrapper.res_act ul.nav li.deeper.parent.opened:after{
		content: "-";
		position: absolute;
		cursor: pointer;
		z-index: 25;
		width: 30px;
		height: 30px;
		line-height: 30px;
		left: 10%;
		top: 2px;
		font-weight: bold;
	}
	#topmenu-wrapper.res_act ul.nav li.deeper.parent ul.nav-child{
		display: none;
	}
	#topmenu-wrapper.res_act ul.nav li.deeper.parent.opened ul.nav-child{
		display: block;
	}
	#topmenu-wrapper.res_act ul.nav-child{
		position: relative;
		height: auto;
		transform: none;
		top: 0px;
		width: 100%;
		left: 0px;
	}
	#topmenu-wrapper ul.nav li.parent:hover ul.nav-child{
		padding-top: 0px;
    padding-bottom: 0px;
	}
	#topmenu-wrapper.res_act ul.nav{
		margin-left: 0px;
	}
	
	#submenu{
		top: 60px;
	}
}

@media (max-width: 800px){
	#submenu .quadbox{
		width: 120px;
		height: 120px;
	}
	#submenu .quadlink{
		width: 90px;
		height: 90px;
		font-size: 12px;
	}
}