/* CSS Document */

html {
	margin:0px;
	padding:0px;
	height:100%;
	border:none;
}

body {
	margin:0px;
	padding:0px;
	height:100%;
	font:16px/22px 'Open Sans', Arial, Verdana, Helvetica, sans-serif;
	color:#393939;
	/*background:url("/images/background.png");*/
	}
h1 {
	font-family: 'oswald', Arial;
	font-weight:300;
	margin:0px 0px 15px 0px;
	padding:0px;
	font-size:30px;
	line-height:36px;
	color:#383e3e;
	text-transform:uppercase;
	}
	
h2 {
	margin:0px 0px 15px 0px;
	padding:0px;
	font-size:26px;
	line-height:28px;
	color:#383e3e;
	font-family: 'oswald', Arial;
	font-weight:300;
	}
	
h3 {
	margin:0px 0px 15px 0px;
	padding:0px;
	font-family: 'oswald', Arial;
	text-transform:uppercase;
	font-weight:300;
	font-size:18px;
	line-height:20px;
	color:#383e3e;
	} 
h3.bold { font-weight:bold; }
h4 {
	margin:0px 0px 2px 0px;
	padding:0px;
	font-weight:bold;
	font-size:16px;
	line-height:22px;
	color:#383e3e;
	}
p {
	margin:0px 0px 16px 0px;
	padding:0px;
	}
a { color:#a9cc45; text-decoration:none; font-weight:bold; }
a p, a:link p, a:hover p { color:#5a5a5a; }
.green{color:#a9cc45;}
.greenbg{background:#a9cc45;}

img { position:relative; max-width:100%; height:auto; border-style:none; }
iframe { max-width:100%; }
hr { background:#eee; border:none; height:1px; margin:30px 0; }
/*
h1 strong, h1 b, strong h1, b h1, h2 strong, h2 b, strong h2, b h2, h3 strong, h3 b, strong h3, b h3, h4 strong, h4 b, strong h4, b h4 { font-weight:normal; }
h1 em, h1 i, em h1, i h1, h2 em, h2 i, em h2, i h2, h3 em, h3 i, em h3, i h3, h4 em, h4 i, em h4, i h4 { font-weight:normal; font-family: ''; }
*/
h1 a, h2 a, h3 a, h4 a { text-decoration:none; }
header, #header {
	padding:0;
	position:relative;
	z-index:999;
	width:100%;
}
#header_content {
	font-size:14px;
	margin-top:40px;
}
.inner {
	width:100%; width:calc(100% - 60px); max-width:1200px; padding:0 30px; margin:0 auto;
}
#logo {
	width:114px;
	display:inline-block;
	margin:0 0 10px 0;
}
#logo img {
	vertical-align:top;
}
#social_media_links {
	display:inline-block;
}
#account_bar { background:#515153; padding:0; }
#account_bar a, #account_bar a:link { padding:15px 10px; margin:0 0 0 20px; display:inline-block; vertical-align:middle; color:#fff; font-size:14px; line-height:18px; font-weight:normal; }
#account_bar a:hover { color:#a9cc45; }
#account_bar #social_links a, #account_bar #social_links a:link { margin-left:5px; }
#social_links { margin-left:20px; }
#social_links img { vertical-align:middle; display:inline-block; }
#top_right_links p { margin:auto; }
#top_right_links img {
	max-height:24px;
	vertical-align:middle;
	margin:0 2px;
}
#navigation {
	height:46px;
}
#main_content {
	margin:30px auto;
}
#page {
	position:relative;
	margin:0 auto;
	padding:0;
	vertical-align:top;
	z-index:10;
	min-height: 100%;
    height: auto !important;
    margin-bottom: -50px; /* the bottom margin is the negative value of the footer's height */
}
.content {
	vertical-align:top;
	margin-bottom:20px;
}

#pre_footer { background:#f1f8dc; padding:30px 0; border-top:1px solid #a9cc45; }
#pre_footer > :last-child { margin-bottom:0; }

footer, #footer {
	min-height:50px;
	margin:0;
    position: relative;
	z-index:10;
	background:#000;
	color:#999;
}
#footer_spacer {
	position:relative; z-index:2; clear:both;
	height:50px; width:100%;
}
footer .inner, #footer .inner { padding-top:18px; padding-bottom:10px; font-size:12px; }
footer .inner a, footer .inner a:link, #footer .inner a, #footer .inner a:link { color:#aaa; }
footer p:last-child, #footer p:last-child { margin-bottom:0; }
#footer hr { background-color:#222; }
#sharing { margin:10px 0 20px; }
#sharing .stButton, #sharing .email, #sharing .sharethis { color:#fff !important; }


/*----Navigation----*/
#navigation_container {
	width:calc(100% - 114px);
	float:left;
	padding-top:56px;
	background:url(/images/logoSmallBg.png) left top repeat-x; background-size:auto 106px;
}
.nav {
	list-style: none;

	z-index: 999;
	position: relative;
	display:inline-block;
	line-height:48px;
	margin:0;
}
.nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	line-height:48px;
}
.nav li {
  float: left;
  margin: 0;
  padding: 0;
  position: relative;
  background:none;
}
.nav li a, .nav li a:link, .nav li a:active, .nav li a:visited {
  color:#515153;
  font-family:'oswald',Arial;
  font-weight:300;
  font-size:17px;
  letter-spacing:0.05em;
  line-height:normal;
  display: inline-block;
  padding:0 0 15px;
  margin:0 15px;
  text-decoration: none;
  text-transform:uppercase;
}
.nav li a.here, .nav li a.here:link {
  color: #444;
}
.nav li a:hover {
  color: #444;	
}
#nav-one li:hover a {
  color: #444;
}
#nav-one li {
	margin-right:2px;	
}
.nav ul {
  list-style: none;
  margin: 0;
  position: absolute;
  display: none;
  left: -1px;
  background:rgba(255,255,255,0.9);
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* Firefox */
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* Safari, Chrome */
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* CSS3 */
  padding:5px 15px;
}
.nav li:hover ul {
  display:block;
}
#nav-one li ul li {
  border: 0;
  float: none;
  background:none;
}
#nav-one li:hover ul a {
  color: #444;	
  white-space: nowrap;
  font-size:13px; line-height:normal;
  padding:3px 0;
}
#nav-one li:hover ul a:hover {
  color: #444;
}

/* content */
.right	{float:right;}
.left	{float:left;}
.image_left { margin-right: 15px; margin-bottom:5px; float:left; }
.image_right { margin-left: 15px; margin-bottom:5px; float:right; }
.none, a.none, a.none:link, a.none:visited { outline:none; border:none; text-decoration:none; }
.aligncenter { text-align:center; }
.alignright { text-align:right; }
.alignleft { text-align:left; }
.alignjustify { text-align:justify; }
.underline { text-decoration:underline; }
a.none, a.none:link, .none { text-decoration:none; border:none; }
.normal { font-weight:normal; }
.nomargin { margin:0; }
.inlineblock { display:inline-block; }
.clear { height:0; line-height:0; margin:0; padding:0; clear:both; }
.glow {
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* Firefox */
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* Safari, Chrome */
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.25); /* CSS3 */
}
.img_border { border:2px solid #e4e4e4; }
.button, a.button, a.button:link { background:#a9cc45; color:#222222; padding:15px; width:calc(100% - 30px); display:inline-block; cursor:pointer; text-decoration:none; 
	-webkit-transition: background-color 200ms ease-out;
    -moz-transition: background-color 200ms ease-out;
    -o-transition: background-color 200ms ease-out;
    transition: background-color 200ms ease-out;}
.button:hover, a.button:hover { background:#cbced1; }
.button.inline, a.button.inline, a.button.inline:link { display:inline-block; width:auto; }
.button.gray, a.button.gray, a.button.gray:link { background:#eee; }
.button.gray:hover, a.button.gray:hover { background:#ddd; }
.button.disabled, a.button.disabled, a.button.disabled:link { background:#eee; }
.button.disabled:hover, a.button.disabled:hover { background:#e4e4e4; }
h1 .button, h2 .button, h3, .button { font-family:'Open Sans'; font-size:15px; font-weight:normal; text-transform:none; }
input.button[type=submit] { width:100%; border:none; }
.button.small, a.button.small, a.button.small:link { padding:6px 12px; }
button { border:none; }

.content_col2 {
	-webkit-column-count:2; -webkit-column-gap:30px;
	-moz-column-count:2; -moz-column-gap: 30px;
	column-count: 2; column-gap: 30px;
}
.content_col3 {
	-webkit-column-count:3; -webkit-column-gap: 30px;
	-moz-column-count:3; -moz-column-gap: 30px;
	column-count: 3; column-gap: 30px;
}
.hidden { display:none; }
.whiteContainer{background-color:#eee; padding:10px; color:#393939; min-height:110px;}
.whiteContainer > :last-child { margin-bottom:0; }
.boldTitle{color:#393939; font-size:16px; font-family:'oswald',Arial; font-weight:700; text-transform:uppercase;}
#pageTitle, .pageTitle { border-bottom:1px solid #ccc; padding-bottom:10px; margin-bottom:15px; }
ul { list-style:none; padding:0; }
li { background: url(/images/listIndicator.png) no-repeat left 4px; padding: 3px 0px 3px 26px; list-style: none; margin: 0; font-size:16px; margin-bottom:5px; display:block; }
ul.none li { background:none; padding-left:0; }
ul.standard { list-style:circle; padding-left:30px; }
ul.standard li { padding-left:18px; background:url(/images/li-standard.png) no-repeat left 8px; display:list-item; margin-bottom:0; }
ul ul.standard { padding-left:10px; margin-top:5px; }
a.disabled, a.disabled:link { color:#757575; border-bottom:1px dashed #757575; }
.lightgray { color:#e8e8e8; }
.outline { border:1px solid #ddd; }
.padding { padding:30px; }

/* grid */
.row { margin:0 0 20px; clear:both; width:100%; }
.col_10,.col_01,.col_100,.col_010,.col_001,.col_110,.col_011,.col_1000,.col_0100,.col_0010,.col_0001,.col_1100,.col_0110,.col_0011,.col_1110,.col_0111 { display:inline-block; vertical-align:top; }
.col_10, .col_1100 { width:48.5%; margin:0 3% 0 0; }
.col_01, .col_0011 { width:48.5%; margin:0 0 0 -4px; float:right; }
.col_100 { width:31.4%; margin:0 2.9% 0 0; }
.col_010 { width:31.4%; margin:0 2.9% 0 -4px; }
.col_001 { width:31.4%; margin:0 0 0 -4px; float:right; }
.col_110 { width:65.7%; margin:0 2.9% 0 0; }
.col_011 { width:65.7%; margin:0 0 0 -4px; float:right; }
.col_1000 { width:22.75%; margin:0 3% 0 0; }
.col_0100, .col_0010 { width:22.75%; margin:0 3% 0 -4px; }
.col_0001 { width:22.75%; margin:0 0 0 -4px; float:right; }
.col_0110 { width:48.5%; margin:0 3% 0 -4px; }
.col_1110 { width:74.25%; margin:0 3% 0 0; }
.col_0111 { width:74.25%; margin:0 0 0 -4px; float:right; }
.col_10000, .col_01000, .col_00100 { width:18.4%; margin-right:2%; padding-right:0; float:left; }
.col_00010 { width:18.4%; margin-right:0; padding-right:0; float:left; }
.col_00001 { width:18.4%; margin-right:0; padding-right:0; float:right; }
.col_11110 { width:79.6%; margin-right:0; padding-right:0; float:left; }
.col_01111 { width:79.6%; margin-right:0; padding-right:0; float:right; }

/* galleries */
body.ps-active #background, body.ps-active #background img { display:block; }
div.ps-document-overlay {background:none;}
div.ps-uilayer, body.ps-active, body.ps-building, div.ps-active, div.ps-building, div.ps-caption, div.ps-toolbar { background:none; border:none; overflow:visible; }
.ps-carousel { padding:15px 0; }
.ps-carousel-item { padding:15px 0; }
body.ps-active *, div.ps-active * { display:block; }
.image_gallery_holder { width:100%; height:auto; padding:15px 0; background:none; }
.image_gallery_holder img { 
	border:none;
	padding:0;
}	
.gallery_right { 
	position:absolute; z-index:1001; 
	right:25px; margin-top:0; width:51px; height:100px; 
	cursor:pointer; 
	background:url(/images/gallery-right.png) center center no-repeat;
	margin-right:-95px;
}
.gallery_left { 
	position:absolute; z-index:1001; 
	left:25px; margin-top:0; width:51px; height:100px; 
	cursor:pointer; 
	background:url(/images/gallery-left.png) center center no-repeat; 
	margin-left:-95px;
}
.gallery_image { width:100%; text-align:center; }
.pagination { margin-top:15px; }

/* forms */
.form_field_block { margin-bottom:20px; }
.form_field_block.wide { width:100%; }
.form_field_block.highlight { 
	background:#eee; padding:20px 5%; width:90%; 
	-webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; 
}
input[type=text], input[type=password], textarea, select { 
	width:92%; width:calc(100% - 24px); padding:12px; margin:0; 
	border:1px solid #ddd; 
	-webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; 
	-webkit-transition:all 0.5s ease-in; transition:all 0.5s ease-in; 
}
select { width:100%; max-width:100%; }
input.inline, input[type=text].inline, input[type=password].inline, textarea.inline, select.inline { width:auto; }
p.error { color:#ff0000; margin:5px 0 0; }
input[type="text"].error, input[type="password"].error, textarea.error, select.error { border-color:#FF0000; }
.loading {
	position:relative;
	float:right;
	width:15px;
	height:15px;
	background:url(/images/loading.gif) center no-repeat;
	margin:2px 0 4px 8px;
}

.announcement { background:#f1f8dc; border:1px solid #a9cc45; padding:25px 30px; color:#222222; margin:30px 0; font-size:17px; }
.announcement b, .announcement strong { color:#a9cc45; }
.announcement :last-child {margin-bottom:0;}

/* shopping/ minicart */
#mini_cart { 
	position:fixed; z-index:2000; top:15px; right: 15px; 
	background:#eee; padding:10px 15px 0;
	-moz-box-shadow: 0px 0px 4px #888;
	-webkit-box-shadow: 0px 0px 4px #888;
	box-shadow: 0px 0px 4px #888;
	-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#888888')";
	filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#888888');
}
#index #mini_cart { top:100px; }
.merchandise_options_container { display:inline; }
#mini_cart_tooltip { 
	display:none;
	position:fixed; z-index:2000; top:49px; right: 15px; 
	background:#fff; padding:10px 15px 0; border:1px solid #eee;
	-moz-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
	-webkit-box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
	box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
	-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#888888')";
	filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#888888');
}
#index #mini_cart_tooltip { top:100px; }
.listing_item { border:1px solid #e8e8e8; padding:15px; }
.listing_item + .listing_item { border-top:none; }
.listing_item h3 { margin-bottom:0; }
.listing_item input[type="text"], .listing_item input[type="password"], .listing_item textarea, .listing_item select { padding:3px 6px; }
.listing_item.noborder { border:none; }
.listing_item.borderbottom { border:none; border-bottom:1px solid #e8e8e8; margin-bottom:20px; }
#mini_cart_contents .listing_item p, #mini_cart_contents .actions p { margin-bottom:8px; }
.minicart_item select { float:left; margin:0 15px 5px 0; }
.processing_option { margin:5px 0 0; }
.processing_option:last-child { margin-bottom:15px; }
.cart_actions .button.inline { margin:15px 20px; }
.cart_col1 { float:left; width:45%; margin:0 2.5% 0 0; }
.cart_col2 { float:left; width:5%; margin:0 2.5% 0 0; }
.cart_col3 { float:left; width:10%; margin:0 2.5% 0 0; }
.cart_col4 { float:right; width:30%; margin:0 2.5% 0 0; }

#overlay_body { padding:30px 15px 10px; height:auto; background-color:#fff; }

/* home features */
.home_feature { width:100%; background:#fff; overflow:hidden; }
.home_feature img { position:relative; z-index:10; max-width:none; width:100%; height:auto; vertical-align:top; }
.home_feature img.h { width:auto; height:100%; }
.home_feature .img_over { position:absolute; width:100%; height:100%; top:0; left:0; background:rgba(0,0,0,0.6); z-index:11; }
.home_feature_info { position:absolute; top:50%; transform:translateY(-50%); width:100%; z-index:12; }
.home_feature_info h1 { font-size:58px; line-height:62px; background:none; color:#fff; margin:0 0 15px; padding:0; text-shadow:0 0 5px rgba(0,0,0,0.3); }
.home_feature_info h2 { color:#fff; font-weight:400; font-size:34px; line-height:37px; margin:0 0 25px; text-shadow:0 0 5px rgba(0,0,0,0.3); }
#home_features_section { position:relative; }
#home_features_holder { margin-top:30px; }
#home_features_holder.mobile .home_feature img { height:auto; width:100%; }
#home_features_nav { position:absolute; z-index:999; margin-top:-50px; width:100%; text-align:center; }
#home_features_nav span { background:#fff; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter: alpha(opacity=30);-moz-opacity: 0.3; -khtml-opacity: 0.3; opacity: 0.3; width:14px; height:14px; -webkit-border-radius:7px; -moz-border-radius:7px; border-radius:7px; margin:0 12px; display:inline-block; color:#fff; cursor:pointer; text-indent:-1000px; overflow:hidden; }
#home_features_nav span.cycle-pager-active { -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter: alpha(opacity=100);-moz-opacity: 1; -khtml-opacity: 1; opacity: 1; }
.home_feature_title.inner { width:84%; margin-left:auto; margin-right:auto; }

/* home */
.home_containers .whiteContainer .col_10 > img { width:100% !important; height:auto !important; }
.home_containers .whiteContainer .col_01 { text-align: center; }
.home_containers .whiteContainer .col_01 h2 { margin-top:8px; margin-bottom:5px; }
.home_slides { max-width:940px; width:100%; margin:0 auto; position:relative; height:515px;}
.home_slides > div { max-width:892px; width:100%; }
.home_slides img { max-width:892px; width:100% !important; }

/* page features */
.page_feature_wrapper { position:relative; }
.page_feature { width:100%; height:100%; overflow:hidden; position:relative; min-height:230px; z-index:11; }
.page_feature.background-image { background:#000; }
.page_feature_bg { position:absolute; z-index:1; width:100%; height:100%; top:0; left:0; right:0; bottom:0; padding:0; margin:0; background-position:center center; background-repeat:no-repeat; background-size:cover; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; filter: alpha(opacity=85);-moz-opacity: 0.85; -khtml-opacity: 0.85; opacity: 0.85; }
.page_feature .page_feature_image img { position:relative; z-index:10; max-width:none; min-width:100%; width:auto !important; height:auto !important; min-height:100%; }
.page_feature_info { position:relative; top:0; width:100%; margin:190px 0 150px; z-index:11; text-align:center; }
.page_feature_info h1 { font-size:60px; line-height:65px; background:none; color:#fff; margin:0 0 15px; padding:0; }
.page_feature_info h2 { color:#fff; font-size:34px; line-height:37px; margin:0 0 30px; }
.page_feature_info p { color:#fff; font-size:21px; line-height:34px; margin:0 0 30px; }
.page_feature_info > :last-child { margin-bottom:0; }

.cms_field_container { margin-bottom:20px; }
.spacer { height:30px; margin:0; }

/* articles */
.articles {
    border: 1px solid #cec9be;
    margin:20px 0;
    padding:15px;
    width:calc(100% - 32px);
}

/* modules */
#twitter_feed .listing_result {
	background-image: url("/images/twitterBG.png");
    border: 1px solid #cec9be;
    border-radius: 10px;
    padding: 15px;
}
#twitter_feed .listing_result p { margin-bottom:0; }
.twitterUser {
    background-image: url("/images/twitterFeed.png");
    background-repeat: no-repeat;
    line-height: 80px;
    margin-top: -5px;
    padding-left: 60px;
}
#list_subscribe_form {
    background:#f1f8dc none repeat scroll 0 0;
	border:1px solid #a9cc45;
    margin: 30px 0;
    padding: 15px;
    text-align: center;
}
#list_subscribe_form #ls_email { float:left; width:75%; padding:15px 3%; margin:0; }
#list_subscribe_form #ls_submit { float:right; width:10%; padding:13px 3% 12px; margin:0; }
#list_subscribe_form h3 { margin-bottom:0; }
#subscribe_status_msg { margin-top:10px; }
.right_col_content { margin-bottom:30px; }
.classesToday {
    color: #393939;
    font-family: "oswaldlight",Arial;
    font-size: 18px;
    text-align: center;
    text-transform: uppercase;
	margin-bottom:10px;
}
.scheduleClass, .scheduleClassPrice {
    background-color: #fff;
    border: 1px solid #cec9be;
    cursor: pointer;
    display: inline-block;
    margin: 2px 0;
    padding: 15px;
    width: calc(100% - 32px);
}
.classTitle {
    color: #393939;
    display: inline-block;
    font-family: "oswaldlight",Arial;
    font-size: 14px;
    text-transform: uppercase;
}
.classTime {
    color: #393939;
    float: right;
    font-family: "oswaldbold",Arial;
    font-size: 14px;
    text-transform: uppercase;
}
.downloadSchedule {
	margin-top:10px; 
}

/* expand */
.expand_header .arrow {
	width: 0; 
	height: 0; 
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-right: 10px solid #6c6b70; 
	-webkit-transition:-webkit-transform 300ms ease-out;
	-moz-transition:-moz-transform 300ms ease-out;
	-o-transition:-o-transform 300ms ease-out;
	-ms-transition:-ms-transform 300ms ease-out;
	transition:transform 300ms ease-out;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg); 
	
}
.expand_header .arrow.open {
	-webkit-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg); 
}

/* filters */
#filters { margin:30px 0; }
#filters .filter_header { line-height:25px; padding:0; border-bottom:1px solid #e4e8eb; }
#filters .filter_section_contents { padding:15px 5px; border-left:1px solid #e4e8eb; }
#filters .filter_section:first-child .filter_section_contents { border-left:none; padding-right:0; }
#filters .expand_button {
	 display:inline-block; width:auto; height:25px; line-height:25px; padding:0; vertical-align:top; cursor:pointer;
}
#filters .expand_button .icon { 
	display:inline-block; width:25px; height:25px; margin-right:10px; vertical-align:top; background:url(/images/icon-plus.png) center center no-repeat;
}
#filters .expand_button.open .icon {
	background:url(/images/icon-minus.png) center center no-repeat;
}
#filters .clearbutton, #filters a.clearbutton, #filters a.clearbutton:link { color:#bcbcbc; font-weight:normal; }
.filter_section .date_filter { color:#808080; line-height:16px; }
.filter_section .date_icon { vertical-align:top; margin:0 10px 0 15px; }
.filter_section #filter_date_start, .filter_section #filter_date_end, .filter_section #filter_today { margin:0 5px; }
.filter_separator { margin:0 10px; display:inline-block; color:#e4e8eb; }
#filters .filter_expand { display:none; }
#filters .filter_expand_contents { padding:30px; border:1px solid #e4e8eb; border-top:none; }
.filter_expand .filter_type { display:inline-block; margin:0 40px 20px 0; vertical-align:top; }
.filter_expand .filter_type h4 { margin:0 0 10px; font-weight:normal; font-size:15px; line-height:18px; }
.filter_expand .filter_type p { margin:0 0 10px 10px; font-size:14px; line-height:16px; }
.filter_expand .filter_type p a { font-weight:normal; color:#808080; }
.filter_expand .filter_type p a.active { font-weight:bold; color:#a9cc45; }

.ui-datepicker table { border-collapse:separate; }
.ui-widget-header { background:#fff; border:none; color:#393939; }
.ui-widget-content { background:#fff; border:none; }
.ui-datepicker th { font-weight:normal; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { color:#393939; font-weight:normal; background:#fff; border:none; text-align:center; }
.ui-datepicker td { border:1px solid #fff; }
.ui-datepicker td.cal_highlight, .cal_highlight { color:#393939; font-weight:normal; border:1px solid #a9cc45; }
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border:none; color:#393939; }
.ui-datepicker td.cal_hover { background:#f1f8dc; border:1px solid #a9cc45; }
.cal_hover a.ui-state-hover:link, .cal_hover a.ui-state-default:link { background:#f1f8dc; border:none; color:#393939; }
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight { background:#fff; border:none; }
.ui-datepicker td.cal_highlight + td.cal_highlight, .ui-datepicker td.cal_hover + td.cal_hover, .ui-datepicker td.cal_highlight + td.cal_hover, .ui-datepicker td.cal_hover + td.cal_highlight { border-left:none; }
.ui-datepicker .ui-datepicker-prev span { background:url(/images/icon-cal-prev.png) center center no-repeat; width:12px; height:16px; cursor:pointer; }
.ui-datepicker .ui-datepicker-next span { background:url(/images/icon-cal-next.png) center center no-repeat; width:12px; height:16px; cursor:pointer; }
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { background:none; border:none; }

/* upcoming classes */
#account_bar #upcoming_class_links a:first-child, #account_bar #upcoming_class_links a:link:first-child { margin-left:0; }
#account_bar #upcoming_class_links a, #account_bar #upcoming_class_links a:link { padding-left:0; padding-right:0; font-size:16px; line-height:18px; }
#account_bar #upcoming_class_links a.small, #account_bar #upcoming_class_links a.small:link { color:#9c9c9c; font-size:14px; padding:17px 0 13px; }
#upcoming_class_overview { background:#393939; color:#fff; padding:30px 0; }
.upcoming_class { width:49%; float:left; }
.upcoming_class:last-child { float:right; }
.upcoming_class_info { font-size:16px; line-height:20px; float:left; margin-right:10px; }
.upcoming_class_info .large { font-size:34px; line-height:36px; padding:2px 0; }
.upcoming_class_info.date { color:#adafa7; text-transform:uppercase; text-align:center; }
.upcoming_class_info.time { text-transform:uppercase; }
.upcoming_class_info.title { color:#adafa7; margin-left:30px; }
.upcoming_class_info.title .large { color:#fff; }
.upcoming_class_actions { margin-top:25px; color:#a9cc45; }
.upcoming_class_actions a, .upcoming_class_actions a:link { font-weight:normal; margin:0 10px; padding:0; cursor:pointer;}
.upcoming_class_actions a:first-child, .upcoming_class_actions a:link:first-child { margin-left:0; }
#upcoming_class_links .arrow {
	display:block;
	float:left;
	margin:15px 5px 0;
	width: 0; 
	height: 0; 
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid #a9cc45; 
	-webkit-transition:-webkit-transform 300ms ease-out;
	-moz-transition:-moz-transform 300ms ease-out;
	-o-transition:-o-transform 300ms ease-out;
	-ms-transition:-ms-transform 300ms ease-out;
	transition:transform 300ms ease-out;
	cursor:pointer;
	-webkit-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	transform: rotate(-90deg); 
}
#upcoming_class_links .arrow.open {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg); 
}
/* classes */
table { 
    border-spacing: 0;
    border-collapse: collapse;
}
table.class_schedule { width:100%; margin:20px 0; }
table.class_schedule th { text-align:left; padding:15px; background:#f5f5f5; color:#808080; font-size:14px; font-weight:300; border:1px solid #e4e8eb; border-right:none; border-bottom:none;} 
table.class_schedule th:last-child { border-right:1px solid #e4e8eb; }
table.class_schedule td { text-align:left; padding:15px; background:#fff;
	-webkit-transition: background-color 200ms ease-out;
    -moz-transition: background-color 200ms ease-out;
    -o-transition: background-color 200ms ease-out;
    transition: background-color 200ms ease-out; 
	font-size:14px; }
table.class_schedule td.alignright { text-align:right; }
table.class_schedule td:last-child { padding:15px; }
table.class_schedule .schedule_item { border:1px solid #e4e8eb; border-bottom:none;
	-webkit-transition: border-color 200ms ease-out;
    -moz-transition: border-color 200ms ease-out;
    -o-transition: border-color 200ms ease-out;
    transition: border-color 200ms ease-out;  }
table.class_schedule .schedule_item:last-child { border-bottom:1px solid #e4e8eb; }
table.class_schedule .schedule_item:nth-child(odd) td { background:#f5f5f5; }
table.class_schedule .schedule_item:hover { border-color:#a9cc45 !important; border-bottom:1px solid #a9cc45; }
table.class_schedule .schedule_item:hover + .schedule_item { border-top:none; }
table.class_schedule .schedule_item:hover td { background:#f1f8dc; }
table.class_schedule td.aligncenter { text-align:center; }
table.class_schedule .schedule_item .button { background:#cbced1; border:none;
	-webkit-transition: background-color 200ms ease-out;
    -moz-transition: background-color 200ms ease-out;
    -o-transition: background-color 200ms ease-out;
    transition: background-color 200ms ease-out;
	font-size:14px; padding:10px; text-align:center; }
table.class_schedule .schedule_item:hover .button { background:#c9e283; }
table.class_schedule .schedule_item:hover .button:hover { background:#a9cc45; }
table.class_schedule .schedule_item .button.disabled { background:#eee; }
table.class_schedule .schedule_item:hover .button.disabled  { background:#e4e4e4; }
table.class_schedule .schedule_item:hover .button.disabled:hover { background:#e4e4e4; }
.schedule_item .button { white-space:nowrap; }

.item_details_button { cursor:pointer; }
.icon_info { background:url(/images/icon-info.png) center center no-repeat; background-size:contain; display:inline-block; width:15px; height:15px; margin:-2px 0 0px 5px; vertical-align:middle; cursor:pointer; }
table.class_schedule td.schedule_item_details:last-child { padding:0; }
table.class_schedule td.schedule_item_details .schedule_item_detailsB { padding:0; overflow:hidden; }
table.class_schedule td.schedule_item_details .schedule_item_detailsC { padding:15px 20px; }
table.class_schedule td.schedule_item_details .schedule_item_detailsC :last-child { margin-bottom:0; }

.tooltip { cursor:pointer; }
.qtip { background:#e4e8eb; border-color:#e4e8eb; color:#222; font-size:15px; line-height:22px; padding:20px; width:auto; }
.qtip :last-child { margni-bottom:0; }

.rate_group_container.sub { margin:0 0 20px; }
.rate_group_rates { margin:20px 0; padding:30px; background:#f0f0f0; }
.rate_group_rates .button.gray, .rate_group_rates a.button.gray, .rate_group_rates a.button.gray:link { background:#fff; }
#tgTable dl .wdcal_hide { display:none; }

/* store */
#checkout_form { margin-top:30px; }
.checkbox_left { float:left; margin:5px 10px 0 0; }
#checkout_form #field_checkout_billing_cc_number_0.autodetect { width:100% !important; }
#checkout_form #checkout_billing_cc_number_0 { width:calc(100% - 160px); float:right; }
#ccdetect { height:22px; margin-top:10px; float:left; }
#ccdetect img { margin-right:6px; cursor:pointer; }
.form_text { margin-top:15px; }
.checkout_step { margin:20px 0; }
.step_heading { background:#e4e8eb; padding:20px; font-size:18px; line-height:18px; color:#222; }
.step_heading .step_edit { font-size:16px; color:#808080; }
.step_contents { margin:20px 0 0; }
.step_continue { text-align:right; margin:20px 0; padding-top:20px; border-top:2px solid #e4e8eb; }
.checkout_step_button, .button.checkout_step_button { display:inline-block; background:#393939; color:#fff; width:auto; border:none; padding:15px 60px; }
.checkout_step_button:hover, .button.checkout_step_button:hover { background:#808080; }
.checkout_step_button.green, .button.checkout_step_button.green { background:#a9cc45; color:#222222; font-weight:bold; }
.checkout_step_button.green:hover, .button.checkout_step_button.green:hover { background:#cbced1; }
.step_continue .back, .step_continue a.back, .step_continue a.back:link { color:#808080; text-decoration:none; font-weight:normal; float:left; margin-top:15px; cursor:pointer; }
#promo_code_form { position:relative; }
#checkout_promo_code_submit { position:absolute; right:0; top:1px; width:40px; height:41px; background:url(/images/icon-submit-arrow.png) center center no-repeat; border:none; cursor:pointer; }
#checkout_promo_code_response { text-align:center; margin:5px 0; font-size:14px; }

.inputlike {border: 1px solid #ddd; padding:12px; }

.class_participants { margin:20px 0; }
.class_participants h2 { font-size:20px; line-height:26px; margin-bottom:15px;}
.class_participant { margin-bottom:10px; }
.class_participant_label { margin-top:10px; }

.flextabs {display:flex; width:100%; max-width:100%; }
.flextabs .flextab { 
	margin:0; padding:12px 10px; text-align:center; font-size:14px; line-height:14px; font-weight:bold; background:#c9e283; color:#222; width:25%; cursor:pointer;
	-webkit-transition: background-color 200ms ease-out;
    -moz-transition: background-color 200ms ease-out;
    -o-transition: background-color 200ms ease-out;
    transition: background-color 200ms ease-out; 
	border-left:1px solid #a9cc45;
}
.flextabs .flextab:hover, .flextabs .flextab.selected { background:#a9cc45; }
.flextabs .flextab:first-child { 
	border-left:none;
	-webkit-border-top-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-topleft: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}
.flextabs .flextab:last-child { 
	-webkit-border-top-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
	-moz-border-radius-topright: 5px;
	-moz-border-radius-bottomright: 5px;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.gc_custom_container { text-align:center; margin:10px 0;}

.flex_grid { display:flex; column-gap:5%; flex-wrap:wrap; }
.flex_grid_item, .listing_item.flex_grid_item { border:0; padding:0; margin:0 0 20px; flex:1 1 30%; }
.flex_grid_item .listing_thumb, .listing_item.flex_grid_item .listing_thumb { width:100%; }

.merch_image { max-width:500px; }

/* users */
.user_nav { background:#f5f5f5; border:1px solid #e4e8eb; padding:15px 0 0; margin-top:56px; }
.inpage_subnav { margin:0; }
.inpage_subnav li { background:#f5f5f5; padding:0; margin:0; }
.inpage_subnav li:hover { background:#eee; }
.inpage_subnav > li { border-top:1px solid #e4e8eb; }
.inpage_subnav > li > a { padding:12px 15px; display:block; }
.inpage_subnav > li:last-child { margin-bottom:0; }
.inpage_subnav ul { margin:0; }
.inpage_subnav ul li { border-top:1px solid #e4e8eb; }
.inpage_subnav ul a { display:block; padding:12px 15px 12px 30px; }


#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}

.mshow,.mshow_inline,.mshow_inlineblock{display:none; }

@media screen and ( max-width: 1100px ) {
	.nav li a, .nav li a:link, .nav li a:active, .nav li a:visited { margin:0 8px; }
}

@media screen and ( max-width: 960px ) {
	#filters .col_110 { width:55%; }
	#filters .col_001 { width:40%; }
}

@media screen and ( max-width: 870px ) {
	#header_content.inner { width:calc(100% - 30px); padding:0 15px; margin-top:15px; }
	.nav li a, .nav li a:link, .nav li a:active, .nav li a:visited { letter-spacing:0; margin:0 5px; }
	#nav-one li { margin-right:0; }
}
@media screen and ( max-width: 800px ) {
	#filters .col_110 { width:44%; float:left; }
	#filters .col_001 { width:50%; float:right; }
}

@media screen and ( max-width: 700px ) {
	
	.malignleft {text-align:left;}
	.maligncenter {text-align:center;}
	.malignright {text-align:right;}
	
	#header_content { margin-top:20px; }
	#header_content.inner { width:100%; padding:0;}
	#logo { display:block; width:60%; max-width:114px; text-align:center; margin:0 auto; float:none; }
	#navigation_container { width:100%; background:none; padding-top:0; }
	.nav { margin:0; display:block; }
	.nav li { display:block; float:none; padding:0; border-bottom:1px solid #333; }
	.nav li a, .nav li a:link, .nav li a:active, .nav li a:visited { font-size:18px; letter-spacing:0.02em; display:inline-block; width:90%; margin:0; padding:15px 5%; }
	.nav ul { position:relative; background:none; box-shadow:none; -moz-box-shadow:none; -webkit-box-shadow:none; }
	#navigation { display:none; height:auto; }
	#navigation_mobile { background:url(/images/icon-mobile-nav.png) 15px 14px no-repeat #333; height:54px; margin:20px 0 0; padding:0; width:100%; cursor:pointer; }
	#nav-one>li:first-child { border-top:1px solid #333; }
	#nav-one li ul { margin:0 0 10px 20px; }
	#nav-one li ul a, #nav-one li ul a:link {  }
	#nav-one li:hover ul a { color:#333; padding:5px; margin:0; }
	#nav-one li ul li { padding:0; margin:0; }
	
	.mshow { display: block; }
	.mshow_inline { display:inline; }
	.mshow_inlineblock { display:inline-block; }
	.mhide, .mhide700 { display:none; }
	
	.col_left, .col_right, .col_100, .col_010, .col_001, .col_110, .col_011, .col_10, .col_01, .col_1000, .col_0100, .col_0010, .col_0001, .col_1100, .col_0110, .col_0011, .col_1110, .col_0111, .col_10000, .col_01000, .col_00100, .col_00010, .col_00001, .col_11110 { float:none; display:block; width:auto; margin-right:auto; margin-left:auto; border-right:none; max-width:none; }
	.col_10.border { border-right:none; }
	.col_right { text-align:center; margin-top:20px; }
	
	/* grid */
.mcol_10,.mcol_01,.mcol_100,.mcol_010,.mcol_001,.mcol_110,.mcol_011,.mcol_1000,.mcol_0100,.mcol_0010,.mcol_0001,.mcol_1100,.mcol_0110,.mcol_0011,.mcol_1110,.mcol_0111 { display:inline-block; vertical-align:top; }
	.mcol_10, .mcol_1100 { width:48.5%; margin:0 3% 0 0; }
	.mcol_01, .mcol_0011 { width:48.5%; margin:0 0 0 -4px; float:right; }
	.mcol_100 { width:31.4%; margin:0 2.9% 0 0; }
	.mcol_010 { width:31.4%; margin:0 2.9% 0 -4px; }
	.mcol_001 { width:31.4%; margin:0 0 0 -4px; float:right; }
	.mcol_110 { width:65.7%; margin:0 2.9% 0 0; }
	.mcol_011 { width:65.7%; margin:0 0 0 -4px; float:right; }
	.mcol_1000 { width:22.75%; margin:0 3% 0 0; }
	.mcol_0100, .mcol_0010 { width:22.75%; margin:0 3% 0 -4px; }
	.mcol_0001 { width:22.75%; margin:0 0 0 -4px; float:right; }
	.mcol_0110 { width:48.5%; margin:0 3% 0 -4px; }
	.mcol_1110 { width:74.25%; margin:0 3% 0 0; }
	.mcol_0111 { width:74.25%; margin:0 0 0 -4px; float:right; }
	.mcol_10000, .mcol_01000, .mcol_00100 { width:18.4%; margin-right:2%; padding-right:0; float:left; }
	.mcol_00010 { width:18.4%; margin-right:0; padding-right:0; float:left; }
	.mcol_00001 { width:18.4%; margin-right:0; padding-right:0; float:right; }
	.mcol_11110 { width:79.6%; margin-right:0; padding-right:0; float:left; }
	.mcol_01111 { width:79.6%; margin-right:0; padding-right:0; float:right; }
	
	.inner { width:calc(100% - 20px); padding:0 10px; }
	
	#footer .col_10, #footer .col_01 { text-align:center; }
	#header .col_10.alignright, #header .col_01.alignright { text-align:left; }
	#account_bar a, #account_bar a:link { margin:0 10px 0 0; }
	#account_bar #social_links a, #account_bar #social_links a:link { margin:0 0 0 5px; }
	
	.home_feature_info h1 { font-size:30px; line-height:34px; margin-bottom:5px; }
	.home_feature_info h2 { font-size:24px; line-height:27px; margin-bottom:13px; }
	
	.content_col2, .content_col3 {
		-webkit-column-count:1; -webkit-column-gap:0px;
		-moz-column-count:1; -moz-column-gap:0px;
		column-count:1; column-gap:0px;
	}
	
	table.class_schedule.mschedule th { display:none; }
	table.class_schedule.mschedule td { display:inline-block; float:left; }
	table.class_schedule.mschedule .schedule_item { display:block; padding:10px; }
	table.class_schedule.mschedule .schedule_item:nth-child(2n+1) { background:#f5f5f5; }
	table.class_schedule.mschedule .schedule_item:hover { background:#f1f8dc; }
	table.class_schedule.mschedule .schedule_item td { padding:5px; }
	table.class_schedule.mschedule .schedule_item td.schedule_item_details { display:block; }
	table.class_schedule.mschedule .schedule_item td:not(.class_button):not(.schedule_item_details):nth-child(1) { float:right; }
	table.class_schedule.mschedule .schedule_item .class_button { width:calc(100% - 10px); }
	table.class_schedule.mschedule .schedule_item .class_button .button { display:block; width:auto; }
	table.class_schedule.mschedule .schedule_item td:last-child { float:none; clear:both; }
	
	#account_bar a, #account_bar a:link { padding:15px 5px; }
	#account_bar #upcoming_class_links a.small, #account_bar #upcoming_class_links a.small:link { margin:0 15px 0 0; padding:15px 5px; }
	#account_bar #social_links a, #account_bar #social_links a:link { margin:0; padding:15px 2px; }
	#upcoming_class_links { float:left; margin:0; }
	#upcoming_class_overview { display:none; }
	#account_bar a.upcoming_class_toggle, #account_bar a.upcoming_class_toggle:link { display:none; }
	#upcoming_class_links .arrow { display:none; }
	
	#filters .col_001 { display:inline-block; width:auto; }
	#filters .col_110 { display:inline-block; width:auto; }
	#filters .col_001#filter_date { width:100%; } 
	#filters #filter_date .ui-datepicker { width:100%; }
	#filters .clearbutton { display:none; }
	#filters .filter_expand_contents { padding:20px; }
	
	.class_participant_label { margin:20px 0 5px; }
}

@media screen and ( max-width: 540px ) {
	.home_feature_info h1 { font-size:24px; line-height:27px; margin-bottom:5px; }
	.home_feature_info h2 { font-size:20px; line-height:22px; margin-bottom:13px; }
	#home_features_holder.mobile .home_feature img { width:auto; height:300px; }
	.home_feature_title .button, .home_feature_title a.button, .home_feature_title a.button:link { padding:9px 20px; }
	#home_features_nav { margin-top:-35px; }
}

@media screen and ( max-width: 450px ) {
}

@media print {
	body, html { min-width:1200px; height:auto; }
	#footer_spacer { display:none; }
	#footer { height:auto; }
	#content { margin-bottom:0; min-height:none; height:auto; }
	h1, h2, h3, h4, p { letter-spacing:0; }
}

#ckeditor {
	height:auto;
}