/*--------------------------------------------------------------
This is your custom stylesheet.

Add your own styles here to make theme updates easier.
To override any styles from other stylesheets, simply copy them into here and edit away.

Make sure to respect the media queries! Otherwise you may
accidentally add desktop styles to the mobile layout.
https://www.w3schools.com/css/css_rwd_mediaqueries.asp
--------------------------------------------------------------*/

/*
TABLE OF CONTENTS
- 00: Reset
- 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)
- 12: Print
*/

/* 01: Global
========================================================================================================================= */
/* Fonts
------------------------------------------------------------------------ */
@font-face {
	font-family: 'Proxima Nova';
	src: url('../fonts/Proxima-Nova.eot');
	src: local('☺'), url('../fonts/Proxima-Nova.woff') format('woff'), url('../fonts/Proxima-Nova.ttf') format('truetype'), url('../fonts/Proxima-Nova.svg') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
    font-family: 'Proxima Nova Bold';
    src: url('../fonts/Proxima-Nova-Bold.eot');
	src: local('☺'), url('../fonts/Proxima-Nova-Bold.woff') format('woff'), url('../fonts/Proxima-Nova-Bold.ttf') format('truetype'), url('../fonts/Proxima-Nova-Bold.svg') format('svg');
    font-weight: normal;
    font-style: normal
}

/* -------------------- variables -------------------- */
:root {
	--color-blue: #007bff;
	--color-blue-light: #5799db;
	--color-blue-dark: #002c70;
	--color-blue-deep: #181f2a;
	--color-blue-ice: #00baff;
	--color-blue-grey: #34435a;
	--color-purple: #6f42c1;
	--color-red: #c14365;
	--color-light: #f5f5f5;
	--color-dark: #1a1b21;
	--color-grey: #748ca2;
	--color-green: #33c682;
	--color-green-light: #00fb87;
	--color-yellow: #fac302;
	--color-orange: #f60;
	--body-font: 'Proxima Nova', arial, sans-serif;
	--title-font: 'Roboto Condensed', arial, sans-serif;
}


/* Markup
------------------------------------------------------------------------ */
body {
	/*background: #fafbfd;*/
	background: #f2f4f5;
	/* font-family: 'Questrial', arial, sans-serif; */
	font-family: var(--body-font);
}

h1, h2, h3, h4, h5, h6, p {margin-bottom: 20px; line-height: 1.5em;}
/* h1, h2, h3, h4, h5, h6 {font-family: 'Questrial', arial, sans-serif; font-weight: 700; letter-spacing: -0.025em; color: #1a1b21;} */
h1, h2, h3, h4, h5, h6 {font-family: var(--title-font); font-weight: 700; letter-spacing: -0.025em; color: #1a1b21;}
h1 {font-size: 2.5em; line-height: 1.2em;}
h2 {font-size: 2.2em;}
h3 {font-size: 1.8em;}
h4 {font-size: 1.6em;}
h5 {font-size: 1.4em;}
h6 {font-size: 1.2em;}
p {font-size: 1em; font-weight: 300; line-height: 1.8em; color: #666;}

.headline {font-size: 1.5em; font-weight: 300; letter-spacing: -0.025em; line-height: 1.4; color: #1a1b21;}
.headline.headline-small {font-size: 1.2em;}
.headline.headline-large {font-size: 2em;}
.headline.headline-jumbo {font-size: 2.5em;}
.headline.headline-thin {font-weight: 100;}
.terms {font-size: .8em;}

blockquote {
	padding: 20px;
	margin: 0 0 20px;
	font-size: 1.2em;
}

pre {
	padding: 15px;
	margin: 0 0 20px;
	background: #1a1b21;
	color: #fff;
	font-size: .8em;
}

sup {
	font-size: .7em;
}

hr {
	border-top-color: #e5e5e5;
}

.hr-10 {
	margin: 10px 0;
}
.hr-15 {
	margin: 15px 0;
}
.hr-20 {
	margin: 20px 0;
}
.hr-30 {
	margin: 30px 0;
}
.hr-dark {
	border-top: 1px solid #036;
}
.hr-thick {
	border-top-width: 5px;
}
.hr-trans {
	border-top: 1px solid rgba(255, 255, 255, .25);
}
.hr-spacer {
	border: none;
	margin: 30px 0;
}
.hr-slim {
	width: 10%;
}
.hr-slim-centered {
	width: 10%;
	margin: 30px auto;
}

iframe {
	max-width: 100%;
	margin: 0 0 20px;
}

.spacer-diagonal {
	display: block;
	width: 100%;
	height: 20px;
	margin: 20px 0;
	background: url(../images/pattern-diagonal.png) repeat-x;
}
.spacer-diagonal.diagonal-white {
	background: url(../images/pattern-diagonal-white.png) repeat-x;
}

/* -------------------- helpers -------------------- */
.bold {
	font-weight: bold;
}
.capitalize {
	text-transform: capitalize;
}
.caps {
	text-transform: uppercase;
}
.centered {
	text-align: center;
}
/* centered content */
.content-centered {
	text-align: center;
}
.content-centered p,
.content-centered h1,
.content-centered h2,
.content-centered h3,
.content-centered h4,
.content-centered h5,
.content-centered h6 {
	text-align: center;
}
.content-centered img {
	margin: 0 auto;
}
.clear {
	clear: both;
}
/* embeds */
.embed-left,
.alignleft {
	float: left;
	margin: 0 20px 10px 0;
}
.embed-right,
.alignright {
	float: right;
	margin: 0 0 10px 20px;
}
.aligncenter {
	margin: 0 auto;
}
.embed-static {
	display: block;
	margin: 0 0 20px;
}

.helper-text {
	font-size: .9em;
	font-weight: 300;
	color: #999;
}
.spaced-3 {
	letter-spacing: 3px;
}
.spaced-5 {
	letter-spacing: 5px;
}

.no-margin {
	margin: 0 !important;
}
.margin-b-10 {
	margin: 0 0 10px !important;
}

/* ---------- colors ---------- */
.color-yellow {color: var(--color-yellow) !important;}
.color-orange {color: var(--color-orange) !important;}
.color-green {color: var(--color-green) !important;}
.color-blue {color: var(--color-blue) !important;}
.color-blue-light {color: var(--color-blue-light) !important;}
.color-blue-dark {color: var(--color-blue-dark) !important;}
.color-blue-ice {color: var(--color-blue-ice) !important;}
.color-red {color: var(--color-red) !important;}

/* neutral colors */
.color-white {color: #fff !important;}
.color-grey {color: #748ca2 !important;}
.color-grey-light {color: #f5f5f5 !important;}
.color-grey-medium {color: #ccc !important;}
.color-grey-dark {color: #394656 !important;}
.color-black {color: #000;}
.color-dark {color: #1a1b21 !important;}

/* transparent colors */
.color-trans-black-25 {color: rgba(255, 255, 255, .25) !important;}
.color-trans-black-50 {color: rgba(255, 255, 255, .5) !important;}
.color-trans-black-75 {color: rgba(255, 255, 255, .75) !important;}

.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;}

/* status colors */
.color-completed {color: #33c682 !important;} /* green */

/* ---------- background colors ---------- */
.bg-yellow {background: var(--color-yellow) !important;}
.bg-orange {background: var(--color-orange) !important;}
.bg-green {background: var(--color-green) !important;}
.bg-blue {background: var(--color-blue) !important;}
.bg-blue-light {background: var(--color-blue-light) !important;}
.bg-blue-dark {background: var(--color-blue-dark) !important;}
.bg-blue-ice {background: var(--color-blue-ice) !important;}
.bg-red {background: var(--color-red) !important;}

/* neutral colors */
.bg-white {background: #fff !important;}
.bg-grey-light {background: #f2f4f5 !important;}
.bg-grey {background: #ccc !important;}
.bg-grey-medium {background: #999 !important;}
.bg-grey-dark {background: #333 !important;}
.bg-dark {background: #1a1b21 !important;}


/* ---------- image backgrounds ---------- */
.bg-circles-dots {
	background: url(../images/section-bg-circle-dots.jpg) center center no-repeat !important;
	background-size: cover !important;
}


/* -------------------- icons -------------------- */
.icon-left {
	margin-right: 5px;
}
.icon-right {
	margin-left: 5px;
}


/* -------------------- buttons -------------------- */
.btn.btn-primary:hover,
.btn.btn-cta:hover {
	color: #fff;
	opacity: .5;
}

.btn {
	display: inline-block;
	padding: 12px 30px;
	/* font-family: 'Proxima Nova Bold'; */
	font-family: var(--title-font);
	font-size: 1em;
	font-weight: 700;
	line-height: 1.2;
	border: 2px solid;
	border-radius: 100px;
	text-decoration: none;
	white-space: inherit;
}
.btn:hover {
	text-decoration: none;
}
.btn.btn-cta {
	background: #f60;
	color: #fff;
	border: 2px solid #f60;
}
.btn.btn-cta:hover {
	background: #930;
	border-color: #930; 
}
.btn.btn-secondary {
	background: none;
	color: #1a1b21;
	border: 2px solid;
}
.btn.btn-secondary:hover {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.btn.btn-default {
	background: none;
	color: #1a1b21;
	border: 2px solid #ccc;
}
.btn.btn-default:hover {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.btn.btn-action {
	background: #1a1b21;
	color: #fff;
	border: 2px solid #1a1b21;
}
.btn.btn-action:hover {
	background: #484950;
	color: #fff;
	border-color: #484950;
}
.btn.btn-cancel {
	background: none;
	color: #666;
	border-color: #ccc;
}
.btn.btn-cancel:hover {
	background: #eee;
}
.btn.btn-delete {
	background: #c00;
	color: #fff;
	border: 2px solid #c00;
}
.btn.btn-delete:hover {
	background: #900;
	color: #fff;
	border-color: #900;
}
.btn.btn-primary {
	background: #09c;
	color: #fff;
	border: 2px solid #09c;
}
.btn.btn-primary:hover {
	background: #036;
	color: #fff;
	border: 2px solid #036;
}
.btn.btn-save {
	background: #690;
	color: #fff;
	border: 2px solid #690;
}
.btn.btn-save:hover {
	background: #360;
	color: #fff;
	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-trans {
	background: none;
	color: #fff;
	border: 2px solid rgba(255, 255, 255, .5);
}
.btn.btn-trans:hover {
	background: #fff;
	color: #333;
	border: 2px solid #fff;
}
.btn.btn-white {
	background: #fff;
	color: #1a1b21;
	border: 2px solid #fff;
}
.btn.btn-white:hover {
	background: #1a1b21;
	color: #fff;
	border: 2px solid #1a1b21;
}
.btn.btn-select {
	border-radius: 0;
}
.btn.btn-back {
	border: none;
}
.btn.btn-back:hover {
	background: rgba(0, 0, 0, .1);
}
/* button sizes */
.btn-sm {
	font-size: .85em;
	padding: 8px 20px;
}
.btn-lg {
	font-size: 1.2em;
	padding: 15px 40px;
}
.btn-xl {
	font-size: 1.5em;
	padding: 15px 40px;
}
/* button treatment */
.btn.btn-block {
	padding-right: 0;
	padding-left: 0;
	margin: 0 0 10px;
}
/* btn toggles */
.btn-toggle.open .toggle-status.status-open {
	display: inline-block;
}
.btn-toggle.open .toggle-status.status-closed {
	display: none;
}
.btn-toggle .toggle-status.status-open {
	display: none;
}
.btn-toggle .toggle-status.status-closed {
	display: inline-block;
}

/* -------------------- links -------------------- */
.link {
	display: inline-block;
}
.link-block {
	display: block;
	padding: 10px 0;
	margin: 0 0 10px;
}
.link-white {
	color: #fff;
}
.link-white:hover {
	color: #fff;
	opacity: .5;
}

/* -------------------- lists -------------------- */
ol {
	margin: 0 0 20px 22px;
}
ol li {
	margin: 0 0 10px;
}
ul li,
ol li {
	color: #666;
	font-weight: 300;
}
.list {
	list-style: square;
	margin: 0 0 20px 20px;
}
.list li {
	margin: 0 0 10px;
}
/* list sizes */
.list-small {
	font-size: .85em;
}
.list-large {
	font-size: 1.2em;
}
/* standard list */
.list-standard {
	list-style: square;
	margin: 0 0 20px 20px;
}
.list-standard li {
	margin: 0 0 10px;
}
/* check list */
.list-check {
	list-style: none;
	margin: 0 0 20px;
}
.list-check li {
	position: relative;
	padding-left: 30px;
	margin: 0 0 15px;
}
.list-check li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "\f058";
	font-family: FontAwesome;
}
/* icon list */
.list-icon {
	list-style: none;
	color: #333;
	margin: 0 0 20px !important;
}
.list-icon li {
	position: relative;
	padding: 0 0 0 30px;
	margin: 0 0 20px;
	line-height: 1.4;
}
.list-icon li i {
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	font-size: 1.2em;
	text-align: center;
}
/* inline list */
.list-inline {
	list-style: none;
	margin: 0;
	color: #33505e;
}
.list-inline li {
	display: inline-block;
	margin: 0 20px 0 0;
}
.list-inline li i {
	color: #85a6b5;
}
/* items list */
.list-items {
	list-style: none; 
	margin: 0 0 20px !important;
}
.list-items li {
	margin: 0;
	border-top: 1px solid #ddd;
}
.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: #333;
	border: 2px solid #ccc;
	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 .label-status {
	display: inline-block;
	font-size: .85em;
	margin-left: 5px;
}
.list-items li a .item-title {
	display: block;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}
.list-items li.active a .item-number {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.list-items li.active a .item-title {
	color: #333;
}
.list-items li a:hover {
	text-decoration: none;
}
.list-items li a:hover .item-number {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.list-items li a:hover .item-title {
	color: #333;
}
.list-items li a.item-sub-list-toggle {
	padding: 0 0 10px 60px;
	font-size: .8em;
	color: #999;
}
.list-items li a.item-sub-list-toggle:hover {
	color: #1a1b21;
}
.list-items ul.item-sub-list {
	list-style: none;
	font-size: .9em;
}
.list-items ul.item-sub-list li {
	border: none;
}
.list-items ul.item-sub-list li a {
	padding: 10px 0 10px 60px;
}
.list-items ul.item-sub-list li a:hover {
	background: #eee;
	color: #1a1b21;
}
.list-items ul.item-sub-list li.active a {
	font-weight: 700;
	background: #eee;
	color: #1a1b21;
}
/* 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: #2e3b46;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.list-nav li a:after {
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	top: 15px;
	right: 10px;
	font-size: 1.3em;
	line-height: 1;
	color: #999;
}
.list-nav li a:hover {
	padding-left: 15px;
	background: rgba(0, 0, 0, .1);
	color: #000;
	text-decoration: none;
}
.list-nav li a .nav-title {
	display: block;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.4;
}
.list-nav li a .nav-desc {
	display: block;
	font-size: .85em;
	color: #999;
}
.list-nav li ul {
	list-style: none;
	font-weight: 700;
	padding: 0 0 0 20px;
	margin: 0 0 20px;
	border-left: 2px solid #ddd;
}
.list-nav.nav-light li {
	border-color: rgba(255, 255, 255, .1);
}
.list-nav.nav-light li a {
	color: #fff;
}
.list-nav.nav-light li a:hover {
	background: rgba(255, 255, 255, .1);
}
/* option list */
.list-option {
	list-style: none;
	color: #333;
	margin: 0 0 20px !important;
}
.list-option li {
	position: relative;
	padding: 15px 0 15px 30px;
	margin: 0;
	border-top: 1px solid #ddd;
}
.list-option li i {
	position: absolute;
	top: 13px;
	left: 0;
	width: 20px;
	font-size: 1.2em;
	text-align: center;
}
.list-option li label {
	font-weight: 700;
	margin: 0;
}
/* step list */
.list-step {
	list-style: none; 
	margin: 0 0 20px !important;
}
.list-step li {
	position: relative;
	padding: 0 0 0 40px;
	margin: 0 0 15px;
	line-height: 1.5;
}
.list-step li .step-number {
	position: absolute;
	top: -2px;
	left: 0;
	width: 30px;
	height: 30px;
	padding: 8px 0;
	font-size: .8em;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	background: #1a1b21;
	color: #fff;
	border-radius: 100px;
}
/* tag list */
.list-tags {
	font-size: .85em;
	list-style: none;
	margin: 0 0 20px !important;
}
.list-tags li {
	display: inline-block;
	margin: 0 1px 5px 0;
}
.list-tags li a {
	display: block;
	padding: 5px 10px;
	border-radius: 3px;
	border: 2px solid #ddd;
	text-decoration: none;
}
.list-tags li a:hover {
	border-color: #000;
}
/* list columns */
.list-columns {
	font-size: 0;
	margin: 0 0 2% -2%;
}
.list-columns li {
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	margin: 0 0 2% 2%;
	vertical-align: top;
}
.list-columns.columns-2 li {
	width: 48%;
}
.list-columns.columns-3 li {
	width: 31.33%;
}
.list-columns.columns-4 li {
	width: 23%;
}

/* -------------------- titles -------------------- */
.spacer-title {
	position: relative;
	font-size: 1.2em;
	text-align: center;
}
.spacer-title:before {
	position: absolute;
	top: 23px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #151515;
	content: "";
	z-index: -1;
}
.spacer-title span {
	display: inline-block;
	padding: 10px 20px;
	background: #151515;
	color: #fff;
	font-weight: 700;
	z-index: 10;
}

/* -------------------- misc -------------------- */
/* ---------- misc containers ---------- */
/* audio containers */
.audio-container {
	margin: 0 0 20px;
}
/* video containers */
.video-container {
	position: relative;
    overflow: hidden;
    padding-top: 56.25%;
    padding-bottom: 0;
    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 .fluid-width-video-wrapper {
	position: static;
	padding: 0 !important;
}

/* ---------- misc helpers ---------- */
.mobile-label {
	display: none;
}
.screen-reader-text {
	display: none;
}


/* 02: Header
========================================================================================================================= */
/* hide account headers */
.page-template-template-login .site-header,
.page-template-template-account-registration .site-header,
.page-template-template-account-welcome .site-header {
	display: none;
}

/* hide checkout headers */
.page-template-template-checkout .site-header,
.page-template-template-checkout-paypal .site-header,
.page-template-template-confirmation .site-header {
	display: none;
}

/* hide membership/plan headers */
.page-template-template-membership .site-header,
.page-template-template-plans .site-header {
	display: none;
}

/* hide landing page headers */
.page-template-page-email-optin .site-header,
.page-template-page-sales-page-simple .site-header,
.page-template-page-landing-page-squeeze .site-header {
	display: none;
}

/* header UI styling */
.site-header .bb-header-buttons a.button.outline.signin-button:before {
	display: inline-block;
	content: "\eecd";
	font-family: bb-icons;
	margin-right: 5px;

}
.site-header .header-search-wrap .search-form {
	margin: 0 0 0 20px;
}

/* hide BP notices */
.page-template-template-checkout .bp-sitewide-notice,
.page-template-confirmation .bp-sitewide-notice {
	display: none;
}

.bb-mobile-panel-wrapper .bb-mobile-panel-header {
	background: var(--color-blue-deep);
}


/* 03: Structure
========================================================================================================================= */
.site.site-auth-ux {
	padding: 0;
	margin: 0 auto;
}
.site.site-auth-ux .site-content {
	padding: 0;
	margin: 0;
}

/* -------------------- 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-30 {
	width: 30%;
}
.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%;
}
/* spaced grid */
.rsp-grid.grid-spaced {
	margin-left: -2%;
}
.rsp-grid.grid-spaced .grid-container {
	margin: 0 0 2% 2%;
}
.rsp-grid.grid-spaced .grid-container.container-20 {
	width: 18%;
}
.rsp-grid.grid-spaced .grid-container.container-25 {
	width: 23%;
}
.rsp-grid.grid-spaced .grid-container.container-30 {
	width: 28%;
}
.rsp-grid.grid-spaced .grid-container.container-33 {
	width: 31.33%;
}
.rsp-grid.grid-spaced .grid-container.container-40 {
	width: 38%;
}
.rsp-grid.grid-spaced .grid-container.container-50 {
	width: 48%;
}
.rsp-grid.grid-spaced .grid-container.container-66 {
	width: 64.66%;
}
.rsp-grid.grid-spaced .grid-container.container-75 {
	width: 73%;
}


/* -------------------- member UX -------------------- */
.wrap-app {
	display: table;
	width: 100%;
	min-height: 100vh;
	margin: 15px 0;
}

/* -------------------- app nav -------------------- */
.app-nav {
	background: var(--color-blue-dark);
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	vertical-align: top;
}
.app-nav .nav-user .user-label {
	font-weight: 300;
}
.app-nav .nav-brand {
	width: 150px;
	padding: 0 0 20px;
}
.app-nav .nav-menu ul {
	list-style: none;
	/* font-family: 'Proxima Nova Bold'; */
	font-family: var(--title-font);
	font-weight: 400;
	margin: 0;
}
.app-nav .nav-menu ul li {
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}
/*
.app-nav .nav-menu ul li:first-child {
	border-top: none;
}
*/
.app-nav .nav-menu ul li a {
	position: relative;
	display: block;
	padding: 15px 55px 10px 0;
	color: #fff;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.app-nav .nav-menu ul li a:hover {
	background: rgba(255, 255, 255, 0.1);
	color: var(--color-blue-ice);
	text-decoration: none;
}
.app-nav .nav-menu ul li.menu-toggle a {
	padding: 20px 50px 20px 0;
}
.app-nav .nav-menu ul li.menu-toggle a .menu-icon {
	top: 15px;
}
.app-nav .nav-menu ul li.menu-toggle a .menu-title {
	font-size: .9em;
	font-weight: 300;
}
.app-nav .nav-menu ul li a .menu-icon {
	position: absolute;
	top: 0;
	left: auto;
	right: 5px;
	width: 30px;
	font-size: 1.5em;
	line-height: 1;
	text-align: center;
	opacity: .5;
}
.app-nav .nav-menu ul li a .menu-title {
	display: block;
	font-family: var(--title-font);
	font-size: 1.2em;
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 5px;
}
.app-nav .nav-menu ul li a .menu-desc {
	display: block;
	font-family: var(--body-font);
	font-weight: 300;
	color: rgba(255, 255, 255, .7);
}
.app-nav .nav-menu ul li.menu-notice {
	border: none;
}
.app-nav .nav-menu ul li.menu-notice a {
	padding: 15px;
	border: 1px solid rgba(255, 255, 255, .25);
	border-radius: 4px;
}
.app-nav .nav-menu ul li.menu-notice a:hover {
	padding: 15px;
	border-color: #fff;
}
.app-nav .nav-menu ul li.menu-notice a .menu-title {
	font-size: 1em;
}
.app-nav .nav-menu ul li.menu-notice a .menu-desc {
	font-size: 0.7em;
}

.logged-in .app-nav {
	background-image: linear-gradient(to bottom, var(--color-blue-deep) 10%, var(--color-blue-grey) 78%);
}

/* -------------------- app body -------------------- */
.app-body {
	display: table-cell;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 4px;
	
}
/* compact ui body */
.compact-ui .app-body {
	width: auto;
}

/* -------------------- app header -------------------- */
.app-header {
	position: relative;
	padding: 20px 300px 20px 0;
	margin: 0 30px;
	border-bottom: 1px solid #ddd;
}
.app-header .breadcrumb {
	padding: 0;
	margin: 0;
	font-size: .85em;
	background: none;
	color: rgba(0, 0, 0, .5);
}
.app-header .breadcrumb span {
	margin: 0 5px;
}
.app-header .breadcrumb span:first-child {
	margin-left: 0;
}
.app-header .breadcrumb a {
	color: rgba(0, 0, 0, .5);
}
.app-header .breadcrumb a:hover {
	color: #1a1b21;
}
.app-header .header-label {
	text-transform: uppercase;
	color: rgba(0, 0, 0, .5);
}
.app-header h1 {
	/* font-family: 'Proxima Nova Bold'; */
	font-family: var(--title-font);
	font-size: 2em;
	font-weight: 700;
	margin: 0;
}
.app-header h1 > i {
	display: none;
	/*
	display: inline-block;
	margin: 0 10px 0 0;
	font-weight: normal;
	*/
}
.app-header p {
	color: rgba(0, 0, 0, .7);
}
.app-header p:last-child {
	margin: 15px 0 0;
}

/* header utility */
.app-header .header-utility {
	position: absolute;
	top: 25px;
	right: 0;
}
.app-header .header-utility .utility-link {
	display: block;
	padding: 10px;
	color: #666;
}
.app-header .header-utility .utility-link:hover {
	color: rgba(0, 0, 0, .5);
}

/* header search */
.app-header .search {
	background: rgba(0, 0, 0, .35);
}
.app-header .search .search-input {
	color: #fff;
}
.app-header .search .search-input::placeholder {
  color: rgba(255, 255, 255, .5);
}
.app-header .search .search-submit {
	color: rgba(255, 255, 255, .5);
}
.app-header .search .search-submit:hover {
	color: #fff;
}

/* -------------------- app content -------------------- */
.app-content {
	padding: 30px;
}
.app-content .content-header {
	position: relative;
	padding-right: 30%;
}
.app-content .content-header .header-utility {
	position: absolute;
	bottom: 0;
	right: 0;
}

.app-label {
	display: block;
	padding: 0 0 10px;
	margin: 0 0 20px;
	border-bottom: 1px solid;
}

/* active app page highlighting */
.app-dashboard .menu-dashboard a,
.app-library .menu-library a,
.app-courses .menu-courses a,
.app-events .menu-events a,
.app-live .menu-live a,
.app-community .menu-community a,
.app-forums .menu-forums a,
.app-groups .menu-groups a,
.app-members .menu-members a {
	/* color: #32a50f !important; */
	color: var(--color-blue-light) !important;
}

.app-dashboard .menu-dashboard a .menu-icon,
.app-library .menu-library a .menu-icon,
.app-courses .menu-courses a .menu-icon,
.app-events .menu-events a .menu-icon,
.app-live .menu-live a .menu-icon,
.app-community .menu-community a .menu-icon,
.app-forums .menu-forums a .menu-icon,
.app-groups .menu-groups a .menu-icon,
.app-members .menu-members a .menu-icon {
	opacity: 1.0 !important;
	color: var(--color-blue-light) !important;
}

.page-section,
#page .page-section {
	position: relative;
	padding: 50px;
}
.page-section.section-slim,
#page .page-section.section-slim {
	padding: 30px;
}
.page-section.section-checkout,
#page .page-section.section-checkout {
	padding: 0;
}

.page-section .container {
	width: auto;
}

.page-section.section-cta{
	background-color: #000;
}

/* 04: Components
========================================================================================================================= */
/* -------------------- accordions -------------------- */
.accordion {
    width: 100%;
    border-top: 1px solid #ddd;
}
.accordion-toggle {
    position: relative;
    display: block;
    padding: 20px 20px 20px 70px;
    font-weight: 400;
    text-decoration: none !important;
    color: #1a1b21;
}
.accordion-toggle:hover {
    text-decoration: none;
}
.accordion-toggle .toggle-icon {
    position: absolute;
    top: 18px;
    left: 15px;
    font-size: 1.5em;
    line-height: 1;
    color: #1a1b21;
}
.accordion-toggle.open {
    color: var(--color-blue);
}
.accordion-content {
    display: none;
    padding: 0 20px 20px 70px;
}
.accordion-content p {
    font-size: .9em;
}
.accordion-content p:last-child {
    margin: 0;
}

/* -------------------- avatar -------------------- */
/*
.avatar {
	display: block;
	width: 100px;
	margin: 0 5px 10px 0;
	border-radius: 100px;
}
*/
.avatar.avatar-small {
	width: 75px;
}
.avatar.avatar-mini {
	width: 50px;
}

/* -------------------- card -------------------- */
.card {
	position: relative;
	top: 0;
	margin: 0 0 20px;
	background: #fff;
	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: #fff;
}
.card .card-image > a {
	display: block;
}
.card .card-image img {
	display: block;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.card .card-image > a:hover img {
	opacity: .5;
}
.card .card-image .image-label {
	position: absolute;
	bottom: 20px;
	left: 0;
	padding: 7px 15px;
	font-weight: 900;
	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;
}
.card .card-content p {
	font-size: .85em;
}
.card .card-title {
	margin: 0 0 10px;
}
.card .card-title a {
	color: #1a1b21;
	text-decoration: none;
}
.card .card-title a:hover {
	color: #08c;
}
/* product cards */
.card.card-product {
	position: relative;
	padding: 30px;
	margin: 0 0 30px;
}
.card.card-product .product-title {
	padding: 0 0 20px;
	margin: 0 0 20px;
	font-size: 1.5em;
	font-weight: 700;
	border-bottom: 2px solid #ccc;
}
.card.card-product .product-price {
	font-size: 1.4em;
	font-weight: 700;
	letter-spacing: -1px;
	color: #333;
	margin: 0 0 5px;
}
.card.card-product .btn {
	padding-right: 0;
	padding-left: 0;
}
.card.card-product .product-price .price-sub {
	font-size: .85em;
	font-weight: 300;
	color: #999;
}
.card.card-product .product-desc {
	font-size: 1.2em;
}
.card.card-product.product-recommended {
	margin-top: -15px;
	z-index: 10;
}
.card.card-product .card-content {
	padding: 0;
}
/* wide cards */
.card.card-wide {
	overflow: auto;
	padding: 30px 0;
	margin: 0;
	border: none;
	border-top: 1px solid #ddd;
	box-shadow: none;
}
.card.card-wide .card-image {
	float: left;
	width: 33%;
	height: 240px;
	overflow: hidden;
	background: none;
}
.card.card-wide .card-image > a {
	display: block;
}
.card.card-wide .card-image > a:hover {
	opacity: .5;
}
.card.card-wide .card-image > a img {
	width: auto;
	max-height: 300px;
}
.card.card-wide .card-content {
	margin-left: 33%;
	padding: 15px 30px;
}
/* card variations */
.card.card-product.card-aqua {
	border-top: 5px solid #02bad6;
}
.card.card-product.card-blue {
	border-top: 5px solid #2090d7;
}
.card.card-product.card-green {
	border-top: 5px solid #9c0;
}
.card.card-product.card-purple {
	border-top: 5px solid #5e40b3;
}

/* -------------------- checkout -------------------- */
/* BP specific layout */
.page-template-template-checkout .site-content {
	padding: 0 !important;
}

/* checkout UI */
.checkout {
	position: relative;
}
.checkout br {
	display: none;
}

/* register page */
.checkout ul.list-check li:before {
	/*color: #8c334b;*/
}
/* margin out all p's to avoid WP spacing issues */
.checkout p {
	font-size: 1em;
	margin: 0;
}
.checkout p.headline {
	font-size: 1.2em;
}
.checkout p.instructions {
	margin: 0 0 15px;
}
/* add back margin to specific p's */
.checkout .checkout-terms {
	margin: 0 0 10px;
}

.checkout .checkout-disclaimer {
	padding: 15px;
	margin: 0 0 15px;
	border: 1px solid #ccc;
}
.checkout .checkout-disclaimer .disclaimer-link {
	font-size: .9em;
	font-weight: 700;
	margin: 0 0 10px;
}
.checkout .checkout-disclaimer label {
	display: block;
}

.g-recaptcha {
	margin: 0 0 20px;
}

.checkout p.checkout-security {
	position: relative;
	font-size: 1em;
	font-weight: 700;
	padding-left: 22px;
	margin: 0 0 10px;
}
.checkout p.checkout-security i {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.4em;
}
.checkout p.checkout-terms {
	font-size: .75em;
}

/* ----- checkout columns ----- */
.checkout.checkout-columns {
	margin: 30px auto 0;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}
.checkout-column {
	display: table-cell;
	padding: 50px;
	vertical-align: top;
}
/* ----- product column ----- */
.checkout-column.column-product {
	width: 40%;
	background: #1a1b21;
}
.checkout-column.column-product .product-brand {
	display: block;
	width: 200px;
	margin: 0 0 30px;
}
.checkout-column.column-product .product-brand.brand-fade-in {
	display: none;
}
.checkout-column.column-product .section-image {
	display: block;
	margin: 0 0 15px;
}
.checkout-column.column-product .product-title {
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1.2;
	color: #fff;
}
.checkout-column.column-product h1,
.checkout-column.column-product h2,
.checkout-column.column-product h3,
.checkout-column.column-product h4,
.checkout-column.column-product h5,
.checkout-column.column-product h6 {
	color: #fff;
}
.checkout-column.column-product p {
	color: rgba(255, 255, 255, .75);
	margin: 0 0 20px;
}
.checkout-column.column-product .table {
	color: rgba(255, 255, 255, .75);
	border: none;
}
.checkout-column.column-product .table th,
.checkout-column.column-product .table td {
	padding: 10px 0;
	border-color: rgba(255, 255, 255, .15);
}
.checkout-column.column-product .table th {
	width: 120px;
	color: #fff;
}
.checkout-column.column-product .list-icon li {
	border-color: rgba(255, 255, 255, .15);
}
.checkout-column.column-product .quote p {
	font-size: .85em;
}
/* loading content (fades in with JS) */
.checkout-column.column-product.product-loading .loading-cover {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .5);
    z-index: 100;
}
.checkout-column.column-product.product-loading .loading-cover .loading-status {
	display: block;
	width: 100%;
	padding: 50px;
}
.checkout-column.column-product.product-loading .loading-cover .loading-status .loading-icon {
	display: inline-block;
    width: 40px;
    height: 40px;
    margin-right: 10px;
    vertical-align: middle;
}
.checkout-column.column-product.product-loading .loading-cover .loading-status .status-text {
	font-size: 1em;
	color: #fff;
}
.checkout-column.column-product.product-loading .loading-content {
	display: none;
}
/* ----- payment column ----- */
.checkout-column.column-payment {
	width: 60%;
	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 input {
	padding: 12px; /* reduce padding for checkout inputs */
	outline: none;
}

/* centered checkout */
.checkout.checkout-centered p.checkout-terms,
.checkout.checkout-centered p.checkout-security {
	padding: 0;
	text-align: center;
}
.checkout.checkout-centered p.checkout-security i {
	position: static;
	display: inline-block;
	margin: 0 5px 0 0;
}

/* custom checkout fields */
.checkout-field-compact {
	margin: 0 0 15px;
}
.checkout-field-compact.first-name,
.checkout-field-compact.last-name {
	float: left;
	width: 48%;
}
.checkout-field-compact.last-name {
	margin-left: 4%;
}

.g-recaptcha {
	margin: 0 0 20px;
}

/* -------------------- control toggle -------------------- */
.control-toggle {
	position: relative;
	display: block;
	width: 100px;
	height: 40px;
	margin: 0 auto;
	background: #1a1b21;
	border-radius: 100px;
	-webkit-transition: .5s;
	-moz-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}
.control-toggle .toggle-text {
	position: absolute;
	top: 10px;
	font-size: 1em;
	color: #999;
	cursor: pointer;
	text-decoration: none;
}
.control-toggle .toggle-text:hover {
	color: #1985e3;
}
.control-toggle .toggle-text .text-sub {
	display: block;
	font-size: .7em;
	text-align: center;
	margin: 15px 0 0;
}
.control-toggle .toggle-text.text-left {
	left: -80px;
}
.control-toggle .toggle-text.text-right {
	right: -80px;
}
.control-toggle .toggle-icon {
	display: block;
	width: 100%;
	height: 40px;
	cursor: pointer;
}
.control-toggle .toggle-icon:after {
	position: absolute;
	top: 5px;
	left: 5px;
	content: "";
	width: 30px;
	height: 30px;
	background: #fff;
	border-radius: 100px;
	z-index: 100;
	-webkit-transition: .5s;
	-moz-transition: .5s;
	-o-transition: .5s;
	transition: .5s;
}
/* active toggling */
.control-toggle.active {
	background: #02bad6;
}
.control-toggle .toggle-icon.icon-default {
	display: block;
}
.control-toggle .toggle-icon.icon-active {
	display: none;
}
.control-toggle.active .toggle-icon.icon-default {
	display: none;
}
.control-toggle.active .toggle-icon.icon-active {
	display: block;
}
.control-toggle.active .toggle-icon:after {
	left: inherit;
	right: 5px;
}

/* -------------------- course -------------------- */
.course-actions {
	margin-bottom: 20px;
}
.course-actions .btn {
	display: block;
	width: 100%;
	margin: 0 0 10px;
}
.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: #68dc6b;
	background: -moz-linear-gradient(-45deg, #68dc6b 1%, #2dbb98 100%);
	background: -webkit-linear-gradient(-45deg, #68dc6b 1%,#2dbb98 100%);
	background: linear-gradient(135deg, #68dc6b 1%,#2dbb98 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#68dc6b', endColorstr='#2dbb98',GradientType=1 );
	border-radius: 20px;
	z-index: 5;
}

.course-progress-label {
	display: block;
	font-weight: 300;
	line-height: 1.4;
	margin: 10px 0;
}

/* -------------------- feature -------------------- */
.feature {
	position: relative;
	padding-left: 80px;
	margin: 0 0 30px;
}
.feature .feature-icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 65px;
	font-size: 3em;
	line-height: 1;
	text-align: center;
}
.feature .feature-title {
	line-height: 1.2;
	margin: 0 0 10px;
}

/* circle features */
.feature.feature-circle .feature-icon {
	height: 65px;
	padding: 20px 0;
	font-size: 1.5em;
	background: #1a1b21;
	color: #fff;
	border-radius: 100px;
}

/* feature links */
.feature.feature-link {
	padding: 0;
	margin: 0 0 20px;
}
.feature.feature-link > a {
	position: relative;
	display: block;
	padding: 20px 50px 20px 65px;
	color: #777;
	border: 1px solid #D6D9DD;
	border-radius: 4px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.feature.feature-link > a:after {
	position: absolute;
	top: 50%;
	right: 20px;
	height: 50px;
	margin-top: -25px;
	content: "\f105";
	font-family: FontAwesome;
	font-size: 3em;
	line-height: 1;
	color: #ccc;
}
.feature.feature-link > a:hover {
	background: #f2f4f5;
	border-color: #000;
	text-decoration: none;
}
.feature.feature-link > a:hover:after {
	color: #000;
}
.feature.feature-link .feature-icon {
	top: 20px;
	left: 20px;
	width: 40px;
	padding: 0;
	font-size: 2em;
	line-height: 1;
	text-align: center;
	color: #999;
	border: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.feature.feature-link .feature-title {
	display: block;
	font-size: 1.4em;
	font-weight: 700;
	text-transform: none;
	color: #333;
	margin: 0 0 10px;
}
.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;
}

/* -------------------- filter -------------------- */
.filter {
	position: relative;
	/*padding: 20px;*/
	margin: 0 0 30px;
	background: #fff;
	/*border: 1px solid #ddd;*/
}
.filter input[type="text"] {
	padding: 11px;
}
.filter .label-option.option-block {
	margin: 0;
	border: none;
}
.filter .filter-utility {
	position: absolute;
	top: -7px;
	right: 0;
}
.filter .filter-group {
	margin: 0 0 20px;
}
.filter .filter-group .group-title {
	display: block;
	font-weight: 700;
	margin: 0 0 10px;
}
/* horizontal filter */
.filter.filter-horizontal {
	padding: 20px 20px 20px 200px;
	text-align: right;
}
.filter.filter-horizontal .filter-title {
	position: absolute;
	top: 20px;
	left: 10px;
	padding: 10px;
}
.filter.filter-horizontal .filter-group {
	display: inline-block;
	width: 220px;
	padding: 0 5px;
	margin: 0;
	border: none;
	vertical-align: top;
}
.filter.filter-horizontal .filter-group select,
.filter.filter-horizontal .filter-group .btn-select {
	display: block;
	height: 44px;
	font-size: .9em;
	border-radius: 0;
}
.filter.filter-horizontal .filter-group .dropdown-menu {
	width: 100%;
}
.filter.filter-horizontal .filter-group .dropdown-menu li:first-child .filter-option {
	border-top: none;
}
.filter.filter-horizontal .filter-group .dropdown-menu li label {
	position: relative;
	padding: 10px 0 10px 20px;
	margin: 0;
	cursor: pointer;
	font-weight: normal;
}
.filter.filter-horizontal .filter-group .dropdown-menu li label input {
	position: absolute;
	top: 12px;
	left: 0;
	margin: 0;
}

/* ----- 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 {
	font-size: .85em;
	font-weight: 700;
	margin: 0 0 10px;
	color: #1a1b21;
}
.filter .facetwp-checkbox:hover,
.filter .facetwp-radio:hover {
	color: #09c;
}
.filter .facetwp-type-checkboxes .facetwp-depth {
	margin: 0 0 20px 20px;
}
.filter .facetwp-type-checkboxes .facetwp-depth .facetwp-checkbox {
	font-weight: 400;
}
/* fsslect */
.filter .facetwp-type-fselect .fs-wrap,
.filter .facetwp-type-fselect .fs-dropdown {
	width: 100%;
}
/* search */
.filter .facetwp-search-wrap {
	display: block;
	width: 100%;
}
.filter .facetwp-search-wrap .facetwp-search {
	padding-right: 40px;
}
.filter .facetwp-search-wrap .facetwp-btn {
	top: 12px;
	right: 10px;
	font-style: normal;
	text-align: center;
}
.filter .facetwp-search-wrap .facetwp-btn:hover {
	opacity: 1.0;
}
.filter .facetwp-search-wrap .facetwp-btn:before {
	content: "\f002";
	font-family: FontAwesome;
	background: none;
}

/* -------------------- gallery -------------------- */
.gallery ul {
	list-style: none;
	margin: 0 0 20px -3%;
	overflow: auto;
}
.gallery ul li {
	float: left;
	width: 22%;
	margin: 0 0 3% 3%;
	/*max-height: 140px;*/
	background: #000;
	overflow: hidden;
}
.gallery ul li a {
	display: block;
}
.gallery ul li img {
	width: 100%;
}
.gallery ul li img:hover {
	opacity: .5;
}

/* -------------------- hero -------------------- */
.hero {
	position: relative;
	width: 100%;
	background: #1a1b21;
}
.hero.hero-brand {
	background: url(../images/hero-bg-desk.jpg) center center #1a1b21;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.hero .hero-wrap {
	padding: 50px;
	background: rgba(0, 0, 0, .6);
}
.hero .hero-wrap.wrap-membership {
	padding: 100px;
}
.hero .hero-wrap.wrap-full-height {
	min-height: 100vh;
}

/* hero brand */
.hero .hero-brand {
	padding: 0 0 20px;
	margin: 0 0 30px;
	border-bottom: 1px solid #fff;
}
.hero .hero-brand img {
	display: block;
	width: 100%;
	max-width: 150px;
	margin: 0 auto;
}

/* hero content */
.hero .hero-content {
	padding: 30px;
}
.hero .hero-content h2,
.hero .hero-content h3,
.hero .hero-content h4,
.hero .hero-content h5,
.hero .hero-content h6,
.hero .hero-content p,
.hero .hero-content ol {
	color: #fff;
}

/* hero UI elements */
.hero .hero-label {
	color: rgba(255, 255, 255, .7);
}
.hero .hero-desc p {
	color: #fff;
}

/* hero form */
.hero .hero-form {
	padding: 50px;
	background: #fff;
}
.hero .hero-form .form-registration p {
	margin: 0;
}
.hero .hero-form br {
	display: none;
}
.hero .hero-form p.checkout-terms,
.hero .hero-form p.checkout-security {
	margin: 10px 0 0;
}

.hero .hero-form.form-trans {
	background: rgba(0, 0, 0, .5);
	backdrop-filter: blur(3px);
}
.hero .hero-form.form-trans h2,
.hero .hero-form.form-trans h3,
.hero .hero-form.form-trans h4,
.hero .hero-form.form-trans h5,
.hero .hero-form.form-trans h6 {
	color: #fff;
}
.hero .hero-form.form-trans p {
	color: rgba(255, 255, 255, .7);
}

/* -------------------- item -------------------- */
.item {
	position: relative;
}
.item .meta a {
	color: #333;
}
.item .meta a:hover {
	color: #09c;
}
.item .item-title {
	font-weight: 700;
	margin: 0 0 5px;
}
.item .item-title a {
	color: #1a1b21;
	font-weight: 700;
	text-decoration: none;
}
.item .item-title a:hover {
	color: #007bff;
}
.item p {
	margin: 0 0 10px;
}
.item p:last-child {
	margin: 0;
}
.item-content {
}
/* item action */
.item .item-action {
	position: absolute;
	top: 20px;
	right: 0;
	width: 150px;
	text-align: right;
}
.item .item-action .label {
	display: block;
	margin: 10px 0;
}
/* item form */
.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;
}

/* items with images */
.item.item-with-image {
	min-height: 190px;
	padding: 20px 180px 20px 170px;
	border-top: 1px solid #e5e5e5;
}
.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: 4px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-with-image .item-image img:hover {
	transform: scale(1.05);
}
.item.item-with-image .item-image.image-circle img {
	border-radius: 500px;
}
.item.item-with-image .item-icon {
	position: absolute;
	top: 20px;
	left: 0;
}
.item.item-with-image .item-icon > a {
	display: block;
	width: 75px;
	padding: 20px 0;
	font-size: 2em;
	text-align: center;
	text-decoration: none;
	border: 2px solid #ccc;
	border-radius: 300px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-with-image .item-icon > a:hover {
	background: rgba(0, 0, 0, .1);
}
/* list items */
.item.item-list {
	min-height: 70px;
	padding: 18px 0 14px 50px;
}
.item.item-list .item-icon {
	position: absolute;
	top: 15px;
	left: 0;
}
.item.item-list .item-title {
	padding-right: 120px;
}
.item.item-list .item-icon > a {
	display: block;
	width: 40px;
	padding: 10px 0;
	font-size: 1em;
	text-align: center;
	text-decoration: none;
	background: rgba(0, 0, 0, .05);
	border-radius: 4px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-list .item-icon > a:hover {
	background: rgba(0, 0, 0, .15);
}
.item.item-list .item-child {
	min-height: inherit;
	padding: 10px 0 10px 40px;
	border: none;
}
.item.item-list .item-child .item-icon {
	top: 10px;
}
.item.item-list .item-child .item-icon > a {
	width: 30px;
	padding: 8px 0;
	font-size: .85em;
}
.item.item-list .item-child .item-title {
	padding-right: 0;
}
.item.item-list .item-utility {
	position: absolute;
	top: 18px;
	right: 0;
}
.item.item-list .item-utility .utility-link {
	display: block;
	padding: 7px 0;
	font-size: .8em;
	font-weight: bold;
}
/* list user items */
.item.item-list-user {
	min-height: 50px;
	padding: 0 0 0 50px;
	margin: 0 0 10px;
	border: none;
}
.item.item-list-user .item-image {
	top: 0;
	width: 40px;
}
.item.item-list-user .item-title {
	font-size: 1em;
	margin: 0;
}
.item.item-list-user .item-title .title-helper {
	display: inline-block;
	font-size: .8em;
	margin-left: 5px;
}
.item.item-with-image .item-image.image-circle img {
	max-height: 80px;
}
/* module items */
.item.item-module {
	padding: 15px 0 15px 70px;
	border-top: 1px solid #ddd;
}
.item.item-module .item-number {
	position: absolute;
	top: 15px;
	left: 0;
	width: 50px;
	height: 50px;
	padding: 15px 0;
	font-size: 1em;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	color: #0c253c;
	border: 2px solid;
	border-radius: 100px;
}
.item.item-module .item-action {
	position: static;
	text-align: left;
}
.item.item-module .item-action .btn {
	display: inline-block;
	width: auto;
	padding: 5px 15px;
	font-size: .8em;
}
.single-course .item.item-module .item-action .btn {
	display: none; /* hide these on single course views (too much UI) */
	width: auto;
	padding: 5px 15px;
	font-size: .8em;
}

/* image icons */
.item.item-with-image .item-image.image-icon a {
	display: block;
	padding: 20px 0;
	font-size: 2em;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	color: #666;
	border: 1px solid #ddd;
}
.item.item-with-image .item-image.image-icon a:hover {
	background: #eee;
	color: #1a1b21;
	border-color: #1a1b21;
}

/* 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 feed */
.item-feed .item:first-child,
.item-feed .item.item-with-image:first-child {
	padding-top: 0;
	border-top: none;
}
.item-feed .item.item-with-image:first-child .item-image {
	top: 0;
}

/* -------------------- loading -------------------- */
.loading-ui,
.app-content .loading {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 2000;
}
.loading-ui .loading-status,
.app-content .loading .loading-status {
	position: absolute;
    top: 40%;
    left: 50%;
    width: 300px;
    margin-left: -150px;
    padding: 30px 0;
    background: rgba(0, 0, 0 , .5);
    color: #fff;
    text-align: center;
    z-index: 2001;
}
.loading-ui .loading-status .loading-icon,
.app-content .loading .loading-status .loading-icon {
	display: inline-block;
    width: 40px;
    height: 40px;
    margin-right: 10px;
    vertical-align: middle;
}
.loading-ui .loading-status .status-text,
.app-content .loading .loading-status .status-text {
	font-size: .85em;
}

/* -------------------- meta -------------------- */
.meta {
	font-size: .85em;
}
.meta .meta-label {
	display: inline-block;
	font-weight: 700;
	margin: 0 5px 5px 0;
	color: #999;
}
.meta .meta-label.label-cat {
	color: #333;
}
.meta .meta-label.label-type {
	color: #02bad6;
}

/* -------------------- metric -------------------- */
.metric {
	position: relative;
	display: inline-block;
	min-height: 80px;
	padding: 0 0 0 90px;
	margin: 0 0 20px;
	vertical-align: top;
}
.metric .metric-icon {
	position: absolute;
	top: 0;
	left: 15px;
	width: 60px;
	font-size: 3em;
	line-height: 1;
	text-align: center;
	color: #aaa;
}
.metric .metric-label {
	display: block;
	font-weight: 900;
	margin: 0 0 10px;
}
.metric .metric-value {
	display: block;
	font-size: 2em;
	font-weight: 300;
	line-height: 1.2;
	text-transform: capitalize;
	margin: 0;
}
.metric .metric-value.value-small {
	font-size: 1.2em;
}
.metric .metric-list {
	list-style: none;
	margin: 15px 0 0;
}
.metric .metric-list li {
	margin: 0 0 10px;
}
/* small metrics */
.metric.metric-small {
	padding-left: 75px;
}
.metric.metric-small .metric-icon {
	width: 50px;
	font-size: 2.5em;
}
.metric.metric-small .metric-value {
	font-size: 1.4em;
}
/* metrics without icons */
.metric.metric-no-icon {
	padding-left: 20px;
	border-left: 3px solid #ccc;
}
/* stacked metrics */
.metric.metric-stacked {
	display: block;
	padding-top: 25px;
	padding-bottom: 25px;
	margin: 0;
	border-top: 1px solid #ccc;
}
.metric.metric-stacked .metric-icon {
	top: 20px;
}
.metric.metric-stacked .metric-label {
	margin: 0 0 5px;
}
.metric.metric-stacked .metric-value {
	font-size: 1.5em;
}

/* -------------------- pagination -------------------- */
.pagination,
.facetwp-pager {
	display: block;
	padding: 20px;
	border: 1px solid #ddd;
	border-radius: 0;
}
.pagination .page-numbers,
.facetwp-pager .facetwp-pager-label {
	display: inline-block;
	padding: 5px 10px;
	border: 2px solid #ccc;
}
.facetwp-pager .facetwp-page {
	display: inline-block;
	padding: 5px 10px;
	margin: 0 5px 5px 0;
	border: 2px solid #ccc;
	text-decoration: none;
}
.pagination .page-numbers:hover,
.facetwp-pager .facetwp-page:hover {
	border-color: #1a1b21;
}
.pagination .page-numbers.current,
.facetwp-pager .facetwp-page.active {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.pagination.credo-paging {
	display: none;
}

/* -------------------- post -------------------- */
/* post columns */
.post-columns {
	display: table;
}
.post-columns .column-primary,
.post-columns .column-secondary {
	display: table-cell;
	vertical-align: top;
}
.post-columns .column-primary {
	width: 70%;
	padding: 15px 0 0 30px;
}
.post-columns .column-secondary {
	width: 30%;
	padding: 15px 0 0;
}
/* post header */
.post-header {
	display: table;
}
.post-header h1 {
	margin: 0;
}
/* post content */
.post-content ul,
.post-content ol {
	margin: 0 0 30px 20px;
}
.post-content li {
	margin: 0 0 10px;
	line-height: 1.5;
}
.post-content .gform_fields {
	margin: 0 0 20px;
}
.post-content .share-links {
	margin: 0 0 30px;
}

/* post navigation */
.post-nav {
	padding: 20px;
	margin: 0 0 15px;
	background: #fff;
	border: 2px solid #ddd;
	overflow: auto;
}
.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: 400;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #999;
}
.post-nav .nav-previous:before {
	content: "Previous";
}
.post-nav .nav-next:before {
	content: "Next";
}
.post-nav a {
	display: block;
	position: relative;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.4;
}
.post-nav .nav-previous a {
	padding: 10px 10px 10px 35px;
}
.post-nav .nav-next a {
	padding: 10px 35px 10px 10px;
	text-align: right;
}
.post-nav .nav-previous a:before,
.post-nav .nav-next a:before {
	position: absolute;
	top: 10px;
	font-family: FontAwesome;
	font-size: 1.4em;
	line-height: 1;
}
.post-nav .nav-previous a:before {
	left: 0;
	content: "\f137";
}
.post-nav .nav-next a:before {
	right: 0;
	content: "\f138";
}
.post-nav .no-link {
	display: inline-block;
	padding: 5px 10px;
	margin: 10px 0 0;
	font-size: .85em;
	font-weight: 700;
	background: #eee;
	color: #333;
}

/* -------------------- quote -------------------- */
.quote {
	padding: 30px;
	margin: 0 0 30px;
}
.quote blockquote {
	padding: 0;
	margin: 0 0 20px;
}
.quote.quote-light p {
	color: #fff;
}

/* -------------------- search -------------------- */
.search-wrap {
	padding-top: 30px;
}

.site-search {
	position: relative;
	background: #eee;
	padding-right: 50px;
	margin: 0 0 15px;
	border-radius: 100px;
}
.site-search .search-input {
	padding: 15px 20px;
	background: none;
	border: none;
	outline: none;
}
.site-search .search-submit {
	position: absolute;
	top: 0;
	right: 5px;
	padding: 15px;
	background: none;
	color: #999;
	border: none;
}
.site-search .search-submit:hover {
	background: none;
	color: #333;
}

/* -------------------- social share links -------------------- */
.share-links {
	list-style: none;
	font-size: 1em;
	margin: 0;
}
.share-links li {
	display: inline-block;
	margin: 0;
}
.share-links li a {
	display: inline-block;
	vertical-align: top;
	padding: 10px;
	width: 48px;
	background: #333;
	color: #fff;
	text-align: center;
	border-radius: 3px;
}
.share-links li a:hover {
	background: #666;
}
.share-links li.facebook a {
	background: #4c66a4;
}
.share-links li.facebook a:hover {
	background: #2b4585;
}
.share-links li.twitter a {
	background: #55acee;
}
.share-links li.twitter a:hover {
	background: #277ec1;
}
.share-links li.google a {
	background: #dd4b39;
}
.share-links li.google a:hover {
	background: #ad2312;
}
.share-links li.linkedin a {
	background: #287bbc;
}
.share-links li.linkedin a:hover {
	background: #1b5480;
}

/* -------------------- social nav -------------------- */
.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: 12px 0;
	width: 40px;
	background: #1a1b21;
	color: #fff;
	border-radius: 100px;
	text-decoration: none;
}
.social-nav li a:hover {
	background: #666;
}
.social-nav li a.nav-message {
	padding: 12px 20px;
	width: auto;
}
.social-nav li a.nav-message:hover {
	background: #0a748f;
}
.social-nav li a.nav-message i {
	margin-right: 5px;
}
.social-nav.nav-large {
	font-size: 1.5em;
}
.social-nav.nav-large li a {
	width: 60px;
	height: 60px;
	padding: 18px 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;
}

/* -------------------- status steps -------------------- */
.status-steps {
	position: relative;
	display: table;
	width: 100%;
	margin: 0 0 20px;
}
.status-steps .step {
	position: relative;
	display: table-cell;
	padding: 0;
	text-align: center;
	vertical-align: top;
}
.status-steps .step:before {
	content: "";
	position: absolute;
	top: 18px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #ddd;
}
.status-steps .step:first-child {
	text-align: left;
}
.status-steps .step:last-child {
	text-align: right;
}
.status-steps .step label {
	position: relative;
	display: inline-block;
	min-height: 40px;
	padding: 10px 15px 10px 45px;
	background: #fff;
	color: rgba(0, 0, 0, .35);
}
.status-steps .step label .step-number {
	position: absolute;
	top: -2px;
	left: 0;
	padding: 10px 0;
	width: 42px;
	height: 42px;
	background: rgba(0, 0, 0, .1);
	color: rgba(0, 0, 0, .35);
	font-size: .8em;
	text-align: center;
	border: 5px solid #fff;
	border-radius: 30px;
}
.status-steps .step label .step-label {
	font-size: .85em;
}
.status-steps .step.active label {
	color: #1a1b21;
}
.status-steps .step.active label .step-number {
	background: #1a1b21;
	color: #fff;
}
.status-steps .step.step-centered {
	text-align: center;
}
.status-steps .step.step-right {
	text-align: right;
}
.status-steps.steps-3 .step {
	width: 33.33%;
}
.status-steps.steps-4 .step {
	width: 25%;
}

/* -------------------- 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: #1a1b21;
	color: #fff;
	border-radius: 100px;
}
.step .step-number.number-active {
	background: #1a1b21;
}
.step .step-title {
	line-height: 1.2;
	padding: 10px 0 0;
	margin: 0 0 5px;
}
.step p {
	font-size: .9em;
}

/* -------------------- tags --------------------- */
.tags {
	font-size: .8em;
}
.tags a,
.tags span {
	display: inline-block;
	padding: 5px 10px;
	margin: 0 1px 5px 0; 
	border: 2px solid #ddd;
	border-radius: 3px;
}

/* -------------------- 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;
}

/* -------------------- users -------------------- */
.user {
	position: relative;
	min-height: 80px;
	padding-left: 100px;
}
.user .user-avatar {
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
}
.user .user-avatar img {
	border-radius: 100px;
}
.user .user-label {
	display: block;
	font-size: .8em;
	margin: 0 0 10px;
}
.user .user-title {
	display: block;
	font-weight: 700;
	margin: 0 0 5px;
}
.user .user-title a {
	color: #1a1b21;
}
.user .user-title a:hover {
	color: #007bff;
}
.user .user-desc {
	display: block;
	font-size: .85em;
	font-weight: 300;
}
.user-rating {
	display: block;
	margin: 0 0 5px;
	color: #09c;
}
/* ----- user sizes ----- */
/* micro users */
.user.user-micro {
	padding-left: 65px;
	min-height: 60px;
}
.user.user-micro .user-avatar {
	width: 50px;
}
/* small users */
.user.user-small {
	padding-left: 75px;
}
.user.user-small .user-avatar {
	width: 60px;
}
/* large users */
.user.user-large {
	min-height: 100px;
	padding-left: 120px;
}
.user.user-large .user-avatar {
	width: 100px;
}
/* metric users */
.user.user-metric {
	margin-left: 15px;
}

/* -------------------- widget -------------------- */
/*
.widget {
	padding: 30px;
	margin: 0 0 30px;
	background: #fff;
	border: 1px solid #ccc;
	border-top: 2px solid #333;
}
*/
.widget .widget-label {
	display: block;
	padding: 0 0 15px;
	margin: 0 0 15px;
	letter-spacing: 2px;
	text-transform: uppercase;
	border-bottom: 1px solid #ccc;
}
.widget .widget-title {
	font-size: 1.5em;
	font-weight: 700;
	margin: 0 0 10px;
}

.widget ul {
	list-style: none;
	margin: 0 0 20px;
}
.widget ul li {
	margin: 0;
	border-top: 1px solid #eee;
}
.widget ul li a {
	display: block;
	padding: 10px 0;
}
.widget ul li a:hover {
	padding-left: 10px;
	font-weight: 700;
}


/* 05: Footer
========================================================================================================================= */
.site-footer {
	padding: 30px;
	background: #1a1b21;
}
.site-footer > .container {
	width: auto;
}
.site-footer .footer-column {
	padding: 15px 0; 
}
.site-footer .footer-title {
	font-weight: 700;
	color: #333;
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 2px solid #ccc;
}
.site-footer hr {
	border-top: 1px solid #ccc;
	border-bottom: none;
}
.footer-nav {
	list-style: none;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	margin: 0 0 20px;
}
.footer-nav li {
	display: inline-block;
	margin: 0;
	border-left: 1px solid rgba(0, 0, 0, .15);
	vertical-align: top;
}
.footer-nav li:first-child {
	border-left: none;
}
.footer-nav li a {
	display: block;
	color: #999;
	padding: 0 20px;
}
.footer-nav li a:hover {
	color: #000;
	text-decoration: none;
}
.footer-nav li:first-child a {
	padding-left: 0;
}
.footer-nav li i {
	margin: 1px 5px 0 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: #fff;
}

/* footer icons */
.footer-icons {
	list-style: none;
	font-size: 1.5em;
	margin: 0 0 20px;
}
.footer-icons li {
	display: inline-block;
	margin: 0 10px 0 0;
	vertical-align: top;
}
.footer-icons li a {
	display: block;
	color: #fff;
}
.footer-icons li a:hover {
	opacity: .5;
	text-decoration: none;
}

.site-footer label {
	color: #999;
}
.site-footer input[type="text"],
.site-footer input[type="email"] {
	background: #eee;
	box-shadow: none;
	width: 100%;
	margin: 0 0 15px;
}
.site-footer input[type="submit"] {
	display: block;
	width: 100%;
	padding: 12px 0;
	background: none;
	color: #333;
	border: 2px solid #999;
}
.site-footer input[type="submit"]:hover {
	background: #333;
	color: #fff;
	border-color: #333;
}

/* copyright and site credit */
.site-footer p.copyright {
	font-size: .85em;
	margin: 0;
	color: rgba(255, 255, 255, .5);
}
.site-footer p.copyright a {
	color: rgba(255, 255, 255, .5);
}
.site-footer p.copyright a:hover {
	text-decoration: underline;
}
.site-footer p.site-credit {
	font-size: .85em;
	text-align: right;
	color: rgba(255, 255, 255, .5);
}
.site-footer p.site-credit a {
	font-weight: 700;
	color: #fff;
}
.site-footer p.site-credit a:hover {
	color: rgba(255, 255, 255, .5);
}

/* login/checkou footer */
.page-template-template-login .site-footer,
.page-template-template-checkout .site-footer {
	display: none;
}


/* 06: Forms
========================================================================================================================= */
/* -------------------- global form elements -------------------- */
.form-container {
	padding: 30px;
	border: 1px solid #ccc;
}
.input-container {
	margin: 0 0 20px;
}

/* -------------------- labels -------------------- */
label {
	font-size: 1em;
	font-weight: 700;
	margin-bottom: 10px;
}
.label-block {
	display: block;
}
.label-helper {
	font-size: .85em;
	font-weight: 300;
	color: #999;
}
.label-title {
	display: block;
	margin: 0 0 20px;
}
/* option labels */
.label-option {
	position: relative;
	display: inline-block;
	padding: 10px 15px 10px 30px;
	margin: 0 5px 1px 0;
	font-size: .85em;
	font-weight: 300;
	cursor: pointer;
	border: 1px solid #ccc;
	border-radius: 4px;
}
.label-option:hover {
	background: #eee;
}
.label-option input {
	position: absolute;
	top: 10px;
	left: 10px;
	margin: 0;
}
.label-option .option-title {
	display: block;
	font-size: .9em;
}
.label-option .option-desc {
	display: block;
	font-size: .85em;
	font-weight: 300;
	color: #999;
	margin: 5px 0 0;
}
.label-option.option-block {
	display: block;
	margin: 0 0 10px;
}
.label-option.option-block input {
	margin: 0;
}
/* select labels */
.label-select {
	position: relative;
	padding: 15px 10px 15px 35px;
	margin: 0;
	cursor: pointer;
	color: #333;
	border-top: 1px solid #ccc;
}
.label-select:hover {
	color: #9c0;
}
.label-select input {
	position: absolute;
	top: 18px;
	left: 10px;
	margin: 0;
}
/* check labels */
.label-check {
	position: relative;
	padding: 0 0 0 25px;
	margin: 0 0 20px;
	font-size: .85em;
	cursor: pointer;
}
.label-check input {
	position: absolute;
	top: -2px;
	left: 0;
}
/* type labels */
.label.label-type {
	background: none;
	border-left: 2px solid;
}

.label.label-type.type-ice {
	color: var(--color-blue-ice);
}

/* inputs */
input[type="text"],
input[type="email"],
input[type="phone"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
textarea {
	display: block;
	width: 100%;
	padding: 15px;
	height: auto;
	background-color: none;
	border: 1px solid #ccc;
	box-shadow: none;
	border-radius: 4px;
	outline: none;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="phone"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
textarea:focus {
	border-color: #1a1b21;
}
select,
select[multiple], select[size] {
	width: 100%;
	padding: 10px;
	height: 52px;
	border-radius: 3px;
	background: #f5f5f5;
	color: #333;
	border: 1px solid #ccc;
}
textarea {
	height: 100px;
}
input[type="submit"],
button[type="submit"] {
	color: #fff;
	background: #1a1b21;
	padding: 12px 30px;
	font-weight: 700;
	font-size: 1em;
	line-height: 1.2;
	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: #484950;
	color: #fff;
}

.required {
	color: #c00;
}

/* -------------------- auth -------------------- */
/* auth brand */
.auth-brand {
	padding: 30px 0;
	background: #1a1b21;
}
.auth-brand img {
	display: block;
	width: 200px;
	margin: 0 auto;
}
/* auth container */
.auth-container {
	margin: 0 auto;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.auth-container .container-form {
	padding: 50px;
}
.auth-container.container-columns {
	width: auto;
}
.auth-container h3 {
	text-align: center;
}
/* auth content / form */
.auth-content,
.auth-form {
	padding: 50px;
}
.auth-form {
	border-right: 1px solid #ddd;
}


/* 07: Tables
========================================================================================================================= */
table th {
	color: #333;
}

.column-action {
	text-align: right;
}

/* action tables */
.table.table-action {
	margin: 20px 0;
	border: 1px solid #ccc;
}
.table.table-action thead {
	background: #eee;
}
.table.table-action th,
.table.table-action td {
	padding: 15px;
}
.table.table-action .column-name {
	min-width: 300px;
}
.table.table-action .column-desc {
	font-size: .9em;
}
.table.table-action .column-action {
	min-width: 250px;
}

/* comparison table */
.table.table-compare {
	table-layout: fixed;
	font-size: 1em;
	color: #1a1b21;
	margin: 0 0 30px;
	border: none;
}
.table.table-compare thead {
	background: none;
}
.table.table-compare thead th {
	font-weight: 700;
	border-bottom: 2px solid #ccc;
}
.table.table-compare th,
.table.table-compare td {
	padding: 20px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.table.table-compare tbody tr {
	position: relative;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.table.table-compare tbody th {
	position: relative;
	padding-left: 50px;
	font-weight: 700;
}
.table.table-compare tbody th i {
	position: absolute;
	top: 18px;
	left: 0;
	width: 40px;
	font-size: 1.75em;
	font-weight: 900;
	text-align: center;
}
.table.table-compare tbody th .btn {
	margin: -3px 0 0 10px;
	vertical-align: top;
}
.table.table-compare tbody td {
	text-align: center;
}
.table.table-compare tbody td i {
	font-size: 1.5em;
	line-height: 1;
	margin-right: 5px;
}
.table.table-compare tbody td.column-yes {
	font-weight: 700;
}
.table.table-compare tbody tr:hover th,
.table.table-compare tbody tr:hover td {
	background: #f5f5f5;
}
.table.table-compare tbody tr.row-header th,
.table.table-compare tbody tr.row-header td {
	font-weight: 700;
	background: #f9f9f9;
	border-top: 1px solid #ccc;
}
.table.table-compare tbody tr.row-header th {
	font-weight: 300;
	letter-spacing: 5px;
	text-transform: uppercase;
}

/* contact tables */
.table.table-contact {
	font-size: .9em;
	border: none;
}
.table.table-contact th,
.table.table-contact td {
	padding: 15px 0;
}
.table.table-contact tbody th {
	width: 150px;
}
.table.table-contact tbody th i {
	display: inline-block;
	width: 20px;
	margin: 0 5px 0 0;
	text-align: center;
}

/* data tables */
.table.table-data {
	font-size: .85em;
	border: 1px solid #ddd;
}
.table.table-data thead {
	background: #f5f5f5;
}
.table.table-data th,
.table.table-data td {
	padding: 15px;
}
.table.table-data tbody th {
	width: 200px;
}

/* detail tables */
.table.table-detail {
	font-size: .9em;
	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 {
	display: inline-block;
	width: 20px;
	margin: 0 5px 0 0;
	text-align: center;
}

/* 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: 140px;
}

/* list tables */
.table.table-list {
	margin: 0 0 30px;
	border-top: 2px solid #1a1b21;
	border-bottom: 1px solid #ddd;
	border-right: none;
	border-left: none;
	border-radius: none;
}
.table.table-list th,
.table.table-list td {
	padding: 15px 0;
	border-top: 1px solid #ddd;
}
.table.table-list th {
	width: 150px;
}
.table.table-list th i {
	width: 18px;
	text-align: center;
	margin-right: 10px;
	color: #333;
}

/* meta tables */
.table.table-meta {
	font-size: .85em;
}
.table.table-meta th,
.table.table-meta td {
	padding: 15px 0;
}
.table.table-meta th {
	width: 120px;
}

/* profile tables */
.table.table-profile {
	font-size: .85em;
	border-bottom: 1px solid #ddd;
}
.table.table-profile th,
.table.table-profile td {
	padding: 15px 0;
}
.table.table-profile tbody th {
	width: 200px;
}
.table.table-profile tbody th i {
	display: inline-block;
	width: 20px;
	margin: 0 5px 0 0;
	text-align: center;
}


/* 08: Bootstrap
========================================================================================================================= */
.container {
	padding: 0;
	max-width: 1400px;
}

/* ----- alert ----- */
.alert {
	color: #1a1b21;
	border: none;
	border-radius: 0;
}
.alert p {
	margin: 0 0 15px;
}
.alert p:last-child {
	margin: 0;
}
.alert.alert-info /* slate */ {
	background: #f0f9ff;
	border-left: 4px solid #09c;
}
.alert.alert-danger /* red */ {
	background: #feecee;
	border-left: 4px solid #c00;
}
.alert.alert-primary /* dark */ {
	background: #f5f5f5;
	border-left: 4px solid #1a1b21;
}
.alert.alert-success /* green */ {
	background: #e8fdf2;
	border-left: 4px solid #690;
}
.alert.alert-warning /* orange */ {
	background: #fef3ec;
	border-left: 4px solid #f80;
}

/* 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;
}

/* padded alerts */
.alert.alert-pad-30 {
	padding: 30px;
}

/* ----- dropdown-menus ----- */
.dropdown-menu {
	min-width: 200px;
	padding: 15px;
	margin: 0;
	border-radius: 0;
}
.dropdown-menu > li {
	margin: 0;
	border-top: 1px solid #ddd;
}
.dropdown-menu > li:first-child {
	border-top: none;
}
.dropdown-menu > li > a {
	position: relative;
	font-size: 1em;
	padding: 15px;
}
.dropdown-menu > li > a:hover {
	background: #000;
	color: #fff;
}
.dropdown-menu > li > a .active-status {
	display: none;
	position: absolute;
	top: 17px;
	right: 15px;
}
.dropdown-menu > li > a.active,
.dropdown-menu > li > a.active:hover {
	background: #eee;
	color: #000;
}
.dropdown-menu > li > a.active .active-status {
	display: inline-block;
}
.dropdown-menu > li > a > i {
	position: absolute;
	top: 17px;
	right: 12px;
	width: 15px;
	text-align: center; 
}
.dropdown-menu .divider {
	margin: 1px;
}

/* ----- labels ----- */
.label {
	font-size: .7em;
    padding: 5px 10px;
    border-left: 3px solid rgba(0, 0, 0, .15);
    border-radius: 0;
}
.label.label-default {
	background: #ddd;
	color: #333;
}
.label.label-green {
	background: #80c102;
}
.label.label-primary {
	background: #1a1b21;
}

/* ----- modals ----- */
body.modal-open,
.modal-open .navbar-fixed-top,
.modal-open .navbar-fixed-bottom {
	padding-right: 0;
	margin-right: 0;
}
.modal-open .modal {
	padding-right: 0 !important;
}
.modal-content {
	border: none;
	border-radius: 0;
}
/* modal header */
.modal-header {
	position: relative;
	padding: 25px 50px 25px 30px;
}
.modal-header .modal-title {
	font-size: 1.5em;
	margin: 0;
}
.modal-header .close {
	position: absolute;
	top: 12px;
	right: 30px;
	font-family: Helvetica Neue;
	font-size: 3.2em;
	font-weight: 300;
	margin: 0;
	color: #333;
	text-shadow: none;
}
/* modal body */
.modal-body {
	padding: 30px;
	margin: 0;
}
.modal-body.body-no-padding {
	padding: 0;
}
/* modal footer */
.modal-footer {
	background: #f5f5f5;
	padding: 25px 30px;
	margin-top: 0;
	text-align: left;
}
.modal-footer .btn {
	margin: 0 5px 0 0;
}
.modal input[type="submit"] {
	display: block;
	width: 100%;
	text-align: center;
}
/* modal filters */
.modal .filter {
	padding: 0;
	margin: 0;
	border: none;
}
/* cta modal */
.modal.modal-cta .modal-header {
	background: url(../images/section-bg-vector.jpg) #1a1b21;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.modal.modal-cta .modal-header .modal-title {
	color: #fff;
}
.modal.modal-cta .modal-header .close {
	color: #fff;
}

/* add event modal buttons */
.modal-body .btn.addeventatc,
.modal-footer .btn.addeventatc {
	opacity: 1.0;
}

/* ----- nav ----- */
.nav {
	font-weight: 700;
	margin: 0 0 20px;
}
.nav.nav-pills li.active a {
	background: #1a1b21;
}

/* Learning Path tabs */
.app-learning-paths .nav-underline {
	gap: 1.5rem;
}
.app-learning-paths .nav-underline .nav-item {
	margin: 0;
}
.app-learning-paths .nav-link {
	font-weight: 600;
	color: var(--bb-primary-color, #2271b1);
}
.app-learning-paths .nav-link i {
	opacity: 1;
}
.app-learning-paths .nav-underline .nav-link {
	padding-top: 0.5rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid transparent;
	border-radius: 0;
	background: none;
}
.app-learning-paths .nav-underline .nav-link:hover,
.app-learning-paths .nav-underline .nav-link:focus {
	color: #000;
	border-bottom-color: #000;
}
.app-learning-paths .nav-underline .nav-link.active {
	color: #000;
	font-weight: 700;
	border-bottom-color: #000;
}

/* ----- panels ----- */
.panel {
	border-radius: 0;
}
.panel .panel-heading,
.panel .panel-body {
	padding: 30px;
}

/* ----- tabs ----- */
.tab-content {
	padding: 20px 0;
}

/* ----- wells ----- */
.well {
	padding: 30px;
	margin: 0 0 30px;
	background: #fafbfd;
	border-radius: 0;
	box-shadow: none;
}
.well .well-title {
	position: relative;
	padding-right: 40px;
}
.well .well-title i {
	position: absolute;
	top: 5px;
	right: 0;
}
.well.bg-white {
	border: 1px solid #ddd;
}
/* bare wells */
.well.well-bare {
	background: none;
	border: none;
}
/* cta wells */
.well.well-cta {
	padding: 0;
}
.well.well-cta.cta-orientation {
	background: url(../images/hero-bg-desk.jpg) #151515;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.well.well-cta .well-content {
	padding: 50px;
	background: rgba(0, 0, 0, .5);
}
.well.well-cta .well-content h1,
.well.well-cta .well-content h2,
.well.well-cta .well-content h3,
.well.well-cta .well-content h4,
.well.well-cta .well-content h5,
.well.well-cta .well-content h6,
.well.well-cta .well-content p,
.well.well-cta .well-content ol,
.well.well-cta .well-content ul {
	color: #fff;
}
/* edit wells */
.well.well-edit {
	padding: 0;
}
.well.well-edit .well-header {
	padding: 20px;
	background: #f5f5f5;
	border-bottom: 1px solid #ddd;
}
.well.well-edit .well-header .header-title {
	margin: 0;
}
.well.well-edit .well-body {
	padding: 20px;
}
.well.well-edit .well-body .acf-frontend-form {
	padding: 0;
}
/* form wells */
.well.well-form {
	padding: 50px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, .15);
}
.well.well-form .checkout p {
	margin: 0 0 15px;
}
.well.well-form .gform_wrapper ul {
	margin: 0 0 20px;
}
/* registration wells */
.well.well-registration p {
	margin: 0;
}
.well.well-registration p.small {
	margin: 0 0 10px;
}
/* slim wells */
.well.well-slim {
	padding: 15px;
}
/* trans wells */
.well.well-trans {
	background: rgba(0, 0, 0, .5);
	border: none;
}


/* 09: Plugins
========================================================================================= */
/* -------------------- ACF (Advanced Custom Fields) -------------------- */
.acf-frontend-form {
	margin: 0 -10px 20px;
	background: #fff;
}
.acf-frontend-form .acf-fields > .acf-field {
	padding: 10px;
	border: none !important;
}
.acf-frontend-form .acf-input .acf-input-wrap {
	height: auto;
}
.acf-frontend-form .acf-field input[type="text"],
.acf-frontend-form .acf-field input[type="password"],
.acf-frontend-form .acf-field input[type="number"],
.acf-frontend-form .acf-field input[type="search"],
.acf-frontend-form .acf-field input[type="email"],
.acf-frontend-form .acf-field input[type="url"],
.acf-frontend-form .acf-field textarea,
.acf-frontend-form .acf-field select {
	height: auto;
	padding: 12px;
}
.acf-frontend-form .acf-input .acf-url input[type="url"] {
	padding-left: 30px !important;
}
.acf-frontend-form .acf-input .acf-url i {
	top: 14px;
	left: 7px;
}
.acf-frontend-form .acf-input .acf-input-prepend,
.acf-frontend-form .acf-input .acf-input-append {
	font-size: 1em;
	height: 50px;
	padding: 10px 12px;
	background: #ddd;
	border-color: #ddd;
	border-width: 1px;
	border-right: 0;
	border-radius: 0;
}
.acf-frontend-form .acf-fields > .acf-field p.description {
	font-size: .85em;
}
.acf-frontend-form .acf-form-submit {
	padding: 15px 10px;
}
.acf-frontend-form .updated {
	display: none; /* hide message since we use our own */
}


/* -------------------- 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;
	color: #fff !important;
}
.addeventatc.btn.btn-default:hover {
	color: #fff !important;
}
.addeventatc.btn.btn-sm {
	padding: 8px 20px;
	font-size: .85em;
}
.addeventatc.btn .addeventatc_icon {
	display: none;
}

/* -------------------- BuddyBoss / Forums -------------------- */
.single.single-forum .type-forum .bb-topic-banner {
	max-width: inherit;
}


/* -------------------- Full Calendar -------------------- */
/* header */
.calendar.fc {
}
.calendar.fc .fc-toolbar.fc-header-toolbar {
	padding: 15px;
	margin: 0;
	background: #f2f4f5;
}
.calendar.fc .fc-toolbar h2 {
	font-size: 1.2em;
	font-weight: 700;
	text-transform: uppercase;
}
.calendar.fc .fc-toolbar.fc-header-toolbar .fc-agendaWeek-button.fc-button,
.calendar.fc .fc-toolbar.fc-header-toolbar .fc-agendaDay-button.fc-button {
	display: none; /* hide week and day buttons for UI bugs */
}
.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-col-header {
	margin: 0;
}
.calendar.fc .fc-col-header-cell {
	padding: 10px;
}
.calendar.fc .fc-col-header-cell a {
	color: #333;
}
.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 {
	padding: 7px;
	font-size: .7em;
	background: #1a1b21;
	border: none;
	border-radius: 0;
}
.calendar.fc .fc-event:hover {
	opacity: .5;
}

.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;
}
.calendar.fc .fc-daygrid-day-number {
	width: 24px;
	font-size: .7em;
	text-align: center;
	border-left: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
/* buttons */
.calendar.fc button {
	font-size: .85em;
	background: none;
	box-shadow: none;
	outline: none;
	border: 1px solid #ccc !important;
}
.calendar.fc button:hover {
	background: #fff;
}
.calendar.fc button.fc-state-active {
	background: #f5f5f5;
}


/* -------------------- FacetWP -------------------- */
.facet-wrap {
	position: relative;
}
.facet-wrap .js-facets-loading {
	display: none;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    z-index: 100;
}
.facet-wrap .js-facets-loading .loading-status {
	top: 135px;
}
/* search */
.facetwp-type-search .facetwp-input-wrap {
	display: block;
}
.facetwp-type-search input.facetwp-search,
.facetwp-type-search input.facetwp-location {
	min-width: inherit !important;
}
.facetwp-type-search .facetwp-icon:before {
	content: "\f002";
	font-family: FontAwesome;
	font-style: normal;
	text-align: center;
	padding: 12px 0;
	background: none;
}


/* -------------------- Gravity Forms -------------------- */
.gform_fields {
	list-style: none;
	margin: 0;
}
.gform_fields .gfield {
	margin: 0 0 15px;
}
.gform_fields .gfield select {
	width: 100%;
}
/* hide labels */
.gform_fields .gfield_label,
.gform_fields .ginput_counter {
	/* display: none; */
}
/* 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: 700;
	margin: 0 0 5px;
}
/* radio fields */
.gfield_radio {
	margin: 10px 0 0;
}
.gfield_radio li {
	position: relative;
	display: inline-block;
	padding-left: 25px;
	margin: 0 20px 0 0;
	line-height: 1.4;
}
.gfield_radio li input {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
}
.gfield_radio li label {
	font-size: .9em;
	font-weight: 400;
	margin: 0;
}
/* complex first/last name fields */
.ginput_complex.has_first_name {
	margin-left: -3%;
	clear: both;
}
.ginput_complex.has_first_name .name_first,
.ginput_complex.has_first_name .name_last {
	float: left;
	width: 47%;
	margin: 0 0 15px 3%; 
}
.ginput_complex.has_first_name .name_first label,
.ginput_complex.has_first_name .name_last label {
	display: none;
}
/* 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;
}
.gform_submission_error {
	font-size: 1em;
	color: #fff;
	margin: 0;
}
.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_required {
	color: #c00;
}
.gfield_visibility_hidden {
	display: none;
}
.gfield.hidden_label label {
	display: none;
}

/* BuddyBoss GF over-rides */
.gform_wrapper form input:not([type=radio],[type=checkbox],[type=submit],[type=button],[type=image],[type=file]) {
	padding: 15px;
}

/* -------------------- IntroJS -------------------- */
.js-intro-container {
    display: inline-block;
}
.introjs-overlay {
    background: rgba(0, 0, 0, .5);
}
.introjs-helperLayer {
    background: none;
    border: none;
    border-radius: 0;
    border: 1px solid #fff;
    box-sizing: border-box;
}
.introjs-tooltipReferenceLayer {
	box-sizing: border-box;
}
.introjs-tooltip {
	padding: 20px;
    background: #fff;
    border-radius: 0;
}
.introjs-tooltip .introjs-tooltiptext {
    font-size: .85em;
    font-weight: 300;
    line-height: 1.5;
}
.introjs-arrow {
    
}
.introjs-arrow.top {
    border-bottom-color: #1a1b21;
}
.introjs-arrow.bottom {
    border-top-color: #1a1b21;
}
.introjs-arrow.right {
    border-left-color: #1a1b21;
}
.introjs-arrow.left {
    border-right-color: #1a1b21;
}
.introjs-bullets ul {
	margin: 10px auto;
}
.introjs-bullets ul li {
    margin: 0 3px;
}
.introjs-bullets ul li a {
    width: 12px;
    height: 12px;
}
.introjs-bullets ul li a:hover {
    background: #02bad6;
}
.introjs-bullets ul li a.active {
    background: #1a1b21;
}
.introjs-button {
    padding: 7px 10px;
    background: none;
    /* font-family: 'Roboto', sans-serif; */
    font-family: var(--body-font);
    text-shadow: none;
    background: none;
    border-color: #1a1b21;
    text-decoration: none;
    outline: none !important;
}
.introjs-button:hover {
    background: #1a1b21;
    color: #fff;
    border-color: #1a1b21;
    box-shadow: none;
}
.introjs-button.introjs-disabled,
.introjs-button.introjs-disabled:hover,
.introjs-button.introjs-disabled:focus {
    background: none !important;
    color: #999 !important;
    border-color: #ccc !important;
}
.introjs-button.introjs-skipbutton {
    float: left;
}
.introjs-helperNumberLayer {
    top: 0;
    left: -50px;
    width: 40px;
    height: 40px;
    padding: 12px 0;
    /* font-family: 'Roboto', sans-serif; */
    font-family: var(--body-font);
    font-size: 1em;
    line-height: 1;
    background: #02bad6;
    border: none;
    box-sizing: border-box;
}




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;
}



/* ----- 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: 'Roboto', sans-serif;; */
	font-family: var(--body-font);
	border: none;
	border-radius: 0;
	box-shadow: 0 0 0 10px rgba(255, 255, 255, .1);
}
.ui-dialog.ui-widget .ui-widget-header {
	padding: 20px;
	background: #f5f5f5;
	color: #1a1b21;
	/* font-family: 'Roboto', sans-serif; */
	font-family: var(--body-font);
	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 {
	padding: 10px;
	/* font-family: 'Roboto', sans-serif; */
	font-family: var(--body-font);

}


/* -------------------- WP Pagenavi (pagination) -------------------- */
.wp-pagenavi {
	padding: 20px 0 0;
	margin: 0 0 20px;
	font-size: .85em;
	border-top: 1px solid #ddd;
}
.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
    border: none;
    padding: 10px 17px;
    margin: 0 1px 5px 0;
    border-radius: 3px;
}
.wp-pagenavi span.pages {
	background: #eee;
	color: #1a1b21;
	border-left: 4px solid #ddd;
}
.wp-pagenavi a {
	background: #02bad6;
	color: #fff;
}
.wp-pagenavi a:hover {
	background: #0a748f;
}
.wp-pagenavi span.current {
	background: #1a1b21;
	color: #fff;
}

/* -------------------- WP User Avatar -------------------- */
.wpua-edit .wpua-edit-container h3 {
	display: none;
}
.wpua-edit button[type="button"] {
	padding: 7px 20px;
	font-size: .85em;
	border-color: #ccc;
}
.wpua-edit button[type="button"]:hover {
	border-color: #1c1733;
}
.wpua-edit #wpua-undo-button-existing {
	display: none;
}
#wpua-images-existing:before {
	content: "Your current image";
	display: block;
	font-size: 1em;
	font-weight: 700;
	margin: 0 0 10px;
	color: #1c1733;
}
.wpua-edit .submit input[type="submit"] {
	padding: 9px 30px;
}


/***********************/
/* member(dev) Plugins */
/***********************/
/* -------------------- MD Completed (post completion) -------------------- */
.btn.btn-default.mdc-complete-true {
	background: #ccc;
	color: #666;
}
.btn.btn-default.mdc-complete-true:hover {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}

/* -------------------- WP My Favorites (user favoriting) -------------------- */
.mdfav-favorite-button.mdfav-favorite-true {
	background: #ccc;
	color: #666;
}
.md-favorites-category-form-container {
	margin: 20px 0;
}

/* 10: Behavioral (JS)
========================================================================================================== */
.js-content-hidden {
	display: none;
}

.js-toggle-control-content {
	display: none;
}
.js-toggle-control-content.content-default {
	display: block;
}
.js-toggle-price-content {
	display: none;
}
.js-toggle-price-content.content-default {
	display: block;
}


/* 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) {

}

/* LARGE DESKTOP */
@media (max-width: 1399px) {


	/*
	Structure
	-------------------------------------------------- */
	.site-wrap,
	.page-template-template-checkout .site-wrap,
	.page-template-template-confirmation .site-wrap,
	.page-template-template-upsell .site-wrap {
		width: auto;
	}

	/*
	Bootstrap
	-------------------------------------------------- */
	.container {
		width: auto;
	}

}

@media (max-width: 1199px) {

	/*
	Header
	-------------------------------------------------- */
	.site-header {
		background: var(--color-blue-deep);
	}
	.logged-in .site-header {
		background: var(--color-blue-deep);
	}
	.site-header .bb-header-buttons a.button.outline {
		color: #fff;
	}
	.site-header .bb-header-buttons a.button.outline:hover {
		color: var(--color-blue);
	}
	.site-header .notification-link,
	.site-header .notification-link i,
	.site-header .user-link,
	.site-header .user-link i {
		color: #fff;
	}

	/*
	Structure
	-------------------------------------------------- */
	.wrap-app {
		margin: 0;
	}
	#page #content #primary {
		padding: 0;
	}

	/* ----- app nav ----- */
	.app-nav {
		position: static;
		display: block;
		top: inherit;
		float: none;
		width: 100%;
	}
	.app-nav .nav-brand {
		display: none; /* hide brand for mobile menu */
	}
	.app-nav .nav-mobile-toggle {
		background: var(--color-blue-dark);
		color: #fff;
	}
	.app-nav .nav-mobile-toggle.menu-open {
		background: #02bad6;
	}
	.app-nav .nav-mobile-toggle .toggle-icon {
		position: absolute;
		top: 18px;
		right: 22px;
		font-size: 1.2em;
		opacity: .5;
	}
	.app-nav .nav-mobile-toggle .toggle-icon.icon-close {
		display: none;
	}
	.app-nav .nav-mobile-toggle .toggle-icon.icon-open {
		display: inline-block;
	}
	.app-nav .nav-mobile-toggle.menu-open .toggle-icon.icon-close {
		display: inline-block;
	}
	.app-nav .nav-mobile-toggle.menu-open .toggle-icon.icon-open {
		display: none;
	}
	.app-nav .nav-menu {
		display: none;
	}
	.app-nav .nav-menu li:first-child {
		border-top: none;
	}

	/* ----- app body ----- */
	.app-body {
		display: block;
		margin: 0;
	}

	/*
	Components
	-------------------------------------------------- */
	/* ----- checkout ----- */
	.checkout {
		width: auto;
		margin: 0;
		border: none;
	}

	/* ----- filter ----- */
	.filter.filter-horizontal {
		padding: 20px;
		text-align: left;
	}
	.filter.filter-horizontal .filter-title {
		position: static;
		margin: 0;
	}
	.filter.filter-horizontal .filter-group {
		padding: 5px;
	}

	/*
	Bootstrap
	-------------------------------------------------- */
	.container {
		width: auto;
		padding: 0 15px;
	}

}

/* SMALL DESKTOP */
@media (min-width: 992px) {

}

/* TABLET */
@media (max-width: 1024px) {

	/*
	Header
	-------------------------------------------------- */

	/*
	Structure
	-------------------------------------------------- */
	
	/* compact UI */
	.compact-ui .app-nav {
		width: 100%;
	}
	.compact-ui .app-nav .nav-user .user-title,
	.compact-ui .app-nav .nav-user .user-label {
		display: block;
	}
	.compact-ui .app-nav .nav-menu ul li a {
		padding: 25px 65px 25px 0;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-icon {
		top: 22px;
		left: auto;
		right: 5px;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-title {
		display: block;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-desc {
		/* display: block; */
		display: none; /* keep menu descriptions hidden on mobile */
	}

	/*
	Components
	-------------------------------------------------- */
	/* ----- hero ----- */
	.hero .hero-wrap.wrap-membership {
		padding: 50px;
	}

	/*
	Forms
	-------------------------------------------------- */
	/* ----- auth ----- */
	.auth-container {
		width: 70%;
	}
	
}

/* MOBILE */
@media (max-width: 768px) {

	/*
	Global
	-------------------------------------------------- */
	h1 {font-size: 2em;}
	h2 {font-size: 1.6em;}
	h3 {font-size: 1.4em;}
	h4 {font-size: 1.2em;}
	h5 {font-size: 1.1em;}
	h6 {font-size: 1em;}
	
	.headline {
		font-size: 1.2em;
		letter-spacing: 0;
	}
	.headline.headline-large {
		font-size: 1.4em;
	}

	/* ----- buttons ----- */
	.btn-mobile-block {
		display: block;
		width: 100%;
		padding-right: 0;
		padding-left: 0;
		margin: 5px 0;
	}
	.btn.btn-xl {
		font-size: 1.2em;
		padding: 10px 20px;
	}

	.mobile-label {
		display: inline-block;
	}
	
	/*
	Header
	-------------------------------------------------- */
	.site-header .header-top .top-nav {
		margin: 0 0 0 200px
	}
	.site-header .header-top .top-nav .nav-social {
		display: none;
	}

	/*
	Structure
	-------------------------------------------------- */
	.page-template-template-login .site-content {
		padding: 0 !important;
	}
	
	/* ----- grids ----- */
	.rsp-grid .grid-container {
		width: 47% !important;
	}

	/* ----- app heaeder ----- */
	.app-header {
		padding: 20px 0;
	}
	.app-header h1 {
		font-size: 1.5em;
	}
	.app-header .header-utility {
		position: static;
		padding: 20px 0 0;
		margin: 20px 0 0 ;
		border-top: 1px solid rgba(255, 255, 255, .25);
	}
	.app-header .header-utility .utility-link {
		padding: 10px 0;
	}
	
	
	/* ----- page section ----- */
	.page-section {
		padding: 30px;
	}
	.page-section.section-cta .section-cover {
		padding: 50px;
	}

	/*
	Components
	-------------------------------------------------- */
	/* ----- cards ----- */
	.card.card-wide .card-image {
		float: none;
		width: auto;
		height: auto;
	}
	.card.card-wide .card-image > a img {
		width: 100%;
		max-height: inherit;
	}
	.card.card-wide .card-content {
		margin-left: 0;
	}

	/* ----- checkout ----- */
	.checkout-column {
		display: block;
	}
	.checkout-column.column-product {
		width: 100%;
	}
	.checkout-column.column-payment {
		width: 100%;
	}
	
	/* ----- hero ----- */
	.hero .hero-content {
		padding: 30px 0;
	}
	.hero .hero-content h1 {
		font-size: 2.4em;
	}
	.hero.hero-homepage {
		padding: 100px 0 50px;
	}

	/* ----- post ----- */
	/* post columns */
	.post-columns {
		display: block;
	}
	.post-columns .column-primary,
	.post-columns .column-secondary {
		display: block;
		width: auto;
	}
	.post-columns .column-primary {
		padding: 15px 0 0;
	}
	
	/*
	Footer
	-------------------------------------------------- */
	.site-footer p.site-credit {
		text-align: left;
		margin: 20px 0 0;
	}

	/*
	Tables
	-------------------------------------------------- */
	.column-action {
		text-align: left;
	}
	.table-responsive {
		display: block;
		border: none;
	}
	.table-responsive thead,
	.table-responsive tbody,
	.table-responsive tfoot,
	.table-responsive tr,
	.table-responsive th,
	.table-responsive td {
		display: block;
		width: 100% !important;
	}
	.table-responsive thead {
		display: none;
	}
	.table-responsive tr {
		border-top: 1px solid #ddd;
	}
	.table-responsive th,
	.table-responsive td {
		border: none !important;
	}

	.table.table-message tbody .column-date {
		width: auto;
	}
	.table.table-message .mobile-label {
		font-weight: 700;
	}
	.table.table-compare,
	.table.table-compare thead,
	.table.table-compare tbody,
	.table.table-compare tfoot,
	.table.table-compare tr,
	.table.table-compare th,
	.table.table-compare td {
		display: block;
	}
	.table.table-compare thead {
		display: none;
	}
	.table.table-compare tbody th {
		border-top: 1px solid #036;
	}
	.table.table-compare tbody td {
		position: relative;
		padding-left: 120px;
		border-left: none;
		text-align: right;
	}
	.table.table-compare tbody tr.row-header th {
		padding: 20px 0;
		text-align: center;
	}
	.table.table-compare tbody td .mobile-label {
		position: absolute;
		top: 20px;
		left: 0;
		font-weight: 700;
	}
	.table.table-compare tfoot td {
		padding: 20px 0;
		text-align: center;
	}
	.table.table-compare tfoot td .mobile-label {
		display: block;
		font-weight: 700;
		margin: 0 0 10px;
	}
	.table.table-compare .hide-mobile {
		display: none !important;
	}

	/*
	Bootstrap
	-------------------------------------------------- */
	/* well */
	.well.well-bare {
		padding: 0;
	}

	/*
	Plugins
	-------------------------------------------------- */

}

/* SUPER MOBILE */
@media (max-width: 600px) {

	/*
	Global
	-------------------------------------------------- */
	/* ----- lists ----- */
	.list-columns {
		margin: 0;
	}
	.list-columns.columns-2 li,
	.list-columns.columns-3 li,
	.list-columns.columns-4 li {
		width: 100%;
		margin: 0 0 20px;
	}

	/*
	Structure
	-------------------------------------------------- */
	/* ----- grids ----- */
	.rsp-grid {
		margin-left: 0;
	}
	.rsp-grid .grid-container {
		display: block;
		width: 100% !important;
		margin: 0 0 20px;
	}

	/* ----- app content ----- */
	.app-content .content-header {
		padding-right: 0;
	}
	.app-content .content-header .header-utility {
		position: static;
		margin: 20px 0;
	}
	.app-content .content-header .header-utility .btn {
		display: block;
		width: 100%;
	}
	.app-content .content-header .header-utility .dropdown-menu {
		width: 100%;
	}
	
	/* ----- page section ----- */
	.page-section.section-auth,
	#page .page-section.section-auth {
		padding: 30px 0;
	}
	.page-section.section-cta .btn {
		display: block;
		width: 100%;
		margin: 0 0 10px; 
	}

	/*
	Components
	-------------------------------------------------- */
	/* ----- checkout ----- */
	.checkout-column.column-product,
	.checkout-column.column-payment {
		padding: 30px;
	}

	/* ----- filter ----- */
	.filter.filter-horizontal .filter-group {
		width: 100%;
	}

	/* ----- items ----- */
	.item {
		padding: 20px 0;
	}
	.item.item-with-action .item-action {
		position: static;
		width: auto;
		margin: 15px 0 0;
		text-align: left;
	}
	.item.item-with-image {
		min-height: inherit;
		padding-right: 0;
		padding-left: 100px;
	}
	.item.item-with-image .item-image {
		width: 80px;
	}
	
	/* ----- hero ----- */
	.hero .hero-content .btn {
		display: block;
		width: 100%;
		margin: 0 0 10px; 
	}
	.hero .hero-form {
		padding: 30px;
	}

	/* ----- posts ----- */
	.post-nav a {
		font-size: 1em;
	}

	/* ----- status steps ----- */
	.status-steps .step {
		font-size: .75em
	}
	.status-steps .step:before {
		display: none;
	}
	.status-steps .step label {
		line-height: 1;
	}

	/* ----- users ----- */
	/* large users */
	.user,
	.user.user-large {
		min-height: 65px;
		padding-left: 65px;
	}
	.user .user-avatar,
	.user.user-large .user-avatar {
		width: 50px;
	}

	/*
	Forms
	-------------------------------------------------- */
	/* ----- auth ----- */
	.auth-container {
		width: 90%;
	}
	.auth-container .container-form {
		width: auto;
		padding: 30px;
	}

	/*
	Bootstrap
	-------------------------------------------------- */
	.well.well-form {
		padding: 30px;
	}

}

/* 12: Print
========================================================================================================== */
/* PRINT styles */
@media print {

	

}

