Nel CSS non vedo problemi di sorta (a meno che con questo mi sia intontito): può darsi si tratti di un semplice effetto visivo.. Vedo invece che in generale il codice è molto sporco e può essere ottimizzato di molto:
codice:
h2 {
   margin:20px 10px 10px 20px;
   font-family:Arial, Helvetica, sans-serif; 
   font-weight:normal; 
   color:#000;
} 
h3 {
   margin:15px 10px 5px 20px;
   font-family:Arial, Helvetica, sans-serif; 
   font-weight:normal; 
   color:#5375A5;
} 

.titolopagina {
   vertical-align:top; 
   text-align:left;
}
Inoltre, che senso ha mettere un h2 in un div e dare l'id "titolo" al div stesso? Semanticamente fa un po' acqua.