Actually don't use overflow:hidden. Lets get to this.
On .upload and .Gal you set widths/margins which equal 1040px. Correct right? But then on .upload you set an extra 2px total in borders. Which is too much. Lower the width
You really need to watch your math. I'm going through the code to have it so you don't need overflow:hidden but there is just too much to fix (almost every element needs me to count up the total width and see if it's too much/see for double float margin bugs)
Be more careful with your coding!
PS-That's all double float margin bug fixes (fulll code fix there)