
#st-menu ul,
#st-menu ul ul {
	margin: 0;
	padding: 0;
	line-height: 1em;
}

#st-menu ul:before,
#st-menu ul:after {
	content: "";
	display: table;
}

#st-menu ul:after {
	clear: both;
}

#st-menu ul { zoom: 1; }

#st-menu ul li {
	margin: 0;
	padding: 0;
	display: block;
	cursor: pointer;
	text-decoration: none;
}

#st-menu ul li .nav-item {
	position: relative;
	padding: 0;
	margin: 0;
}

/* image item */
#st-menu ul li.item-image.active > .nav-item,
#st-menu ul li.item-image > .nav-item:hover  {
	background-color: transparent;
}

#st-menu ul li.item-image img {
	max-width: 300px;
}

/* header item */
#st-menu li > span.nav-header {
	display: block;
	font-size: 24px;
	font-weight: 400;
	color: #ffffff;
	line-height: 30px;
	margin: 13px 0;
	padding-left: 26px;
	padding-bottom: 13px;
	text-shadow: none;
	text-transform: none;
	cursor: default;
}

 /* 1 level
 -----------------------------------------------------------------------------------*/
 #st-menu > ul  {
 	width: 100%;
 	text-align: center;
 }

 #st-menu > ul > li {
 	float: none;
 	padding: 0;
 	font-size: 18px;
 	margin: 0;
 	text-align: center;
 	display: block;
 	width: 100%;
 	font-weight: 300;
 	letter-spacing: 0;
 	text-transform: uppercase;
 }

 #st-menu > ul > li > .nav-item {
 	display: block;
 	width: 100%;
 	float: none;
 	line-height: 30px;
 	color: #999999;
 	-webkit-font-smoothing: antialiased;
 	-webkit-transition: all 100ms linear;
 	-moz-transition: all 100ms linear;
 	transition: all 100ms linear;
 }

 /* parent caret */
 #st-menu ul > li.parent > .nav-item:after {
 	content: "";
 	display: block;
 	position: absolute;
 	top: 50%;
 	margin-top: -3px;
 	right: 25px;
 	width: 0;
 	height: 0;
 	border-top: 3px solid transparent;
 	border-right: 3px solid transparent;
 	border-bottom: 3px solid transparent;
 	border-left: 3px solid #dddddd;
 	-webkit-transition: all 200ms linear;
 	-moz-transition: all 200ms linear;
 	transition: all 200ms linear;
 }

 /* hover/active */
 #st-menu > ul > li > .nav-item:hover,
 #st-menu > ul > li.parent:hover > .nav-item,
 #st-menu > ul > li.active > .nav-item,
 #st-menu > ul > li.alias-parent-active > .nav-item {
 	color: #000000;
 }

 #st-menu ul > li.parent:hover > .nav-item:after,
 #st-menu ul > li.active.parent > .nav-item:after {
 	border-left: 3px solid #000000;
 }

 /* Sub menus
 -----------------------------------------------------------------------------------*/
 #st-menu ul ul {
 	display: table;
 	visibility: hidden;
 	background-color: #1a1a1a;
 	min-height: 100%;
 	height: 100%;
 	width: 300px;
 	margin: 0;
 	padding: 0;
 	position: absolute;
 	top: 0;
 	bottom: 0;
 	left: 300px;
 	z-index: 9999;
 	opacity: 0;
 	cursor: default;
 	-webkit-transform-origin: 0 0;
 	-moz-transform-origin: 0 0;
 	transform-origin: 0 0;
 	-webkit-transition: all 400ms ease;
 	-moz-transition: all 400ms ease;
 	transition: all 400ms ease;
 	-webkit-transform: rotateY(-90deg); 
 	-moz-transform: rotateY(-90deg);
 	transform: rotateY(-90deg);
 	-webkit-backface-visibility: hidden; 
 	backface-visibility: hidden; 
 	-webkit-box-shadow:inset 1px 0px 0px 0px rgba(255,255,255, .05);
 	box-shadow:inset 1px 0px 0px 0px rgba(255,255,255, .05);
 }

 #st-menu ul ul li {
 	display: table-row;
 	vertical-align: middle;
 	width: 100%;
 	height: 30px;
 	max-height: 60px;
 	float: none;
 	font-weight: 300;
 	font-size: 16px;
 	margin: 0;
 	text-align: center;
 	text-transform: uppercase;
 }

 #st-menu ul ul li > .nav-item {
 	float: none;
 	display: block;
 	line-height: 24px;
 	color: #808080;
 }

 #st-menu ul ul li:first-child {
 	border-top: 1px solid #262626 !important;
 }

 #st-menu ul ul li > span.nav-header {
 	color: #ffffff;
 }

 /* sub menus level 2+ */
 #st-menu ul ul ul {
 	visibility: hidden;
 	left: 100%;
 }

 /* parent item caret */
 #st-menu ul ul > li.parent > .nav-item:after {
 	content: "";
 	display: block;
 	width: 0;
 	height: 0;
 	border-top: 3px solid transparent;
 	border-right: 3px solid transparent;
 	border-bottom: 3px solid transparent;
 	border-left: 3px solid #808080;
 	position: absolute;
 	top: 50%;
 	right: 23px; 
 	margin-top: -3px;
 	-webkit-transition: all .2s ease;
 	-moz-transition: all .2s ease;
 	transition: all .2s ease;
 }

 /* hover/active */
 #st-menu ul ul li > .nav-item:hover,
 #st-menu ul ul li.parent:hover > .nav-item,
 #st-menu ul ul li.active > .nav-item,
 #st-menu ul ul li.alias-parent-active > .nav-item {
 	color: #ffffff;
 }

 #st-menu ul ul > li.parent > .nav-item:hover:after,
 #st-menu ul ul > li.parent:hover > .nav-item:after,
 #st-menu ul ul > li.active.parent > .nav-item:after {
 	border-left: 3px solid #ffffff;
 }

 /* no JS, active sub menu */
 #st-menu ul li:hover > ul  {
 	visibility: visible;
 	opacity: 1;
 	-webkit-transform: rotateY(0deg);
 	-moz-transform: rotateY(0deg); 
 	transform: rotateY(0deg);
 }

 /* Mobile Menu 
 -----------------------------------------------------------------------------------*/
 /* change body background */
 html.active-mobile-menu {
 	background-color: #262626;
 }

 /* menu container */
 #st-mobile-menu {
 	display: block;
 	visibility: hidden;
 	overflow: hidden;
 	opacity: 0;
 	position: absolute;
 	top: 0;
 	left: 0;
 	padding: 0;
 	height: 100%;
 	width: 100%;
 	max-width: 100%;
 	background-color: #262626;
 	z-index: 1200;
 	-webkit-transition: opacity .7s ease;
 	-moz-transition: opacity .7s ease;
 	transition: opacity .7s ease;
 }

 /* before menu container background */
 #st-mobile-menu:before {
 	content: "";
 	display: block;
 	position: fixed;
 	left: 0;
 	top: 0;
 	width: 100%;
 	height: 100%;
 	z-index: -1;
 	background-color: #262626;
 }

 /* active menu container */
 #st-mobile-menu.st-overlay.active {
 	visibility: visible;
 	opacity: 1;
 	display: block;
 	position: fixed;
 	overflow: auto;
 }

 /* hide body wrap container */
 #site-wrap.st-overlay.active {
 	display: none;
 }

 /* close button */
 #st-mobile-close {
 	background: transparent;
 	display: block;
 	border: 0;
 	float: right;
 	margin: 15px;
 	position: fixed;
 	top: 0;
 	right: 0;
 	font-size: 48px;
 	width: 36px;
 	height: 36px;
 	text-align: center;
 	font-weight: normal;
 	color: #999999;
 	z-index: 1201;
 	-webkit-backface-visibility: hidden;
 }

 #st-mobile-close:hover,
 #st-mobile-close:focus,
 #st-mobile-close:active {
 	color: #ffffff;
 }

 /* mobile menu - global */
 #st-mobile-menu ul,
 #st-mobile-menu ul ul {
 	margin: 0;
 	padding: 0;
 	line-height: 1.2em;
 }

 #st-mobile-menu > ul {
 	padding: 60px 0;
 	/*float: left;*/
 	margin: 30px auto 0;
 	width: 186px;
 }

 #st-mobile-menu ul li {
 	font-size: 24px;
 	display: block;
 	font-weight: normal;
 	position: relative;
 	float: none;
 }

 /* hide images */
 #st-mobile-menu ul li img {
 	display: none;
 }

 /* hide header items */
 #st-mobile-menu ul li span.nav-header {
 	display: none;
 }

 /* first level */
 #st-mobile-menu ul li > .nav-item {
 	color: #aeaeae;
 	cursor: pointer;
 	position: relative;
 	padding: 15px 30px;
 	display: block;
 	float: none;
 }

 /* level 2+ */
 #st-mobile-menu ul ul > li > .nav-item {
 	padding-left: 70px;
 	font-size: 18px;
 }

 #st-mobile-menu ul ul ul > li > .nav-item {
 	padding-left: 100px;
 }

 #st-mobile-menu ul ul ul ul > li > .nav-item {
 	padding-left: 130px;
 }

 /* before line - level 2+ */
 #st-mobile-menu ul ul li > .nav-item:before {
 	content: "";
 	width: 30px;
 	height: 1px;
 	display: block;
 	position: absolute;
 	left: 30px;
 	top: 50%;
 	background-color: #999999;
 }

 #st-mobile-menu ul ul ul > li > .nav-item:before{
 	content: "";
 	width: 60px;
 }

 #st-mobile-menu ul ul ul ul > li > .nav-item:before {
 	content: "";
 	width: 90px;
 }

 /* hover/active level 1 */
 #st-mobile-menu ul > li > .nav-item:hover,
 #st-mobile-menu ul > li.active > .nav-item,
 #st-mobile-menu ul > li.parent:hover > .nav-item,
 #st-mobile-menu ul > li.active.parent > .nav-item,
 #st-mobile-menu ul > li.current.active > .nav-item:hover,
 #st-mobile-menu ul > li.alias-parent-active > .nav-item {
 	color: #ffffff;
 }

 /* level 2+ */
 #st-mobile-menu ul ul li > .nav-item:hover,
 #st-mobile-menu ul ul li.active > .nav-item,
 #st-mobile-menu ul ul li.parent:hover > .nav-item,
 #st-mobile-menu ul ul li.active.parent > .nav-item ,
 #st-mobile-menu ul ul li.alias-parent-active > .nav-item {
 	color: #ffffff;
 }

 /* before line - active/hover */
 #st-mobile-menu ul ul li > .nav-item:hover:before,
 #st-mobile-menu ul ul li.active > .nav-item:before,
 #st-mobile-menu ul ul li.parent > .nav-item:hover:before,
 #st-mobile-menu ul ul li.parent:hover > .nav-item:before,
 #st-mobile-menu ul ul li.active.parent > .nav-item:before,
 #st-mobile-menu ul ul li.alias-parent-active > .nav-item:before {
 	background-color: #ffffff;
 }
