Nein. Du hast den Fehler, den francesco schon gemacht hat, mit übernommen.
Deine Formularfelder, die Du mit "for" ansprichst, müssen eine id mit entsprechender Bezeichnung haben, sonst klappt das "for" nicht. Der Effekt, der auftreten soll ist der, dass wenn Du das Label (= den Text) anklickst, sich der Cursor im Eingabefeld positioniert.
Und bei Deinen Checkboxen fehlen die labels noch komplett.
Firebug sagt mir, dass Dein label eine height von 16 hat, das input aber eine height von 17, dazu padding 4px und border 2px (margin-top ist bei beiden gleich groß). Da musst Du ansetzen.
P.S.: Ich finde Formulare doof, die immer davon ausgehen, dass man sowohl eine Mailadresse, als auch eine Telefonnummer besitzt und auch gewillt ist, beide preis zu geben. Wäre doch blöd, wenn jemand "110" bei der Telefonnummer eingibt, nur weil das Feld Pflichtfeld ist ;-)