*	{
	margin: 0;
	padding: 0;
	}
	
/* ---------- General Layout ---------- */


html, body, #bg, #bg table, #bg td, #content {
	height:100%;
	width:100%;
	overflow:hidden;
	}
body {
	font-family: Helvetica, "Trebuchet MS", Tahoma, Verdana, sans-serif;
	color: #fff;
	background: #000;
	font-size: small;
	}
#content {
	position: absolute;
	z-index: 20;
	overflow: auto;	
	}
#logo {
	position: fixed;
	bottom: 40px;
	left: 35px;
	}
#lights {
	position: fixed;
	z-index: 10;
	bottom: 10px;
	left: 0;
	}
#footer {
	position: absolute;
	z-index: 100;
	width: 100%;
	bottom: 0;
	right: 15px;
	background: #000;
	}
#home #footer {
	right: 0;
	}
#footer p {
	text-align: right;
	padding: 10px 20px;
	font-size: 90%;
	}
	
#bg div {
	height:200%;
	left:-50%;
	position:absolute;
	top:-50%;
	width:200%;
	}
#bg td {
	text-align:center;
	vertical-align:middle;
	}
#bg img {
	margin:0 auto;
	min-height:50%;
	min-width:50%;
	}

/* ---------- header Styles ---------- */

#navContainer {
	position: fixed;
	top: 30px;
	left: 40px;
	}
#nav li {
	list-style: none;
	margin-bottom: 2px;
	clear: both;
	}
#nav li a.dashed {
	border-bottom: 1px dashed #fff;
	}
#nav li a {
	padding: 4px 6px;
	background: url(../images/layout/trans.png);
	color: #fff;
	float: left;
	font-size: 250%;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	border: none;
	}
#nav li a.active, #nav li a:hover {
	background: #f7d664;
	}
#subNav {
	clear: both;
	padding: 10px 0 0 0;
	}
#subNav li {
	list-style: none;
	display: inline;
	padding: 6px;
	}
#subNav li a {
	text-decoration: none;
	text-transform: uppercase;
	color: #fff;
	font-weight: bold;
	font-size: 110%;
	border: none;
	}
#subNav li a:hover, #subNav li a.active {
	color: #f7d664;
	}
	
/* ---------- Main Content Styles ---------- */

#copy {
	width: 50%;
	max-width: 750px;
	min-width: 400px;
	float: left;
	margin: 0 0 0 400px;
	padding: 100px 0 200px 0;
	overflow: auto;
	}
.blackBox {
	background: url(../images/layout/trans-darker.png);
	margin-bottom: 20px;
	padding: 10px 20px 10px 0;
	padding-left: 20%;
	line-height: 1.5em;
	}
.highlighted {
	color: #f7d664;
	font-size: 160%;
	line-height: normal;
	}
.highlighted p.rightAlign {
	font-size: 80%;
	color: #fff;
	font-weight: bold;
	}
	
	
#tabs li {
	list-style: none;
	float: left;
	}
#tabs li a, #tabs li a.active {
	display: block;
	float: left;
	padding: 12px 18px;
	margin-right: 2px;
	font-size: 120%;
	font-weight: bold;
	border: none;
	color: #fff;
	background: url(../images/layout/trans-darker.png);
	}
#tabs li a:hover {
	color: #fff;
	}
#tabs li a {
	background: #f7d664;
	color: #000;
	}
.on	{
	display: block;
	}
.off {
	display: none;
	}
	
	
.album {
	margin-bottom: 50px;
	}
.album h2 {
	clear: both;
	margin: 20px 0;
	padding: 7px 0;
	border-bottom: 1px dotted #fff;
	border-top: 1px dotted #fff;
	font-size: 120%;
	text-transform: uppercase;
	}
.album img {
	float: left;
	width: 170px;
	border: 1px solid #fff;
	padding: 12px;
	background: #111;
	}
.album ol {
	margin-left: 240px;
	}


.blackBox#gallery {
	padding: 30px 30px 10px 30px;
	text-align: center;
	}
#gallery img {
	border: 1px solid #fff;
	padding: 6px;
	margin: 0 8px 25px 0;
	background: #000;
	}
#gallery a {
	border: none;
	text-decoration: none;
	}

#calendar, .newsStory {
	padding: 30px 0 10px 0;
	}
#calendar td {
	padding: 0 10px 30px 0;
	vertical-align: top;
	}	
.calendarDate {
	width: 150px;
	font-weight: bold;
	color: #f7d664;
	}
#calendar h2, .newsStory h2 {
	font-size: 120%;
	}
	
.newsStory h2 {
	color: #f7d664;
	text-transform: uppercase;
	}
	
/* -- Contact Styles -- */

#formContainer {
	margin: 30px 30px 20px 12px;
	}
#sendEmail fieldset {
	border: none;
	margin: 15px 0 25px 0;
	}
#sendEmail fieldset.firstField {
	margin-top: 30px;
	}
#sendEmail label {
	padding: 8px 5px 5px 0;
	font-weight: bold;
	font-size: 120%;
	color: #f7d664;
	}
#sendEmail .error {
	display: block;
	clear: both;
	width: 100%;
	padding: 10px 0 0 0;
	font-weight: normal;
	font-size: 100%;
	color: #f7d664;
	}
.field input, .field textarea {
	margin-top: 5px;
	padding: 5px;
	width: 100%;
	}
#contentLeft p.questionDescription {
	margin: 30px 0 20px 0;
	color: #aec469;
	}
#sendEmail .buttons {
	margin: 20px -13px 0 0;
	text-align: right;
	}
#submit {
	padding: 5px 10px;
	}

	
/* ---------- Text Styles ---------- */

a {
	text-decoration: none;
	color: #f7d664;
	border-bottom: 1px dotted #f7d664;
	}
a:hover {
	color: #fff;
	border-bottom: 1px dotted #fff;	
	}
h1	{
	color: #f7d664;
	margin: 30px 0;
	font-size: 160%;
	}
h2.yellow {
	color: #f7d664;
	margin: 20px 0 0 0;
	}
p	{
	margin: 20px 0;
	font-size: 110%;
	}
#footer p {
	margin: 0;
	}
.rightAlign {
	text-align: right;
	font-size: 120%;
	}
.larger {
	font-size: 120%;
	letter-spacing: 0.1em;
	}



/* ---------- Hacks ---------- */
	
@-moz-document url-prefix() {  /*Nav padding, because sometimes even FF has a bad hair day */
	#nav li a {
		padding: 8px 6px 4px 6px;
		}
	}
	
*:first-child+html #nav li {
	margin-bottom: 0;
	}
*:first-child+html .field input, *:first-child+html .field textarea {
	margin-left: -10px;
	}
*:first-child+html #sendEmail .buttons {
	text-align: left;
	}
*:first-child+html #submit {
	padding: 0;
	}
*:first-child+html #footer {
	right: 17px;
	}

	
/* ---------- Misc ---------- */

.clear:after {
	content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
    }
* html .clear {
	height: 1px;
	}
*:first-child+html .clear {
	min-height: 1px;
	}
.cleared {
	clear: both;
	}