/*
Theme Name: PWJ
Author: MemberDev
Author URI: https://memberdev.com
Description: Custom theme for Piano With Jonny, based off WP TwentySixteen shell.
Version: 1.0

/*
TABLE OF CONTENTS
- 01: Global
- 02: Header
- 03: Structure
- 04: Components
- 05: Footer
- 06: Forms
- 07: Tables
- 08: Bootstrap
- 09: Plugins
- 10: Behavioral (JS)
- 11: Responsive (Media Queries)
*/

/* =Reset
------------------------------------------------------------------------ */

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;
	font-size: 100%;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	position: relative;
	/*background: url(images/pattern-tiles-blue.png);*/
	background: #19191d;
	color: #333;
	font-family: 'Lato', arial, sans-serif;
	font-weight: 300;
	line-height: 1em;
}
body.body-white-bg {
	background: #fff;
}
body.search {
	padding: 0;
	background: #19191d;
}
body.page-template-page-checkout,
body.page-template-page-confirmation {
	background: url(images/page-bg-scale.jpg) center center fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}


/* ======================================================================================================= */
/* 01: Global
/* ======================================================================================================= */
h1, h2, h3, h4, h5, h6, p {font-weight: 300; margin-bottom: 20px; line-height: 1.5em;}
h1, h2, h3, h4, h5, h6 {font-family: 'Nunito Sans'; font-weight: 700; letter-spacing: -0.025em; color: #0b1c21;}
h3, h4, h5, h6 {font-weight: 700;}
h1 {font-size: 2.5em; letter-spacing: -1px; line-height: 1.2em;}
h2 {font-size: 2.25em; font-weight: 700; letter-spacing: -1px}
h3 {font-size: 2em; letter-spacing: -1px;}
h4 {font-size: 1.5em;}
h5 {font-size: 1.3em;}
h6 {font-size: 1.1em;}
p {font-size: 1em; font-weight: 400; line-height: 1.8em;}
p.headline {font-size: 1.5em; font-weight: 300; letter-spacing: -0.025em; line-height: 1.5;	 color: #333;}
p.headline.small {font-size: 1.2em;}
p.headline.jumbo {font-size: 2em;}
p.small {font-size: .8em;}

.headline-content p {
	font-size: 1.5em;
	letter-spacing: -0.025em;
	line-height: 1.5;
}

a {
	color: #1ab1db;
	text-decoration: none;
	word-break: break-word;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
a:hover {
	color: #036;
	text-decoration: underline;
}

blockquote {
	padding: 15px;
	margin: 0 0 20px;
	background: #f5f5f5;
	color: #333;
	font-size: 1.2em;
	line-height: 1.5;
	border-left: 4px solid #ccc;
}

figcaption {
	padding: 15px;
	margin: 20px 0;
    background: rgba(0, 0, 0, .1);
    line-height: 1.4;
}

sup {
	font-size: .7em;
}

hr {
	border-top-color: #ddd;
}
.hr-10 {
	margin: 10px 0;
}
.hr-15 {
	margin: 15px 0;
}
.hr-20 {
	margin: 20px 0;
}
.hr-30 {
	margin: 30px 0;
}
.hr-blank {
	border-top: none;
	height: 1px;
	margin: 10px 0;
}
.hr-dark {
	border-top: 1px solid #151515;
}
.hr-thin {
	border-top-width: 1px;
}
.hr-thick {
	border-top-width: 5px;
}
.hr-trans {
	border-top-color: rgba(255, 255, 255, .25);
}
.hr-trans-black {
	border-top: 1px solid rgba(0, 0, 0, .25);
}
.hr-half {
	width: 50%;
	margin: 20px auto;
}
.hr-slim {
	width: 20%;
	margin: 30px 0;
}
.hr-slim-centered {
	width: 20%;
	margin: 30px auto;
}
.hr-spacer {
	min-height: 1px;
	border: none;
	margin: 30px 0;
}
.hr-spacer-40 {
	min-height: 1px;
	border: none;
	margin: 40px 0;
}
.hr-spacer-50 {
	min-height: 1px;
	border: none;
	margin: 50px 0;
}
.hr-mobile {
	display: none;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}
img.user-avatar {
	border-radius: 100px;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
}
img.user-avatar.avatar-profile {
	display: block;
	margin: 0 auto 20px;
	border-radius: 300px;
	-moz-border-radius: 300px;
	-webkit-border-radius: 300px;
}
figure {
	max-width: 100%;
}

code {
	display: block;
	padding: 10px;
	background: #000;
	color: #fff;
	font-size: .8em;
	border-radius: 0;
}
pre {
	padding: 15px;
	font-size: .85em;
	background: #151515;
	color: #fff;
	border-radius: 0;
}

.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}
.alignright {
	float: right;
	margin: 0 0 20px 20px;
}
.aligncenter {
	margin: 0 auto;
}

/* ----- Helpers ----- */
.small {
	font-size: .85em;
}
.capitalize {
	text-transform: capitalize !important;
}
.caps {
	text-transform: uppercase !important;
}
.centered {
	text-align: center !important;
}
.clear {
	clear: both !important;
}
.bold {
	font-weight: 700 !important;
}
.font-300 {
	font-weight: 300 !important;
}
.font-400 {
	font-weight: 400 !important;
}
.font-700 {
	font-weight: 700 !important;
}
.font-900 {
	font-weight: 900 !important;
}
.spaced-3 {
	letter-spacing: 3px;
}
.spaced-5 {
	letter-spacing: 5px;
}
.spaced-10 {
	letter-spacing: 10px;
}
.no-margin {
	margin: 0 !important;
}
.margin-b-10 {
	margin: 0 0 10px !important;
}
.no-padding {
	padding: 0 !important;
}

.embed-left {
	float: left;
	margin: 0 20px 10px 0;
}
.embed-right {
	float: right;
	margin: 0 0 10px 20px;
}
.embed-static {
	display: block;
	margin: 0 0 20px;
}
.shadowed {
	box-shadow: 0 0 10px rgba(0, 0, 0, .5);
}

.helper-text {
	font-size: .75em;
	font-weight: 300 !important;
}

.brand {
	font-weight: 700;
	letter-spacing: -0.025em;
}
.signature {
	display: block;
	width: 200px;
}

/* mobile hide/show classes */
.show-1399,
.show-1199,
.show-1024,
.show-992,
.show-768,
.show-600,
.show-480 {
	display: none;
}

/* ----- colors ----- */
/* primary */
.color-blue {color: #1ab1db !important;}
.color-blue-light {color: #60cefb !important;}
.color-blue-dark {color: #0462a4 !important;}

/* secondary */
.color-green {color: #5fc66d !important;}
.color-green-light {color: #96dc68 !important;}

.color-orange {color: #fe8c25 !important;}
.color-yellow {color: #efce2f !important;}
.color-red {color: #c00 !important;}
.color-purple {color: #8b27b1 !important;}

/* neutral */
.color-dark {color: #2d3446 !important;}
.color-black {color: #000 !important;}
.color-white {color: #fff !important;}
.color-grey {color: #778c8a !important;}
.color-grey-light {color: #f5f5f5 !important;}
.color-grey-dark {color: #333 !important;}

/* trans colors */
.color-trans-white-25 {color: rgba(255, 255, 255, .25) !important;}
.color-trans-white-50 {color: rgba(255, 255, 255, .5) !important;}
.color-trans-white-75 {color: rgba(255, 255, 255, .75) !important;}

/* skill level colors */
.color-level-1 {color: #5fc66d !important;} /* green */
.color-level-2 {color: #1ab1db !important;} /* blue */
.color-level-3 {color: #fe8c25 !important;} /* orange */

/* show colors */
.color-interview {color: #efce2f !important;} /* yellow */
.color-qa {color: #fe8c25 !important;} /* orange */
.color-student-collaboration {color: #2d3446 !important;} /* dark */
.color-student-assessment {color: #5fc66d !important;} /* green */
.color-updates {color: #0462a4 !important;} /* blue dark */
.color-workshop {color: #1ab1db !important;} /* blue */
.color-recitals {color: #c00 !important;} /* red */
.color-other {color: #8b27b1 !important;} /* purple */

/* ----- backgrounds ----- */
/* primary */
.bg-blue {background: #1ab1db !important;}
.bg-blue-light {background: #60cefb !important;}
.bg-blue-dark {background: #0462a4 !important;}
.bg-blue-darkest {background: #2d3446 !important;}

/* secondary */
.bg-green {background: #036 !important;}
.bg-green-light {background: #1ab1db !important;}

.bg-green {background: #5fc66d !important;}
.bg-green-light {background: #96dc68 !important;}

.bg-orange {background: #fe8c25 !important;}
.bg-yellow {background: #efce2f !important;}

/* neutral */
.bg-white {background: #fff !important;}
.bg-grey-light {background: #f5f5f5 !important;}
.bg-dark {background: #0b1c21 !important;}

/* menu bg */
.bg-menu {
	background: #2d3446 !important;
}

/* gradient backgrounds */
.bg-gradient-dark {
	background: #0b1c21;
	background: -moz-linear-gradient(-45deg, #0b1c21 0%, #0d3a49 100%) !important;
	background: -webkit-linear-gradient(-45deg, #0b1c21 0%,#0d3a49 100%) !important;
	background: linear-gradient(135deg, #0b1c21 0%,#0d3a49 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0b1c21', endColorstr='#0d3a49',GradientType=1 );
}
.bg-gradient-green {
	background: #96dc68;
    background: -moz-linear-gradient(-45deg, #96dc68 1%, #5fc66d 100%) !important;
    background: -webkit-linear-gradient(-45deg, #96dc68 1%,#5fc66d 100%) !important;
    background: linear-gradient(135deg, #96dc68 1%,#5fc66d 100%) !important;
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#96dc68', endColorstr='#5fc66d',GradientType=1 );
}
.bg-live {
	background: #d42e01;
	background: -moz-linear-gradient(-45deg, #d42e01 0%, #fe8c25 100%) !important;
	background: -webkit-linear-gradient(-45deg, #d42e01 0%,#fe8c25 100%) !important;
	background: linear-gradient(135deg, #d42e01 0%,#fe8c25 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d42e01', endColorstr='#fe8c25',GradientType=1 );
}


/* ----- icons ----- */
h1 i,
h2 i,
h3 i,
h4 i,
h5 i,
h6 i {
	font-weight: normal;
}

.icon-left {
	margin-right: 5px;
}
.icon-right {
	margin-left: 5px;
}
.icon-centered {
	margin: 0 auto 20px;
	text-align: center;
}
.icon-jumbo {
	display: block;
	font-size: 5em;
	line-height: 1;
	margin: 0 0 10px;
}

.icon-nav {
	display: table;
	font-size: 2em;
	width: 100%;
}
.icon-nav .nav-column {
	display: table-cell;
	width: 33.33%;
	line-height: 1;
	vertical-align: middle;
}
.icon-nav a {
	display: block;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
}
.icon-nav a .nav-text {
	display: inline-block;
	font-size: .5em;
	font-weight: 700;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin: 8px 0;
	vertical-align: top;
}
.icon-nav a:hover {
	color: #000;
}

/* ----- titles ----- */
.mega-title {
	font-size: 4em;
}
.spaced-title {
	font-family: 'Nunito Sans';
	letter-spacing: 3px;
	text-transform: uppercase;
}

/* ----- buttons ----- */
.btn {
	display: inline-block;
	padding: 12px 30px;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.2;
	border: 2px solid;
	border-radius: 100px;
	text-decoration: none;
	white-space: inherit;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.btn.btn-danger {
	background: #c00;
	color: #fff;
	border-color: #c00;
	margin-right: 5px;
}
.btn.btn-danger:hover {
	background: #900;
	color: #fff;
	border-color: #900;
}
.btn.btn-default {
	background: none;
	color: #0b1c21;
	border-color: #ccc;
}
.btn.btn-default:hover {
	background: #0b1c21;
	color: #fff;
	border-color: #0b1c21;
}
.btn.btn-primary {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.btn.btn-primary:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}
.btn.btn-secondary {
	background: #0462a4;
	color: #fff;
	border-color: #0462a4;
}
.btn.btn-secondary:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}
.btn.btn-trans {
	background: none;
	color: #fff;
	border-color: rgba(255, 255, 255, .5);
}
.btn.btn-trans:hover {
	background: #fff;
	color: #333;
	border-color: #fff;
}
.btn.btn-trans-black {
	background: rgba(0, 0, 0, .25);
	color: #fff;
	border-color: rgba(0, 0, 0, .05);
}
.btn.btn-trans-black:hover {
	background: #fff;
	color: #151515;
	border-color: #fff;
}
.btn.btn-cta {
	background: #fe8c25;
	color: #fff;
	border-color: #fe8c25;
}
.btn.btn-cta:hover {
	background: #fff;
	color: #fe8c25;
	border-color: #fff;
}
.btn.btn-cta.btn-trans {
	background: rgba(255, 102, 0, .5);
	color: #fff;
	border: none;
}
.btn.btn-cta.btn-trans:hover {
	background: #f60;
	color: #fff;
}
.btn.btn-bordered {
	color: #78a500;
	border: 2px solid;
}
.btn.btn-bordered:hover {
	background: #78a500;
	color: #fff;
	border-color: #78a500;
}
.btn.btn-bordered-white {
	color: #fff;
	border: 2px solid rgba(255, 255, 255, .5);
}
.btn.btn-bordered-white:hover {
	background: #fff;
	color: #09c;
}
.btn.btn-white {
	background: #fff;
	color: #1ab1db;
	border-color: #fff;
}
.btn.btn-white:hover {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.btn.btn-cancel {
	background: none;
	color: #09c;
	border: 2px solid #ccc;
}
.btn.btn-cancel:hover {
	background: #eee;
	color: #036;
	border-color: #036;
}
.btn.btn-save {
	background: #690;
	color: #fff;
	border-color: #690;
}
.btn.btn-save:hover {
	background: #360;
	border-color: #360;
}
.btn.btn-save-alt {
	background: none;
	color: #690;
	border-color: #ccc;
}
.btn.btn-save-alt:hover {
	background: #690;
	color: #fff;
	border-color: #690;
}
.btn.btn-select {
	color: #0c253c;
	border-color: #ddd;
}
.btn.btn-select:hover {
	background: #0c253c;
	color: #fff;
	border-color: #0c253c;
}
/* button sizes */
.btn-micro {
	font-size: .75em !important;
	padding: 6px 15px !important;
}
.btn-sm {
	font-size: .85em !important;
	padding: 8px 20px !important;
}
.btn-lg {
	font-size: 1.2em !important;
	padding: 15px 40px !important;
}
.btn-xl {
	font-size: 1.5em !important;
	padding: 20px 50px !important;
}

/* block buttons */
.btn-block {
	margin: 0 0 5px;
}

/* social buttons */
.btn.btn-facebook {
	padding: 10px 20px;
	background: #3a5795;
	color: #fff;
}
.btn.btn-facebook:hover {
	background: #1e3870;
}

/* button labels */
.btn.btn-label {
	font-weight: 300;
	text-transform: none;
	color: #fff;
	border: none;
	border-radius: 0;
}
.btn.btn-label.label-success {
	background: #669900;
	background: -moz-linear-gradient(left, #669900 0%, #99cc00 100%);
	background: -webkit-linear-gradient(left, #669900 0%,#99cc00 100%);
	background: linear-gradient(to right, #669900 0%,#99cc00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#669900', endColorstr='#99cc00',GradientType=1 );
}

/* ----- links ----- */
.link {
	display: inline-block;
}
.link-blue {
	color: #1ab1db;
}
.link-blue:hover {
	color: #fff;
}
.link-white {
	color: #fff;
}
.link-white:hover {
	color: rgba(255, 255, 255, .5);
}
.link-white-holder a:hover {
	color: #fff;
}
.link-yellow {
	color: #efce2f;
}
.link-yellow:hover {
	color: #fff;
}
.link-dashed {
	display: inline-block;
	border-bottom: 2px dotted rgba(0, 0, 0, .5);
}
.link-dashed.link-white {
	border-bottom: 2px dotted rgba(255, 255, 255, .5);
}
.link-dashed:hover {
	border: none;
	text-decoration: none;
}
.link-inline {
	margin: 0 5px;
	cursor: pointer;
}
.info-tip {
	font-size: .85em;
	font-weight: 400;
	margin-left: 3px;
	vertical-align: top;
}

/* ----- lists ----- */
ul,
ol {
	margin: 0 0 30px 30px;
	font-size: 1em;
	font-weight: 400;
	line-height: 1.4;
}
ul li,
ol li {
	margin: 0 0 10px;
}
/* standard list */
.list-standard {
	list-style: square;
	margin: 0 0 20px 20px;
}
.list-standard li {
	margin: 0 0 10px;
}
/* action list */
.list-action {
	list-style: none;
	font-weight: 900;
	margin: 0 0 20px;
}
.list-action li {
	display: inline-block;
	margin: 0;
	border-left: 1px solid rgba(0, 0, 0, .15);
}
.list-action li:first-child {
	border-left: none;
}
.list-action li a {
	display: block;
	padding: 12px 15px;
	font-size: .9em;
	text-decoration: none;
}
.list-action li a:hover {
	background: rgba(0, 0, 0, .15);
}
.list-action li a i {
	display: inline-block;
	margin-right: 10px;
	opacity: .5;
}
.list-action.list-light li {
	border-color: rgba(255, 255, 255, .1);
}
.list-action.list-light li a {
	color: #fff;
}
.list-action.list-light li a:hover {
	background: rgba(255, 255, 255, .1);
}
.list-action.list-block li {
	display: block;
	border-left: none;
	border-top: 1px solid rgba(255, 255, 255, .1);
}
.list-action.list-block li a {
	padding: 15px 0 15px 15px;
}
.list-action li a.myfav-favorite-button.myfav-favorite-true,
.list-action.list-block li a.myfav-favorite-button.myfav-favorite-true {
	background: none;
	color: rgba(255, 255, 255, .5);
}
.list-action li a.myfav-favorite-button i,
.list-action.list-block li a.myfav-favorite-button i {
	color: #60cefb;
}
/* check lists */
.list-check {
	list-style: none;
	margin: 0 0 20px;
}
.list-check li {
	position: relative;
	padding-left: 25px;
	margin: 0 0 15px;
	line-height: 1.4;
}
.list-check li:before {
	position: absolute;
	top: -2px;
	left: 0;
	content: "\f058";
	font-family: FontAwesome;
	font-size: 1.2em;
	color: #5fc66d;
}
.list-check.list-2-column li {
	display: inline-block;
	width: 48%;
	vertical-align: top;
}
.list-check.list-large {
	font-size: 1.2em;
}
.list-check.list-large li {
	padding-left: 30px;
	margin: 0 0 20px;
}
.list-check.list-large li:before {
	top: -3px;
}
.list-check.check-color-blue li:before {
	color: #1ab1db;
}
.list-check.check-color-orange li:before {
	color: #fe8c25;
}
/* inline lists */
.list-inline {
	list-style: none;
	margin: 0 0 20px;
}
.list-inline li {
	display: inline-block;
	margin: 0 30px 0 0;
}
/* icon lists */
.list-icons {
	list-style: none;
	margin: 0 0 30px;
}
.list-icons li {
	position: relative;
	padding: 0 0 0 30px;
	margin: 0 0 15px;
}
.list-icons li i {
	position: absolute;
	top: 1px;
	left: 0;
	width: 20px;
	font-size: 1.2em;
	text-align: center;
}
.list-icons.list-large {
	font-size: 1.2em;
}
.list-icons.list-large li {
	padding-left: 35px;
	margin: 0 0 20px;
}
.list-icons.list-spaced li {
	padding: 10px 0 10px 30px;
}
.list-icons.list-spaced li i {
	top: 11px;
}
.list-icons.list-legend {
	font-size: .8em;
	margin: 0 0 10px;
}
.list-icons.list-legend li {
	display: inline-block;
	padding-left: 22px;
	margin: 0 10px 10px 0;
	vertical-align: top;
}
/* labels list */
.list-details {
	list-style: none;
	margin: 0;
}
.list-details li {
	display: inline-block;
	padding: 0 10px;
	margin: 0;
	border-left: 1px solid #ddd;
}
.list-details li:first-child {
	padding-left: 0;
	border-left: none;
}
/* items list */
.list-items {
	list-style: none; 
	margin: 0 0 20px;
}
.list-items li {
	margin: 0;
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.list-items li a {
	position: relative;
	display: block;
	padding: 20px 0 20px 60px;
}
.list-items li a .item-number {
	position: absolute;
	top: 18px;
	left: 0;
	width: 42px;
	padding: 8px 0;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	color: #0c253c;
	border: 2px solid rgba(0, 0, 0, .15);
	border-radius: 100px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.list-items li a .item-label {
	display: block;
	font-size: .85em;
	font-weight: 700;
	color: #999;
	margin: 0 0 5px;
}
.list-items li a .item-label .item-status {
	display: inline-block;
	margin: 0 0 0 5px;
}
.list-items li a .item-title {
	display: block;
	font-weight: 700;
	margin: 0;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.list-items li span.item-desc p {
	padding-left: 60px;
}

.list-items li.active a .item-number {
	background: #0d3a49;
	color: #fff;
	border-color: #0d3a49;
}
.list-items li.active a .item-title {
	color: #0d3a49;
}
.list-items li a:hover {
	text-decoration: none;
}
.list-items li a:hover .item-number {
	background: #0d3a49;
	color: #fff;
	border-color: #0d3a49;
}
.list-items li a:hover .item-title {
	color: #0d3a49;
}
.list-items.list-light li {
	border-color: rgba(255, 255, 255, .1);
}
.list-items.list-light li a .item-number {
	background: rgba(255, 255, 255, .1);
	color: rgba(255, 255, 255, .5);
	border-color: rgba(255, 255, 255, .25);
}
.list-items.list-light li.active a .item-number {
	background: #fff;
	border-color: #fff;
	color: #0b1c21;
}
.list-items.list-light li.active a .item-title {
	color: #fff;
}
.list-items.list-light li a:hover .item-number {
	background: #0462a4;
	color: #fff;
}
.list-items.list-light li a:hover .item-title {
	color: #fff;
}
/* nav list */
.list-nav {
	list-style: none;
	font-weight: 400;
	margin: 0 0 30px; 
}
.list-nav li {
	border-top: 1px solid rgba(0, 0, 0, .1);
	margin: 0;
}
.list-nav li a {
	position: relative;
	display: block;
	padding: 15px 20px 15px 0;
	color: #0b1c21;
	text-decoration: none;
}
.list-nav li a .nav-title {
	display: block;
	font-weight: 700;
	margin: 0 0 5px;
}
.list-nav li a .nav-desc {
	display: block;
	font-size: .85em;
	line-height: 1.4;
	color: #999;
}
.list-nav li a:after {
	position: absolute;
	top: 13px;
	right: 15px;
	content: "\f105";
	font-family: FontAwesome;
	font-size: 1.2em;
	opacity: .25;
}
.list-nav li a:hover {
	padding-left: 10px;
	background: #f5f5f5;
	color: #09c;
}
.list-nav li a:hover:after {
	opacity: 1.0;
}
.list-nav li .nav-label {
	margin: 0 0 5px;
	color: #999;
}
.list-nav li .nav-title {
	margin: 0;
}
.list-nav li a:hover .nav-title {
	color: #09c;
}
.list-nav.nav-icons li a:after {
	display: none;
}
.list-nav.nav-icons li a i {
	position: absolute;
	top: 13px;
	right: 15px;
	font-size: 1.2em;
}
.list-nav.nav-small {
	font-size: .85em;
}
.list-nav.nav-small li a:hover {
	padding-left: 10px;
}
.list-nav.nav-light li {
	border-color: rgba(255, 255, 255, .35);
}
.list-nav.nav-light li a {
	color: #60cefb;
}
.list-nav.nav-light li a:after {
	color: #fff;
}
.list-nav.nav-light li a .nav-desc {
	color: rgba(255, 255, 255, .7);
}
.list-nav.nav-light li a:hover .nav-desc {
	color: #999;
}
.list-nav.nav-plus li a:after {
	content: "\f067";
}
.list-nav.nav-inline li {
	display: inline-block;
	border-top: none;
}
/* menu list */
.list-menu {
	list-style: none;
	font-weight: 400;
	margin: 0 0 30px; 
}
.list-menu li {
	border-top: 1px solid #ccc;
	margin: 0;
}
.list-menu li a {
	position: relative;
	display: block;
	padding: 15px 40px 15px 0;
	color: #666;
	text-decoration: none;
}
.list-menu li a:hover {
	padding-left: 15px;
	background: rgba(0, 0, 0, .05);
	color: #333;
}
.list-menu li a i {
	position: absolute;
	top: 17px;
	right: 15px;
	opacity: .5;
	color: #1ab1db;
}
.list-menu li a sup {
	display: inline-block;
	font-size: .85em;
    font-weight: 700;
    margin: 15px 0 0 5px;
    vertical-align: top;
}
.list-menu.menu-light li {
	border-color: rgba(255, 255, 255, .15);
}
.list-menu.menu-light li a {
	color: rgba(255, 255, 255, .7);
}
.list-menu.menu-light li a:hover {
	background: rgba(255, 255, 255, .1);
	color: #fff;
}
/* step lists */
.list-step {
	list-style: none;
	margin: 0 0 20px;
}
.list-step li {
	position: relative;
	padding: 15px 0 15px 45px;
	margin: 0;
	border-top: 1px solid #ccc;
}
.list-step li .step-number {
	position: absolute;
	top: 15px;
	left: 0;
	width: 32px;
	padding: 5px 0;
	background: #c00;
	color: #fff;
	font-weight: 400;
	text-align: center;
	border-radius: 30px;
}
.list-step li .step-title {
	margin: 0;
}
/* user lists */
.list-users {
	list-style: none;
	margin: 0 0 20px;
}
.list-users li {
	min-height: 70px;
	padding: 10px 0 10px 60px;
	border-top: 1px solid #cbdae4;
}
.list-users li:first-child {
	border-top: none;
}
.list-users li .user-avatar {
	top: 10px;
}
/* list sizes */
.list-small {
	font-size: .85em;
}
.list-large {
	font-size: 1.2em;
}
/* list columns */
.list-columns {
	font-size: 0;
	margin: 0 0 0 -3%;
}
.list-columns li {
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	margin: 0 0 3% 3%;
}
.list-columns.columns-2 li {
	width: 47%;
}
.list-columns.columns-3 li {
	width: 30.33%;
}
.list-columns.columns-4 li {
	width: 22%;
}
.list-columns.list-nav li {
	margin-bottom: 0;
}

/* ----- social ----- */
.social-nav {
	list-style: none;
	margin: 0 0 20px;
}
.social-nav li {
	display: inline-block;
	margin: 0 5px 5px 0;
}
.social-nav li a {
	display: inline-block;
	line-height: 1;
	text-align: center;
	padding: 10px 0;
	width: 36px;
	background: #1ab1db;
	color: #fff;
	border-radius: 50px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.social-nav li a:hover {
	background: #036;
}
.social-nav.nav-large {
	font-size: 1.5em;
}
.social-nav.nav-large li a {
	width: 60px;
	height: 60px;
	padding: 15px 0;
}
.social-nav.nav-block li {
	display: block;
	margin: 0 0 10px;
}
.social-nav.nav-block li a {
	display: block;
	width: 100%;
	height: auto;
	padding: 15px 20px;
	text-align: left;
}
.social-nav.nav-block li a i {
	margin-right: 10px;
}
.social-nav.nav-block li a .block-text {
	font-size: .85em;
}

/* ----- social share links ----- */
.share-links {
	list-style: none;
	font-size: 1em;
	margin: 0 0 20px;
	-webkit-transition: .5s;
	-moz-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}
.share-links li {
	display: inline-block;
	margin: 0 3px 0 0;
}
.share-links li.share-label {
	display: block;
	font-size: 1em;
	padding: 10px 0;
	margin: 0 !important;
	color: #999;
}
.share-links li a {
	display: inline-block;
	vertical-align: top;
	padding: 10px;
	width: 46px;
	color: #0462a4;
	border: 2px solid #ccc;
	text-align: center;
	border-radius: 100px;
}
.share-links li a:hover {
	background: #0462a4;
	color: #fff;
	border-color: #0462a4;
}
.share-links li.facebook a {
	color: #4c66a4;
}
.share-links li.facebook a:hover {
	background: #4c66a4;
	color: #fff;
	border-color: #4c66a4;
}
.share-links li.twitter a {
	color: #55acee;
}
.share-links li.twitter a:hover {
	background: #55acee;
	color: #fff;
	border-color: #55acee;
}
.share-links li.google a {
	color: #dd4b39;
}
.share-links li.google a:hover {
	background: #dd4b39;
	color: #fff;
	border-color: #dd4b39;
}
.share-links li.linkedin a {
	color: #0077B5;
}
.share-links li.linkedin a:hover {
	background: #0077B5;
	color: #fff;
	border-color: #0077B5;
}
/* light links */
.share-links.links-light li a {
	border-color: rgba(255, 255, 255, .5);
}

/* ----- titles ----- */
.title-jumbo {
	font-size: 3.5em;
}
.title-seo {
	font-size: 1.5em !important;
}

/* misc */
.screen-reader-text {
	display: none;
}

.color-bar {
	width: 100%;
	height: 10px;
	background: url(images/color-spectrum-10.png) repeat-x;
}

.spacer-diagonal {
	display: block;
	width: 100%;
	height: 20px;
	margin: 30px 0;
	background: url(images/pattern-diagonal.png) repeat-x;
}
.spacer-diagonal.diagonal-white {
	background: url(images/pattern-diagonal-white.png) repeat-x;
}
.spacer-diagonal.spacer-10 {
	margin: 10px 0 20px;
}

.number-circle {
	display: inline-block;
	padding: 10px 0;
	width: 50px;
	height: 50px;
	font-size: 1.2em;
	font-weight: 700;
	text-align: center;
	color: #333;
	border: 2px solid #333;
	border-radius: 100px;
	vertical-align: top;
}

/* -------------------- media -------------------- */
iframe,
object,
embed {
	display: block;
	max-width: 100%;
	margin: 0 auto 20px;
}
/* media (videos)
.media-wrapper {
	width: 620px;
	max-width: 100%;
	margin: 0 0 20px;
}
.media-container {
	position: relative;
	height: 0;
	padding-bottom: 62%;
	padding-top: 50px;
}
.media-container iframe,  
.media-container object,  
.media-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
*/

.chat-container {
	padding: 30px;
	margin: 0 0 30px;
	background: #f5f5f5;
}

.video-container {
	position: relative;
    overflow: hidden;
    padding-top: 56.25%;
    margin: 0 0 30px;
    /*
	position: relative;
	height: 0;
	padding-bottom: 50%;
	padding-top: 35px;
	margin: 0 0 30px;
	*/
}
.video-container img,
.video-container iframe {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    z-index: 5;
}
.video-container .container-tag {
	position: absolute;
	top: 20px;
	left: 0;
	padding: 10px 20px;
	background: #fc0;
	color: #0b1c21;
	font-weight: 700;
	z-index: 10;
}
/*
.video-container.video-wide {
	padding-top: 50px;
}
.video-container.video-wider {
	padding-top: 65px;
}
*/

.video-cta-container {
	position: relative;
	margin: 0 0 15px;
}
.video-cta-container img {
	display: block;
	width: 100%;
}
.video-cta-container .container-overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 10% 0 0;
	background: rgba(0, 0, 0, .5);
	z-index: 10;
}
.video-cta-container .container-overlay p {
	color: #fff;
}

img.wp-smiley,
img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 .07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

/* -------------------- Site wrapper -------------------- */
.site-wrapper {
	position: relative;
	width: 1400px;
	margin: 0 auto;
	/*box-shadow: 0 10px 10px rgba(0, 0, 0, .25);*/
}
.site-wrapper.wrapper-shadowed {
	box-shadow: 0 10px 10px rgba(0, 0, 0, .25);
}

/* lead pages wrapper */
.ldp-content {
	background: #fff;
}
.ldp-content p:first-child br {
	display: none;
}

/* ======================================================================================================= */
/* 02: Header
/* ======================================================================================================= */
/* -------------------- site top -------------------- */
.site-top {
	position: relative;
	width: 100%;
	padding: 12px 15px 10px;
	background: #7621de;
	z-index: 1000;
}
.site-top.top-with-action {
	padding: 12px 180px 10px 15px;
}
.site-top p {
	color: #fff;
	margin: 0;
}
.site-top p a {
	color: #efce2f;
}
.site-top p a:hover {
	color: #fff;
	text-decoration: none;
}
.site-top .top-alert {
	display: inline-block;
}
.site-top .top-action {
	position: absolute;
	top: 12px;
	right: 15px;
}
.site-top .top-action .btn {
	font-size: .8em;
	font-weight: 700;
	padding: 5px 15px;
}

.site-header {
	position: relative;
	width: 100%;
	height: 100px;
	padding: 10px 0;
	z-index: 1000;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.site-header .container {
	padding: 0;
	z-index: 100;
}
/* header top */
.site-header .header-top {
	height: 50px;
	padding: 10px 0;
	background: #19191d;
}
.site-header .header-top .top-search {
	float: right;
	width: 25%;
	margin: 0 10px;
}
.site-header .header-top .top-search .search {
	background: rgba(0, 0, 0, .05);
	padding-right: 40px;
	margin: 0;
}
.site-header .header-top .top-search .search .search-input {
	padding: 7px 10px;
	font-size: .8em;
}
.site-header .header-top .top-search .search .search-input::placeholder {
  color: rgba(0, 0, 0, .5);
}
.site-header .header-top .top-search .search .search-submit {
	padding: 7px 3px;
	font-size: .9em;
}
.site-header .header-top .top-search .search .search-submit:hover {
	color: #000;
}
.site-header .header-top .top-member {
	float: left;
	padding: 3px 0 0 15px;
}
.site-header .header-top .top-member p {
	font-size: .85em;
}
.site-header .header-top ul {
	float: right;
	list-style: none;
	font-size: .8em;
	font-weight: 700;
	text-align: right;
	margin: 0 10px 0 0;
}
.site-header .header-top ul li {
	display: inline-block;
	padding: 0 10px;
	margin: 0;
	border-left: 1px solid rgba(0, 0, 0, .15);
}
.site-header .header-top ul li:first-child {
	border-left: none;
}
.site-header .header-top ul li a {
	display: block;
	padding: 7px 0;
	color: #999;
}
.site-header .header-top ul li a:hover {
	color: #1ab1db;
}
.site-header .header-top ul li a i {
	color: #1ab1db;
}
/* header brand */
.site-header .header-brand {
	position: absolute;
	top: 3px;
	left: 0;
	width: 165px;
	padding: 15px;
}
.site-header .header-brand img {
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	z-index: 1002;
}
/* header nav */
.site-header .header-nav {
	padding: 15px 15px 15px 0;
	text-align: right;
}
.site-header .header-nav ul {
	float: right;
	list-style: none;
	font-size: 1em;
	font-weight: 700;
	margin: 0;
}
.site-header .header-nav ul > li {
	position: relative;
	display: inline-block;
	margin: 0;
	vertical-align: top;
}
.site-header .header-nav ul > li > a {
	display: block;
	height: 50px;
	padding: 15px;
	color: #fff;
	line-height: 1.2;
	text-decoration: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	vertical-align: top;
}
.site-header .header-nav ul > li:hover > a,
.site-header .header-nav ul > li > a:hover {
	background: rgba(255, 255, 255, .15);
}
.site-header .header-nav ul > li.social > a {
	width: 40px;
	padding: 8px 0;
	text-align: center;
	border: 2px solid rgba(255, 255, 255, .25);
	border-radius: 3px;
}
.site-header .header-nav ul > li.social.first {
	margin-left: 10px;
}
.site-header .header-nav ul > li.nav-cta > a {
	padding: 13px 35px;
	font-weight: 700;
	color: #fe8c25;
	border: 2px solid;
	border-radius: 100px;
}
.site-header .header-nav ul > li.nav-cta:hover > a {
	background: #fe8c25;
	color: #fff;
	border-color: #fe8c25;
}
.site-header .header-nav ul > li.nav-login {
	margin: 0 5px; 
}
.site-header .header-nav ul > li.nav-login > a {
	padding: 13px 35px;
	border: 2px solid rgba(255, 255, 255, .5);
	border-radius: 100px;
}
.site-header .header-nav ul > li.nav-login:hover > a {
	color: #fff;
}
.site-header .header-nav ul > li.nav-mobile-only,
.site-header .header-nav ul > li.nav-mobile-account {
	display: none;
}
.site-header .header-nav ul > li > a i {
	display: inline-block;
	padding: 10px 0;
    width: 32px;
    margin: -8px 5px 0 0;
    font-size: .8em;
    line-height: 1;
    text-align: center;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    border-radius: 100px;
    opacity: .5;
    vertical-align: top;
    -webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.site-header .header-nav ul > li > a:hover i {
	opacity: 1.0;
}
.site-header .header-nav ul > li > a i.fa-caret-down {
    width: auto;
    padding: 0;
    margin: 5px 0 0 5px;
    background: none;
}
/* hover sub-menu */
.site-header.header-member .header-nav ul > li.nav-menu:hover > a,
.site-header.header-member .header-nav ul > li.nav-menu > a:hover {
	background: #fff;
	color: #0b1c21;
}
.site-header .header-nav .nav-sub-menu {
	display: none;
}
.site-header .header-nav li:hover .nav-sub-menu {
	display: block;
	position: absolute;
	top: 50px;
	left: 0;
	width: 220px;
	padding: 10px;
	background: #fff;
	font-size: .9em;
	font-weight: 400;
	margin: 0;
	box-shadow: 0 5px 10px rgba(0, 0, 0, .1);
}
.site-header .header-nav li:hover .nav-sub-menu li {
	display: block;
	float: none;
	border-left: none;
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.site-header .header-nav li:hover .nav-sub-menu li:first-child {
	border-top: none;
}
.site-header .header-nav li:hover .nav-sub-menu li a {
	position: relative;
	display: block;
	height: auto;
	padding: 15px;
	color: #333;
	text-align: left;
	border-radius: 0;
}
.site-header .header-nav li:hover .nav-sub-menu li a:hover {
	background: #eee;
	color: #0b1c21;
}
.site-header .header-nav ul > li:hover .nav-sub-menu li a i {
	width: auto;
    padding: 0;
    margin: 2px 0 0 5px;
    background: none;
    font-size: 1em;
    opacity: 1.0;
}
/* mega-menu */
.site-header .header-nav li:hover .nav-sub-menu.menu-mega {
	left: inherit;
	right: -272px;
	width: 1400px;
	text-align: left;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega > .container {
	width: auto;
	padding: 10px;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .feature-link > a {
	padding: 20px 60px 20px 70px;
	box-shadow: none;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .feature-link .feature-icon {
	top: 20px;
	left: 20px;
	font-weight: normal;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .feature-link .feature-desc {
	font-weight: 300;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column hr {
	margin: 0;
	border-color: #eee;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column hr.hr-menu {
	margin: 15px 0;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column .column-label {
	display: block;
	margin: 0 0 15px;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav {
	float: none;
	font-weight: 400;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav li {
	display: block;
	border-top: 1px solid #eee;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav.list-columns li {
	display: inline-block;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav li a {
	padding: 15px 0;
	height: auto;
	font-size: .8em;
	color: #888;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav li a:hover {
	background: #eee;
	color: #0b1c21;
	padding-left: 10px;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav.nav-large li a {
	font-size: 1em;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav.nav-large li a .nav-title {
	color: #0b1c21;
}
.site-header .header-nav li:hover .nav-sub-menu.menu-mega .menu-column ul.list-nav.nav-large li a .nav-title i {
	width: auto;
	padding: 0;
	margin: 0 0 0 5px; 
	background: none;
	font-size: 1em;
	opacity: 1.0;
}

/* click dropdown */
.site-header .header-nav li.nav-dropdown {
	position: relative;
}
.site-header .header-nav li.nav-dropdown.dropdown-account {
	background: rgba(255, 255, 255, .1);
}
.site-header .header-nav li.nav-dropdown.open > a {
	background: #41485a;
	color: #fff;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.site-header .header-nav .dropdown-menu {
	top: auto;
	right: 0;
	min-width: 220px;
	padding: 10px;
	margin: 0;
	font-size: 1em;
	background: #41485a;
	border: none;
	border-radius: 0; 
	box-shadow: none;
}
.site-header .header-nav .dropdown-menu li {
	display: block;
	border-top: 1px solid rgba(255, 255, 255, .1);
}
.site-header .header-nav .dropdown-menu li.divider {
	background: rgba(255, 255, 255, .1);
}
.site-header .header-nav .dropdown-menu li:first-child {
	border-top: none;
}
.site-header .header-nav .dropdown-menu li a {
	position: relative;
	display: block;
	height: auto;
	padding: 20px;
	color: rgba(255, 255, 255, .75);
	border-radius: 0;
}
.site-header .header-nav .dropdown-menu li a i {
	position: absolute;
	top: 19px;
	right: 5px;
	background: none;
	font-size: .9em;
	opacity: .5;
}
.site-header .header-nav .dropdown-menu li sup  {
	font-size: .75em;
}
.site-header .header-nav .dropdown-menu li a:hover {
	background: rgba(255, 255, 255, .25);
	color: #fff;
}
/* header search */
.site-header .header-nav .header-search {
	position: relative;
	float: left;
	margin: 0 0 0 185px;
}
.site-header .header-nav .header-search form {
	position: relative;
	width: 320px;
	background: rgba(255, 255, 255, .1);
}
.site-header .header-nav .header-search form label {
	display: block;
	margin: 0;
}
.site-header .header-nav .header-search form .search-input {
	padding-right: 0;
	background: none;
	color: #fff;
	font-weight: 300;
	border: none;
	box-shadow: none;
	outline: none;
}
.site-header .header-nav .header-search form .search-input::placeholder {
	color: rgba(255, 255, 255, .5);
}
.site-header .header-nav .header-search form button[type="submit"] {
	position: absolute;
	top: 0;
	right: 0;
	padding: 15px;
	font-size: 1.2em;
	background: none;
	border: none;
	color: #999;
	z-index: 5;
}
.site-header .header-nav .header-search form button[type="submit"]:hover {
	color: #fff;
}
.site-header .header-nav .header-search .search-surprise {
	position: absolute;
	top: 0;
	right: -100px;
	font-size: .85em;
	padding: 10px;
	background: #252525;
	color: #c00;
	text-decoration: none;
	border-radius: 3px;
}
.site-header .header-nav .header-search .search-surprise:hover {
	background: #c00;
	color: #fff;
}

/* mobile */
.site-header .header-mobile-nav-brand {
	display: none;
	position: absolute;
	top: 23px;
	left: 15px;
	z-index: 1002;
	width: 300px;
}
.site-header .header-mobile-navicon {
	display: none;
	position: absolute;
	top: -1px;
	right: 0;
	padding: 18px 15px;
	line-height: 1;
    cursor: pointer;
    user-select: none;
    -webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	z-index: 1001;
}
.site-header .header-mobile-navicon .bars {
	display: inline-block;
    width: 32px;
    height: 2px;
    background: #999;
    transition: 0.3s;
    position: relative;
}
.site-header .header-mobile-navicon .bars:before,
.site-header .header-mobile-navicon .bars:after {
	display: inline-block;
    width: 32px;
    height: 2px;
    background: #999;
    border-radius: 0.28571rem;
    -webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
    position: absolute;
    left: 0;
    content: '';
    -webkit-transform-origin: 0.28571rem center;
    transform-origin: 0.28571rem center;
}
.site-header .header-mobile-navicon .bars:before {
	top: 10px;
}
.site-header .header-mobile-navicon .bars:after {
	top: -10px;
}

/* close state */
.site-header .header-mobile-navicon.navicon-close {
	-webkit-transform: scale3d(0.8,0.8,0.8);
    transform: scale3d(0.8,0.8,0.8);
}
.site-header .header-mobile-navicon.navicon-close .bars {
	background: transparent;
}
.site-header .header-mobile-navicon.navicon-close .bars:before,
.site-header .header-mobile-navicon.navicon-close .bars:after {
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 2px;
    width: 42px;
}
.site-header .header-mobile-navicon.navicon-close .bars:before {
    -webkit-transform: rotate3d(0,0,1,45deg);
    transform: rotate3d(0,0,1,45deg);
}
.site-header .header-mobile-navicon.navicon-close .bars:after {
    -webkit-transform: rotate3d(0,0,1,-45deg);
    transform: rotate3d(0,0,1,-45deg);
}

/* header restyling (on scroll) */
/*
.site-header.header-restyle {
	background: #066cd2;
}
.site-header.header-restyle .header-nav ul > li.nav-cta > a {
	background: #f60;
}
.site-header.header-restyle .header-nav ul > li.nav-cta > a:hover {
	background: #fff;
	color: #f60;
}
*/

/* member header (logged-in) */
.site-header.header-member {
	height: 130px;
	padding: 0;
	background: #2d3446;
}
.site-header.header-member .header-top {
	background: #19191d;
}
.site-header.header-member .header-top ul li a {
	color: rgba(255, 255, 255, .5);
}
.site-header.header-member .header-top ul li a:hover {
	color: #fff;
}
.site-header.header-member .header-brand {
	top: 45px;
}
/*
.site-header.header-member .header-brand:after {
	position: absolute;
	top: 20px;
	right: -100px;
	content: "Members";
	letter-spacing: 5px;
	font-size: .85em;
	text-transform: uppercase;
	color: #1ab1db;
	z-index: 5;
}
*/
.site-header.header-member .header-nav ul > li > a {
	color: #fff;
}
.site-header.header-member .header-nav ul > li > a:hover {
	background: rgba(255, 255, 255, .15);
}
.site-header.header-member .header-nav ul > li.nav-mega:hover > a,
.site-header.header-member .header-nav ul > li.nav-mega > a:hover {
	background: #fff;
	color: #0b1c21;
}
.site-header.header-member .header-nav li:hover .nav-sub-menu.menu-mega {
	right: -354px;
	width: 1400px;
	text-align: left;
}

/* membership sign up headers */
.page-template-page-membership .site-header,
.page-template-page-checkout .site-header,
.page-template-page-confirmation .site-header {
	display: none;
}

/* landing page headers */
.page-template-page-lead-pages-lp .site-header,
.page-template-page-lp-squeeze .site-header,
.page-template-page-testimonials .site-header {
	display: none;
}

/* onboarding headers */
.page-template-page-new-member-onboarding .site-header {
	display: none;
}

/* ======================================================================================================= */
/* 03: Layout / Structure
/* ======================================================================================================= */
/* ---------- columns ---------- */
.column-row {
	width: 100%;
	overflow: auto;
}
.column {
	position: relative;
	float: left;
}
.column.column-10 {
	width: 10%;
}
.column.column-20 {
	width: 20%;
}
.column.column-25 {
	width: 25%;
}
.column.column-30 {
	width: 30%;
}
.column.column-40 {
	width: 40%;
}
.column.column-50 {
	width: 50%;
}
.column.column-60 {
	width: 60%;
}
.column.column-70 {
	width: 70%;
}
.column.column-75 {
	width: 75%;
}
.column.column-80 {
	width: 80%;
}
.column.column-90 {
	width: 90%;
}
.column.column-100 {
	width: 100%;
}
/* column colors */
.column-row.row-light {
	background: #f5f5f5;
}
.column-row.row-white {
	background: #fff;
}
.column-row.row-black {
	background: #000;
	color: #fff;
}
/* column backgrounds */
.column-image {
	min-height: 550px;
}
.column-image-community {
	height: 600px;
	background: url(images/column-image-community.jpg) center center no-repeat;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.column-image-jonny {
	height: 650px;
	background: url(images/column-image-jonny.jpg) center center no-repeat;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.column-image-learning-tracks {
	height: 650px;
	padding: 70px;
	background: url(images/column-image-piano-001.jpg) center center no-repeat;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.column-image-pwj-challenge {
	height: 600px;
	background: url(images/column-image-jonny-challenge.jpg) center center no-repeat;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.column-image-smartsheets {
	height: 650px;
	background: url(images/column-image-smartsheet.jpg) center center no-repeat;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
/* column content */
.column-content {
	padding: 10%;
}
.column-content.content-50 {
	padding: 50px;
}
.column-caption {
	position: absolute;
	background: rgba(0, 0, 0, .50);
	color: #fff;
	font-size: .85em;
	padding: 10px 20px;
	z-index: 10;
}
.column-caption.caption-top-left {
	top: 40px;
	left: 0;
}
.column-caption.caption-top-right {
	top: 40px;
	right: 0;
}
.column-caption.caption-bottom-left {
	bottom: 40px;
	left: 0;
}
.column-caption.caption-bottom-right {
	bottom: 40px;
	right: 0;
}
/* column floats */
.column-pull-right {
	float: right;
}

/* -------------------- Grids -------------------- */
/* ----- responsive grid ----- */
.rsp-grid {
	font-size: 0;
}
.rsp-grid .grid-container {
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	vertical-align: top;
}
.rsp-grid .grid-container.container-20 {
	width: 20%;
}
.rsp-grid .grid-container.container-25 {
	width: 25%;
}
.rsp-grid .grid-container.container-33 {
	width: 33.33%;
}
.rsp-grid .grid-container.container-40 {
	width: 40%;
}
.rsp-grid .grid-container.container-50 {
	width: 50%;
}
.rsp-grid .grid-container.container-66 {
	width: 66.66%;
}
.rsp-grid .grid-container.container-75 {
	width: 75%;
}
.rsp-grid .grid-container.container-80 {
	width: 80%;
}
/* spaced grid */
.rsp-grid.grid-spaced {
	margin-left: -3%;
}
.rsp-grid.grid-spaced .grid-container {
	margin: 0 0 3% 3%;
}
.rsp-grid.grid-spaced .grid-container.container-20 {
	width: 17%;
}
.rsp-grid.grid-spaced .grid-container.container-25 {
	width: 22%;
}
.rsp-grid.grid-spaced .grid-container.container-33 {
	width: 30.33%;
}
.rsp-grid.grid-spaced .grid-container.container-40 {
	width: 37%;
}
.rsp-grid.grid-spaced .grid-container.container-50 {
	width: 47%;
}
.rsp-grid.grid-spaced .grid-container.container-66 {
	width: 63.66%;
}
.rsp-grid.grid-spaced .grid-container.container-75 {
	width: 72%;
}
.rsp-grid.grid-spaced .grid-container.container-80 {
	width: 77%;
}

/* ----- table grid ----- */
.table-grid {
	display: table;
	width: 100%;
}
.table-grid .grid-column {
	display: table-cell;
	padding: 0 30px;
	border-left: 1px solid #ccc;
	vertical-align: top;
}
.table-grid .grid-column:first-child {
	padding-left: 0;
	border: none;
}
.table-grid .grid-column:last-child {
	padding-right: 0;
}
.table-grid .grid-column.column-20 {
	width: 20%;
}
.table-grid .grid-column.column-25 {
	width: 25%;
}
.table-grid .grid-column.column-30 {
	width: 30%;
}
.table-grid .grid-column.column-33 {
	width: 33.33%;
}
.table-grid .grid-column.column-40 {
	width: 40%;
}
.table-grid .grid-column.column-50 {
	width: 50%;
}
.table-grid .grid-column.column-66 {
	width: 66.66%;
}
.table-grid .grid-column.columnr-75 {
	width: 75%;
}
.table-grid .grid-column.column-80 {
	width: 80%;
}
/* predefined grid columns */
.table-grid.grid-columns-2 .grid-column {
	width: 50%;
}
.table-grid.grid-columns-3 .grid-column {
	width: 33.33%;
}
.table-grid.grid-columns-4 .grid-column {
	width: 25%;
}

/* ----- page header ----- */
.page-header {
	position: relative;
	padding: 50px;
	margin: 0;
	border-bottom: none;
	background: url(images/section-bg-keys.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header .container {
	width: auto;
	padding: 0;
}
.page-header .header-brand {
	display: block;
	width: 185px;
	margin: 0 0 20px;
}
.page-header .header-brand.brand-centered {
	margin: 0 auto 20px;
}
.page-header .breadcrumb {
	padding-top: 0;
	color: rgba(255, 255, 255, .5);
	border-bottom: 1px solid rgba(255, 255, 255, .25);
}
.page-header .breadcrumb a {
	color: #fff;
}
.page-header .breadcrumb a:hover {
	color: #60cefb;
}
.page-header .header-label {
	display: block;
	font-weight: 400;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .5);
	margin: 0 0 10px;
}
.page-header .header-label.label-large {
	font-size: 1.4em;
}
.page-header h1 {
	color: #fff;
	padding: 0;
	margin: 0;
	border: none;
}
.page-header h1 .header-edit-link {
	display: inline-block;
	font-size: .5em;
	letter-spacing: 0;
	margin: 0 0 0 10px;
}
.page-header h1 .header-edit-link:hover {
	color: #fff;
}
.page-header p {
	margin: 10px 0 0; 
}
.page-header .headline {
	color: rgba(255, 255, 255, .7);
}
.page-header .dropdown .btn-block {
	margin: 15px 0 0;
}
/* header nav */
.page-header .header-nav {
	padding: 20px 0 0;
	margin: 20px 0 0;
	border-top: 1px solid rgba(255, 255, 255, .25);
}
.page-header .header-nav ul {
	list-style: none;
	font-weight: 700;
	margin: 0;
}
.page-header .header-nav ul li {
	display: inline-block;
	margin: 0;
}
.page-header .header-nav ul li a {
	display: block;
	padding: 12px 25px;
	color: #fff;
}
.page-header .header-nav ul li a:hover {
	background: rgba(255, 255, 255, .15);
}
.page-header .spacer-diagonal {
	margin: 20px 0;
}

/* header metrics */
.page-header .metrics {
	padding-left: 30px;
	border-left: 1px solid rgba(255, 255, 255, .5);
}
.page-header .metrics .metric-stacked {
	border-color: rgba(255, 255, 255, .25);
}

/* header search */
.page-header .search {
	margin: 20px 0 0 60px;
	background: rgba(0, 0, 0, .25);
}
.page-header .search .search-input {
	color: #fff;
}
.page-header .search .search-input::placeholder {
  color: rgba(255, 255, 255, .5);
}
.page-header .search .search-submit {
	color: rgba(255, 255, 255, .5);
}
.page-header .search .search-submit:hover {
	color: #fff;
}

/* header section */
.page-header.header-section {
	position: relative;
	width: 100%;
	max-height: 600px;
	padding: 0;
	background: #142722;
	overflow: hidden;
}
.page-header.header-section .section-image {
	display: block;
	width: 100%;
	opacity: .7;
	margin-top: -100px; /* **Design ONLY - REMOVE THIS in Development */
}
.page-header.header-section .section-content {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 100px;
	background: linear-gradient(transparent, rgba(0, 0, 0, .8));
}
.page-header.header-section .section-content > .container {
	position: relative;
}
.page-header.header-section .section-content .header-label {
	display: inline-block;
	padding: 0 0 10px;
	margin: 0 0 20px;
	font-size: 1.2em;
	letter-spacing: 5px;
	text-transform: uppercase;
	border-bottom: 2px solid;
}
.page-header.header-section .section-content h1 {
	margin: 0 0 10px;
}
.page-header.header-section .section-content p {
	margin: 0 0 20px;
}
.page-header.header-section .section-content .content-utility {
	position: absolute;
	bottom: 30px;
	right: 15px;
}
.page-header.header-section .breadcrumb {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 30px 50px;
	border: none;
	z-index: 10;
}
/* slim headers */
.page-header.header-slim {
	padding: 25px 50px;
}
.page-header.header-slim .breadcrumb {
	padding: 0;
	margin: 0;
	border: none;
}

/* header colors */
.page-header.header-blue {
	background: url(images/pattern-geometry-2x-blue.png);
}
.page-header.header-purple {
	background: url(images/pattern-geometry-2x-purple.png);
}

/* page-header backgrounds */
.page-header.header-piano {
	background: url(images/header-bg-piano-music.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-courses {
	background: url(images/page-header-courses.jpg) top center no-repeat #333;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-library {
	background: url(images/page-header-library.jpg) top center no-repeat #333;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-archive {
	background: url(images/header-bg-piano-2.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-track {
	background: url(images/header-bg-track.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-keys {
	background: url(images/section-bg-keys.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-music {
	background: url(images/section-bg-piano-music.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-header.header-scale {
	background: url(images/header-bg-scale.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/* ----- page sections ----- */
.page-section {
	position: relative;
	padding: 50px;
	z-index: 1;
}
.page-section .container {
	width: auto;
}
.page-section .section-label {
	display: inline-block;
	padding: 0 0 20px;
	margin: 0 0 20px;
	border-bottom: 2px solid;
}

.page-section.section-slim {
	padding: 30px;
}
.page-section.section-no-padding {
	padding: 0;
}
.page-section.section-light,
.page-section.section-light-grey {
	background: #eee;
}
.page-section.section-dark {
	background: #151515;
}
.page-section.section-dark h2,
.page-section.section-dark h3 {
	color: #fff;
}
.page-section.section-dark p {
	color: #999;
}
/* section colors */
.page-section.section-white {
	background: #fff;
}
.page-section.section-beige {
	background: #f6f4ea;
}
.page-section.section-light {
	background: #f5f5f5;
}
/* section header */
.page-section .section-header {
	position: relative;
	padding: 0 300px 0 0;
}
.page-section .section-header .header-utility {
	position: absolute;
	top: 0;
	right: 0;
}
/* section backgrounds */
.page-section.section-cta {
	padding: 70px;
	background: url(images/pattern-school.png);
}
.page-section.section-desk {
	background: url(images/section-bg-desk.jpg) bottom center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-community {
	background: url(images/section-bg-desk.jpg) bottom center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-keys {
	background: url(images/section-bg-keys.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-piano {
	background: url(images/section-bg-piano-music.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-keyboard {
	background: url(images/section-bg-keyboard.jpg) bottom center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-scale {
	background: url(images/section-bg-scale.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-shows {
	background: url(images/section-bg-shows.jpg) bottom center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.page-section.section-geometry-green {
	background: url(images/pattern-geometry-2x-green.png);
}

.page-section.section-approach {
	padding: 100px 50px;
	background: url(images/section-bg-learning-woman.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-auth {
	padding: 100px 50px;
	background: url(images/section-bg-keyboard.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-membership {
	padding: 50px;
	background: url(images/page-bg-working-bw-002.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.page-section.section-color-polygon {
	padding: 100px 50px;
	background: url(images/hero-bg-color-polygon.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.page-section .section-header {
	position: relative;
	padding: 0 0 20px;
	margin: 0 0 20px;
	border-bottom: 1px solid rgba(0, 0, 0, .25);
}
.page-section .section-header h1 {
	font-size: 3em;
	margin: 0;
}
.page-section .section-header .progress-meter {
	position: absolute;
	top: 0;
	right: 0;
	margin: 15px 0;
}

/* -------------------- Section Columns -------------------- */
.section-columns {
	display: table;
	width: 100%;
}
.section-columns .column {
	display: table-cell;
	padding: 50px;
	vertical-align: top;
}
.section-columns .column.column-30 {
	width: 30%;
}
.section-columns .column.column-40 {
	width: 40%;
}
.section-columns .column.column-50 {
	width: 50%;
}
.section-columns .column.column-60 {
	width: 60%;
}
.section-columns .column.column-70 {
	width: 70%;
}

/* -------------------- Section Rows -------------------- */
/* section rows */
.page-section .section-row {
    /*padding: 50px;*/
    margin: 0 0 70px;
}
.page-section .section-row .section-content {
	position: relative;
    padding: 50px;
    border-right-style: solid;
}
.page-section .section-row .section-image img {
	position: relative;
	display: block;
	width: 100%;
	padding: 0 0 30px 30px;
	z-index: 5;
}
.page-section .section-row .section-image:before {
	content: "";
    position: absolute;
    top: 30px;
    left: 15px;
    width: 90%;
    height: 94%;
    background: rgba(0, 0, 0, .25);
}
.page-section .section-row .section-image.image-blue:before {
	background: #77c0f9;
}
.page-section .section-row .section-image.image-green:before {
	background: #1ab1db;
}
.page-section .section-row .section-image.image-purple:before {
	background: #8ea0fc;
}
.page-section .section-row .section-image.image-yellow:before {
	background: #efce2f;
}
/* content widths */
.section-content {
	padding: 50px;
	margin: 0 auto;
}
.section-content.content-50 {
	width: 50%;
}
.section-content.content-75 {
	width: 75%;
}
.section-content.content-80 {
	width: 80%;
}
.section-content.content-85 {
	width: 85%;
}
.section-content.content-90 {
	width: 90%;
}
.section-content.content-100 {
	width: 100%;
}
/* content colors */
.section-content.content-blue {
	border-color: #0b4c89;
}
.section-content.content-red {
	border-color: #8a181a;
}
.section-content.content-yellow {
	border-color: #e9c202;
}

/* -------------------- Hero -------------------- */
.hero {
	position: relative;
	width: 100%;
	padding: 50px 50px 30px;
	background: #151515;
	/*
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    */
}
.hero.hero-homepage {
	padding: 100px 0;
	background: url(images/hero-jonnymay-001-blue.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero.hero-keys {
	background: url(images/section-bg-keys.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero.hero-piano {
	background: url(images/section-bg-piano-music.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero.hero-scale {
	background: url(images/header-bg-scale.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero.hero-track {
	background: url(images/header-bg-track.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero h1 {
	line-height: 1.2;
	color: #fff;
}
.hero h1 .hero-title-helper {
	display: inline-block;
	font-size: .5em;
	font-weight: 400;
	margin-left: 5px;
}
.hero h1 a.hero-title-helper:hover {
	color: #fff;
}
.hero .hero-brand {
	display: block;
	width: 185px;
	margin: 0 0 20px;
}
.hero .hero-brand.brand-centered {
	margin: 0 auto 20px;
}
.hero .hero-label {
	display: block;
	letter-spacing: 3px;
	text-transform: uppercase;
	margin: 0 0 10px;
}
.hero h1 .hero-emph {
	display: block;
	font-size: 2em;
	font-weight: 300;
	text-transform: uppercase;
	color: #93eed6;
}
.hero h1 > i {
	display: inline-block;
	width: 48px;
	padding: 14px 0;
	margin: 0 5px 0 0;
	font-size: .35em;
	line-height: 1;
	text-align: center;
	border: 2px solid rgba(255, 255, 255, .35);
	border-radius: 100px;
	vertical-align: top;
}
.hero p {
	color: #fff;
}
.hero p:last-child {
	margin: 0 0 10px;
}
.hero .headline {
	margin: 0 0 30px;
}
.hero .headline u {
	font-weight: 700;
}
.hero .headline.headline-typed {
	height: 50px;
}

.hero .hero-content {
	width: 55%;
	margin: 0 auto;
}
.hero .hero-content .hero-icon {
	display: block;
	width: 120px;
	margin: 0 auto 30px;
}
.hero .hero-content .hero-label {
	font-weight: 300;
	letter-spacing: 5px;
	text-transform: uppercase;
	color: #fff;
}
.hero .hero-content h1 {
	font-size: 4em;
}
.hero .feature.feature-link {
	margin: 0 0 20px;
}

/* hero slideshow */
.hero.hero-slideshow {
	position: relative;
	max-height: 600px;
	padding: 0;
	overflow: hidden;
	background: #000;
}
.hero.hero-slideshow .cycle-slideshow {
	width: 100%;
}
.hero.hero-slideshow .cycle-slideshow .cycle-slide {
	width: 100%;
}
.hero.hero-slideshow .cycle-slideshow .cycle-slide img {
	width: 100%;
	opacity: .5;
}
.hero.hero-slideshow .cycle-slideshow .container {
	position: relative;
}
.hero.hero-slideshow .hero-content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
}
.hero .hero-content .content {
	padding: 100px;
}
.hero.hero-slideshow .hero-content .container {
	position: relative;
	width: auto;
	padding: 50px;
}
.hero.hero-slideshow .hero-cta {
	position: absolute;
	top: 60px;
	right: 60px;
	width: 30%;
	padding: 50px;
	background-image: linear-gradient(120deg, rgba(15, 194, 148, 0.7) 0%, rgba(13, 103, 80, 0.7) 70%);
	box-shadow: 0 0 0 10px rgba(255, 255, 255, .15);
	z-index: 100;
}

/* hero cta */
.hero .hero-cta {
	padding: 30px;
	background: rgba(255, 255, 255, .1);
}

/* hero nav */
.hero .hero-nav {
}
.hero .hero-nav ul {
	list-style: none;
	font-weight: 700;
	margin: 0;
}
.hero .hero-nav ul li {
	display: inline-block;
	margin: 0;
	border-left: 1px solid rgba(255, 255, 255, .2);
}
.hero .hero-nav ul li:first-child {
	border-left: none;
}
.hero .hero-nav ul li a {
	display: block;
	padding: 12px 25px;
	color: #fff;
	text-decoration: none;
}
.hero .hero-nav ul li a:hover {
	background: rgba(255, 255, 255, .15);
}
.hero .hero-nav ul li a i {
	margin-right: 5px;
	color: #fff;
	opacity: .5;
}

/* hero overlay */
.hero-overlay {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 30px 0;
	background: rgba(0, 0, 0, .5);
}

/* hero search */
.hero .hero-search {
	position: relative;
	padding: 0 60px 0 0;
	background: rgba(255, 255, 255, .15);
}
.hero .hero-search form {
	width: 100%;
}
.hero .hero-search input[type="search"] {
	padding: 20px;
	font-size: 1.2em;
	background: none;
	border: none;
	color: #fff;
}
.hero .hero-search input[type="search"]::placeholder {
  color: #fff;
}
.hero .hero-search button[type="submit"] {
	position: absolute;
	top: 0;
	right: 0;
	padding: 15px;
	font-size: 2em;
	background: none;
	color: rgba(255, 255, 255, .5);
	border: none;
}
.hero .hero-search button[type="submit"]:hover {
	background: none;
	color: #fff;
}

/* -------------------- Content -------------------- */
.content-wrap {
	box-shadow: 0 0 0 10px rgba(0, 0, 0, .075);
}

.content {
	padding: 30px;
}
.content.content-full {
	padding: 0;
}
.content.content-light {
	background: #f5f5f5;
}
.content.content-pad-50 {
	padding: 50px;
}
/* trans content */
.content.content-trans {
	background: rgba(255, 255, 255, .25);
}

/* content sections */
.content-section {
	padding: 30px 0;
}
.content-section.section-padded {
	padding: 50px;
}
.content-section.section-hero {
	padding: 100px;
}
.content-section.section-hero p {
	font-size: 1.2em;
}
/* section colors */
.content-section.section-white {
	background: #fff;
}
.content-section.section-light-grey {
	background: #eee;
}
.content-section.section-black {
	background: #000;
}
.content-section.section-red {
	background: #900;
}
/* section tag styling */
.content-section.section-black p,
.content-section.section-red p {
	color: rgba(255, 255, 255, .75);
}
.content-section.section-black h1,
.content-section.section-black h2,
.content-section.section-black h3,
.content-section.section-black h4,
.content-section.section-black h5,
.content-section.section-black h6,
.content-section.section-black ul,
.content-section.section-black ol,
.content-section.section-red h1,
.content-section.section-red h2,
.content-section.section-red h3,
.content-section.section-red h4,
.content-section.section-red h5,
.content-section.section-red h6,
.content-section.section-red ul,
.content-section.section-red ol {
	color: #fff;
}
/* section titles */
.content-section .section-title {
	padding: 0 0 20px;
	text-align: center;
	border-bottom: 1px solid rgba(0, 0, 0, .25);
}
.content-section.section-black .section-title,
.content-section.section-red .section-title {
	border-bottom-color: rgba(255, 255, 255, .25);
}
/* section header */
.content-section .section-header {
	position: relative;
	padding-left: 75px;
	margin: 0 0 20px;
}
.content-section .section-header .header-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 62px;
	padding: 15px 0;
	background: #333;
	color: #fff;
	font-size: 2em;
	line-height: 1;
	text-align: center;
	border-radius: 100px;
}
.content-section .section-header .header-label {
	display: block;
	margin: 0 0 5px;
	font-weight: 700;
	text-transform: uppercase;
	color: #999;
}
.content-section .section-header .header-title {
	font-size: 2.4em;
	line-height: 1.2;
	margin: 0;
}
.content-section .section-body {
	padding: 0 75px;
}
/* section backgrounds */
.content-section.section-controls {
	background: url(images/section-bg-controls-red.jpg) center center no-repeat #900;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
/* use this for content previewing */
.content-preview-cover {
	position: relative;
	height: 200px;
	overflow: hidden;
}
.content-preview-cover:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	content: "";
	background: -moz-linear-gradient(bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to top, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
	z-index: 10;
}

/* geo shape content */
.content.content-geo-bg {
	position: relative;
	z-index: 5;
}
.content.content-geo-bg:before {
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 95%;
    background: rgba(0, 0, 0, .05);
}

/* tab content */
.tab-content .content-section {
	padding: 0;
}

/* content helpers */
.content-small p {
	font-size: .85em;
}

/* -------------------- Posts -------------------- */
/* post wrap */
.post-wrap {
	position: relative;
	width: 800px;
	margin: 0 auto;
}

/* post header */
.post-header {
	padding: 0 0 20px;
	margin: 0 0 20px;
	border-bottom: 1px solid #ddd;
}
.post-header.header-with-image {
	position: relative;
	min-height: 180px;
	padding: 0 0 0 260px;
	margin: 0 0 20px;
}
.post-header.header-with-image .post-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 235px;
}
.post-header.header-with-image .post-image img {
	box-shadow: 0 0 10px rgba(0, 0, 0, .5);
}
.post-header .user {
	margin: 0;
}

/* post author */
.post-author .user-label {
	padding-top: 5px;
}

/* post actions */
.post-actions {
	padding: 10px 0 0;
	text-align: right;
}

/* post image */
.post-image {
	position: relative;
	margin: 0 0 20px;
}
.post-image .image-icon {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 54px;
	padding: 15px 0;
	background: #fff;
	color: #036;
	font-size: 1.5em;
	text-align: center;
	z-index: 5
}
.post-image img {
	display: block;
	width: 100%;
}

/* post body */
.post-body {
	display: table;
	width: 100%;
}
/* post section */
.post-section {
	padding: 50px;
}
.post-section.section-dark {
	background: #151515; 
}
.post-section.section-utility {
	padding: 50px 30px;
}
.post-section.section-utility .user p {
	color: #999;
}
/* post content */
.post-content {
}
.post-content h2 {
	color: #2d3446;
}
.post-content img {
	max-width: 100%;
}
.post-content.content-video {
	position: relative;
	min-height: 400px;
	padding-left: 420px;
	margin: 0 0 20px;
}
.post-content.content-video .amazon_video {
	position: absolute;
	top: 0;
	left: 0;
	width: 400px;
}
.post-content.content-video .video-details {
	margin: 0 0 20px;
}
.post-content.content-video .video-details p strong {
	display: block;
}
/* post sidebar */
.post-sidebar {
	display: table-cell;
	width: 27.5%;
	padding: 30px;
	background: #e5e5e5;
}
/* post metrics */
.post-metrics {
	margin: 0 0 30px; 
}
/* post list */
.post-list {
	list-style: none;
}
.post-list .list-item {
	padding: 15px 0;
	border-top: 1px solid rgba(255, 255, 255, .15);
}
.post-list .list-item:first-child {
	padding-top: 0;
	border-top: none;
}
.post-list .list-item .item-label {
	display: block;
	font-size: .85em;
	margin: 0 0 5px;
}
.post-list .list-item .item-title {
	margin: 0 0 10px;
}
.post-list .list-item .item-desc {
	font-size: .85em;
	margin: 0 0 10px;
}
/* ----- post navigation ----- */
.post-nav {
	padding: 20px;
	margin: 0 0 15px;
	background: #f5f5f5;
	border: 1px solid #ddd;
}
.post-nav .nav-links {
	display: table;
	width: 100%;
}
.post-nav .nav-previous,
.post-nav .nav-next {
	display: table-cell;
	width: 50%;
}
.post-nav .nav-previous {
	border-right: 1px solid #ddd;
}
.post-nav .nav-next {
	text-align: right;
	border-left: 1px solid #ddd;
}
.post-nav .nav-previous:before,
.post-nav .nav-next:before {
	display: block;
	font-size: .85em;
	font-weight: 700;
	color: #999;
	margin: 0 0 5px;
}
.post-nav .nav-previous:before {
	content: "Previous";
}
.post-nav .nav-next:before {
	content: "Next";
}
.post-nav a {
	display: block;
	position: relative;
	font-size: 1.1em;
	font-weight: 700;
	line-height: 1.4;
}
.post-nav a:hover {
	color: #000;
	text-decoration: none;
}
.post-nav .nav-previous a {
	padding: 10px 10px 10px 40px;
}
.post-nav .nav-next a {
	padding: 10px 42px 10px 10px;
	text-align: right;
}
.post-nav .nav-previous a:before,
.post-nav .nav-next a:before {
	position: absolute;
	top: 7px;
	font-family: FontAwesome;
	font-size: 1.8em;
	line-height: 1;
}
.post-nav .nav-previous a:before {
	left: 0;
	content: "\f137";
}
.post-nav .nav-next a:before {
	right: 0;
	content: "\f138";
}

/* -------------------- Sidebar -------------------- */
.sidebar {

}
.sidebar-nav {
	list-style: none;
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 400;
	margin: 0 0 20px;
}
.sidebar-nav li {
	margin: 0;
	border-top: 1px solid rgba(0, 0, 0, .15);
}
.sidebar-nav li a {
	position: relative;
	display: block;
	padding: 20px 20px 20px 70px;
	color: #333;
	text-decoration: none;
	cursor: pointer;
}
.sidebar-nav li a:hover {
	background: #151515;
	color: #fff;
}
.sidebar-nav li a .nav-icon {
	position: absolute;
	top: 10px;
	left: 10px;
	width: 50px;
	padding: 10px 0;
	font-size: 2em;
	line-height: 1;
	text-align: center;
	border-radius: 100px;
}
.sidebar-nav li a .nav-label {
	display: block;
	font-size: .75em;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	color: #999;
	margin: 0 0 3px;
}
.sidebar-nav li.active a {
	background: #fff;
	color: #333;
}
/* sticky nav */
.sidebar-nav.nav-sticky {
	position: sticky;
}

.sidebar-cta-container {
	padding: 10px;
	margin: 0 0 20px;
	background: #f9f0f9;
	border: 1px solid #da39e0;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}
.sidebar-cta-container p {
	color: #333;
	margin: 0 0 10px;
	font-size: 1.2em;
	line-height: 1.4em;
	text-align: center;
}
.sidebar-cta-container .cta-button {
	margin: 0;
	line-height: 1.5em;
}


/* ======================================================================================================= */
/* Components
/* ======================================================================================================= */
/* -------------------- Accordions -------------------- */
.accordion {
    width: 100%;
    border-top: 1px solid #ddd;
}
.accordion-toggle {
    position: relative;
    display: block;
    padding: 20px 20px 20px 60px;
    font-weight: 400;
    line-height: 1.5;
    text-decoration: none !important;
    color: #333;
}
.accordion-toggle:hover {
    text-decoration: none;
}
.accordion-toggle .toggle-icon {
    position: absolute;
    top: 17px;
    left: 15px;
    font-size: 1.5em;
    line-height: 1;
    color: #1ab1db;
}
.accordion-toggle.open {
    color: #1ab1db;
}
.accordion-content {
    display: none;
    padding: 0 20px 20px 60px;
}
.accordion-content p {
    font-size: .9em;
}
.accordion-content p:last-child {
    margin: 0;
}
/* -------------------- Cards -------------------- */
.card {
	position: relative;
	top: 0;
	background: none;
	border: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.card:hover {
	top: -10px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}
.card .card-image {
	position: relative;
	background: #151515;
}
.card .card-image > a {
	position: relative;
	display: block;
}
.card .card-image img {
	display: block;
	width: 100%;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.card:hover .card-image img {
	box-shadow: none;
}

.card .card-image img.post-thumbnail {
  border-left-width: 15px;
  border-right-width: 0;
  border-top-width: 0;
  border-bottom-width: 0;
  border-style: solid;
  border-color:#000;
}

.card .card-image img.post-thumbnail.blues {
  border-color:#0069aa;
}
.card .card-image img.post-thumbnail.boogie {
  border-color:#f9d833;
}
.card .card-image img.post-thumbnail.classical {
  border-color:#59caf6;
}
.card .card-image img.post-thumbnail.contemporary {
  border-color:#59caf6;
}
.card .card-image img.post-thumbnail.country {
  border-color:#f9d833;
}
.card .card-image img.post-thumbnail.disney {
  border-color:#EFB9D3;
}
.card .card-image img.post-thumbnail.foundations {
  border-color:#019966;
}
.card .card-image img.post-thumbnail.fundamentals {
  border-color:#019966;
}
.card .card-image img.post-thumbnail.funk {
  border-color:#f3773b;
}
.card .card-image img.post-thumbnail.gospel {
  border-color:#f3773b;
}
.card .card-image img.post-thumbnail.holiday {
	border-image: 
    linear-gradient(
      to bottom, 
      #43C332, #FE2627
    ) 1 100%;
}
.card .card-image img.post-thumbnail.jazz-ballads {
  border-color:#81746c;
}
.card .card-image img.post-thumbnail.jazz-swing {
  border-color:#81746c;
}
.card .card-image img.post-thumbnail.latin-jazz {
  border-color:#ef3e46;
}
.card .card-image img.post-thumbnail.new-age {
  border-color:#59caf6;
}
.card .card-image img.post-thumbnail.pop {
  border-color:#f9d833;
}
.card .card-image img.post-thumbnail.ragtime {
  border-color:#8c27b1;
}
.card .card-image img.post-thumbnail.rnb {
  border-color:#ec7845;
}
.card .card-image img.post-thumbnail.rock {
  border-color:#f9d833;
}
.card .card-image img.post-thumbnail.smooth-jazz {
  border-color:#f3773b;
}
.card .card-image img.post-thumbnail.stride {
  border-color:#8c27b1;
}

.card .card-image img.image-avatar {
	height:55px; 
	width:55px; 
	border-radius:50%; 
	position:absolute; 
	top: 12px; 
	left: 27px; 
	border: 2px #FFF solid; 
}

.card .card-image .image-cover {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 20px 30px;
	background: linear-gradient(transparent, rgba(0, 0, 0, .75));
}
.card .card-image .image-cover .meta {
	display: block;
	margin: 0 0 10px;
}
.card .card-image .image-cover .meta .meta-label {
	color: rgba(255, 255, 255, .5);
}
.card .card-image .image-cover .cover-title {
	display: block;
	font-size: 1em;
	font-family: 'Nunito Sans', serif;
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.6;
	color: #fff;
}
.card .card-image .image-tags {
	position: absolute;
	bottom: 20px;
	left: 0;
}
.card .card-image .image-label {
	position: absolute;
	bottom: 20px;
	left: 0;
	padding: 7px 15px;
	font-weight: 400;
	text-transform: uppercase;
	background: #fc0;
	color: #151515;
}
.card .card-image .image-content {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 15px;
	background: linear-gradient(transparent, rgba(0, 0, 0, .8));
}

.card .card-content {
	padding: 20px 30px;
}
.card .card-content p {
	font-size: .85em;
	line-height: 1.8;
}
.card .card-content p:last-child {
	margin: 0;
}
.card .card-content.content-large .meta {
	display: block;
	font-size: 1em;
	margin: 0 0 10px;
}
.card .card-content.content-large p {
	font-size: 1em;
}
/*
.card .card-content .content-desc {
	position: relative;
	max-height: 90px;
}
.card .card-content .content-desc:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 90px;
	z-index: 5;
	background: -moz-linear-gradient(bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to top, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
}
*/
.card .card-title {
	line-height: 1.4;
	margin: 0 0 10px;
}
.card .card-title a {
	display: block;
	color: #0b1c21;
}
.card .card-title a:hover {
	color: #1ab1db;
	text-decoration: none;
}
.card .card-sub-title {
	font-weight: 300;
}
.card .meta-label i {
	color: #999;
	margin: 0 3px 0 0;
}
/* equal height cards */
.card.card-equal-height {
	min-height: 430px;
}
/* dark cards */
.card.card-dark {
	background: #333;
	border: none;
}
.card.card-dark .meta-label {
	color: #fff;
}
.card.card-dark .card-title a:hover {
	color: #fff;
}
/* product cards */
.card.card-product {
	border: none;
	margin: 0 0 30px;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
}
.card.card-product .card-banner {
	position: absolute;
	top: -40px;
	left: 0;
	width: 100%;
	height: 40px;
	padding: 12px;
	background: #19191d;
	color: #fff;
	font-weight: 400;
	letter-spacing: 3px;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
}
.card.card-product .card-header {
	padding: 40px; 
}
.card.card-product .card-header .card-title {
	color: #fff;
	margin: 0;
}
.card.card-product .card-header .card-title span {
	display: block;
	font-weight: 300;
}
.card.card-product .card-header.header-black {
	background: url(images/polygon-banner-black.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.card.card-product .card-header.header-blue {
	background: url(images/polygon-banner-blue.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.card.card-product .card-header.header-green {
	background: url(images/polygon-banner-green.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.card.card-product .card-header.header-purple {
	background: url(images/polygon-banner-purple.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.card.card-product .card-header.header-red {
	background: url(images/polygon-banner-red.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.card.card-product .card-content {
	padding: 40px;
}
.card.card-product .card-content p {
	font-size: 1em;
}
.card.card-product .card-content .headline-content p {
	font-size: 1.2em;
	line-height: 1.6;
	margin: 0 0 20px;
}
.card.card-product .product-icon {
	display: block;
	width: 75px;
	margin: 0 0 15px;
}
/* wide cards */
.card.card-wide {
	top: 0;
	min-height: 200px;
	padding: 30px 100px 0 320px;
	margin: 0 0 30px;
	border-top: 1px solid #ddd;
	overflow: hidden;
}
.card.card-wide:hover {
	transform: scale(1.025);
	box-shadow: none;
}
.card.card-wide .card-image {
	position: absolute;
	top: 30px;
	left: 0;
	width: 320px;
	max-height: 180px;
	overflow: hidden;
}
.card.card-wide .card-content {
	padding: 0 30px;
}
.card.card-wide .card-action {
	position: absolute;
	top: 30px;
	right: 20px;
}
/* trans cards */
.card.card-trans {
	background: rgba(0, 0, 0, .5);
	border: none;
}
.card.card-trans .card-title {
	color: #fff;
}
.card.card-trans .card-sub-title {
	color: #fff;
}

/* -------------------- Checkout -------------------- */
.checkout-container {
	padding: 30px;
	background: rgba(0, 0, 0, .7);
}

/* checkout columns */
.checkout-container.container-columns {
	padding: 0;
}
.checkout-container.container-columns .mm-checkoutContainer {
	margin: 0;
}
.checkout-container.container-columns .mm-checkoutContainer .mm-formError {
	margin: 0;
}
/* margin out all p's to avoid WP spacing issues */
.checkout-container.container-columns p {
	margin: 0;
}
.checkout-container.container-columns br {
	display: none;
}
/* add back margin to specific p's */
.checkout-container.container-columns .headline {
	margin: 0 0 20px;
}
.checkout-container.container-columns .mm-productDesc,
.checkout-container.container-columns .checkout-terms,
.checkout-container.container-columns .checkout-info {
	margin: 0 0 10px;
}
.checkout-container.container-columns .checkout-info {
	font-size: .9em;
	line-height: 1.4;
}
.checkout-column {
	display: table-cell;
	padding: 50px;
	vertical-align: top;
}
.checkout-column.column-product {
	width: 45%;
	background: #2D3446;
}
.checkout-column.column-product img {
	display: block;
	width: 170px;
	margin: 0 0 20px;
}
.checkout-column.column-product .mm-checkoutSection {
	padding: 0;
}
.checkout-column.column-product .section-image {
	display: block;
	margin: 0 0 15px;
}
.checkout-column.column-product .product-title {
	font-weight: 700;
	line-height: 1.2;
	color: #fff;
}
.checkout-column.column-product .mm-productDesc {
	color: #ccc;
}
.checkout-column.column-product a:hover {
	color: #fff;
}
.checkout-column.column-product ul.list-nav li {
	padding: 0;
}
.checkout-column.column-product ul.list-nav li a:hover {
	background: rgba(255, 255, 255, .15);
}
.checkout-column.column-payment {
	width: 55%;
	background: #fff;
}
.checkout-column.column-payment .row {
	margin-right: -5px;
	margin-left: -5px;
}
.checkout-column.column-payment .row > [class^="col-"] {
	padding-right: 5px;
	padding-left: 5px;
}
.checkout-column.column-payment p.detail {
	margin: 0 0 10px;
}
.checkout-column.column-payment input {
	outline: none;
}
.checkout-column.column-payment .mm-checkoutInfoBlock {
	padding: 0;
	border: none;
	border-radius: 0;
}
.checkout-column.column-payment .mm-checkoutInfoBlock h3 {
	font-size: 1em;
	text-transform: uppercase;
	margin: 0 0 10px;
}
.checkout-column.column-payment .mm-checkoutInfoBlock .mm-ccLogos img {
	width: 166px;
	margin: 0 0 10px;
}
.checkout-column.column-payment .mm-checkoutInfoBlock .billing-details {
	font-size: 1em;
	text-transform: none;
}
.checkout-column.column-payment .mm-paymentbuttons {
	margin: 0 0 20px;
}
.checkout-column.column-payment .mm-paymentbuttons .mm-button {
	width: 100% !important;
}
.checkout-column.column-payment .checkout-waiver {
	padding: 15px;
	margin: 0 0 15px;
	border: 1px solid #ccc;
}
.checkout-column.column-payment .checkout-waiver .mm-remember-me {
	margin: 15px 0 0 !important;
}
.checkout-column.column-payment .checkout-waiver label {
	display: block;
}
/* new Stripe elements fields */
.checkout-column.column-payment .mm-stripe-elements-container {
	height: auto;
	padding: 15px;
	background: #eee;
	border: none;
	border-radius: 0;
	box-shadow: none;
}
.checkout-column.column-payment #mm_field_cc_number_div,
.checkout-column.column-payment #mm_field_cc_cvv_div,
.checkout-column.column-payment #mm_field_cc_exp_div {
	width: 100%;
}

.g-recaptcha {
	margin: 0 0 20px;
}

/* ---------- Comments ---------- */
.comments-container {
	padding: 30px 0 0;
	margin: 30px 0 0;
	border-top: 1px solid #ccc;
}
/* hide all the default WP stuff */
.comments-container .form-allowed-tags,
.comments-container .logged-in-as,
.comments-container br {
	display: none;
}
.comment-list {
	list-style: none;
	margin: 0 0 20px;
}
.comment-list > .comment {
	position: relative;
	padding: 15px 0 0 54px;
	border-top: 1px solid #ddd;
}
.comment-list > .comment.bypostauthor:after {
	position: absolute;
	top: 15px;
	right: 0;
	content: "Instructor";
	font-size: .8em;
	font-weight: 700;
	text-transform: uppercase;
	color: #1ab1db;
	z-index: 5;
}
.comment-list > .comment .avatar {
	position: absolute;
	top: 15px;
	left: 0;
	width: 44px;
	border-radius: 50px;
}
.comment-list > .comment .comment-meta {
	font-size: .85em;
	font-weight: 700;
	color: #333;
	margin: 0 0 10px;
}
.comment-list > .comment.bypostauthor .comment-meta {
	padding-right: 100px;
}
.comment-list > .comment .comment-meta .fn {
	color: #09c;
}
.comment-list > .comment .comment-meta .fn > a {
	color: #09c;
}
.comment-list > .comment .comment-meta a {
	color: #aaa;
}
.comment-list > .comment .comment-content .wp-review-comment-rating {
	display: block;
	margin: 0 0 10px;
}
.comment-list > .comment .comment-content .edit-link {
	position: absolute;
	top: 15px;
	right: 0;
	font-size: .8em;
}
.comment-list > .comment .comment-content p {
	font-size: .85em;
}
.comments-container .comment-respond {
	padding: 15px 0 0;
	border-top: 1px solid #ddd;
}
.comments-container .comment-respond label {
	color: #333;
}
.comments-container .reply {
	margin: 0 0 15px;
}
.comments-container .reply a {
	display: inline-block;
	padding: 7px 20px;
	font-size: .8em;
	font-weight: 700;
	line-height: 1;
	border-radius: 3px;
	border: 1px solid;
	text-decoration: none;
}
.comments-container .reply a:hover {
	background: #09c;
	color: #fff;
	border-color: #09c;
}
.comment-list > .comment .children {
 	border-left: 2px solid #eee;
 	padding-left: 30px;
    margin: 0;
}
.comment-reply-link {
	font-size: .8em;
}

/* -------------------- Courses -------------------- */
.course-nav .nav-label {
	display: block;
	font-weight: 400;
	letter-spacing: 3px;
	text-transform: uppercase;
}
.course-nav.affix {
	position: fixed !important;
	top: 50px;
	width: 300px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.course-nav.affix-bottom {
	opacity: 0;
}
.course-progress {
	position: relative;
	width: 100%;
	height: 20px;
	margin: 0 0 20px;
	background: #ddd;
	border-radius: 20px;
}
.course-progress .progress-bar {
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	background: #96dc68;
	background: -moz-linear-gradient(-45deg, #96dc68 1%, #5fc66d 100%);
	background: -webkit-linear-gradient(-45deg, #96dc68 1%,#5fc66d 100%);
	background: linear-gradient(135deg, #96dc68 1%,#5fc66d 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#96dc68', endColorstr='#5fc66d',GradientType=1 );
	border-radius: 20px;
	z-index: 5;
}

.course-progress-label {
	display: block;
	font-weight: 300;
	line-height: 1.4;
	margin: 10px 0;
}

/* -------------------- Features -------------------- */
.feature {
	position: relative;
	min-height: 60px;
	padding: 0 0 0 90px;
	margin: 0 0 20px;
}
.feature .feature-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 70px;
	font-size: 3.5em;
	line-height: 1;
	text-align: center;
}
.feature .feature-label {
	display: block;
	margin: 0 0 10px;
	font-weight: 400;
}
.feature .feature-title {
	display: block;
	margin: 0 0 10px;
	font-weight: 700;
	line-height: 1.3;
}
.feature .feature-desc {
	display: block;
	margin: 0 0 5px;
}
.feature p {
	color: #333;
}
/* feature colors */
.feature.feature-color {
	padding: 30px 30px 30px 100px;
}
.feature.feature-color .feature-icon {
	top: 30px;
	left: 30px;
	font-size: 3em;
	width: 60px;
	color: #fff;
}
.feature.feature-color .feature-title,
.feature.feature-color p {
	color: #fff;
}
/* box features */
.feature.feature-box {
	min-height: 260px;
	padding: 30px 30px 30px 110px;
	margin: 0;
	background: #f5f5f5;
	border: 2px solid #eee;
}
.feature.feature-box .feature-icon {
	top: 25px;
	left: 25px;
}
/* small features */
.feature.feature-small {
	padding-left: 70px;
}
.feature.feature-small .feature-icon {
	width: 50px;
	font-size: 2.5em;
}
.feature.feature-small p {
	font-size: .85em;
}
.feature.feature-small p.headline {
	font-size: 1.2em;
}
/* stacked features */
.feature.feature-stacked {
	padding: 0;
}
.feature.feature-stacked .feature-icon {
	display: block;
	position: static;
	font-size: 3em;
	text-align: left;
	margin: 0 0 20px;
}
/* feature links */
.feature.feature-link {
	padding: 0;
	margin: 0;
}
.feature.feature-link > a {
	display: block;
	padding: 30px 60px 30px 80px;
	background: #fff;
	color: #777;
	text-align: left;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.feature.feature-link > a:hover {
	background: rgba(0, 0, 0, .1);
	text-decoration: none;
}
.feature.feature-link > a:after {
	position: absolute;
	top: 50%;
	right: 30px;
	height: 50px;
	margin-top: -25px;
	content: "\f105";
	font-family: FontAwesome;
	font-size: 3em;
	font-weight: 300;
	line-height: 1;
	color: rgba(0, 0, 0, .25);
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.feature.feature-link .feature-icon {
	top: 30px;
	left: 30px;
	width: 40px;
	font-size: 2em;
	line-height: 1;
	color: #1ab1db;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.feature.feature-link .feature-title {
	display: block;
	font-size: 1.2em;
	text-transform: none;
	color: #333;
	margin: 0 0 5px;
}
.feature.feature-link .feature-desc {
	display: block;
	margin: 0 0 10px;
	font-size: 1em;
	line-height: 1.4;
}
.feature.feature-link .feature-more {
	font-weight: 700;
	color: #1489cc;
}
/* light feature links */
.feature.feature-link.link-light > a {
	background: #1ab1db;
}
.feature.feature-link.link-light .feature-icon {
	color: #fff;
}
.feature.feature-link.link-light .feature-title {
	color: #fff;
}
.feature.feature-link.link-light .feature-desc {
	color: #fff;
}
.feature.feature-link.link-light > a:hover {
	background: #fff;
}
.feature.feature-link.link-light > a:hover .feature-icon {
	color: #1ab1db;
}
.feature.feature-link.link-light > a:hover .feature-title {
	color: #0b1c21;
}
.feature.feature-link.link-light > a:hover .feature-desc {
	color: #888;
}
/* stacked feature links */
.feature.feature-link.link-stacked > a {
	box-shadow: none;
	border-top: 1px solid #ddd;
}

/* -------------------- Filter -------------------- */
.filter {
	position: relative;
}
.filter .btn-group {
	display: inline-block;
}
.filter .btn-group .btn {
	padding: 8px 20px;
}
.filter .btn-group .btn i {
	margin-right: 5px;
}
.filter .btn-group .btn .caret {
	margin-left: 5px;
}
.filter .btn-group.open .btn {
	background: #ddd;
	color: #333;
	border-color: #ddd;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	box-shadow: none;
}
.filter .btn-group .dropdown-menu {
	min-width: 200px;
	padding: 10px;
	margin: 0;
	background: #ddd;
	border: none;
	border-radius: 0;
	box-shadow: none;
	font-size: 1em;
}
.filter .btn-group .dropdown-menu {
	margin: 0;
}
.filter .btn-group .dropdown-menu li {
	margin: 0;
	border-top: 1px solid rgba(0, 0, 0, .15);
}
.filter .btn-group .dropdown-menu li:first-child {
	border-top: none;
}
.filter .btn-group .dropdown-menu li a {
	display: block;
	padding: 15px;
	color: #666;
}
.filter .btn-group .dropdown-menu li a:hover {
	background: #fff;
	color: #000;
}
/* filter group */
.filter-group {
	padding: 15px 0 0;
	margin: 0 0 15px;
	border-top: 2px solid #ddd;
}
.focus-checkboxes .filter-group:first-child {
	padding: 0;
	border-top: none;
}
.filter-group .group-title {
	position: relative;
	display: block;
	padding-right: 30px;
	margin: 0 0 15px;
	font-weight: 700;
	color: #0462a4;
}
.filter-group .group-title .title-info-link {
	position: absolute;
	top: 0;
	right: 0;
}
.filter-group label {
	position: relative;
	display: block;
	padding: 7px 0 7px 20px;
	font-size: .8em;
	font-weight: 700;
	cursor: pointer;
}
.filter-group label:hover {
	color: #08c;
}
.filter-group label i {
	position: absolute;
	top: 8px;
	right: 0;
}
.filter-group label input[type="checkbox"] {
	position: absolute;
	top: 8px;
	left: 0;
	margin: 0;
}
.filter-group input[type="text"] {
	background: #fff;
	margin: 0 0 10px;
}

/* ----- filter facets ----- */
.filter .facetwp-facet {
	margin: 0;
}
/* search filtering */
.filter .fs-search {
	padding: 10px;
}
.filter .fs-search input {
	padding: 10px;
	font-size: .8em
}
.filter .fs-option,
.filter .fs-search ,
.filter .fs-optgroup-label {
	padding: 10px;
}
.filter .fs-wrap.multiple .fs-option {
	padding-left: 30px;
}
.filter .fs-option .fs-option-label,
.filter .fs-search .fs-option-label,
.filter .fs-optgroup-label .fs-option-label {
	font-size: .8em;
}
/* checkbox/radio filtering */
.filter .facetwp-checkbox,
.filter .facetwp-radio {
	position: relative;
	font-size: .85em;
	font-weight: 700;
	margin: 0 0 15px;
}
.filter .facetwp-checkbox:hover,
.filter .facetwp-radio:hover {
	color: #1ab1db;
}
/* facet color coding for skill_level */
.facetwp-facet-skill_level  .facetwp-checkbox:after {
	position: absolute;
	top: 0;
	right: 0;
	font-family: FontAwesome;
	content: "\f111";
}
.facetwp-facet-skill_level  .facetwp-checkbox:nth-child(1):after {
	color: #5fc66d;
}
.facetwp-facet-skill_level  .facetwp-checkbox:nth-child(2):after {
	color: #1ab1db;
}
.facetwp-facet-skill_level  .facetwp-checkbox:nth-child(3):after {
	color: #fe8c25;
}
/* fsslect */
.filter .facetwp-type-fselect .fs-wrap,
.filter .facetwp-type-fselect .fs-dropdown {
	width: 100%;
}

/* -------------------- Image Feature -------------------- */
.image-feature {
	position: relative;
	background: #000;
	margin: 0 0 30px;
}
.image-feature .feature-cover {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 30px;
	background: linear-gradient(transparent, rgba(0, 0, 0, .75));
}
.image-feature .feature-cover .cover-label {
	display: block;
	margin: 0 0 10px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .5);
}
.image-feature .feature-cover .cover-title {
	display: block;
	font-size: 2em;
	font-weight: 700;
	letter-spacing: -1px;
	color: #fff;
	margin: 0;
}

/* -------------------- Image Tags -------------------- */
.image-tag {
	display: inline-block;
	padding: 7px 20px;
	font-family: 'Nunito Sans';
	font-size: .85em;
	font-weight: 700;
	text-transform: uppercase;
	background: #fff;
	color: #151515;
	cursor: pointer;
}
.image-tag.tag-free {
	background: #fc0;
	color: #151515; 
}
.image-tag.tag-new {
	background: #d82027;
	color: #fff;
}


/* -------------------- Items -------------------- */
.item {
	position: relative;
	padding: 20px 0;
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.item .meta a {
	color: #333;
}
.item .meta a:hover {
	color: #09c;
}
.item .item-title {
	line-height: 1.2;
	margin: 0 0 5px;
}
.item .item-title a {
	color: #0b1c21;
}
.item .item-title a:hover {
	color: #1ab1db;
	text-decoration: none;
}
.item p {
	margin: 0 0 10px;
}
.item p:last-child {
	margin: 0;
}
.item .item-action {
	position: absolute;
	top: 20px;
	right: 0;
	width: 175px;
	text-align: right;
}
.item .item-action .btn {
	display: block;
	margin: 0 0 10px;
}
.item .item-action .label {
	margin: 10px 0;
}

.item .item-form {
	padding: 20px;
	margin: 20px 0 0;
	background: #fff;
	border: 1px solid #ddd;
}
.item .item-form input,
.item .item-form select,
.item .item-form textarea {
	margin: 0 0 15px;
}
.item .item-form select {
	height: auto;
}

.item.item-light {
	border-color: rgba(255, 255, 255, .25);
}
.item.item-light .item-title a {
	color: #1ab1db;
}
.item.item-light .item-title a:hover {
	color: #fff;
}
/* course items */
.item.item-course {
	padding-right: 0;
}
.item.item-course .course-progress {
	margin: 0;
}
/* items with icon */
.item.item-with-icon {
	min-height: 80px;
	padding: 20px 0 20px 50px;
}
.item.item-with-icon .item-icon {
	position: absolute;
	top: 20px;
	left: 0;
	width: 45px;
}
.item.item-with-icon .item-icon i {
	font-size: 2em;
}
/* items with images */
.item.item-with-image {
	min-height: 190px;
	padding: 20px 0 20px 170px;
}
.item.item-with-image .item-image {
	position: absolute;
	top: 20px;
	left: 0;
	width: 150px;
}
.item.item-with-image .item-image img {
	display: block;
	width: 100%;
	border-radius: 300px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-with-image .item-image.image-square img {
	border-radius: 5px;
}
.item.item-with-image .item-image.image-video img {
	border-radius: 0;
}
.item.item-with-image .item-image img:hover {
	transform: scale(1.05);
}

/* item with actions */
.item.item-with-action {
	padding-right: 175px;
}
.item.item-with-action.item-with-icon.item-small {
	padding-right: 110px;
}
.item.item-with-action.item-with-icon.item-small .item-action {
	width: 100px;
}

/* module items */
.item.item-module {
	padding-left: 65px;
	padding-right: 150px;
}
.item.item-module .item-number {
	position: absolute;
	top: 20px;
	left: 0;
	width: 50px;
	height: 50px;
	padding: 15px 0;
	font-size: 1em;
	font-weight: 700;
	text-align: center;
	background: #0c253c;
	color: #fff;
	border: 2px solid;
	border-radius: 100px;
}
.item.item-module p {
	font-size: .85em;
}
.item.item-module .item-action {
	width: 130px;
}

/* image icons */
.item.item-with-image .item-image.image-icon a {
	display: block;
	padding: 39px 0;
	font-size: 4em;
	line-height: 1;
	text-align: center;
}

/* items with numbers */
.item.item-with-number {
	padding: 20px 0 20px 65px;
}
.item.item-with-number .item-number {
	position: absolute;
	top: 20px;
	left: 0;
	width: 51px;
	padding: 12px 0;
	font-size: 1.2em;
	font-weight: 700;
	text-align: center;
	background: #333;
	color: #fff;
	border-radius: 100px;
}
.item.item-with-number .item-content p {
	font-size: .85em;
}
/* large items */
.item.item-large.item-with-image {
	min-height: 270px;
	padding-left: 320px;
}
.item.item-large.item-with-image .item-image {
	width: 300px;
}
/* small items */
.item.item-small.item-with-image {
	min-height: 120px;
	padding-left: 100px;
}
.item.item-small .item-image {
	width: 80px;
}
.item.item-small p {
	font-size: .85em;
}
/* item list */
.item-list .item:first-child {
	padding-top: 0;
	border-top: none; 
}
.item-list .item.item-with-image:first-child .item-image {
	top: 0;
}
/* event items */
.item.item-event {
	min-height: 140px;
	padding: 20px 150px 20px 100px;
}
.item.item-event:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 0;
	width: 2px;
	height: 75%;
	background: #2e3b46;
}
.item.item-event .item-icon {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 60px;
	font-size: 3.5em;
	line-height: 1;
	color: #2e3b46;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-event .item-action {
	position: absolute;
	top: 20px;
	right: 0;
}

/* light items */
.item.item-light {
	border-color: rgba(255, 255, 255, .15);
}
.item.item-light p {
	color: rgba(255, 255, 255, .75);
}
.item.item-light .item-title {
	color: #fff;
}
.item.item-light .item-title a:hover {
	color: #fff;
}

/* ---------- Loading ---------- */
.loading {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 2000;
}
.loading-status {
	position: absolute;
    top: 40%;
    left: 50%;
    width: 250px;
    margin-left: -125px;
    padding: 30px 0;
    background: rgba(0, 0, 0, .7);
    color: #fff;
    font-weight: 700;
    text-align: center;
    z-index: 2001;
}
.loading-status .loading-icon {
	display: inline-block;
    width: 40px;
    height: 40px;
    margin-right: 10px;
    vertical-align: middle;
}

/* -------------------- Meta -------------------- */
.meta {
	margin: 0 0 5px;
	font-size: .85em;
}
.meta .meta-label {
	display: inline-block;
	margin: 0 10px 5px 0;
	font-weight: 700;
	color: #778c8a;
}
.meta .meta-label i {
	margin-right: 3px;
}
.meta .meta-label.label-author {
	font-weight: 700;
	color: #1ab1db;
}
.meta .meta-label.label-cat {
}
.meta .meta-label.label-type {
	font-weight: 700;
	text-transform: capitalize;
}
.meta .meta-label.label-date {
	color: #999;
}
.meta .meta-label.meta-block {
	display: block;
}
.meta .meta-spacer {
	margin: 0 7px;
	color: #ccc;
}
.meta a {
	color: #151515;
}
.meta a:hover {
	color: #09c;
}
.meta .meta-label.label-author a {
	color: #1ab1db;
}
.meta .meta-label.label-author a:hover {
	color: #151515;
}

/* -------------------- Metrics -------------------- */
.metric {
	position: relative;
	padding: 0 0 0 80px;
	margin: 0 0 15px;
}
.metric .metric-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
	font-size: 3.4em;
	line-height: 1;
	text-align: center;
	color: #333;
}
.metric .metric-icon-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
}
.metric.metric-round .metric-icon {
	position: absolute;
	padding: 15px 0;
	font-size: 1.5em;
	line-height: 1;
	border: 2px solid #ccc;
	border-radius: 100px;
}
.metric .metric-label {
	display: block;
	font-weight: 900;
	margin: 0 0 5px;
	color: #0b1c21;
}
.metric .metric-value {
	display: inline-block;
	font-size: 1.5em;
	font-weight: 300;
	letter-spacing: -1px;
	line-height: 1.4;
	color: #333;
	margin: 0 10px 0 0;
}
.metric .metric-value.value-block {
	display: block;
	margin: 0 0 5px;
}
.metric .metric-value.value-inline-item {
	font-size: 1em;
	padding: 5px 10px;
	margin: 0 1px 5px 0;
	background: rgba(0, 0, 0, .1);
}
.metric .metric-value.value-list-item {
	display: block;
	font-size: .85em;
	letter-spacing: 0;
	padding: 10px;
	margin: 0 0 10px;
	color: #333;
	border: 2px solid #ccc;
	border-radius: 3px;
}
.metric .metric-value.value-list-item:hover {
	background: #fff;
	color: #09c;
	text-decoration: none;
}
.metric .list-nav {
	margin: 15px 0 0;
}
.metric .list-nav li a {
	padding: 10px 0;
}
.metric .list-nav li a:hover {
	padding-left: 10px;
}
.metric .list-nav li.active a {
	padding: 10px;
	background: #fff;
}
.metric .table.table-status {
	margin: 0;
}
.metric .table.table-status tr:first-child th,
.metric .table.table-status tr:first-child td, {
	padding-top: 0;
	border-top: none;
}
/* no icons */
.metric.metric-no-icon {
	padding: 15px;
}
/* stacked metrics */
.metric.metric-stacked {
	padding: 20px 0 20px 80px;
	margin: 0;
	border-top: 1px solid #ccc;
}
.metric.metric-stacked .metric-icon {
	top: 20px;
}
/* metric list */
.metric-list .metric-stacked:first-child {
	padding-top: 0;
	border-top: none;
}
.metric-list .metric-stacked:first-child .metric-icon {
	top: 0;
}
/* light metrics */
.metric.metric-light {
	background: rgba(255, 255, 255, .15);
}
.metric.metric-light .metric-label,
.metric.metric-light .metric-value {
	color: #fff;
}
/* mini metrics */
.metric.metric-mini {
	padding: 0 0 0 40px;
}
.metric.metric-mini .metric-icon {
	width: 30px;
	height: 30px;
	font-size: 1.8em;
}
.metric.metric-mini .metric-value {
	font-size: 1.2em;
}
.metric.metric-mini.metric-stacked {
	padding: 15px 0 15px 40px;
}
.metric.metric-mini.metric-stacked .metric-icon {
	top: 15px;
}
/* small metrics */
.metric.metric-small {
	padding: 0 0 0 60px;
}
.metric.metric-small .metric-icon {
	width: 40px;
	height: 40px;
	font-size: 2.5em;
}
.metric.metric-small .metric-label {
	font-size: .85em;
}
.metric.metric-small .metric-value {
	font-size: 1.2em;
}
/* large metrics */
.metric.metric-large {
	padding: 0 0 0 120px;
	margin: 0 0 30px;
}
.metric.metric-large .metric-icon {
	width: 100px;
	font-size: 5em;
}
.metric.metric-large .metric-label {
	font-size: 1.2em;
}
.metric.metric-large .metric-value {
	font-size: 3em;
}

.metric.metric-first {
	padding-top: 0;
	border-top: none;
}
.metric.metric-first .metric-icon {
	top: 0;
}

/* -------------------- Pagination -------------------- */
.pagination {
	display: block;
	padding: 20px 0;
	border-radius: 0;
}
.pagination .page-numbers {
	display: inline-block;
	padding: 5px 10px;
	background: #09c;
	color: #fff;
	border: 2px solid #09c;
}
.pagination .page-numbers:hover {
	background: #036;
	border-color: #036;
}
.pagination .page-numbers.current {
	background: #19191d;
	color: #fff;
	border-color: #19191d;
}

/* -------------------- Paths -------------------- */
.path {
	position: relative;
	margin: 0 0 30px;
	border-right: 1px solid #ddd;
}
.path:before {
	position: absolute;
	top: 0;
	left: 23px;
	content: "";
	width: 3px;
	height: 100%;
	background: #e5e5e5;
	z-index: 5;
}
.path .path-item {
	position: relative;
	min-height: 200px;
	padding: 30px 30px 30px 250px;
	margin-left: 23px;
	border-top: 1px solid #ddd;
}
.path .path-item .item-number {
	position: absolute;
	top: 45px;
	left: -23px;
	width: 50px;
	height: 50px;
	padding: 15px 0;
	font-size: 1.2em;
	font-weight: 700;
	text-align: center;
	background: #19191d;
	color: #fff;
	border: 2px solid #19191d;
	border-radius: 100px;
	z-index: 5;
}
.path .path-item .item-image {
	position: absolute;
	top: 25px;
	left: 45px;
	width: 180px;
	height: 150px;
	background: #000;
	overflow: hidden;
}
.path .path-item .item-image img {
	max-width: inherit;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}

.path .path-item .item-image.image-medium {
	background-color: #fff;
}
.path .path-item .item-image.image-medium img.post-thumbnail{
	width: auto;
	max-height: 150px;
}


.path .path-item .item-image img:hover {
	opacity: .5;
}
.path .path-item .image-tags {
	position: absolute;
	bottom: 20px;
	left: 0;
}
.path .path-item .item-content p:last-child {
	margin: 0;
}
.path .path-item .item-title {
	margin: 0 0 5px;
}
.path .path-item p {
	font-size: .85em;
}
.path .path-item:last-child {
	border-bottom: 1px solid #ddd;
}
.path .path-item .item-tag {
	position: absolute;
	top: 25px;
	right: 20px;
}
/* supplemental items */
.path .path-item.item-supplemental {
	min-height: inherit;
	padding: 20px;
}
.path .path-item.item-supplemental .wrap-toggle-title {
	display: block;
}
.path .path-item.item-supplemental .js-supplemental-toggle .toggle-helper {
	display: inline-block;
	color: #778c8a;
	margin-left: 5px;
}
.path .path-item.item-supplemental .item-number {
	left: 20px;
	background: #ccc;
	color: #fff;
	border-color: #ccc;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.path .path-item.item-supplemental a .item-number {
	background: #1ab1db;
	border-color: #1ab1db;
}
.path .path-item.item-supplemental a .item-number:hover {
	background: #036;
	border-color: #036;
}
.path .path-item.item-supplemental .item-image {
	left: 90px;
}
.path .path-item.item-supplemental .item-wrap {
	display: none; /* hide supplemental content by default and show with JS */
}
/* visible styles */
.path .path-item.item-supplemental.visible {
	min-height: 200px;
	padding-left: 295px;
}
.path .path-item.item-supplemental.visible .item-wrap {
	display: block;
}
.path .path-item.item-supplemental.visible .wrap-toggle-title {
	display: none;
}

/* -------------------- Products -------------------- */
.product-images {
	position: relative;
	padding-left: 70px;
	margin: 0 0 20px;
}
.product-images .cycle-slideshow img {
	display: block;
	width: 100%;
}
.product-images .cycle-thumbs {
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
}
.product-images .cycle-thumbs a {
	display: block;
	max-height: 50px;
	margin: 0 0 15px;
	border: 3px solid #ddd;
	overflow: hidden;
}
.product-images .cycle-thumbs a:hover {
	border-color: #09c;
}
.product-images .cycle-thumbs a.cycle-pager-active {
	border-color: #0c253c;
}
.product-images .cycle-thumbs img {
	display: block;
	max-width: 100%;
}

/* product info */
.product-info {
	margin: 0 0 20px;
}
.product-info .product_title {
	font-size: 2em;
	font-weight: 700;
	letter-spacing: -1px;
}
.product-info .quantity .qty {
	height: 36px;
}
.woocommerce div.product .product-info form.cart .group_table {
	width: 100%;
	margin: 0 0 20px;
}
.woocommerce div.product .product-info form.cart .group_table td {
	padding: 15px 0;
	line-height: 1.4;
	border-top: 1px solid #ddd;
	vertical-align: middle;
}

.product-tabs .woocommerce-tabs ul.tabs {
	float: none;
	width: auto;
	margin: 0;
	border-top: none;
	border-bottom: 1px solid #ddd;
}
.product-tabs .woocommerce-tabs ul.tabs li {
	display: inline-block;
	border: none;
}
.product-tabs .woocommerce-tabs ul.tabs li:after {
	display: none;
}
.product-tabs .woocommerce-tabs ul.tabs li a {
	padding: 15px 20px;
}
.product-tabs .woocommerce-tabs ul.tabs li.active a {
	background: #eee;
}
.product-tabs .woocommerce-tabs .panel {
	float: none;
	width: auto;
	padding: 30px 0;
	background: none;
}
/* product desc */
.product-desc h2 {
	font-size: 1.2em;
	letter-spacing: -0.025em;
}

/* -------------------- Progress Meter -------------------- */
/* sign up progress bar */
.progress-meter {
	font-size: 1em;
	font-weight: 300;
	letter-spacing: -0.025em;
	text-align: center;
	margin: 20px 0;
}
.progress-meter .meter-step {
	position: relative;
	display: inline-block;
	padding: 10px 0 10px 35px;
	margin: 0 20px;
	color: #888;
}
.progress-meter .meter-step i {
	position: absolute;
	top: 5px;
	left: 0;
	width: 26px;
	padding: 7px 0;
	font-size: .8em;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	background: rgba(0, 0, 0, .25);
	color: #fff;
	border-radius: 30px;
}
.progress-meter .meter-step.step-active {
	font-weight: 700;
	color: #000;
}
.progress-meter .meter-step.step-active i {
	background: #000;
}

/* -------------------- Radial -------------------- */
.radial {
	position: relative;
	display: inline-block;
	width: 100px;
}
.radial .radial-circle {
	display: block;
}
.radial .radial-value {
	position: absolute;
	top: 43px;
	width: 100%;
	font-family: 'Nunito Sans';
	font-size: 1.4em;
	font-weight: 700;
	text-align: center;
}
.radial .radial-label {
	display: block;
	font-weight: 700;
	text-align: center;
}

/* progress radials */
.progress-radial {
	position: relative;
	min-height: 100px;
	padding: 0 0 0 120px;
}
.progress-radial .radial {
	position: absolute;
	top: 0;
	left: 0;
}

/* -------------------- Screenshot -------------------- */
.screenshot {
	position: relative;
	margin: 0 0 30px;
	border: 2px solid #ddd;
}
.screenshot .screenshot-bar {
    display: block;
    padding: 7px 10px;
    background: #e5e5e5;
}
.screenshot .screenshot-bar span {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 5px 0 0;
    background: #999;
    border-radius: 100px;
}
.screenshot .screenshot-bar .bar-red {
    background: #e85851;
}
.screenshot .screenshot-bar .bar-yellow {
    background: #eebe4a;
} 
.screenshot .screenshot-bar .bar-green {
    background: #33b351;
}
.screenshot .screenshot-image {
	width: 100%;
	margin: 0 auto;
}
.screenshot .screenshot-image img {
	width: 100%;
}

/* -------------------- Search -------------------- */
.search {
	position: relative;
	background: #eee;
	padding-right: 50px;
	margin: 0 0 15px;
}
.search .search-input {
	padding: 17px 20px;
	background: none;
	border: none;
	outline: none;
}
.search .search-submit {
	position: absolute;
	top: 0;
	right: 5px;
	padding: 15px;
	background: none;
	color: #999;
	font-size: 1.2em;
	border: none;
}
.search .search-submit:hover {
	background: none;
	color: #333;
}

/* -------------------- Status Steps -------------------- */
.status-steps {
	position: relative;
	display: table;
	width: 100%;
}
.status-steps:before {
	content: "";
	position: absolute;
	top: 17px;
	width: 98%;
	height: 2px;
	margin-left: 1%;
	background: rgba(255, 255, 255, .25);
}
.status-steps .step {
	position: relative;
	display: table-cell;
}
.status-steps .step label {
	position: relative;
	display: inline-block;
	padding: 10px 15px 10px 60px;
	background: #036;
	color: #09c;
}
.status-steps .step label .step-number {
	position: absolute;
	top: 0;
	left: 15px;
	padding: 8px 0;
	width: 34px;
	font-size: .85em;
	text-align: center;
	border: 1px solid;
	border-radius: 30px;
}
.status-steps .step.active label {
	color: #fff;
}
.status-steps .step.active label .step-number {
	background: #fff;
	color: #036;
}
.status-steps .step.step-centered {
	text-align: center;
}
.status-steps .step.step-right {
	text-align: right;
}
.status-steps.steps-3 .step {
	width: 33.33%;
}

/* ---------- Steps ---------- */
.step {
	position: relative;
	padding-left: 70px;
	margin: 0 0 20px;
}
.step .step-number {
	position: absolute;
	top: 0;
	left: 0;
	width: 50px;
	height: 50px;
	padding: 15px 0;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	background: #19191d;
	color: #fff;
	border-radius: 100px;
	z-index: 5;
}
.step .step-number.number-active {
	background: #6abf44;
}
.step .step-title {
	line-height: 1.2;
	padding: 15px 0 0;
	margin: 0 0 5px;
}
/* spaced steps */
.step.step-spaced {
	margin: 0 0 40px;
}
/* super steps */
.step.step-super {
	margin: 0 0 30px;
}
.step.step-super:after {
	content: "";
	position: absolute;
	left: 25px;
	top: 45px;
	height: 100%;
	width: 2px;
	background: rgba(0, 0, 0, .1);
}
.step.step-super.step-light:after {
	background: rgba(255, 255, 255, .5);
}
.step.step-super.step-last:after {
	display: none;
}
.step.step-super .step-title {
	margin: 0 0 20px;
}

/* -------------------- Tabs -------------------- */
.tabs-nav {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 900;
}
/* full tabs */
.tabs-nav {
	display: table;
	width: 100%;
	margin: 0 0 30px;
	text-transform: uppercase;
	border: none;
}
.tabs-nav li {
	display: table-cell;
	padding: 0 5px;
	border: none;
}
.tabs-nav li:first-child {
	padding-left: 0;
}
.tabs-nav li:last-child {
	padding-right: 0;
}
.tabs-nav li a {
	display: block;
	padding: 15px;
	margin: 0;
	background: rgba(0, 0, 0, .25);
	color: #333;
	text-align: center;
	border: none;
	border-radius: 4px;
	text-decoration: none;
}
.tabs-nav li a:hover {
	background: #069;
	color: #fff;
	text-decoration: none;
}
.tabs-nav li a:active,
.tabs-nav li.active a {
	background: #036;
	color: #fff;
}
.tabs-nav li a i {
	margin-right: 5px;
}
.tabs-nav.tabs-2 li {
	width: 50%;
}
.tabs-nav.tabs-3 li {
	width: 33.33%;
}
.tabs-nav.tabs-4 li {
	width: 25%;
}
/* light tabs */
.tabs-nav.tabs-light li a {
	background: rgba(255, 255, 255, .25);
	color: #fff;
}
.tabs-nav.tabs-light li a:hover {
	background: #09c;
	color: #fff;
}
.tabs-nav.tabs-light li a:active,
.tabs-nav.tabs-light li.active a {
	background: #fff;
	color: #036;
}

/* -------------------- Tiles -------------------- */
.tile {
	position: relative;
}
.tile a,
.tile:hover a {
	text-decoration: none;
}
.tile .tile-image {
	display: block;
	background: #000;
	overflow: hidden;
}
.tile .tile-image img {
	display: block;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.tile .tile-icon {
	position: absolute;
	top: 0;
	left: 30px;
	width: 60px;
	height: 60px;
	padding: 15px 0;
	font-size: 1.5em;
	text-align: center;
	background: #999;
	color: #fff;
	border-radius: 100px;
	z-index: 10;
}
.tile .tile-status {
	position: absolute;
	top: 30px;
	left: 30px;
	padding: 5px 15px 7px 10px;
	background: rgba(0, 0, 0, .5);
	color: #fff;
	z-index: 10;
}
.tile .tile-status i {
	display: inline-block;
	font-size: 1.2em;
	vertical-align: top;
	margin: 2px 5px 0 0;
}
.tile .tile-status .status-text {
	display: inline-block;
	font-size: .8em;
	color: #fff;
}

.tile .tile-content {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 100px 30px 30px;
	background: linear-gradient(rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .75));
	/*background: rgba(39, 43, 51, .7);*/
	color: #fff;
	z-index: 5;
}
.tile .tile-title {
	font-size: 1.5em;
	font-weight: 700;
	margin: 0 0 10px;
	color: #fff;
}
.tile .tile-label {
	letter-spacing: 5px;
	text-transform: uppercase;
	color: #fff;
	margin: 0 0 15px;
}
.tile .tile-description {
	display: block;
	font-weight: 200;
	color: #fff;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.tile .tile-content .btn {
	width: 100%;
	font-size: .9em;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.tile .tile-description.js-content {
	height: 0;
	overflow: hidden;
}
.tile:hover img {
	opacity: .5;
	transform: scale(1.10);
}
.tile:hover .tile-content {
	background: none;
}
.tile:hover .tile-description.js-content {
	height: 50px;
	overflow: inherit;
}

/* -------------------- Timer -------------------- */
.timer {
	position: relative;
}
.timer .timer-unit {
	display: inline-block;
	margin: 0 20px 20px 0;
	font-size: 2.5em;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
}
.timer .timer-unit span {
	display: block;
	font-size: .5em;
	font-weight: 300;
	color: rgba(255, 255, 255, .5);
}

/* -------------------- Users -------------------- */
.user {
	position: relative;
	min-height: 80px;
	padding-left: 100px;
	margin: 0 0 20px;
}
.user .user-avatar {
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
}
.user .user-avatar img {
	border: 3px solid #fff;
	border-radius: 300px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.user .user-avatar > a:hover img {
	transform: scale(1.10);
}
.user .user-avatar.avatar-square img {
	border-radius: 0;
}
.user .user-label {
	display: block;
	font-size: .85em;
	color: #0b1c21;
	margin: 0 0 5px;
}
.user .user-subtitle {
	display: block;
	margin: 0 0 10px;
	font-size: 1em;
}
.user .user-title {
	display: block;
	line-height: 1.2;
	margin: 0 0 10px;
}
.user p,
.user .user-desc {
	display: block;
	font-size: .85em;
	font-weight: 300;
	line-height: 1.4;
}
.user p:last-child,
.user .user-desc:last-child {
	margin: 0;
}
.user .user-nav {
	list-style: none;
	font-size: .9em;
	margin: 0 0 20px;
}
.user .user-nav li {
	display: inline-block;
	padding: 0 10px;
	margin: 0;
	border-left: 1px solid;
}
.user .user-nav li:first-child {
	padding-left: 0;
	border-left: none;
}
.user .user-nav.nav-light li {
	border-color: rgba(255, 255, 255, .25);
}
.user .user-nav.nav-light li a {
	color: rgba(255, 255, 255, .7);
}
.user .user-nav.nav-light li a:hover {
	color: #fff;
}
/* size variations */
.user.user-micro {
	min-height: 45px;
	padding-left: 55px;
}
.user.user-micro .user-avatar {
	width: 45px;
}
.user.user-small {
	min-height: 60px;
	padding-left: 80px;
}
.user.user-small .user-avatar {
	width: 60px;
}
.user.user-large {
	min-height: 130px;
	padding-left: 140px;
}
.user.user-large .user-avatar {
	width: 120px;
}
.user.user-large p {
	font-size: 1.1em;
}
.user.user-large .user-desc {
	font-size: .9em;
}
/* user cards */
.user.user-card {
	padding: 15px 15px 15px 100px;
	background: #fff;
	box-shadow: 2px 2px 10px rgba(0, 0, 0, .25);
	border-top: 2px solid #ccc;
}
.user.user-card .user-avatar {
	width: 70px;
	top: 15px;
	left: 15px;
}
.user.user-card.card-featured {
	border-top: 2px solid #f60;
}
/* padded users */
.user.user-padded {
	min-height: 110px;
	padding: 15px 15px 15px 110px;
	background: #eee;
	border-left: 2px solid #333; 
}
.user.user-padded .user-avatar {
	top: 15px;
	left: 15px;
}
.user.user-padded.user-small {
	min-height: 90px;
	padding: 15px 15px 15px 90px; 
}

.user.user-no-avatar {
	padding: 0;
}

/* -------------------- Widgets -------------------- */
.widget {
	padding: 30px;
	margin: 0 0 20px;
	border: 1px solid #eee;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.widget .widget-title {
	position: relative;
	padding-right: 30px;
	font-size: 1.5em;
	font-weight: 700;
}
.widget .widget-title > i {
	position: absolute;
	top: 3px;
	right: 0;
}
.widget.widget-form input[type="submit"]{
	display: block;
	width: 100%;
	padding-right: 0;
	padding-left: 0;
}
.widget .widget-list {
	font-family: 'Nunito Sans', sans-serif;
	font-size: 1em;
	list-style: none;
	font-weight: 400;
	margin: 0; 
}
.widget .widget-list li {
	margin: 0;
	border-top: 1px solid #ddd;
}
.widget .widget-list li a {
	display: block;
	padding: 10px 0;
}
.widget .widget-list li a:hover {
	padding-left: 10px;
	background: #fff;
	color: #000;
	text-decoration: none;
}
.widget .widget-list li .children {
	font-size: 1em;
	font-weight: 300;
}
.widget .widget-list li .children li a {
	padding: 10px;
}
.widget .widget-list li .children li a:hover {
	padding-left: 15px;
}
.widget .widget-list.list-nav li a {
	padding: 15px 0;
}
.widget .widget-list.list-nav li a:hover {
	padding-left: 15px;
}

/* Lead Pages widget styling (since they use the .widget class) */
.ldp-content .widget {
	padding: 0;
	margin: inherit;
	border: none;
	box-shadow: none;
}


/* ======================================================================================================= */
/* 05: Footer
/* ======================================================================================================= */
.site-footer {
	padding: 0 0 15px;
	background: #19191d;
}
.site-footer p {
	font-weight: 300;
	color: rgba(255, 255, 255, .5);
}
.site-footer .footer-columns {
	display: table;
	width: 100%;
	background: #2d3446;
	padding: 30px 0;
	margin: 0 0 30px;
}
.site-footer .footer-column {
	display: table-cell;
	width: 33%;
	padding: 30px 50px;
	border-left: 1px dashed rgba(255, 255, 255, .15);
}
.site-footer .footer-column:first-child {
	border-left: none;
}
.site-footer .footer-title {
	font-weight: 700;
	color: #fff;
}
.site-footer hr {
	border-top: 1px solid rgba(255, 255, 255, .15);
	border-bottom: none;
}
.footer-nav {
	list-style: none;
	font-size: .9em;
	font-weight: 300;
	line-height: 1.4;
	margin: 0 0 20px;
}
.footer-nav li {
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, .15);
}
.footer-nav li a {
	position: relative;
	display: block;
	padding: 15px 0 15px 30px;
	color: rgba(255, 255, 255, .5);
}
.footer-nav li a:hover {
	color: #fff;
	text-decoration: none;
}
.footer-nav li i {
	position: absolute;
	top: 16px;
	left: 0;
	opacity: .35;
	width: 20px;
}
/* nav with icons */
.footer-nav.nav-with-icons li a {
	position: relative;
	padding: 10px 10px 10px 30px;
}
.footer-nav.nav-with-icons li a i {
	position: absolute;
	top: 12px;
	left: 0;
	color: #f90;
}

.site-footer input[type="text"],
.site-footer input[type="email"] {
	background: rgba(0, 0, 0, .25);
	border: none;
	box-shadow: none;
	color: #fff;
	width: 100%;
	margin: 0 0 15px;
}
.site-footer input[type="submit"] {
	display: block;
	width: 100%;
}
.site-footer #field_1_1 .gfield_label {
	display: none; /* hide email optin form label */
}

.site-footer .footer-base {
	padding: 0 30px;
}

.copyright {
	font-size: .85em;
	margin: 0;
	opacity: .5;
}
.site-credit {
	font-size: .85em;
	text-align: right;
	opacity: .5;
}
.copyright a,
.site-credit a {
	color: #999;
	text-decoration: none;
}
.copyright a:hover,
.site-credit a:hover {
	color: #fff;
}

/* membership page footers */
.page-template-page-membership .site-footer,
.page-template-page-checkout .site-footer,
.page-template-page-confirmation .site-footer {
	display: none;
}

/* landing page footers */
.page-template-page-lead-pages-lp .site-footer,
.page-template-page-lp-squeeze .site-footer,
.page-template-page-testimonials .site-footer {
	display: none;
}

/* onboarding footers */
.page-template-page-new-member-onboarding .site-footer {
	display: none;
}


/* ======================================================================================================= */
/* 06: Forms
/* ======================================================================================================= */
.form-container {
	padding: 30px;
	border: 2px solid #ddd;
}
.input-container {
	margin: 0 0 15px;
}

label {
	display: inline-block;
	font-weight: 700;
	color: #333;
	margin-bottom: 5px;
}
label span.label-hint {
	font-size: .9em;
	font-weight: normal;
	color: #bbb;
}
label.error {
	font-weight: normal;
	color: #f00;
	margin: 5px 0 0;
}
.label-block {
	display: block;
	margin: 0 0 10px; 
}
/* data labels */
.label-data {
	width: 120px;
	margin: 0 5px 5px 0;
}
/* numbered labels */
.label-number {
	position: relative;
	display: block;
	font-size: 1.2em;
	letter-spacing: -0.025em;
	padding-left: 40px;
	margin: 0 0 10px;
}
.label-number .number {
	position: absolute;
	top: -7px;
	left: 0;
	width: 30px;
	padding: 8px 0;
	font-size: .75em;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	background: #333;
	color: #fff;
	border-radius: 100px;
}
/* option labels */
.label-option {
	position: relative;
	padding-left: 25px;
	cursor: pointer;
}
.label-option.option-solo {
	margin: 15px 0 0;
}
.label-option input {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
}
.label-option .option-title {
	display: block;
	font-size: .9em;
	font-weight: 700;
	margin: 0 0 5px;
}
.label-option .option-desc {
	display: block;
	font-size: .8em;
	font-weight: 400;
	color: #778c8a;
}
/* toggle label */
.label-toggle {
	position: relative;
	padding: 5px 0 0 35px;
	cursor: pointer;
}
.label-toggle .toggle-icon {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.5em;
}
.label-toggle .toggle-icon .toggle-on {
	display: none;
}
.label-toggle .toggle-icon .toggle-off {
	display: inline-block;
	color: #778c8a;
}
.label-toggle.active .toggle-icon .toggle-on {
	display: inline-block;
	color: #0b1c21;
}
.label-toggle.active .toggle-icon .toggle-off {
	display: none;
}
.label-toggle .toggle-label {
	display: block;
	margin: 0 0 5px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.label-toggle:hover .toggle-label {
	color: #1ab1db;
}
.label-toggle.toggle-solo {
	margin: 15px 0 0;
}
/* status labels */
.label-status {
	padding: 10px;
	margin: 0 0 15px;
	letter-spacing: 2px;
	text-transform: uppercase;
}
.label-status.status-unlocked {
	padding: 10px;
	color: #fff;
	background: #669900;
	background: -moz-linear-gradient(left, #669900 0%, #99cc00 100%);
	background: -webkit-linear-gradient(left, #669900 0%,#99cc00 100%);
	background: linear-gradient(to right, #669900 0%,#99cc00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#669900', endColorstr='#99cc00',GradientType=1 );
}
.label-status.status-locked {
	padding: 10px;
	color: #fff;
	background: #900009;
	background: -moz-linear-gradient(left, #900009 0%, #cc0000 100%);
	background: -webkit-linear-gradient(left, #900009 0%,#cc0000 100%);
	background: linear-gradient(to right, #900009 0%,#cc0000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#900009', endColorstr='#cc0000',GradientType=1 );
}

input[type="text"],
input[type="email"],
input[type="phone"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="url"],
textarea {
	display: block;
	width: 100%;
	padding: 15px;
	font-size: .9em;
	letter-spacing: -0.025em;
	height: auto;
	background: #eee;
	border: none;
}
select,
select[multiple], select[size] {
	padding: 15px;
	height: 54px;
	font-size: .9em;
	letter-spacing: -0.025em;
	border-radius: 4px;
	background: #eee;
	color: #333;
	border: 1px solid #ddd;
}
.ui-dialog-content input[type="text"],
.ui-dialog-content input[type="email"],
.ui-dialog-content input[type="password"],
.ui-dialog-content textarea {
	padding: 15px;
}
textarea {
	height: 100px;
}
input[type="submit"],
button[type="submit"] {
	color: #fff;
	background: #1ab1db;
	padding: 15px 30px;
	font-weight: 700;
	font-size: 1em;
	border-radius: 100px;
	border: none;
	cursor: pointer;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
input[type="submit"]:hover,
button[type="submit"]:hover {
	background: #036;
	color: #fff;
}

span.required {
	color: #c00;
}

.mobile-label {
	display: none;
}

.no-results {
	display: none;
}

.contact-info {
	padding-left: 30px;
}

.feedback-form input[type="submit"] {
	background: #1489cc;
	color: #fff;
	border-color: #1489cc;
}
.feedback-form input[type="submit"]:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}

/* ----- authentication (login / password) ----- */
.auth-container {
	width: 50%;
	padding: 50px;
	background: #fff;
	margin: 0 auto;
	box-shadow: 0 0 10px rgba(0, 0, 0, .25);
}
.auth-container br {
	display: none;
}

/* ----- quick form ----- */
.quick-form {
	padding: 30px;
	background: #fff;
	border: 1px solid #eee;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.quick-form .input-container {
	margin: 0;
}
.quick-form input[type="submit"] {
	display: block;
	width: 100%;
}


/* ======================================================================================================= */
/* 07: Tables
/* ======================================================================================================= */
table th {
	color: #333;
}
table th,
table td {
	word-break: break-word;
}

.table {
	line-height: 1.5;
	border-spacing: 0;
}

/* table helpers */
.column-action {
	text-align: right;
}
.column-icon {
	width: 40px;
}

.th-label {
	display: block;
	font-size: .8em;
}

/* action tables */
.table.table-action {
	font-size: .9em;
}
.table.table-action thead {
	text-transform: uppercase;
}
.table.table-action th,
.table.table-action td {
	padding: 15px 0;
	vertical-align: middle;
}
.table.table-action .column-action {
	width: 250px;
}

/* asset tables */
.table.table-assets {
	border-bottom: 1px solid #ddd;
}
.table.table-assets th,
.table.table-assets td {
	padding: 10px;
	border-top: 1px solid #ddd;
	vertical-align: top;
}
.table.table-assets thead th {
	padding: 10px;
}
.table.table-assets tbody {
	font-size: .85em;
}
.table.table-assets .column-action {
	width: 150px;
}

/* comparison tables */
.table.table-compare {
	table-layout: fixed;
	margin: 0 0 30px;
	font-size: 1.2em;
	font-family: 'Nunito Sans', sans-serif;
	color: #333;
}
.table.table-compare thead th {
	padding-left: 10px;
	text-align: center;
	border-bottom: 1px solid #333;
}
.table.table-compare thead th span {
	display: block;
}
.table.table-compare th,
.table.table-compare td {
	padding: 15px 0;
	border-top-color: rgba(0, 0, 0, .1) !important;
}
.table.table-compare tbody th {
	position: relative;
	padding-left: 35px;
	font-weight: 700;
	width: 40%;
}
.table.table-compare tbody th i {
	position: absolute;
	top: 17px;
	left: 0;
	width: 30px;
	font-size: 1.2em;
	text-align: center;
}
.table.table-compare tbody td,
.table.table-compare tfoot td {
	width: 20%;
	padding-left: 10px;
	text-align: center;
}
.table.table-compare tbody td i {
	margin-right: 5px;
}
.table.table-compare p {
	color: #333;
}
.table.table-compare h5 {
	margin: 0 0 5px;
}

/* contact tables */
.table.table-contact {
	border-top: 2px solid #333;
	border-bottom: 1px solid #ccc;
	margin: 0 0 30px;
}
.table.table-contact th,
.table.table-contact td {
	padding: 15px 0;
	border-top: 1px solid #ccc;
}
.table.table-contact th {
	width: 200px;
}
.table.table-contact th i {
	width: 18px;
	text-align: center;
	margin-right: 10px;
	color: #0462a4;
}

/* data tables */
.table.table-data {
	table-layout: fixed;
	font-size: .85em;
	border-bottom: 1px solid #ddd;
}
.table.table-data th,
.table.table-data td {
	padding: 10px;
}
.table.table-data thead {
	background: none;
}
.table.table-data thead th {
	font-size: 1.2em;
	background: #f5f5f5;
	border-bottom: 1px solid;
}
.table.table-data tbody .row-total th,
.table.table-data tbody .row-total td {
	border-top: 1px solid #23324e;
}
.table.table-data .data-fixed {
	width: 350px;
}

/* detail tables */
.table.table-detail {
	font-size: .9em;
	margin: 0 0 30px;
	border: 1px solid #ddd;
}
.table.table-detail th,
.table.table-detail td {
	padding: 15px;
}
.table.table-detail tbody th {
	width: 150px;
	background: #f5f5f5;
}
.table.table-detail tbody th i {
	width: 15px;
	margin-right: 5px;
	text-align: center;
}

/* info tables */
.table.table-info {
	font-size: .9em;
	margin: 0 0 20px;
	background: none;
}
.table.table-info th,
.table.table-info td {
	padding: 15px 0;
	border-color: #ddd;
}
.table.table-info tbody th {
	width: 120px;
}

/* list tables */
.table.table-list {
	font-size: .9em;
	border: 1px solid #ddd;
}
.table.table-list th,
.table.table-list td {
	padding: 15px;
}
.table.table-list .column-date {
	width: 175px;
}

/* product tables */
.table.table-product {
	margin: 0 0 20px;
}
.table.table-product th,
.table.table-product td {
	padding: 15px 15px 15px 0;
}

/* profile tables */
.table.table-profile {
	font-size: .9em;
	margin: 0 0 20px;
}
.table.table-profile th,
.table.table-profile td {
	padding: 15px;
}
.table.table-profile tbody th {
	width: 250px;
}

/* invoice tables */
.table.table-invoice {
	font-size: .85em;
	border: 1px solid #ddd;
	margin: 0 0 20px;
}
.table.table-invoice th,
.table.table-invoice td {
	padding: 10px;
}
.table.table-invoice th {
	width: 120px;
}
.table.table-invoice tr.row-total th,
.table.table-invoice tr.row-total td {
	border-top: 1px solid #333;
}


/* select tables */
.table.table-select {
	border: 1px solid #ddd;
}
.table.table-select th,
.table.table-select td {
	padding: 20px; 
	vertical-align: top;
}
.table.table-select td .btn {
	margin: 0;
}
.table.table-select .column-desc {
	width: 70%;
}
.table.table-select .column-desc h5 {
	margin: 0 0 5px;
}

/* status tables */
.table.table-status {
	font-size: .9em;
	margin: 20px 0;
}
.table.table-status th,
.table.table-status td {
	padding: 10px 0;
}
.table.table-status th {
	width: 120px;
}


/* ======================================================================================================= */
/* 08: Bootstrap Over-rides
/* ======================================================================================================= */
.container {
	max-width: inherit;
} 

.container.no-padding {
	padding: 0;
}

/* ----- alerts ----- */
.alert {
	padding: 15px;
	font-weight: 300;
	border: none;
	border-radius: 0;
}
.alert p {
	margin: 0 0 15px;
}
.alert p:last-child {
	margin: 0;
}
.alert.alert-slim {
	padding: 10px;
}
.alert.alert-pad-30 {
	padding: 30px;
}
.alert.alert-neutral {
	background: #f5f5f5;
	border-left: 4px solid #09c;
}
.alert.alert-dark {
	background: #000;
}
.alert.alert-danger {
	background: #c00;
	color: #fff;
}
.alert.alert-info {
	background: #09c;
	color: #fff;
}
.alert.alert-success {
	background: #5fc66d;
	color: #fff; 
}
.alert.alert-cta {
	color: #fff;
	background: url(images/well-bg-membership.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.alert.alert-cta.cta-legacy {
	color: #fff;
	background: url(images/well-bg-legacy.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.alert.alert-cta p {
	color: #fff;
}
.alert.alert-banner {
	padding: 30px 50px;
	background: #0462a4;
	background: -moz-linear-gradient(-45deg, #0462a4 0%, #60cefb 100%);
	background: -webkit-linear-gradient(-45deg, #0462a4 0%,#60cefb 100%);
	background: linear-gradient(135deg, #0462a4 0%,#60cefb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0462a4', endColorstr='#60cefb',GradientType=1 ); 
}
.alert.alert-banner.banner-aqua {
	background: #04afc3;
	background: -moz-linear-gradient(-45deg, #04afc3 0%, #0387b8 100%);
	background: -webkit-linear-gradient(-45deg, #04afc3 0%,#0387b8 100%);
	background: linear-gradient(135deg, #04afc3 0%,#0387b8 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#04afc3', endColorstr='#0387b8',GradientType=1 );
}
.alert.alert-banner.banner-purple {
	background: #7621de;
	background: -moz-linear-gradient(-45deg, #7621de 0%, #1ab1db 100%);
	background: -webkit-linear-gradient(-45deg, #7621de 0%,#1ab1db 100%);
	background: linear-gradient(135deg, #7621de 0%,#1ab1db 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7621de', endColorstr='#1ab1db',GradientType=1 );
}
.alert.alert-banner p {
	color: #fff;
}
.alert.alert-banner .banner-actions {
	text-align: center;
}

/* alerts with actions */
.alert.alert-with-action {
	position: relative;
	padding: 20px 180px 20px 20px;
}
.alert.alert-with-action p {
	margin: 0;
}
.alert.alert-with-action .alert-action {
	position: absolute;
	top: 18px;
	right: 20px;
}

/* ----- breadcrumbs ----- */
.breadcrumb {
	padding: 0 0 20px;
	margin: 0 0 20px; 
	color: #666;
	background: none;
	font-size: .85em;
	border-bottom: 1px solid #ddd;
	border-radius: 0;
}
.breadcrumb span,
.breadcrumb a {
	display: inline-block;
}
.breadcrumb span {
	margin: 0 5px;
}
.breadcrumb span:first-child {
	margin-left: 0;
}
.breadcrumb a {
	font-weight: 700;
	color: #666;
}
/* padded breadcrumb */
.breadcrumb.breadcrumb-padded {
	padding: 10px;
	background: #f5f5f5;
}
/* slim breadcrumbs */
.breadcrumb.breadcrumb-slim {
	padding: 0;
	margin: 0 0 20px;
	border-bottom: none;
}

/* ----- buttons ----- */
.btn-group .btn {
	float: none;
}

/* ----- dropdown-menus ----- */
.dropdown-menu {
	top: inherit !important;
	transform: inherit !important;
	min-width: 200px;
	padding: 10px;
	border-radius: 0;
}
.dropdown-menu li {
	margin: 0;
	border-top: 1px solid #eee;
}
.dropdown-menu li:first-child {
	border-top: none;
}
.dropdown-menu li a {
	display: block;
	padding: 10px 15px;
	font-size: .85em;
	color: #262626;
}
.dropdown-menu li a:hover {
	background: rgba(0, 0, 0, .1);
	text-decoration: none;
}
.dropdown-menu .divider {
	margin: 1px;
}
.dropdown-menu.menu-full-width {
	width: 100%;
}
.dropdown-menu.dropdown-menu-right {
	left: auto !important;
}

/* ----- labels ----- */
.label {
	display: inline-block;
	padding: 5px 10px;
	font-size: .85em;
	font-weight: 300;
	color: #fff;
	border-radius: 0;
}

.label.label-default {
	background: #aaa;
}
.label.label-primary {
	background: #0462a4;
}
.label.label-light {
	background: #eee;
	color: #666;
}
.label.label-green,
.label.label-success {
	background: #5fc66d;
}
.label.label-large {
	padding: 10px 30px;
	font-size: 1.1em;
}

/* ----- modals ----- */
.modal-content {
	border-radius: 0;
	border: none;
}
.modal-header {
	padding: 20px 60px 20px 30px;
	background: #2d3446;
	border: none;
	border-radius: 0;
}
.modal-header .header-brand {
	display: block;
	width: 140px;
	margin: 0 20px;
}
.modal-header .modal-title {
	margin: 0;
	font-size: 1.5em;
	font-weight: 700;
	letter-spacing: -1px;
	color: #fff;
}
.modal-header .modal-title .title-sub {
	display: block;
	font-size: .85em;
	font-weight: 300;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .7);
}
.modal-header .modal-title i {
	display: inline-block;
	font-size: 1.2em;
	vertical-align: top;
}
.modal-header .close {
	position: absolute;
	top: 0;
	right: 20px;
	font-family: Helvetica Neue, sans-serif;
	font-size: 3em;
	font-weight: 300;
	padding: 5px;
	margin: 0;
	color: #fff;
	text-shadow: none;
}
/* background headers */
.modal-header.header-piano {
	background: url(images/section-bg-keys.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.modal-body {
	padding: 30px;
	background: #fff;
}
.modal-body p:last:child {
	margin: 0;
}
.modal-footer {
	padding: 20px 30px;
	background: #eee;
	text-align: left;
	justify-content: inherit;
}
.modal-footer p {
	margin: 0;
}
.modal .alert {
	margin: 0 0 10px;
}
.modal label {
  	color: #333;
  	text-shadow: none;
}
.modal input[type="text"],
.modal input[type="password"] {
  	padding: 10px;
}
/* wide modals */
.modal-wide .modal-dialog {
	width: 900px;
}

/* ----- navs ----- */
.nav {
	font-weight: 700;
	margin: 0 0 20px;
}
.nav.nav-pills li a {
	padding: 15 30px;
}
.nav.nav-pills li.active a {
	background: #151515; 
}
.nav.nav-tabs li a {
	padding: 15px 20px;
	line-height: 1;
}
.nav.nav-tabs li a i {
	font-weight: normal;
	margin-right: 5px;
}
.nav.nav-tabs li.tab-helper {
	float: right;
}
.nav.nav-tabs li.tab-helper a {
	font-size: .85em;
	border: none;
}
.nav.nav-tabs.tabs-library {
	margin: 0 0 30px;
}
.nav.nav-tabs.tabs-library li a i {
	display: inline-block;
	font-size: 1.4em;
	margin: -2px 7px 0 0;
	vertical-align: top;
}
.nav.nav-tabs.tabs-library li.tab-helper a i {
	font-size: 1.2em;
}

/* ----- panels ----- */
.panel {
	border-radius: 0;
}
.panel.panel-default {
	border-color: #ccc;
}
.panel-heading {
	padding: 20px 30px;
}
.panel-heading .panel-title {
	font-size: 1.5em;
}
.panel-body {
	padding: 30px;
}
.panel table {
	width: 100%;
}
.panel-content {
	padding: 30px;
}
/* product panels */
.panel.panel-product {
	box-shadow: none;
	background: url(images/section-bg-color-polygon.jpg) center center no-repeat #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.panel.panel-product .panel-heading {
	background: rgba(0, 0, 0, .5);
	color: #fff;
}
.panel.panel-product p {
	color: #fff;
}
/* panel forms */
.panel.panel-product .panel-form {
	padding: 30px;
	background: rgba(255, 255, 255, .15);
}
.panel.panel-product .panel-form label {
	color: #fff;
}
.panel.panel-product .panel-form input[type="submit"] {
	background: none;
	color: #fff;
	border: 2px solid #fff;
}
.panel.panel-product .panel-form input[type="submit"]:hover {
	background: #fff;
	color: #d82027;
	border-color: #fff;
}

/* ----- tooltips ----- */
.tooltip .tooltip-inner {
	padding: 7px 10px;
}

/* ----- wells ----- */
.well {
	padding: 30px;
	margin: 0 0 30px;
	background: #f5f5f5;
	border-radius: 0;
	box-shadow: none;
}
.well .well-title {
	position: relative;
	padding-right: 30px;
}
.well .well-title i {
	position: absolute;
	top: 5px;
	right: 0;
}
.well .list-overflow {
	height: 500px;
	overflow-y: scroll;
}

.well.well-slim {
	padding: 20px;
}
.well.well-clear {
	background: none;
}
.well.well-dark {
	background: #0b1c21;
}
.well.well-blank {
	background: none;
	border: none;
}
.well.bg-white {
	border: 1px solid #ddd;
}

/* action wells */
.well.well-action {
	position: relative;
	border: 1px solid #eee;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.well.well-action .list-action {
	margin: 0;
}
.well.well-action .list-action.list-block {
	margin: 0 0 30px;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}
.well.well-action.action-slim {
	padding: 20px;
}
.well.well-action.action-slim .well-title {
	display: block;
	padding: 0 0 10px;
	margin: 0 0 10px;
	font-size: 1em;
	border-bottom: 1px solid rgba(255, 255, 255, .5);
}

/* trans wells */
.well.well-trans-black-25 {
	background: rgba(0, 0, 0, .25);
	border: none;
}

/* show wells */
.well.well-show {
	background: url(images/section-bg-shows.jpg) center center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

/* cta wells */
.well.well-cta {
	padding: 50px;
	background: #19191d;
	border: none;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.well.well-orientation {
	background: url("images/widget-bg-orientation.jpg") top center no-repeat #003261;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.well.well-review {
	background: url("images/widget-bg-review.jpg") top center no-repeat #003261;
	-webkit-background-size: cover;
  	-moz-background-size: cover;
  	-o-background-size: cover;
  	background-size: cover;
}
.well.well-path {
	background: url(images/section-bg-keyboard.jpg) bottom center no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.well.well-cta.cta-legacy {
	background: url(images/well-bg-legacy.jpg) bottom right no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.well.well-cta.cta-membership {
	background: url(images/well-bg-membership.jpg) bottom right no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
/* optin wells */
.well.well-cta.cta-optin {
	background: url(images/section-bg-scale.jpg) bottom right no-repeat;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
	border: 15px solid #fe8c25;
}
.well.well-cta.cta-optin .gfield_label{
	color: #fff;
}
.well.well-cta.cta-optin input[type="submit"] {
	display: block;
	width: 100%;
	background: none;
	color: #fff;
	border: 2px solid #fff;
	max-width: 185px;
}
.well.well-cta.cta-optin input[type="submit"]:hover {
	background: #fff;
	color: #0b1c21;
	border-color: #fff;
}
.well.well-cta.cta-green {
	background: rgba(13, 103, 80, .7);
}


/* 09: Plugins
========================================================================================= */
/* -------------------- AddEvent calendar plugin -------------------- */
.addeventatc.btn,
.item .item-action .btn.addeventatc {
	opacity: 0;
}
.addeventatc.btn.btn-loaded,
.item .item-action .btn.addeventatc.btn-loaded {
	opacity: 1.0;
}
.addeventatc.btn {
	padding: 12px 30px;
	font-size: inherit;
	font-family: inherit;
	font-weight: 700;
	line-height: 1.2;
	border-radius: 100px !important;
	border-width: 2px;
	box-shadow: none !important;
	cursor: pointer;
}
.addeventatc.btn:after {
	display: inline-block;
	content: "\f067";
	font-family: FontAwesome;
	font-weight: normal;
	margin-left: 5px;
}
.addeventatc.btn:hover {
	font-size: inherit;
}
.addeventatc.btn.btn-default:hover {
	color: #fff !important;
}
.addeventatc.btn.btn-sm {
	padding: 8px 20px;
	font-size: .85em;
}
.addeventatc.btn .addeventatc_icon {
	display: none;
}

/* -------------------- Advanced Custom Fields -------------------- */
.front-end-acf {
	position: relative;
	padding: 20px;
	border: 1px solid #ddd;
}
.front-end-acf .updated {
	display: none; /* hide these since we show our own alerts */
}
.front-end-acf .acf-form .acf-field p.description {
	font-size: .85em;
}
.front-end-acf .acf-form .acf-actions {
	text-align: left;
}
.front-end-acf .acf-form .acf-actions .acf-button {
	display: inline-block;
	padding: 10px 25px;
	font-size: .85em;
	font-weight: 700;
	text-decoration: none;
	border: 2px solid;
	border-radius: 100px;
}
.front-end-acf .acf-form .acf-actions .acf-button:hover {
	background: #08c;
	color: #fff;
	border-color: #08c;
}
.front-end-acf .acf-form .acf-field .acf-input-wrap {
	height: auto;
}
.front-end-acf .acf-form .acf-field input[type="text"],
.front-end-acf .acf-form .acf-field input[type="password"],
.front-end-acf .acf-form .acf-field input[type="number"],
.front-end-acf .acf-form .acf-field input[type="search"],
.front-end-acf .acf-form .acf-field input[type="email"],
.front-end-acf .acf-form .acf-field input[type="url"],
.front-end-acf .acf-form .acf-field textarea,
.front-end-acf .acf-form .acf-field select {
	height: auto;
	padding: 10px;
}
.front-end-acf .acf-form .acf-url input[type="url"] {
	padding-left: 25px;
}
.front-end-acf .acf-form .acf-url i {
	top: 9px;
}
.front-end-acf .acf-form .acf-form-submit {
	padding: 20px 12px;
	margin: 20px 0 0;
	border-top: 1px solid #ddd;
}
.front-end-acf .acf-form .acf-table .acf-th {
	font-size: .9em;
	font-weight: 700;
}
.front-end-acf .acf-form .acf-repeater > table {
	margin: 0 0 15px; 
}
.front-end-acf .form-external-btn {
	position: absolute;
	bottom: 19px;
	left: 180px;
}
/* repeater field styling */
.front-end-acf .acf-repeater.-table {
	padding: 15px;
	border: 1px solid #333;
}
.front-end-acf .acf-repeater.-table textarea {
	height: 100px;
}
/* post object search */
.front-end-acf .select2-container .select2-selection--single {
	height: 40px;
}
.front-end-acf .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 40px;
}
.front-end-acf .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 6px;
	right: 6px;
}
.front-end-acf .select2-container--default .select2-selection--single .select2-selection__placeholder {
	position: relative;
	padding-left: 30px;
}
.front-end-acf .select2-container--default .select2-selection--single .select2-selection__placeholder:before {
	position: absolute;
	top: 0;
	left: 5px;
	content: "\f002";
	font-family: FontAwesome;
	line-height: 1.2;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
	padding: 10px;
}
/* hide specific fields */
.front-end-acf .acf-field-5a68b8327446e {
	display: none; /* user_id for Playlist */
}

/* ---------- Affiliate WP ---------- */
#affwp-affiliate-dashboard-tabs {
	margin: 0 !important;
	font-size: .9em;
}
#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li {
	padding: 0;
}
#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li a {
	display: block;
	padding: 20px 15px;
}
#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li a:hover {
	background: rgba(0, 0, 0, .05);
}
#affwp-affiliate-dashboard #affwp-affiliate-dashboard-tabs li.active a {
	padding: 20px 30px;
	background: #fff;
}
.affwp-tab-content {
	padding: 30px;
	background: #fff;
}
table.affwp-table {
	font-size: .85em;
}
table.affwp-table th {
	color: #1a1b21;
}
table.affwp-table td,
table.affwp-table th {
	padding: 10px;
}
.affwp-errors,
.affwp-notice {
	font-size: .85em;
	border: none;
	border-left: 4px solid #fc0;
}
.affwp-wrap.affwp-payout-service-dob-wrap select {
	width: auto;
	margin-right: 10px;
}
.affwp-form {
	padding: 30px;
	margin: 0 0 30px;
	background: #fff;
	border: 1px solid #ccc;
}
#affwp-login-form {
	display: none; /* hide affiliate login form since we already have MM login */
}

/* -------------------- Full Calendar -------------------- */
/* header */
.calendar.fc {
}
.calendar.fc .fc-toolbar.fc-header-toolbar {
	padding: 15px;
	margin: 0;
	background: #f5f5f5;
	font-family: 'Roboto';
}
.calendar.fc .fc-head {
	background: #f5f5f5;
}
.calendar.fc .fc-head th a {
	display: block;
	padding: 10px;
	color: #333;
}
.calendar.fc .fc-head .fc-day-header {
	padding: 10px;
}
.calendar.fc .fc-toolbar h2 {
	font-size: 1.2em;
}
.calendar.fc .fc-basic-view .fc-day-number,
.calendar.fc .fc-basic-view .fc-week-number {
	width: 15px;
    padding: 3px;
    font-size: .8em;
    border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    text-align: center;
}
/* events */
.calendar.fc .fc-event {
	background: #1e6ec7;
	border: none;
	border-radius: 0;
}
.calendar.fc .fc-event:hover {
	opacity: .5;
}
/* event colors */
.calendar.fc .fc-event.event-interview {background: #efce2f !important;} /* yellow */
.calendar.fc .fc-event.event-qa {background: #fe8c25 !important;} /* orange */
.calendar.fc .fc-event.event-student-collaboration {background: #2d3446 !important;} /* dark */
.calendar.fc .fc-event.event-student-assessment {background: #5fc66d !important;} /* green */
.calendar.fc .fc-event.event-updates {background: #0462a4 !important;} /* blue dark */
.calendar.fc .fc-event.event-workshop {background: #1ab1db !important;} /* blue */
.calendar.fc .fc-event.event-recitals {background: #c00 !important;} /* red */
.calendar.fc .fc-event.event-other {background: #8b27b1 !important;} /* purple */

.calendar.fc .fc-event .fc-content {
	padding: 10px;
	font-size: .8em;
}
.calendar.fc td.fc-today {
	background: #f5f5f5;
}
.calendar.fc .fc-time-grid .fc-slats td {
	font-size: .8em;
}
.calendar.fc .fc-time-grid-event .fc-time {
	display: none;
}
/* buttons */
.calendar.fc button {
	font-size: .85em;
	background: none;
	box-shadow: none;
	outline: none;
}
.calendar.fc button:hover {
	background: #eee;
}
.calendar.fc button.fc-state-active {
	background: #f5f5f5;
}

/* -------------------- Gravity Forms -------------------- */
.gform_fields {
	list-style: none;
	margin: 0;
}
.gform_fields .gfield {
	margin: 0 0 15px;
}
.gform_fields .gfield select {
	width: 100%;
}
.gfield .gfield_label {
	color: #0b1c21;
}
/* hide sub-labels */
.gform_fields .name_first label,
.gform_fields .name_last label {
	display: none;
}
.gform_fields .name_first {
	display: block;
	margin: 0 0 15px;
}
.gfield_description {
	font-size: .9em;
	font-weight: 300;
	margin: 0 0 20px;
}
/* checkbox / radio */
.gfield_checkbox,
.gfield_radio {
	list-style: none;
	font-size: .9em;
	margin: 0 0 20px;
}
.gfield_checkbox li,
.gfield_radio li {
	position: relative;
	padding-left: 25px;
	margin: 10px 0 0;
}
.gfield_checkbox li input[type="checkbox"],
.gfield_radio li input[type="radio"] {
	position: absolute;
	top: 3px;
	left: 0;
	margin: 0;
}
.gfield_checkbox li input[value="Other"],
.gfield_radio li input[value="Other"] {
	padding: 0;
	background: none;
	border: none;
	border-bottom: 2px solid #ddd;
	border-radius: 0;
}
.gfield_checkbox li label,
.gfield_radio li label {
	font-weight: 400;
}
/* inline radio */
.inline-radio .gfield_radio li {
	display: inline-block;
	margin: 0 15px 5px 0;
}
.inline-radio .gfield_radio li input {
	top: -1px;
	left: 5px;
}
/* error styling */
.gform_wrapper .validation_error {
	display: block;
	padding: 10px;
	margin: 0 0 15px;
	font-size: .85em;
	background: #c00;
	color: #fff;
}
.gform_fields .gfield .validation_message {
	display: block;
	margin: 5px 0 0;
	font-size: .85em;
	color: #c00;
}
.hero .hero-form .gform_fields .gfield .validation_message {
	color: #f90;
}
/* success styling */
.gform_confirmation_message {
	display: block;
	padding: 10px;
	margin: 0 0 15px;
	font-size: .85em;
	background: #690;
	color: #fff;
}

.gfield_visibility_hidden {
	display: none;
}

.gfield_required {
	color: #c00;
}

/* captcha */
.ginput_recaptcha .grecaptcha-badge {
	visibility: hidden;
	height: 0 !important;
}

/* custom styles */
/* removes a bunch of spacing issues on new member onboarding modal */
#member-onboarding-modal .gform_footer br {
	display: none;
}
#member-onboarding-modal .gform_footer p {
	margin: 0;
}
#member-onboarding-modal p:last-child {
	margin: 0;
}

/* -------------------- jQuery Data Tables -------------------- */
.dataTables_length label {
	display: inline-block;
	font-size: .85em;
	margin: 0 0 10px;
	vertical-align: top;
}
.dataTables_length select {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 0;
}
.dataTables_filter {
	margin: 0 0 10px;
}
.dataTables_filter label {
	display: inline-block;
	font-size: .85em;
	margin: 0 0 10px;
	vertical-align: top;
}
.dataTables_filter input[type="search"] {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 5px;
	background: #f5f5f5;
	border: none;
    border-bottom: 2px solid #ddd;
    border-radius: 0;
}
.dataTables_filter input[type="search"]:focus {
	border-bottom-color: #1a1b21;
}
.dataTables_wrapper .dataTables_info {
	font-size: .85em;
	padding: 0;
	margin: 10px 0 0;
}
.dataTables_wrapper .dataTables_paginate {
	font-size: .85em;
	padding: 0;
	margin: 10px 0 0;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
	padding: 5px 10px;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
	font-weight: 700;
	border: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
	background: #1a1b21;
	border: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
	background: #ddd;
	border: none;
}

/* -------------------- MemberMouse -------------------- */
/* ----- General styles ----- */
.mm-button {
	font-family: 'Nunito Sans', Arial, sans-serif !important;
	font-weight: 700 !important;
	line-height: inherit !important;
	text-shadow: none !important;
	border-radius: 100px !important;
	box-shadow: none !important;
}
.mm-button.large {
	padding: 15px !important;
}
/* make MM green/orange buttons identical for purchase actions */
.mm-button.green,
.mm-button.orange {
	background: #5fc66d !important;
	box-shadow: none !important;
	border: none !important;
}
.mm-button.green:hover,
.mm-button.orange:hover {
	background: #31853c !important;
}
.mm-button.purple {
	background: #c6f !important;
	box-shadow: none !important;
	border: none !important;
}
.mm-button.purple:hover {
	background: #93c !important;
}
.mm-button.button-disabled {
	background: #ccc !important;
	color: #999 !important;
	cursor: context-menu;
}
.mm-button.button-disabled:hover {
	background: #bbb !important;
}
.mm-error {
	padding: 5px 10px !important;
	margin: 0 0 20px !important;
	background: #c00 !important;
	color: #fff !important;
	font-size: .85em !important;
	border: none !important;
	border-radius: 0 !important;
	text-shadow: none !important;
}
.mm-success {
	padding: 5px 10px !important;
	margin: 0 0 20px !important;
	background: #5fc66d !important;
	color: #fff !important;
	font-size: .85em !important;
	border: none !important;
	border-radius: 0 !important;
	text-shadow: none !important;
}

/* ----- Checkout pages ----- */
.mm_left_column,
.mm_right_column {
	float: none !important;
	display: table-cell;
	padding: 30px;
	margin: 0 !important;
	vertical-align: top;
}
.mm_right_column {
	background: #eee;
}
.mm-checkoutContainer {
	max-width: inherit !important;
	font-size: 100% !important;
	color: #333;
	margin: 20px auto;
}
.mm-checkoutContainer .mm-checkoutInfoBlock {
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	overflow: hidden !important;
}
.mm-checkoutContainer p.mm-formError, .mm-formError {
	font-size: 21px;
	background: #CC3C3F;
	padding: 5px 10px;
	border-radius: 5px;
	color: #fff;
	text-shadow: 1px 1px 0px rgba(0,0,0,0.25);		
}
.mm-checkoutContainer h3 {
	font-size: 1.2em !important;
	font-weight: 700;
}
.mm-checkoutContainer #mm_field_billing_state_dd,
.mm-checkoutContainer #mm_field_billing_country {
	width: 100%;
}
.mm-checkoutContainer .mm-formField {
	margin: 0 0 10px;
	overflow: inherit;
}
.mm-checkoutContainer .mm-formField label {
	display: none;
	width: auto;
	float: none !important;
}
.mm-checkoutContainer .mm-formField label.mandatory {
	display: block;
}
.mm-checkoutContainer .mm-selectList {
	margin-right: 10px;
}
.mm-checkoutContainer .mm-checkoutSection2,
.mm-checkoutContainer .mm-purchaseSection {
	margin: 0 0 15px;
}
.mm-checkoutContainer .mm-checkoutSection2 h2 {
	font-size: 1.5em;
	font-weight: 400;
	line-height: 1.2;
}
.mm-checkoutContainer .mm-free-trial {
	font-size: 1.5em;
	font-weight: 700;
	letter-spacing: -2px;
	text-transform: uppercase;
	color: #f66d37;
}
.mm-checkoutContainer .mm-productDesc {
	font-style: normal;
}
.mm-checkoutContainer .mm-ccLogos img {
	width: 162px;
}
.mm-checkoutContainer .table {
	font-size: 1em;
	color: #ccc;
}
.mm-checkoutContainer .table th,
.mm-checkoutContainer .table td {
	padding: 10px 0;
	border-color: rgba(255, 255, 255, .1);
}
.mm-checkoutContainer .table th {
	width: 100px;
	color: #fff;
}
p.checkout-terms {
	font-size: .75em;
	color: #aaa;
	margin: 0 0 10px;
}
p.checkout-terms a {
	color: #333;
}
p.checkout-security {
	position: relative;
	padding: 0 0 0 20px;
    color: #333;
}
p.checkout-security i {
	position: absolute;
	top: 4px;
	left: 0;
	font-size: 1.2em;
}

.mm-paypalCheckoutBtn {
	width: auto !important;
	height: auto !important;
	padding: 15px;
	margin: 15px 0 0;
	background: #009cde !important;
	color: #fff;
	font-size: 1em;
	font-weight: 700;
	text-align: center;
	border-radius: 5px;
}
.mm-paypalCheckoutBtn:before {
	content: "Sign Up with PayPal";
}
.mm-paypalCheckoutBtn:hover {
	background: #0070ba !important;
	color: #fff;
	text-decoration: none;
}

.mm-giftsection {
	margin: 0 0 20px;
}
.mm-checkoutContainer .mm-purchaseSection .mm-button.green,
.mm-checkoutContainer .mm-purchaseSection .mm-button.orange,
.mm-checkoutContainer .mm-purchaseSection .mm-button.purple {
	width: 100% !important;
}

.mm-couponSection .mm-formField {
	position: relative;
}
.mm-couponSection .mm-formField .mm-button {
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 3px 10px !important;
	background: none !important;
	color: #08c !important;
	border: 1px solid #08c !important;
	border-radius: 2px !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-transform: uppercase;
	z-index: 10;
}
.mm-couponSection .mm-button:hover {
	background: #08c !important;
	color: #fff !important;
}

/* ----- My Account page ----- */
.mm-myaccount {
	font-size: 1em !important;
}
.mm-myaccount-module {
	margin: 0 0 20px !important;
	background: #fff !important;
	border: 1px solid #ccc !important;
	border-radius: 0 !important;
}
.mm-myaccount-module br {
	display: none;
}
.mm-myaccount-module-header {
	position: relative;
	font-family: 'Nunito Sans', sans-serif;
	font-size: 1.5em !important;
	font-weight: 700;
	letter-spacing: -0.025em;
	line-height: 1.2;
	padding: 20px 150px 20px 55px !important;
	color: #333 !important;
	background: #f5f5f5 !important;
	border-bottom: 1px solid #ddd;
}
.mm-myaccount-module-header .mm-update-button {
	position: absolute;
	top: 13px;
	right: 15px;
	padding: 6px 20px !important;
	font-weight: 700 !important;
	background: none !important;
	color: #333 !important;
	border: 2px solid rgba(0, 0, 0, .35);
}
.mm-myaccount-module-header .mm-update-button:hover {
	background: #333 !important;
	color: #fff !important;
}
.mm-myaccount-module-header img {
	display: inline-block;
	vertical-align: top !important;
	margin: 1px 0 0 !important;
}
.mm-myaccount-module-header i {
	position: absolute !important;
	top: 20px !important;
	left: 15px;
	width: 30px;
	font-weight: 300;
	line-height: 1;
	text-align: center;
	margin: 0;
	color: #333 !important;
}
.mm-myaccount-content-wrapper {
	padding: 15px !important;
}
.mm-myaccount-content-wrapper p {
	font-size: .85em;
	margin: 0 0 10px !important;
}
.mm-myaccount-content-wrapper table {
	width: 100%;
	font-size: .85em;
}
.mm-myaccount-content-wrapper table th,
.mm-myaccount-content-wrapper table td {
	padding: 10px 0;
	vertical-align: middle;
}
.mm-myaccount-content-wrapper table tbody th,
.mm-myaccount-content-wrapper table tbody td {
	border-top: 1px solid #ddd;
}
.mm-myaccount-content-wrapper table tr th:last-child,
.mm-myaccount-content-wrapper table tr td:last-child {
	text-align: right;
}
.mm-myaccount-content-wrapper .cta-button {
	font-size: 1.2em;
}
.mm-myaccount-label {
	display: inline-block;
	width: 140px;
	font-weight: bold;
	color: #333;
}
.mm-update-button {
	font-size: .8em !important;
	font-variant: normal !important;
	background: #1bb1e7 !important;
	padding: 5px 15px !important;
	color: #eee !important;
	vertical-align: top;
}
.mm-update-button:hover {
	text-decoration: none !important;
	color: #fff !important;
	background: #08c !important;
}

/* hide default Order History section since we custom query */
#mm-order-history-section {
	display: none;
}

/* jquery UI dialog styling */
.mm-myaccount-dialog-section-header {
	font-family: 'Nunito Sans', sans-serif;
	font-size: .85em !important;
	font-weight: 700;
	background: none !important;
	color: #333 !important;
	padding: 0 !important;
	border-radius: 0 !important;
	text-shadow: none !important;
}
#mm-form-container table {
	font-family: 'Nunito Sans', sans-serif;
}
#mm-form-container td {
	padding: 5px 0;
}
#mm-payment-confirmation-dialog form {
	padding: 0 0 20px;
	margin: 0 0 20px;
	line-height: 1.4;
	border-bottom: 1px solid #ddd;
}
#mm-payment-confirmation-dialog form .mm-data {
	font-weight: 700;
}

.mm-dialog-button-container {
	float: none !important;
}
.mm-dialog-button-container .mm-ui-button {
	font-family: 'Nunito Sans', sans-serif;
	font-size: .85em !important;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	padding: 10px 20px;
	margin: 0;
	border: 1px solid #ccc;
	border-radius: 100px;
}
.mm-dialog-button-container .mm-ui-button:hover {
	background: #eee;
	color: #333;
}
.mm-dialog-button-container .mm-ui-button.blue {
	background: #1ab1db;
	border: 1px solid #1ab1db;
}
.mm-dialog-button-container .mm-ui-button.blue:hover {
	background: #036;
	color: #fff;
}
.mm-dialog-button-bar {
	text-align: left !important;
}
.mm-dialog-button-bar .mm-button {
	background: none;
}

.mm-update-subscription-button {
	color: #08c !important;
}
.mm-cancel-membership-button,
.mm-cancel-subscription-button,
.mm-update-subscription-button {
	font-size: 1em !important;
	color: #1bb1e7 !important;
}

/* ----- Login/Password pages ----- */
.mm-login,
.mm-forgot-password,
.mm-resetpassword {
	width: auto !important;
}
.mm-login tr,
.mm-forgot-password tr ,
.mm-resetpassword tr {
	height: auto !important;
	margin: 0 0 20px;
}
.mm-login table tr,
.mm-login table th,
.mm-login table td,
.mm-forgot-password table tr,
.mm-forgot-password table th,
.mm-forgot-password table td,
.mm-resetpassword table tr,
.mm-resetpassword table th,
.mm-resetpassword table td {
	display: block;
}
.mm-login .mm-label-column,
.mm-forgot-password .mm-label-column,
.mm-resetpassword .mm-label-column {
	width: auto !important;
	margin: 0 0 5px;
	font-weight: 700;
	color: #333;
}
.mm-login .mm-field,
.mm-forgot-password .mm-field,
.mm-resetpassword .mm-field {
	width: 100% !important;
	margin: 0 0 10px;
}
.mm-login .mm-label {
	display: none; /* use placeholders instead */
}
.mm-remember-me {
	position: relative;
	font-size: .85em;
	font-weight: 300;
	line-height: 1.4;
	margin: 20px 0 !important;
	padding-left: 20px;
}
.mm-remember-me br {
	display: none;
}
.mm-remember-me input[type="checkbox"] {
	position: absolute;
	top: 3px;
	left: 0;
	margin: 0 !important;
}
#mm-login-button,
#mm-submit-button {
	width: 100% !important;
}

/* lock screen (loading) */
#mm-lockscreen-container {
	position: fixed !important;
	top: 0 !important;
	right: 0;
	bottom: 0;
	left: 0 !important;
	background: rgba(0, 0, 0, .7) !important;
	opacity: 1.0 !important;
	z-index: 2000 !important;
}
#mm-progressbar-container {
	position: fixed !important;
	top: 40% !important;
	left: 50% !important;
	width: 100px;
	height: 100px;
	margin-left: -50px;
	padding: 30px;
    background: url(images/loading.svg) center center no-repeat rgba(0, 0, 0, .5) !important;
	background-size: 60px auto;
    color: #fff;
    text-align: center;
    z-index: 2001;
}
/*
#mm-progressbar-container:after {
	display: block;
	content: "Loading...";
	font-size: .85em;
	margin: 15px 0 0;
}
*/
#mm-progressbar {
	display: none !important;
	border: none !important;
}

/* ----- admin styles ----- */
#mm-preview-settings-bar select {
	height: auto;
	padding: 0;
}
#mm-preview-settings-bar .mm-button {
	line-height: 12px !important;
}

/* -------------------- jQuery UI -------------------- */
.ui-widget-overlay {
	background: rgba(0, 0, 0, .5) !important;
	opacity: 1.0 !important;
}
.ui-dialog.ui-widget {
	max-width: 100% !important;
	padding: 0;
	font-family: 'Nunito Sans', sans-serif;;
	border: none;
	border-radius: 0;
	box-shadow: 0 0 0 10px rgba(255, 255, 255, .1);
}
.ui-dialog.ui-widget .ui-widget-header {
	padding: 15px 20px;
	background: #333;
	color: #fff;
	font-family: 'Nunito Sans', sans-serif;
	font-size: 1.2em;
	font-weight: 700;
	border: none;
	border-radius: 0;
}
.ui-dialog.ui-widget .ui-widget-header .ui-dialog-title {
	overflow: inherit;
}
.ui-dialog.ui-widget .ui-widget-header .ui-dialog-titlebar-close {
	right: 20px;
	outline: none;
}
.ui-dialog.ui-widget .ui-widget-header .ui-dialog-titlebar-close:hover {
	color: #fff;
}
.ui-dialog.ui-widget .ui-widget-content {
	height: auto !important;
	padding: 20px;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: 'Nunito Sans', sans-serif;;
}

/* ---------- Woocommerce ---------- */
/* general */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-noreviews,
p.no-comments {
	max-width: 1400px;
	margin: 0 auto;
}
.page-section .woocommerce-error,
.page-section .woocommerce-info,
.page-section.woocommerce-message,
.page-section .woocommerce-noreviews,
p.no-comments {
	margin: 0 0 20px;
}
.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	background-color: #eee;
}
.woocommerce-error {
	background: #fbf2ee;
	border-color: #c00;
}
.woocommerce-error:before {
	color: #c00;
}
.woocommerce-info,
.woocommerce-message {
	background: #ecf7fa;
	border-color: #1ab1db;
}
.woocommerce-info:before,
.woocommerce-message:before {
	color: #1ab1db;
}


.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	padding: 10px 30px;
	background: none;
	color: #09c;
	font-family: 'Lato';
	border: 2px solid #ccc;
	border-radius: 100px;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}

/* single products */
.single-product div.product p.price {
	margin: 0 0 20px;
}
.single-product div.product .woocommerce-tabs {
	padding: 0 0 30px;
}

.single-product div.product p.price {
	margin: 0 0 20px;
}
.single-product div.product form.cart {
	padding: 0;
	margin: 0 0 20px;
}
.single-product div.product .product_meta {
	padding: 0;
	margin: 0 0 20px;
	border: none;
}
.single-product div.product .woocommerce-tabs {
	padding: 0;
}
.single-product div.product table.variations .label {
	text-align: left;
}
.single-product.woocommerce #content div.product div.images,
.single-product.woocommerce div.product div.images,
.single-product.woocommerce-page #content div.product div.images,
.single-product.woocommerce-page div.product div.images {
	float: none;
	width: auto;
}
.single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: none;
}

/* archive products */
.woocommerce-breadcrumb {
	display: none; /* hide woocommerce breadcrumbs */
}
.woocommerce .woocommerce-ordering select {
	height: auto;
}
.archive.woocommerce .woocommerce-ordering {
	display: none; /* hide product sorting */
}
.site-wrapper ul.products {
	font-size: 0;
	margin-left: -3%;
}
.site-wrapper ul.products li.product {
	float: none !important;
	position: relative;
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	text-align: left;
	margin: 0 0 3% 3% !important;
	background: #fff;
	box-shadow: 1px 2px 2px rgba(0, 0, 0, .15);
	vertical-align: top;
}
.site-wrapper ul.products.columns-3 li.product {
	width: 30.33% !important;
}
.site-wrapper ul.products.columns-4 li.product {
	width: 22% !important;
}
/*
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link {
	position: relative;
	max-height: 230px;
	overflow: hidden;
	background: #000;
}
*/
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link {
	text-decoration: none;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-image {
	position: relative;
	display: block;
	max-height: 200px;
	background: #2b413b;
	overflow: hidden;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-image img {
	display: block;
	width: 100%;
	margin: 0;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-image img:hover {
	opacity: .5;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-content {
	position: relative;
	display: block;
	min-height: 150px;
	padding: 20px;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-content .onsale,
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-image .onsale {
	position: absolute;
	top: 20px;
	left: 0;
	padding: 1px 15px;
	background: #63a60b; 
	color: #fff;
	font-size: .75em;
	font-weight: 400;
	text-transform: uppercase;
	border: none;
	border-radius: 0;
	z-index: 5;
}
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-content .price {
	color: #63a60b;
	margin: 5px 0 15px;
}
.site-wrapper .woocommerce ul.products li.product .woocommerce-loop-category__title,
.site-wrapper .woocommerce ul.products li.product .woocommerce-loop-product__title,
.site-wrapper ul.products li.product .woocommerce-LoopProduct-link .product-content .woocommerce-loop-product__title {
	margin: 0;
	font-size: 1em;
	letter-spacing: -0.025em;
}
.site-wrapper ul.products li.product .button {
	display: block;
	padding: 12px 0;
	margin: 0 20px 20px;
	font-size: .85em;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	border-radius: 100px;
}
.site-wrapper .ul.products li.product .button:hover {
	background: #036;
	text-decoration: none;
}
.archive .site-wrapper ul.products li.product .button,
.post-type-archive .site-wrapper ul.products li.product .button {
	
}
.site-wrapper ul.products li.product .button.add_to_cart_button {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.site-wrapper ul.products li.product .button.add_to_cart_button:hover {
	background: #036;
	border-color: #036;
}
.site-wrapper ul.products li.product .button.add_to_cart_button:before {
	display: inline-block;
	content: "\f067";
	font-family: FontAwesome;
	margin-right: 7px;
}
.site-wrapper ul.products li.product .added_to_cart {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 15px 0;
	background: #fff;
	z-index: 100;
}

/* woocommerce pagination */
.site-wrapper .woocommerce-pagination {
	margin: 0;
}
.site-wrapper .woocommerce-pagination .page-numbers {
	list-style: none;
}
.site-wrapper .woocommerce-pagination .page-numbers li {
	display: inline-block;
}
.site-wrapper .woocommerce-pagination .page-numbers li a,
.site-wrapper .woocommerce-pagination .page-numbers li span {
	display: block;
	padding: 10px 15px;
	color: #333;
	text-decoration: none;
}
.site-wrapper .woocommerce-pagination .page-numbers li a:hover {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.site-wrapper .woocommerce-pagination .page-numbers li .current {
	background: #eee;
}
.site-wrapper .woocommerce-pagination .page-numbers li .prev,
.site-wrapper .woocommerce-pagination .page-numbers li .next {
	border: none;
}

/* cart */
.woocommerce table.cart {
	width: 100%;
}
.woocommerce table.cart thead {
	background: #f5f5f5;
}
.woocommerce table.cart tbody th,
.woocommerce table.cart tbody td {
	vertical-align: middle;
	border-top: 1px solid #ddd;
}
.woocommerce table.cart tbody .product-name {
	font-weight: 700;
	line-height: 1.4;
}
.woocommerce table.cart tbody td.product-remove {
	background: #f5f5f5;
}
.woocommerce table.cart tbody td.actions {
	padding: 15px;
	border-top: 1px solid #ddd;
}


.woocommerce table.cart td.actions .coupon {
	width: 330px;
}
.woocommerce table.cart td.actions .coupon .input-text {
	width: 160px;
	padding: 8px;
	vertical-align: top;
}
.woocommerce table.cart td.actions .coupon input[type="submit"] {
	padding: 10px 20px;
	background: none;
	color: #333;
	letter-spacing: 0;
	text-transform: none;
	border: 2px solid;
}
.woocommerce table.cart td.actions .coupon input[type="submit"]:hover {
	background: #333;
	color: #fff;
	border-color: #333;
}

.woocommerce table.shop_table {
	width: 100%;
	margin: 0 0 20px;
	border: 1px solid #ddd;
	border-radius: 0;
}
.woocommerce table.shop_table tr th,
.woocommerce table.shop_table tr td {
	padding: 15px;
	text-align: left;
}
.woocommerce table.shop_table thead th {
	background: #f5f5f5;
}
.woocommerce table.shop_table tr.order-total th,
.woocommerce table.shop_table tr.order-total td {
	border-top: 1px solid #999;
}

.woocommerce .cart_totals .checkout-button,
.woocommerce .cart_totals .checkout-button.alt {
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.woocommerce .cart_totals .checkout-button:hover,
.woocommerce .cart_totals .checkout-button.alt:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}

/* add to cart */
.item .item-action .add_to_cart_inline {
	padding: 0 !important;
	border: none !important;
}
.item .item-action .add_to_cart_inline .amount {
	display: none;
}

/* checkout */
.woocommerce-billing-fields .select2-container--default .select2-selection--single {
	height: 49px;
	padding: 10px;
}
.woocommerce-billing-fields .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 10px;
	right: 10px;
}
.woocommerce table.woocommerce-checkout-review-order-table .product-name {
	line-height: 1.4;
}
.woocommerce #add_payment_method #payment div.payment_box,
.woocommerce .woocommerce-cart #payment div.payment_box,
.woocommerce .woocommerce-checkout #payment div.payment_box {
	background: none;
	border: 1px solid #ddd;
}
.woocommerce #add_payment_method #payment div.payment_box:before,
.woocommerce .woocommerce-cart #payment div.payment_box:before,
.woocommerce .woocommerce-checkout #payment div.payment_box:before {
	display: none;
}
.woocommerce .woocommerce-checkout #payment  {
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 0;
}
.woocommerce .woocommerce-checkout #payment .place-order {
	padding: 15px !important;
	margin: 0 !important;
}
.woocommerce .woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper p {
	font-size: .8em;
}
.woocommerce .woocommerce-checkout #payment #place_order {
	display: block;
	float: none;
	width: 100%;
	padding: 15px 0;
	background: #1ab1db;
	color: #fff;
	border-color: #1ab1db;
}
.woocommerce .woocommerce-checkout #payment #place_order:hover {
	background: #036;
	color: #fff;
	border-color: #036;
}
.woocommerce .woocommerce-checkout #payment .terms {
	display: block;
	float: none;
	font-size: .8em;
	margin: 20px 0 0;
}
/*
.woocommerce-account-fields {
	padding: 20px;
	border: 1px solid #ddd;
}
*/
.woocommerce-account-fields p {
	line-height: 1;
	margin: 0;
}
.woocommerce-account-fields p label.checkbox {
	position: relative;
	padding-left: 20px;
	margin: 0;
}
.woocommerce-account-fields p label.checkbox input {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
}
.woocommerce-account-fields .create-account .validate-required {
	margin: 15px 0 0;
}
.woocommerce-account-fields .create-account .validate-required label {
	font-weight: 300;
}

/* payment methods */
.woocommerce .woocommerce-checkout #payment ul.payment_methods .wc_payment_method > label {
	display: block;
}
.woocommerce .woocommerce-checkout #payment ul.payment_methods .wc_payment_method > label img {
	float: right;
}

#wc_checkout_add_ons .description {
	display: block;
	font-size: .75em;
	line-height: 1.6;
	margin: 5px 0 0;
}

/* account pages */
.page-section.section-wc-layout {
	padding: 0;
}
.section-wc-layout .woocommerce {
	display: table;
	width: 100%;
	padding: 0;
	background: #fff;
}
.section-wc-layout .woocommerce-MyAccount-navigation,
.section-wc-layout .woocommerce-MyAccount-content {
	float: none;
	display: table-cell;
	padding: 50px;
	vertical-align: top;
}
.section-wc-layout .woocommerce-MyAccount-navigation {
	width: 30%;
	background: #f6f4ea;
}
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
}
.woocommerce-MyAccount-navigation ul li {
	margin: 0;
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.woocommerce-MyAccount-navigation ul li:first-child {
	border-top: none;
}
.woocommerce-MyAccount-navigation ul li a {
	position: relative;
	display: block;
	padding: 15px 0;
}
.woocommerce-MyAccount-navigation ul li a:after {
	position: absolute;
	top: 15px;
	right: 15px;
	content: "\f105";
	width: 16px;
	font-family: FontAwesome;
	font-size: 1em;
	text-align: center;
	z-index: 5;
}
.woocommerce-MyAccount-navigation ul li a:hover {
	padding-left: 15px;
	background: #fff;
	text-decoration: none;
}
.woocommerce-MyAccount-navigation ul li.is-active a {
	font-weight: 700;
	color: #142722;
}
.woocommerce-MyAccount-navigation ul li.is-active a:after {
	content: "\f111";
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads {
	display: none; /* hide "Downloads" tab since it's not being used */
}
.section-wc-layout .woocommerce-MyAccount-content {
	width: 70%;
}
/* my orders */
.woocommerce table.my_account_orders td {
	vertical-align: top;
}
.woocommerce table.my_account_orders .membership-discount-image:before {
	display: none;
}
.woocommerce table.my_account_orders .order-actions {
	width: 
}
.woocommerce table.my_account_orders .order-actions .button {
	display: block;
	width: 100%;
	padding: 10px 0;
	margin: 0 0 10px;
	font-size: .85em;
	text-align: center;
}


/* -------------------- PWJ Complete (progress tracking) -------------------- */
/* buttons / links */
.list-action li a.pwj-complete-button i {
	color: #5fc66d;
}
.list-action li a.pwj-complete-button.pwj-complete-true {
	opacity: .5;
}

/* -------------------- WP My Favorites (user favoriting) -------------------- */
.myfav-favorite-button.myfav-favorite-true {
	background: #ccc;
	color: #666;
}
.my-favorites-category-form-container {
	padding: 20px 0;
	margin: 20px 0 0;
	border-top: 1px solid #ddd;
}

/* -------------------- WP Pagenavi for pagination -------------------- */
.facetwp-pager,
.wp-pagenavi {
	margin: 30px 0;
}
.facetwp-pager .facetwp-pager-label,
.facetwp-pager .facetwp-page,
.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
    border: none;
    padding: 10px 17px;
    margin: 0 5px 5px 0;
}
.facetwp-pager .facetwp-pager-label,
.facetwp-pager .wp-pagenavi span.pages {
	background: #eee;
	color: #19191d;
	border-left: 3px solid;
}
.facetwp-pager .facetwp-page,
.wp-pagenavi a {
	background: #1ab1db;
	color: #fff;
}
.facetwp-pager .facetwp-page:hover,
.wp-pagenavi a:hover {
	background: #036;
	color: #fff;
}
.facetwp-pager .facetwp-page.active,
.wp-pagenavi span.current {
	background: #19191d;
	color: #fff;
}

/* ======================================================================================================= */
/* 10: Behavioral (JS)
/* ======================================================================================================= */
.hidden {
	display: none !important;
}

/* ----- Behavioral Elements (JS) ----- */
.js-hidden {
	display: none;
}

/* content loading cover */
.js-content-cover {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, .85);
	padding: 50px;
	z-index: 1000;
}
.js-content-cover .cover-body {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.js-content-cover .cover-body .body-loader {
	display: block;
	width: 100px;
	margin: 0 auto 20px;
}
.js-content-cover .cover-body .body-loader img {
	width: 100%;
}

/* content limiting */
.js-content-limit {
	position: relative;
	height: 300px;
	margin: 0 0 20px;
	overflow: hidden;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.js-content-limit:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 190px;
	content: "";
	z-index: 10;
	background: -moz-linear-gradient(bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(bottom, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to top, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );
}
.js-content-limit.content-expand {
	height: auto;
}
.js-content-limit.content-expand:after {
	display: none;
}
.js-content-limit .limit-more {
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: .85em;
	font-weight: 700;
	padding: 5px 15px;
	z-index: 15;
}

/* transition content */
.js-transition-content .content-success,
.js-transition-content .content-error {
	display: none;
}


/* 11: Responsive (Media Queries)
========================================================================================================== */
/* Retina-specific styles */
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (   -moz-min-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {

}

@media (min-width: 576px) {

	.modal-dialog {
	    max-width: 600px;
	}
	.modal.modal-wide .modal-dialog {
	    max-width: 900px;
	}

}

/* LARGE DESKTOP */
@media (max-width: 1399px) {

	.show-1399 {
		display: block;
	}

	.site-wrapper {
		width: 100%;
	}
	.container {
		width: 100%;
	}

	/* header */
	.site-header .header-nav ul {
		font-size: .9em;	
	}
	.site-header .header-nav .header-search form {
		width: 250px;
	}
	.site-header .header-nav li:hover .nav-sub-menu.menu-mega,
	.site-header.header-member .header-nav li:hover .nav-sub-menu.menu-mega {
		width: 1160px;
	}
	.site-header .header-nav li:hover .nav-sub-menu.menu-mega {
		right: -246px;
	}
	.site-header.header-member .header-nav li:hover .nav-sub-menu.menu-mega {
		right: -322px;
	}

	/* courses */
	.course-nav.affix {
		width: 250px;
	}

}

@media (max-width: 1199px) {

	.show-1199 {
		display: block;
	}
	
	/* header */
	.site-header,
	.site-header.header-member {
		height: 60px;
	}
	.site-header:after {
		display: none;
	}
	.site-header .header-top {
		display: none;
	}
	.site-header .header-top ul {
		float: none;
		text-align: left;
	}
	.site-header .header-brand,
	.site-header.header-member .header-brand {
		top: 0;
		left: 0;
		width: 110px;
		padding: 10px;
	}
	.site-header.header-member .header-brand:after {
		top: 8px;
		right: -110px;
	}
	.site-header .header-mobile-navicon {
		display: inline-block;
	}
	.site-header .header-nav {
		position: fixed;
		top: 60px;
		right: 0;
		bottom: 0;
		left: 0;
		height: 0;
		padding: 0;
		overflow: hidden;
		background: #23262d;
	}
	.site-header .header-nav ul {
		font-size: .8em;	
	}
	.mobile-nav-open {
		overflow: hidden;
	}
	.mobile-nav-open .site-top {
		display: none;
	}
	.mobile-nav-open .site-header .header-mobile-nav-brand {
		display: inline-block;
	}
	.mobile-nav-open .site-header .header-top {
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		height: auto;
		padding: 15px;
		background: rgba(0, 0, 0, .5);
		z-index: 2000;	
	}
	.mobile-nav-open .site-header .header-top .top-search {
		width: 300px;
		margin: 0;
	}
	.mobile-nav-open .site-header .header-nav .header-search {
		float: none;
		margin: 15px;
	}
	.mobile-nav-open .site-header .header-nav .header-search form {
		width: 100%;
	}
	.mobile-nav-open .site-header .header-top .top-member {
		float: none;
		padding: 3px 0 0 10px;
	}
	.mobile-nav-open .site-header .header-nav {
		height: 100%;
		text-align: left;
	}
	.mobile-nav-open .site-header .header-nav ul {
		float: none;
		font-size: .9em;
		margin: 0;
	}
	.mobile-nav-open .site-header .header-nav ul > li,
	.mobile-nav-open .site-header.header-restyle .header-nav ul > li {
		float: none;
		display: inline-block;
		width: 48%;
	}
	.mobile-nav-open .site-header .header-nav ul > li > a,
	.mobile-nav-open .site-header.header-restyle .header-nav ul > li > a {
		height: auto;
		padding: 20px 20px 15px;
		color: #fff;
	}
	.mobile-nav-open .site-header .header-nav ul > li > a:hover {
		background: rgba(255, 255, 255, .15);
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-login,
	.mobile-nav-open .site-header .header-nav ul > li.nav-cta {
		margin: 20px 20px 0;
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-login > a,
	.mobile-nav-open .site-header .header-nav ul > li.nav-cta > a {
		padding: 20px;
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-cta > a {
		color: #fe8c25;
		border-color: #fe8c25;
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-cta > a:hover {
		background: #fe8c25;
		color: #fff;
		border-color: #fe8c25;
	}
	.mobile-nav-open .site-header .header-nav ul > li:hover .nav-dropdown,
	.mobile-nav-open .site-header .header-nav ul > li:hover .nav-menu,
	.mobile-nav-open .site-header .header-nav ul > li:hover .nav-sub-menu,
	.mobile-nav-open .site-header .header-nav ul > li:hover .nav-mega-menu {
		display: none;
	}
	.mobile-nav-open .site-header .header-nav .dropdown-menu {
		width: 100%;
	}
	.mobile-nav-open .site-header.header-member .header-nav ul > li.nav-tms > a {
		color: #de2b2e;
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-dropdown.dropdown-account {
		display: none;
	}
	.mobile-nav-open .site-header .header-nav ul > li.nav-mobile-only,
	.mobile-nav-open .site-header .header-nav ul > li.nav-mobile-account {
		display: block;
	}
	
	/* page header */
	.page-header.header-section .section-content {
		padding: 50px;
	}

	/* hero */
	.hero h1 {
		font-size: 3em;
	}
	.hero h1 .hero-emph {
		font-size: 1.5em;
	}
	.hero.hero-slideshow .hero-cta {
		width: 35%;
	}

	/* courses */
	.course-nav.affix,
	.course-nav.affix-top {
		display: none !important;
	}

	/* ----- Woocommmerce ----- */
	.site-wrapper .columns-4 ul.products li.product {
		width: 30.33% !important;
	}

}

/* TABLET */
@media (max-width: 1024px) {

	.show-1024 {
		display: block;
	}

	/* grids */
	.masonry-grid .grid-item {
		width: 47%;
	}
	.rsp-grid .grid-container {
		width: 50% !important;
	}
	.rsp-grid.grid-spaced .grid-container {
		width: 47% !important;
	}
	.table-grid .grid-column.column-desc {
		width: 400px;
	}

	/* page section */
	.page-section,
	.page-section.section-custom {
		padding: 50px;
	}
	.page-section.section-auth {
		padding: 30px;
	}
	.page-section .section-header h1 {
		text-align: center;
	}
	.page-section .section-header .progress-meter {
		position: static;
		top: auto;
		right: auto;
	}
	
	/* page overlay */
	.page-overlay .overlay-option {
		width: auto;
		margin: 0;
	}
	.page-overlay .overlay-header .overlay-close {
		font-size: 3.5em;
	}

	/* content */
	.content-section.section-padded {
		padding: 30px;
	}
	.content-section.section-hero {
		padding: 50px;
	}
	.content-section.section-hero p {
		font-size: 1em;
	}
	
	/* hero */
	.hero,
	.hero.hero-homepage {
		min-height: inherit;
		padding: 50px;
	}
	.hero .hero-content {
		width: auto;
		margin: 0;
	}
	.hero .hero-content h1 {
		font-size: 3em;
	}
	.hero .hero-content .content {
		padding: 70px;
	}

	/* site footer */
	.site-footer .footer-column {
		padding: 30px;
	}

	/* forms */
	.auth-container {
		width: 70%;
	}

	/* ----- bootstrap ----- */
	.nav.nav-tabs.tabs-library {
		font-size: .85em;
	}
	
}

/* SMALL TABLET */
@media (max-width: 992px) {

	.show-992 {
		display: block;
	}

	/* columns */
	.column.column-10,
	.column.column-20,
	.column.column-25,
	.column.column-30,
	.column.column-40,
	.column.column-50,
	.column.column-60,
	.column.column-70,
	.column.column-75,
	.column.column-80,
	.column.column-90,
	.column.column-100 {
		float: none;
		width: 100%;
	}
	.column-pull-right {
		float: none;
	}

	.table-grid {
		display: block;
	}
	.table-grid .grid-column {
		display: block;
		width: 100% !important;
		padding: 0;
		margin: 0 0 20px;
		border: none;
	}
	.table-grid .grid-column.column-image,
	.table-grid .grid-column.column-desc {
		display: inline-block;
	}
	.table-grid .grid-column.column-status,
	.table-grid .grid-column.column-actions {
		width: 100%;
		padding-left: 0;
	}
	.table-grid .grid-column.column-status {
		margin: 15px 0 0;
		border-top: 1px solid #ddd;
	}
	.table-grid .grid-column.column-image {
		width: 20%;
	}
	.table-grid .grid-column.column-desc {
		width: 78%;
	}

	/* page header */
	.page-header .metrics {
		padding: 30px 0 0;
		border-left: none;
	}
	.page-header .search {
		margin: 30px 0 0;
	}
	.page-header .user {
		margin: 30px 0 0;
	}
	.page-header.header-section {
		max-height: inherit;
	}
	.page-header.header-section .section-content {
		position: static;
	}

	/* section columns */
	.section-columns {
		display: block;
	}
	.section-columns .column {
		display: block;
		width: 100% !important;
	}

	/* posts */
	.post-wrap {
		width: auto;
	}
	.post-header .header-image {
		max-height: inherit;
	}
	.post-header .header-utility {
		position: static;
		width: auto;
	}
	.post-header .header-content.content-master {
		position: static;
		background: #222;
	}
	.post-header.header-columns {
		display: block;
	}
	.post-header.header-columns .header-image,
	.post-header.header-columns .header-utility {
		display: block;
		width: 100%;
	}
	.post-actions {
		padding: 20px 0 0;
		text-align: left;
		border-top: 1px solid #ddd;
	}
	.post-body {
		display: block;
	}
	.post-content,
	.post-sidebar {
		display: block;
		width: 100%;
	}
	.post-sidebar {
		padding: 30px;
	}

	/* hero */
	.hero h1 > i {
		padding: 15px 0;
		margin: -3px 5px 0 0;
	}
	.hero .user {
		margin: 30px 0 0;
	}
	.hero.hero-slideshow {
		max-height: inherit;
		overflow: inherit;
	}
	.hero.hero-slideshow .hero-cta {
		position: static;
		width: auto;
		box-shadow: 0 0 0 20px rgba(255, 255, 255, .15);
	}
	.hero.hero-slideshow .hero-content h1 {
		margin: 0 0 10px;
	}
	.hero .hero-content .content .headline {
		font-size: 1.2em;
	}

	.hero.hero-member .hero-brand {
		margin: 0 auto 20px;
	}
	.hero.hero-member h1,
	.hero.hero-member p {
		text-align: center;
	}
	.hero.hero-member .video-container {
		margin: 30px 0 0;
	}

	/* cards */
	.card.card-related {
		overflow: auto;
	}
	.card.card-related .card-image {
		float: left;
		width: 45%;
		margin: 0 20px 20px 0;
	}

	/* ---------- Bootstrap ---------- */
	.alert.alert-banner .banner-actions {
		text-align: left;
		margin: 20px 0 0;
	}

	/* modals */
	.modal-wide .modal-dialog {
		width: auto;
		margin: 10px;
	}

}

/* MOBILE */
@media (max-width: 768px) {

	.show-768 {
		display: block;
	}

	h1 {font-size: 2em; letter-spacing: -1px;}
	h2 {font-size: 1.6em; letter-spacing: -1px;}
	h3 {font-size: 1.4em;}
	
	p.headline,
	.headline-content p {
		font-size: 1.2em;
		letter-spacing: 0;
	}
	p.headline.jumbo {
		font-size: 1.4em;
	}

	/* ----- lists ----- */
	.list-action {
		font-size: .85em;
	}

	/* ----- site header ----- */
	.mobile-nav-open .site-header .header-top .top-search {
		width: 100%;
		margin: 0 0 5px;
	}
	.mobile-nav-open .site-header .header-top ul {
		float: none;
		text-align: left;
	}

	/* titles */
	.mega-title {
		font-size: 2.4em;
	}
	
	/* buttons */
	.btn.btn-xl {
		font-size: 1.2em;
		padding: 15px 30px;
	}

	.hr-mobile {
		display: block;
		margin: 30px 0;
	}

	.video-cta-container .container-overlay {
		position: static;
		background: #151515;
		padding: 20px;
	}
	.video-cta-container .container-overlay .btn {
		display: block;
		width: 100%;
		margin: 0 0 10px;
	}

	/* grids */
	.block-grid {
		display: block;
	}
	.block-grid .grid-cell {
		display: block;
		width: 100% !important;
	}
	.grid-cell.cell-trial {
		border-left: none;
		border-top: 15px solid #eee; 
	}

	/* cards */
	.card.card-wide {
		height: auto;
		padding: 0;
		overflow: inherit;
	}
	.card.card-wide .card-image {
		position: static;
		width: 100%;
		max-height: inherit;
		overflow: inherit;
	}
	.card.card-wide .card-content {
		padding: 30px;
	}
	.card.card-wide .card-action {
		position: static;
		padding: 0 20px 20px; 
	}
	
	/* hero */
	.hero h1 {
		font-size: 2.4em;
		letter-spacing: -1px;
	}
	.hero .headline {
		font-size: 1.5em;
	}
	.hero .hero-content {
		width: auto;
	}
	.hero .hero-content p {
		margin-right: 0;
	}
	.hero .hero-content .content {
		padding: 50px;
	}
	
	/* page header */
	.page-header,
	.page-header.header-slim {
		padding: 30px;
	}
	.page-header.header-section .breadcrumb {
		padding: 30px;
	}
	
	/* page section */
	.page-section,
	.page-section.section-custom {
		padding: 30px;
	}
	.page-section.section-cta,
	.page-section.section-cta-desk {
		padding: 50px 30px;
	}
	.page-section .section-header {
		padding: 0;
	}
	.page-section .section-header .header-utility {
		position: static;
	}
	.content-section .section-header .header-title {
		font-size: 1.8em;
	}
	.content-section .section-body {
		padding: 0;
	}

	/* paths */
	.path .path-item {
		min-height: inherit;
		padding: 30px 30px 30px 50px;
	}
	.path .path-item.item-supplemental {
		padding: 20px;
	}
	.path .path-item.item-supplemental.visible {
		padding-left: 90px;
	}
	.path .path-item .item-image {
		position: static;
		width: 100%;
		margin: 0 0 20px;
	}
	.path .path-item .item-number {
		top: 50px;
	}

	/* posts */
	.post-content.content-video {
		padding-left: 0;
	}
	.post-content.content-video .amazon_video {
		position: static;
		width: auto;
	}
	
	/* metrics */
	.metric {
		margin: 0 0 30px;
	}
	.metric .metric-icon {
		left: 0;
	}
	.metric.metric-first {
		border-top: none;
	}

	/* cards */
	.card.card-product .card-header,
	.card.card-product .card-content {
		padding: 30px;
	}

	/* items */
	.item.item-card .item-image {
		margin: 0 0 15px;
	}
	.item.item-edit p:last-child {
		margin: 0 0 20px;
	}

	/* filter */
	.filter .filter-title {
		font-size: 1.2em;
	}

	/* tiles */
	.tile.tile-promo {
		display: block;
	}
	.tile.tile-promo .tile-content,
	.tile.tile-promo .tile-image {
		display: block;
		width: 100%;
	}
	.tile.tile-promo .tile-image {
		min-height: 300px;
	}
	
	/* tabs */
	.tabs-nav {
		display: block;
		width: 100%;
	}
	.tabs-nav li {
		display: block;
		padding: 0;
		margin: 0 0 10px;
		width: 100% !important;
	}
	.nav.nav-tabs.tabs-library li {
		width: 50%;
		border: none;
	}
	.nav.nav-tabs.tabs-library li a {
		border: none;
	}
	.nav.nav-tabs.tabs-library li.active a {
		background: #eee;
	}
	.nav.nav-tabs.tabs-library li.tab-helper {
		width: 100%;
		border-top: 2px solid #eee;
	}
	.nav.nav-tabs.tabs-library li.tab-helper a {
		text-align: center;
	}
	
	/* site footer */
	.site-footer .footer-columns {
		display: block;
	}
	.site-footer .footer-column {
		display: block;
		width: 100%;
		border-left: none;
	}
	.site-footer .footer-column:last-child {
		border-bottom: none;
	}
	p.site-credit {
		padding: 15px 0;
		margin: 15px 0;
		text-align: left;
		border-top: 1px solid #333;
	}

	/* forms */
	.contact-info {
		padding-left: 0;
	}
	.auth-container {
		width: 80%;
	}
	.quick-form .input-container {
		margin: 0 0 10px;
	}

	/* tables */
	.table-responsive {
		display: block;
		border: none;
	}
	.table.table-responsive thead {
		display: none;
	}
	.table.table-responsive tbody,
	.table.table-responsive tr,
	.table.table-responsive th,
	.table.table-responsive td {
		display: block;
		width: 100%;
	}
	.table.table-responsive tr {
		border-top: 1px solid #ddd;
	}
	.table.table-responsive th,
	.table.table-responsive td {
		border: none !important;
	}
	.table.table-responsive tbody th {
		width: auto;
		padding-bottom: 0;
	}
	.column-actions {
		text-align: left;
	}
	.table.table-compare tr {
		border-top: 1px solid #333;
	}
	.table.table-compare tbody th,
	.table.table-compare tbody td,
	.table.table-compare tfoot th,
	.table.table-compare tfoot td {
		width: auto;
		text-align: left;
	}
	.table.table-compare tfoot .mobile-label {
		width: auto;
	}
	.table.table-compare tfoot .mobile-label span {
		display: block;
	}
	.table.table-select td {
		padding: 20px 0;
	}
	.table.table-select td.column-desc {
		width: auto;
		padding-bottom: 0;
	}

	/* checkout */
	.checkout-column {
		display: block;
	}
	.checkout-column.column-product {
		width: 100%;
	}
	.checkout-column.column-payment {
		width: 100%;
	}

	/* my account */
	.mm-myaccount {
		margin: 20px 0 0 !important;
	}
	.mm-myaccount-block {
		width: 100% !important;
	}
	.mm-myaccount-content-wrapper table,
	.mm-myaccount-content-wrapper table thead,
	.mm-myaccount-content-wrapper table tbody,
	.mm-myaccount-content-wrapper table tr,
	.mm-myaccount-content-wrapper table th,
	.mm-myaccount-content-wrapper table td {
		display: block;
	}
	.mm-myaccount-content-wrapper table thead {
		display: none;
	}
	.mm-myaccount-content-wrapper table tbody tr {
		border-top: 1px solid #ddd;
	}
	.mm-myaccount-content-wrapper table tbody tr:first-child {
		border-top: none;
	}
	.mm-myaccount-content-wrapper table tbody th,
	.mm-myaccount-content-wrapper table tbody td {
		border: none;
	}
	.mm-myaccount-content-wrapper table .btn {
		display: block;
		width: 100%;
	}

	.mobile-label {
		display: inline-block;
		width: 120px;
		vertical-align: top;
	}

	/* ---------- Bootstrap ---------- */
	/* modals */
	.modal-header {
		padding: 20px 50px 20px 20px;
	}
	.modal-body,
	.modal-footer {
		padding: 20px;
	}
	.modal-header .close {
		right: 10px;
	}
	.modal-header .modal-title {
		font-size: 1.5em;
	}
	/* wells */
	.well.well-action .btn-block {
		margin: 0 0 15px;
	}

	/* ----- jQuery Data Tables ----- */
	.dataTables_wrapper .dataTables_info,
	.dataTables_wrapper .dataTables_paginate {
		text-align: left !important;
	}
	/* ----- jQuery Data Tables ----- */
	.dataTables_wrapper .dataTables_length,
	.dataTables_wrapper .dataTables_filter {
		text-align: left !important;
	}
	.dataTables_filter label {
		display: block;
	}
	.dataTables_filter input[type="search"] {
		display: block;
		width: 100%;
		margin: 5px 0 0;
	}

	/* ---------- Woocommerce ---------- */
	.woocommerce table.cart td.actions .coupon {
		width: auto;
	}
	

}

/* SUPER MOBILE */
@media (max-width: 600px) {

	.show-600 {
		display: block;
	}

	p.headline.small {
		font-size: 1em;
	}

	/* ----- buttons ----- */
	.btn-mobile-block {
		display: block;
		margin: 0 0 10px;
	}

	/* ----- lists ----- */
	.list-action li {
		display: block;
		border-left: none;
		border-top: 1px solid rgba(0, 0, 0, .15);
	}
	.list-action.list-light li {
		border-top: 1px solid rgba(255, 255, 255, .15);
	}
	.list-action li:first-child {
		border-top: none;
	}
	.list-details {
		font-size: .85em;
	}
	.list-details li {
		display: block;
		padding: 10px 0;
		border-top: 1px solid #ddd;
		border-left: none;
	}
	.list-details li:first-child {
		padding-top: 0;
		border-top: none;
	}
	.list-columns {
		margin: 0 0 2%;
	}
	.list-columns li {
		display: block;
		width: 100% !important;
		margin: 0 0 2%;
	}

	/* ----- site header ----- */
	.site-top .top-link {
		display: block;
	}

	/* grids */
	.rsp-grid.grid-spaced {
		margin-left: 0;
	}
	.rsp-grid .grid-container,
	.rsp-grid.grid-spaced .grid-container {
		display: block;
		width: 100% !important;
	}
	.rsp-grid.grid-spaced .grid-container {
		display: block;
		width: 100% !important;
		margin: 0 0 15px;
	}
	.block-grid .grid-cell {
		padding: 30px;
	}
	
	/* page header */
	.page-header .header-nav ul li {
		display: block;
		border-top: 1px solid rgba(255, 255, 255, .1);
	}
	.page-header .header-nav ul li:first-child {
		border-top: none;
	}
	.page-header .header-nav ul li a {
		padding: 15px;
	}
	.page-header.header-section .section-image {
		margin: 0;
	}
	.page-header.header-section .section-content {
		padding: 40px 30px;
	}
	.page-header.header-section .section-content .header-label {
		font-size: 1em;
	}
	.page-header.header-section .section-content h1 {
		font-size: 1.8em;
	}
	.page-header.header-section .section-content .btn {
		display: block;
		width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	/* page section */
	.page-section.section-auth {
		padding: 15px;
	}
	.page-section .section-header h1 {
		font-size: 2em;
	}
	.page-section .section-row .section-content {
		padding: 30px;
	}
	.page-section .section-row .section-image:before {
		width: 85%;
		height: 85%;
	}

	/* section columns */
	.section-columns .column {
		padding: 30px;
	}

	/* posts */
	.post-header h1 {
		font-size: 2em;
	}
	.post-header.header-with-image {
		min-height: 100px;
		padding: 0 0 0 120px;
	}
	.post-header.header-with-image .post-image {
		width: 100px;
	}
	.post-header .post-image .image-icon {
		display: none;
	}
	.post-section {
		padding: 30px;
	}

	/* hero */
	.hero {
		padding: 50px 30px;
	}
	.hero h1 {
		font-size: 2em;
	}
	.hero h1 > i {
		padding: 16px 0;
		margin: -8px 5px 0 0;
	}
	.hero .headline {
		font-size: 1.2em;
	}
	.hero .hero-content h1 {
		font-size: 2em;
	}
	.hero .hero-content .btn {
		display: block;
		width: 100%;
		margin: 0 0 10px;
	}
	.hero.hero-slideshow .hero-content {
		position: static;
		background: #142722;
	}
	.hero .hero-content .content .headline {
		font-size: 1em;
	}

	.feature {
		padding-right: 0;
	}

	/* content */
	.content {
		padding: 15px;
	}
	.content-section.section-hero {
		padding: 30px;
	}

	/* cards */
	.card.card-equal-height {
		min-height: inherit;
	}
	.card.card-related .card-image {
		float: none;
		width: 100%;
		margin: 0;
	}

	/* items */
	.item,
	.item.item-with-action {
		padding: 20px 0;
	}
	.item.item-with-action.item-with-icon,
	.item.item-with-action.item-with-icon.item-small {
		padding-right: 0
	}
	.item.item-with-action .item-action,
	.item.item-with-action.item-with-icon .item-action
	.item.item-with-action.item-with-icon.item-small .item-action {
		position: static;
		width: auto;
		margin: 15px 0 0;
		text-align: left;
	}
	.item.item-with-action .btn {
		display: inline-block;
	}
	.item.item-with-icon {
		min-height: inherit;
		padding-right: 0;
		padding-left: 50px;
	}
	.item.item-with-image {
		min-height: inherit;
		padding-right: 0;
		padding-left: 100px;
	}
	.item.item-with-image .item-image {
		width: 80px;
	}
	.item.item-with-image .item-image.image-icon a {
	    padding: 22px 0;
	    font-size: 2em;
	}
	.item.item-with-image.item-small {
		min-height: inherit;
		padding-left: 70px;
	}
	.item.item-with-image.item-small .item-image {
		width: 50px;
	}
	.item.item-event {
		min-height: inherit;
		padding: 20px 0 20px 60px;
	}
	.item.item-event:before {
		display: none;
	}
	.item.item-event .item-icon {
		left: 0;
		width: 45px;
		font-size: 2.5em;
	}
	.item.item-module {
		padding: 20px 0 20px 60px;
	}
	.item.item-module .item-number {
		width: 45px;
		height: 45px;
		padding: 12px 0;
		font-size: 1em;
	}
	.item.item-module .item-action {
		position: static;
		width: auto;
	}

	/* tiles */
	.tile {
		padding: 30px;
	}
	.tile.tile-promo .tile-content {
		padding: 30px;
	}

	/* filter */
	.filter {
		text-align: left;
	}
	.filter .filter-title {
		position: static;
	}
	.filter .btn-group {
		display: block;
		width: 100%;
		margin: 0 0 10px;
	}
	.filter .btn-group .btn {
		position: relative;
		display: block;
		width: 100%;
		text-align: left;
	}
	.filter .btn-group .btn .caret {
		position: absolute;
		top: 15px;
		right: 15px;
	}
	.filter .dropdown-menu {
		width: 100%;
	}
	
	/* footer */
	.footer-logos {
		display: block;
	}
	.footer-logos .logo-container {
		display: inline-block;
		width: 48%;
		margin: 20px 0;
	}

	/* forms */
	.auth-container {
		width: 100%;
		padding: 30px;
	}
	
	/* tables */
	.table.table-stats {
		font-size: 1em;
	}
	.table.table-compare {
		font-size: .9em;
	}
	.table.table-compare th,
	.table.table-compare td {
		padding: 10px 0;
	}
	.table.table-compare tbody th {
		padding-left: 30px;
	}
	.table.table-compare tbody th i {
		top: 10px;
	}

	/* checkout */
	.checkout-container {
		padding: 15px;
	}
	.checkout-column {
		padding: 30px;
	}
	.form-container.container-single .mm-checkoutContainer .checkout-column {
		padding: 0;
	}

	/* ---------- Bootstrap ---------- */
	.well.well-cta {
		padding: 30px;
	}
	.well.well-action.action-slim {
		padding: 20px;
	}
	.well.well-action.action-slim .well-title {
		position: static;
		padding: 0 0 15px;
		margin: 0;
		border-right: none;
		border-bottom: 1px solid rgba(255, 255, 255, .5);
	}

}

@media (max-width: 480px) {

	.show-480 {
		display: block;
	}

	/* site header */
	.site-header .header-top ul li {
		padding: 0 5px;
		border: none;
	}

	.site-header .header-nav ul > li > a i {
		display: none;
	}

	/* timer */
	.timer .timer-unit {
		margin: 0 10px 10px 0;
		font-size: 1.8em;
	}

	/* user */
	.user.user-large {
		padding-left: 100px;
	}
	.user.user-large .user-avatar {
		width: 80px;
	}

	/* ---------- Bootstrap ---------- */
	.alert.alert-with-action {
		padding: 20px;
	}
	.alert.alert-with-action .alert-action {
		position: static;
		padding: 20px 0 0;
		margin: 20px 0 0;
		border-top: 1px solid rgba(255, 255, 255, .25);
	}

}

/* PRINT styles */
@media print {

	img {
		display: block;
	}

	.invoice-brand {
		width: 250px;
	}

}