This is a jQuery problem really. Your problem is here:
Code:
<script>
$(document).ready(function () {
$('nav li').hover(
function () {
//show its submenu
$('ul', this).slideDown(100);
},
function () {
//hide its submenu
$('ul', this).slideUp(100);
}
);
});
</script>
So, what this is saying is "on hover of an li within nav, show any ul within that li". Result - both the second and third level uls within your menu are shown.
Your script should be (for example, there's a few ways of doing this):
Code:
$(this).children('ul').slideDown(100);
The .children selector restricts the selection to the immediate children only, which is what you want.
Worth mentioning that this is possible with css only, as currently your menu wouldn't work at all for a user with js disabled.
Your page also appears to be rendering the php code directly if you view the source, so there's something else not right on your server/page.