The problem seems to be this code in your custom CSS:
#content {
float: right;
width: 960px;
background-color: #ffffff;
}
It applies no matter what the screen size is, so it fouls up the responsiveness at screen sizes smaller than 960px. Deleting it would fix the problem, but do you remember why you added it?