* html body{
	overflow: hidden;
}
html{
	background: #F8F9FA url("../images/background.png") center 0 repeat-x;
	height: 100%;
	position: relative;
}
body{
	text-align: center;
	margin: 0 auto;
	background: transparent url("../images/header-background.jpg") center 0 no-repeat;
	width: 100%;
	font-size: 1em;
}
li{
	list-style: disc;
}
h1{
	color: #fff;
	font-size: 1.6em;
	font-weight: normal;
	font-family: Georgia, Serif;
	margin: 0 0 15px 0;
}
br.clear{
	clear: both;
	margin: 0;
	padding: 0;
}
header, section, article, nav,footer, time{
	display: block;
	text-align: left;
}
#viewport, #footer{
	width: 1036px;
	margin: 0 auto;
	position: relative;
}
#viewport #content{
	background: #1A558D url("../images/content-back.png") 0 0 repeat-x;
	position: relative;
	color: #fff;
}
#viewport #content div.wrapper{
	background: transparent url("../images/rounded-corner-left.png") 0 0 no-repeat;
}
#viewport #content div.right{
	position: absolute;
	top: 0;
	right: 0;
	background: transparent url("../images/rounded-corner-right.png") 0 0 no-repeat;
	width: 20px;
	height: 18px;
}
#viewport section{
	float: left;
	text-align: center;
	width: 555px;
}
#viewport #mediaspace{
	height: 337px;
	background: transparent url("../images/video-back.png") -20px bottom no-repeat;
}
#viewport #mediaspace img{
	margin-top: 33px;
}
#viewport #mediaspace p{
	color: #ffffff;
	padding: 2em;
	width: 90%;
}

#viewport #mediaspace embed
, #viewport #mediaspace object
, #viewport #mediaspace video{
	margin: 35px auto;
}

#viewport #content article{
	width: 425px;
	margin: 0 0 0 570px;
	color: #658CB2;
	padding: 35px 0 0 0;
	font-size: .8em;
}

#viewport #content article.more ol{
	margin: 0 auto;
}
#viewport #content article.more ol li{
	list-style: decimal;
}
#viewport #content article a{
	color: #ffffff;
}
#viewport #content article.short{
	padding-top: 95px;
}
#viewport #content article.shorter{
	padding-top: 100px;
}

#viewport #content article.form{
	padding-top: 60px;
}
/* The videos nav was if the video had video links.*/
#viewport #content nav.videos{
	background: transparent url("../images/video-menu.png") 0 0 no-repeat;
	width: 439px;
	height: 218px;
	position: absolute;
	top: 80px;
	right: 28px;
}
#viewport #content nav.videos ol{
	list-style: none;
	margin: 0;
	padding: 0;
}
#viewport #content nav.videos ol li.selected_first{
	background: transparent url("../images/video-menu.png") 0 -219px no-repeat;
}

#viewport #content nav.videos ol li.selected{
	background: transparent url("../images/video-menu.png") 0 -270px no-repeat;
}
#viewport #content nav.videos li{
	height: 51px;
	width: 100%;
	line-height: 51px;
}

#viewport #content nav.videos a{
	letter-spacing: .1em;
	color: #fff;
	text-decoration: none;
	display: block;
	height: 100%;
	width: 100%;
	padding: 0 0 0 80px;
}
#viewport nav.site{
	width:1036px;
	height: 104px;
	margin: 0 auto;
	background: transparent url("../images/menu.png") 0 0 no-repeat;
}
#viewport nav.site ol{
	height: 100%;
	margin: 0 auto;
	padding: 0;
	width: 1020px;
}
#viewport nav.site li{
	list-style: none;
	float: left;
	font-family: "Trajan Pro", Georgia, Serif;
	text-transform: uppercase;
	line-height: 81px;
	background: transparent url("../images/navi_background.png") right 46px no-repeat;
}
#viewport nav.site li a{
	display: block;
	height: 100%;
	font-size: 12px;
	font-weight: bold;
	padding: 15px 35px 0 30px;
	text-decoration: none;
	color: #032454;
}
#viewport nav.site li a:hover{
	color: #b7b7b7;
	background: transparent url("../images/hover_state.png") center 0 no-repeat;
}
#viewport nav.site li.active a{	
	color: #b7b7b7;
	background: transparent url("../images/hover_state.png") center 0 no-repeat;
}

#viewport nav.site .flyer{
	background: none;
}

#header{
	width: 1000px;
	position: relative;
	margin: 0 auto;
	z-index: 10;
}
#header .logo a{
	display: block;
	width: 440px;
	height: 163px;
}
#header .logo a span{
	display: block;
	text-indent: -9999px;
}

#header .slogan{
	position: absolute;
	font-size: 2em;
	font-variant:small-caps;
	text-indent: -9999px;
	top: 0;
}
#header .slogan span{
	display: block;
	text-align: center;
}
#header nav.connect{
	background: transparent url("../images/ribon.png") 0 0 no-repeat;
	width: 235px;
	height: 239px;
	position: absolute;
	left: 770px;
	top: -10px;
}
#header nav.connect h2{
	margin-bottom: 1em;
}
#header nav.connect h2 span{
	display: block;
	text-indent: -9999px;
}
#header nav.connect ul{
	margin: 0;
	padding: 0;
}
#header nav.connect ul li{
	list-style: none;
	margin-bottom: 30px;
}
#header nav.connect li a{
	display: block;
	width: 100%;
	height: 30px;
}
#header nav.connect li a span{
	display: block;
	text-indent: -9999px;
}
#footer{
	padding: 50px 0 0 0;
	background: transparent url("../images/footer-background.png") 0 0 repeat-x;
	text-align: center;
	height: 300px;
	color: rgb(100,100,100);
}
#footer p{
	padding: 0;
	margin: 0;
	font-family: Georgia, Serif;
}
#footer header span{
	display: block;
	text-indent: -9999px;
}
#footer header{
	background: transparent url("../images/gio-logo-watermark.png") 0 0 no-repeat;
	width: 172px;
	height: 63px;
	margin: 0 auto 50px;
}
#footer_menu{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #1A558D;
	padding-left: 10%;
	padding-right: 10%;
}
#footer_menu a{
	padding: 1em;
	color: #fff;
	display: block;
	float: left;
}

@media screen{
	body>nav#footer_menu{
		position: fixed;
	}
}

#signup_for_updates_button{
	background: transparent url("../images/cta-buttons.png") 0 0 no-repeat;
	width: 340px;
	height: 43px;
	display: block;
	margin: 1em auto 0 auto;
}
#signup_for_updates_button:hover{
	background-position-x: -346px;
}
#join_campaign_button{
	background: transparent url("../images/cta-buttons.png") -685px 0 no-repeat;
	width: 340px;
	height: 43px;
	display: block;
	margin: 1em auto 0 auto;
}
#join_campaign_button:hover{
	background-position-x: -1031px;
}
#join_button{
	background: transparent url("../images/join_button.png") -7px 0 no-repeat;
	width: 420px;
	height: 43px;
	display: block;
	margin: 1em auto 0 auto;
	border: none;
}
#join_button:active{
	background-position-x: -430px;
}
#signup_button{
	background: transparent url("../images/signup-join.png") -340px 0 no-repeat;
	width: 150px;
	height: 43px;
	display: block;
	margin: 1em auto 0 auto;
	border: none;
}
#signup_button:active{
	background-position-x: -510px;
}
button.print{
	background: transparent url("../images/print_button.png") 0 0 no-repeat;
	width: 150px;
	height: 62px;
	display: block;
	margin: 1em auto 0 auto;
	border: none;
}
button.print:active{
	background-position-x: -169px;
}
a.button span
, button span{
	display: block;
	text-indent: -9999px;
}

form fieldset{
	border: none;
	margin: 0;
	padding: 0;
}
form p{
	margin-bottom: 0;
}
form fieldset p{
	margin-bottom: 1em;
}
form fieldset p label{
	display: block;
	color: #fff;
	font-size: 1.2em;
	font-weight: normal;
}
form fieldset input[type=checkbox]{
	width: 12px;
	height: 12x;
}
form fieldset input[type=password]{
	font-size: 1.6em;
}
form fieldset input[type=text]{
	width: 408px;
	height: 37px;
	font-size: 1.6em;
	color: #658CB2;
	background: transparent url("../images/form.png") 0 0 no-repeat;
	border: none;
}
form fieldset input[type=submit]{
	width: 100px;
}
form fieldset.contribution{
	margin-top: 50px;
}
form fieldset.contribution p label{
	margin-bottom: 1px;
}

form fieldset.contact{
	position: absolute;
	left: 50px;
	top: 360px;
}
form fieldset.address{
	padding-top: 51px;
}
form fieldset.locale .city{
	width: 200px;
	float: left;
	padding-right: 10px;
}
form fieldset.locale .state{
	width: 50px;
	float: left;
	padding-right: 10px;
}
form fieldset.locale #city{
	background: transparent url("../images/form_200.png") 0 0 no-repeat;
}
form fieldset.locale #state{
	text-align: center;
	background: transparent url("../images/form_50.png") 0 0 no-repeat;
}
form fieldset.locale #zip{
	background: transparent url("../images/form_138.png") 0 0 no-repeat;
}
form fieldset.locale .zip{
	width: 138px;
	float: left;
}
form fieldset.locale input[type=text]{
	width: 100%;
}
form.threecolumn{
	margin: 0 auto;
	width: 80%;
}

form.threecolumn fieldset{
	float: left;
	width: 250px;
	display: block;
}
form.threecolumn fieldset input[type=text]{
	background: transparent url("../images/form_200.png") 0 0 no-repeat;
}
form#signup_form fieldset.left p{
	width: 197px;
	float: left;
	padding-right: 7px;
}
form#signup_form fieldset.left input{
	background: transparent url("../images/form_200.png") 0 0 no-repeat;
	width: 100%;
}
div.error{
	background: #C6D1DD;
	padding: 1em;
	-webkit-border-radius: 5px;
	margin-bottom: 1em;
}
div.error li{
	color: #D6271A;
}
#mainevent{
	width: 411px;
	background: transparent url("../images/playbill.png") 0 20px no-repeat;
}
#mainevent .playbill{
	height: 257px;
	display: block;
	text-indent: -9999px;
	border-bottom: solid 1px #ccc;
}
#mainevent p{
	text-align: center;
}

table{
	margin: 0 auto;
	width: 90%;
}
table thead tr th{
	padding-top: 3em;
}
table tfoot nav{
	float: right;
}
table a{
	color: #fff;
}
#login{
	margin: 0 auto;
	width: 400px;
}
#login fieldset{
	border: solid 1px #d8d8d8;
	padding: 1em;
}
#login input[type=text], #login input[type=password]{
	background: #fff;
	width: 100%;
}