Sobre el css:
Supongo que no es cuestión de número de archivos css que crees y enlaces (cuantos menos archivos mejor), sino
del grado de especificidad de las reglas creadas.
la declaración "ul {...}" afectará a todas las listas en principio, pero será anulada en el #header si tienes otra tal que así: "#header ul {...}"
Para más información sobre esta cuestión y otras de parecido "
nivel" tre recomiendo pasar por
www.librosweb.es y hacerte con su "introducción a css"
Supongo que los los js será alguna cuestión parecida.
Un saludo.
P.D.: no es necesario js para lograr menús realmente atractivos, compatibles y sobre todo, menos pesados/más accesibles.