@charset "utf-8";
body {
	background-color: #1d1d23;
	width: 100%;
	margin: 0;
	padding: 0;
	background-image: url(/images/layout/body-bg-repeater.jpg);
	background-repeat: repeat-x;
	background-position: left top;	
}

#outer_container {
	width: 100%;
	min-width: 1000px;
	background-image: url(/images/layout/body_bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;	
}

#container {
	width: 1000px;
	margin: 0 auto;
	background-image: url(/images/layout/container_bg.png);
	background-position: left top;
	background-repeat: repeat-y;
}

#wrapper {
	width: 950px;
	padding: 0 25px;
	min-height: 816px; /*850px*/
	padding-bottom: 34px;
	background-image:url(/images/layout/wrapper_bg.jpg);
	background-position: left top;
	background-repeat: no-repeat;		
	position: relative;	
}

h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;	 /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
}

#header {
	width: 950px;
	height: 204px;
	background-image: url(/images/layout/header_bg.jpg);
	background-position: left top;
	background-repeat: no-repeat;		
	clear: both;
}
#logo { 
	float: left;
	width: 468px;
	height: 204px;
}

/* Mid navigation */
#mid_nav {
	height: 26px;
	width: 929px; /*950px*/
	padding-left: 21px;
	clear: both;
	background-image: url(/images/layout/mid_nav_bg.jpg);
	background-position: left top;
	background-repeat: no-repeat;	
}
#mid_nav ul {
	width: 929px;  /*950px*/
	height: 26px;
	padding:0;
	margin: 0;
}
#mid_nav ul li {
	display: inline;
	position: relative;
	float: left;
	height: 12px; /*26px*/
	line-height: 12px;
	padding: 7px 35px 7px 35px;
}
#mid_nav ul li:hover { background-color: #df1e37; }

#banner {
	width: 950px;
	height: 176px;
	clear: both;	
}

/* Galleries navigation */

#galleries-nav {
	width: 940px;
	height: 40px;
	padding-top: 26px;
	padding-left: 10px;
	clear: both;
	border-bottom: 1px solid #df1e37;
	margin-bottom: 30px;	}
	
#galleries-nav ul {
	width: 950px;  /*950px*/
	height: 26px;
	padding:0;
	margin: 0;
}
#galleries-nav ul li {
	display: inline;
	position: relative;
	float: left;
	height: 26px; /*26px*/
	line-height: 26px;
	padding: 7px 25px 7px 25px;
}
#galleries-nav ul li:hover { background-color: #df1e37; }

#galleries-nav ul li a {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	font-size: 14px;
	line-height: 26px;
	text-decoration: none;
	display: block;
	height: 26px;
	
}
#galleries-nav hr { color:#F00; border-color: #f00;}



td.photogalleryItem img { margin: 10px; border: 1px solid #666; }


/* Main content - Home and General templates */
.content {
	min-height: 380px; /*410px*/
	float: left;
	margin: 0;
	padding: 5px 44px 25px 44px;
	width: 611px; /* 699px */
}
#content_general {
	width: 862px;	
}

/* Right Sidebar Section */
#sidebar2 {
	float: left;
	width: 202px; /*251px*/
	padding: 15px 44px 10px 5px;
	
}
#contact_us_text {
	width: 202px;
	padding-bottom: 24px;
	font-size: 19px;
	color: #302f39;
	line-height: 22px;
}
#contact_us_text .red_text {
	color: #df1e37;
}

#contact_details {
	width: 202px;
	padding: 0 0 13px 0;
	font-size: 15px;
	color: #302f39;
	background-image: url(/images/layout/red-block-line.jpg);
	background-position: left bottom;
	background-repeat: no-repeat;
}
#contact_details .phone_large {
	font-size: 32px;
	color: #df1e37;
	line-height: 38px;
}
#contact_details a, contact_details a:visited, contact_details a:hover  {
	font-size: 15px;
	color: #302f39;
	font-weight: bold;
	text-decoration: none;
}
#contact_details a:hover  { text-decoration: underline;}

/* Site Map Styling */
.site_map ul{
	list-style-type: none;
	margin-left: 0;
	padding-left: 3px;
}
.site_map ul li{
	list-style-type: none;
	margin-left: 0;
	padding-left: 15px;
}

hr { height: 1px; border: 0; border-top: 1px solid #CCC; }

#clearer{ /* outside container clearer */
	width: 100%;	
	height: 0px;
	background-color:transparent;
	position: relative;/* this gives IE6 hasLayout to properly clear */
	clear: both; /* this clear property forces the .container to understand where the columns end and contain them */
}

#footer {
	position: absolute;
	bottom: 0;
	left: 25px;
	width: 904px;
	padding: 10px 23px 0 23px;
	height: 24px; /*34px*/
	background-image: url(/images/layout/footer_bg.jpg);
	background-position: left top;
	background-repeat: no-repeat;	
}

/*     -----     Website Info Content Holder     -----     */
#websiteinfo{ margin: 0 auto; width: 904px;}
	#wi_left { width: 20%; text-align: left; float: left;}
	#wi_mid { width: 60%; text-align: center; float: left;}
	#wi_right { width: 20%; text-align: right; float: left; }

		  
.float_right {
	float: right;
	clear: right;
}
.float_left {
	float: left;
	clear: left;
}
.float_elements_left { float: left; padding: 0 37px 15px 0; }
.float_elements_right { float: right; padding: 0 0 15px 37px; }
img.float_right, .float_right img  {
	padding-bottom: 15px;
	padding-left: 24px;
}
img.float_left, .float_left img  {
	padding-bottom: 15px;
	padding-right: 24px;
	
}
.clear { clear: both; }
img, a img { border: none; }

.image_float_grid_item { 
	float: left;
	width: 263px;
	text-align: center;
	padding: 0 10px;
}
.image_float_grid_item h2{ 
	padding-bottom: 20px;
}

.before_after_text {width: 100%; height: 20px; margin: 0; padding: 0; clear: both; }
.before_text {
	width: 209px;
	height: 20px;
	margin: 0;
	padding: 0;
	padding-right: 14px;
	color: #3e3f41;
	font-size: 12px;
	text-align: center;
	float: left;
}