Falls das für dieses Problem noch ausschlaggebend sein könnte: Der Div Bereich wurde absolut positioniert und beginnt nicht ganz oben am Browserfenster sondern hat zu diesem in etwa einen Abstand von 300px.
Allein mit CSS ist es meines Wissens nicht möglich, zu sagen »das Element soll so hoch sein wie der Viewport abzüglich 300px«.
Das ist nur möglich, wenn du mit Prozentangaben für beide Teile arbeitest oder die Höhe dynamisch mit JavaScript setzt.
Mathias