/* Proxima font versions installed:
	ProximaNovaSoft-Regular
	ProximaNovaSoft-Medium
	ProximaNovaSoft-Semibold
	ProximaNovaSoft-Bold
*/

.overthrow-enabled .overthrow {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

input[type=checkbox] {display:none;}

/* Move down content because have a fixed navbar that is 50px tall */ 
body {
  background-color:#F4F4F4;
  color:#222222;
  line-height:1;
}

p {
	font-size:15px;
	line-height:20px;
	margin:0 !important;
	overflow:hidden;
}
p.inline {
	display: inline-block;
	overflow:inherit;
	vertical-align:middle;
}

a,input {outline: none;}

form {margin: 0;}

h1, h2, h3 { color: #404040; text-align:left; }

h1 {
	font-size:38px;
	margin-bottom:20px;
	line-height: 1em;
}

h2,h3 {
	font-size:18px;
	margin-bottom: 20px;
}

h3 {
	margin:15px 0;
	font-weight:normal;
	font-size: 20px;
	letter-spacing:-0.75px;
}

h3.before_list { text-align:center; }

h4 {
	font-size:1em;
	color:#565656;
	margin-bottom: 8px;
}

ol, ul { font-size:15px; line-height:1.4em; }

script {display: none !important; }

label { font-size:15px; color:black;}
#payment-step-2 label {cursor:default;}
#payment-step-2 label:hover,
label.icheck:hover,
label.icheck.checked  {color:inherit !important;}

#payment-form iframe { display:block; margin-bottom:1rem; width:100%;}


strong,b { font-weight:normal; }
p strong { color: #3e3e3e;}

select { height:45px; border:none; outline:none;}

input[type="text"]:not(#search_site),
input[type="password"] {
    border: medium none;
}

code {font-weight:normal; color:#404040;}

select, input[type="text"],
		input[type="password"] 
{
	background-color: white;
    border-radius: 5px;
	height:45px;
	box-shadow:none; -moz-box-shadow:none; -webkit-box-shadow:none; -k-box-shadow:none; -o-box-shadow:none;
	line-height:normal;
	vertical-align:middle;
}

input[readonly],input[readonly]:focus { background-color: #e8e8e8; box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none; }

input.accepted {
	background-image: url('../images/checkbox-tick.png');
	background-repeat: no-repeat;
	background-position: 99% center;
}

ul.inline { list-style: none outside none; margin:0;}
ul.inline li { display: inline-block; vertical-align:middle; }

li.inblock { padding-bottom:0px !important; padding-left:15px !important;}

.terms p:not(.bold),
.terms li {color:#808080 !important;}

.text_upper { text-transform:uppercase; }
.nomargin { margin: 0 !important; }
.nopadding { padding: 0; }

.lheight-2	{ line-height: 1.2em; }

.vertical-middle {vertical-align:middle !important;}
.full_width { width:100%; }
.width_1020 { max-width:1020px; }
.lmarg-10	{ margin-left:10px !important; }
.lmarg-20	{ margin-left:20px !important; }
.rmarg-0	{ margin-right: 0 !important;}
.tmarg-0	{ margin-top: 0 !important; }
.tmarg-5	{ margin-top: 5px !important; }
.tmarg-10   { margin-top: 10px !important; }
.tmarg-20   { margin-top: 20px !important; }
.tmarg-30   { margin-top: 30px !important; }
.tmarg-40   { margin-top: 40px !important; }
.bmarg-10   { margin-bottom: 10px !important; }
.bmarg-15   { margin-bottom: 15px !important; }
.bmarg-20   { margin-bottom: 20px !important; }
.bmarg-30   { margin-bottom: 30px !important; }
.lpad-15	{ padding-left: 15px !important;}
.lpad-0		{ padding-left: 0 !important;}
.lpad-10	{ padding-left: 10px !important;}
.lpad-40	{ padding-left: 40px !important;}
.tpad-0		{ padding-top: 0px !important;}
.tpad-10	{ padding-top: 10px !important;}
.tpad-25	{ padding-top: 25px !important;}
.rpad-0		{ padding-right: 0px !important;}
.rpad-10	{ padding-right: 10px !important;}
.make-height {min-height:200px; padding-top:100px;}
.noscroll { overflow:hidden;  -webkit-overflow-scrolling: touch;}
.hidden { display:none; }
.transparent { opacity:0; filter:alpha(opacity=0) !important; display: table-column;}
.button { white-space:nowrap; overflow:hidden; }
.pad-25 { padding:20px 25px 25px; }

.circle { border-radius:50%;-moz-border-radius:50%;-webkit-border-radius:50%;-o-border-radius:50%; max-width: 200px; width: 100%;}

.white_block {
	background-color:#fff;
	border-bottom:1px solid #dbdbdb;
	margin-bottom:30px;
}

#content { min-height:900px; }
#content.extended { min-height:1455px; }

/*------------------- end of main and helper classes -----------------------*/

div#logo {
	background:url('../images/logo.png') left center no-repeat;
	padding-left:42px;
}

/* _________________________________________________________________________*/
/* 																	TOP BAR */
.top-bar {background: none !important; line-height: 45px !important; }

.top-bar h1 a {
	font-size:22px !important;
	color:#fff !important;
	text-transform: uppercase;
	font-weight:normal;
	padding:0 !important;
}

.top-bar ul {padding: 0;}


.top-bar-menu {margin-top: 2px;}
.top-bar-menu .login { margin-right:80px; padding:0;}
	.top-bar-menu .login a { padding:0px 20px; }
	
.top-bar-menu a { font-size:18px !important;  line-height:46px !important;}

.top-bar a.menu_icon {
	background:url('../images/menu_icon.png') 60px center no-repeat;
	visibility:visibile !important;
	position:absolute;
	right:0;
	display: inline-block;
	height: 45px !important;
	text-align: left;
	width: 95px !important;
	line-height: 46px !important;
}

.top-bar a.menu_icon span:hover {color: #e6007e; }

.top-bar-wrapper {
	background:none;
	padding: 11px 0;
	xheight: 73px;
	background-color:rgba(244,244,244,0.97);
	z-index:49;
}

.top-bar.dark * { color:#404040;}
.top-bar.dark #logo { background-image:url('../images/logo_fitness.png'); }
.top-bar.dark a.menu_icon { background-image:url('../images/menu_icon_dark.png'); }

/* _________________________________________________________________________*/
/* 																 	 FOOTER */

footer {
	border-top:1px solid #cecece;
	line-height:1.2em;
	color:#bdbdbd;
}

footer .copyright {
    font-size: 12px;
	margin:0 !important;
	vertical-align:top;
}

footer ul.menu { list-style: none outside none; margin:0 !important;}
footer ul.menu li { display: inline-block; }
footer ul.menu li:not(:first-child) {padding-left:10px;}

footer ul.menu li a { color:#bdbdbd; font-size: 1.05em; letter-spacing:-0.25px; }
footer ul.menu li a:hover { color:#808080; }

/* _________________________________________________________________________*/
/* 																	  PRICE */

.price {color: #4F4F4F; font-size:14px; line-height:18px;}
.price span { font-size:38px; line-height:30px; }

.price + .button.more { margin-top:37px;}

.price .striked-out {
	font-size:18px;
	text-decoration:line-through;
	margin-top:-10px;
	color:#bbb;
	float:right;
	font-family:ProximaNovaSoft-SemiBold !important;
}

.price.price-single { margin-top: 110px !important;}

/* _________________________________________________________________________*/
/* 																	PRICING */

.pricing-square { margin-left: auto; margin-right: auto; max-width:315px; }

.pricing-square > div:first-child {
	min-height:208px;
	padding:25px 10px;
}
.pricing-square h4 { font-size: 20px; }
.pricing-square h4 > span { font-size: 16px; margin-top:-5px; display:block;}

.pricing-square.aligned .noradios 			{ padding-top:6px !important; }

.pricing-features ul {
	list-style-type: none;
	margin:0;
	padding:0;
}
li.pricing-feature {
	background-image:url("../images/checkbox-tick.png");
	background-repeat:no-repeat;
	padding-left:48px;
	padding-top:5px;
	padding-bottom:7px;
	font-size:1.15em;
}


.pricing-price { font-size:96px; margin-bottom:10px; white-space:nowrap; position:relative; display:inline-block;}

.pricing-price span.currency { position:absolute; vertical-align:top; left:-20px;top:17px; font-size:20px;}

.pricing-price span.period { position:absolute; bottom:10px; font-size:16px; margin-left:5px;}

.pricing-square-voucher .pricing-price {font-size:54px;}

div[ps-href] { cursor:pointer; }

.compare-table .row .columns {
	min-height:46px;
	vertical-align:middle;
	padding-top:15px;
	padding-bottom:15px;
	font-size:15px;
}
.tick, .cross {
	display:inline-block;
	width:32px;
	height:13px;
	vertical-align:middle;	
}
.tick {	background: url('../images/checkbox-ticks.png') no-repeat left center;}
.cross { background: url('../images/magenta-cross.png') no-repeat left -11px;}

/* _________________________________________________________________________*/
/*																	 FILTER */

	.filter_section > label {
		margin-bottom:10px;
	}
	
	.row.checkbox {
		border-top:1px solid #eee;
		margin: 0 !important;
	}
	.row.checkbox:last-child {
		border-bottom:1px solid #eee;
		margin-bottom:30px !important;
	}
	.row.checkbox:not(.zurb) label {
		display:inline-block;
		padding:12px 0px; 
		width:100%;
		color:#000;
	}
	.row.checkbox.zurb {
		display:block;
		padding:12px 5px;
		background-color: #fff;
	}
	.row.checkbox.zurb label {
		line-height: 25px;
	}

	.checkbox label.zurb.checked {
		color:#000 !important;
	}

/* _________________________________________________________________________*/
/* 																  OFFCANVAS */
.right-off-canvas-menu {
	background-color: #404040;
	overflow-x:hidden;
	overflow-y:auto;
}

.right-off-canvas-menu .form-control {
	-moz-box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.3) inset !important;
	box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.3) inset !important;
	-webkit-box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.3) inset !important;
	-o-box-shadow: 0 1px 1px 1px rgba(0, 0, 0, 0.3) inset !important;
	
	background-color: #3d3d3d !important;
	letter-spacing: 0.5px;
}


.right-off-canvas-menu ul {
	list-style: none outside none;
	margin: 0px;
}

.right-off-canvas-menu ul li,
.right-off-canvas-menu ul li a,
.top-bar-menu a, .pricing-square h4 {
	color:#fff;
	line-height:1.6rem;
}
.right-off-canvas-menu ul.menu_big li,
.right-off-canvas-menu ul.menu_big li a,
.top-bar-menu a {
	font-size:17px;
	text-transform:uppercase;
    display: inline-block;
    width: 100%;
}
.right-off-canvas-menu ul.menu_small li a {
	color:#ccc;
	display: inline-block;
    width: 100%;
}

.right-off-canvas-menu ul.menu_big li.no-link,
.right-off-canvas-menu ul.menu_big li a,
.right-off-canvas-menu ul.menu_small li a {
	padding:10px 10px 10px 30px;
	
}

.right-off-canvas-menu .menu_big li,
.right-off-canvas-menu .menu_small li {
	padding:0;
	border-bottom: 1px solid #3b3b3b;
    border-top: 1px solid #434343;
}
.right-off-canvas-menu .menu_small li.last {border-bottom:none;}

.right-off-canvas-menu .menu_small.white li a 		{ color:#fff; }
.right-off-canvas-menu .menu_small.white li a:hover { color:#E6007E; }

.right-off-canvas-menu ul.menu_small.submenu { margin-right:10px;}
.right-off-canvas-menu ul.menu_small.submenu li a {margin-left:10px;}

.right-off-canvas-menu li.search { padding:8px 15px !important; margin-top:15px; border-top:none !important; position:relative;}

.move-left .exit-off-canvas,
.move-left .exit-off-canvas:hover {
	background:none;
	box-shadow: none;
	-webkit-box-shadow:none;
	-moz-box-shadow: none;
	-o-box-shadow: none;
}

a.live::after {
    display: inline-block;
    content: "live";
    font-size: 12px;
    padding: 0 5px 0 5px;
    background-color: green;
    margin: 0 0px 0 10px;
    height: 20px;
    line-height: 20px;
    vertical-align: middle;
}


/* _________________________________________________________________________*/
/* 																	  THUMB */
.thumb_container,
.thumb {
	max-width: 314px; 
	position: relative;
	padding:0;
	overflow:hidden;
	line-height:0px;
	margin:0 auto;
}

.thumb { height:208px; }

.thumb_description {
	display:block;
	background-color:#fff;
	margin:none;
}
	.thumb_description h3 { line-height: 24px; }
	.thumb_description > p {
		height: 80px;
		max-height: 80px;
	}

.thumb img { min-width:314px; /*transition: all .2s ease-out;*/ }
.thumb:hover img { /*transform: scale(1.1);*/ }

.thumb iframe { position:absolute; top:0; left:0;}

.thumb_tools,
.thumb_infobar {
	opacity:0;
	display: block !important;
	position:absolute;
	z-index:10;
	transition: opacity 0.25s linear;
}

.thumb_infobar {
	background-color:white;
	width:100% !important;
	margin:0 !important;
	font-size:15px;
	padding:12px 24px;
	bottom:0px;
	height:40px;
}
	span.thumb_infobar > span:not(.glyphicon) { display:inline-block; margin:0; line-height:13px;}
	span.thumb_infobar > span:nth-child(1) { width:24%; }
	span.thumb_infobar > span:nth-child(2) { width:57%; }
	span.thumb_infobar > span:nth-child(3) { width:19%; }
	/* Course version */
	.course span.thumb_infobar > span:nth-child(1) { width:25%; }
	.course span.thumb_infobar > span:nth-child(2) { width:55%; }
	.course span.thumb_infobar > span:nth-child(3) { width:20%; }
	
.thumb .badge {
	display: inline-block;
	margin:0 !important;
	top:130px;
	width:116px; height:37px;
	position:absolute;
}
.thumb .new_badge {
	left:0;
	background-image:url('../images/new_badge.gif');
}
.thumb .free_badge {
	right:0;
	background-image:url('../images/free_badge.gif');
}

.thumb_tools {
	top:10px;
	right:10px;
}


.thumb:hover .thumb_tools,
.thumb:hover .thumb_infobar { opacity:1 !important; }

/* img.thumb-small {width:60px;} */

ul.trainer-thumb .separator,
div.trainer-thumb .separator { height:20px; border-bottom:1px solid #dbdbdb; width:95%; margin-left:10px; }

div.trainer-thumb .separator { margin-bottom:20px; }
.trainer-thumb .description {  padding-left:20px; padding-right:20px; min-height:101px; overflow:hidden;}


ul.quick_filter {
	line-height:5em;
	font-size:15px;
	color:#5c5c5c;
}

ul.quick_filter li:not(:first-child) {  margin-left:20px; }

/* _________________________________________________________________________*/
/* 															   	   TRAINERS */

ul#Trainers_List li {margin-bottom:30px;}

img.trainer-header-img {max-width:200px;}

/* _________________________________________________________________________*/
/* 															   		 TOPICS */

.on-image-top {
	position: absolute;
	margin: 20px;
	color: #404040;
	overflow: hidden !important;
}
.on-image-top * {color: #404040;}

/* _________________________________________________________________________*/
/* 															   		 COURSE */

.course-like-widget { display:inline-block; margin-top:5px;}
	.course-like-widget .likes {
		font-size:15px;
	}

a.website-link {display:inline-block;}

a.website-link:before {
	display:inline-block;
	width:12px;
	height:12px;
	content:"";
	padding-left:10px;
	background:transparent url('../images/play-buttons.png') center center no-repeat;
	background-position:0px -12px;
	background-size:24px;
	vertical-align:middle;
	margin-right:7px;
	margin-bottom: 2px;
}

div.course-playlist {margin-bottom:20px;}

table.course-playlist-item {
	margin-bottom:0;
	border:none;
	background-color:#fff;
	width:100%;
}

	
table.course-playlist-item td {
	vertical-align:middle;
	color: #404040;
	font-size: 15px;
	text-align:left;
	padding-top:7px;
	padding-bottom:7px;
}

.sort-row table.course-playlist-item td { padding:14px 9px;}

.magenta-bg td {color: #fff !important;}

table.course-playlist-item td.course-name { width:160px; }
table.course-playlist-item td.title { min-width:100px;}
table.course-playlist-item td.course-trainer { width:170px;}

table.course-playlist-item td.play { width: 75px; text-align:center; min-width:50px; max-width:75px; padding-left:15px;}

table.course-playlist-item td.play a,
.lesson.disabled td.play span { display:inline-block; width:28px; height:28px; background-image:url('../images/play-buttons.png'); top:2px; position:relative;}

table.course-playlist-item td.play a 	{ background-position:0px 0px; }

table.course-playlist-item td.play a::after {
    content: "";
    position: absolute;
    left: -6px;
    top: -6px;
    width: 40px;
    height: 40px;
}

table.course-playlist-item.loaded td.play a,
table.course-playlist-item.loaded.paused td.play a { background-position:0px -28px; }

table.course-playlist-item.loaded.playing td.play a { background-position:28px -28px !important; }




.lesson.disabled td.play span {background-position:0px -56px;}

table.course-playlist-item td.date-added { width: 110px; text-align:center;}
table.course-playlist-item td.time { width: 85px; text-align:right;}
	
	
table.course-playlist-item td.favorite { width: 55px; text-align:right; padding-right: 20px;}
table.course-playlist-item td.favorite a { width: 23px; height:23px; display:block; text-align:center; float:right;}

table.course-playlist-item td.favorite a,
.lesson.disabled td.favorite span {
	background-image:url('../images/stars.png');float:right;
}

table.course-playlist-item .button {
	margin:0 !important;
}

/*white outline and white hover*/
table.magenta-bg.course-playlist-item td.favorite a { background-position:0px 0px; }

/*white with outline hover (favourite) */
table.magenta-bg.course-playlist-item td.favorite a.on_playlist { background-position:0px -69px; }

/*grey with magenta hover*/
.course-playlist-item td.favorite a { background-position:0px -46px; }

/*magenta with grey hover (on favourite)*/
.course-playlist-item td.favorite a.on_playlist { background-position:0px -23px; }

/*disabled lesson*/
.lesson.disabled td.favorite span,
				 td.favorite span.empty { opacity:0.3; filter:alpha(opacity=30); display:inline-block;width: 23px; height:23px; display:block; background-position:0px -46px;}
				 
.lesson.disabled td.favorite span.on_playlist {background-position:0px -23px;}
 
.lesson.disabled *:not(.button) {color:#aaa !important;}


.button.learn_more {
	margin:8px 0 0;
    min-width: 110px;
}

.package_info {margin-bottom:30px !important; max-width:400px !important;}
.package_info .price { margin-top:120px; }
.package_info ul {font-size:0.95em;}

span.see_more_txt {display: none; }

.course-playlist-item {
	color: #404040;
	font-size: 15px !important;
	text-align:left;
	padding:9px;
	line-height:26px;
}

/* _________________________________________________________ invoices table*/
.course-playlist-item .invoice-no 		{ text-wrap:suppress;}
.course-playlist-item .invoice-date 	{ }
.course-playlist-item .payment-item		{ }
.course-playlist-item .invoice-gross 	{ }
.course-playlist-item .invoice-download { text-align:right; }
	.invoice-download a { display:inline; }

/* ____________________________________________________ advertisements table*/
.advertisements-vouchers-table td,
.earnings-table td 						{ line-height:28px; }

.course-playlist-item .voucher-spinner 	{ width: 30px;}
.course-playlist-item .voucher-code 	{ width: 220px; }
.course-playlist-item .voucher-url 	{  }
.course-playlist-item .voucher-valid-from 	{ width: 130px; }
.course-playlist-item .voucher-valid-to		{ width: 130px; }
.course-playlist-item .voucher-date-created 	{ width: 130px; }
.course-playlist-item .voucher-tools { width: 80px; text-align:right; }

img.advertiser { width: 120px; }

/* _________________________________________________________ earnings table*/
.course-playlist-item .earnings-spinner { width: 30px;}
.course-playlist-item .earnings-id 	{ width:60px; }
.course-playlist-item .earnings-date  {}
	.xcourse-playlist-item .earnings-date div { display:block !important; }
.course-playlist-item .earnings-item 	{ width: 170px; }
.course-playlist-item .earnings-amount	{ width: 100px; }
.course-playlist-item .earnings-code 	{ width: 180px; }
.course-playlist-item .earnings-plan 	{ width: 180px; }
.course-playlist-item .earnings-earned 	{ width: 100px; }

.course-playlist-item:hover { color: #E6007E;  }


/* ______________________________________________________ time slots table*/
table.time-slots {
	width: 100%;
	border: 1px solid #eee;
}
	table.time-slots td,.time-slots th[scope="col"] { text-align: center; }
	table.time-slots .icheckbox_minimal-pink {float:none; top:3px; }
	table.time-slots .iCheck-helper {left:-50% !important; width: 200% !important; }
	table.time-slots td,.time-slots th {border-left:1px solid #eee; font-weight: normal;}
	table.time-slots td {cursor: pointer;}

/* ______________________________________________________ time slots div */
div.time-slots .row.checkbox div {padding:0;}
div.time-slots .row > div > label {padding:12px 0 !important;}



/* _________________________________________________________________________*/
/* 															VIMEO / DMCLOUD */

#main-video-container,
#how-it-works-container {
    position:relative;
    width: 100%;
    height: 0;
	padding:0;
    padding-bottom: 56.25%;
	overflow:hidden !important;
}
#main-video-container iframe,
#main-video-container object,
#how-it-works-container iframe,
#how-it-works-container object {position:absolute; width:100%; height:100%}

.finish-overlay {display:block; position:absolute; width:100%; height:100%; color:#fff; top:100%; padding:10px;
	filter:alpha(opacity=0); opacity:0; 
	background:#3f3f3f url('../images/finish-overlay-bg.jpg') center center no-repeat;
	background-size:contain;

	-webkit-transition: opacity 0.5s ease 0.5s;
	-moz-transition: opacity 0.5s ease 0.5s;
	-o-transition: opacity 0.5s ease 0.5s;
	transition: opacity 0.5s ease 0.5s;	
}

.finish-overlay.moveUp {
	 filter:alpha(opacity=100); opacity:1;
	 top:0;
}

.finish-overlay h3 {
	font-size:24px;
}

.finish-overlay a {
    display: table;
	width:100%; height:100%;
}
.finish-overlay table {
	width:100%;
	height:100%;
	background:none;
	border:none;
	margin:0;
}
.finish-overlay table tr,
.finish-overlay table td { background:none; padding:none; height:50%; padding:10px;}

.finish-overlay .finish-overlay-button {
	display:table-cell;
	vertical-align:middle;
	padding-left: 140px;
}

	.finish-overlay-button:hover h3 { color:#E6007E; }
	
	.finish-overlay-button.replay { background-image: url('../images/replay.png'); background-position: 10px center; background-repeat:no-repeat;}
	.finish-overlay-button.play-next { background-image: url('../images/play-next.png'); background-position: 10px center; background-repeat:no-repeat;}	
	
	.finish-overlay-button strong {font-size:16px;}

/* ------------------------------ */
/* 		   C O L O R S 			  */
/* ------------------------------ */

.gray { color:#808080 !important;}
.magenta-color,
.magenta-hover:hover { color: #E6007E !important; } 
.darkgrey-color { color:#3e3e3e !important;}

.magenta-bg { background-color: #E6007E !important; color: #fff !important; } 
.darkgrey-bg { background-color:#3f3f3f;}
.lightgrey-bg { background-color:#ececec;}
.darkgrey-bg  * { color: #fff;}
.darkgrey-bg  p { color: #dadada !important;}

/* MAGENTA BUTTONS DEFINITION */
.button.secondary:hover,
.button.secondary:focus,
.button.white:hover,
.button.white:focus,
.button
 { background-color: black; color: white !important; border-radius: 8px; height: 50px; line-height: 50px; padding: 0 1em;  }

.top-bar-menu a:hover,
.right-off-canvas-menu ul li a:hover,
.right-off-canvas-menu ul li a:focus,
table.course-playlist-item tr:hover td,
.trainer-thumb a:hover p strong { color: #E6007E;  }


/* GREY BUTTONS DEFINITION */
.button:hover,
.button:focus, 
.button.secondary {background-color: #3f3f3f;}

.button.secondary[disabled],
.button.secondary[disabled]:hover,
.button.secondary[disabled]:focus {background-color: #cdcdcd;}

/* WHITE BUTTONS DEFINITION */
.button.white { background-color: #fff; color:#404040 !important;}

.button.white:hover,
.button.white:focus {color: #fff !important; }

.button.small {padding:10px 10px; height:45px; font-size:20px; margin:4px 0; min-width:135px; width:100%; max-width:170px; letter-spacing:-1px; line-height:normal;}
.button.tiny {padding:4px 16px; font-size:15px;}
.button.long { max-width:250px;}

a.button.small {overflow: visible;}

.img-thumbnail {margin-bottom:20px;}

.button.more { margin-top:10px; } 

.button.loadmore {
	width:100%;
	max-width:none;
	background-color:#fff;
	color:#404040 !important;
	margin-bottom: 20px;
	-webkit-box-shadow: 0px 1px 0px 0px rgba(219, 219, 219, 1);
	-moz-box-shadow:    0px 1px 0px 0px rgba(219, 219, 219, 1);
	-o-box-shadow:    	0px 1px 0px 0px rgba(219, 219, 219, 1);
	box-shadow:         0px 1px 0px 0px rgba(219, 219, 219, 1);
}

/* _________________________________________________________________________*/
/* 																 TOP HEADER */
.top-header:not(ul) { 
	padding-top:80px;
	margin-bottom:40px;
	overflow:hidden;
}

.top-header-content { height:300px; }

.top-header-content > div {
    position: absolute;
    top: 20px;
	padding-right:50px;
	left:0;
}
.top-header h1 {
  font-size:57px;
  text-align:left;
  line-height:63px;
  text-transform:uppercase;
  margin-bottom:23px;
  letter-spacing:5px;
  color:#fff;
}

.top-header .quote:before,
.top-header .quote:after {content: '"';}
.top-header .quote {font-style:italic; color:#fff; line-height:20px; margin-bottom:20px; font-size:16px;}

.top-header .show-courses { text-align:right;}

.site-header {
	margin-bottom:15px;
	overflow:hidden;
}


.form-control {
	padding-left:35px !important;
	background-color: #404040 !important;
	height:28px !important;
	border:none !important;
	color: #f5f5f5 !important;
	margin-bottom: 0 !important;
	padding-top:0px !important;
	padding-bottom:0px !important;
	 
	border-radius:25px !important; -moz-border-radius:25px !important; -webkit-border-radius:25px !important; -o-border-radius:25px !important;
	border:none ;
	
	box-shadow:0 1px 0 2px rgba(0, 0, 0, 0.1) inset !important;
	-webkit-box-shadow:0 1px 0 2px rgba(0, 0, 0, 0.1) inset !important;
	-moz-box-shadow:0 1px 0 2px rgba(0, 0, 0, 0.1) inset !important;
	-o-box-shadow:0 1px 0 2px rgba(0, 0, 0, 0.1) inset !important;
}
	.form-control-icon {
		display:block;
		width:26px !important;
		height: 26px !important;
		background:transparent url('../images/search-icon.png') center center no-repeat;
		padding:0 !important;
		position:absolute;
		left: 20px;
		top:10px;
		z-index:1010;
	}

/* _________________________________________________________________________*/
/* 																	  ICONS */
.heart-icon {
	background-image: url('../images/heart_icon.png');
	background-repeat:no-repeat;
	background-position:center 0px;
	display:inline-block;
	width:16px; height:14px;
	vertical-align:middle;
	opacity:0.75;
	background-size: 85% auto;
}
.heart-icon-white { background-position:bottom center; }

.eye-icon {
	background-image: url('../images/eye-icon.png');
	background-repeat:no-repeat;
	background-position:center -1px;
	display:inline-block;
	width:16px; height:16px;
	vertical-align:middle;
	opacity:0.6;
}

.group-icon {
	background-image: url('../images/group-icon.png');
	background-repeat:no-repeat;
	background-position:center -1px;
	display:inline-block;
	width:16px; height:16px;
	vertical-align:middle;
	opacity:0.6;
}

.tool-icon {
	background-repeat:no-repeat;
	background-image: url('../images/tool-icons-elegant.png');
	display:inline-block;
	width:16px; height:16px;
	vertical-align:middle;
}

	.edit-icon { 	background-position:0px 0px; } .edit-icon:hover { 	background-position:0px -16px; }
	.delete-icon { 	background-position:-16px 0px; } .delete-icon:hover { 	background-position:-16px -16px; }

.info-icon { height:36px; background:url('../images/info.png') top center no-repeat;}
.marker-icon { height:32px; background:url('../images/location-marker-pink.png') center center no-repeat;}

/* .playing-icon {
	display:inline-block;
	position:absolute;
	top:15px;
	left:30px;
	width:16px;
	height:12px;
	background:transparent url('../images/playing_icon.png') center center no-repeat;
} */

.autoplay-icon {
	background-repeat:no-repeat;
	background-image: url('../images/autoplay-icon.png');
	display:inline-block;
	width:24px; height:24px;
	vertical-align:middle;
	margin-right: 10px;
}

.loop-icon {
	background-repeat:no-repeat;
	background-image: url('../images/loop-icon-24.png');
	display:inline-block;
	width:24px; height:24px;
	vertical-align:middle;
	margin-right: 10px;
}

/* _________________________________________________________________________*/
/* 																	 SOCIAL */
ul.social { margin-left: 0; margin-bottom:0; line-height:1em;}
ul.social li {
	display:inline-block;
}
ul.social li:not(:first-child) {
	margin-left:8px;
}
ul.social li a {
	display:block;
	width:27px;
	height:27px;
}
ul.social li a { background-image:url('../images/social_icons.png'); background-repeat:no-repeat; }

ul.social li a.facebook:hover { background-position: 0 -27px;}
ul.social li a.facebook { background-position: 0 -54px; }
ul.social li a.twitter:hover { background-position: -27px -27px;}
ul.social li a.twitter { background-position: -27px -54px; }
ul.social li a.linkedin:hover { background-position: -81px -27px;}
ul.social li a.linkedin { background-position: -81px -54px; }
ul.social li a.googleplus:hover { background-position: -54px -27px;}
ul.social li a.googleplus { background-position: -54px -54px; }
ul.social li a.instagram:hover { background-position: -108px -27px;}
ul.social li a.instagram { background-position: -108px -54px; }

ul.social li a.website:hover { background-position: -162px -27px;}
ul.social li a.website { background-position: -162px -54px; }
ul.social li a.email:hover { background-position: -135px -27px;}
ul.social li a.email { background-position: -135px -54px; }

ul.social.white li a.facebook { background-position: 0 0;}
ul.social.white li a.facebook:hover { background-position: 0 -27px; }
ul.social.white li a.twitter { background-position: -27px 0;}
ul.social.white li a.twitter:hover { background-position: -27px -27px; }
ul.social.white li a.linkedin { background-position: -81px 0;}
ul.social.white li a.linkedin:hover { background-position: -81px -27px; }
ul.social.white li a.googleplus { background-position: -54px 0;}
ul.social.white li a.googleplus:hover { background-position: -54px -27px; }
ul.social.white li a.instagram { background-position: -108px 0;}
ul.social.white li a.instagram:hover { background-position: -108px -27px; }

ul.social.white li a.website { background-position: -162px 0;}
ul.social.white li a.website:hover { background-position: -162px -27px; }
ul.social.white li a.email { background-position: -135px 0;}
ul.social.white li a.email:hover { background-position: -135px -27px; }

ul.social.light li a.facebook { background-position: 0 -54px; }
ul.social.light li a.twitter { background-position: -27px -54px; }
ul.social.light li a.linkedin { background-position: -81px -54px; }
ul.social.light li a.googleplus { background-position: -54px -54px; }
ul.social.light li a.instagram { background-position: -108px -54px; }
ul.social.light li a.website { background-position: -162px -54px; }
ul.social.light li a.email { background-position: -135px -54px; }
ul.social.light li a {opacity:0.25;}
ul.social.light li a:hover {opacity:0.5;}
/* _________________________________________________________________________*/
/* 																	SORTING */
ul.library-sort-links {
	text-align:center;
}
	.library-sort-links a {display:block; margin:0 12px;}
	.library-sort-links a.selected { font-family:ProximaNovaSoft-Medium !important; color:#404040 !important;}

span.xsort-sign {display:inline-block; width:0px; height:0px; margin-left:5px;
							border-left: 4px solid transparent;
							border-right: 4px solid transparent; position:relative;}
	span.xsort-sign.asc { 	border-top: none; border-bottom: 8px solid; bottom:1px;}
	span.xsort-sign.desc { 	border-top: 8px solid; border-bottom: none;}
	
span.sort-sign {display:inline-block; width:10px; height:10px; margin-left:6px;
	position:relative; background-image:url('../images/sorting_arrows_simple@2x.png'); background-repeat:no-repeat;
	-webkit-background-size: 20px 20px;
    background-size: 20px 20px;
}
	span.sort-sign.asc { 	background-position: 0px 0px;}
	span.sort-sign.desc { 	background-position: 0px -10px;}
	

/* _________________________________________________________________________*/
/* 														FITNESSSCHOOL MODAL */

.ftv_modal {
	background: none !important;
	border:none !important;
	width:330px !important;
	padding:0 !important;
	box-shadow:none !important;
	-moz-box-shadow:none !important;
	-webkit-box-shadow:none !important;
	-o-box-shadow:none !important;
	-k-box-shadow:none !important;
	-ms-box-shadow:none !important;
	left:0; right:0px !important;
	margin:0 auto !important;
}

	
	.ftv_modal .title_bar > div { line-height: 50px;}
	.ftv_modal a:not(.button) { font-size:15px; }

	.ftv_modal h1,.ftv_modal p {color:#fff;}

	.ftv_modal input[type="text"],
	.ftv_modal input[type="password"] {
		background-color:#fff;
		margin:7px 0;
		padding:4px;
		font-size:18px;
	}
	
	.ftv_modal .button {
		margin-top: 30px;
		margin-left: 0 !important;
		width: 135px;
		
	}
	
	.ftv_modal .facebook {
		background-color:#4A629E;
		width: inherit;
		max-width:none;
	}
	.ftv_modal .facebook:hover {background-color: #4A5D90;}
	
	.ftv_modal label { display:inline-block; *display: inline; color:#fff; font-size:15px; max-width:120px;}
	
	.ftv_modal input[type="text"],
    .ftv_modal input[type="password"] {
		background-color: #FFFFFF;
		border: medium none;
		box-shadow: none;
		font-size: 15px;
		height: 45px;
		margin: 9px 0;
		padding-left: 14px;
	}
	
	.ftv_modal .close-reveal-modal {
		font-weight:normal;
		line-height:normal;
		position:relative;
		right:0; top:0;
		
	}
	.ftv_modal .close-reveal-modal:not(.white) {color:#fff;}
	
	.reveal-modal-bg { background-color:rgba(65, 65, 65, 0.95);}

input + .errorMessage,
select + .errorMessage,
div + .errorMessage {
	background-color: #e6007e;
    color: #fff;
    font-size: 0.8em;
    padding: 8px 16px;
	margin-bottom:15px;

}
.error label { color: #E6007E; }


.error > input[type="text"],
.error > input[type="password"] { border: 1px solid #E6007E !important;}


.ftv_modal ::-webkit-input-placeholder {
   color: #222;
   vertical-align:middle;
}

.ftv_modal :-moz-placeholder { /* Firefox 18- */
   color: #222;
}

.ftv_modal ::-moz-placeholder {  /* Firefox 19+ */
   color: #222;
}

.ftv_modal :-ms-input-placeholder {  
   color: #222;
}




/* _________________________________________________________________________*/
/* 											   				   AJAX SPINNER */
.central-position {
	display:block;
	position:absolute;
	top:50%;
	text-align:center;
	width:100%;
}

.ajax-spinner,.ajax-spinner-center {
	display:inline-block;
	width:16px;
	min-height:16px;
	background:transparent url('../images/ajax-spinner.gif') center center no-repeat;
	margin-right:5px;
	opacity:0.6;
	vertical-align:middle;
}

.ajax-spinner-center {
	position:absolute;
	top:50%; left:50%;
}

.spinner-magenta-bg { background:transparent url('../images/ajax-spinner-magenta-64.png') center center no-repeat !important; }

.spinner-overlay {position:absolute;
	background-color:#3f3f3f;
	background:#3f3f3f url('../images/ajax-spinner-magenta-64.png') center 60px no-repeat !important;
	width:100%; height:100%; top:0px;
}

#PaymentForm_ajaxSpinner {margin-top:4%;}

.spinner-background {
	background: transparent url('../images/ajax-spinner.gif') center center no-repeat !important;
}


/* _________________________________________________________________________*/
/* 											   		  COOKIE WARNING BANNER */
#cookie-warning {
	position:fixed;
	left:0;
	bottom:0;
	display:block;
	width:100%;
	background-color:#404040;
	color:#ccc;
	font-size:15px;
	padding:20px 10px;
	z-index:100;
}

.fstv-anchor {
	display: block;
    position: relative;
    top: 800px;
    visibility: hidden;
}

/* HiDPI support */
@media (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
    
	div#logo {
		background-image:url('../images/logo@2x.png');
		 -webkit-background-size: 31px 30px;
        background-size: 31px 30px;
	}
	
	.top-bar.dark #logo {
		background-image:url('../images/logo_fitness@2x.png');
		 -webkit-background-size: 31px 30px;
        background-size: 31px 30px;
	}
	
	.top-bar a.menu_icon {
		background-image:url('../images/menu_icon@2x.png');
		 -webkit-background-size: 20px 20px;
        background-size: 20px 20px;
	}
	.top-bar.dark a.menu_icon {
		background-image:url('../images/menu_icon_dark@2x.png');
		 -webkit-background-size: 21px 21px;
        background-size: 21px 21px;	
	}
	
	.heart-icon {
		background-image: url('../images/heart_icon@2x.png');
		-webkit-background-size: 16px 16px;
        background-size: 16px 16px;
	}
	
	.eye-icon {
		background-image: url('../images/eye-icon@2x.png');
		-webkit-background-size: 16px 16px;
        background-size: 16px 16px;
	}
	.group-icon {
		background-image: url('../images/group-icon@2x.png');
		-webkit-background-size: 16px 16px;
        background-size: 16px 16px;
	}
	
	.autoplay-icon {
		background-image: url('../images/autoplay-icon@2x.png');
		-webkit-background-size: 24px 24px;
        background-size: 24px 24px;
	}

	.loop-icon {
		background-image: url('../images/loop-icon-24@2x.png');
		-webkit-background-size: 24px 24px;
        background-size: 24px 24px;
	}

	ul.social li a {
        background-image: url('../images/social_icons@2x.png');
        -webkit-background-size: 189px 108px;
        background-size: 189px 108px;
    }
	
	
	table.course-playlist-item td.favorite a,
	.lesson.disabled td.favorite span {
		background-image:url('../images/stars@2x.png');
		-webkit-background-size: 23px 92px;
        background-size: 23px 92px;
	}
	
	.tick {	background-image: url('../images/checkbox-ticks@2x.png'); -webkit-background-size: 96px 32px; background-size: 96px 32px;}
	.cross { background-image: url('../images/magenta-cross@2x.png'); -webkit-background-size: 32px 32px; background-size: 32px 32px;}
	li.pricing-feature,
	input.accepted {background-image:url("../images/checkbox-tick@2x.png"); -webkit-background-size: 32px 32px; background-size: 32px 32px;}
	
	table.course-playlist-item td.play a,
	.lesson.disabled td.play span {
		background-image:url('../images/play-buttons@2x.png');
		-webkit-background-size: 56px 84px;
        background-size: 56px 84px;
	}
	.info-icon {
		background-image:url('../images/info@2x.png');
		-webkit-background-size: 29px 29px;
        background-size: 29px 29px;
	}
	
	.marker-icon {
		background-image:url('../images/location-marker-pink@2x.png');
		-webkit-background-size: 32px 32px;
        background-size: 32px 32px;
	}

	.finish-overlay-button.replay { background-image: url('../images/replay@2x.png'); background-size:100px 100px;}
	.finish-overlay-button.play-next { background-image: url('../images/play-next@2x.png'); background-size:100px 100px;}
}

/* CUSTOMIZE MEDIA */

/* min-width 1025px, large screens */
@media only screen and (min-width: 64.063em) { 
	
	.nopadding-for-large { padding-left: 0; padding-right:0; }
	.lpad-40-for-large {  padding-left:40px; }
	.lpad-0-for-large { padding-left:0;}
	.rpad-0-for-large { padding-right:0;}
	
	.rmarg-0-for-large { margin-right:0px !important; }
	
	.lpad-0-first-for-large > div:first-child 	{ left:-9px; /*padding-left:0;*/ }
	.rpad-0-last-for-large > div:last-child 	{ left:9px;  /*padding-right:0;*/ }
	
	.lpad-0-firstof-3-for-large > div:nth-child(3n+1) 	{ left:-9px; }
	.rpad-0-lastof-3-for-large > div:nth-child(3n+0)	{ left:9px;  }
	
	
	.pricing-square.aligned .noradios.with-info	{ padding-top:95px !important; }
	
	.trainer-thumb-small.large-block-grid-3 li .separator { border-bottom:none; }
	
} 


/* MEDIUM screens */
/* min-width 641px */
/* MEDIUM UP*/
@media only screen and (min-width: 40.063em) {
	
	h3.before_list {text-align:left;}
	.trainer-thumb .portrait { padding:0;}
	.trainer-thumb:not(.trainer-thumb-small) .description { height:212px; margin-bottom:8px; overflow:hidden; }
	
	.pricing-square.aligned 					{ min-height:570px; }
	.pricing-square.aligned .pricing-features 	{ min-height:253px; }
	
	.lpad-0-medium-up { padding-left:0;}
	.rpad-0-medium-up { padding-right:0; }
	
	.lpad-10-medium-up { padding-left:10px;}
	.rpad-10-medium-up { padding-right:10px; }
	
	.rmarg-20-medium-up { margin-right:20px !important; }
	
	.finish-overlay-button div {display:block !important;}
	
	.trainer-thumb:not(.trainer-thumb-small).medium-block-grid-2 li:last-child .separator,
	.trainer-thumb:not(.trainer-thumb-small).medium-block-grid-3 li:last-child .separator,
	.trainer-thumb:not(.trainer-thumb-small).medium-block-grid-2 li:nth-last-child(2) .separator,
	.trainer-thumb:not(.trainer-thumb-small).medium-block-grid-3 li:nth-last-child(2) .separator,
	.trainer-thumb:not(.trainer-thumb-small).medium-block-grid-3 li:nth-last-child(3) .separator {
		border-bottom:none;
	}
	.trainer-thumb-small.large-block-grid-3 li:last-child .separator { border-bottom:none; }

	.lmarg-20-medium-up { margin-left:20px !important;}
} 

/* MEDIUM ONLY */
/* min-width 641px and max-width 1024px, use when QAing tablet-only issues */
@media only screen and (min-width: 40.063em) and (max-width: 64em) { 

	ul.medium-block-grid-2:not(.trainer-thumb) { max-width:678px; margin:0 auto;}
	
	.medium-4.columns .pricing-square {
		margin-left: 5px;
    	margin-right: 5px;
	}
	.medium-4.columns .pricing-price { font-size:60px; }
	.medium-4.columns .pricing-square > div:first-child { min-height: 180px; }
	.medium-4.columns .pricing-square.aligned { min-height: 497px; }
	.medium-4.columns .pricing-square.aligned .pricing-features { min-height: 253px;}
	
	.medium-4.columns li.pricing-feature { font-size: 1em !important; }
	
	.package_info { margin-left:auto !important; margin-right:auto !important; }

	.substitute-course-types-ticks .sctt-section:first-child .row.checkbox:last-child {
		border-bottom:none;
		margin-bottom:0 !important;
	}
} 


/* MOBILE ONLY */
/* max-width 640px, mobile-only styles, use when QAing mobile issues */
@media only screen and (max-width: 40.063em) {

	.tmarg-20-for-small { margin-top:20px !important;}
	.bmarg-20-for-small { margin-bottom:20px;}
	.bmarg-0-for-small { margin-bottom:0px !important;}
	.lmarg-10-for-small { margin-left:10px;}
	.rpad-0-for-small { padding-right:0;}
	.lpad-0-for-small { padding-left:0;}
	.nopadding-for-small { padding: 0; }
	
	.grey-for-small {color:#808080; }
	
	.top-header.hide-for-small + div {margin-top:65px; }

	.ftv_modal { width: auto !important; max-width: 330px; }
	
	table.course-playlist-item td.favorite { padding:10px;}

	a.website-link:before {margin-bottom: 2px; }
	
	.row.checkbox.compact-for-small {
		margin-bottom:0px !important;
		border-bottom: 0;
	}
	
	.top-header:not(ul) { height: 250px; }
	ul.trainer-orbit, .top-header-content, ul.trainer-orbit li[data-orbit-slide] { height: 200px; }
	
	.top-header-content {
		background-size: auto 200px !important; background-position:left top;
		/*
		-moz-box-shadow: inset 0px 0px 47px 3px #4A4A49;
		-webkit-box-shadow: inset 0px 0px 47px 3px #4A4A49;
		box-shadow: inset 0px 0px 277px 3px #4A4A49;
		*/
	}
	
	.top-header h1 {text-align:center; display:none; text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8); }
	
	.top-header .show-courses { text-align:center;}
	
	.top-header-content > div { padding-right:0; }
	 
	 
	.top-header h1 {
		font-size:30px; line-height:40px;
	}
	
	.on-image-top h1 {
		font-size:30px;
	}
	
	.top-bar-wrapper {
		margin:	0;
		padding: 8px 0;
	}
	
	.top-bar #logo { height:45px;}
	
	.top-bar-menu .login { margin-right:30px; }
	.top-bar-menu .login a { padding-top:2px;}
	
	.top-bar a.menu_icon {
		width: 50px !important;
		background-position: center center;
	}
	
	
	h1.small-centered {text-align:center;}

	.thumb_container { 	margin:0 auto; }
	
	.thumb_tools,
	.thumb_infobar {
		opacity:1;
	}

	table.course-playlist-item td,
		.course-playlist-item
		{
			font-size: 15px;
			padding:12px 6px;
		}
	
	.finish-overlay table td { padding: 0 !important;}
	.finish-overlay h3 {font-size:20px;}
	.finish-overlay .finish-overlay-button {padding-left: 80px; }
	.finish-overlay-button.replay { background-image: url('../images/replay-small.png'); }
	.finish-overlay-button.play-next { background-image: url('../images/play-next-small.png'); }
	.finish-overlay table td
	
	.trainer-thumb .portrait { padding-right:0;}

	.package_info { margin-left:auto !important; margin-right:auto !important; }
	
	.button.learn_more { margin:0 0 20px 0;}
	
	.button.small {max-width:none;}
	
	footer ul.social {margin-top:15px !important; margin-bottom:10px !important;}
	footer {
		border-top:none;
	}
	
	table.time-slots td,.time-slots th { padding: 0px 4px !important; font-size: 0.75rem; }
	table.time-slots .iCheck-helper { left:0 !important; top:0px !important; height: 100% !important; width: 100% !important; }

	.substitute-course-types-ticks .sctt-section .row.checkbox:last-child {
		border-bottom:none;
		margin-bottom:0px !important;
	}
	.substitute-course-types-ticks > div:last-child .sctt-section:last-child .row.checkbox:last-child {
		border-bottom:1px solid #eee;
		margin-bottom:30px !important;
	}
	.v-checkboxes .v-checkboxes-col:not(:last-child) .row.checkbox {
		border-bottom:none;
		margin-bottom: 0px !important;
	}
	
	.g-recaptcha {
		transform:scale(0.85);
		-webkit-transform:scale(0.85);
		transform-origin:0 0;
		-webkit-transform-origin:0 0;
	}
} 

/* small hi-res */
@media only screen and (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) and (max-width: 40em) {

	.finish-overlay-button.replay { background-image: url('../images/replay.png'); background-size:50px 50px;}
	.finish-overlay-button.play-next { background-image: url('../images/play-next.png'); background-size:50px 50px;}
}

/* MOBILE PORTRAIT */
@media only screen and (max-width: 40em) and (orientation: portrait) {
	table.time-slots td,.time-slots th { padding: 0px 1px !important; }
}
/* MOBILE LANDSCAPE */
@media only screen and (max-width: 40em) and (orientation: landscape) {
	footer {padding: 0 !important; }
}

@media only screen and (min-width: 35em) and (max-width: 40em) and (orientation: landscape) {
	
	.compare-table {display:block !important;}
	.compare-table-substitute { display:none !important;}
}
