* {
    box-sizing: border-box;
}
.header {
    border: 1px solid red;
    padding: 15px;
}
.menu {
    width: 25%;
    float: left;
    padding: 15px;
    border: 1px solid red;
}
.main {
    width: 50%;
    float: left;
    padding: 15px;
    border: 1px solid red;
}


@import url(http://fonts.googleapis.com/css?family=Open+Sans);

body { 
  font-family: 'Open Sans', sans-serif;
  color: #666fff;
}

/* STRUCTURE */

#pagewrap {
	
padding: 5px;
position: absolute;
width: 100%;
margin: 0px auto;
}
header {
	height: 100px;
	padding: 0 15px;
}
#content {
	width: 22.2%;
	float: left;
	margin: 5px 5px 5px 5px;
}

#middle {
	width: 53%; /* Account for margins + border values */
	float: left;
	margin: 5px 5px 5px 5px;

}
#sidebar {
	width: 22.2%; /* Account for margins + border values */
	float: left;
	margin: 5px 5px 5px 5px;

}


footer {
	clear: both;
	margin: 5px 5px 5px 5px;
}


h2 {

 -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  padding: 4px;
  border: none;
  font: normal normal bold 20px/normal Verdana, Geneva, sans-serif;
  color: rgba(255,255,255,3);
  -o-text-overflow: clip;
  text-overflow: clip;
  letter-spacing: 1px;
  word-spacing: 2px;
  background: -webkit-linear-gradient(-184deg, rgba(0,255,0,0.3) 0, rgba(0,255,0,0.3) 6%, rgba(255,0,0,0.3) 61%, rgba(255,0,0,0.3) 100%);
  background: -moz-linear-gradient(274deg, rgba(0,255,0,0.3) 0, rgba(0,255,0,0.3) 6%, rgba(255,0,0,0.3) 61%, rgba(255,0,0,0.3) 100%);
  background: linear-gradient(274deg, rgba(0,255,0,0.3) 0, rgba(0,255,0,0.3) 6%, rgba(255,0,0,0.3) 61%, rgba(255,0,0,0.3) 100%);
  background-position: 50% 50%;
  -webkit-background-origin: padding-box;
  background-origin: padding-box;
  -webkit-background-clip: border-box;
  background-clip: border-box;
  -webkit-background-size: auto 101%;
  background-size: auto 101%;}

/************************************************************************************
MEDIA QUERIES
*************************************************************************************/
/* for 980px or less */
@media screen and (max-width: 980px) {
	
	#pagewrap {
		width: 94%;
	}
	#content {
		width: 41%;
		padding: 1% 4%;
	}
	#middle {
		width: 41%;
		padding: 1% 4%;
		margin: 0px 0px 5px 5px;
		float: right;
	}
	
	#sidebar {
		clear: both;
		padding: 1% 4%;
		width: auto;
		float: none;
	}

	header, footer {
		padding: 1% 4%;
	}
}

/* for 700px or less */
@media screen and (max-width: 600px) {

	#content {
		width: auto;
		float: none;
	}
	
	#middle {
		width: auto;
		float: none;
		margin-left: 0px;
	}
	
	#sidebar {
		width: auto;
		float: none;
	}

}

/* for 480px or less */
@media screen and (max-width: 480px) {

	header {
		height: auto;
	}
	h1 {
		font-size: 2em;
	}
	

}


#content {
	background: #f8f8f8;
}
#sidebar {
	background: #f0efef;
}
#header, #content, #middle, #sidebar {
	margin-bottom: 5px;
}

#pagewrap, header, #content, #middle, #sidebar, footer {
	border: solid 1px #ccc;
}