Wahoo, great problem-solving!
But odd - my php understanding is "very simple", but I can't see anything in the php that should cause a problem, and I dropped it into my version of your html without it affecting the menu as well. On the php side, certainly ask in the php forum as it should be possible to echo out the year without needing to create a variable first - a small detail, for learning, so the php guru's are the best to ask if it's worth changing code that is already working elsewhere.
Back to the menu problem, if the php seems to be "triggering" the problems, but they aren't showing up in the code you've posted here, then this is a "false positive" (only seems to be the cause of the problem, and isn't really), or there is something else in your code (not in the code posted to the thread ) that is reacting with the php and causing the troubles. I
know stripping code is tedious, but can you do the following:
1. Go back through your code, stripping out all the style-only things until you have the smallest page that shows the problem.
2.
Validate [validator.w3.org] the html and css to double-check that's not an issue
3. Post the whole of your page (from DOCTYPE to </html>) to the thread.