/* reset the builtin list styling */
#topmenu li {margin: 0; padding: 0;}
#topmenu, #topmenu ul {margin: 0; padding: 0; list-style: none;}

/* to sit on top of flash etc. Rumor has it this won't pass through a position relative child. */ 
#topmenu {z-index: 99;}

#topmenu li {
  position: relative;
  float: left; /* display: inline */
}

#topmenu ul {
  visibility: hidden; /*  display: none; */
  position: absolute; 
}

#topmenu li:hover ul, #topmenu li.over ul {
  visibility: visible; /*  display: block;*/
}

#topmenu a {
  white-space: nowrap;
  /* so it will fill up the li */
  display: block;
}

#topmenu ul li {
  position: static;
  display: block;
  float: none;
}

/* To avoid explicit <div style="clear: both"/> use the technique in http://positioniseverything.net/easyclearing.html
 */
#topmenu:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
