Absolutely - remember CSS stands for Cascading Style Sheet and the cascading is important. That CSS says (in english) " for the element with an ID of 'header' and all it's children - hide the content if it overflows the element's box. Since the menu's are children of the element with the ID of 'header' and the sub menu elements are positioned to overflow - that statement hides them.
Normally I'd say to reverse it at a child element, but I just played a bit and it doesn't seem to unset it.
I'd try another way to deal with the header image