/*////////////////////////////////////////////*/
/* Global Elements */

html, body {
	height: 100%;
}

body {
	margin:0;
	padding:0;
	text-align:center;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size:14px;
	color:#061927;
	background:#dee1e4 url(./images/body-bg.jpg) repeat-x top left;
}

p {
	margin-bottom:8px;
	line-height:22px;
}

ul {
	list-style:none;
	padding:0px;
	margin:0px;
}

ul li {
	display:inline;
	list-style:none;
}

a {
	color:#2679b6;
}

a:hover {
	text-decoration:none;
}

img {
	border:0px;
}

h2, h3, h4, h5, legend {
	letter-spacing:-1px
}

h4 {
	font-size:18px;
	margin-bottom:4px;
}

h6 {
	letter-spacing:normal;
}

/*////////////////////////////////////////////*/
/* Root Elements */

#container {
	width:960px;
	margin:0 auto -120px;
	padding:0;
	text-align:left;
	min-height: 100%;
	position:relative;
}

#fullMap #container {
	width:100%;
	margin:0;
}

#header {
	height:100px;
	padding-top:0px;
}

#fullMap #masthead {
	margin:0;
	padding:0;
}

#fullMap #header {
	margin-left:20px;
	margin-bottom:0;
}

h1, h2, h3, h4, h5, h6, legend {
	color:#2c281b;
	font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;
}

h1 {
	margin:0px;
	padding:0px;
}

h1 a {
	background: no-repeat 0 0;
    display: block;
    height/**/:/**/ 0 !important;
    overflow: hidden;
}

h1 a {
	background-image:url(./images/h1.png);
	height:51px;
	width:206px;
	padding-top:51px;
	margin-top:20px;
}

h2 {
	font-size:12px;
	color:#e22d2d;
	letter-spacing:normal;
	margin:0;
	padding:0;
}

h3 {
	font-size:30px;
	margin:0 0 20px 0;
}

h4 {
	font-size:18px;
}

h5 {
	font-size:16px;
}

#sitenav {
	position:absolute;
	top:40px;
	right:0;
	padding:5px 10px;
	font-size:12px;
}

#sitenav li {
	display:inline;
}

#sitenav li a {
	float:left;
	text-align:center;
	text-decoration:none;
	display:block;
	padding:4px 6px;
	margin:4px 5px;
	height:16px;
}

#sitenav li a:hover, #sitenav li a.selected {
	background:#e22d2d;
	color:#e6ebef;
}

/*////////////////////////////////////////////*/
/* User Account Area */

#userArea {
	padding:0;
	margin:40px 0 20px 0;
	position:absolute;
	top:96px;
	left:660px;
	height:100px;
}

#userArea h4 {
	margin-bottom:12px;
}

#userArea a {
	padding:4px 8px;
	background:#eeeeee;
	font-size:12px;
	text-decoration:none;
	border:1px solid #c0bcbc;
	border-right:1px solid #aba7a7;
	border-bottom:1px solid #aba7a7;
	margin-right:6px;
	/* CSS3 rounded corners */
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	-khtml-border-radius:4px;
	border-radius:4px;
}

#userArea a:hover {
	background:#e22d2d;
	color:#e6ebef;
}

/*////////////////////////////////////////////*/
/* Main Content Area */

#content {
	margin:0 40px 0 0;
	padding-top:20px;
	float:left;
	width:620px;
}

#content.fullsize {
	margin:0 40px 0 0;
	padding-top:48px;
	float:left;
	width:100%;
	height:100%;
}

#fullMap #content {
	padding-top:0;
}

/*////////////////////////////////////////////*/
/* Main Search Nav */

#searchNav {
	margin-bottom:24px;
}

#searchNav li, #searchNav h3 {
	display:inline;
	letter-spacing: -1px;
	margin-right:12px;
}

#searchNav a {
	font-size:14px;
}

#searchNav h3 a {
	font-size:20px;
	color: #2c281b;
	text-decoration:none;
}

#searchNav a.selected {
	
}

/*////////////////////////////////////////////*/
/* Search Results */

.number_of_results {
	padding:30px 0;
	font-size:16px;
	border-top:2px solid #c0bcbc;
}

a.view_link {
	display:block;
	width:130px;
	float:right;
	padding:4px 8px;
	background:#eeeeee;
	font-size:11px;
	text-decoration:none;
	border:1px solid #c0bcbc;
	border-right:1px solid #aba7a7;
	border-bottom:1px solid #aba7a7;
	margin:0 0 12px 0;
	/* CSS3 rounded corners */
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	-khtml-border-radius:4px;
	border-radius:4px;
}

a.view_link:hover {
	background:#e22d2d;
	color:#e6ebef;
}

#searchList {
	clear:both;
	margin-top:24px;
}

#searchList img, #searchList .resultsListDetails {
	float:left;
}

#searchList img {
	clear:left;
	margin-right:12px;
	border:2px solid #e6ebef;
}

#searchList .resultsListDetails {
	width:520px;
}

#searchList p {
	margin:0 0 30px 0;
	line-height:18px;
}

#searchList p.resultsListName {
	font-size:18px;
	margin:0 0 6px 0;
}

/*////////////////////////////////////////////*/
/* Event Detail Page */

.eventDetail p, .eventDetail ul {
	margin:0 0 8px 0;
}

.eventDetail h3 {
	margin:0;
}

.eventMeta {
	margin-bottom:12px;
}

.eventMeta p {
	margin:0;
	font-style:italic;
}

.cancelled {
	color:red;
}

.eventActions {
	margin:20px 0;
}

.eventRegistration, .eventAdd, .eventRemove {
	padding:4px 8px;
	background:#fff;
	font-size:14px;
	text-decoration:none;
	border:1px solid #c0bcbc;
	border-right:1px solid #aba7a7;
	border-bottom:1px solid #aba7a7;
	margin-right:6px;
	/* CSS3 rounded corners */
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	-khtml-border-radius:4px;
	border-radius:4px;
}

.eventRegistration:hover, .eventAdd:hover, .eventRemove:hover {
	background:#e22d2d;
	color:#e6ebef;
}

.eventInfoHeaders {
	font-size:18px;
	font-weight:bold;
	margin:0 0 4px 0;
}

.eventDetail ul {
	list-style:circle;
}

.eventDetail li {
	display:block;
	margin-left:14px;
}

#eventDescription {
	margin-bottom:24px;
}

/*////////////////////////////////////////////*/
/* Promoter Page */

#promoterDetail img, #promoterDetail h3 {
	float:left;
}

#promoterDetail img {
	margin-bottom:24px;
}

#promoterDetail img {
	margin-right:12px;
}

#promoterDetail div {
	clear:left;
}

.resultsListDetails img {
	float:left;
	margin-right:12px;
}

.promoterListHeading {
	margin:0 0 20px 0;
	border-top:1px solid #c0bcbc;
	padding-top:10px;
	clear:left;
}

.promoterEventList p {
	margin:0 0 30px 0;
	line-height:18px;
}

.promoterEventList p.resultsListName {
	font-size:18px;
	margin:0 0 6px 0;
}

/*////////////////////////////////////////////*/
/* Sidebar */

#sidebar {
	width:300px;
	float:left;
	padding-top:120px;
}

/*////////////////////////////////////////////*/
/* Advertisements */

#advertisers {
	padding-top:30px;
	margin-bottom:0;
}

#advertisers li {
	margin:0 0 8px 0;
	display:block;
	height:250px;
	width:300px;
}

#advertisers h4 {
	margin:0;
	padding:0 0 12px 0;
}

#advertisers p {
	font-size:12px;
	margin:0;
}

#advertisers img {
	border:1px solid #c0bcbc;
}

#google-sidebar-ads {
	width:300px;
	height:250px;
	margin-top:20px;
}

/*////////////////////////////////////////////*/
/* Map */

#mapContainer {
	margin-top:20px;
}

#mapSizeLink {
	padding: 4px 8px;
	display:block;
	text-align:left;
	background:#e6ebef;
	border:1px solid #c0bcbc;
	border-bottom:0;
	font-size:11px;
	width:80px;
	text-decoration:none;
}

#mapSizeLink:hover { background:#fff; }

#map {
	width:618px;
	height:400px;
	font-size:11px;
	border:1px solid #c0bcbc;
	overflow: hidden;
}

#mapContainer p.message {
	margin-top:0;
}

#fullMap #map {
	border:0;
	margin:-20px 0 0 0;
	padding:0;
	width:100%;
	height:100%;
}

/*////////////////////////////////////////////*/
/* Generic Form Style */

form {
	background:#ced2d6;
	border:1px solid #c0bcbc;
	margin:0 0 10px 0;
	padding:0;
}

fieldset {
	border:0;
	padding:0;
	margin:0;
	padding:20px
}

legend {
	font-weight:bold;
	font-size:16px;
	margin:0 0 6px 0;
	padding:0;
}

label {
	display:block;
}

input {
	margin:2px 0 10px 0;
}

input, textarea, select {
	margin-bottom:10px;
}

#submit {
	background:#fff;
	border:1px solid #c0bcbc;
	border-right:1px solid #aba7a7;
	border-bottom:1px solid #aba7a7;
	display:block;
	font-weight:bold;
	padding:10px;
	color: #2c281b;
	letter-spacing: -1px;
	font-size:17px;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

#submit:hover, #submit:focus {
	background:#e22d2d;
	color:#e6ebef;
}

/*////////////////////////////////////////////*/
/* Specific Form Field Styles */

#locationSearch, #dateSearch, #promoterSearch, #instructorSearch {
	background:transparent;
	border:0;
	padding:0px;
}

#locationSearch fieldset, #dateSearch fieldset, #promoterSearch fieldset, #instructorSearch fieldset {
	border:0;
	padding:0px;
}

#address, #radius, #promoter, #instructor, #month, #year, #eName,  #eDate, #eURL, #pName, #pEmail {
	background:#fff;
	font-size:16px;
	border:1px solid #c0bcbc;
}

#address {
	width:100%;
	height:32px;
	letter-spacing:-.7px;
	padding-left:3px;
	line-height:32px;
}

#promoter, #instructor {
	width:100%;
	letter-spacing:-.7px;
}

#address:focus, #address:hover, #eName:focus, #eName:hover, #eDate:focus, #eDate:hover, #eURL:focus, #eURL:hover, #pName:focus, #pName:hover, #pEmail:focus, #pEmail:hover {
	border:1px solid #aba7a7;
}

#optionalFS {
	clear:left;
	margin-top:12px;
}

#optionalFS legend {
	border-bottom:1px solid #c0bcbc;
	padding-bottom:4px;
	width:100%;
	color:#4b545b;
}

#optionalFS fieldset {
	display:block;
	float:left;
}

#optionalFS input, #optionalFS label {
	display:inline;
}

#radiusFS {
	width:300px;
}

#monthFS, #yearFS {
	display:inline;
}

#month {
	width:300px;
}

#year {
	width:150px;
}

#giFS legend, #radiusFS legend {
	border:0;
	font-size:16px;
	font-weight:normal;
	margin-bottom:3px;
	padding-top:6px;
}

#submitFS {
	margin-top:12px;
}

.form-label-notes {
	display:block;
	font-size:11px;
}

.subscribeLabel {
	display:inline;
}

.subscribeLabel .form-label-notes {
	margin:0 0 20px 20px;
}

.requiredFS input {
		width:250px;
}

.requiredFS #zip {
	width:50px;
}

.requiredFS #newPassword, .requiredFS #newPassword2 {
	width:120px;
}

.actionFS {
	padding-top:0;
}

#eName,  #eDate, #eURL, #pName, #pEmail {
		width:300px;
}

#mapSelectForm {
	background:transparent;
	border:0;
	float:right;
	margin:0;
}

#mapSelect {
	display:inline;
}

#mapSelectForm #submit {
	font-size:12px;
	display:inline;
	padding:4px;
}

/*////////////////////////////////////////////*/
/* Form Validation Styles */

.invalid {
    color:#e22d2d;
	font-weight:bold;
}
    
.invalid input, .invalid input:hover, .invalid input:active, .invalid textarea, .invalid textarea:hover, .invalid textarea:active {
	border: 2px solid #e22d2d;
	border-left: 6px solid #e22d2d;
}

/*////////////////////////////////////////////*/
/* Messaging */

#successorfailurebox {
	padding:4px;
	margin:10px auto;
}

.failure {
	color:#e22d2d;
	background:transparent;
}

.success {
	color:#61c950;
	background:transparent;
}

.message {
	padding:20px;
	background:#e6ebef;
	border:1px solid #c0bcbc;
	font-size:14px;
	margin-bottom:20px;
}

.message.error, .message.confirmation {
	padding-left:40px;
	color:#fff;
}

.message.error {
	background: #e22d2d url(./images/failure.png)  no-repeat 10px 14px;
}

.message.confirmation {
	background: #61c950 url(./images/confirmation.png)  no-repeat 10px 14px;
}

.message.error li, .message.confirmation p {
	display:block;
	margin-bottom:4px;
	padding-left:10px;
}

/*////////////////////////////////////////////*/
/* Footer */

#footer {
	clear:both;
	width:620px;
	text-align:left;
	padding-top:60px;
	font-size:11px;
}

#fullMap #footer{
	padding:0 0 0 20px;
	border:0;
}

#footer p {
	line-height:16px;
}

#goal {
	padding-top:10px;
	border-top:1px solid #c0bcbc;
}

.design {
	margin:6px 0 6px 0;
	clear:both;
	padding:6px 0;
	border-top:1px dotted #c7c7c7;
}

.clearfix { clear:both; }

