Not sure of this will help - but you have extra characters in your CSS:
#header {
padding: 20px 0;
background-color: #9fcc41;
background-image: url(images/veggies.jpg);
background-repeat: no-repeat;
background-position: right;
}
The "0" after 20px for padding. That may be causing it to do padding you weren't planning for.