/*
Theme Name: Gagnon Studio 2.0
Theme URI: http://www.timgagnon.com
Author: Eric Brissette
Author URI: http://www.godesignlab.com
Description: Child theme for Klein BuddyPress Theme using Bootstrap 3.0 Framework. 
Version: 1.0
Template: klein-2.0.4
*/

/**
 * Style CSS
 *
 * @package Klein
 * @since version 1.0
 */
/* @import url("../klein-2.0.4/style.css"); */

/* #Reset & Basics (Inspired by E. Meyers)
================================================== */	
	html{
		overflow-x: hidden;
	}
	
	html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		vertical-align: baseline; 
	}
	article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
		display: block; 
	}
	body {
		line-height: 1.8em;
		font: 14px/1.6em 'PT Sans', Arial, Helvetica, sans-serif;
		color: #2C3E50;
		word-wrap: break-word;
	 }
	ol > li,
	ul > li {
		list-style: square; 
		margin-left: 30px;
	}
	ol > li{
		list-style: decimal;
	}
	blockquote, q {
		quotes: none; }
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none; }
	table {
		border-collapse: collapse;
		border-spacing: 0; 
		vertical-align: middle;
	}
	
	table th,	
	table td {
		padding: 4px 8px;
		border: 1px solid #ECF0F1;
		vertical-align: middle;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	
	table#wp-calendar th,
	table#wp-calendar td{
		color: #2C3E50;
	}
	
	li:empty{
		display: none;
	}
	table th{
		padding: 8px;
		text-align: left;
		color: #95A5A6;
	}
	.wp-caption-text,
	q,
	cite,
	var,
	address{
		font-style: normal;
	}
	var{ font-family: 'Times New Roman', Georgia, sans-serif; }
	em, i{
		font-family: Georgia, 'Times New Roman', sans-serif;
	}
	tt,
	pre{
		font-size: 12px;
		font-family: "Courier",sans-serif;
	}
	pre{
		max-width: 90%;
		width: auto;
	}
	
	sup {
		vertical-align: super;
		font-size: smaller;
	}
	sub {
		vertical-align: sub;
		font-size: smaller;
	}
	
	code{
		word-wrap: break-word;
		white-space: normal;
	}
	
	h1:empty,
	h2:empty,
	h3:empty,
	h4:empty,
	h5:empty,
	h6:empty{
		display: none;
	}
	a:hover{
		text-decoration: none;
	}
/* #Basic Styles
================================================== */
	

	
	.hidden{
		display: none;
	}
	
	blockquote,
	pre,
	q{
		border-left: 5px solid #ECF0F1;
	}

/* #Typography
================================================== */
	h1, h2, h3{ letter-spacing: -1px; }
	legend, label,caption,h1, h2, h3, h4, h5, h6 {
		font-family: "Open Sans","Helvetica", "Times New Roman", serif;
		font-weight: 700; 
		}
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1 { font-size: 38px; line-height: 120%; margin: 0px 0px 20px 0px; }
	h2 { font-size: 32px; line-height: 120%; margin: 0px 0px 20px 0px; }
	h3 { font-size: 26px; line-height: 120%; margin: 0px 0px 20px 0px; }
	h4 { font-size: 20px; line-height: 120%; margin: 0px 0px 20px 0px; }
	h5 { font-size: 16px; line-height: 120%; margin: 0px 0px 20px 0px; }
	h6 { font-size: 14px; line-height: 120%; margin: 0px 0px 20px 0px; }
	.subheader { color: #777; }

	p { margin: 0 0 20px 0; }
	p img { margin: 0; }
	p.lead { font-size: 21px; line-height: 27px; color: #777;  }

	em { font-style: italic; }
	strong { font-weight: bold;}
	small { font-size: 85%; }

/*	Blockquotes  */
	
	blockquote { 
		margin: 0 0 20px;
		position: relative;
		font-family: georgia;
		padding: 20px 10px;
		font-family: 'Georgia', 'Times New Roman', sans-serif;
	}
	blockquote p {
		line-height: 160%;
		color: #7F8C8D;
		font-style: italic;
	}
	blockquote cite { margin-top: 0.50em; display: block; font-size: 12px; color: #555; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #555; }

	hr { border: solid #F1F1F1; border-width: 1px 0 0; clear: both; margin: 30px 0px; height: 0; }
	
	table{
		margin-bottom: 20px;
		width: 100%;
	}
	dl{
		display: block;
	}
	dl dt{	margin-left: 5px; }
	dl dd{	margin-left: 45px; }
	table caption{
		text-align: left;
		background: #444;
		padding: 20px 10px;
		border: 1px solid #333;
		border-bottom: 0;
		font-size: 16px;
		text-transform: uppercase;
		font-weight: bold;
		color: #ECF0F1;
	}
/* #Links
================================================== */
	a{ 
		color: #16A085;
		text-decoration: none;
		-webkit-backface-visibility: hidden;
	}
	
	p a, p a:visited { line-height: inherit; }


/* #Lists
================================================== */
	ul, ol { margin-bottom: 20px; }
	ol { list-style: decimal; }
	ul.square { list-style: square outside; }
	ul.circle { list-style: circle outside; }
	ul.disc { list-style: disc outside; }
	ul ul, ul ol,
	ol ol, ol ul { margin: 8px 0 4px 8px; }
	ul ul li, ul ol li,
	ol ol li, ol ul li { margin-bottom: 6px; }
	li { line-height: 18px; margin-bottom: 12px; }
	ul.large li { line-height: 21px; }
	li p { line-height: 21px; }

/* #Images
================================================== */

	img.scale-with-grid {
		max-width: 100%;
		width: auto;
		height: auto; }


/* #Buttons
================================================== */
	.btn.loading,
	button.loading,
	input[type="submit"].loading,
	input[type="reset"].loading,
	li.load-more.loading a,
	input[type="button"].loading {
		background-image: url('images/bp_btn_loader.gif' );
		background-repeat: no-repeat;
		background-position: right center;
		padding-right: 20px;
	}

	/* Fix for odd Mozilla border & padding issues */
	button::-moz-focus-inner,
	input::-moz-focus-inner {
		border: 0;
		padding: 0;
	}


/* #Forms
================================================== */

	form {
		display: block; }
	fieldset {
		margin-bottom: 20px; }
	input[type="text"],
	input[type="password"],
	input[type="email"],
	textarea,
	select {
		border: 1px solid #BDC3C7;
		border-radius: 2px;
		padding: 6px 10px 8px 12px;
		outline: none;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		font: 13px 'PT Sans', "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		color: #7F8C8D;
		margin: 0;
		width: 210px;
		max-width: 100%;
		display: block;
		margin-bottom: 10px;
		background: #fff;
		color: #7F8C8D;
	}

	select {
		line-height: 24px; }
	input[type="text"]:focus,
	input[type="password"]:focus,
	input[type="email"]:focus,
	textarea:focus {
 		color: #444; }
	textarea {
		min-height: 60px; }
	label{
		margin-bottom: 4px;
	}	

	select {
		width: 220px; }
	input[type="checkbox"] {
		display: inline-block;
		margin: 4px 4px 0 0px;
	}	
	label span,
	legend span {
		font-weight: normal;
		font-size: 13px;
		color: #444; }
	textarea.full{
		width: 97%;
	}	

/* #Misc
================================================== */
	.remove-bottom { margin-bottom: 0 !important; }
	.remove-left { margin-left: 0 !important; }
	.half-bottom { margin-bottom: 10px !important; }
	.add-bottom { margin-bottom: 20px !important; }

/* #WordPress
=================================================== */

.edit-link{
	display: inline-block;
	clear: both;
	width: 100%;
	border-top: 1px dashed #27AE60;
	margin-top: 20px;
}
a.comment-edit-link,
a.post-edit-link{
	color: #ECF0F1;
	background: #27AE60;
	padding: 4px 10px;
	margin-bottom: 10px;
	display: inline-block;
}
.page-link{ margin-left: 20px; }
.size-auto, 
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
	max-width: 100%;
	height: auto;
}
li.pingback{ list-style: none; }
li.pingback .comment-body{ margin: 4px 10px 0px 82px; }

footer.entry-meta.single{
	border-top: 1px solid #DDD;
	padding-top: 1em;
	margin-top: 1em;
}
footer.entry-meta .comments-link,
footer.entry-meta .edit-link,
footer.entry-meta .tags-links,
footer.entry-meta .cat-links{
	font-size: 95%;
	display: inline-block;
	padding: 0.50em 0;
}
.sticky-icon{ 
	color: #A7A7A7;
	font-size: 0.75em;
}
.attachment-thumbnail:hover{ opacity:0.8 }
.hentry img,
.thumbnail,
.attachment-post-thumbnail{

}
.attachment footer.entry-meta .edit-link{
	background: none;
	border: none;
	margin: 0;
	padding: 0;
}

#nav-below{ margin-bottom: 20px; display: inline-block; width: 100%; }
#nav-below > .omega { margin-left: 0; }
#nav-below + .omega > .pull-right{ float: left; }

.entry-title,
.nav-next p{
	word-wrap: break-word;
}
.entry-title a:visited,
.entry-title a{
	color: #2C3E50;
}
.entry-title{
	letter-spacing: -1.5px;
	font-size: 32px;
	word-wrap: break-word;
	text-transform: uppercase;
	line-height: 42px;
}
.entry-title a{
	text-decoration: none;
}
.hentry:first-child{ margin-top: 0; }
.hentry:last-child{ margin-bottom: 0; }
.wp-caption{
	position: relative;
	max-width: 100%;
}
.wp-caption img{
	max-width: 100%;
	width: auto;
}
.wp-caption-dt{
	margin: 1em;
}
.wp-caption-dt:empty,
.wp-caption-text:empty,
.wp-caption:empty{
	display: none;
}
.embed-vimeo iframe{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 0.25em;
	background: #fff;
}

.wp-caption-text{
	font-size: 12px;
	padding: 5px 10px;
	background: #F39C12;
	color: #ECF0F1;
	display: inline-block;
	position: absolute;
	right: 0px;
	bottom: 6px;
}

.modal-open{ overflow: hidden; }
.alignright { float:right; margin-left: 1em; }
.alignleft { float:left; margin-right: 1em; }
.aligncenter { text-align: center; }
.textalignright{ text-align:right; }
.textalignleft{ text-align:left; }
.menu.desktop ul li.current_page_ancestor > a{
	color: #FFFFB0;
}
.menu-item a:hover{
	text-decoration: none;
}
#cancel-comment-reply-link{ font-size: 12px; }
.no-comments,.post-edit-link,
.page-links:not(a),
.comment-awaiting-moderation,
.screen-reader-text{ color: #FF9696; }

/* #Widgets
	======================= */
.widget{
	position: relative;
}


.widget .avatar-block{
	display: inline-table;
	clear: both;
	width: 100%;
}

.widget_search .search-field{
	margin-bottom: 0;
}

.rsswidget[title='Syndicate this content']{
	margin-top: 4px;
	display: inline-block;
	float: left;
	margin-right: 10px;
}

/* Flickr Widget Support */
.wpfw_flickr_widget a{
	display: inline-block;
	margin: 0 3px;
	width: 30%;
}
.wpfw_flickr_widget a:hover{
	opacity: 0.8;
}
.wpfw_flickr_widget img{
	width: 100%;
	height: auto;
}

#footer-widgets{
	background: #34495E;
	color: #ECF0F1;
	padding: 60px 0 40px 0;
}
#footer-widgets .widget{
	background: 0;
	padding: 0;
	border-bottom: 0;
}
#footer-widgets li a{
	
}
#footer-widgets .widget-title{
	color: #fff;
	font-size: 14px;
	text-shadow: none;
}

#footer-widgets .widget-clear{
	margin-bottom: 20px;
}

#copyright-text p:first-child:last-child{
	margin: 0;
}

.widget{
	margin: 0px 0px 20px;
	background: #1ABC9C;
	padding: 20px 20px 20px;
	border-bottom: 5px solid #16A085;
	color: #ECF0F1;
	-webkit-transition: 250ms;
	-moz-transition: 250ms;
	-o-transition: 250ms;
	transition: 250ms;
	-webkit-backface-visibility: hidden;
}
.widget.widget_nav_menu{
	padding: 0;
	background: none!important;
	border-bottom: none!important;
}
	.widget.widget_nav_menu ul,
	.widget.widget_nav_menu li{
		padding: 0;
		margin: 0;
	}
	.widget.widget_nav_menu li a{
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		padding: 12px 10px;
		background: #444;
		display: inline-block;
		width: 100%;
		color: #fff;
		border-bottom: 1px solid #333;
	}
	.widget.widget_nav_menu 	.nav-menu-icon.nav-icon {
			float: right;
			background: #333;
			padding: 12px 16px 17px 16px;
			margin: -13px -10px -16px -10px;
			cursor: pointer;
		}
		.widget.widget_nav_menu 	.nav-menu-icon.nav-icon:hover{
			background: #222;
		}
	.widget.widget_nav_menu .menu .sub-menu{
		display: none;
	}
	.widget.widget_nav_menu .menu .sub-menu li{
		margin: 0;
	}
	.widget.widget_nav_menu .menu .sub-menu li a{
		background: #333;
		border-bottom: 1px solid #444;
	}
	
	.widget.widget_nav_menu li:last-child a{
		border-bottom: 0;
	}
.widget:first-child .widget-title{
	margin-top: 0;
}

#front-page-widgets-section-a .widget{
	background: #E74C3C;
	border-bottom: 5px solid #C0392B;
	color: #ECF0F1;
	width: 100%;
}
#front-page-widgets-section-a .widget .widget-title{
	border-bottom: 1px solid #C0392B;
}
#front-page-widgets-section-c .widget{
	background: #ECF0F1;
	border-bottom: 5px solid #BDC3C7;
	color: #7F8C8D;
}
#front-page-widgets-section-c .widget .widget-title{
	border-bottom: 1px solid #BDC3C7;
}

.widget input[type=text]{
	width: 100%;
}
.widget a{ color: #fff;}
#front-page-widgets-section-a .widget a{ color: #ECF0F1; }
#front-page-widgets-section-c .widget a{ color: #7F8C8D; }
#front-page-widgets-section-c .widget.widget_bp_core_members_widget a{ color: #ECF0F1; }
.widget:first-child{
	margin-top: 0;
}
.widget:last-child{
	margin-bottom: 20px;
}

.widget li:last-child{
	margin-bottom: 0;
}
.widget ul{
	margin-bottom: 0;
}
.widget ul,
.widget ol,
.widget li{
	list-style: none;
	margin-left: 0;
}

.widget .menu .sub-menu li{
	margin-left: 1.5em;
}
.widget dl dt{
	margin-left: 0;
}
.widget-title {
	position: absolute;
	font-size: 14px;
	display: inline-block;
	line-height: 1.3em;
	margin: 0px 0 20px;
	margin-left: -20px;
	margin-top: -20px!important;
	border-bottom: 1px solid #16A085;
	width: 100%;
	font-weight:bold;
	text-transform: uppercase;
	padding: 20px;
}

.widget-clear{
	content: " ";
	clear: both;
	margin-bottom: 60px;
}

#footer-widgets .widget-title,
#front-page-widgets-section-a .widget_bp_core_members_widget .widget .widget-title,
#front-page-widgets-section-a .widget_bp_groups_widget .widget-title, 
#front-page-widgets-section-c .widget_bp_core_members_widget .widget-title,
#front-page-widgets-section-c .widget_bp_groups_widget .widget-title,
.widget_bp_core_members_widget .widget-title,
.widget_nav_menu .widget-title,
.widget_bp_groups_widget .widget-title {
	margin-left: 0;
	margin-top: 0;
	padding: 0;
	border-bottom: 0;
}

#front-page-widgets-section-c .widget_bp_groups_widget,
#front-page-widgets-section-c .widget_bp_core_members_widget,
#front-page-widgets-section-c .widget_bp_groups_widget a,
#front-page-widgets-section-c .widget_bp_core_members_widget a{
	color: #ECF0F1;
}

.hentry img,
.entry-content img{
	max-width: 100%;
	height: auto;
	width: auto;
}
/* #Comments Section
	====================== */
	p.logged-in-as,
	p.comment-notes{
		margin: 20px 0;
	}
	.comments-area{
		margin-top: 20px;
		border-top: 5px solid #2C3E50;
	}
	.comment-form{
		display: block;
		clear: both;
		width: 85%;
		float: right;
	}	
	.comment-list{  clear: both; }
	.comment-content,
	li.comment{ 
		list-style: none;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		margin: 10px 0;
	}
	li.comment{
		border-bottom: 1px solid #e9e9e9;
		padding-bottom: 20px;
	}
	li.comment:last-child,
	ul.children li.comment{
		border-bottom: none;
	}
	li.comment time{
		color: #A7A7A7;
		display: inline-block;
		margin: 10px 0;
	}
	li.comment.even{
		
	}
	li.comment.odd{
	}
	#reply-title,
	.comments-title{
		padding: 20px 0px 0px;
		font-size: 20px;
		display: block;
		text-transform: uppercase;
		float: right;
		box-sizing: border-box;
		margin-left: 15%;
	}
	.comment-content{
		
	}
	li.comment{
		margin-left: 15%;
	}
	
	.comment-author img {
		position: absolute;
		left: -42px;
		top: 4px;

	}
	.comment-body{
		position: relative;
		display: inline-block;
	}
	.depth-2 .comment-body{
		margin: 0px 50px;
	}
	.comment-author .avatar{
		float:left;
		margin-right: 1em;
		display: block;
		margin-left: -24px;
		margin-bottom: 10px;
		width: 50px;
		height: auto;
	}
	textarea#comment{
		width: 100%!important;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
/* IE Placeholder Polyfill Support
================ */
span.placeholder{
    position:absolute;
    color:#999;
    font-family:sans-serif;
    padding:2px;
    z-index:1;
    cursor:text;
}

span.placeholder-hide-except-screenreader {
    clip: rect(1px 1px 1px 1px);
    clip: rect(1px, 1px, 1px, 1px);
    padding:0 !important;
    border:0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden;
}

span.placeholder-hide{
	display:none;
}

/* overwrite for the HTML5 Boilerplate way to hide labels */
label.visuallyhidden-with-placeholder{
    /*clip: auto !important;*/
    height:auto !important;
    overflow: visible !important;
    position:absolute !important;
    left:-999em;
}
/* Jetpack 
================= */
.slideshow-window {
	background-color: #f7f7f7!important;
	border: 1px solid #fff!important;
	border-radius: 0!important;
	-moz-border-radius: 0!important;
	-webkit-border-radius: 0!important;
	-khtml-border-radius: 0!important;
	margin-bottom: 0!important;
}

/* Login Popup
================ */

.klein #loginform{
	display: inline-block;
	width: 100%;
}

.klein #loginform #user_login,
.klein #loginform #user_pass{
	width: 100%;
}

.klein #loginform .login-username,
.klein #loginform .login-password{
	float: left;
	margin-right: 4%;
	display: inline-block;
	width: 48%;
}
.klein #loginform .login-password{
	margin-right: 0;
}
.klein .login-remember{
	clear: both;
	display: inline-block;
	float: left;
	margin-right: 20px;
}

.klein .login-remember label{
	margin-top: 5px;
}

.klein .login-submit{
	float: right;
	display: inline-block;
}

.klein .login-facebook-connect{
	float: right;
	margin-right: 20px;
}

.klein .login-facebook-connect .btn{
	background: #3B5A9B;
	padding: 6px 10px;
	margin-top: 0px;
}




















/* Basic Elements */
body { font: 14px/20px 'Open Sans', Arial, Helvetica, sans-serif; background-color: #2C3E50; }
body.login { background-color: #2C3E50; }
h1, h2, h3 { font-weight: 300; margin: 35px 0 15px 0; }
h2 { font-size: 24px; line-height: 30px; }
h3 { font-size: 18px; line-height: 24px; }

/* Bootstrap 3 element fixes for dark styles */
.jumbotron { background-color: #191919; text-align: center; }
.jumbotron p.lead { color: #fff; }

.dropdown-menu > li { margin: 0; list-style: none; }

/* Header */
#page #header { padding: 1em 0 0.3em; }
#page #main-menu-desktop { margin-top: 12px; }
#page #menu-main-menu .menu-item a { font: 14px/20px 'Open Sans', Arial, Helvetica, sans-serif; }

#bp-klein-top-bar .social-icons { margin-top: 0; }
#bp-klein-top-bar .social-icons a { font-size: 34px; }
#bp-klein-top-bar .social-icons a:hover { color: #fff; }

#page #bp-klein-user-bar #bp-klein-user-bar-action .pull-right { float: right!important; margin: 0; }
#page #bp-klein-user-bar #bp-klein-user-bar-action .pull-right .dropdown-menu { display: none; margin: 2px 0 0; }
#page #bp-klein-user-bar #bp-klein-user-bar-action .pull-right .open .dropdown-menu { display: block; }

#page #main-menu-desktop>ul>li>a { background-color: #34495E; border-radius: 3px; margin-right: 15px; }
#page #main-menu-desktop ul li a:hover { background-color: #212e3c; }
#page #main-menu-desktop ul li:last-child a { padding-right: 10px!important; margin-right:0!important; }
#page .desktop-menu ul.sub-menu li:first-child, #page .desktop-menu ul.children li:first-child { margin-top: 15px; }
#page .desktop-menu ul.sub-menu li:first-child:before, #page .desktop-menu ul.children li:first-child:before { display: none; }

#page .small-screen-device-nav { margin-top: -65px; margin-bottom: 65px; }
#page .menu.mobile { top: 70px; }
    
/* Page & Post */
.blog-content { width: 95%!important; }
#page .entry-title,
#page .blog-content-title { text-transform: none; }
.single .blog-pad:first-child { padding: 0!important; }
.blog-author { padding: 8px; }
.post-date { margin: 0; text-align: right; }
.post-date.day { font-size: 34px; line-height: 34px; font-weight: bold; }
.post-date.month { font-size: 13px; }
.post-date.year { font-size: 13px; }
.widget_nav_menu .widget-clear { margin-bottom: 10px; }
.widget_recent_entries .post-date { text-align: left; display: block; }

.display-posts-listing div.listing-item { float: left; width: 290px; }
.display-posts-listing div.listing-item a.title { display: block; height: 60px; line-height: 60px; } 
.display-posts-listing div.listing-item img { float: left; margin: 0 10px 10px 0; width: 60px; height: 60px;  border-radius: 2px; }

.homeblock h3 { font-weight: 700; }
.homeblock img,
.rev_slider img { border-radius: 2px; box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); -webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); -moz-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); -ms-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1); -o-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);  }
.homeblock .width100 { width: 100%; }
.homeblock .jumbotron { margin-top: 30px; }

/* Online Lessons */
.lesson-info { margin: 0; }

/* bbPress */
div.bbp-breadcrumb { display: block; }
span#subscription-toggle { display: none; }
#bbpress-forums div.bbp-the-content-wrapper .wp-editor-wrap { border: none; }
.bbp-topics-front ul.super-sticky, .bbp-topics ul.super-sticky, .bbp-topics ul.sticky, .bbp-forum-content ul.sticky { background-color: #333!important; }

/* Photo Reference Library */
.blog-content.photoref { width: 100%; }
.photoref-titles .thumbnail,
.photoref-notitles .thumbnail { margin: 2px 4px; background-color: #191919; border-color: #111; display: inline-block; }
.photoref-titles .thumbnail:hover,
.photoref-notitles .thumbnail:hover { border-color: #1ABC9C; }
.photoref-titles .thumbnail { width: 160px; }
.photoref-titles .thumbnail p { color: #fff; font-size: 12px; }
.photoref-notitles .thumbnail { width: 105px; }

/* WooCommerce */
.woocommerce .button { color: #fff; background-color: #428bca; border-color: #357ebd; display: inline-block; padding: 6px 12px; font-size: 14px; font-weight: normal; line-height: 1.428571429; text-align: center; white-space: nowrap; vertical-align: middle; cursor: pointer; border: 1px solid transparent; border-radius: 4px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none; }
.woocommerce .button:active { background-image: none; outline: 0; -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);  -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);  -ms-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);  -o-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
.woocommerce .button:hover,
.woocommerce .button:focus,
.woocommerce .button:active,
.woocommerce .button.active { color: #ffffff; background-color: #3276b1; border-color: #285e8e; }

#coupon_code { background-color: #333; border-color: #333; color: #ECF0F1; border-radius: 2px; }

.woocommerce table.cart a.remove, .woocommerce-page table.cart a.remove, .woocommerce #content table.cart a.remove, .woocommerce-page #content table.cart a.remove { width: 1em!important; }

div.pp_overlay { background-color: #000!important; }
#page .woocommerce.archive .page-title,
#page .page-title { float: none; margin: 0 0 20px 0; padding: 0; border: none; }
#page .woocommerce ul.cart_list li img, #page .woocommerce-page ul.cart_list li img, #page .woocommerce ul.product_list_widget li img, #page .woocommerce-page ul.product_list_widget li img { border-radius: 2px; }
div.products .product h3 { padding: 0 0 5px 0; font-size: 13px; font-weight: 400; line-height: 18px; letter-spacing: normal; }
div.products .product img { border-radius: 2px; }

.woocommerce #page div.product div.images, 
.woocommerce-page #page div.product div.images, 
.woocommerce #page #content div.product div.images, 
.woocommerce-page #page #content div.product div.images { width: 100%; }

.woocommerce #page div.product div.images img, 
.woocommerce-page #page div.product div.images img, 
.woocommerce #page #content div.product div.images img, 
.woocommerce-page #page #content div.product div.images img,
#page div.products .product img { border: none; border-radius: 2px; padding: 0; max-width:100%;height:auto;display:block;margin:0 0 8px;box-shadow:0 1px 2px 0 rgba(0,0,0,0.3);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,0.3);-moz-box-shadow:0 1px 2px 0 rgba(0,0,0,0.3); }

.woocommerce .related ul.products li.product, 
.woocommerce-page .related ul.products li.product, 
.woocommerce .upsells.products ul.products li.product, 
.woocommerce-page .upsells.products ul.products li.product, 
.woocommerce .related ul li.product, 
.woocommerce-page .related ul li.product, 
.woocommerce .upsells.products ul li.product, 
.woocommerce-page .upsells.products ul li.product, 
.woocommerce .cart-collaterals .cross-sells ul.products li, 
.woocommerce-page .cart-collaterals .cross-sells ul.products li {
	max-width: 33.33333333333333%!important;
}



.product-category.product.btn { min-width: 380px; font-weight: 300; }
.product-category.product img { display: none; }

.woocommerce nav.woocommerce-pagination ul li, .woocommerce-page nav.woocommerce-pagination ul li, .woocommerce #content nav.woocommerce-pagination ul li, .woocommerce-page #content nav.woocommerce-pagination ul li { overflow:visible!important; }
.woocommerce .woocommerce-pagination li a.page-numbers, .woocommerce .woocommerce-pagination li span.page-numbers.current { padding: 3px 10px; background-color: #1ABC9C; border-bottom: 5px solid #16A085; }
.woocommerce .woocommerce-pagination li a.page-numbers:hover, .woocommerce .woocommerce-pagination li span.page-numbers.current { background-color: #16A085; }

.woocommerce-page #content div.product div.summary p.price { font-size: 2.4em!important; line-height: 1em; }
.woocommerce-page.post-type-archive-product .subcategories h3.product-category-name {
	margin-top: 0;
	margin-bottom: 20px;
	text-align: center;
	font-weight: bold;
}
.my_account_orders .order-actions { display: none; }

.woocommerce-lost-password .woocommerce-message {
	background: #333;
	font-size: 1.4em;
	font-weight: bold;
	border-top-width: 6px;
	border-bottom: 1px solid #8fae1b;
	padding-bottom: 10px;
}

/* GravityForms */
.gform_wrapper .validation_error, .gform_wrapper .gfield_required { color: #CD0000!important; }

/* Slider Revolution */
.tp-caption a.btn, 
.tp-caption a.btn:hover { background-image: none; border: none; }

.tp-caption a.btn.btn-primary { background-color: #2c3e50; color: #fff; }
.tp-caption a.btn.btn-primary:hover { background-color: #34495e; color: #fff; }

.tp-caption a.btn.btn-default { background-color: #eee; color: #2c3e50; }
.tp-caption a.btn.btn-default:hover { background-color: #fff; color: #2c3e50; }

.tp-leftarrow.default { 
    background: url(/wp-content/themes/klein-2.0.4/images/slider-arrow-left.png) no-repeat 0 -2px!important;
	height: 39px!important;
	overflow: hidden!important;
}

.tp-rightarrow.default { 
    background: url(/wp-content/themes/klein-2.0.4/images/slider-arrow-right.png) no-repeat 0 -2px!important;
	height: 39px!important;
	overflow: hidden!important;
}

/* Smart Coupons */
.coupon-content.blue { color: #2C3E50; }
.sc_info_box { background-color: #444; }
.sc_info_box h3 { margin: 15px 0;}

/* debug */
#debugqueries { color: grey; }
#debugqueries ol { padding: 0 20px; }

/* Chosen.js dark overrides */
.chosen-results li { color: #444; }

/* Select2 dark overrides */
.select2-container--default .select2-selection--single,
.select2-dropdown {
	background-color: #333;
	border-color: #222;
}
.select2-dropdown input {
	background-color: #444;
	color: #fff;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #fff;
}
.select2-results__option--highlighted[aria-selected],
.select2-results__option[aria-selected=true] {
	background-color: #555!important;
}

/* WooCommerce Telephone Input - Dark */
input[type="tel"] {
	border: 1px solid #333;
	border-radius: 2px;
	padding: 6px 10px 8px 12px;
	outline: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font: 13px 'PT Sans', "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #7F8C8D;
	margin: 0;
	width: 210px;
	max-width: 100%;
	display: block;
	margin-bottom: 10px;
	background: #333;
	color: #fff;
}

/* WooCommrece hide payment method images (paypal's is obnoxious) */
.woocommerce #payment ul.payment_methods li img, .woocommerce-page #payment ul.payment_methods li img {
	display: none;
}
.wc_payment_methods label {
	display: block;
}

/* WooCommerce 3.0 gallery styles */
/* WooCommerce 3.0 Gallery */

.woocommerce-product-gallery {
position: relative;
margin-bottom: 3em
}

.woocommerce-product-gallery figure {
margin: 0
}

.woocommerce-product-gallery .woocommerce-product-gallery__image:nth-child(n+2) {
width: 25%;
display: inline-block
}

.woocommerce-product-gallery .flex-control-thumbs li {
list-style: none;
float: left;
cursor: pointer
}

.woocommerce-product-gallery .flex-control-thumbs img {
opacity: .5
}

.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover {
opacity: 1
}

.woocommerce-product-gallery img {
display: block
}

.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
width: 33.3333%
}

.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
width: 25%
}

.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
width: 20%
}

.woocommerce-product-gallery__trigger {
position: absolute;
top: 1em;
right: 1em;
z-index: 99;
}

a.woocommerce-product-gallery__trigger {
text-decoration: none;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
position: absolute;
top: .875em;
right: .875em;
display: block;
height: 2em;
width: 2em;
border-radius: 3px;
z-index: 99;
text-align: center;
text-indent: -999px;
overflow: hidden;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
background-color: #169fda;
color: #ffffff;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:hover {
background-color: #1781ae;
border-color: #1781ae;
color: #ffffff;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger:before {
font: normal normal normal 1em/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
display: block;
content: "\f00e";
line-height: 2;
text-indent: 0;
}

/* Nav Classes */
#page #main-menu-desktop>ul>li.purple>a { background-color: #9A879D; }