/*** ESSENTIAL STYLES ***/

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

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

.sf-menu ul { position: absolute; top: -999em; width: 190px; /* 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 { display: block; position: relative; }

.sf-menu li:hover ul,.sf-menu li.sfHover ul { left: 0; top: 2.5em; /* 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: 190px; /* 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: -189px; /* match ul width */top: 0; }

/*** DEMO SKIN ***/.sf-menu { float: right; margin-bottom: 1em; border-bottom: 1px solid #666; }

.sf-menu a { border: 1px solid #666; border-bottom-width: 0; padding:  .75em 1em; text-decoration:none; }

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

.sf-menu a:hover  { /* visited pseudo selector so IE6 applies text colour*/color: #fff; background: #b8b8b8; }

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

.sf-menu li li { background: #858585; color: #fff; }

.sf-menu li li a, .sf-menu li li a:link, .sf-menu li li a:visited { color: #fff; }

.sf-menu li li a:hover { background: #e9e9e9; color: #666;

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