Ciao.
Se non erro mi sembra che tu abbia dichiarato nel css dei div dei quali poi non hai rispettato l'ordine; mi speigo.
Di solito si dichiara un Container, nel quale si iniziano ad inserire gli altri div. Nel codice mi sembra che il tuo container sia dopo un altro div chiamato header.
Per il problemino con Firefox, di cui ho avuto anche io lo spiacevole errato posizionamento vedendo il tuo sito, ti consiglio di racchiudere il menu a lista in un div e a quello dare il positioning.
Faccio un esempio utilizzando dei nomi personali:
<div class="navBar"> /*contenitore del menu*/
<ul id="menu">
[*]home
[*]news
[*]prodotti
[*]supporto
[*]cliente
[*]conatto[/list]
</div>
Spero di averti aiutato.