
/* 0. Module Common */
body{ overflow: hidden; }
.container-fluid.scroll{ padding:0; }
.content.noscroll{ overflow: hidden; overflow-y: auto!important; top: 86px; }
/* 1. Banner Section */
.viewer--banner_bg{ width: 100%; background-size: cover; min-height: 41.6rem; display: none; }
.min-width-1000{ min-width: 1000px!important; }
.mobile-footer-charm-bar{ display: none; }
.min-width-600{ min-width: 600px!important; }
.min-width-800{ min-width: 800px!important; }
.min-width-1000{ min-width: 1000px!important; }

/* Page Header Block */
.dcp-page-header{ display:flex; flex-direction: row; flex-wrap: nowrap; height:8rem; line-height:8rem; background-color: #fff; border:0;-webkit-box-shadow: 0 0.125rem 1.2rem 0 rgba(0,0,0,0.08);
box-shadow: 0 0.125rem 1.2rem 0 rgba(0,0,0,0.08); }
.dcp-page-header .back-to-icon{ width: 10rem; text-align: center; }
.dcp-page-header .back-to-icon a{ display:none; }
.dcp-page-header .page-title{ font-size: 2.2rem; color: #303030; flex-grow: 1; text-align: center; /*margin-left: -10rem;*/ }
.page-control-actions { width: 15rem; display:flex; justify-content:flex-end; align-items:center; }
body #page-container .to-top{ z-index:1300!important; }
body.createnew--activated.createnew--activated_preview #page-container .to-top{ z-index:500!important; }
body.createnew--activated:not(.createnew--activated_preview) #page-container .to-top{ z-index:1300!important; }

/* SWAL 2 Popup */
.swal2-print-popup{ width:35em!important; }
.swal2-print-popup .swal2-content p{ margin-bottom:3rem; }
.swal2-print-popup .swal2-content{ margin-bottom:3rem; }

/* 2. Header Bar */
.viewer--header_bar{ 
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;

	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;

	-webkit-justify-content: space-between;
    justify-content: space-between;

    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

    border-bottom: 1px solid #ccc;
    padding: 0px 0 20px 0px;

}
.viewer--program_title{ 	
	font-size: 1.8rem; 
	line-height: 3rem;
	font-weight: 500; 
	color: #303030; 
	text-align: left; 	
	margin-left: 30px;
}
.page-control-actions #btn-save_edit{ margin-right: 1rem; }
.page-control-actions #btn-edit{ margin-right: 1rem; }
.page-control-actions #btn-share{ margin-right: 1rem; }
.page-control-actions #btn-save{ margin-left:1rem; }
@media( max-width: 428px ) {
	.viewer--program_title{ margin-left: 0; font-size: 1.6rem; line-height: 2rem; }
	.back-to-icon{ display: none!important; }
	.page-control-actions{ width: 100%; flex-grow: 1; text-align: right; }
	.page-control-actions #btn-share{ margin-right: 1rem; }
	.dcp-page-header{ padding-right: 1rem; padding-left: 1rem; flex-direction:column; height:11rem; }
	.dcp-page-header .page-title{ margin-left: 0rem; line-height: 2rem; display: flex; align-items: center; font-size: 1.6rem; max-width: 100%; justify-content:center; }	
}
/* 3. Alternate Share Context Menu */
.page-control-actions .alt-share-options{ display: flex; flex-direction: column; position: absolute; top: 6rem; right:10rem; background-color: #fff; border: 1px solid #ccc; border-radius: 1rem; width: 12rem; padding: 1rem; z-index:500; }
.page-control-actions .alt-share-options.closed{ display:none; }
.page-control-actions .alt-share_item{ display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; height: 4rem; cursor:pointer; }
.viewer--meta_data{ 
	font-size: 1.4rem;
	color: #303030;
	line-height: 3rem;
}

@media( max-width: 768px ) {
	.viewer--meta_data{ display: none; }
}

.is-clickable{ cursor: pointer; color: #606060; }
.is-clickable:hover{ color: #303030; }

.sticky{ position: fixed; top: 64px; width: 99vw; background-color: #fff; z-index: 10; padding-bottom: 0; }
.sticky + .content { padding-top: 102px; }
@media( max-width: 1024px ) {
	/*.sticky{ height: 7rem; padding-left: 2rem; padding-right: 0.5rem; }*/
	.sticky{ padding-left: 0; padding-right: 0; width:100%; }
}

/* 3. Exercise program display */
.viewer--exercise_container{  
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;

	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;
	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;	

	-ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

	-webkit-justify-content: center;
    justify-content: center;

    padding-bottom:30vh;
    padding-top: 18rem;
}
@media( max-width: 1024px ) {
	.viewer--exercise_container{ padding-top: 7rem; padding-left: 2rem; padding-right: 2rem; }
}

.viewer--exercise_item{ 
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;

	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;

	-ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;

	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;	

	margin-top: 5rem;
	margin-bottom: 8rem;

	width: 70vw; 
}
@media( max-width: 1024px ) {
	.viewer--exercise_item{ 		
		-ms-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;		

		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;

		margin-top: 5rem;
		margin-bottom: 8rem;

		width: 70vw; 
	}	
}
.viewer-item--exercise_title{ 
	width: 100%; 
	color: #606060; 
	font-size: 1.6rem; 
	text-align: left; 
	margin-bottom: 3rem;
}
.viewer-item--exercise_video_player{ 
	width: 64rem; 
	height: 36rem; 
	border: 1px solid #eee; 
	position: relative;
	cursor: pointer;
}
.viewer-item--exercise_video_player video{ 
	width: 64rem; 
	height: 36rem; 	
}
@media( max-width: 428px ) {
	.viewer-item--exercise_video_player{ width: 100%; height: 21rem; background-size: cover; }
	.viewer-item--exercise_video_player video{ width: 100%; height: 21rem; }
}
.viewer-item--exercise_meta_data{ 
	width: calc( 100% - 68rem);
	margin-left: 4rem;
}
@media( max-width: 1024px) {
	.viewer-item--exercise_meta_data{
		width: 100%; margin-left: 0; margin-top: 2rem;
	}
}
.viewer-item--label{
	font-size: 1.6rem;
	color: #606060;
	font-weight: 500;
	margin-bottom: 1.5rem;
}
.viewer-item--text{
	font-size: 1.4rem;
	color: #303030;
	font-weight: 400;
	margin-bottom:5rem; 
}

.param-set {
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 25px;
    position: relative;
    width: 15.0rem;
}
@media( max-width: 428px ) {
	.param-set { width: 9rem; margin-right: 10px; margin-bottom: 15px; }
}

.param-set label{ width: 100%; font-size: 1.4rem; font-weight: 500; color: #303030; }

.input-width-100 {
    width: 110px !important;
    text-align: center;
    display: inline-block;
}
@media( max-width: 428px ) {
	.input-width-100{ width: 85px!important; text-align: left; }
}

.form-control {
    border: 1px solid #d3d8de;
    box-shadow: none;
    font-size: 1.4rem;
    line-height: 1.4rem;
    height: 3.4rem;
    padding: 0.6rem 1.2rem;
    padding-right: 1.2rem;
}

span.parameter-suffix {    
    position: absolute;
    top: 3.0rem;
    right: 4.5rem;
    color: #606060;
}
@media( max-width: 428px ) {
	span.parameter-suffix { right: 1rem; }
}
i.toggle-unit{ position: absolute; top: 0rem; left: 9rem; color: #065fd4 ; }

.video-play-button{ position: absolute; top:30%; left: 40%; text-align: center; background-color: rgba(0,0,0); cursor: pointer; border-radius: 5rem; width: 10rem; height: 10rem; font-size: 4rem; color: rgba(255,255,255); opacity: 0.75; transition: opacity 0.5s; }
.video-play-button i{ position: absolute; top: 30px; left: 35px; }
.viewer-item--exercise_video_player:hover .video-play-button{ opacity: 1; }
@media( max-width: 428px ) {
	.video-play-button{ width: 7rem; height: 7rem; }
	.video-play-button i{ top: 16px; left: 22px; }
}

/* Filmstrip */
.viewer--filmstrip_container{
	width: 100%;
	margin-top: 0px;
}
@media( max-width: 1024px ) {
	.viewer--filmstrip_container{ display: none; }
}
.workout-preview__filmstrip {
    background-color: #eee;
    height: 120px;
    max-height: 120px;
    width: 100%;
    position: relative;
    padding: 5px 75px;
    overflow: hidden;
}

ul.workout-preview__thumbs{ 
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;

	-ms-flex-direction: row;
	-webkit-flex-direction: row;
	flex-direction: row;

	-ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;

	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;	

	-webkit-justify-content: flex-start;
    justify-content: flex-start;

	list-style: none; 
	padding: 0; 
	margin: 0;
	height: 100%;

	overflow: hidden;
}

ul.workout-preview__thumbs li{ 
	width: 9.2rem; 
	min-width: 9.2rem;
	height: 10.1rem; 
	margin-right: 1.5rem; 
	cursor: pointer;
	border: 1px solid #606060;
}

ul.workout-preview__thumbs li > img{ border: none; vertical-align: middle; }

@media (max-width: 1440px) { 
	.viewer--exercise_item{ width: 100%; padding: 0 3rem; }
}
@media( max-width: 428px ) {
	.viewer--exercise_item{ padding: 0; }
}

.left-arrow, .right-arrow{ font-size: 4.6rem; position: absolute; top: 10px; line-height: 101px; width: 45px; text-align: center; cursor: pointer; display: none; }
.left-arrow{ left: 0px; }
.right-arrow{ right: 16px; }
.show-arrow{ display: block; }

.share-drop-down{ display: none; position: absolute; z-index: 6000; background-color: #fff; padding: 1.5rem; right: 0; border-radius: 1.5rem; -webkit-box-shadow: 0 0.125rem 1.2rem 0 rgba(0,0,0,0.08);
box-shadow: 0 0.125rem 1.2rem 0 rgba(0,0,0,0.08); }
.share-drop-down.active{ display: block; }
.share-drop-down ul.default--share_list_social{ list-style: none; padding: 0; margin: 0; }
.share-drop-down ul.default--share_list_social li{ float: left; font-size: 2rem; padding: 0 1.2rem; cursor: pointer; }

#compact-link{ display: none; }
#full-link{ display: inline-block; }
@media( max-width: 1160px ) {
	#compact-link{ display: inline-block; }
	#full-link{ display: none; }
}
@media( max-width: 960px ) {
	#compact-link{ display: none; }
	#full-link{ display: none; }
}

.page-control-actions .btn-header { border: 1px solid #ccc; border-radius: 5px; color: #303030; cursor: pointer; }

/** SHARE & PRINT DIALOG **/
.modal-dialog .modal-header h4{ font-size: 1.8rem; }
.modal-dialog .modal-header button.close{ font-size:2.8rem; }
.modal-dialog .sendemail--wrapper{ font-size:1.4rem; padding:3rem; }
.modal-dialog .sendemail--wrapper .sendemail--recipients{ display:flex; flex-direction: column; justify-content: flex-start; margin-top:5rem; }
.modal-dialog .sendemail--wrapper .sendemail--recipients .recipients--label{ }
.modal-dialog .sendemail--wrapper .sendemail--recipients .recipients--field{ width:100%; }
.modal-dialog .sendemail--wrapper .sendemail--recipients .recipients--field textarea{ width:100%; min-height: 15rem; border: 1px solid #ccc; padding:1rem; }
.modal-dialog .sendemail--wrapper .sendemail--recipients .recipients--note{ font-size: 1.4rem; }
.modal-dialog .sendemail--preview_wrapper{ padding:3rem 0; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body{ font-size:1.4rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--subject{ display:flex; flex-direction: row; flex-wrap: nowrap; justify-content:flex-start; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--subject .subject--label{ padding-right: 1rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--subject .subject--field{ width:100%; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--subject input{ width:100%; border:1px solid #ccc; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message{ display:flex; flex-direction: column; justify-content: flex-start; margin-top: 3rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--label{  }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--field{ width:100%; border:1px solid #ccc; padding:1rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--field textarea{ width:100%; min-height: 10rem; border: none; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--field .sendemail--static_message{ font-size:1.4rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--field .sendemail--static_message .sendemail--exercises_link{ margin-top:0.5rem; }
.modal-dialog .sendemail--preview_wrapper .sendemail--preview_body .sendemail--message .message--field .sendemail--static_message .sendemail--disclaimer{ font-size:1.2rem; }
.modal-dialog .modal-footer a{ font-size:1.6rem; }
.modal-dialog .modal-footer a.btn-white{ border:1px solid #ccc; }

@media (max-width: 428px ) {
	.modal-dialog.min-width-1000{ width: 98%; min-width: 98%!important; }
	.modal-dialog .sendemail--wrapper{ padding:0; margin-top:2rem; }
	.modal-dialog .sendemail--wrapper .sendemail--recipients{ margin-top:3rem; }
	.modal-dialog .sendemail--wrapper .sendemail--recipients .recipients--field textarea{ min-height: 9rem; }
}

.orthPlg--containerHdr{ z-index:1022!important; }
.orthPlg--containerPane{ z-index:1021!important; }
.createnew--activated .sticky{ top:113px!important; }

#signin-modal .modal-body{ margin: 0 auto; }
#signin-modal .modal-header{ justify-content:flex-start;border-bottom:none; }
#signin-modal .modal-header .close{ font-size: 3rem; }
#signin-modal.modal .modal-content{ padding:2rem; }
#signin-modal .modal-header{ justify-content:space-between; margin: 0 auto; width: 100%; border-bottom:none; }
#signin-modal .modal-header .login--logo_wrapper{ margin-left:auto; }
#signin-modal .modal-header button.close{ margin-left:auto; }

.login--form_wrapper{ border:1px solid #ccc; padding: 4rem; background-color: #fff; width: 600px; }
.login--form_wrapper h1{ font-size: 2.25rem; margin-top: 0rem; color: #303030; margin-bottom: 3rem; }
.login_form--field_wrapper{ position: relative; margin-bottom: 3rem; }
.login_form--field_wrapper.flex-wrapper{ display: flex; flex-direction: row; justify-content: space-between; margin-top: 2rem; margin-bottom: 3rem; }
.login_form--field_wrapper input{ height: 5rem!important; line-height: 5rem!important; font-size: 1.4rem!important; border:1px solid #ccc!important; border-radius: 0.3rem!important; margin-top: 1rem!important; padding: 0 5rem 0 1.5rem!important; }
.login_form--field_wrapper input[type="checkbox"]{ line-height:1.6rem; height:1.6rem; }
.login_form--field_wrapper label.custom-checkbox{ font-size: 1.2rem; line-height: 1.6rem; color: #303030; font-weight: normal; cursor: pointer; }
span.keep-me-logged-in{ display: inline-block; position: relative; top: -3px; margin-left: 5px; }
@supports (-moz-appearance:none) {
	span.keep-me-logged-in{ top: -1px; }
}
a.btn-forgot-password{ line-height: 4rem; font-size: 1.2rem; }
p.login-disclaimer{ font-size: 1.2rem; color: #303030; margin-top: 3rem; }
.a-divider.a-divider-break:after{ content: ""; width: 100%; background-color: transparent; display: block; height: 1px; border-top: 1px solid #e7e7e7; position: absolute; top: 50%; margin-top: -1px; z-index: 1;  }
.a-divider.a-divider-break{ text-align: center; position: relative; top: 2px; padding-top: 1px; margin-bottom: 14px; line-height: 0; max-width: 350px; margin: 0 auto; margin-top:3rem; }
.a-divider h5{ line-height: 1; font-size: 12px; color: #767676; font-weight: 400; z-index: 2; position: relative; display: inline-block; background-color: #fff; padding: 0 8px 0 7px; }

.login--show_password, .login--notification{ position: absolute; top: 1.5rem; right: 1rem; font-size: 1.6rem; }
.login--notification{ opacity: 0; transition: opacity 0.8s; }
.login--show_password{ cursor: pointer; }
.form-sub_link{ margin-top: 1.5rem; }
.form-sub_link a{ color: #303030; text-decoration: none; font-size: 1.2rem; }
.form-sub_link a:hover{ text-decoration: underline; }
.form-primary_sub_link{ line-height: 3.6rem; }
.form-primary_sub_link a{ font-size: 1.6rem; text-decoration: none; }
.form-primary_sub_link a:hover{ text-decoration: underline; }
.form-submission-btn{ margin-top: 1rem; margin-bottom: 2rem; }
.form-submission-btn button{ font-size: 2.4rem; padding: 0; width: 100%; }
.login--footer_wrapper{ margin-top: 3rem; margin: 0 auto; }
.create-new-account-wrapper{ margin-top: 3rem; text-align: center; }
.create-new-account-wrapper #login--btn_create_new_account{ width: 100%; font-size: 1.6rem; max-width: 350px; background-color: #f2f2f2; border:1px solid #bfbfbf; color: #595959; padding: 1.2rem 0; }
.a-spacing-top-extra-large { margin-top: 75px !important; }
.a-section:last-child { margin-bottom: 0; }
/*.a-divider-inner{ height: 44px; margin-bottom: -18px; background: -webkit-linear-gradient(to bottom,rgba(0,0,0,.14),rgba(0,0,0,.03) 3px,transparent); background: linear-gradient(to bottom,rgba(0,0,0,.14),rgba(0,0,0,.03) 3px,transparent); z-index: 0; zoom: 1; }
.a-divider-inner::after{ display: block; width: 100%; height: 44px; background-color: transparent; background: -webkit-linear-gradient(to right,#fff,rgba(255,255,255,0),#fff); background: linear-gradient(to right,#fff,rgba(255,255,255,0),#fff); z-index: 1; content: ""; }*/
.a-size-mini { font-size: 11px !important; line-height: 1.465 !important; color: #767676; }
/** NEW STYLES **/
.login-container{ max-width: 40rem; margin: 0 auto; padding-bottom: 8rem; padding-top: 3rem; }
.login-container .login-title{ font-size: 28px; font-weight: 700; letter-spacing: -.75px; line-height: 46px; margin-bottom: 3rem; max-width: 700px; text-align: center; }
.login-container .login-message{ text-align:center; margin-bottom:4rem; }
.c-button {  -webkit-tap-highlight-color: transparent; align-items: center; -webkit-appearance: none; border: none; border-radius: 4px; cursor: pointer; display: inline-flex; justify-content: center; outline: none; position: relative; text-align: center; -webkit-user-select: none; user-select: none; white-space: nowrap; }
.c-button--primary { background: #007a5a; background-color: rgb(0, 122, 90); box-shadow: none; color: #fff; font-weight: 700; transition: all 80ms linear; }
.c-button, .c-button:active, .c-button:focus, .c-button:hover { text-decoration: none; }
.c-button--primary::after { border-radius: 4px; bottom: 0; content: ""; left: 0; position: absolute; right: 0; top: 0; visibility: hidden; }
.c-button--large { font-size: 18px; font-weight: 700; height: 44px; min-width: 96px; padding: 0 16px 3px; }
.full_width { width: 100%; max-width: 100%; }
.margin_top_100 { margin-top: 16px; }
.margin_bottom_150 { margin-bottom: 24px; }
.margin_top_150 { margin-top: 24px; }
.c-google_login { background-color: #fff; border: 2px solid #4285f4; color: #4285f4; }
.c-third_party_auth { display: flex; padding: 0; }
.c-third_party_auth__icon { height: 18px; margin-right: 12px; width: 18px; }
.c-apple_login::selection { background: #ddd; }
.c-apple_login { --saf-0: rgba(var(--sk_primary_foreground,29,28,29),1); background-color: #fff; border: 2px solid var(--saf-0); }
.c-apple_login, .c-apple_login:hover, .c-apple_login:link, .c-apple_login:visited { color: rgba(var(--sk_primary_foreground,29,28,29),1); }
.c-horizontal_content_rule { align-items: center; display: flex; }
hr { border: none; border-top-color: currentcolor; border-top-style: none; border-top-width: medium; border-top: 1px solid #ddd; clear: both; margin-bottom: 16px; }
.c-horizontal_content_rule__leftrule, .c-horizontal_content_rule__rightrule { flex-grow: 1; margin: 0; }
.c-horizontal_content_rule__content { padding: 0 20px; }
.c-horizontal_content_rule__leftrule, .c-horizontal_content_rule__rightrule { flex-grow: 1; margin: 0; }
.ol-button.fullwidth { width: 100%; height: 4.4rem; line-height: 4.4rem; font-size: 1.8rem; font-weight: bold; }
.p-get_started_signin__manual { background-color: rgba(var(--sk_primary_foreground,29,28,29),.05); border-radius: 8px; color: rgba(var(--sk_foreground_max_solid,97,96,97),1); display: flex; padding: 12px 24px; }
.c-icon--sparkles::before { content: "\E123"; }
.p-get_started_signin__icon::before { font-size: 14px; }
.p-get_started_signin__manual { color: rgba(var(--sk_foreground_max_solid,97,96,97),1); }
.p-get_started_signin__manual i.fa-sparkles{ margin-top:0.5rem; }
.padding_left_75 { padding-left: 12px; }
.c-new_account_block{ margin-top:4rem; display: flex; }
.c-new_account_block--inner{ margin: 0 auto; }

.login--logo_wrapper img{ max-width:8rem; }

 @media (max-width: 428px) {
  .modal .modal-content {
    padding: 1rem !important;
  }
}