﻿@charset "utf-8";

#navMenu {
    width:100%;
	background:#8f200e; /* Old browsers */
	background:-moz-linear-gradient(-45deg,  #8f200e 0%, #5aae08 100%); /* FF3.6-15 */
	background:-webkit-linear-gradient(-45deg,  #8f200e 0%,#5aae08 100%); /* Chrome10-25,Safari5.1-6 */
	background:linear-gradient(135deg,  #8f200e 0%,#5aae08 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#8f200e', endColorstr='#5aae08',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	margin:0 auto;
}
.mobileNav {
	position:absolute;
	top:74px;
	right:20px;
    display:block;
	width:45px;
	height:45px;
	z-index:99;
	background:#ece8e7;
    border-radius:4px;
}
#header.flex .mobileNav{top:16px}
.mobileNav span {
	display:block;
}
.navWrap{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width:990px) {
	#navMenu .container {width:100%;}
}
@media screen and (min-width:991px) {
	#navMenu {
		width:auto;
		background:none;
		margin:0 0 0 auto;
		box-sizing:border-box;
	}
}
@media screen and (min-width:1440px) {
	#header.flex #navMenu {margin-top:0;}
}

.mobileNav em,
.mobileNav em::after,
.mobileNav em::before {
	/* this is the menu icon */
	display:block;
	position:relative;
	height:3px;
	width:22px;
	background:#40210f;
    -webkit-border-radius:100px;
       -moz-border-radius:100px;
            border-radius:100px;
	-webkit-backface-visibility:hidden;
			backface-visibility:hidden;
}
.mobileNav em {
	/* this is the menu central line */
	margin:20.5px auto 11px;
	-webkit-transition:background-color .2s;
	        transition:background-color .2s;
}
.mobileNav em::before,
.mobileNav em::after {
	position:absolute;
	content:'';
	left:0;
	-webkit-transition:-webkit-transform .2s;
	        transition:-webkit-transform .2s;
	        transition:transform .2s;
	        transition:transform .2s, -webkit-transform .2s;
}
.mobileNav em::before {
	/* this is the menu icon top line */
	-webkit-transform:translateY(-7px);
		-ms-transform:translateY(-7px);
			transform:translateY(-7px);
}
.mobileNav em::after {
	/* this is the menu icon bottom line */
	-webkit-transform:translateY(7px);
		-ms-transform:translateY(7px);
			transform:translateY(7px);
}
.mobileNav.nav-open em {
	/* transform menu icon into a 'X' icon */
	width:26px;
	margin-left:9px;
	background-color:rgba(255, 255, 255, 0);
}
.mobileNav.nav-open em::before {
	/* rotate top line */
	width:26px;
	-webkit-transform:rotate(-45deg);
		-ms-transform:rotate(-45deg);
			transform:rotate(-45deg);
}
.mobileNav.nav-open em::after {
	/* rotate bottom line */
	width:26px;
	 -webkit-transform:rotate(45deg);
		 -ms-transform:rotate(45deg);
			 transform:rotate(45deg);
}
.menu-dropdown a {
	cursor:pointer;
}
.sp-nav-btn:before {
    content:"";
    position:absolute;
    display:block;
    top:24px;
    right:24px;
	width:14px;
    height:2px;
    margin:-1px 0 0;
	background-color:#fff;
	-webkit-transition:-webkit-transform .2s linear;
	   -moz-transition:-moz-transform .2s linear;
	    -ms-transition:-ms-transform .2s linear;
		 -o-transition:-o-transform .2s linear;
	        transition:transform .2s linear;
}
.sp-nav-btn:after {
	content:"";
	position:absolute;
	display:block;
	top:24px;
	right:30px;
	width:2px;
	height:14px;	
	margin:-7px 0 0;
	background-color:#fff;
	-webkit-transition:-webkit-transform .2s linear;
	   -moz-transition:-moz-transform .2s linear;
	    -ms-transition:-ms-transform .2s linear;
		 -o-transition:-o-transform .2s linear;
	        transition:transform .2s linear;
}
.open .sp-nav-btn:before {
	right:22px;
	width:18px;
}
.open .sp-nav-btn:after {
	top:22px;
	height:18px;
}
.open .sp-nav-btn:before,
.open .sp-nav-btn:after {
	-webkit-transform:rotate(135deg);
	   -moz-transform:rotate(135deg);
		-ms-transform:rotate(135deg);
		 -o-transform:rotate(135deg);
			transform:rotate(135deg);
}
@media screen and (min-width:991px) {
	.sp-nav-btn {
		display:none;
	}	
}
	
#menuBg{
	display:none;
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background:rgba(0, 0, 0, 0.7);
	z-index:90;
}
#navi {
	display:none;
	width:100%;
	margin:0 auto;    
}
#navi.show-on-mobile {
	display:block;
}
#navi > ul {
    list-style:none;
}
#navi > ul > li {
    padding:0;
    margin:0;	
}
#navi > ul > li > a {
	display:block;
	color:#FFF;
	font-size:1.7em;
	font-weight:bold;
	padding:15px;
}
#navi > ul > li > ul {
	display:none;
	width:100%;    
	padding:0;
	margin:0;
	list-style:none;
	box-sizing:border-box;
}
@media screen and (max-width:990px) {
	#navi {
		position:absolute;
		top:135px;
		left:0;
		text-align:left;
		background:#8f752f;
		z-index:120;
		box-shadow:0px 5px 5px rgba(0,0,0,.5);
		max-height: calc(100vh - 135px);
		overflow: auto;
	}
	#header.flex #navi {
		top:77px;
		max-height: calc(100vh - 77px);
	}
	#navi > ul {
		width:100%;
		margin:0 auto;
	}
	#navi > ul > li {
		position:relative;
		border-bottom:1px solid rgba(255,255,255,.3);
	}
	#navi > ul > li > a.open {
		color:#FFF;
		background:#40210f;
	}
	#navi > ul > li > a.linkBtn:after {
		content:"";
		display:block;    
		position:absolute;
		top:50%;
		right:25px;
		width:7px;
		height:7px;
		border-top:2px solid #FFF;
		border-right:2px solid #FFF;
		margin-top:-5px;
		z-index:2;
		-webkit-transform:rotate(45deg);
			-ms-transform:rotate(45deg);
				transform:rotate(45deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul {
		width:100%;
		background:#8f200e;
	}
	#navi > ul > li > ul > li {
		position:relative;
		width:100%;
		background:#FAF4F0;
		border-bottom:1px dashed #CCC;
	}
	#navi > ul > li > ul > li:last-child {
		border-bottom:none;
	}
	#navi > ul > li > ul > li > a {
		position:relative;
		display:block;
		color:#000;
		font-size:1.7em;
		line-height:120%;
		font-weight:bold;
		padding:15px 15px 15px 35px;
	}
	#navi > ul > li > ul > li > a:hover {
		color:#8f200e;
	}
	#navi > ul > li > ul > li > a:after {
		content:'';
		display:block;
		position:absolute;
		left:15px;
		top:50%;		
		width:6px;
		height:6px;
		margin-top:-1px;
		border-top:2px solid #000;
		border-right:2px solid #000;
		transform:rotate(45deg) translate(0,-50%);
		-webkit-transition:all 0.5s ease;
		   -moz-transition:all 0.5s ease;
			 -o-transition:all 0.5s ease;
				transition:all 0.5s ease;
	}
	#navi > ul > li > ul > li > a:hover:after {
		border-color:#8f200e;
	}
	#navi > ul > li > ul > li > a.link:after {
		content:"";
		display:inline-block;
		width:15px;   
		height:15px;
		border:0;
		margin-left:5px;
		background:url(../images/nav-icon.svg) no-repeat 50% 50%;
		background-size:cover;
		-webkit-transform:rotate(0deg);
			-ms-transform:rotate(0deg);
				transform:rotate(0deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul > li > a.link:hover:after,
	#navi > ul > li > ul > li > a.link:focus:after {
		background-image:url(../images/nav-icon-on.svg);
	}
	#navi > ul > li > ul > li > a.dropBtn {
		position:relative;
	}
	#navi > ul > li > ul > li > a.dropBtn:after {
		content:"";
		display:none;
	}
	#navi > ul > li > ul > li > a.dropBtn span:before {
		content:"";
		position:absolute;
		display:block;
		width:14px;
		height:2px;
		top:24px;
		right:24px;
		margin:-1px 0 0;
		background-color:#000;
		-webkit-transition:-webkit-transform .2s linear;
		   -moz-transition:-moz-transform .2s linear;
			-ms-transition:-ms-transform .2s linear;
			 -o-transition:-o-transform .2s linear;
				transition:transform .2s linear;
	}
	#navi > ul > li > ul > li > a.dropBtn span:after {
		content:"";
		position:absolute;
		display:block;
		width:2px;
		height:14px;
		top:25px;
		right:30px;
		margin:-8px 0 0;
		background-color:#000;
		-webkit-transition:-webkit-transform .2s linear;
		   -moz-transition:-moz-transform .2s linear;
			-ms-transition:-ms-transform .2s linear;
			 -o-transition:-o-transform .2s linear;
				transition:transform .2s linear;
	}
	#navi > ul > li > ul > li > a.dropBtn:hover span:before,
	#navi > ul > li > ul > li > a.dropBtn:hover span:after {
		background-color:#8f200e;
	}
	#navi > ul > li > ul > li > a.dropBtn.open {
		color:#FFF;
		background:#1a1d26;
	}
	#navi > ul > li > ul > li > a.dropBtn.open span:before {
		right:22px;
		width:18px;
	}
	#navi > ul > li > ul > li > a.dropBtn.open span:after {
		top:23px;
		height:18px;
	}
	#navi > ul > li > ul > li > a.dropBtn.open span:before,
	#navi > ul > li > ul > li > a.dropBtn.open span:after {		
		background-color:#FFF;
		-webkit-transform:rotate(135deg);
		   -moz-transform:rotate(135deg);
			-ms-transform:rotate(135deg);
			 -o-transform:rotate(135deg);
				transform:rotate(135deg);
	}
	#navi > ul > li > ul > li > ul {
		display:none;
		width:100%;    
		padding:0;
		margin:0;
		list-style:none;
		box-sizing:border-box;
	}
	#navi > ul > li > ul > li > ul li {
		width:100%;
		background:#FFF;
		border-bottom:1px dashed #CCC;
	}
	#navi > ul > li > ul > li > ul li:last-child {
		border-bottom:none;
	}
	#navi > ul > li > ul > li > ul li a {
		position:relative;
		display:block;
		color:#1a1d26;
		font-size:1.7em;
		line-height:120%;
		font-weight:bold;
		padding:15px 15px 15px 35px;
	}
	#navi > ul > li > ul > li > ul li a:before {
		content:"";
		display:block;    
		position:absolute;
		top:50%;
		left:15px;
		width:7px;
		height:7px;
		border-top:2px solid #1a1d26;
		border-right:2px solid #1a1d26;
		margin-top:-5px;
		z-index:2;
		-webkit-transform:rotate(45deg);
			-ms-transform:rotate(45deg);
				transform:rotate(45deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul > li > ul li a:hover {
		color:#8f200e;
	}
	#navi > ul > li > ul > li > ul li a:hover:before {
		border-color:#8f200e;
	}
	#navi > ul > li > ul > li > ul li a.link:after {
		content:"";
		display:block;    
		position:absolute;
		right:20px;
		width:15px;
		height:15px;
		border:0;
		background:url(../images/nav-icon-open.svg) no-repeat 50% 50%;
		background-size:cover;
		-webkit-transform:rotate(0deg);
			-ms-transform:rotate(0deg);
				transform:rotate(0deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul > li > ul li a.link:hover:after,
	#navi > ul > li > ul > li > ul li a.link:focus:after {
		background-image:url(../images/nav-icon-on.svg);
	}
}
@media screen and (min-width:991px) {
	.mobileNav {
		display:none;
	}
	.menu-dropdown:before {
		display:none;
	}
	#navi {
		display:flex;
		align-items: center;
		justify-content: flex-end;
		width:auto;
	}
	#navi > ul {
		display:flex;
		justify-content:space-between;
		gap: .6vw;
		margin:0;
	}
	#navi > ul > li {
		position:relative;
		display:inline-block;
		width:auto;
		text-align:left;
		margin:0;
		letter-spacing:0px;
		box-sizing:border-box;
		border-bottom:none;
	}
	#navi > ul > li > a {
		position:relative;
		color:#2e2e2e;
		font-size:1.9em;
		line-height:30px;
		padding:15px 8px;
		text-align:center;
	}
	#navi > ul > li:hover > a,
	#navi > ul > li > a.open {
		color:#8f200e;
	}
	#navi > ul > li > ul {
		position:absolute;
		display:block;
		left:0;
		width:190px;
		height:0;
		padding:0;
		letter-spacing:-9px;
		background:#FFF;
		box-sizing:border-box;
		z-index:99;
		visibility:hidden;
		opacity:0;
		overflow:hidden;
		border-radius: 10px;
	}
	#navi > ul > li:last-child > ul,
	#navi > ul > li#navm8 > ul {
		left:inherit;
		right:0;
	}
	#navi > ul > li > ul > li:first-of-type{
		border-radius: 10px 10px 0 0;
	}
	#navi > ul > li > ul > li:last-of-type{
		border-radius: 0 0 10px 10px;
	}
	#navi > ul > li > ul.focu-show {
		height:inherit;
		overflow:auto;
		opacity:1;
		visibility:visible;
		box-shadow:0 0 5px rgba(0,0,0,0.5);
	}
	#navi > ul > li > ul > li {
		position:relative;
		display:inline-block;
		width:100%;
		letter-spacing:0;
		padding:0px;
		box-sizing:border-box;
		vertical-align:top;
		margin:0;
	}	
	#navi > ul > li > ul > li + li {
		border-top:1px dashed rgba(0,0,0,.3);
	}
	#navi > ul > li > ul > li > a {
		position:relative;
		display:block;
		color:#000;
		font-size:1.7em;
		line-height:125%;
		font-weight:bold;
		padding:12px 35px 12px 15px;
		z-index:1;
	}
	#navi > ul > li > ul > li > a:hover,
	#navi > ul > li > ul > li > a:focus {
		color:#FFF;
	}
	#navi > ul > li > ul > li > a:before {
		position:absolute;
		content:"";
		width:0;
		left:0;
		bottom:0;
		height:100%;
		background:#8f200e;
		z-index:-1;
		-webkit-transition:width .3s ease-out;
			 -o-transition:width .3s ease-out;
				transition:width .3s ease-out;
	}
	#navi > ul > li > ul > li > a:hover:before,
	#navi > ul > li > ul > li > a:focus:before {
		width:100%
	}
	#navi > ul > li > ul > li > a:after {
		content:"";
		display:block;    
		position:absolute;
		right:15px;
		top:19px;
		width:9px;
		height:9px;
		border-top:1px solid #000;
		border-right:1px solid #000;
		z-index:2;
		-webkit-transform:rotate(45deg);
			-ms-transform:rotate(45deg);
				transform:rotate(45deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul > li > a:hover:after,
	#navi > ul > li > ul > li > a:focus:after {
		border-color:#FFF;
	}
	#navi > ul > li > ul > li > a.link:after,
	#navi > ul > li > ul > li > a.download:after {
		right:18px;
		width:15px;
		height:15px;
		border:none;
		background-position:50% 50%;
		background-repeat:no-repeat;
		background-size:cover;
		background-color:#9fa3a6;
		-webkit-mask-size:15px 15px;
				mask-size:15px 15px;
		-webkit-transform:rotate(0deg);
			-ms-transform:rotate(0deg);
				transform:rotate(0deg);
		-webkit-transition:all 0.3s;
		   -moz-transition:all 0.3s;    
			 -o-transition:all 0.3s;
				transition:all 0.3s;
	}
	#navi > ul > li > ul > li > a.link:after {
		-webkit-mask-image:url(../images/nav-icon-link.svg);
				mask-image:url(../images/nav-icon-link.svg);
	}
	#navi > ul > li > ul > li > a.download:after {
		-webkit-mask-image:url(../images/nav-icon-download.svg);
				mask-image:url(../images/nav-icon-download.svg);
	}
	#navi > ul > li > ul > li > a.link:hover:after,
	#navi > ul > li > ul > li > a.link:focus:after,
	#navi > ul > li > ul > li > a.download:hover:after,
	#navi > ul > li > ul > li > a.download:focus:after {
		background-color:#FFF;
		opacity:.5;
	}
}
@media screen and (min-width:1260px) {
	#navi > ul > li > a {
		font-size:2.2em;
		padding:15px;
	}
	#navi > ul > li > ul {
		width:220px;
	}
	#navi > ul > li > ul > li > a {
		font-size:1.7em;
	}
}
@media screen and (min-width:1480px) {
	#navi > ul{ gap: 1vw;}
	#navi > ul > li > a {
		font-size:2.8em;
		padding:15px;
	}
	#navi > ul > li:hover > a:after ,
	#navi > ul > li > a.open:after {
		bottom:0;
	}
	#navi > ul > li > ul > li > a {
		font-size:1.9em;
	}
}


@media print {
	#navMenu  {
		display:none!important;
	}  
}