ul.sf-menu, .sf-menu * { margin: 0; padding: 0; list-style: none; }
ul.sf-menu { line-height: 1; }
ul.sf-menu li{ padding: 0px 0px 23px; float: left; position: relative; }
ul.sf-menu li:hover { visibility: inherit; } /* fixes IE7 'sticky bug' */
ul.sf-menu li a { padding: 0px 15px; line-height: 24px; text-decoration:none; display: block; position: relative; }

/*--- sub menu ---*/
ul.sf-menu li:hover ul,
ul.sf-menu li.sfHover ul { left: 0; z-index: 101; top: 46px; padding-top: 0px; }
ul.sf-menu li.sfHover ul li:first-child a{ border-top-width: 3px; padding-top: 11px; }
ul.sf-menu li.sfHover ul li:last-child a{ padding-bottom: 11px; }
ul.sf-menu li.sfHover ul li:last-child{
	-webkit-border-radius: 0px 0px 5px 5px; 
	-moz-border-radius: 0px 0px 5px 5px; 
	border-radius: 0px 0px 5px 5px; }
ul.sf-menu li.sfHover ul ul{ padding-top: 0; }

ul.sf-menu ul { text-align: left; width: 11em; }
ul.sf-menu ul { position: absolute; top: -999em; width: 10em; }/* left offset of submenus need to match (see below) */
ul.sf-menu ul li { width: 100%; padding: 0px 0px; }

ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul,
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul{ top: -999em; }

ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul,
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul { left: 10em; top: -1px; margin-left: 1px; } /* match ul width */

ul.sf-menu li li:last-child{ border: 0px; }
ul.sf-menu li li a{ line-height: auto; height: auto; padding: 0px 15px; background: none !important; }
ul.sf-menu ul li a{ padding: 4px 15px; border-style: solid;
	border-width: 0px; border-top-width: 0px;  }
