/*
BASE (MOBILE) SCREENS
These base styles apply to all screen sizes, but may be overridden on larger screens by the media query-driven styles that appear later in this file.
*/

.border {
    border-style: dashed;
    border-width: 1px;
    border-color: red;
}


/* Responsive Images */
img {
	width:auto;
	max-width:100%; 
	height:auto;
	float:left; /* cures the 4 px whitespace anomaly */
}


/* Box sizing. Awesome thing. Read about it here: http://www.w3schools.com/cssref/css3_pr_box-sizing.asp */
* {  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
       box-sizing: border-box;
}


/* Contain floats: h5bp.com/q */ 
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

.right {
	float:right;
}

.left {
	float:left;
}

.cell-bottom {
	display:table-cell; 
	vertical-align:bottom;
}



/* Typography */
body {
	height: 100%;
	font-family: 'Open Sans Condensed', Arial, sans-serif; 
	font-weight: 300;
	color: #333333;   /* 20% white */  
	background-image: url(images/gray_gradient.png); background-repeat: repeat-x; 
	background-color: #cbcbcb;    /* 80% white */ 
	margin: 0;
}

p.credits {
	font-size: 12px;
	line-height: 15px; 
	margin: 0;
}

p.warning {
	font-weight:bold;
	color:red;
} 

span.bold {
	font-weight: 700;
}

span.extrabold {
	font-weight: 800;
}

span.italic {
	font-style: italic;
}




/* Structure */   

#wrapper {
	background: white;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right: auto;
}

#header {
}

#logo {
	float:left;
	margin: 15px;
}

#blue_stripe { 
	background-image: url(images/blue_stripe.gif); background-repeat: repeat-x; 
	height: 8px;
	width: 100%;
	margin-bottom: 10px;
}

#tagline {
	width: 65%;
	margin-left: auto;
	margin-right: auto;
}

#content {  
	margin:0;
}

div.white {
	display: block;
	width: 100%;
	background-color: white;
	padding: 25px 25px 18px 25px;
}

div.gray {
	display: block;
	width: 100%;
	background-color: #f0f0f0;   /* 240,240,240 */
	padding: 25px 25px 18px 25px;
}

#footer {
	background-color: #112971;   /* Burgio Blue */
	color: white;
	font-size: 23px;
	font-weight: 700;
	padding: 3px 25px 3px 25px;
}

#address {
	margin: 0;
}



/*
PHONES in LANDSCAPE ORIENTATION

*/
@media only screen and (min-width: 475px) {

#logo {
	width: 270px;
	float: left;
	margin: 10px;
}

#tagline {
	width: 190px;
	float: left;
	margin-left: 40px;
}

div.white {
	padding: 25px 50px 18px 50px;
}

div.gray {
	padding: 25px 50px 18px 50px;
}

}




/*
TABLETS in PORTRAIT ORIENTATION

*/
@media only screen and (min-width: 700px) {

div.white {
	padding: 25px 100px 18px 100px;
}

div.gray {
	padding: 25px 100px 18px 100px;
}

} 



/*
TABLETS in LANDSCAPE & SMALLER LAPTOPS
This is the first appearance of the "desktop layout"
*/
@media only screen and (min-width: 900px) {

#logo {
}

#content {  
}

div.white {
	padding: 25px 18% 18px 18%;
}

div.gray {
	padding: 25px 18% 18px 18%;
}

}



/*
LARGE VIEWING SIZE
This is for the larger monitors and possibly full screen viewers.
*/
@media only screen and (min-width: 1100px) {

#wrapper {
	max-width: 1200px; 
}

} 



/*
PRINT STYLESHEET
*/
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}