/*  
Sticky Footer Solution
by Steve Hatcher 
http://stever.ca
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;} 

/* must declare 0 margins on everything, also for main layout components use padding, not 
vertical margins (top and bottom) to add spacing, else those margins get added to total height 
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body, #wrap {height: 100%;}

body > #wrap {height: auto; min-height: 100%; font-family: Helvetica, Arial, sans-serif;}

#main {padding-bottom: 40px;}  /* must be same height as the footer */

#footer {position: relative;
	margin-top: -40px; /* negative value of footer height */
	height: 40px;
	background-color: #333;
	border-top:3px solid #444;
	clear:both;} 

/* CLEAR FIX*/
.clearfix:after {content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

.clear {
	clear: both;
}

/****************************
******* Custom Styles ******/

body {
	background-color: #000;
	color: #fff;
}

b, strong {color: #fff;}

.left {
	float: left;
	margin:0 10px 10px 0;
}

.keyline {
	border: 1px solid #333;
	padding: 1px;
}

.button {
	background-color: #0099cc;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 10px;
	cursor: pointer;
	border: none;
	text-transform: uppercase;
	margin-top: 5px;
}

#topstrap {
	background-color: #333;
	height: 50px;
	border-bottom:3px solid #444;
}

#logo p {
	line-height: 50px;
	color: #ccc;
}

#logo h1 {
	font-size: 2.1em;
	color: #fff;
	line-height: 50px;
}

.footLeft p, .footRight p {
	line-height: 40px;
	font-size: 12px;
	color: #ccc;
	margin: 0;
}

.footLeft a {
	color: #ccc;
	text-decoration: underline;
}

.footLeft a:hover {
	color: #0099cc;
	text-decoration: none;
}

.footRight a {
	color: #666;
	text-decoration: underline;
}

#footRight a:hover {
	color: #fff;
}

/*** Navigation ***/

#navigation {
	margin: 0;
}

#navigation li {
	display: inline;
	float: left;
	line-height: 50px;
	font-size: 14px;
	text-align: right;
}

#navigation li a {
	padding:10px;
	color: #fff;
	line-height: 50px;
	text-decoration: none;
	text-transform: uppercase;
}

#navigation li a:hover {
	color: #ffaa00;
	background-color: #000;
}

/*** Form Styles ***/

.inline .text {
	width: 230px;
	background-color: #666;
}

/*** main content global **/

#header {
	margin-bottom: 10px;
	border: none;
}


#main h1, #main h2, #main h3 {
	color: #fff;
	letter-spacing: -0.05em;
}

#main h1 {
	font-size: 2.4em;
	color: #ffaa00;
	border-bottom:1px dotted #fff;
	padding:0.1em;
}

#main h2 {
	text-transform: uppercase;
	font-size: 1.8em;
	margin-bottom:0.5em;
	padding:0.02em;
	color: #f7f7f7;
	border-top:1px dotted #fff;
	border-bottom:1px dotted #fff;
}

#main a {
	color: #0099ff;
	text-decoration: underline;
}

#main a img, #main img {
	padding: 1px;
	border: 4px solid #444;
}

#main a:hover img {
	border-color: #666;	
}

#main #header img { border: none; }

#main a:hover {
	color: #ffaa00;
	text-decoration: none;
}

#main p, address, #twitter_update_list li {
	font-size: 1.2em;
	line-height: 130%;
	color: #ccc;
}

/*** Flyers ***/

#flyers a img { margin-bottom: 10px; }

/*** Buttons ***/

a.buttons {
	background : #0099ff url(../layoutimages/corner.gif) no-repeat top right;
	color: #333;
	text-transform: uppercase;
	text-decoration: none;
	text-align: center;
	padding: 0.5em;
	cursor: pointer;
}

/*** Home Gallery **/

#homeGallery {
	margin: 0 0 20px 0;
	padding: 10px;
	background-color: #333;
	border: 2px solid #666;
}

#homeGallery ul li {
	float: left;
	display: inline;
	margin-right: 12px;
}

.last {
	margin-right:0;
}

#homeGallery li a img {
	border: 1px solid #fff;
}

#homeGallery li a:hover img {
	border: 1px solid #0099cc;
}

#homeGallery p {margin: 0; font-style: italic;}

/*** Side ***/

#side h2 {
	text-transform: uppercase;
	font-size: 1.4em;
	margin-bottom:0.5em;
	padding:0.1em;
	color: #ccc;
	border-top:1px dotted #fff;
	border-bottom:1px dotted #fff;
}

#side a { color: #666;}


/*** VIP ***/

#vip, #next_event_img {
	margin-bottom: 20px;
}

/*** Twitter ***/
#twitter_update_list {
	list-style: none;
	margin: 0 0 1em 0;
	padding: 0;
}

/*** Contact Page ***/

address {
	font-style: normal;
}

#map_canvas {
	border: 4px solid #444;
	padding: 1px;
	width: 380px;
	height: 285px;
	color: #000;
	font-size: 1.6em;
	margin-bottom: 20px;
}

/*** Dates ***/

.date {
color:#666666;
font-size:18px;
line-height:24px;
text-align:center;
}
.number {
color:#666666;
font-family:Arial,Helvetica,sans-serif;
font-size:28px;
font-weight:bold;
line-height:38px;
text-align:center;
}
.details {
background-color:#FFFFFF;
border-top:1px dotted #666666;
clear:both;
color:#666666;
font-size:11px;
font-style:italic;
line-height:13px;
padding:5px;
}

.news_article {
	margin-bottom: 10px;
	border-bottom: 1px dotted #fff;
}

.article {
	margin-left: 10px;
}

.message {
	border: 1px solid #ccc;
	background: #444;
	padding: 10px;
}

/*** gallery ***/

.gallery_spacer {
	margin-top: 20px;
}

#gallery {
	margin: 0 0 20px 0;
}

#gallery li {
	float: left;
	display: inline;
	margin:0 10px 10px 0;
	list-style: none;
}

/*** Elsewhere ***/

#elsewhere {
border-top: 1px solid #333;
padding: 0 1px 1px;
margin-left: 0;
}

#elsewhere li {
list-style: none;
margin: 0;
border-bottom: 1px solid #333;
text-align: left;
}

#elsewhere li a {
display: block;
padding: 0.5em 0.75em 0.5em 0.75em;
border-left: 0.5em solid #666;
text-decoration: none;
}

#elsewhere li a:link { color: #ccc; }
#navlist li a:visited { color: #666; }

#elsewhere li a:hover
{
border-color: #0099cc;
color: #0099cc;
}