.nav, .nav * { margin: 0; padding: 0; list-style: none;}
 
.nav { line-height: 1.0;}
 
.nav ul { position: absolute; top: -999em; width: 150px; /* left offset of submenus need to match (see below) */}
 
.nav ul li { width: 100%;
}
 
.nav li:hover { visibility: inherit; /* fixes IE7 'sticky bug' */}
 
.nav li { float: left; position: relative; width: auto;}
 
.nav a { display: block; position: relative;}
 
.nav li:hover ul,
.nav li ul { left: 0; top: 40px; /* match top ul list item height */ z-index: 3;}
 
ul.nav li:hover li ul,
ul.nav li li ul { top: -999em;}
 
ul.nav li li:hover ul,
ul.nav li li ul { left: 150px; /* match ul width */ top: 0px;}
 
ul.nav li li:hover li ul,
ul.nav li li li ul { top: -999em;}
 
ul.nav li li li:hover ul,
ul.nav li li li ul { left: 150px; /* match ul width */ top: 0px;}