refactored main navigation