I'm sorry to be rude, but you have no idea what you are talking about. :-) Display block (not black) is perfectly valid. It is in fact the default display style the div element. Setting it makes other elements behave like div's do. And as noted above, 'em' is a very valid unit of measurement. It is relative to the font size used on the page. Meaning, if the user configures a larger font in their browser, the whole page scales accordingly. For accessibility this is recommended.
There were two problems, both fixed.
One was that the element that contains the logo & menu, had a fixed height. Since the elements inside it are floated, they can float outside the height of the element. The height was removed and an element was added below that clears both left and right. That solves that.
That added the problem that whenever the elements are compressed and take up more space, the height of header increases, but the content keeps the same top margin, thus falling under the header element. I fixed that by giving the content a top margin depending on browser width.
Thank you for letting us know! :-)