/* Essential Styles
--------------------------------------------------------------------------------------------------*/

.sf-menu, .sf-menu * {
	margin:0;
	padding:0;
	list-style:none;
	z-index:10;
}

*.sf-menu {
	line-height:1.0;
}

.sf-menu ul {
	position:absolute;
	top:-999em;
	width:10em; /* left offset of submenus need to match (see below) */
}

.sf-menu ul li {
	width:100%;
}

.sf-menu li:hover {
	visibility:inherit; /* fixes IE7 'sticky bug' */
}

.sf-menu li {
	float:left;
	position:relative;
}

.sf-menu a,
.sf-menu p {
	display:block;
	position:relative;
}

.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
	left:0;
	top:28px; /* match top ul list item height */
	z-index:99;
}

ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul {
	top:-999em;
}

ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
	left:10em; /* match ul width */
	top:0;
}

ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul {
	top:-999em;
}

ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
	left:10em; /* match ul width */
	top:0;
}


/* Skin
--------------------------------------------------------------------------------------------------*/

.sf-menu {
	float:right;
	margin-bottom:1em;
	margin-right:2em;
}

.sf-menu a {
	padding:6px 5px;
}

.sf-menu p {
	padding:6px 5px;
}

.sf-dropdown a,
.sf-dropdown p {
	margin-top:-2px;
	padding-top:6px;
	padding-bottom:6px;
}

.sf-flyout a {
	margin-left:-2px;
}


/* Apply hovers to modern browsers
--------------------------------------------------------------------------------------------------*/

a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator {
	background-position:-10px -100px; /* arrow hovers for modern browsers*/
}


/* Point right for anchors in subs
--------------------------------------------------------------------------------------------------*/

.sf-menu ul .sf-sub-indicator {
	background-position:-10px 0;
}

.sf-menu ul a > .sf-sub-indicator {
	background-position:0 0;
}


/* Apply hovers to modern browsers
--------------------------------------------------------------------------------------------------*/

.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
	background-position:-10px 0; /* arrow hovers for modern browsers*/
}


/* Skin
--------------------------------------------------------------------------------------------------*/

.sf-menu a {
	border-left:2px solid #333;
}

.sf-menu p {
	border-left:2px solid #333;
	font-size:1em;
}

#menu .sf-menu a:hover,
#menu .sf-menu p:hover {
	color:#F00;
}

.sf-menu a, .sf-menu a:visited, .sf-menu p { /* visited pseudo selector so IE6 applies text colour*/
	color:#777;
}

.sf-menu p {
	border-left:2px solid #333;
}

.sf-dropdown a,
.sf-dropdown p {
	border:2px solid #333;
}

.sf-menu li {
	background:#000;
}

.sf-menu li li {
	background:#000;
}

.sf-menu li li li {
	background:#000;
}

.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
	background:#222;
	outline:0;
}