body {
	background: #989898 url(../images/background.jpg) repeat-x;
	font-size: 14px;
	line-height: 17px;
}

h1, h2, h3, h4, h5, h6, strong, bold {
	font-weight: bold;
}

h2 {
	font-size: 30px;
	line-height: 40px;
}

h3 {
	font-size: 25px;
	line-height: 35px;
}

h4 {
	font-size: 20px;
	line-height: 30px;
}

p, ul, ol, dl {
	margin-bottom: .5em;
}

#wrapper #content .orders p.noMargins {
	margin: 0;
}

#home {
	background: #989898 url(../images/home_bg.jpg) repeat-x;
}

#topHeaderWrapper, #wrapper  {
	width: 960px;
	margin: 0 auto;
	position: relative;
}

ul.subLinks {
	position: absolute;
	right: 10px;
	top: 4px;
}

ul.loginStatus {
	position: absolute;
	top: 4px;
	left: 160px;
}

ul.subLinks li, ul.loginStatus li {
	float: left;
	margin-left: 15px;
	font-size: 12px;
}

ul.subLinks li a {
	text-decoration: none;
	border-bottom: 1px dotted #9a9b9b;
	color: #fff;
	height: 16px;
	display: block;
}

ul.subLinks li a:hover {
	border-bottom: 2px solid #fff;
}

ul.loginStatus li  {
	text-decoration: none;
	color: #fff;
}

ul.loginStatus li a {
	color: #fff;
	text-decoration: none;
	border-bottom: 1px dotted #9a9b9b;
}

ul.loginStatus li a:hover {
	border-bottom: 2px solid #fff;
}

ul.loginStatus li a.cart {
	background: url(../images/cart.png) no-repeat 0 0;
	padding-left: 18px;
	border: none;
	display: block;
}

ul.loginStatus li a.cart .hidden {
	display: none;
}

#header {
	position: relative;
	height: 215px;
	z-index: 1;
}

#logo {
	position: relative;
	top: 0;
	left: -4px;
}

#topSearch {
	position: absolute;
	right: -4px;
	top: 24px;
	width: 252px;
	height: 46px;
	background: url(../images/search_background.png) no-repeat;
}

#topSearch fieldset {
	width: 220px;
	margin: 10px auto 0;
	display: relative;
}

#topSearch .search {
	background-image: url(../images/search_bg.png);
	border-style: none;
	width: 150px;
	height: 15px;
	padding: 5px;
	margin: 0;
}

#topSearch .submit {
	position: absolute;
	display: block;
	width: 60px;
	height: 25px;
	margin: 0;
	padding: 0;
	border: 0;
	background: url(../images/go_button.png) no-repeat 0 0;
	text-indent: -9999px;
	top: 10px;
	right: 16px;
}

#mainNavigation {
	position: absolute;
	top: 166px;
	right: -10px;
}

#mainNavigation li {
	float: left;
	padding: 10px;
	height: 23px;
}

#mainNavigation li a {
	display: block;
	text-indent: -9999px;
	line-height: 23px;
	background: url(../images/navigation.png) 0;
	padding: 5px;
}

#mainNavigation li.classes {
	position: relative;
}

#mainNavigation li.classes a {
	width: 86px;
	background-position: 0 0;
}

#mainNavigation li.classes.sfHover a {
	width: 86px;
	background-position: 0 33px !important;
	background: url(../images/new_navigation.png) 0;
}

#mainNavigation li.classes a:hover, #mainNavigation li.classes.active a {
	background-position: 0 33px;
}

li.classes:hover #classNavigation {
	display: inherit;
}

#classNavigation {
	background: url(../images/class_dropdown_bg.png) no-repeat 0 0;
	width: 480px;
	height: 261px;
	position: absolute;
	z-index: 5;
	top: 40px;
	padding-top: 20px;
	margin-bottom: 0;
	display: none;
}

#mainNavigation #classNavigation a {
	text-indent: 0;
	width: inherit;
	color: #000;
	text-decoration: none;
}

#mainNavigation #classNavigation li {
	float: left;
	width: 220px;
	margin: 0;
	height: 47px;
	padding-top: 0;
	padding-bottom: 15px;
}

#mainNavigation #classNavigation .className {
	font-size: 16px;
	text-transform: uppercase;
	line-height: 18px;
	margin-bottom: 0;
	font-weight: bold;
	display: block;
}

#mainNavigation #classNavigation a {
	line-height: inherit;
	background: none;
	text-shadow: rgba(255,255,255,0.25) 0 1px 0;
}

#mainNavigation #classNavigation a:hover {
	color: #fff;
	text-shadow: #000 0 1px 0;
}

#mainNavigation #classNavigation .classDescription {
	font-size: 12px;
	line-height: 13px;
	display: block;
}

#mainNavigation li.aboutus a {
	width: 97px;
	background-position: -111px 0;
}

#mainNavigation li.aboutus a:hover, #mainNavigation li.aboutus.active a {
	background-position: -111px 33px;
}

#mainNavigation li.blog a {
	width: 50px;
	background-position: -235px 0;
}

#mainNavigation li.blog a:hover, #mainNavigation li.blog.active a {
	background-position: -235px 33px;
}

#mainNavigation li.instructors a {
	width: 136px;
	background-position: -313px 0;
}

#mainNavigation li.instructors a:hover, #mainNavigation li.instructors.active a {
	background-position: -313px 33px;
}

#mainNavigation li.gunrange a {
	width: 273px;
	background-position: -476px 0;
}

#mainNavigation li.gunrange a:hover, #mainNavigation li.gunrange.active a {
	background-position: -476px 33px;
}

#mainNavigation li.links a {
	width: 55px;
	background-position: -776px 0;
}

#mainNavigation li.links a:hover, #mainNavigation li.links.active a {
	background-position: -776px 33px;
} 

#mainNavigation li.store a {
	width: 62px;
	background-position: -858px 0;
}

#mainNavigation li.store a:hover, #mainNavigation li.store.active a {
	background-position: -858px 33px;
}

#mainNavigation li.videos a {
	width: 67px;
	background-position: -940px 0;
}

#mainNavigation li.videos a:hover, #mainNavigation li.videos.active a {
	background-position: -940px 33px;
}

#homeBanner {
	width: 960px;
	height: 380px;
	color: #fff;
}

#quoteBox {
	width: 415px;
	float: right;
}

#quoteBox h1 {
	font: 32px JournalRegular, "Lucida Grande", Lucida, Verdana, sans-serif;
	margin-top: 30px;
	font-weight: normal;
}

#quoteBox blockquote {
	padding-bottom: 41px;
	background: url(../images/quote_underline.png) no-repeat 0 bottom;
}

cite {
	display: block;
	text-align: right;
	font-weight: normal;
	font-style: normal;
}

cite.name {
	font-weight: bold;
}

#homePhotoStack {
	width: 537px;
	height: 389px;
	background-image: url(../images/photostack.png);
	float: left;
	position: relative;
	z-index: -1;
}

#homePhotoStack img {
	margin-top: 30px;
	margin-left: 30px;
}

#banner {
	margin-top: 32px;
	height: 158px;
	position: relative;
}

#banner h1 {
	text-shadow: rgba(255,255,255,0.4) 0 1px 0;
	font: 60px "Lucida Grande", Lucida, Verdana, sans-serif;
	text-transform: uppercase;
	width: 620px;
	padding-top: 20px;
}

#interiorBannerStack {
	width: 347px;
	height: 252px;
	background: url(../images/interior_photo_stack.png);
	position: absolute;
	top: -32px;
	right: 0;
	z-index: -1;
}

#interiorBannerStack img {
	margin-top: 12px;
	margin-left: 13px;
}

#content {
	margin: 30px 0 20px;
	text-shadow: rgba(255,255,255,0.5) 0 1px 0;
	width: 610px;
	float: left;
}

.instructor, .testimonial, .post, .firearmsRights, .firearms, .accessories, .knives {
	padding: 10px;
	margin-bottom: 20px;
	background-color: #a2a2a2;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background-image: url(../images/carbon.jpg);
	color: #fffeff;
	text-shadow: none;
}

.youtubeVideo {
	margin-bottom: 20px;
}

.jobTitle {
	font-style: italic;
	font-weight: bold;
	font-size: 11px;
}

#sidebar {
	float: right;
	margin-top: 70px;
	width: 330px;
}

.sideItem a {
	color: #fff;
	text-decoration: none;
}

.sideItem a:hover{
	color: red;
}

#content p {
	line-height: 20px;
}

#content a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	text-shadow: #000 0 1px 1px;
}

#content a:hover {
	color: red;
	text-shadow: rgba(255,255,255,0.5) 0 1px 0;
}

#content .post a:hover {
	text-shadow: none;
}

#content ul {
	list-style-type: disc;
}

#content.links ul {
	list-style: none;
	margin-left: 0;
}

#content ol {
	list-style-type: decimal;
}

#content ul, #content ol, #content dl {
	list-style-position: outside;
	margin-left: 20px;
	font-size: 14px;
	text-shadow: none;
}

#content blockquote p.quote {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;	
	padding: 10px;
	background-color: gray;
	font: italic 20px/30px Georgia, "Times New Roman", Times, serif;
}

#content blockquote p.author {
	text-align: right;
}

.firearms, .accessories, .knives {
	width: 170px;
	float: left;
	margin-right: 20px;
}

.knives {
	margin-right: 0;
}

.itemOptions, .quantitySubmit {
	margin-bottom: 10px;
}

.itemOptions label, .quantitySubmit label {
	display: block;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
}

.fork h2 a {
	display: block;
	text-align: center;
	color: #fff;
	text-shadow: #000 0 1px 0;
	font-weight: bold;
	background-color: #ff2500;
	background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.24, rgb(149,31,37)),
    color-stop(0.63, rgb(230,16,27))
	);
	background: -moz-linear-gradient(
    center bottom,
    rgb(149,31,37) 24%,
    rgb(230,16,27) 63%
	);
	border-style: none;
	padding: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display: block;
}

#subFooter {
	background: url(../images/sub_footer_bg.png) no-repeat;
	margin-top: 10px;
	padding: 10px;
	width: 940px;
	height: 242px;
	color: #c3c3c3;
	position: relative;
	clear: both;
}

#subFooter h2, #subFooter h3, #subFooter h4, #subFooter h5, #subFooter h6, #subFooter p {
	font-size: 12px;
	line-height: normal;
}

#subFooter p.date {
	margin-bottom: 0;
}

#subFooter a, #footer a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}

#leftBlock, #rightBlock {
	width: 460px;
	position: absolute;
}

#leftBlock {
	top: 10px;
	left: 10px;
}

.class {
	margin-bottom: 7px;
}

#leftBlock .class .date {
	margin-bottom: 2px;
}

.class p {
	margin-bottom: 2px;
	padding: 0;
}

.class .readMore {
	font-size: 12px;
}

#rightBlock {
	top: 10px;
	right: 10px;
}

#upcomingClasses, #missionStatement {
	width: 460px;
	height: 29px;
	text-indent: -9999px;
	margin-bottom: 10px;
}

#upcomingClasses {
	background: url(../images/upcoming_classes_header.png) no-repeat;
}

#missionStatement {
	background: url(../images/mission_statement_header.png) no-repeat;	
}

#subFooter img.specials {
	margin: 5px 0;
}

#findUsOnline {
	position: absolute;
	right: 10px;
	bottom: 5px;
}

#findUsOnline dt {
	width: 166px;
	height: 21px;
	text-indent: -9999px;
	background: url(../images/find_us_online.png) no-repeat center center;
	float: left;
	height: 40px;
}

#findUsOnline dd {
	float: left;
}

#findUsOnline dd a {
	height: 40px;
	width: 39px;
	display: block;
	text-indent: -9999px;
	background-image: url(../images/social_media.png);
	margin-left: 20px;
}

#findUsOnline dd.facebook a {
	background-position: -39px 0;
}

#findUsOnline dd.twitter a {
	background-position: -78px 0;
	width: 40px;
}

#findUsOnline dd.youtube a {
	background-position: -118px 0;
	width: 40px;
}

.productThumb {
	float: right;
	margin-left: 10px;
	margin-bottom: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

input.quantity, .addToCart {
	border-style: none;
	padding: 5px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	display: block;
	margin-bottom: 10px;
}

.orders {
	margin: 0 0 10px 0;
}

.orders .quantity {
	display: inline;
	margin-bottom: 0;
}

.orders thead .items {
	-webkit-border-top-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	border-top-left-radius: 5px;
	width: 250px;
}

.orders thead .price {
	-webkit-border-top-right-radius: 5px;
	-moz-border-radius-topright: 5px;
	border-top-right-radius: 5px
}

.orders .totals {
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}

.orders td {
	padding: 5px;
}

.orders thead td {
	font-size: 16px;
	font-weight: bold;
	text-transform: uppercase;
	background-color: #424242;
	height: 30px;
	line-height: 20px;
	vertical-align: middle;
}

.orders .odd, .orders .even {
	color: #000;
}

.orders .odd {
	background-color: #929292;
}

.orders .even {
	background-color: #797979;
}

.orders .totals {
	background-color: #424242;
}

.updateCart, .addToCart, .backLink a {
	color: #fff;
	text-shadow: #000 0 1px 0;
	font-size: 16px;
	font-weight: bold;
	background-color: #ff2500;
	background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.24, rgb(149,31,37)),
    color-stop(0.63, rgb(230,16,27))
	);
	background: -moz-linear-gradient(
    center bottom,
    rgb(149,31,37) 24%,
    rgb(230,16,27) 63%
	);
	width: 300px;
	border-style: none;
	padding: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display: block;
	margin-bottom: 10px;
}

a.registerSignup {
	margin-bottom: 10px;
}

a.return, a.registerSignup, a.loginForm {
	color: #fff;
	text-shadow: #000 0 1px 0;
	font-size: 16px;
	font-weight: bold;
	background-color: #ff2500;
	width: 280px;
	border-style: none;
	padding: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display: block;	
	background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.24, rgb(149,31,37)),
    color-stop(0.63, rgb(230,16,27))
	);
	background: -moz-linear-gradient(
    center bottom,
    rgb(149,31,37) 24%,
    rgb(230,16,27) 63%
	);
	text-align: center;
}

#content .updateCart:hover, input.checkout:hover, input.submit:hover, #content a.return:hover, .addToCart:hover, #content a.registerSignup:hover, #content a.loginForm:hover, #content .backLink a:hover, #content .fork h2 a:hover {
	color: #000;
	text-shadow: rgba(2555,255,255,0.25) 0 1px 0;
	background: #424242;
	border-style: none;
	padding: 10px;
	cursor: pointer;
}

.standardForm label {
	display: block;
}

.standardForm fieldset {
	margin-bottom: 15px;
}

.standardForm textarea {
	width: 570px;
	height: 90px;
}

.billing {
	margin-bottom: 10px;
}

.standardForm textarea, .standardForm input, .loginForm input, .billing input, .shipping input, .information input, .coupon, .checkout, #phone, #email_address, #credit_card_number {
	border-style: none;
	padding: 10px;
	width: 570px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	background-color: silver;
	margin-bottom: 10px;
}

input.checkout, input.submit {
	color: #fff;
	text-shadow: #000 0 1px 0;
	text-transform: uppercase;
	font-size: 20px;
	font-weight: bold;
	background-color: #ff2500;
	background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.24, rgb(149,31,37)),
    color-stop(0.63, rgb(230,16,27))
	);
	background: -moz-linear-gradient(
    center bottom,
    rgb(149,31,37) 24%,
    rgb(230,16,27) 63%
	);
}

.billing select {
	display: block;
}

.standardForm textarea:focus, .standardForm input:focus, .loginForm input:focus, .billing input:focus, .information input:focus, .coupon:focus{
	width: 570px;
	border: 3px solid #fffeff;
	padding: 7px;
     -moz-box-shadow: 0px 0px 8px #ffffff; /* FF3.5+ */
  -webkit-box-shadow: 0px 0px 8px #ffffff; /* Saf3.0+, Chrome */
          box-shadow: 0px 0px 8px #ffffff; /* Opera 10.5, IE 9.0 */
}

.standardForm input.submit, .loginForm input.submit, .checkout  {
	width: 590px;
}

.standardForm input.submit:hover, .loginForm input.submit:hover, .checkout:hover, .updateCart:hover {
	cursor: pointer;
	background-color: gray;
}

.billing legend, .information legend {
	font-size: 20px;
	line-height: 24px;
	font-weight: bold;
}

#footer {
	color: #c3c3c3;
	background-color: #000;
	height: 50px;
	margin-top: 15px;
	padding: 10px;
	text-align: center;
}

#fc_calendar {position: relative;}
.date {display: block; font-size: 10px; float: right; padding: 0 2px; width: 100%; position: relative; left: 3px; border-right: 1px solid #999;  z-index: 100;}
td.out_of_range .date {font-size: 6px; color: gray;}
span.num {margin: 0; }
.date a.num {margin: 4px !important;}
span.num {vertical-align: top;}
#content .calendar td  {height: 100px !important;}
.event {
    background: none repeat scroll 0 0 #A30000;
    float: left;
    font-size: 10px;
    height: 100%;
    padding-top: 10px;
    position: relative;
    top: -16px;
    width: 100%;
margin-bottom: -14px;
}
.event a {margin: 2px 0 !important;}
tr td.weekend {background: #333 !important;}
h2.current_month {position: absolute; top: 0; left: 0;;}
h2.hide_month {text-indent: -9999px; height: 45px;}



.chl_page a {font-size: 18px; color: #990000 !important; text-decoration: none; padding-bottom: 10px;}
.chl_page ul li {color: #cccccc; padding-bottom: 20px;}

/* ---------- HOLIDAY PROMO 2011 ---------- */

#holiday_promo {
	position: relative;
	top: -30px;
}

ul#classNavigation, ul#classNavigation * {
	z-index: 200;
}

/* ------------ Typekit restore (Michael Rog <michael@michaelrog.com>, 2011-12-09) ---------- */

#quoteBox h1,.tk-ff-market-web{
font-family:"ff-market-web","ff-market-web-1","ff-market-web-2",cursive;
}
.tk-apertura-condensed,body{
font-family:"apertura-condensed","apertura-condensed-1","apertura-condensed-2",sans-serif;
}
#banner h1,.tk-tandelle{
font-family:"tandelle","tandelle-1","tandelle-2",sans-serif;
}
