/* CSS Document */

/* reset.css by Eric Meyer */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/******************************** CUSTOM 'DEFAULTS' **********************************/

body {
	/* font-size: 62.5%; */
	font-size: 100%;
	line-height: 1.33;
	font-family: tahoma, verdana, sans-serif;
	color: #23160f;
	background-color: #fff;
}


/* base.css, part of YUI's CSS Foundation */
h1 {
	/*18px via YUI Fonts CSS foundation*/
	font-size: 180%;  
}
h2 {
	/*16px via YUI Fonts CSS foundation*/
	font-size: 160%; 
}
h3 {
	/*14px via YUI Fonts CSS foundation*/
	font-size: 140%;  
}
h1,h2,h3 {
	/* top & bottom margin based on font size */
	margin: 1em 0;
}
h1,h2,h3,h4,h5,h6,strong {
	/*bringing boldness back to headers and the strong element*/
	font-weight: bold; 
}
abbr,acronym {
	/*indicating to users that more info is available */
	border-bottom: 1px dotted #000;
	cursor: help;
} 
em {
	/*bringing italics back to the em element*/
	font-style :italic;
}
blockquote,ul,ol,dl {
	/*giving blockquotes and lists room to breath*/
	margin: 1em;
}
ol,ul,dl {
	/*bringing lists on to the page with breathing room */
	margin-left: 2em;
}

ol li {
	/*giving OL's LIs generated numbers*/
	list-style: decimal outside;	
}
ul li {
	/*giving UL's LIs generated disc markers*/
	list-style: disc outside;
	margin-left: 2em;
}
dl dd {
	/*giving UL's LIs generated numbers*/
	margin-left: 1em;
}
th,td {
	/*borders and padding to make the table readable*/
	border: 1px solid #000;
	padding: .5em;
}
th {
	/*distinguishing table headers from data cells*/
	font-weight: bold;
	text-align: center;
}
caption {
	/*coordinated margin to match cell's padding*/
	margin-bottom: .5em;
	/*centered so it doesn't blend in to other content*/
	text-align: center;
}
p,fieldset,table,pre {
	/*so things don't run into each other*/
	margin-bottom: 1em;
}
/* setting a consistent width, 160px; 
   control of type=file still not possible */
input[type=text],input[type=password],textarea{ 
	width: 12.25em;
	*width: 11.9em;
}
/* structure.css */

body {
	margin: 0;
	padding: 0;
	background: url(../graphics/grass1.jpg) repeat 0 0;
	font-family: Georgia, Times, serif;
}
body.vertical, body.vertical_must {
	min-width: 975px;
	width: auto !important;
	/* width: 975px; */	
}

div#container {
	background-color: #111;
}

/*******************************************************************************************************
 *													HEADER
 ******************************************************************************************************/ 
  
div#branding {
	/* position: fixed; */
	left: 0;
	top: 0;
	background: white url(../graphics/header.jpg) 0 0 repeat-x;
	height: 156px;
	width: 10000px; /* overridden by js */
	position: relative;
}
body.vertical div#branding, body.vertical_must div#branding {
	width: 100%;
}
	#branding h1 {
		margin: 0;		
		left: 0;
		top: 0;
		height: 156px;
		width: 794px;
		background: transparent url(../graphics/sunburst2.png) no-repeat 0 -40px;
		position: fixed;
	}
	body.vertical #branding h1, body.vertical_must #branding h1 {
		position: static;
		position: absolute;
	}
		#branding h1 a {
			position: absolute;
			left: 55px;
			top: 35px;
			margin: 0;
			text-indent: -10000px;
			width: 200px;
			height: 80px;
			background: transparent url(../graphics/ccdbc1.gif) left top no-repeat;
		}		
			
/*******************************************************************************************************
 *													NAVIGATION
 ******************************************************************************************************/ 
	
	ul#mainnav {
		position: fixed;
		/* margin: 0 0 0 -50px;
		left: 50px; */	
		top: 125px;
		width: 10000px; /* overridden by js */
		background: url(../graphics/road-top1.png) repeat-x left bottom;
		padding-bottom: 20px;		
		/* padding-left: 28px; */
		margin: 0;
	} 
	body.vertical ul#mainnav {
		position: absolute;
		/* min-width: 988px;
		width: auto !important;
		width: 988px; */
		width: 100%;
	}
		#mainnav li {
			list-style: none;
			display: inline;
			margin-left: 25px;
		}
			#mainnav li.first {
				margin-left: 53px;
			}
		#mainnav li a {
			text-decoration: none;
			color: #033;
			font: bold .9em/1.2em garamond,times,serif;
		}
			#mainnav li a:hover {
				text-decoration: underline;
				color: #ff0000;
			}
		
			body#home #mainnav_home a, body#membership #mainnav_membership a, body#racing #mainnav_racing a, body.grouprides #mainnav_grouprides a, body#sponsors #mainnav_sponsors a, body#links #mainnav_links a, body#news #mainnav_news a, body#features #mainnav_features a, body.features #mainnav_features a, body.classifieds #mainnav_classifieds a {
				color: #ff0000;
			}
					
	ul#navarrows {
		position: fixed;
		top: 60px;
		display: none;
		left: 400px;
	}
	body.vertical ul#navarrows, body.vertical_must ul#navarrows {
		position: absolute;
	}
		#navarrows li {
			list-style: none;
			display: block;
			height: 15px;
			float: left;
			width: 66px;
			text-indent: -5000px;
			background: url(../graphics/left.gif) no-repeat 0 0;
			margin-right: 30px;
		}
			#navarrows li+li {
				width: 76px;
				background-image: url(../graphics/right.gif);
			}
			#navarrows:hover {
				cursor: pointer;
			}

	li#logon {
		position: relative;
		z-index: 1;
	}
	
	button#format {
		display: none;
		position: fixed;
		left: 556px;
		top: 56px;
		z-index: 100;
		border-width: 0;
		text-indent: -5000px;
		width: 15px;
		height: 56px;		
		background: transparent url(../graphics/format.gif) no-repeat 0 -16px;
	}
		body.vertical button#format {
			position: absolute;
			width: 72px;
			height: 15px;
			background-position: 0 0;
			left: 530px;
			top: 76px;
		}
		button#format:hover {
			cursor: pointer;
		}
/*******************************************************************************************************
 *													LOGIN FORM
 ******************************************************************************************************/ 

	#loginform {
		display: none;
		position: absolute;
		left: -180px;
		top: 30px;
		border: 3px solid #666;
		padding: 0 15px 15px;
		background-color: #333;
		font-size: .75em;
		font-family: Georgia, Times, serif;
		z-index: 250;
		width: 200px;
		height: auto !important;
		height: 120px;
		min-height: 120px;
		overflow: hidden;
		top: -130px;
	}
		#loginform div.hiddenFields {
			display: none;
		}
		#loginform p {
			clear: both;
			overflow: hidden;
		}
		#loginform label {
			font-weight: bold;
			color: #fff;
			margin-top: 5px;
			
			float: left;
		}
			#loginform input {
				margin: 0;
				background-color: #eee;
				font-weight: normal;
				font-family: verdana, tahoma, sans-serif;
				width: 115px;
				height: 15px;
				float: right;
				display: -moz-inline-box;
				display: inline-block;
			}
		
/* all FF */
#loginform label input, x:-moz-any-link {
	/* margin-top: -20px; */
}
/* FF3 */
#loginform label input, x:-moz-any-link, x:default {
	/* margin-top: -20px; */
}
				
			#mainnav #loginform a {
				font-weight: bold;
				color: #fff;
				text-decoration: underline;
				display: -moz-inline-box;
				display: inline-block;
				margin-top: 10px;
			}
				#mainnav #loginform a.cancellogin {
					font-size: 1.5em;
					font-family: tahoma, verdana, sans-serif;
					text-decoration: none;
					margin-top: 5px;
				}
				
			#loginform p.button {
				text-align: right;
			}
				#loginform p.button a {
					float: left;
				}
			#loginform button {
				border: 2px solid #666;
				background-color: #999;
				color: #fff;
				font-weight: bold;
				-moz-border-radius: 4px;
				-khtml-border-radius: 4px;
				-webkit-border-radius: 4px;
				border-radius: 4px;
				margin-top: 6px;
			}

/* all FF */
#loginform button, x:-moz-any-link {
	/* margin-top: -1.5em; */
}
/* FF3 */
#loginform label button, x:-moz-any-link, x:default {
	/* margin-top: -1.5em; */
}



		
/*******************************************************************************************************
 *													PAGE STRUCTURE
 ******************************************************************************************************/ 

/* holds all text boxes, the road */			
div#maincontent {
	margin: 160px 0 0 0;
	padding: 54px 0 0 54px;
	min-height: 446px;
	width: 10000px; /* default for non-js browsers */
	background: url(../graphics/road-center1.png) repeat left top;
	font-size: 83.33%;
	line-height: 1.5;
	overflow: hidden;
	margin-top: 10px;
	position: relative;
	z-index: 200;
}
body.vertical div#maincontent, body.vertical_must div#maincontent {
	padding: 50px 0 0 50px;
	/* width: auto; */
	width: 100%;
	min-height: 0;
	height: auto !important;
	height: 1px;	
}
/* for design only: the grass */
div#road_bottom {
	display: block;
	width: 10000px; /* overridden by js */
	height: 20px;
	background: url(../graphics/road-bottom1.png) repeat-x left top;	
}
body.vertical div#road_bottom, body.vertical_must div#road_bottom  {
	width: 100%;
}
/* holds actual content */
div.text {
	position: relative;
	width: 470px;
	float: left;
	margin-right: 75px;
	margin-bottom: 20px;
	padding: 0;
	background: #ff0 url(../graphics/text1.png) repeat-y left top;
}
body.vertical div.text, body.vertical_must div.text {
	width: 900px;
	float: none;
	margin-bottom: 75px;
	background-image: url(../graphics/text_wide.png);
}
	div.text:before {
		display: block;
		height: 20px;
		background: url(../graphics/road-bottom1.png) repeat-x left top;
		content: '';
	}
	div.text:after {
		display: block;
		height: 20px;
		background: url(../graphics/road-top1.png) repeat-x left bottom;
		content: '';
		clear: both;
	}
	body.vertical div.text:after, body.vertical_must div.text:after {
		height: 30px;
	}
/* wider textboxes, ie for members table */
div.vartext {
	background: #ff0 url(../graphics/text-left.png) repeat-y left top;
	height: 410px;
	float: left;
	margin: 0 75px 0 0;
	position: relative;
	padding: 0;
	overflow: hidden;
}	
		div.vartext:before {
			display: block;
			height: 20px;
			background: url(../graphics/road-bottom1.png) repeat-x left top;
			content: '';
		}		
		div.vartext:after {
			display: block;
			height: 20px;
			background: url(../graphics/road-top1.png) repeat-x left top;
			content: '';
		}
		
		div.vartext_inner {
			background: url(../graphics/text-right.png) repeat-y right top;
			margin: -20px 0 -20px 35px;
			padding-top: 30px;
			height: 380px;
		}
		div.vartext_inner > div {
			margin-right: 35px;
		}
		div.vartext_inner {
			/* margin-bottom: 20px; */
		}
		
/*******************************************************************************************************
 *													ELEMENTS
 ******************************************************************************************************/ 
	
	/* can't put side padding in div.text because of :before and :after, so give everything left and right margins, exceptions & overrides below */
	.text > * {
		margin-left: 35px;
		margin-right: 35px;
	}	
		.text a {
			margin: 0;
			text-decoration: none;
			/* color: #0c4b17; */
			color: #002d39;
			font-weight: bold;
			border-bottom: 1px dotted;
		}
			.text a:hover {
				color: #00f;
				border-bottom: 1px solid;
			}
			
			/* gorillabox links */
			.text a.gorillabox {
				border-bottom-width: 0;
			}
						
	.text h2, .text h3 {
		color: #263;
		color: #002d39;
		margin: 0px 35px 8px 35px;
	}
	
	.text h3 {
		font-style: italic;
		padding-bottom: 0;
		margin-bottom: -2px;
	}
		.text h3 a {
			width: 100%;
			border-bottom-width: 0;
		}
			.text h3 a:hover {
				border-bottom: 1px dotted #033;
			}		
	.text p {
		margin: 5px 35px;
	}
	
	.text h2 {
		border-bottom: 1px solid #033;
	}
	.text h2+p {
		/* border-top: 1px solid #033;
		padding-top: 10px; */
	}
	
	.text h3+p {
		padding-top: 0px;
	}
		
	.text img {
		float: right;
		margin-left: 10px;
	}
	
	/* thumbnail images in posts */
	.text img.intext {
		float: none;
		margin: 10px;
	}
	.text > dl {
		margin-top: 0;
	}
	
	.text li {
		margin-left: 1em;
	}
	
	div.clear {
		clear: left;
	}
	
	/* post author */
	.text p.author {
		font-size: 1.1em;
		font-style: italic;
	}
	
	p.backlink {
		width: 157px;
		height: 15px;
		margin: -50px 0 45px 380px;
	}
	p.backlink a {
		display: block;
		width: 157px;
		height: 15px;
		text-indent: 5000px;
		background: url(../graphics/backlink.png) no-repeat 0 0;
		color: transparent;
	}
		p.backlink a:hover {
			background-position: 0 -15px;
		}
/*******************************************************************************************************
 *													PAGE-SPECIFIC
 ******************************************************************************************************/ 

/* racing */

#racing .text h3 {
	margin-bottom: 10px;
	border-bottom: 1px solid #033;
}

/* sponsors */

#sponsors .text img {
	float: none;
	display: block;
	margin: 0 auto 10px;
}


/* members */

table {
	/* border-top: 1px black solid; */
	/* border-left: 1px black solid; */
	border-collapse: collapse;
	font-size: .8em;
}
tr {
	/* border-left: 1px solid black; */
}
td {
	background-color: #fff;
	/* border: 1px black solid; */
	padding: 5px 10px;
	border-width: 0;
}

th {
	background-color: #ddd;
	/* border: 1px black solid; */
	padding: 5px 10px;
	border-width: 0;
	text-align: left;
}

/* a {text-decoration:none;} */


/* caption {border:1px black solid; background-color:#ccc; font-weight:bold; font-size:large; padding:15px;} */
caption {
	font-size: 2em;
	color: #002d39;
}

#pdflink {
	background: url("../graphics/club_button-bg.gif") no-repeat scroll 0 -24px transparent;
	color: #fff;
	font-size: 12px;
	padding: 4px 8px;
	margin-left: 20px;
	text-decoration: none;
}
	#pdflink:hover {
		text-decoration: underline;
	}
/* tr colors for distinguishing members, unpaid members, potential members, etc */
tr.member {color:#000;}
tr.unpaid {color:#e00;}
tr.potential {color:#0e0;}

#memberlist .vartext  {
	/* height: 380px; */
}

table#members {
	width: 1100px;
	height: 280px;
	overflow: auto;
	padding-bottom: 10px;
}


#memberlist tbody {
	/* display: block;
	display: table-row-group;
	width: 1100px;
	height: 280px;
	overflow: auto; */
}
	#memberlist tbody tr {
		/* height: auto; */
	}
	
#memberlist div.vartext {
	/* height: 400px; */
	/* overflow: scroll;
	position: relative; */
}

/* group rides */

#entryform, #editform {
	position: relative;
	width: 380px;	
}
	#editform {
		width: 825px;
	}
#entryform label, #editform label {
	display: block;
	clear: both;
}
#entryform input, #entryform textarea, #editform input, #editform textarea, #entryform select, #editform select {
	display: block;
	width: 380px;
	background-color: #fcffaf;
}
	#editform input, #editform textarea {
		width: 825px;
	}
	#entryform label.field-day, #entryform label.field-day select, #entryform label.field-time input {
		width: 180px;
		float: left;
	}
	#editform label.field-day, #editform label.field-day select, #editform label.field-time input {
		width: 180px;
		float: left;
	}
	#entryform label.field-time, #editform label.field-time {
		width: 180px;
		margin-left: 20px;
		float: left;
		clear: none;
	}
	#entryform label.field-radio, #editform label.field-radio {
		display: -moz-inline-block;
		display: inline-block;
	}
		#entryform label.field-radio input, #editform label.field-radio input {
			display: inline;
			width: auto;
			/* background-color: #ff0; */
		}
		
#entryform fieldset.buttons p, #editform fieldset buttons p {
	margin-left: 0;
	margin-right: 0;
	position: relative;
}
	#entryform fieldset.buttons a, #editform fieldset.buttons a {
		position: absolute;
		right: 0;
		top: 0;
	}
#entryform button, #editform button, #editform fieldset.buttons a {
	/* display: block; */
	display: -moz-inline-box;
	display: inline-block;
	width: 75px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	border-width: 0;
	background: url(../graphics/club_button-bg.gif) no-repeat 0 -24px;
}
	#entryform button:hover, #editform button:hover, #editform fieldset.buttons a:hover {
		color: #ff0;
		background-position: 0 0;
	}
	#entryform button:focus, #editform button:focus, #editform fieldset.buttons a:focus {
		background-position: 0 -48px;
	}
	
#entryform a.helplink {
	position: absolute;
	right: 20px;
	top: 0;
	/* margin-top: -36px; */
	color: #666;
	font-weight: bold;
}


.grouprides dt, .grouprides .text li {
	font-weight: bold;
}
	.grouprides .text li span {
		font-weight: normal;
	}
.grouprides dl p {
	margin-left: 0;
}

.grouprides a#editride {
	/* margin-left: 200px; */
}
/* classifieds */

.classifieds .text > img {
	float: none;
	margin: 20px 35px;
}
