.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
	zoom: 1;
}
.clearfix {display: inline-block;}  /* for IE/Mac */

/********** Homepage stuff *********/
.hbox {
	background: #F3EAD5 url(images/home/box.jpg);
	padding: 12px 12px 60px;
	width: 284px;
	height: 267px;
	float: left;
	margin: 0 9px 30px;
	color: #666600;
	position: relative;
	display: inline;
}
.hbox h2 {
	background: url(images/home/header-green.jpg);
	width: 268px;
	height: 35px;
	text-transform: uppercase;
	color: #FFF;
	font-size: 17px;
	font-weight: normal;
	line-height: 35px;
	padding-left: 14px;
	margin: 0 auto;
}
h2.hbox-red {
	background-image: url(images/home/header-red.jpg);
}
h2.hbox-orange {
	background-image: url(images/home/header-orange.jpg);
}
h3 {
	font-size: 16px;
	color: #7f9808;
}

.hbox p {
	margin: 0;
	padding: 4px 0 10px 0;
}
.hbox ul {
	margin: 0 0 0 16px;
	padding: 0;
}
.hbox p.linkthrough {
	position: absolute;
	left: 12px;
	top: 240px;
}
/*********************************************/
body {
	background: Black;
	padding: 0;
	margin: 0;
	font: 15px/22px "Trebuchet MS", Trebuchet, sans-serif;
}
a {
	text-decoration: none;
	color: #C63;
	outline: none;
}
a:focus {
	outline: 1px dotted #999;
}
img {
	border: 0;
}
.bold {
	font-weight: bold;
}
#wrapper {
	width: 979px;
	margin: auto;
}
body#index #header {
	height: 331px;
}
#header {
	height: 227px;
/*	background: url(images/sample-header.jpg); */
	overflow: hidden;
	position: relative;
}
#page-container {
	background: #324100;
	border-top: 1px solid #516403;
	position: relative;
	padding-top: 25px;
	_height: 0;
}
#logo {
	width: 190px;
	height: 190px;
	background: url(images/logo.png);
	text-indent: -5000px;
	margin: 0;
	left: 30px;
	top: 20px;
	z-index: 100;
	position: absolute;
}
/******** Nav *********/
#nav {
	margin: 2px 0 0;
	padding: 0;
	height: 40px;
	list-style: none;
}
#nav li {
	float: left;
	width: 160px;
	height: 40px;
	text-align: center;
	line-height: 40px;
}
#nav li a {
	text-transform: uppercase;
	color: #ffe680;
	text-decoration: none;
	display: block;
}
#nav li.active, #nav li:hover {
	background: url(images/nav-on.png);
}
#nav li.active a, #nav li:hover a {
	color: #665b2c;
}

/******* Topnav ********/
#topnav {
	font-size: 14px;
	color: #fffffc;
	margin: 0 0 0 10px;
	padding: 0;
	height: 32px;
	list-style: none;
}
#topnav li {
	float: left;
	height: 32px;
	padding-right: 15px;
	background: url(images/topnav/divider.png) no-repeat right center;
}
#topnav li.last {
	background-image: none;
}
#topnav li:hover, #topnav li.active {
	background: url(images/topnav-on.jpg) no-repeat right -32px;
	border-right: 0;
	border-left: 1px solid #000;
	margin-left: -1px;
}
#topnav a {
	text-decoration: none;
	color: #fffffc;
	display: block;
	padding: 0 0 0 15px;
	line-height: 32px;
}
#topnav li:hover a, #topnav li.active a {
	background: url(images/topnav-on.jpg) no-repeat left top;
	color: #333;
}

#footer {
	font-size: 13px;
	color: #fffffc;
	margin: 5px 0 5px 10px;
	position: absolute;
	left: 30px;
	bottom: 30px;
	width: 900px;
}
#footer a {
	text-decoration: none;
	color: #fffffc;
}

/**********************************************/
#subnav {
	margin: 0;
	padding: 0;
	list-style: none;
}
#subnav li {
	background: url(images/subnav/item.png);
	height: 34px;
	line-height: 34px;
}
#subnav li.first {
	background: url(images/subnav/top.png);
}
#subnav li.last {
	background: url(images/subnav/bottom.jpg) !important;
	height: 96px;
}
#subnav li a.active, #subnav li a:hover {
	background: url(images/subnav/item-active.jpg);
	color: #000;
}
#subnav li.first a.active, #subnav li.first a:hover {
	background: url(images/subnav/top-active.jpg);
}
#subnav li.active a, #subnav li:hover a {
	color: #000;
}
#subnav a {
	padding-left: 20px;
	display: block;
	height: 34px;
	width: 184px;
	color: #ffe680;
}


body.white #subnav li {
	background: url(images/subnav/item-red.png);
}
body.white #subnav li.first {
	background: url(images/subnav/top-red.png);
}
body.white #subnav li.last {
	background: url(images/subnav/bottom-red.jpg) !important;
}

/********* General interior page stuff ***********/
h1 {
	background: url(images/primary/content-top.jpg);
	width: 492px;
	height: 69px;
	color: #ffe680;
	font-size: 28px;
	line-height: 69px;
	font-weight: normal;
	padding-left: 25px;
	margin: 0;
}
body.white h1 {
	background-image: url(images/primary/content-top-white.jpg);
	color: #333;
}
#left-col {
	width: 204px;
	margin-left: 10px;
	float: left;
	display: inline;
}
h2 {
	margin: 0;
	font-weight: normal;
	color: #006600;
	font-size: 22px;
}

h2 img {
	float: right;
	margin-left: 20px;
}

a.contact-us {
	background: url(images/contact-us-buff.png);
	width: 112px;
	height: 49px;
	text-indent: -5000px;
	display: block;
}
body.white a.contact-us {
	background-image: url(images/contact-us-white.png);
}

.box {
	background: #FFF url(images/box/footer.png) no-repeat bottom;
	width: 494px;
}
.box h3 {
	background: url(images/box/header.png);
	height: 43px;
	line-height: 43px;
	color: #ffe680;
	padding-left: 20px;
	margin: 0;
	font-weight: normal;
}
.box-content {
	padding: 10px 20px 5px;
	font-size: 14px;
}
.box-content p {
	margin: 0;
	padding-bottom: 15px;
}

.box472 {
	background: #FFF url(images/box-472px/footer.png) no-repeat bottom;
	width: 472px;
}
.box472 h3 {
	background: url(images/box-472px/header.png);
}
/******* Primary page stuff *********/
#center-col {
	float: left;
	margin-left: 15px;
	width: 517px;
	background: #ebdcbb url(images/primary/content-bottom.jpg) no-repeat bottom center;
	padding-bottom: 120px;
	display: inline;
}
body.white #center-col {
	background: #fff url(images/primary/content-bottom-white.jpg) no-repeat bottom center;
}
#right-col {
	float: left;
	width: 205px;
	margin-left: 16px;
}
#right-col #rhimage2 {
	margin-top: -40px;
}

#content {
	margin: 0 23px;
}
/****** Secondary page stuff *********/
#sec-center-col {
	float: left;
	margin-left: 15px;
	width: 738px;
	background: url(images/secondary/content-bottom.jpg) no-repeat bottom left;
	padding-bottom: 112px;
}
#sec-center-col-top {
	background: #ebdcbb url(images/secondary/content-top.png) no-repeat top left;
	padding: 25px 0 1px 0px;
}
#sec-right-col {
	float: left;
	width: 170px;
	margin-left: 3px;
}
#sec-right-col #rhimage1 {
	margin-bottom: 25px;
}

#sec-content {
	float: left;
	width: 494px;
	margin: 0 23px;
}

#sec-content-wide {
	float: left;
	width: 694px;
	margin: 0 22px;
}

body.white #sec-center-col {
	background-image: url(images/secondary/content-bottom-white.jpg);
}
body.white #sec-center-col-top {
	background-image: url(images/secondary/content-top-white.png);
	background-color: #FFF;
}

.related-links h3 {
	color: #336633;
	border-bottom: 1px solid #000;
}
.related-links ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
	font-weight: bold;
}

/************* Slideshow box **************/
.slideshow-top {
	background: url(images/slideshow/top.png) no-repeat top left;
	width: 694px;
	padding-top: 10px;
	padding-left: 8px;
}
.slideshow-bottom {
	background: #000 url(images/slideshow/bottom.png) no-repeat bottom left;
	padding-bottom: 10px;
}

/*********** Event page *********/
div.event {
	margin-bottom: 20px;
}
div.event p {
	padding-bottom: 0;
}

/********* Staff profiles **********/
.staff {
	margin-bottom: 20px;
}
.staff h4 {
	margin: 0;
	font-size: 14px;
}
.staff p {
	font-size: 14px;
	margin: 0;
	padding-bottom: 15px;
}
.staff img {
	float: right;
	margin-left: 20px;
}
.dashed-rule {
	background: url(images/dashed-line.png) repeat-x;
	height: 1px;
}

/********** Contact Page *********/
#map {
	width: 471px;
	height: 471px;
	margin-bottom: 40px;
}
#map h3 {
	margin: 0;
	font-size: 13px;
}
#map p {
	font-size: 11px;
	line-height: 13px;
}

#get-in-touch {
	background: url(images/contact/get-in-touch.jpg);
	padding: 10px 11px;
	width: 182px;
	height: 210px;
	font-size: 13px;
	margin-bottom: 20px;
}
#get-in-touch h3 {
	color: #FFF;
	line-height: 16px;
	margin: 0 0 20px;
}

#company-info {
	background: url(images/contact/company.jpg);
	padding: 10px 11px;
	width: 182px;
	height: 239px;
	font-size: 13px;
}
#get-in-touch p, #company-info p {
	line-height: 18px;
}

/*********** Testimonial **********/
.testimonial-wrapper {
	background: url(images/testimonial/slice.png) repeat-y center center;
	width: 204px;
	/* Anything above the testimonial needs 20px bottom margin */
}
.testimonial-bottom {
	background: url(images/testimonial/bottom.png) no-repeat center bottom;
	padding-bottom: 20px;
}
.testimonial-top {
	background: url(images/testimonial/top.png) no-repeat center top;
	padding: 25px 16px 0 16px;
	width: 172px;
}
.testimonial {
	font-size: 16px;
	font-weight: bold;
	color: #363;
	padding-top: 26px;
	line-height: 20px;
}
.testimonial p {
	margin: 0;
}
.testimonial p.attribute {
	margin-top: 30px;
	font-size: 14px;
	font-weight: bold;
	color: #363;
}
.testimonial-qt {
	float: left;
}
.testimonial-qb {
	float: right;
}


/*********** Times & prices ************/
table.data {
	border-collapse: collapse;
}
.data th {
	color: #FFF;
	background: #cd6937;
}
.data td {
	background: #fffede;
	padding-left: 10px;
}
.data th, .data td {
	border-right: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
}
.data td.noright {
	border-right: 0;
}