@charset "UTF-8";

html, body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

#wrap { 
	position: relative;
	min-height: 100%;
	width: 100%;
}

.container {
	width: 930px;
	margin: 0 auto;
}

.two-col,
.four-col {
	float: left;
}

.two-col {
	width: 290px;
}

.four-col {
	width: 610px;
}

.lpad { padding-left: 30px; }
.rpad { padding-right: 30px; }

.clear { clear: both }
.block { display: block; }


/* TYPE
================================================== */

body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 18px;
	color: #666;
}

a { color: #1195fe; }
a img { border: none; }

h1,h2,h3,h4,h5,h6,p,ol,ul,dl {
	margin: 0;
	padding: 0;
}

h1 {
	font-family: Arial;
	font-weight: normal;
	font-size: 20px;
	line-height: normal;
	color: #000;
	margin-bottom: 10px;
}

h1#page-title {
	margin-bottom: 40px;
	padding-top: 4px;
	padding-left: 24px;
	background-color: #1ba346;
	background-image: url(../images/template/page_title_bg.gif);
	background-repeat: no-repeat;
	border-bottom: 20px solid #404040;
	font-size: 24px;
	line-height: 56px;
	color: #fff;
}

h1.ruled {
	padding-top: 10px;
	padding-bottom: 18px;
	margin-bottom: 24px;
	border-bottom: 1px solid #ccc;
}

.ruled.lpad {
	padding-left: 0;
	margin-left: 30px;
}

.ruled.rpad {
	padding-right: 0;
	margin-right: 30px;
}

h2 {
	font-family: Arial;
	font-weight: normal;
	font-size: 18px;
}

h2 a { text-decoration: none; }
h2 a:hover { text-decoration: underline; }

h3 {
	font-size: 16px;
	font-weight: normal;
	color: #000;
	margin-bottom: 14px;
}

h4 {
	font-size: 13px;
}

h4 strong {
	font-size: 14px;
	color: #000;
}

h5 {
	font-size: 12px;
	color: #404040;
}

h6 {
	font-size: 10px;
	line-height: normal;
}

p, ul, ol, dl, table {
	margin-bottom: 18px;
}

.loose {
	margin-bottom: 24px;
}

ul, ol {
	margin-left: 3em;
}

dt {
	margin-bottom: 5px;
	padding-top: 20px;
	border-top: 1px solid #ccc;
	font-weight: bold;
	color: #000;
}

dd {
	margin-left: 0;
	margin-bottom: 20px;
}

.keep { white-space: nowrap }


/* HEADER
================================================== */

#header {
	position: relative;
	height: 120px;
	background-image: url(../images/template/header/bg.gif);
	background-repeat: no-repeat;
	background-position: right 44px;
}

#logo,
#logo img {
	display: block;
	height: 61px;
	width: 239px;
}

#logo {
	position: absolute;
	top: 25px;
	left: 10px;
}

#nav {
	position: absolute;
	top: 34px;
	left: 262px;
	height: 37px;
	width: 485px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: Arial;
	font-size: 15px;
	line-height: 35px;
}

#nav li {
	float: left;
	padding: 1px 0;
	background-image: url(../images/template/header/nav_bg.gif);
	background-repeat: no-repeat;
	background-position: center top;
}

#nav .first { background-position: left top; }
#nav .last { background-position: right top; }
#nav li:hover { background-position-y: bottom; }

#nav a {
	display: block;
	height: 35px;
	border-left: 1px solid #29aa46;
	border-right: 1px solid #108222;
	color: #fff;
	text-decoration: none;
	text-align: center;
}

#nav a:hover { text-decoration: underline }

#nav .first a {
	padding-left: 10px;
	border-left: none;
}
#nav .last a {
	padding-right: 10px;
	border-right: none;
}

#nav-about { width: 130px; }
#nav-workshops { width: 133px; }
#nav-shop { width: 98px; }

#nav-secondary {
	position: absolute;
	top: 57px;
	left: 662px;
	height: 35px;
	width: 385px;
	margin: 0;
	list-style: none;
	font-family: Arial;
	font-size: 12px;
	line-height: 100%;
}

#nav-secondary li {
	float: left;
	padding: 0 15px;
	border-right: 1px solid #666;
}

#nav-secondary li.last { border-right: none; }

#nav-secondary a {
	color: #ccc;
	text-decoration: none;
}

#nav-secondary a:hover { text-decoration: underline }

#nav-tertiary {
	position: absolute;
	top: 13px;
	right: 0;
	height: 16px;
	width: 385px;
	margin: 0;
	list-style: none;
	font-family: Arial;
	font-size: 11px;
	line-height: 16px;
}

#nav-tertiary li {
	float: right;
	margin-left: 20px;
}

#nav-tertiary a {
	display: block;
	padding-left: 26px;
	text-decoration: none;
	background-repeat: no-repeat;
}

#nav-tertiary a:hover { text-decoration: underline }

#nav-facebook { background-image: url(../images/template/header/icon_facebook.gif); }
#nav-newsletter { background-image: url(../images/template/header/icon_newsletter.gif); }


/* FOOTER
================================================== */

#footer {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 48px;
	width: 100%;
	background-color: #eee;
	background-image: url(../images/template/header/footer_bg.gif);
	background-repeat: repeat-x;
}

#footer .container {
	position: relative;
	height: 48px;
}

#nav-footer {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 30px;
	margin: 0;
	list-style: none;
	font-size: 11px;
	line-height: normal;
}

#nav-footer li {
	float: left;
	height: 30px;
	padding-right: 20px;
	margin-right: 20px;
	border-right: 1px solid #ccc;
}

#nav-footer li.last { border-right: 0; }

#nav-footer a { text-decoration: none }
#nav-footer a:hover { text-decoration: underline }

#copyright {
	position: absolute;
	bottom: 0;
	right: 0;
	height: 30px;
	font-size: 11px;
	line-height: 100%;
	color: #999;
}


/* CONTENT
================================================== */

#content {
	position: relative;
	padding-bottom: 85px;
}

.padded {
	padding: 30px;
}


/* HOME
================================================== */

#home-features {
	margin-bottom: 30px;
	border-top: 1px solid #b9e5fb;
	border-bottom: 20px solid #404040;
	overflow: hidden;
}

#home-features .four-col {
	height: 405px;
	width: 640px;
}

#feature-rotation img {
	display: block;
	height: 405px;
	width: 640px;
}

.home-feature-bucket {
	position: relative;
	height: 114px;
	padding: 20px 15px 0 143px;
	border-right: 1px solid #b9e5fb;
	border-bottom: 1px solid #b9e5fb;
	background-color: #e6f8ff;
	font-size: 11px;
	line-height: 130%;
	color: #3a6b83;
}

.home-feature-bucket p,
.home-feature-bucket img {
	position: relative;
}

.home-feature-bucket p { margin-top: 8px; }
.home-feature-bucket#hfb-shop p { margin-top: 5px; }

.home-feature-bucket a { color: #404040; }

.home-feature-bucket img { display: block; }

.home-feature-bucket .bg {
	position: absolute;
	top: 0;
	left: 0;
}

.home-feature-bucket .rollover {
	position: absolute;
	top: 15px;
	right: -18px;
	z-index: 10;
	visibility: hidden;
}

.home-feature-bucket:hover .rollover {
	visibility: visible;
}

#home-intro {
	padding: 10px 30px 25px;
}


/* COMMON
================================================== */

#kits {
	margin-bottom: 50px;
	background-image: url(../images/kits/header_bg.gif);
	background-repeat: repeat-x;
}

#kits-header {
	position: relative;
	height: 38px;
	padding: 0 15px;
	line-height: 38px;
}

#kits-header h4 {
	float: left;
}

#kits-header-link {
	float: right;
	font-size: 11px;
	background-image: url(../images/template/arrow_blue.gif);
	background-repeat: no-repeat;
	background-position: 0 center;
}

#kits-header-link a { 
	padding-left: 8px; 
	text-decoration: none;
}

#kits-header-link a:hover { text-decoration: underline; }

.kit {
	float: left;
	width: 172px;
	padding: 25px 15px 0;
	border-right: 1px solid #ccc;
}

.kit.first {
	padding-left: 0;
}

.kit.last {
	border-right: 0;
}

.kit img {
	display: block;
}

#kit-img-group {
	margin-left: -15px;
}

#endorsements {
	padding-top: 15px;
	border-top: 1px solid #ccc;
}

#endorsements h6 {
	float: left;
	width: 150px;
	padding-top: 10px;
}

#endorsements img {
	float: left;
	display: block;
	margin-left: 40px;
}

#featured-exercise {
	height: 250px;
	margin-bottom: 30px;
	padding: 12px 15px 0;
	background-image: url(../images/template/featured_exercise_bg.gif);
	background-repeat: no-repeat;
}

#featured-exercise h6 {
	font-size: 11px;
	font-weight: normal;
	color: #999;
}

#featured-exercise h4 {
	color: #fff;
	margin-bottom: 8px;
}

#as-seen-on {
	margin-bottom: 20px;	
}

#as-seen-on h5 {
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
}

#as-seen-on a,
#as-seen-on span {
	display: block;
	margin: 10px 0;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
}

#as-seen-on img {
	display: block;
}

#impact-article {
	margin-bottom: 30px;
	padding-top: 14px;
	background-image: url(../images/template/impact_article_bg.gif);
	background-repeat: no-repeat;
	background-position: 167px top;
	font-size: 11px;
}

#impact-article h3 {
	width: 165px;
	font-size: 15px;
	line-height: normal;
	color: #666;
}

#impact-article img {
	display: block;
	margin-top: 8px;
}

#impact-article .arrow-link {
	margin-top: 18px;
	padding-left: 178px;
	background-image: url(../images/template/arrow_blue.gif);
	background-repeat: no-repeat;
	background-position: 170px center;
}

#impact-article a { text-decoration: none; }
#impact-article a:hover { text-decoration: underline; }

.bucket {
	margin-bottom: 30px;
	padding: 28px 30px 12px;
	background-color: #f5f5f5;
	border: 1px solid #ccc;
}

.bucket .sources {
	padding: 8px 0 16px;
	border-top: 1px solid #ccc;
	font-size: 10px;
	line-height: 14px;
}

.bucket .sources a { text-decoration: none; }
.bucket .sources a:hover { text-decoration: underline; }

.bucket.blue {
	background-color: #e6f8ff;
	border-color: #b9e5fb;
	color: #3a6b83;
}

hr {
	height: 1px;
	color: #ccc;
	background-color: #ccc;
	border: 0;
	margin: 30px 0;
	padding: 0;
}


/* ABOUT
================================================== */

#about-order-btn,
#about-order-btn img {
	display: block;
	height: 36px;
	width: 116px;
}

#about-order-btn {
	position: absolute;
	top: -15px;
	right: -2px;
	z-index: 1000;
}

#about-feature {
	position: relative;
	height: 431px;
	margin-top: -4px;
	margin-bottom: 30px;
	background-image: url(../images/about/feature.jpg);
	background-repeat: no-repeat;
}

#about-feature h4 {
	font-size: 14px;
	line-height: 20px;
	color: #000;
}

#about-feature-1,
#about-feature-2 {
	position: absolute;
	left: 650px;
	width: 220px;
	font-size: 12px;
	line-height: 18px;
}

#about-feature-1 {
	top: 81px;
}

#about-feature-2 {
	top: 257px;
}

#about-intro {
	height: 225px;
	padding: 35px 215px 0 30px;
	background-image: url(../images/about/intro_bg.jpg);
	background-repeat: no-repeat;
	background-position: 0 bottom;
}

#about-principles h1.ruled {
	padding-top: 3px;
}

#about-principles h5 {
	font-size: 11px;
	font-weight: normal;
	color: #666;
}

#about-principles h4 {
	color: #000;
}


/* WORKSHOPS
================================================== */

#workshops-intro {
	padding-right: 200px;
	padding-bottom: 30px;
	background-image: url(../images/template/tube_handles.jpg);
	background-repeat: no-repeat;
	background-position: 420px 3px;
}

#inquire-btn {
	display: block;
	width: 121px;
	margin-bottom: 16px;
	margin-left: -3px;
}

#testimonials {
	font-size: 12px;
}

.testimonial {
	line-height: 24px;
	font-style: oblique;
}

.byline {
	text-align: right;
}

.byline-accred {
	margin-top: -18px;
	margin-left: 0;
	list-style: none;
	font-size: 10px;
	line-height: 16px;
	text-align: right;
}

#workshop-levels .level {
	margin-bottom: 30px;
}

#workshop-levels .level.last {
	margin-bottom: 0;
}

#workshop-levels h1 {
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 1px solid #b9e5fb;
}

#workshop-levels h1 .light {
	font-size: 16px;
	font-weight: bold;
	color: #3a6b83;
	text-transform: uppercase;
}

.info-bucket {
	margin-top: 30px;
	margin-bottom: 30px;
}

.info-bucket.last {
	margin-bottom: 40px;
}

.info-bucket .inner {
	margin: 0 30px 30px;
}

.info-bucket h3 {
	font-weight: bold;
	line-height: 48px;
	padding: 0 30px;
	margin-bottom: 26px;
	border-bottom: 1px solid #b9e5fb;
	background-color: #e6f8ff;
	background-image: url(../images/template/info_bucket_head_bg.gif);
	background-repeat: no-repeat;
}

.info-bucket h4 {
	color: #000;
	margin-bottom: 5px;
}

.info-bucket ul {
	margin-left: 30px;
	list-style: none;
}

.info-bucket ul ul {
	list-style: disc;
	margin-bottom: 18px;
}

.register-btn {
	display: block;
	width: 101px;
	margin-bottom: 24px;
	margin-left: -3px;
}

#ltd-space {
	padding-top: 15px;
	margin: 0 30px;
	border-top: 1px solid #ccc;
}


/* FAQs
================================================== */

#faq-outline {
	margin-bottom: 30px;
}

#faq-outline li {
	padding-top: 2px;
	padding-bottom: 2px;
}


/* CONTACT
================================================== */

#contact-options {
	margin-top: 24px;
	margin-left: 0;
	list-style: none;
	font-size: 14px;
	line-height: 18px;
}

#contact-options li {
	margin-bottom: 5px;
}

#contact-options a {
	display: block;
	padding: 21px 20px 21px 75px;
	text-decoration: none;
	background-image: url(../images/template/list_option_bg.gif);
	background-repeat: no-repeat;
	background-position: 0 -65px;
}

#contact-options a:hover {
	background-position: 0 0;
	color: #000;
}

#contact-info {
	margin-top: 50px;
	margin-left: 30px;
	padding-top: 25px;
	border-top: 1px solid #ccc;
}

#contact-info-col1,
#contact-info-col2,
#contact-info-col3 {
	float:left;
	margin-right:45px;
}

#contact-info-col3 { margin-right: 0 }

#contact-info-col2,
#contact-info-col3 {
	padding-top: 23px;
}

#contact-info h4 {
	margin-bottom: 5px;
}


/* KIT COMPARISON
================================================== */

#kit-comparison-tbl {
	width: 100%;
	margin-top: 30px;
}

#kit-comparison-tbl thead th {
	font-weight: normal;
	font-size: 14px;
	color: #fff;
	background-color: #1ba346;
}

#kit-comparison-tbl tbody th {
	text-align: left;
}

#kit-comparison-tbl th,
#kit-comparison-tbl td {
	padding: 7px 10px;
	background-color: #f5f5f5;
	border-bottom: 1px solid #fff;
}

#kit-comparison-tbl td {
	text-align: center;
}

#kit-comparison-tbl td.even {
	color: #444;
	background-color: #eee;
}

#kit-comparison-tbl .empty {
	background: none;
}


/* SITE MAP
================================================== */

#site-map-primary {
	margin-left: 30px;
	font-size: 16px;
}

#site-map-primary li {
	padding: 4px 0;
}

#site-map-primary ul {
	margin-top: 8px;
	margin-left: 30px;
	margin-bottom: 0;
	font-size: 14px;
}

#site-map-primary ul li {
	padding: 3px 0;
}

#site-map-secondary {
	margin-left: 30px;
}

#site-map-secondary li {
	padding: 2px 0;
}

#site-map-primary a,
#site-map-secondary a {
	text-decoration: none;
}

#site-map-primary a:hover,
#site-map-secondary a:hover {
	text-decoration: underline;
}


/* FORMS
================================================== */

body.iflow-lightbox {
	height: auto;
	width: auto;
	margin: 30px;
}

#newsletter-signup,
#workshop-inquiry,
#general-inquiry {
	margin-top: 30px;
	margin-left: 30px;
	padding-bottom: 30px;
}

.form-row {
	margin-bottom: 10px;
}

.form-row.last {
	margin-bottom: 20px;
}

label {
	display: block;
	font-weight: bold;
	margin-bottom: 5px;
}

input.text,
textarea {
	width: 200px;
	padding: 5px;
	border: 1px solid #ccc;
}

textarea {
	width: auto;
}

.reqd {
	font-weight: bold;
	color: #c00;
}

.err-msg,
.error {
	color: #c00;
}
