.menu {
	display: inline-block;
   padding: 0;
   margin: 0.2em;
	font-weight: bold;
	font-size: 1.1em;
}
.menu *,
.top_menu_container * {
   z-index: 1000;
}
.menu a,
.menu span,
.menu li {
   color: #ffffff;
   text-shadow: 1px 0px #000000;
   text-decoration: none;
}
.nav,
.nav ul {
   line-height: 1.0em;
   list-style: none outside;
   margin: 0;
   padding: 0;
   white-space: nowrap;
}
.nav li {
   min-width: 6em;
	
	border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-khtml-border-radius: 0.5em;

	border: none; 
   border-top: none;
   border-right: solid #820912 1px;
   border-bottom: solid #820912 1px;
   border-left: solid #bb5b63 1px;
   
	background-color: #820912;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#dc8587), to(#820912));
	background-image: -webkit-linear-gradient(top, #dc8587, #820912);
	background-image: -moz-linear-gradient(top, #dc8587, #820912);
	background-image: -ms-linear-gradient(top, #dc8587, #820912);
	background-image: -o-linear-gradient(top, #dc8587, #820912);
	background-image: linear-gradient(top, #dc8587, #820912);
}
div.menu ul.nav li {
	display: inline-block;
}
div.menu ul.nav li ul li {
   float: left;
}
.nav a,
.nav span {
   padding: 0.7em 0.3em 0.7em 0.2em;
   display: block;
   min-width: 60%;
}
.nav li ul {
   background: none repeat scroll 0 0;
   left: -999em;
   position: absolute;
   width: 6em;
}
.nav li ul ul {
   margin: -2.3em 0 0 6em;
}
.nav li:hover ul ul,
.nav li:hover ul ul ul,
.nav li.sfhover ul ul,
.nav li.sfhover ul ul ul {
   left: -999em;
}
.nav li:hover ul,
.nav li li:hover ul,
.nav li li li:hover ul,
.nav li.sfhover ul,
.nav li li.sfhover ul,
.nav li li li.sfhover ul {
   left: auto;
}
.nav li.sfhover,
.nav li:hover {
   border-top: none;
   border-right: solid #272727 1px;
   border-bottom: solid #242424 1px;
   border-left: solid #adabab 1px;
	
	background-color: #333333;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#cfcdcd), to(#333333));
	background-image: -webkit-linear-gradient(top, #cfcdcd, #333333);
	background-image: -moz-linear-gradient(top, #cfcdcd, #333333);
	background-image: -ms-linear-gradient(top, #cfcdcd, #333333);
	background-image: -o-linear-gradient(top, #cfcdcd, #333333);
	background-image: linear-gradient(top, #cfcdcd, #333333);
}
.menu a.sfhover,
.menu a:hover {
   text-shadow: 2px 1px 1px #000000;
}

.single li {
	min-width: 3em;
}
.single a {
	padding-right: 0.5em;
}

/*
 * Sticky menu
 */
.top_menu_container {
	position: relative;
	z-index: 1000;
}
.top_menu {
	display: inline-block;
	position: relative;
}
.sticky {
	position: sticky;
	top: 0;
}
div#top_menu_main {
	margin-right: 2.5em;
}

div#nav_toggle_container {
	z-index: 1001;
	/*margin: 0.1em 0.2em 0.4em 0.5em;*/
	padding: 5px 4px 8px 4px;
	position: absolute;
	bottom: 0.3em;
	right: 0.1em;
}
div#nav_toggle_container .nav_toggle_lines {
	background: black;
	width: 30px;
	height: 3px;
	margin-top: 5px;
} 

div#nav_toggle_container {
	border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-khtml-border-radius: 0.5em;

	border-top: none;
	border-right: solid #820912 1px;
	border-bottom: solid #820912 1px;
	border-left: solid #bb5b63 1px;
	
	background-color: #820912;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#dc8587), to(#820912));
	background-image: -webkit-linear-gradient(top, #dc8587, #820912);
	background-image: -moz-linear-gradient(top, #dc8587, #820912);
	background-image: -ms-linear-gradient(top, #dc8587, #820912);
	background-image: -o-linear-gradient(top, #dc8587, #820912);
	background-image: linear-gradient(top, #dc8587, #820912);
}
#nav_toggle_container:hover {
   border-top: none;
   border-right: solid #272727 1px;
   border-bottom: solid #242424 1px;
   border-left: solid #adabab 1px;
	
	background-color: #333333;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#cfcdcd), to(#333333));
	background-image: -webkit-linear-gradient(top, #cfcdcd, #333333);
	background-image: -moz-linear-gradient(top, #cfcdcd, #333333);
	background-image: -ms-linear-gradient(top, #cfcdcd, #333333);
	background-image: -o-linear-gradient(top, #cfcdcd, #333333);
	background-image: linear-gradient(top, #cfcdcd, #333333);
}


/* Change menu display for narrower screens */
@media screen and (max-width:1000px) {
	div#top_menu_main.not_logged_in {
		display: none;
	}
	div#nav_toggle_container.not_logged_in {
		display: inline-block;
	}
	body {
		font-size: 1.2em;
	}
}

