/*--------------------------------------------------------------
This is the member(dev) platform v3 custom stylesheet.

// contains core styles for the v3 UI/UX
--------------------------------------------------------------*/

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

/* 00: Reset
========================================================================================================================= */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/* -------------------- variables -------------------- */
:root {
	--color-dark: #1e1e1e;
  	--color-grey: #888787;
	--color-aqua: #02bad5;
	--color-red: #c00;
	--color-blue: #005af7;
  	--color-green: #33c682;
	--color-yellow: #fc0;
	--color-orange: #f60;
	--color-green-lime: #acdb1d;
	--body-font: Arial, sans-serif;
	--title-font: 'Roboto', arial, sans-serif;
}

/* 01: Global
========================================================================================================================= */
body {
	color: #1e1e1e;
	background: #fff;
	font-family: var(--body-font);
	font-size: 1em;
	font-weight: 300;
}
body.search {
	padding: 0;
	background: inherit;
}

h1, h2, h3, h4, h5, h6, p {margin-bottom: 20px; line-height: 1.5em;}
h1, h2, h3, h4, h5, h6 {font-family: var(--title-font); font-weight: 700; letter-spacing: -0.025em; color: #1a1b21;}
h3, h4, h5, h6 {font-weight: 700;}
h1 {font-size: 2.5em; line-height: 1.2em; color: var(--color-red);}
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; line-height: 1.8em;}

.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;}
.text-small {font-size: .85em;}
.title-super {
	font-size: 4em;
}

/*
a {
	color: var(--color-dark);
	text-decoration: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	word-break: break-word;
}
a:hover {
	color: var(--color-red-light);
	text-decoration: underline;
}
*/

blockquote {
	padding: 30px;
	background: #f5f5f5;
	color: #999;
	line-height: 1.6;
	border-left: 4px solid #ccc;
}

pre {
	padding: 15px;
	margin: 0 0 20px;
	background: var(--color-teal-dark);
	color: #fff;
	font-size: .8em;
}

strong {
	font-weight: 700;
}

sup {
	font-size: .7em;
}

hr {
	height: 1px;
	border-top-color: #ddd;
	background: none;
	opacity: 1.0;
}

.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 var(--color-dark);}
.hr-thick {border-top-width: 5px;}
.hr-trans {border-top: 1px solid rgba(255, 255, 255, .25);}
.hr-slim {width: 10%;}
.hr-spacer {
	border: none;
	margin: 30px 0;
}
.hr-slim-centered {
	width: 10%;
	margin: 30px auto;
}

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

/* images */
img {
	display: block;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
.aligncenter {
	margin: 0 auto;
}
.embed-left,
.alignleft {
	float: left;
	margin: 0 20px 10px 0;
}
.embed-right,
.alignright {
	float: right;
	margin: 0 0 10px 20px;
}
.embed-static {
	display: block;
	margin: 0 0 20px;
}
.embed-static img {
	width: 100%;
}


/* -------------------- helpers -------------------- */
.bold {font-weight: 700;}
.capitalize {text-transform: capitalize;}
.caps {text-transform: uppercase;}
.centered {text-align: center;}
.italic {font-style: italic;}

.font-300 {font-weight: 300;}
.font-400 {font-weight: 400;}
.font-700 {font-weight: 700;}
.font-900 {font-weight: 900;}


.clear {
	clear: both;
}
.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;
}

/* brand */
.brand {
	font-weight: 300;
	letter-spacing: -0.025em;
	color: #151515;
}
.brand .brand-dev {
	font-weight: 700;
	color: #02bad5;
}

/* centered helpers */
.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;
}
.content-small p {
	font-size: .85em;
}

/* inactive elements */
.inactive img {
	filter: grayscale(100%);
	opacity: 0.5;
}
.inactive h2,
.inactive h3,
.inactive h4,
.inactive h5,
.inactive h6,
.inactive p {
	color: #999 !important;
}
.inactive a {
	pointer-events: none !important;
} 

.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;
}
.spacer-dots {
	display: block;
	width: 100%;
	height: 20px;
	margin: 20px 0;
	background: url(../images/pattern-dots.png) repeat-x;
}

/* -------------------- colors -------------------- */
/* default system colors */
.color-primary {color: var(--color-aqua) !important;}
.color-cta {color: var(--color-blue) !important;}

.color-red {color: var(--color-red) !important;}
.color-yellow {color: var(--color-yellow) !important;}
.color-orange {color: var(--color-orange) !important;}
.color-green {color: var(--color-green) !important;}

/* neutral colors */
.color-white {color: #fff !important;}
.color-grey-light {color: #f5f5f5 !important;}
.color-grey {color: var(--color-grey) !important;}
.color-grey-medium {color: #999 !important;}
.color-grey-dark {color: #333 !important;}
.color-black {color: #000;}
.color-dark {color: #151515 !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: var(--color-green) !important;}

/* color content */
.content-light p {
	color: rgba(255, 255, 255, .75);
}
.content-light h2,
.content-light h3,
.content-light h4,
.content-light h5,
.content-light h6,
.content-light ul,
.content-light ol {
	color: #fff;
}

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

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

.bg-trans-black-25 {background: rgba(0, 0, 0, .25) !important;}
.bg-trans-black-50 {background: rgba(0, 0, 0, .5) !important;}
.bg-trans-black-75 {background: rgba(0, 0, 0, .75) !important;}

.bg-trans-white-25 {background: rgba(255, 255, 255, .25) !important;}
.bg-trans-white-50 {background: rgba(255, 255, 255, .5) !important;}
.bg-trans-white-75 {background: rgba(255, 255, 255, .75) !important;}

.no-bg {background: none !important;}

/* blur backgrounds */
.bg-blur-3 {
	backdrop-filter: blur(3px);
}
.bg-blur-5 {
	backdrop-filter: blur(5px);
}	

/* gradients */
.gradient-red {
	background: rgba(137, 29, 31, 1);
	background: linear-gradient(90deg, rgba(137, 29, 31, 1) 0%, rgba(236, 51, 46, 1) 100%);
}

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

h1 > i,
h2 > i,
h3 > i,
h4 > i,
h5 > i,
h6 > i {
	font-weight: normal;
}

/* -------------------- buttons -------------------- */
.btn {
	display: inline-block;
	padding: 12px 30px;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.2;
	border: 2px solid;
	border-radius: 100px;
	text-decoration: none;
	white-space: inherit;
}
.btn:hover {
	text-decoration: none;
}
.btn.btn-cta {
	background: var(--color-aqua);
	color: #fff;
	border: 2px solid var(--color-aqua);
}
.btn.btn-cta:hover {
	background: var(--color-blue);
	color: #fff;
	border: 2px solid var(--color-blue);
}
.btn.btn-secondary {
	background: var(--color-dark);
	color: #fff;
	border: 2px solid var(--color-dark);
}
.btn.btn-secondary:hover {
	background: var(--color-grey);
	color: #fff;
	border-color: var(--color-grey);
}
.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-complete {
	background: #33c682;
	background: rgb(51,198,130);
	background: linear-gradient(90deg, rgba(51,198,130,1) 0%, rgba(104,220,107,1) 100%);
	color: #fff;
	border: 2px solid #33c682;
}
.btn.btn-complete:hover {
	background: #fff;
	color: #00aa5b;
	border-color: #00aa5b; 
}
.btn.btn-delete {
	background: none;
	color: #c00;
	border: 2px solid #c00;
}
.btn.btn-delete:hover {
	background: #c00;
	color: #fff;
	border-color: #c00;
}
.btn.btn-primary {
	background: var(--color-red);
	color: #fff;
	border: 2px solid var(--color-red);
}
.btn.btn-primary:hover {
	background: var(--color-red-light);
	color: #fff;
	border: 2px solid var(--color-red-light);
}
.btn.btn-save {
	background: var(--color-teal-bright);
	color: #fff;
	border: 2px solid var(--color-teal-bright);
}
.btn.btn-save:hover {
	background: var(--color-teal-dark);
	color: #fff;
	border-color: var(--color-teal-dark);
}
.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 {
	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.btn-sm {
	font-size: .85em;
	padding: 8px 20px;
}
.btn.btn-lg {
	font-size: 1.2em;
	padding: 15px 40px;
}
.btn.btn-xl {
	font-size: 1.5em;
	padding: 15px 40px;
}
/* button treatment */
.btn.btn-block {
	display: block;
	padding-right: 0;
	padding-left: 0;
	margin: 0 0 10px;
}
.btn.btn-icon-only {
	padding: 12px 15px;
}
.btn.btn-icon-only.btn-sm {
	padding: 8px 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;
}
/* complex buttons */
.btn.btn-view {
	position: relative;
	padding-right: 50px;
	padding-left: 20px;
	background: none;
	color: #1a1b21;
	text-align: left;
}
.btn.btn-view i {
	position: absolute;
	top: 5px;
	right: 5px;
	padding: 9px;
	text-align: center;
	/*
	background: #1a1b21;
	color: #fff;
	border-radius: 100px;
	*/
}
.btn.btn-view:hover {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.btn.btn-view.btn-sm i {
	padding: 5px;
}
.btn.btn-view.btn-block {
	padding-right: inherit;
	padding-left: 20px;
}
.btn.btn-view.view-trans {
	color: #fff;
	border-color: #fff;
}
.btn.btn-view.view-trans:hover {
	background: #fff;
	color: #1a1b21;
}
/*
.btn.btn-view.view-trans i {
	background: #fff;
	color: #000;
}
*/

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

.link-with-icon-left {
	display: inline-block;
	position: relative;
	padding-left: 24px;
}
.link-with-icon-left i {
	position: absolute;
	top: 3px;
	left: 0;
	width: 20px;
	text-align: center;
}

/* micro links */
.link-micro {
	font-size: .8em;
	font-weight: 700;
	margin-right: 10px;
}
.link-micro.link-liked {
	color: #1a1b21;
}
.link .badge {
	display: inline-block;
	vertical-align: middle;
	margin: -2px 3px 0 0;
	background: #1a1b21;
	color: #fff;
}

/* -------------------- lists -------------------- */
ol {
	margin: 0 0 20px 22px;
}
ol li {
	margin: 0 0 10px;
}
.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;
}
/* action list */
.list-action {
	list-style: none;
	font-weight: 700;
	padding: 10px 0;
	margin: 0 0 20px;
	border-top: 1px solid;
	border-bottom: 1px solid #ddd;
}
.list-action li {
	display: inline-block;
	margin: 0;
	border-left: 1px solid #ddd;
}
.list-action li:first-child {
	border-left: none;
}
.list-action li a {
	position: relative;
	display: block;
	padding: 15px;
	color: #1a1b20;
	text-decoration: none;
	border: none;
}
.list-action li a:hover {
	background: var(--color-red-light);
	color: #fff;
}
.list-action li a i {
	display: inline-block;
	margin-right: 10px;
	color: var(--color-red-light);
}
.list-action li a:hover i {
	color: #fff;
}
.list-action li a.btn {
	padding: 15px;
	line-height: 1;
	background: none;
	color: #1a1b21;
	border: none;
	border-radius: 0;
}
.list-action li a.btn:hover {
	background: #1a1b20;
	color: #fff;
}

.list-check li:before {
	position: absolute;
	top: 0;
	left: 0;
	content: "\f058";
	font-family: FontAwesome;
	color: #151515;
}
/* 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;
	color: #151515;
}
/* 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: 40px;
	height: 40px;
	padding: 8px 0;
	font-size: .9em;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	color: #333;
	border: 1px 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: var(--color-dark);
	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 a .item-title.title-solo {
	font-size: 1.25em;
	padding: 5px 0 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.item-completed a .item-number {
	background: var(--color-green) !important;
	color: #fff;
	border-color: var(--color-green) !important;
}
.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;
}
.list-items ul.sub-list {
	list-style: none;
	margin: 0;
}
.list-items ul.sub-list li {
	border: none;
}

.list-items.items-path {
	position: relative;
	list-style: none;
}
.list-items.items-path:before {
	position: absolute;
	top: 0;
	left: 20px;
	content: "";
	width: 3px;
	height: 100%;
	background: #e5e5e5;
	z-index: 5;
}
.list-items.items-path li {
	border: none;
}
.list-items.items-path li a .item-number {
	background: #f5f5f5;
	z-index: 10;
}
.list-items.items-path li a:hover .item-number {
	background: #1a1b21;
}
.list-items.items-path li.active a .item-number {
	background: var(--color-red-light);
	border-color: var(--color-red-light);
}
.list-items.items-path li.item-section > a .item-number {
	background: #1a1b21;
	color: #fff;
	border-color: #1a1b21;
}
.list-items .items-section {
	list-style: none;
}
.list-items .items-section li {
	border: none;
}

/* 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;
}
.list-step li .step-title {
	display: block;
	font-size: 1.2em;
	font-weight: 700;
}
.list-step li .step-description {
	display: block;
	font-size: .9em;
}
/* 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;
}

.sub-title {
	color: var(--color-red);
}

/* -------------------- misc -------------------- */
/* ---------- misc containers ---------- */
/* audio container */
.audio-container {
	margin: 0 0 20px;
}

/* map container */
.map-container iframe {
	width: 100%;
}

/* video container */
.video-container {
	position: relative;
    overflow: hidden;
    margin: 0 0 30px;
}
.video-container.container-pad {
    padding-top: 56.25%;
}
.video-container img,
.video-container iframe {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    z-index: 5;
}
.video-container.no-padding {
	padding-top: 0;
}

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

/* 02: Header
========================================================================================================================= */
.site-header {
	width: 100%;
	min-height: 100px;
	padding: 0;
	z-index: 1000;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.site-header .header-top {
	background: var(--color-red);
}

.site-header .header-wrap {
	position: relative;
	max-width: 1400px;
}
.site-header .header-nav {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.site-header .header-brand {
	display: inline-flex;
	width: 170px;
	font-size: 1.6em;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-decoration: none;
	color: #000;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	z-index: 1002;
}
.site-header .header-brand:hover {
	opacity: .5;
}
.site-header .header-brand sup {
	position: absolute;
    top: 29px;
    left: 250px;
    font-size: .5em;
    font-weight: 300;
    color: #1a1b21;
}

/* header search */
.site-header .header-search {
	display: inline-block;
	margin: 8px 0 0;
}
.site-header .header-search .search {
	width: 350px;
	margin: 0;
	background: none;
	border: 1px solid;
	border-radius: 5px;
}
.site-header .header-search .search .search-input {
	padding: 12px 20px;
	background: none;
	color: #000;
	font-size: .9em;
}
.site-header .header-search .search .search-input::placeholder {
	color: #999;
}
.site-header .header-search .search .search-submit {
	top: 3px;
	right: 3px;
	padding: 10px;
	color: #999;
}
.site-header .header-search .search .search-submit:hover {
	background: #151515;
	color: #fff;
}
.site-header .header-nav .nav-menu {
	display: inline-block;
	float: left;
}
.site-header .header-nav ul {
	float: right;
	list-style: none;
	font-weight: 700;
}
.site-header .header-nav ul li {
	display: inline-block;
	margin: 0 0 0 5px;
	vertical-align: top;
}
.site-header .header-nav ul li a {
	display: block;
	height: 50px;
	padding: 15px;
	color: var(--color-dark);
	line-height: 1.2;
	text-decoration: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	vertical-align: top;
}
.site-header .header-nav ul li a:hover {
	background: var(--color-red-light);
	color: #fff;
}
.site-header .header-nav ul li a .badge {
	display: inline-block;
	padding: 3px 5px;
	background: #f30;
	color: #fff;
	margin-left: 10px;
	border-radius: 4px;
	vertical-align: top;
}
.site-header .header-nav ul li.nav-login > a {
	font-weight: 700;
	color: #1a1b21;
}
.site-header .header-nav ul li.nav-icon-only {
	margin: 0;
}
.site-header .header-nav ul li.nav-icon-only a {
	padding: 20px 15px;
}
.site-header .header-nav ul li.nav-icon-only a i {
	margin: 0;
}
.site-header .header-nav ul li a i {
	margin-right: 5px;
	font-size: 1em;
}

/* dropdown */
.site-header .header-nav li.nav-dropdown {
	position: relative;
}
.site-header .header-nav li.nav-dropdown .dropdown-toggle {
	padding: 8px 20px;
	background: var(--color-teal);
	color: #fff;
	font-weight: 700;
	border-radius: 50px;
}
.site-header .header-nav li.nav-dropdown .dropdown-toggle.show {
	background: var(--color-red);
	border-radius: 0;
}
.site-header .header-nav li.nav-dropdown .dropdown-icon {
	display: inline-block;
	vertical-align: top;
}
.site-header .header-nav li.nav-dropdown .dropdown-user {
	display: inline-block;
	width: 30px;
	margin: -6px 5px 0 0;
	vertical-align: top;
}
.site-header .header-nav li.nav-dropdown .dropdown-user img {
	border-radius: 100px;
}
.site-header .header-nav .dropdown-menu {
	top: -2px;
	right: 0;
	min-width: 220px;
	padding: 15px;
	margin: 0;
	font-size: .9em;
	background: var(--color-red);
	border: none;
	border-radius: 0; 
	box-shadow: none;
}
.site-header .header-nav .dropdown-menu li {
	display: block;
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, .15);
}
.site-header .header-nav .dropdown-menu li:first-child {
	border-top: none;
}
.site-header .header-nav .dropdown-menu li a {
	position: relative;
	display: block;
	height: auto;
	padding: 15px;
	color: rgba(255, 255, 255, .75);
}
.site-header .header-nav .dropdown-menu li a i {
	position: absolute;
	top: 17px;
	right: 10px;
}
.site-header .header-nav .dropdown-menu li a:hover {
	background: var(--color-red-light);
	color: #fff;
}

.site-header .header-aside > * {
	height: 54px;
	z-index: 101;
}
.site-header .header-aside i {
	font-size: 1.5em;
	color: rgba(255, 255, 255, .7);
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.site-header .header-aside i:hover {
	color: #fff;
}

.site-header .site-header-container {
	align-items: center;
  	justify-content: space-between;
}
.site-header .site-header-container .main-navigation {
	flex: none;
}
.site-header .primary-menu {
}
.site-header .primary-menu li a {
	padding: 0 25px;
	font-size: 1em;
	font-weight: 700;
}

/* mobile */
.site-header .header-mobile-navicon {
	display: none;
	position: absolute;
	top: 3px;
	right: 0;
	padding: 15px;
	line-height: 1;
    cursor: pointer;
    user-select: none;
    -webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	z-index: 1001;
}
.site-header .header-mobile-navicon .bars {
	display: inline-block;
    width: 32px;
    height: 2px;
    background: #999;
    transition: 0.3s;
    position: relative;
}
.site-header .header-mobile-navicon .bars:before,
.site-header .header-mobile-navicon .bars:after {
	display: inline-block;
    width: 32px;
    height: 2px;
    background: #999;
    border-radius: 0.28571rem;
    -webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
    position: absolute;
    left: 0;
    content: '';
    -webkit-transform-origin: 0.28571rem center;
    transform-origin: 0.28571rem center;
}
.site-header .header-mobile-navicon .bars:before {
	top: 10px;
}
.site-header .header-mobile-navicon .bars:after {
	top: -10px;
}

/* close state */
.site-header .header-mobile-navicon.navicon-close {
	-webkit-transform: scale3d(0.8,0.8,0.8);
    transform: scale3d(0.8,0.8,0.8);
}
.site-header .header-mobile-navicon.navicon-close .bars {
	background: transparent;
}
.site-header .header-mobile-navicon.navicon-close .bars:before,
.site-header .header-mobile-navicon.navicon-close .bars:after {
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    top: 2px;
    width: 42px;
}
.site-header .header-mobile-navicon.navicon-close .bars:before {
    -webkit-transform: rotate3d(0,0,1,45deg);
    transform: rotate3d(0,0,1,45deg);
}
.site-header .header-mobile-navicon.navicon-close .bars:after {
    -webkit-transform: rotate3d(0,0,1,-45deg);
    transform: rotate3d(0,0,1,-45deg);
}

/* restyle header styling (on scroll down) */
.site-header.header-restyle {
	background: #fff;
}

/* member header */
.site-header.header-member {
	background: none;
}
.site-header.header-member .header-nav {
	padding-right: 10px;
}
.site-header.header-member .header-nav ul li a {
	color: #151515;
}
.site-header.header-member .header-nav ul li a:hover {
	background: #02bad5;
	color: #fff;
}
.site-header.header-member .header-nav ul.dropdown-menu li a {
	color: #fff;
}

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

/* -------------------- UI light theme -------------------- */
.ui-light .site-header {
	margin: 0 0 20px;
}
.ui-light .site-header > .container {
	position: relative;
	width: 1400px;
}
.ui-light .site-wrap {
	box-shadow: none;
}
.ui-light .site-wrap .wrap-app {
	background: none;
}
.ui-light .app-header {
	display: none;
}
.ui-light .app-body {
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
}
.ui-light .app-header {
	background: none;
}
.ui-light .app-header h1 {
	color: #1a1b21;
}
.ui-light .app-nav .nav-menu ul li {
	border-top: 1px solid rgba(0, 0, 0, .1);
}
.ui-light .app-nav .nav-menu ul li a {
    color: rgba(0, 0, 0, .7);
}
.ui-light .app-nav .nav-menu ul li a .menu-title {
	color: #1a1b21;
}
.ui-light .app-nav .nav-menu ul li a .menu-desc {
	color: rgba(0, 0, 0, .7);
}
.ui-light .app-community .menu-community a,
.ui-light .app-courses .menu-courses a,
.ui-light .app-dashboard .menu-dashboard a,
.ui-light .app-events .menu-events a,
.ui-light .app-forums .menu-forums a,
.ui-light .app-library .menu-library a,
.ui-light .app-live .menu-live a,
.ui-light .app-members .menu-members a {
    background: rgba(0, 0, 0, .05);
    color: #1a1b21 !important;
}

/* 03: Structure
========================================================================================================================= */
.site {
	margin: 0 auto;
}
.page-template-template-checkout .site,
.page-template-template-confirmation .site,
.page-template-template-login .site {
	margin: 0;
	padding: 0;
}

.site-content {
	min-height: auto;
}

.content-wrap {
	padding: 30px;
}

/* -------------------- grids -------------------- */
/* flex grid */
.flex-grid {
	display: flex;
}
.flex-grid.grid-stretch {
	position: relative;
	align-items: stretch;
}
.flex-grid .grid-column {

}
.flex-grid .grid-column.column-20 {
	width: 20%;
}
.flex-grid .grid-column.column-25 {
	width: 25%;
}
.flex-grid .grid-column.column-30 {
	width: 30%;
}
.flex-grid .grid-column.column-35 {
	width: 35%;
}
.flex-grid .grid-column.column-40 {
	width: 40%;
}
.flex-grid .grid-column.column-50 {
	width: 50%;
}
.flex-grid .grid-column.column-60 {
	width: 60%;
}
.flex-grid .grid-column.column-65 {
	width: 65%;
}
.flex-grid .grid-column.column-70 {
	width: 70%;
}
.flex-grid .grid-column.column-75 {
	width: 75%;
}
.flex-grid .grid-column.column-80 {
	width: 80%;
}

.flex-grid .grid-column.column-module {
	padding: 30px;
	border-right: 1px solid #ddd;
}
.flex-grid .grid-column.column-panel {
	padding: 30px;
}
.flex-grid .grid-toggle {
	position: absolute;
	top: 20px;
	right: 0;
	z-index: 100;
}
.flex-grid .grid-toggle a {
	padding: 10px;
	border: 1px solid #ccc;
	border-right: none;
	border-radius: 3px;
}
.flex-grid .grid-toggle a:hover {
	background: #eee;
}

/* panel open/close ui */
.flex-grid .grid-toggle .action-open {
	display: none;
}
.flex-grid .grid-toggle .action-close {
	display: inline-block;
}
.compact-right-panel .flex-grid .grid-toggle .action-close {
	display: none;
}
.compact-right-panel .flex-grid .grid-toggle .action-open {
	display: inline-block;
}

.flex-grid.grid-js .grid-column.column-panel {
	width: inherit;
}
.flex-grid.grid-js .grid-column.column-panel {
	width: inherit;
	padding: 30px;
}
.compact-right-panel .flex-grid.grid-js .grid-column.column-module {
	width: 100%;
}
.compact-right-panel .flex-grid.grid-js .grid-column.column-panel {
	width: 0;
	padding: 0;
	overflow: hidden;
}


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

/* -------------------- site wrap -------------------- */
.site-wrap {
	width: 1400px;
	margin: 0 auto;
	box-shadow: 0 10px 10px rgba(0, 0, 0, .25);
}
/* account wrap */
.page-template-template-account-registration .site-wrap,
.page-template-template-account-profile .site-wrap,
.page-template-template-account-welcome .site-wrap {
	box-shadow: none;
}
/* checkout wrap */
.page-template-template-checkout .site-wrap,
.page-template-template-confirmation .site-wrap,
.page-template-template-upsell .site-wrap {
	width: 1200px;
	box-shadow: none;
}

/* -------------------- member UX -------------------- */
.wrap-app {
	width: 100%;
	margin: 0 auto;
}

/* -------------------- app nav -------------------- */
/*
.app-nav {
	display: table-cell;
	width: 220px;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
	vertical-align: top;
}
*/
.app-nav {
    z-index: 1000;
    -webkit-transition: .25s;
    -moz-transition: .25s;
    -o-transition: .25s;
    transition: .25s;
}
.app-nav > .container {
	margin: 0 auto;
	max-width: 1400px;
}
.app-nav .nav-brand {
	display: block;
	width: 165px;
	height: auto;
	padding: 0 0 15px;
	z-index: 1003;
}
.app-nav .nav-brand .brand-logo {
	display: block;
	margin: 0 auto;
}
.app-nav .nav-brand .mobile-brand {
	display: none;
}
.app-nav .nav-utility {
	display: none; /* only displayed in mobile (1199) */
}
.app-nav .nav-mobile-toggle {
	display: none; /* only displayed in mobile (1199) */
}
.app-nav .nav-user .user-label {
	font-weight: 300;
}

.app-nav .nav-menu {
	display: flex;
	align-items: center;
	justify-content: flex-end; /* Aligns all items to the right */
}
.app-nav .nav-menu ul.menu-main {
	display: flex;
	list-style: none;
	font-size: 1em;
	font-weight: 400;
	margin: 0;
}
.app-nav .nav-menu ul.menu-main li {
	position: relative;
	margin: 0;
}
.app-nav .nav-menu ul.menu-main li.menu-solo-right {
	margin-left: auto;
}
/*
.app-nav .nav-menu ul li.menu-solo-right.active a {
	background: var(--color-red-light);
}
.app-nav .nav-menu ul li:first-child {
	border-top: none;
}
*/
.app-nav .nav-menu ul.menu-main li a {
	position: relative;
	display: block;
	padding: 12px 30px 15px 45px;
	color: #fff;
	line-height: 1.5;
	text-decoration: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.app-nav .nav-menu ul.menu-main li.menu-solo-right a {
	background: rgba(0, 0, 0, .15);
}
.app-nav .nav-menu ul.menu-main li a:hover {
	background: var(--color-red-light);
	text-decoration: none;
}
.app-nav .nav-menu ul.menu-main li.menu-toggle a {
	padding: 20px 0 20px 65px;
}
.app-nav .nav-menu ul.menu-main li.menu-toggle a .menu-icon {
	top: 15px;
}
.app-nav .nav-menu ul.menu-main li.menu-toggle a .menu-title {
	font-size: .9em;
	font-weight: 300;
}
.app-nav .nav-menu ul.menu-main li a .menu-icon {
	position: absolute;
	top: 14px;
	left: 10px;
	width: 30px;
	font-size: 1em;
	line-height: 1;
	text-align: center;
	opacity: .6;
}
.app-nav .nav-menu ul.menu-main li a:hover .menu-icon {
	opacity: 1;
}
.app-nav .nav-menu ul.menu-main li a .menu-icon i {
	font-size: 1.2em;
	color: #fff;
}
.app-nav .nav-menu ul.menu-main li a .menu-title {
	display: block;
	font-weight: 700;
}
.app-nav .nav-menu ul.menu-main li a .menu-desc {
	display: block;
	font-size: .8em;
	font-weight: 300;
	color: rgba(0, 0, 0, .5);
}
.app-nav .nav-menu ul.menu-main li.active a {
    background: rgba(255, 255, 255, .15);
}
.app-nav .nav-menu ul.menu-main li.active a .menu-icon {
	opacity: 1.0;
}

.app-nav .nav-menu .menu-util {
	display: flex;
}
.app-nav .nav-menu .menu-util .header-aside {
	display: flex;
	align-items: center;
	justify-content: inherit;
	width: auto;
	margin: 0;
}

/* hide app nav on specific pages */
.page-template-template-checkout .app-nav,
.page-template-template-confirmation .app-nav,
.page-template-template-login .app-nav {
	display: none;
}

/* -------------------- app structure -------------------- */
.app-view {
	min-height: 600px;
}

.app-body {
	background: #fff;
}
.app-body.body-full {
	padding: 30px 0;
}
/* compact ui body */
.compact-ui .app-body {
	width: auto;
}

/* -------------------- app header -------------------- */
.app-header {
	position: relative;
	padding: 50px 0;
}
.app-header > .container {
	position: relative;
}
.app-header .breadcrumb {
	padding: 0;
	margin: 0 0 20px;
	font-size: .85em;
	background: none;
	color: var(--color-grey);
}
.app-header .breadcrumb span {
	margin: 0 5px;
}
.app-header .breadcrumb span:first-child {
	margin-left: 0;
}
.app-header .breadcrumb a {
	color: var(--color-grey);;
}
.app-header .breadcrumb a:hover {
	color: var(--color-dark);
}
.app-header .header-label {
	text-transform: uppercase;
}
.app-header h1 {
	font-weight: 700;
	margin: 0 0 10px;
}
.app-header h1 > i {
	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;
}

.app-header .header-nav {
	padding: 10px 0 0;
	border-top: 1px solid rgba(255, 255, 255, .2);
}
.app-header .header-nav ul {
	display: block;
	margin: 0;
	font-weight: 400;
}
.app-header .header-nav li {
	display: inline-block;
	border-left: 1px solid rgba(255, 255, 255, .2);
}
.app-header .header-nav li:first-child {
	border: none;
}
.app-header .header-nav li a {
	display: block;
	padding: 10px 15px;
	color: #fff;
}
.app-header .header-nav li a:hover {
	background: rgba(255, 255, 255, .1);
	text-decoration: none;
}
.app-header .header-nav li.active a {
	font-weight: 700;
	border-left: 3px solid var(--color-red-light);
}
.app-header .header-nav li.active a i {
	color: var(--color-red-light);
}
.app-header .header-user {
	min-height: 150px;
	padding-left: 30px;
	border-left: 1px solid rgba(255, 255, 255, .2);
}
.app-header .header-user .user .user-avatar img {
	border: 2px solid #fff;
}

/* header utility */
.app-header .header-utility {
	position: absolute;
	top: 10px;
	right: 30px;
}
.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;
}

/* ----- banner headers ----- */
.app-header.header-banner {
	padding: 50px 0;
	margin: 0;
	background: url(../images/bg-colors-dark.jpg) center center no-repeat;
	background-size: cover;
}
.app-header.header-banner h1 {
	color: #fff;
}
.app-header.header-banner p {
	color: rgba(255, 255, 255, 0.75);
}
/* banner backgrounds */
.app-header.header-banner.banner-journey {
	background: url(../images/bg-colors-dark.jpg) center center no-repeat;
	background-size: cover;
}

/* slim header */
.app-header.header-slim {
	padding: 20px 0;
	border-bottom: 1px solid #ddd;
}

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

.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,
.app-paths .menu-paths a {
	color: #02bad5 !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,
.app-paths .menu-paths a .menu-icon {
	opacity: 1.0 !important;
}

.app-dashboard .menu-dashboard a:after,
.app-library .menu-library a:after,
.app-courses .menu-courses a:after,
.app-events .menu-events a:after,
.app-live .menu-live a:after,
.app-community .menu-community a:after,
.app-forums .menu-forums a:after,
.app-groups .menu-groups a:after,
.app-members .menu-members a:after,
.app-paths .menu-paths a:after {
	content: "";
	position: absolute;
	top: 0;
	left: -30px;
	width: 5px;
	height: 88px;
	background: #02bad5;
	z-index: 5;
}

.page-header {
	padding: 30px 50px;
}
.page-header h1:last-child {
	margin: 0;
}

.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 header -------------------- */
.page-header {
	position: relative;
	padding: 30px 30px 15px;
	margin: 0;
	border-bottom: none;
}
.page-header .header-label {
	display: block;
	font-weight: 700;
	margin: 0 0 15px;
}
.page-header h1 {
	padding: 0;
	margin: 0 0 20px;
	border: none;
}

.page-header.header-hero {
	padding: 50px 0 30px;
}

.page-header.header-vector {
	background: url(../images/section-bg-vector.jpg) #1a1b21;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

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

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

/* sections with background images */
.page-section.section-cta {
	padding: 0;
}
.page-section.section-cta .section-cover {
	padding: 100px 200px;
	background: rgb(0, 0, 0, .6);
}
.page-section.section-auth {
	padding: 50px 0;
}
.page-section.section-vector {
	padding: 80px 30px;
	background: url(../images/section-bg-vector.jpg) #1a1b21;
	-webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/* -------------------- sidebar -------------------- */
.sidebar {
	padding: 30px;
	background: rgba(0, 0, 0, .05);

}


/* -------------------- UI Block structure -------------------- */
.ui-block .wrap-app {
	background: none;
}
.ui-block .app-body {
	background: none;
}
.ui-block .app-content {
	padding: 30px 0;
}


/* 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: #02bad6;
}
.accordion-content {
    display: none;
    padding: 0 20px 20px 70px;
}
.accordion-content p {
    font-size: .9em;
}
.accordion-content p:last-child {
    margin: 0;
}
/* compact accordion */
.accordion.accordion-compact {
	border-top: none;
}
.accordion.accordion-compact .accordion-toggle {
	padding: 10px 10px 10px 25px;
}
.accordion.accordion-compact .accordion-toggle .toggle-icon {
	top: 12px;
	left: 0;
	font-size: 1em;
}
.accordion.accordion-compact .accordion-content {
	padding: 0;
}

/* -------------------- activity -------------------- */
/*
.activity {
	position: relative;
	padding: 10px 0 10px 50px;
	border-top: 1px solid #ddd;
}
.activity .activity-avatar {
	position: absolute;
	top: 10px;
	left: 0;
	width: 40px;
}
.activity .activity-avatar img {
	border-radius: 100px;
}
.activity .activity-meta .meta-label {
	margin-bottom: 3px;
}
.activity .activity-meta a {
	color: #1a1b21;
}
.activity .activity-meta a:hover {
	color: #08c;
}
.activity .activity-content p {
	font-size: .9em;
	font-weight: 400;
	margin-bottom: 10px;
}
.activity .activity-actions {
	margin: 0 0 10px;
}

.activity.activity-nested {
	padding-left: 40px;
}
.activity.activity-nested .activity-avatar {
	width: 32px;
}

.activity .input-container {
	margin-bottom: 10px;
} 
.activity.activity-main-post {
	border: none;
}

/* -------------------- 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;
	display: block;
	top: 0;
	margin: 0 0 20px;
	background: #fff;
	border: none;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.card:hover {
	top: -10px;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}
.card .card-image {
	position: relative;
	background: #151515;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.card .card-image > a {
	display: block;
}
.card .card-image img {
	display: block;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-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-title {
	margin: 0 0 10px;
	font-family: var(--title-font);
}
.card .card-title.title-fixed-height {
	min-height: 120px;
}
.card .card-title a {
	color: var(--color-red);
	text-decoration: none;
}
.card .card-title a:hover {
	color: var(--color-dark);
}
/* product cards */
.card.card-product {
	position: relative;
	padding: 50px;
	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 {
	display: flex;
	flex-direction: row;
	overflow: auto;
	margin: 0 0 30px;
}
.card.card-wide:hover {
	top: 0;
}
.card.card-wide .card-image {
	width: 30%;
	height: 300px;
	overflow: hidden;
	border-radius: 10px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.card.card-wide .card-image img {
	width: auto;
	max-width: inherit;
	border-radius: 10px;
}
.card.card-wide .card-image > a {
	display: block;
}
.card.card-wide .card-image > a:hover {
	opacity: .7;
}
.card.card-wide .card-image > a img {
	width: auto;
	max-height: 300px;
}
.card.card-wide .card-content {
	width: 70%;
	padding: 25px;
}
.card.card-wide .card-action {
	padding: 20px 0;
}
/* progress cards */
.card.card-wide.card-with-progress .card-content {
	position: relative;
	padding-right: 160px;
}
.card.card-wide.card-with-progress .card-progress {
	position: absolute;
	top: 30px;
	right: 10px;
}
/* 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 -------------------- */
.page-template-template-checkout .container {
	width: auto;
}

.checkout {
	position: relative;
}
.checkout br {
	display: none;
}
/* 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 .mm-productDesc,
.checkout .checkout-terms {
	margin: 0 0 10px;
}
.checkout .mm-checkoutContainer {
	margin: 0;
}
.checkout .mm-checkoutContainer .mm-formError {
	position: absolute;
	top: -30px;
	width: 100%;
	padding: 10px 15px;
	margin: 0;
	font-size: .85em;
	border-radius: 0;
	text-shadow: none;
}
.checkout .mm-checkoutInfoBlock {
	padding: 0;
	border: none;
	border-radius: 0;
}
.checkout .mm-checkoutInfoBlock h3 {
	font-size: 1em;
	margin: 0 0 10px;
}
.checkout .mm-checkoutInfoBlock .mm-ccLogos img {
	width: 166px;
	margin: 0 0 10px;
}
.checkout .mm-checkoutInfoBlock .billing-details {
	font-size: 1em;
	text-transform: none;
}
.checkout .mm-paymentbuttons {
	margin: 0 0 20px;
}
.checkout .mm-paymentbuttons .mm-button {
	display: block;
	width: 100% !important;
}
.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;
}
.checkout .checkout-disclaimer .mm-remember-me {
	margin: 10px 0 0 !important;
}

/* new Stripe elements fields */
.checkout-column.column-payment .mm-stripe-elements-container {
	height: auto;
	padding: 15px 12px;
	background: #f5f5f5;
    border: none;
    border-bottom: 2px solid #ddd;
    border-radius: 0;
	box-shadow: none;
}
.checkout-column.column-payment #mm_field_cc_number_div,
.checkout-column.column-payment #mm_field_cc_cvv_div,
.checkout-column.column-payment #mm_field_cc_exp_div {
	width: 100%;
}

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

.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 {

}
.checkout-column {
	display: flex;
    align-items: stretch;
	padding: 100px;
	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 .mm-checkoutSection {
	padding: 0;
}
.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;
}

/* -------------------- comments -------------------- */
.comment {
	position: relative;
	padding: 20px 0 20px 70px;
	min-height: 80px;
	border-top: 1px solid #ddd;
}
.comment .comment-avatar,
.comment .comment-icon {
	position: absolute;
	top: 20px;
	left: 0;
	width: 50px;
}
.comment .comment-avatar img {
	border-radius: 100px;
}
.comment .comment-icon {
	font-size: 3em;
	width: 50px;
	text-align: center;
}
.comment .comment-title {
	display: block;
	margin: 0 0 10px;
}
.comment .comment-meta {
	display: block;
	font-size: .9em;
	margin: 0 0 5px;
}
.comment .comment-meta .meta-label.label-subject,
.comment .comment-meta .meta-label.label-user {
	font-weight: 700;
	color: #151515;
}
.comment .comment-meta .meta-label.label-time {
	font-weight: 400;
	color: var(--color-grey);
}
.comment .comment-content {
	font-size: .9em;
}
/* comment form */
.comment-form {
	margin: 0 0 20px;
}

.comments-container {
	margin: 30px 0 0;
}
/* hide all the default WP stuff */
.comments-container .form-allowed-tags,
.comments-container .logged-in-as,
.comments-container br {
	display: none;
}
.comment-list {
	list-style: none;
	margin: 0 0 20px;
}
.comment-list > .comment {
	position: relative;
	padding: 15px 0 0 54px;
	border-top: 1px solid #ddd;
}
.comment-list > .comment.bypostauthor:after {
	position: absolute;
	top: 15px;
	right: 0;
	content: "Instructor";
	font-size: .8em;
	font-weight: 700;
	text-transform: uppercase;
	color: #1ab1db;
	z-index: 5;
}
.comment-list > .comment .avatar {
	position: absolute;
	top: 15px;
	left: 0;
	width: 44px;
	border-radius: 50px;
}
.comment-list > .comment .comment-meta {
	font-size: .85em;
	font-weight: 700;
	color: #333;
	margin: 0 0 10px;
}
.comment-list > .comment.bypostauthor .comment-meta {
	padding-right: 100px;
}
.comment-list > .comment .comment-meta .fn {
	color: #5e7bbd;
}
.comment-list > .comment .comment-meta .fn > a {
	color: #5e7bbd;
}
.comment-list > .comment .comment-meta a {
	color: #aaa;
}
.comment-list > .comment .comment-content .wp-review-comment-rating {
	display: block;
	margin: 0 0 10px;
}
.comment-list > .comment .comment-content .edit-link {
	position: absolute;
	top: 15px;
	right: 0;
	font-size: .8em;
}
.comment-list > .comment .comment-content p {
	font-size: .85em;
}
.comments-container .comment-respond {
	padding: 15px 0 0;
	border-top: 1px solid #ddd;
}
.comments-container .comment-respond label {
	color: #333;
}
.comments-container .comment-respond .comment-reply-title {
	font-size: 1.2em;
}
.comments-container .reply {
	margin: 0 0 15px;
}
.comments-container .reply a {
	display: inline-block;
	padding: 7px 20px;
	font-size: .8em;
	font-weight: 700;
	line-height: 1;
	border-radius: 3px;
	border: 1px solid;
	text-decoration: none;
}
.comments-container .reply a:hover {
	background: #09c;
	color: #fff;
	border-color: #09c;
}
.comment-list > .comment .children {
 	border-left: 2px solid #eee;
 	padding-left: 30px;
    margin: 0;
}
.comment-reply-link {
	font-size: .8em;
}

/* -------------------- 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: linear-gradient(90deg, var(--color-green) 0%, var(--color-green-lime) 100%);
	border-radius: 20px;
	z-index: 5;
}
.course-progress.progress-small {
	height: 10px;
	border-radius: 10px;
}
.course-progress.progress-small .progress-bar {
	height: 10px;
	border-radius: 10px;
}
.course-progress-label {
	display: block;
	font-weight: 300;
	line-height: 1.4;
	margin: 10px 0;
}

/* progress */
.course-radial {
	position: relative;
	min-height: 120px;
	padding-left: 120px;
}
.course-radial .radial-container {
	position: absolute;
	top: 0;
	left: 0;
}
.course-radial.radial-large {
	min-height: 140px;
	padding-left: 150px;
}

/* -------------------- 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;
}
.feature .feature-title.title-large {
	font-size: 3em;
	font-weight: 300;
}

/* 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;
	background: #f5f5f5;
	color: #777;
}
.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: #ddd;
	border-color: #000;
	text-decoration: none;
}
.feature.feature-link > a:hover:after {
	color: #000;
}
.feature.feature-link .feature-icon {
	top: 20px;
	left: 15px;
	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;
	border-radius: 10px;
}
.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;
}
/* group lists */
.filter .filter-group .group-list {
	list-style: none;
}
.filter .filter-group .group-list li {
	margin: 0 0 5px;
}
.filter .filter-group .group-list li label {
	position: relative;
	padding-left: 20px;
	margin: 0;
	font-size: .9em;
	font-weight: 400;
	cursor: pointer;
}
.filter .filter-group .group-list li label:hover {
	color: #08c;
}
.filter .filter-group .group-list li label input {
	position: absolute;
	top: 3px;
	left: 0;
}
/* filter search */
.filter .search {
	padding-right: 30px;
	border-radius: 0;
}
.filter .search .search-input {
	padding: 10px;
	font-size: .9em;
}
.filter .search .search-submit {
	top: 2px;
	right: 0;
	padding: 10px;
}
/* horizontal filter */
.filter.filter-horizontal {
	padding: 10px 100px 10px 0;
	border: none;
}
.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: auto;
	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.filter-horizontal .filter-reset {
	position: absolute;
	top: 0;
	right: 0;
	width: 100px;
}

/* ----- 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: 400;
	margin: 0 0 5px;
	color: #1a1b21;
}
.filter .facetwp-checkbox:hover,
.filter .facetwp-radio:hover {
	color: var(--color-red-light);
}
.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;
}

/* -------------------- gamification -------------------- */
.game-badge {
	display: inline-block;
	width: 150px;
	padding: 10px;
	margin: 0 5px 5px 0;
	vertical-align: top;
	border: 1px solid #ddd;
	border-radius: 5px;
}
.game-badge img {
	display: block;
	margin: 0 0 10px;
	opacity: 0.3;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.game-badge img:hover {
	opacity: 1.0;
}
.game-badge.badge-earned {
	background: #f5f5f5;
}
.game-badge.badge-earned img {
	filter: grayscale(0);
	opacity: 1.0;
}
.game-badge.badge-earned img:hover {
	transform: scale(1.05);
}
.game-badge .badge-title {
	margin: 0 0 10px;
	text-align: center;
}

/* -------------------- 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-waves {
	background: url(../images/bg-abstract-waves-red.jpg) bottom center no-repeat;
	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;
}
/* public heros */
.hero.hero-public .hero-wrap {
	padding: 150px 0;
}


/* 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: 300px;
	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 form */
.hero .hero-form {
	padding: 50px;
	background: #fff;
}
.hero .hero-form.form-trans {
	background: rgba(0, 0, 0, .6);
}
.hero .hero-form .form-registration p {
	margin: 0;
}
.hero .hero-form br {
	display: none;
}
.hero .hero-form .mm-checkoutContainer {
	margin: 0;
}
.hero .hero-form .mm-paymentbuttons {
	margin: 0 0 20px;
}
.hero .hero-form input[type="submit"],
.hero .hero-form .mm-paymentbuttons .mm-button {
	display: block;
	width: 100% !important;
}
.hero .hero-form p.checkout-terms,
.hero .hero-form p.checkout-security {
	margin: 10px 0 0;
}

.hero .hero-parent-link {
	display: block;
	margin: 0 0 10px;
}
.hero .hero-parent-link a {
	color: #fff;
	text-decoration: none;
}
.hero .hero-parent-link a:hover {
	color: var(--color-red-light);
}

/* -------------------- item -------------------- */
.item {
	position: relative;
	padding: 20px 0;
	border-top: 1px solid #ddd;
}
.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: var(--color-red);
	text-decoration: none;
}
.item .item-title a:hover {
	color: var(--color-dark);
}
.item p {
	margin: 0 0 10px;
}
.item p:last-child {
	margin: 0;
}
/* item action */
.item .item-action {
	position: absolute;
	top: 20px;
	right: 0;
	width: 120px;
	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 action */
.item.item-with-action {
	padding-right: 120px;
}

/* items with images */
.item.item-with-image {
	min-height: 190px;
	padding-left: 170px;
}
.item.item-with-image .item-image {
	position: absolute;
	top: 20px;
	left: 0;
	width: 150px;
}
.item.item-with-image .item-image img {
	display: block;
	width: 100%;
	border-radius: 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);
}
/* activity items */
.item-activity-list {
	position: relative;
}
.item-activity-list:before {
	content: "";
    position: absolute;
    top: 0;
    left: 20px;
    width: 1px;
    height: 100%;
    background: #ddd;	
}
.item.item-activity {
	min-height: 70px;
	padding: 15px 100px 15px 15px;
	margin: 0 0 20px 50px;
	border: 1px solid #ddd;
	border-radius: 5px;
}
.item.item-activity .item-icon {
	position: absolute;
	top: 7px;
	left: -50px;
	z-index: 50;
}
.item.item-activity .item-icon > a {
	display: block;
	width: 40px;
	padding: 10px 0;
	background: #fff;
	font-size: 1em;
	text-align: center;
	text-decoration: none;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.item.item-activity .item-icon > a:hover {
	background: rgba(0, 0, 0, .1);
}
.item.item-activity .item-desc {
	margin: 0;
}
.item.item-activity .item-action {
	top: 15px;
	right: 15px;
}
/* event items */
.item.item-event {
	min-height: inherit;
	padding: 15px 15px 15px 100px;
	margin: 0 0 15px;
}
.item.item-event .item-image {
	top: 15px;
	left: 15px;
	width: 60px;
	height: 60px;
}
.item.item-event.item-with-image .item-image.image-icon a {
	padding: 15px 0;
	font-size: 1.5em;
	background: #151515;
}
.item.item-event.item-with-image .item-image.image-text {
	display: block;
	left: 0;
}
.item.item-event.item-with-image .item-image.image-text a {
	display: block;
	width: 80px;
	padding: 10px 0;
	color: #fff;
	background: #151515;
	text-align: center;
}
.item.item-event.item-with-image .item-image.image-text a:hover {
	background: #666;
	text-decoration: none;
}
.item.item-event.item-with-image .item-image.image-text .text-day {
	display: block;
	padding: 0 0 5px;
	margin: 0 0 5px;
	font-size: 1.2em;
	font-weight: 300;
	letter-spacing: -1px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.item.item-event.item-with-image .item-image.image-text .text-year {
	display: block;
	font-size: 1em;
	font-weight: 700;
}

.item.item-event .item-title {
	margin: 7px 0 3px;
}

/* 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-progress {
	padding-right: 100px;
}
.item.item-with-progress .item-progress {
	position: absolute;
	top: 20px;
	right: 0;
	width: 100px;
}
/* module items */
.item.item-module {
	padding-left: 70px;
}
.item.item-module .item-number {
	position: absolute;
	top: 20px;
	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;
}

/* 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: var(--color-dark);
	border: 1px solid #ddd;
	border-left: 3px solid var(--color-dark);
	border-radius: 5px;
}
.item.item-with-image .item-image.image-icon a:hover {
	background: #eee;
	color: var(--color-dark);
	border-color: var(--color-dark);
}

/* 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-content {
	padding: 15px 0;
}
.item.item-large.item-with-image {
	min-height: 250px;
	padding-left: 270px;
}
.item.item-large.item-with-image .item-image {
	width: 250px;
}
/* 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;
}

/* light items */
.item.item-light .item-title a {
	color: #fff;
	text-decoration: none;
}
.item.item-light .item-title a:hover {
	color: rgba(255, 255, 255, 0.5);
}
.item.item-light.item-event.item-with-image .item-image.image-text a {
	background: #fff;
	color: #151515;
}
.item.item-light.item-event.item-with-image .item-image.image-text .text-day {
	border-color: #151515;
}
.item.item-light.item-event.item-with-image .item-image.image-text a:hover {
	background: rgba(255, 255, 255, 0.5);
}

/* -------------------- 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 10px 10px 0;
	color: var(--color-grey);
}
.meta .meta-label.label-cat {
	color: var(--color-dark);
}
.meta .meta-label.label-type {
	padding: 0;
	color: var(--color-dark);
	border: none;
}
.meta .meta-label.label-user {
	padding: 0;
	color: var(--color-grey);
	border: none;
}

/* -------------------- 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: 700;
	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 var(--color-red-light);
}
/* 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: 30px;
}
.metric.metric-stacked .metric-label {
	margin: 0 0 5px;
}
.metric.metric-stacked .metric-value {
	font-size: 1.5em;
}

/* user metrics */
.metric.metric-user {
	padding-left: 0;
}
.metric.metric-user .user {
	padding-left: 90px;
}
.metric.metric-user .user .user-avatar {
	width: 75px;
}

/* metric links */
.metric.metric-link {
	display: block;
	padding: 15px 15px 15px 90px;
	color: #1a1b20;
	border: 1px solid #ddd;
	text-decoration: none;
}
.metric.metric-link:hover {
	background: #f2f8f8;
	border-color: #1a1b20;
}
.metric.metric-link .metric-icon {
	top: 15px;
}
.metric.metric-link .metric-desc {
	color: var(--color-grey);
}

.metric.metric-link.active {
	background: #1a1b20;
	color: #fff;
}
.metric.metric-link.active .metric-value,
.metric.metric-link.active .metric-desc {
	color: #fff;
}

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

/* -------------------- Paths -------------------- */
.path {
	position: relative;
	margin: 0 0 30px;
}
.path:before {
	position: absolute;
	top: 0;
	left: 23px;
	content: "";
	width: 3px;
	height: 100%;
	background: #e5e5e5;
	z-index: 5;
}
.path .path-item {
	position: relative;
	min-height: 200px;
	padding: 30px 30px 30px 220px;
	margin-left: 23px;
}
.path .path-item .item-number {
	position: absolute;
	top: 45px;
	left: -23px;
	width: 50px;
	height: 50px;
	padding: 10px 0;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
	background: #19191d;
	color: #fff;
	border: 2px solid #19191d;
	border-radius: 100px;
	z-index: 5;
}
.path .path-item .item-image {
	position: absolute;
	top: 25px;
	left: 45px;
	width: 150px;
	height: 150px;
	overflow: hidden;
}
.path .path-item .item-image img {
	width: 100%;
	max-width: inherit;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}

.path .path-item .item-image.image-medium {
	background-color: #fff;
}
.path .path-item .item-image.image-medium img.post-thumbnail{
	width: auto;
	max-height: 150px;
}
.path .path-item .item-image img:hover {
	opacity: .5;
}
.path .path-item .image-tags {
	position: absolute;
	bottom: 20px;
	left: 0;
}
.path .path-item .item-content p:last-child {
	margin: 0;
}
.path .path-item .item-title {
	margin: 0 0 5px;
}
.path .path-item p {
	font-size: .85em;
}
.path .path-item .item-tag {
	position: absolute;
	top: 25px;
	right: 20px;
}
/* task items */
.path .path-item.item-task {
	min-height: 65px;
	padding: 10px 100px 10px 45px;
}
.path .path-item.item-task .item-number {
	top: 18px;
}
.path .path-item.item-task .item-action {
	position: absolute;
	top: 18px;
	right: 0;
}
/* supplemental items */
.path .path-item.item-supplemental {
	min-height: inherit;
	padding: 20px;
}
.path .path-item.item-supplemental .wrap-toggle-title {
	display: block;
}
.path .path-item.item-supplemental .js-supplemental-toggle .toggle-helper {
	display: inline-block;
	color: #778c8a;
	margin-left: 5px;
}
.path .path-item.item-supplemental .item-number {
	left: 20px;
	background: #ccc;
	color: #fff;
	border-color: #ccc;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.path .path-item.item-supplemental a .item-number {
	background: #1ab1db;
	border-color: #1ab1db;
}
.path .path-item.item-supplemental a .item-number:hover {
	background: #036;
	border-color: #036;
}
.path .path-item.item-supplemental .item-image {
	left: 90px;
}
.path .path-item.item-supplemental .item-wrap {
	display: none; /* hide supplemental content by default and show with JS */
}

.path .path-item.item-simple {
	padding-left: 45px;
}

/* path sections */
.path .path-section {
	position: relative;
	min-height: 100px;
	padding: 30px 0 30px 45px;
	margin-left: 23px;
}
.path .path-section .section-number {
	position: absolute;
	top: 25px;
	left: -23px;
	width: 50px;
	height: 50px;
	padding: 10px 0;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	background: #19191d;
	color: #fff;
	border: 2px solid #19191d;
	border-radius: 100px;
	z-index: 5;
}
.path .path-section .section-title {
	margin: 0 0 10px;
}
.path .path-section .section-utility {
	position: absolute;
	top: 30px;
	right: 0;
}

.path .path-section .path-item {
	margin-left: -45px;
}
.path .path-section .path-item .item-number {
	width: 48px;
    height: 48px;
    background: #fff;
    color: #19191d;
    border: 2px solid #19191d;
}
.path .path-section .path-item.item-completed .item-number {
	background: var(--color-green) !important;
	color: #fff;
	border-color: var(--color-green) !important;
}

/* visible styles */
.path .path-item.item-supplemental.visible {
	min-height: 200px;
	padding-left: 295px;
}
.path .path-item.item-supplemental.visible .item-wrap {
	display: block;
}
.path .path-item.item-supplemental.visible .wrap-toggle-title {
	display: none;
}
/* visibility styles */
.path .path-section .path-item.inactive .item-number {
	background: #ddd;
	color: #999;
	border-color: #ddd;
}

/* -------------------- 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: var(--color-dark);
}

/* -------------------- quote -------------------- */
.quote {
	padding: 30px;
	margin: 0 0 30px;
}
.quote blockquote {
	padding: 0;
	margin: 0 0 20px;
}

/* ---------- Radial ---------- */
.radial {
	position: relative;
	display: inline-block;
	width: 100px;
	margin: 0 0 20px;
}
.radial .radial-circle {
	display: block;
}
.radial .radial-value {
	position: absolute;
	top: 28px;
	width: 100%;
	font-size: 1.5em;
	font-weight: 400;
	text-align: center;
	color: #000;
}
.radial .radial-label {
	position: absolute;
	top: 53px;
	width: 100%;
	font-size: .65em;
	font-weight: 400;
	text-align: center;
}
.radial.radial-value-only .radial-value {
	top: 40px;
}
.radial.radial-value-only .radial-value.value-circle {
	top: 20px;
	left: 20px;
    width: 60px;
    height: 60px;
    padding: 21px 0;
    color: #1a1b20;
    font-weight: 700;
    font-size: 1.5em;
    border-radius: 150px;
}
/* small radials */
.radial.radial-small {
	width: 80px;
}
.radial.radial-small .radial-value {
	top: 20px;
	font-size: 1.2em;
}
.radial.radial-small .radial-label {
	top: 40px;
}
/* radial container */
.radial-container {
	position: relative;
	min-height: 100px;
	padding: 0 0 0 120px;
	margin: 0 0 20px;
}
.radial-container .radial {
	position: absolute;
	top: 0;
	left: 0;
}

/* large radials */
.radial-container.radial-large {
	min-height: 130px;
	padding: 7px 0 0 150px;
}
.radial-large .radial {
	width: 130px;
}
.radial-large .radial .radial-value {
	position: absolute;
	top: 32px;
	font-size: 2em;
}
.radial-large .radial .radial-label {
	position: absolute;
	top: 75px;
	font-size: .85em;
}
.radial-large .radial.radial-value-only .radial-value.value-circle {
	top: 33px;
	width: 90px;
	font-size: 2em;
}
.radial-large .radial-container {
	min-height: 130px;
}

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

/* -------------------- sections -------------------- */
.section-header {
	position: relative;
	padding: 0 150px 0 0;
	margin: 0 0 20px;
}
.section-header .header-utility {
	position: absolute;
	top: 0;
	right: 0;
}

/* -------------------- 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;
	width: 100%;
	-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: 300;
	color: #fff;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.tile .tile-view {
	display: block;
	font-weight: 700;
	color: #fff;
}
.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;
}
.tile:hover .tile-description.description-small.js-content {
	height: 25px;
}

/* -------------------- 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;
	-webkit-transition: .25s;
	-moz-transition: .25s;
	-o-transition: .25s;
	transition: .25s;
}
.user .user-avatar:hover img {
	transform: scale(1.05);
}
.user .user-avatar.avatar-bordered img {
	border: 2px solid #fff;
}

.user .user-label {
	display: block;
	font-size: .8em;
	margin: 0 0 5px;
	color: var(--color-teal-light-1);
}
.user .user-title {
	display: block;
	margin: 0 0 5px;
}
.user .user-title a {
	color: var(--color-dark);
}
.user .user-title a:hover {
	color: var(--color-red);
}
.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 {
	min-height: 50px;
	padding-left: 50px;
}
.user.user-micro .user-avatar {
	width: 40px;
}
.user.user-micro .user-title {
	font-size: .9em;
	margin: 0;
}
/* 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;
}
/* max users */
.user.user-max {
	min-height: 180px;
	padding-left: 170px;
}
.user.user-max .user-avatar {
	width: 150px;
}
/* metric users */
.user.user-metric {
	margin-left: 15px;
}

.user.user-inline {
	display: inline-block;
	margin: 0 20px 20px 0;
}

.user.user-with-utility {
	position: relative;
	padding-right: 100px;
}
.user.user-with-utility .user-utility {
	position: absolute;
	top: 0;
	right: 0;
}

/* -------------------- utility -------------------- */
.utility {
	margin: 0 0 20px;
}
.utility-header {
	position: relative;
	padding-right: 100px;
}
.utility-header .header-action {
	position: absolute;
	right: 0;
	top: 0;
}

/* -------------------- 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/checkout 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-weight: 700;
	color: #333;
	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;
}
.label-type {
	padding-bottom: 10px;
	color: var(--color-dark);
	border-bottom: 2px solid var(--color-dark);
}
/* option labels */
.label-option {
	position: relative;
	display: inline-block;
	padding: 7px 15px 7px 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;
}

/* 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: 12px;
	height: auto;
	background: #fff;
	border: 1px solid #ccc;
	box-shadow: none;
	border-radius: 3px;
	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: 12px;
	height: 52px;
	border-radius: 3px;
	background: #f5f5f5;
	color: #333;
	border: 1px solid #ccc;
}
textarea {
	height: 100px;
}
textarea.text-long {
	height: 200px;
}
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 {
	width: 50%;
	margin: 50px 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-container.container-trans {
	background: rgb(0, 0, 0, .5)
}
.auth-container.container-trans p,
.auth-container.container-trans label {
	color: #fff;
}
/* auth content / form */
.auth-content,
.auth-form {
	padding: 50px;
}
.auth-form {
	border-right: 1px solid #ddd;
}


body.page-template-template-login .site-wrap {
	box-shadow: none;
}

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

.column-action {
	text-align: right;
}
.column-action .action-link {
	display: inline-block;
	padding: 0 5px 0 7px;
	font-size: .85em;
	font-weight: 400;
	border-left: 1px solid #ccc;
}
.column-action .action-link:first-child {
	border-left: none;
}

.column-title {
	min-width: 200px;
}

/* 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.4em;
	font-weight: 300;
	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;
}
.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 {
	display: table;
	font-size: .85em;
	border: 1px solid #ddd;
}
.table.table-data thead {
	background: #f5f5f5;
}
.table.table-data th,
.table.table-data td {
	padding: 15px;
	vertical-align: top;
	border-top: 1px solid #ddd;
}
.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;
	border-top: 1px solid #ddd;
}
.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 {
	display: table;
	border-top: 2px solid #333;
	border-bottom: 1px solid #ccc;
	margin: 0 0 30px;
}
.table.table-list th,
.table.table-list td {
	padding: 15px 0;
	border-top: 1px solid #ccc;
	vertical-align: top;
}
.table.table-list th {
	width: 150px;
}
.table.table-list th i {
	width: 18px;
	text-align: center;
	margin-right: 5px;
	color: #333;
}
.table.table-list.table-small {
	font-size: .85em;
}
.table.table-list.table-small th {
	width: 80px;
}
.table.table-list.no-bottom-border {
	border-bottom: none;
}

/* 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;
	border-top: 1px solid #ddd;
}
.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;
}
.table.table-profile.profile-slim tbody th {
	width: 120px;
}

/* table helpers */
.table-title {
	margin-bottom: 10px;
}
.table-title a {
	color: var(--color-red);
}
.table-title a:hover {
	color: var(--color-dark);
}



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

.hidden {
	display: none !important;
}

/* ----- 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 #33c682;
}
.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:not(.v-select) {
	position: relative;
	width: inherit;
	background: none;
	box-shadow: none;
	overflow: visible;
}
.dropdown:not(.v-select) ul a {
	padding: 12px 40px 12px 15px;
}

.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 30px 15px 15px;
}
.dropdown-menu > li.active a,
.dropdown-menu > li.active a:hover {
	font-weight: 700;
	color: var(--color-dark);
}
.dropdown-menu > li > a > i {
	position: absolute;
	top: 18px;
	right: 12px;
	width: 15px;
	text-align: center; 
}
.dropdown-menu > li.active a > i {
	color: var(--color-dark);
}
.dropdown-menu .divider {
	margin: 1px;
}

/* ----- labels ----- */
.label {
	font-size: .85em;
    padding: 5px 10px;
    color: #fff;
    border-left: 3px solid rgba(0, 0, 0, .15);
    border-radius: 0;
}
.label.label-default {
	background: #ddd;
	color: #333;
}
.label.label-green {
	background: #33c682;
}
.label.label-primary {
	background: var(--color-dark);
}
/* status labels */
.label.label-active {
	background: var(--color-green);
}
.label.label-completed,
.label.label-sent {
	background: var(--color-green);
}
.label.label-assigned,
.label.label-planned,
.label.label-scheduled {
	background: var(--color-blue);
}
.label.label-inactive {
	background: var(--color-grey-light);
	color: var(--color-dark);
}

/* ----- 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 {
	margin: 0;
}
.modal-header .close {
	position: absolute;
	top: 0;
	right: 15px;
	padding: 10px;
	font-family: Helvetica Neue;
	font-size: 3.2em;
	font-weight: 300;
	line-height: 1;
	margin: 0;
	color: #999;
	text-shadow: none;
	background: none;
	border: none;
}
.modal-header .close:hover {
	background: none;
	color: #000;
}
/* modal body */
.modal .modal-dialog {
	max-width: 720px;
}
.modal-body {
	padding: 30px;
	margin: 0;
}
.modal-body.body-no-padding {
	padding: 0;
}
/* modal footer */
.modal-footer {
	display: block;
	background: #f5f5f5;
	padding: 25px 30px;
	margin-top: 0;
	text-align: left;
}
.modal-footer .btn {
	margin: 0 5px 0 0;
}
.modal input[type="submit"] {
	display: inline-block;
	height: auto;
	padding: 10px 20px;
	font-weight: 700;
	text-align: center;
	background: var(--color-dark);
}
.modal input[type="submit"]:hover {
	background: var(--color-gey);
	color: #fff;
}
/* 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;
}

/* ----- nav ----- */
.nav {
	font-weight: 700;
	margin: 0 0 20px;
}
.nav li a:hover {
	text-decoration: none;
}
.nav.nav-pills li {
	display: inline-block;
}
.nav.nav-pills li a {
	display: inline-block;
	padding: 7px 15px;
	border-radius: 5px;
	color: var(--color-dark);
}
.nav.nav-pills li a:hover {
	background: var(--color-red-light);
	color: #fff;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.nav.nav-pills li.active a {
	background: var(--color-red);
	color: #fff;
}

.nav .nav-link {
	color: var(--color-dark);
}
.nav .nav-link:hover {
	color: var(--color-red);
}

.navbar .dropdown:not(.v-select) ul li a {
	padding: 10px;
}
.navbar .dropdown-menu.show {
	background: var(--color-teal-light-4);
	border: none;
	z-index: 1001;
}
.navbar.navbar-filter {
	padding: 10px;
	margin: 0 0 20px;
	background: none !important;
	border: 1px solid #ddd;
	border-radius: 5px;
}
.navbar.navbar-filter .navbar-brand {
	font-size: 1em;
	font-weight: 700;
}
.navbar.navbar-filter .nav-link {
	padding: 10px 15px;
	font-weight: 400;
	text-decoration: none;
}
.navbar.navbar-filter .nav-link:hover {
	background: var(--color-teal-light-4);
}
.navbar.navbar-filter .nav-link.show {
	background: var(--color-teal-light-4);
}
.navbar.navbar-filter input.form-control {
	padding: 10px;
	border: 1px solid #ddd;
	border-radius: 5px;
}
.navbar.navbar-filter button[type="submit"] {
	font-size: .9em;
}

/* ----- offcanvas ----- */
.offcanvas.offcanvas-wide {
	width: 600px;
}
.admin-bar .offcanvas.offcanvas-wide {
	top: 32px
}
.offcanvas-header {
	padding: 30px 30px 0;
}
.offcanvas-header .btn-close {
	width: auto;
	height: auto;
	padding: 10px;
	background: none;
    color: #999;
    font-size: 2.5em;
    line-height: 1;
}
.offcanvas-header .btn-close:hover {
	color: #000;
	background: none;
}
.offcanvas-body {
	padding: 30px;
}

/* ----- pagination ----- */
.pagination {
	display: flex;
}

/* ----- 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;
	border-radius: 10px;
	border: none;
	box-shadow: none;
}
.well .well-title {
	position: relative;
	padding-right: 40px;
	font-size: 1.5em;
	font-weight: 300;
}
.well .well-title i {
	display: inline-block;
	margin-right: 5px;
}
.well.well-bordered {
	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 .mm-button {
	display: block;
	width: 100%;
	padding: 15px 0;
	margin: 15px 0 0;
	font-size: 1em;
	text-align: center;
}
.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 {
	padding: 15px;
	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-url input[type="url"] {
	padding-left: 30px;
}
.acf-frontend-form .acf-url i {
	top: 14px;
	left: 10px;
}
.acf-frontend-form .acf-fields > .acf-field p.description {
	font-size: .85em;
}
.acf-frontend-form .acf-form-submit {
	padding: 15px;
}
.acf-frontend-form .updated {
	display: none; /* hide message since we use our own */
}


/* -------------------- Full Calendar -------------------- */
/* header */
.calendar.fc {
	min-height: 600px;
}
.calendar.fc .fc-toolbar.fc-header-toolbar {
	padding: 15px;
	margin: 0;
	background: #f5f5f5;
}
.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-toolbar h2 {
	font-size: 1.2em;
	font-weight: 700;
	text-transform: uppercase;
}
.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;
}
.calendar.fc button:hover {
	background: #eee;
}
.calendar.fc button.fc-state-active {
	background: #f5f5f5;
}


/* ---------- jQuery Data Tables ---------- */
.dataTables_length label {
	display: inline-block;
	font-size: .85em;
	margin: 0 0 10px;
	vertical-align: top;
}
.dataTables_length select {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 0;
}
.dataTables_filter {
	float: right;
	margin: 0 0 10px;
}
.dataTables_filter label {
	display: inline-block;
	font-size: .85em;
	margin: 0 5px 10px 0;
	vertical-align: top;
}
.dataTables_filter input[type="search"] {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 5px;
	background: #f5f5f5;
	border: none;
    border: 2px solid #ddd;
    border-radius: 3px;
}
.dataTables_filter input[type="search"]:focus {
	border-color: #1a1b21;
}
.dataTables_wrapper .dataTables_length {
	float: left;
	margin: 10px 0;
}
.dataTables_wrapper .dataTables_info {
	font-size: .85em;
	padding: 0;
	margin: 10px 0 0;
}
.dataTables_wrapper .dataTables_paginate {
	font-size: .85em;
	padding: 0;
	margin: 10px 0 0;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
	padding: 5px 10px;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
	font-weight: 700;
	border: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
	background: #1a1b21;
	border: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
	background: #ddd;
	border: none;
}
table.dataTable.stripe tbody tr.odd,
table.dataTable.display tbody tr.odd {
	background-color: #fff;
}
table.dataTable.display tbody tr.even > .sorting_1,
table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
	background-color: #f2f8f8;
}
table.dataTable.display tbody tr.odd>.sorting_1,
table.dataTable.order-column.stripe tbody tr.odd>.sorting_1 {
	background-color: #f2f8f8;
}
table.dataTable.stripe tbody tr:hover td,
table.dataTable.display tbody tr:hover td {
	background: rgba(244, 248, 248, 0.75) !important;
}


/* -------------------- 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;
}
.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;
}
.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;
}
/* error styling */
.gform_wrapper .validation_error {
	display: block;
	padding: 10px;
	margin: 0 0 15px;
	font-size: .85em;
	background: #c00;
	color: #fff;
}
.gform_fields .gfield .validation_message {
	display: block;
	margin: 5px 0 0;
	font-size: .85em;
	color: #c00;
}
.hero .hero-form .gform_fields .gfield .validation_message {
	color: #f90;
}
/* success styling */
.gform_confirmation_message {
	display: block;
	padding: 10px;
	margin: 0 0 15px;
	font-size: .85em;
	background: #690;
	color: #fff;
}

.gfield_required {
	color: #c00;
}
.gfield_visibility_hidden {
	display: none;
}
.gfield.hidden_label label {
	display: none;
}


/* -------------------- 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: var(--title-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: var(--title-font);
    font-size: 1em;
    line-height: 1;
    background: #02bad6;
    border: none;
    box-sizing: border-box;
}


/* -------------------- 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: #e8fdf2;
	color: #666;
	border-color: #e8fdf2;
}
.btn.btn-default.mdc-complete-true i {
	color: var(--color-green);
}
.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-hidden {
	display: none;
}
.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 {
		height: 75px;
		min-height: 75px;
		padding: 0;
	}
	.site-header .header-wrap {
		border: none;
		padding: 0 15px;
	}
	.site-header .header-brand {
		width: 130px;
		padding: 10px 0;
	}
	.site-header .header-brand sup {
		top: 27px;
		left: 214px;
	}
	
	.site-header .header-mobile-navicon {
		display: inline-block;
	}
	.site-header .header-nav {
		display: block;
	}
	.site-header .header-nav .nav-menu {
		position: fixed;
		top: 75px;
		left: 0;
		width: 100%;
		height: 0;
		padding: 0;
		background: #fff;
		overflow: hidden;
		z-index: 1000;
		-webkit-transition: .25s;
		-moz-transition: .5s;
		-o-transition: .5s;
		transition: .5s;
	}
	.site-header .header-nav ul > li {
		float: none;
		display: block;
		margin: 0;
		border-top: 1px solid rgba(0, 0, 0, .1);
	}
	.site-header .header-nav ul > li > a {
		height: auto;
		padding: 20px;
	}
	.site-header .header-aside {
		display: none;
	}
	/* mobile nav open UX */
	.mobile-nav-open .site-header .header-nav .nav-menu {
		height: 100%;
	}
	.mobile-nav-open .site-header .header-aside {
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 10px 15px;
		background: var(--color-teal-light-4);
		justify-content: left;
		z-index: 1001;
	}
	/* app nav */
	.app-nav .nav-menu ul.menu-main {
		display: block;
	}
	.app-nav .nav-menu ul.menu-main li {
		display: block;
		border-top: 1px solid rgba(255, 255, 255, .2);
		border-left: none;
	}

	/*
	Structure
	-------------------------------------------------- */
	.site {
		padding: 0;
		margin: 0;
	}
	.site .site-content {
		padding: 0 !important;
	}
	.site .site-content > .container {
		padding: 0;
	}
	/* ----- app nav ----- */
	.app-nav {
		position: relative;
		display: block;
		top: inherit;
		left: 0;
		float: none;
		width: 100%;
		padding:  0;
		z-index: 500;
	}
	.app-nav .nav-brand {
		display: inline-block;
		width: 75px;
		padding: 10px;
	}
	.app-nav .nav-utility {
		display: inline-block;
		position: absolute;
		top: 0;
		right: 0;
		padding-right: 12px;
	}
	.app-nav .nav-utility .utility-elem {
		display: inline-block;
	    padding: 0 8px;
	    text-align: left;
	    vertical-align: middle;
	}
	.app-nav .nav-utility .user-link,
	.app-nav .nav-utility .notification-link {
		height: 68px;
	}
	.app-nav .nav-utility .bb-icon-l {
		font-size: 1.4em;
		color: #fff;
	}
	.app-nav .nav-mobile-toggle {
		position: relative;
		display: block;
		padding: 20px 50px 20px 10px;
		font-weight: 700;
		color: #fff;
	}
	.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;
		padding: 0 0 30px;
	}
	.app-nav .nav-menu ul {
		display: block;
	}
	.app-nav .nav-menu ul li {
		display: block;
		border-left: none;
		border-top: 1px solid rgba(255, 255, 255, .15);
	}
	/* 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 0 25px 65px;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-icon {
		top: 22px;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-title,
	.compact-ui .app-nav .nav-menu ul li a .menu-desc {
		display: block;
	}

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

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

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

}

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

}

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

	/*
	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 0 25px 65px;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-icon {
		top: 22px;
	}
	.compact-ui .app-nav .nav-menu ul li a .menu-title,
	.compact-ui .app-nav .nav-menu ul li a .menu-desc {
		display: block;
	}
	/* ----- app body ----- */
	.app-body {
		display: block;
		margin: 0;
	}

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

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

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

	.flex-grid {
		display: block;
	}
	.flex-grid .grid-column {
		display: block;
		width: auto !important;
	}
	.flex-grid .grid-column.column-module {
		padding: 15px 0;
		border-right: none;
		border-bottom: 1px solid #ddd;
	}

}

/* 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
	-------------------------------------------------- */
	/* ----- grids ----- */
	.rsp-grid .grid-container {
		width: 47% !important;
	}

	/* ----- app heaeder ----- */
	.app-header {
		padding: 30px 0;
	}
	.app-header h1 {
		font-size: 1.5em;
	}
	.app-header .header-user {
		min-height: inherit;
		padding: 30px 0 0;
		margin: 10px 0 0;
		border-left: none;
		border-top: 1px solid rgba(255, 255, 255, .2);
	}
	.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 {
		display: block;
		padding: 0;
	}
	.card.card-wide .card-image {
		width: auto;
		height: auto;
	}
	.card.card-wide .card-image > a img {
		width: 100%;
		max-height: inherit;
	}
	.card.card-wide .card-content {
		width: 100%;
		margin-left: 0;
		padding: 20px;
	}
	.card.card-wide.card-with-progress .card-content {
		padding: 20px 130px 20px 20px;
	}
	.card.card-wide.card-with-progress .card-progress {
		top: 25px;
		right: 20px;
	}
	.card.card-wide.card-with-progress .card-progress .radial-container {
		width: 100px;
		padding: 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;
	}

}

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

	/*
	Global
	-------------------------------------------------- */
	/* ----- lists ----- */
	.list-action li {
		display: block;
		border-left: none;
		border-top: 1px solid #ddd;
	}
	.list-action li:first-child {
		border-top: none;
	}
	.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%;
	}

	.app-header .header-nav li {
		display: block;
		border-top: 1px solid rgba(255, 255, 255, .2);
		border-left: none;
	}
	.app-header .header-nav li:first-child {
		border-top: none;
	}
	
	/* ----- page section ----- */
	.page-section.section-auth {
		padding: 30px 0;
	}
	.page-section.section-cta .btn {
		display: block;
		width: 100%;
		margin: 0 0 10px; 
	}

	/*
	Components
	-------------------------------------------------- */
	/* ----- card ----- */
	.card.card-wide.card-with-progress .btn {
		display: block;
		margin: 0 0 10px;
	}

	/* ----- 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,
	.item.item-large.item-with-image {
		min-height: inherit;
		padding-right: 0;
		padding-left: 100px;
	}
	.item.item-with-image .item-image,
	.item.item-large.item-with-image .item-image {
		width: 80px;
	}
	.item.item-large .item-content {
		padding: 0;
	}
	/* ----- 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
========================================================================================================== */

