bueno en cuanto a la semantica hay pequeñas cosas como un div vacio para simular el header
la etiqueta <label> aplicada incorrectamente ya que no es un elemento en bloque para cubrir al input, ademas que no es su funcion.
<label><input...></label>
en la navegacion "
"home Item 1 Item 2"
una lista desordenada no estaria mal... ya que veo que usas mucho span como para evitar usar divs bueno supongo.
usas un <h3> cuando no hay un <h2> ni <h1> previamente,
igual veo <br/> en el footer cuando solo necesitabas un margin-bottom...
enfin son pequeñas cosas que no afectan en lo visual y por ahora en la validacion, pero hay que tomarlas en cuenta.
y yap nose si se me fue una, pero bueno, para tu problema pues como te dije si indicas cual es el fallo en concreto se te puede ayudar mejor...