I only skimmed through it but I think the culprit is the top 14px margin of the p.tagline located in mainContent, just bellow the gap, that margin is sticking out of the container.
Try giving the #mainContent a 14px top padding instead of giving margin to p.tagline or something along that way.
This usually hapens when you have big containers margin set to 0 and some inside elements margins non-zero - they stick out. Smart padding usually helps.
Bookmarks