/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu *
{
    margin: 0;
    padding: 0;
    list-style: none;
}
.sf-menu
{
    line-height: 1;
}
.sf-menu UL
{
    position: absolute;
    top: -999em;
    width: 180px;
    /*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: 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;
}
/*** DEMO SKIN ***/
.sf-menu
{
    float: left;
    margin-bottom: 1em;
    font-size: 11px;
}
.sf-menu A
{
    /*[disabled]border-left:1px solid #FFF;*/
    border-top: 1px solid #808080;
    padding: 5px;
    text-decoration: none;
}
.sf-menu A, .sf-menu A:visited, .sf-menu A:link
{
    /*visited pseudo selector so IE6 applies text colour*/
    color: #141516;
}
.sf-menu LI
{
    background: #FFFFFF;
}
.sf-menu LI LI
{
    background: #EFEFEF;
}
.sf-menu LI LI LI
{
    background: #E9E9E9;
}
.sf-menu LI:hover, .sf-menu LI.sfHover, .sf-menu A:focus, .sf-menu A:hover, .sf-menu A:active
{
    background: #D9D9D9;
    outline: 0;
}
/*** arrows **/
.sf-menu A.sf-with-ul
{
    padding-right: 2.25em;
    min-width: 1px;
    /*trigger IE7 hasLayout so spans position accurately*/
}
.sf-sub-indicator
{
    position: absolute;
    display: block;
    right: 0.75em;
    top: 1.05em;
    /*IE6 only*/
    width: 10px;
    height: 10px;
    text-indent: -999em;
    overflow: hidden;
    background: url('../images/arrows-black.png') no-repeat -10px -100px;
    /*8-bit indexed alpha png. IE6 gets solid image only*/
}
A > .sf-sub-indicator
{
    /*give all except IE6 the correct values*/
    top: 0.8em;
    background-position: 0 -100px;
    /*use translucent arrow for modern browsers*/
}
/*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*/
}
/*** shadows for all but IE6 ***/
.sf-shadow UL
{
    background: url('../images/shadow.png') no-repeat bottom right;
    padding: 0 8px 9px 0;
    -moz-border-radius-bottomleft: 17px;
    -moz-border-radius-topright: 17px;
    -webkit-border-top-right-radius: 17px;
    -webkit-border-bottom-left-radius: 17px;
}
.sf-shadow UL.sf-shadow-off
{
    background: transparent;
}
