/* CSS Document */

/* Body and Universal Reset */

* {
	margin: 0;
	padding: 0;
}

html {
	background:url(/images/backgrounds/bg.jpg) no-repeat top center #BC1B2B;
}

#container {
	margin:0 auto;
	width: 900px;
	padding:5px 30px 30px;
	background: url(/images/backgrounds/mainContBG.png) repeat-y;
}

#popupWindowCaller {
	display:none;
}

.clear {
	clear:both;
	height:1px;
}

img {
	border: none;
}

.right {
	float:right;
}

/* Typography */


/* Header */

#header {
	width:926px;
	padding:25px 16px 0 18px;
	height:364px;
	margin:20px auto 0;
	background:url(/images/backgrounds/headerBG.png) no-repeat;
}

#header a.logo {
	margin: 0px 0px -60px 10px;
	padding: 0px;
	text-indent: -9999px;
	height: 265px;
	width: 236px;
	display:block;
	position:relative;
	z-index:100;
	background:url(/images/backgrounds/logo.png) top left no-repeat;
}

.downloadFlyer {
	float:right;
	margin:30px 20px 0 0;
}


/* Main Navigation */

#mainNav {
	height:40px;
	margin:0 15px 0 0;
	float:right;
}

#mainNav li {
	list-style:none;
	float:left;
	position:relative;
}

#mainNav > li {
	margin:0 0 0 10px;
}

#mainNav > li.first {
	margin-left:0;
}

#mainNav li a {
	padding:3px 15px;
	background:url(/images/backgrounds/nav_bg.png) repeat-x #FFFC00;
	border:4px solid #FFFC00;
	color:#102B7A;
	display:block;
	text-transform:uppercase;
	font-weight:bold;
	font-size:12px;
}

#mainNav > li > a {
	height:22px;
	font-size:14px;
	padding:5px 15px;
	-moz-box-shadow: #333 2px 2px 3px;
    -webkit-box-shadow: #333 2px 2px 3px;
    box-shadow: #333 2px 2px 3px;
	-moz-border-radius: 12px;
    -webkit-border-radius: 12px;
    border-radius: 12px;
}

#mainNav li a:hover, #mainNav li.current > a {
	color:#D4001C;
}

#mainNav ul {
	position:absolute;
	width:200px; /* left offset of submenus need to match (see below) */
	top:-999px;
}

#mainNav ul li {
	width:100%;
}

#mainNav li:hover {
	visibility:inherit; /* fixes IE7 'sticky bug' */
}

#mainNav li:hover ul, #mainNav li.sfHover ul {
	left:0;
	top:42px; /* match top ul list item height */
	z-index:99;
}

#mainNav li:hover li ul, #mainNav li.sfHover li ul {
	top:-999em;
}

#mainNav li li:hover ul, #mainNav li li.sfHover ul {
	left:200px; /* match ul width */
	top:0;
}

#mainNav li li:hover li ul, #mainNav li li.sfHover li ul {
	top:-999em;
}

#mainNav li li li:hover ul, #mainNav li li li.sfHover ul {
	left:200px; /* match ul width */
	top:0;
}

#mainNav ul li a {
	margin:1px 1px 0 0;
}


/* Sidebar */

#sidebar {
	float: right;
	width: 315px;
	padding: 20px;
	border-left: 1px solid #CCCCCC;
}


/* FIND US */

.findUs {
    margin: 0 0 25px 30px;
    padding: 15px 0 10px 13px;
    width: 245px;
	float:right;
	background:#eee;
}

.findbox {
	margin:0 0 10px;
	width:230px;
}

div.findbox {
	background:url(/images/backgrounds/find_or.png) no-repeat;
	padding:20px 0 0 0;
}

.findInput {
	width:112px!important;
	padding:3px 4px;
	line-height:20px;
	font-size:11px;
}

select.findInput {
	width:182px!important;
}

.selectStateHeading {
	font-weight:bold;
}

#content input.SearchButton {
	float:right;
	padding:3px 5px!important;
}

.mapFindBox span {
	vertical-align:top;
}

.mapFindBox img {
	margin-left:60px;
}


/* Content */

#content {
	padding:0 20px 10px;
}

#content p, #content table, #content ul, #content ol {
	margin:0 0 18px 0;
}

#content ol, #content ul {
	margin-left:18px;
}

#content ul.styledList {
	margin:0 0 10px 0;
}

#contentFooter li {
	list-style:none;
	float:left;
}

.home h2 {
	font-size:24px;
	margin-top:30px;
}


/* Locations */

#content .locationGroupList {
	list-style:none;
	margin:0;
}

.locationGroupList li {
	float:left;
	margin:0 20px 20px 0;
	width:200px;
}

.locationGroupList li.locationGroupContainerRight {
	margin-right:0;
}

.locationGroupList li.clear {
	clear:both;
	float:none;
	margin:0;
}

.locationGroupList h3 {
	margin:0;
}

#content .locationGroupList p {
	margin:0 0 5px;
}

.locationDetailsTable td {
	padding:0 10px 0 0;
	vertical-align:top;
}


/* Events */

.eventDate {
	background:url(/images/backgrounds/nav_bg.png) repeat-x #FFFC00;
	border:4px solid #FFFC00;
	width: 62px;
	height: 60px;
	padding: 3px;
	text-align: center;
	float: left;
	line-height:18px;
}

#content .eventDate p {

	margin: 0px;
	padding: 0px;
}

#content .eventDate .day {
	margin: 3px 0px 3px 0px;
	font-weight: bold;
	font-size: 26px;
}

#content .eventDate .month {
	font-weight: bold;
	font-size: 12px;
}

#content .eventDate .year {
	border-top: 1px solid #4D4D4D;
	padding-top: 2px;
	font-weight: normal;
	font-size: 11px;
}

.eventDetails {
	margin:0 0 18px 90px;
	min-height:73px;
	line-height:18px;
}

.eventDetails h3, #content .eventDetails p {
	margin:0 0 5px 0;
}

.addressLabel {
	float:left;
}

.eventAddress {
	margin-left:66px;
	display:block;
}


/* Blog */

.displaying {
	text-align:center;
}

#content p.nextprevnav {
	text-align:center;
	margin:18px 0 0 0;
}

.nextprevnav a, .nextprevnav span {
	margin:0 6px;
}

.nextprevnav span.nextprevdisabled {
	background-color:#ccc!important;
	cursor:default!important;
	border:1px solid #ccc!important;
}

.nextprevcurrentpage {
	text-decoration:underline;
}

.blogListingThumb {
	float:left;
}

.blogListingContainerWImage {
	margin-left:160px;
	min-height:128px;
}

#content .blogListingContainer p {
	margin:0 0 10px 0;
}

.blogDate {
	color:#A6A6A6;
}

.blogAddThisTop {
	float:right;
}


/* Footer */

#footer {
	clear: both;
	text-align:center;
	background: url(/images/backgrounds/footerBG.png) no-repeat;
	width:960px;
	margin:0 auto 30px;
	color:#fff;
	font-size:12px;
}

#footer a {
	color:#fff;
}

#footer ul {
	height:43px;
	margin:0 0 15px 0;
	line-height:43px;
	text-transform:uppercase;
	font-weight:bold;
	font-size:14px;
}

#footer li {
	display: inline;
	list-style: none;
	padding:0 20px;
	border-left:1px solid #00A7E8;
}

#footer li.first {
	border-left:none;
}

#footer li a {
	color:#00A7E8;
}

/* Sitemap */
#content ul.sitemap {
	list-style: none;
	margin: 0px;
	padding:0px;
}

ul.sitemap li a {
	padding: 5px 0px 3px;
	display:block;
}

ul.sitemap a:hover {
	color:#000;
}

	ul.sitemap li.sitemapHeading a {
		font-size: 16px;
		padding: 10px 5px;
		margin: 0px 0px 0px;
		border-bottom: 1px solid #dddddd;
		font-weight:bold;
		display:block;
	}
	
	ul.sitemap li.sitemapHeading a:hover {
		background:#eee;
		border-bottom: 1px solid #aaa;
	}

/* Breadcrumbs */

#breadcrumbs {
	display:block;
	width: 100%;
}

#breadcrumbs ul {
	list-style:none;
	margin: 0px 0px 15px;
	padding: 7px 15px;
	background: #ededed;
	display:block; 
	position: relative;
	float:left;
	width: 95%;
	box-shadow: inset 0px 3px 5px rgba(0,0,0,0.1);
		-moz-border-radius: 5px; -webkit-border-radius: 5px; -o-border-radius: 5px; -ms-border-radius: 5px;
	border-radius: 5px;
}

#breadcrumbs ul li {
	display:inline;
	padding: 0px 30px 0 0;
}

#breadcrumbs ul li a {
	padding: 0px 10px 0 0;

}

span.breadcrumbDivider {
    position: absolute;
	color: #FFFFFF;
    font-size: 71px;
	line-height:71px;
    top: -25px;
	text-shadow: -1px 0px 0px #ccc;
	font-weight:normal;
}

#breadcrumbs ul li a.currentBreadcrumb {
	color:#000;
	font-weight:bold;
}

/* Online Enquiry Form */

.onlineEnquiryTable td {
	padding-bottom:5px;
}

.yourDetails {	
	padding:7px 0 0 0;
	height:30px;
	font-weight:bold;
	font-size:13px;
}

.requiredFields {
	float:right;
	padding:4px 0 0 0;
	font-size:11px;
}

.required {
	text-align:center;
	vertical-align:middle;
	padding-left:15px;
	padding-right:5px;
}

input, textarea, select {
	font-family:Arial, Helvetica, sans-serif;
	font-size:12px;
}

input[type="text"], input[type="password"], input.textinput, input.textinputhover, textarea {
	width:440px;
		-webkit-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
		-moz-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	border-radius: 3px;
	padding:6px;
	border:1px solid #BABABA;
}

input[type="text"]:focus, input[type="password"]:focus, .textinputhover, textarea:focus {
	border:1px solid #102B7A; 
	-webkit-box-shadow: #102B7A 0 0 2px;
    -moz-box-shadow: #102B7A 0 0 2px;
    box-shadow: #102B7A 0 0 2px;
}

.onlineEnquiryTable .errorInput {
	background: url(/images/icons/error.gif) no-repeat right 3px #fff;
	-webkit-box-shadow: #E59595 0 0 2px;
    -moz-box-shadow: #E59595 0 0 2px;
    box-shadow: #E59595 0 0 2px;
	border:1px solid #CC0000; 
}

.submit {
	text-align:right;
	width: 100%;
}

.submit a, .submit input[type="submit"], .submit button {
	float:right;
}

.errorText {
	color:#CC0000;
}

input.hintText {
	color: #999999;
}

/***** BUTTONS *****/

input[type="submit"], button, .button, .smallCallToAction {
	padding:5px 24px!important;
	background:url(/images/buttons/button.png) #D4001C top center repeat-x!important;
	display:inline-block;
	font-size:14px;
	line-height:normal !important;
	text-transform:uppercase;
		-webkit-border-radius: 10px; -moz-border-radius: 10px; -o-border-radius: 10px; -ms-border-radius: 10px;
	border-radius: 10px;
	color:#fff;
	text-shadow: -1px -1px 0px rgba(0,0,0,0.2);
	font-weight:bold;
	letter-spacing:1px;
	cursor:pointer;
	box-shadow:1px 1px 1px rgba(0,0,0,0.2);
	border: 1px solid #D4001C!important;
}

input[type="submit"]:hover, button:hover, .button:hover, .smallCallToAction:hover {
	background-position: center center!important;
	color:#fff;
}

input[type="submit"]:active, button:active, .button:active, .smallCallToAction:active {
	background-position: bottom center!important;
	color:#fff;
}

/***** Error / Info / Caution Boxes *****/

.error_box, .info_box {
	margin:0 0 15px 0;
	padding:15px;
	border-width: 3px;
	border-style: solid;
}

.error_box {
	border-color: #CC0000;
	background-color: #f3d8d8;
	color:#CC0000;
}

.info_box {
	border-color: #7F8F13;
	background-color: #E0E6B6;
	color:#7F8F13;
}

#content .error_box ul {
	margin-bottom:0;
}


/* Classes Reserved for the TinyMCE Editor  */

.editor {
	width: 100%;
}

.mini_editor {}