/*--------------------------------------------------------------
# Course Banner
--------------------------------------------------------------*/
#banner--course-hero {
	--course-hero-top-padding: 105px;
	--course-hero-bottom-padding: 100px;
}

#banner--course-hero .banner-content-a::before {
	background: url(../img/world-white.png) left center var(--prcoBeige) no-repeat;
	background-size: contain;
}

#banner--course-hero + .learndash-wrapper {
	margin-top: 30px;
}

.banner--a-s-c  .banner-content-a {
	padding-top: var(--course-hero-top-padding);
	padding-bottom: 76px;
}

.banner--a-s-c .banner-content-c {
	padding-bottom: 50px;
}

@media screen and ( min-width: 768px ) {

	.banner--a-s-c .banner-grid {
		display: grid;
		grid-template-columns: 2fr 400px;
		grid-column-gap: 30px;
		grid-row-gap: 30px;
	}

	.banner--a-s-c  .banner-content-a {
		grid-area: 1 / 1 / 2 / 3;
		padding-right: 430px;
		padding-bottom: 56px;
	}

	.banner--a-s-c .banner-content-s {
		grid-area: 1 / 2 / 3 / 3;
		position: relative;
/*		z-index: 3;*/
		padding-top: var(--course-hero-top-padding);
		padding-bottom: var(--course-hero-bottom-padding);
	}

	.banner--a-s-c .banner-content-c {
		grid-area: 2 / 1 / 3 / 2;
		padding-top: 50px;
		padding-bottom: var(--course-hero-bottom-padding);
	}
}

/* Course Banner - Hero
--------------------------------------------- */
.course-introduction {
	margin-bottom: 35px;
}

.course-meta__labels {
	margin-bottom: 15px;
}

.course-description__content img {
	max-width: 300px;
	height: auto;
}


/* Course Banner - Sale Card
--------------------------------------------- */
.course-sale-card {
	max-width: 100%;
    padding: 20px;
    background-color: var(--prcoWhite);
    box-shadow: var(--prcoShadow);
    position: sticky;
    top: 105px;
    margin-top: -40px;
    margin-bottom: 40px;
    z-index: 1000;
}

.course-sale-card .course-sale-card__video .stk-block {
	margin-bottom: 0 !important;
}

.course-sale-card__content {
	padding: 23px 0 13px 0;
	text-align: center;
	background: var( --prcoOffWhite );
}

.proc-tooltip-small .gspb-buttonbox-icon {
	margin-bottom: 8px !important;
}

@media screen and ( min-width: 768px ) {
	.course-sale-card {
		margin-top: 0;
		margin-bottom: 0;
		max-width: 400px;
	}
}

/* Course Banner - Sale Action
--------------------------------------------- */
.course-sale-action {
	display: inline-flex;
    width: auto;
    padding: 8px;
    background: var(--prcoWhite);
    border-radius: 4px;
    margin-bottom: 17px;
}

.course-sale-action__price,
.course-sale-action_add_button {
    font-weight: 400;
    font-size: 15px;
    margin-right: 2px;
	padding: 0 30px;
	display: flex;
	height: 60px;
	align-items: center;
    border-radius: 4px 0 0 4px;
    color: var(--prcoWhite);
    background-color: var(--prcoDarkOrangeDark);
}

.course-sale-action_add_button {
	border-radius: 0 4px 4px 0;
	margin-right: 0;
	margin-left: 2px;
    background-color: var(--prcoDarkOrange);
}

.course-sale-action_add_button:hover{
	color: var(--prcoWhite);
    background-color: var(--prcoDarkOrangeDark);
}

/* Course Banner - Deal
--------------------------------------------- */
.course-sale-deal strong {
	font-weight: normal;
	font-size: 17px;
    letter-spacing: 0.23px;
    line-height: 24px;
}

.course-sale-deal p {
	margin-bottom: 0;
	margin-top: 5px;
}

/* Course Banner - Summary
--------------------------------------------- */

.course-summary-heading {
	font-family:  var(--prcoBodyFont);
	font-weight: 400;
	margin-bottom: 30px;
}

.course-summary ul {
	border-top: 2px solid var(--prcoBorder);
}

.course-summary-item {
	display: flex;
	border-bottom: 1px solid var(--prcoBorder);
	padding: 15px;
}

.course-summary-item__icon {
	width: 55px;
	padding-top: 15px;
}

.course-summary-item__content {
	flex: 1;
}

.course-summary-item__title {
	margin-bottom: 5px;
}

.course-summary-item__details__main {
	color: var(--prcoDarkText);
}

.course-summary-item__details .tooltip-trigger {
	text-decoration: underline;
}

.course-summary-item__details__main .text-12 {
	color: var(--prcoNormalText);
}

.course-summary-item__details {
	display: flex;
	flex-wrap: wrap;
}

.course-summary-item__details__equal {
	width: 50%;
}

.course-summary-item__details__footer {
	width: 100%;
	margin-top: 30px;
}

.course-certificates-logos {
	text-align: right;
}

.course-certificates-logos img {
	width: auto;
    height: 55px;
    margin-left: 5px;
}


/*--------------------------------------------------------------
# Coure Instructor
--------------------------------------------------------------*/
.course-instructor::before {
	background: var(--prcoLightGreen) url(../img/world-white-bottom-right.png) bottom right no-repeat;
}

.course-instructor > h2 {
	margin-bottom: 40px;
}

/* Course Instructor - grid
--------------------------------------------- */
.course-instructor-grid__image__container {
	height: 304px;
	width: 100%;
	max-width: 380px;
}

.course-instructor-grid__image__container img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.course-instructor-grid__bio {
	flex: 1;
	padding-top: 50px;
}

.instructor-bio__name {
	font-family:  var(--prcoBodyFont);
	font-size: 24px;
	letter-spacing: 0.32px;
	line-height: 30px;
	margin-bottom: 20px;
}

.instructor-bio__content.js-more-content--running {
	height: 70px;
}

@media screen and ( min-width: 768px ) {
	.course-instructor-grid {
		display: flex;
	}

	.course-instructor-grid__image {
		padding-right: 40px;
		width: 41.66666667%;
	}
}


/*--------------------------------------------------------------
# Coure Descripition
--------------------------------------------------------------*/
.course-description::before {
	background: var(--prcoCream);
}

.course-description > h2 {
	margin-bottom: 40px;
}
/* Course Description - grid
--------------------------------------------- */
.course-description-grid-b {
    display: flex;
}

@media screen and ( min-width: 768px ) {
	.course-description-grid {
		display: grid;
		grid-template-columns: 2fr 41.66666667%;
		grid-column-gap: 30px;
		grid-row-gap: 30px;
	}

	.course-description__image img {
		position: sticky;
		top: 30px;
	}

	.course-description-grid-b {
		justify-content: end;
	}
}


@media screen and ( max-width: 767px ) {
	.course-description-grid {
		display: flex;
		flex-wrap: wrap;
	}

	.course-description-grid-b {
	    order: 1;
	    width: 100%;
	}

	.course-description-grid-a {
	    order: 2;
	    width: 100%;
	}

	.course-description__image {
		height: 304px;
	    width: 100%;
	    max-width: 380px;
		margin-bottom: 30px;
	}

	.course-description__image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

/*--------------------------------------------------------------
# Course Lesson Plan
--------------------------------------------------------------*/
.course-lesson-plan::before {
	background: var(--prcoOffGrey);
}


/* Lesson plan
--------------------------------------------- */
.lesson-plan {
	padding: 39px 40px 59px;
	border: 1px solid var(--prcoBorder);
	background: var(--prcoWhite);
}

@media screen and ( min-width: 768px ) {
	.lesson-plan {
		padding: 75px 79px 80px;
	}
}

.lesson-plan > h2 {
	margin-bottom: 40px;
}

.lesson-plan-content.js-more-content--running {
    height: 360px;
    position: relative;
}

.lesson-plan-content {
	padding-left: 35px;
    position: relative;
}

.lesson-plan-content:before {
    content: "";
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    background: url(../img/line-course.svg) no-repeat;
    background-position: bottom center;
}

@media screen and ( min-width: 768px ) {
	.lesson-plan-content:before {
    	left: 37px;	
	}

	.lesson-plan-content {
		padding-left: 105px;
	}
}

.lesson-plan-content:not(.js-more-content--show):after {
    position: absolute;
    bottom: 0;
    height: 100%;
    width: 100%;
    content: "";
    background: linear-gradient(to top, rgba(255,255,255, 1) 0%, rgba(255,255,255, 0) 30% );
    pointer-events: none;
}

.lesson-plan .js-more-button {
	margin-left: 35px;
}

.lesson-plan:not(.hh-plan) ul, 
.lesson-plan:not(.hh-plan) ol {
    padding-left: 0;
    counter-reset: item;
}

.lesson-plan li {
    display: block;
    position: relative;
}

.lesson-plan li:before {
    content: counter(item) ". ";
    counter-increment: item;
    color: #93B4BF;
    position: absolute;
    top: 0;
}

.lesson-plan li > span:not(.s1) {
    padding-left: 24px;
}

.lesson-plan ol li span strong {
    color: var(--prcoBlue);
    font-size: 17px;
    line-height: 25px;
    font-weight: normal;
    padding-bottom: 10px;
    
    display: inline-block;
}

@media screen and ( min-width: 768px ) {

	.lesson-plan .js-more-button {
		margin-left: 105px;	
	}
	.lesson-plan li:before {
	    top: 20px;
	}

	.lesson-plan ol li span strong {
		margin-top: 20px;
	}
}


/*--------------------------------------------------------------
# Course Lesson Preview
--------------------------------------------------------------*/
.course-preview::before {
	background: var(--prcoCream);
}

.course-preview__header {
	text-align: center;
	margin-bottom: 50px;
}

.course-preview__header *:last-child {
	margin-bottom: 0;
}

.course-preview__content {
    overflow: hidden;
    background: var(--prcoWhite);
    padding: 20px;
    margin: auto;
    max-width: 820px;
}

/*--------------------------------------------------------------
# Course Testimonials
--------------------------------------------------------------*/
.course-testimonials-group::before {
	background: var(--prcoSubtleGreen) url(../img/world-white-testimonials.png) center left no-repeat;
	background-size: auto 100%;
}


.course-testimonials-group__content .entry-content {
	overflow: visible !important;
}

.course-testimonials-group__header {
	padding-bottom: 30px;
	border-bottom: 1px solid var(--prcoBorder);
}

/*--------------------------------------------------------------
# Course Related
--------------------------------------------------------------*/

.course-related::before {
	background: var(--prcoOffGrey);
}

.course-related__header {
	padding-bottom: 30px;
	margin-bottom: 22px;
	border-bottom: 1px solid var(--prcoBorder);
}

@media screen and ( max-width: 991px ) {
	.prco-related-slider {
		padding-top: 64px;
	}
}



/* Grid Related
--------------------------------------------- */
.grid-related-c .text-24 {
	color: var(--prcoDarkText);
}

@media screen and ( max-width: 767px ) {
	.grid-related-c {
		margin-top: 40px;	
	}

}
@media screen and ( min-width: 768px ) {

	.grid-related {
		display: grid;
		grid-template-columns: 28% 1fr;
		grid-column-gap: 20px;
		grid-row-gap: 60px;
	}

	.grid-related-a {
		grid-area: 1 / 1 / 2 / 2;
		display: flex;
	}

	.grid-related-b {
		grid-area: 1 / 2 / 2 / 3;
		position: relative;
		overflow: hidden;
	}

	.grid-related-c {
		grid-area: 2 / 1 / 3 / 3;
	}
}

@media screen and ( min-width: 992px ) {
	.grid-related {
		grid-template-columns: 25% 1fr;
	}
}

/* Learn & Save
--------------------------------------------- */
@media screen and ( max-width: 767px ) {
	.card-learn-save-heading,
	.card-learn-save hr,
	.card-learn-save hr + p {
		display: none;
	}

	.card-learn-save .text-24 {
		font-size: 17px;
	    letter-spacing: 0.23px;
	    line-height: 24px;
	}
}
@media screen and ( min-width: 768px ) {
	.card-learn-save {
		background: var(--prcoGreen);
		padding: 20px;
		color: var(--prcoWhite);
		flex: 1;
		display: flex;
		justify-content: center;
		flex-direction: column;
	}

	.card-learn-save-heading {
		font-family:  var(--prcoBodyFont);
		font-size: 40px;
		letter-spacing: 0.53px;
		margin-bottom: 60px;
		color: var(--prcoWhite);
	}

	.card-learn-save .text-24 {
		margin-bottom: 56px;
	}

	.card-learn-save hr {
		margin: 0;
	}

	.card-learn-save hr + p {
		margin-bottom: 0;
		margin-top: 20px;
	}
}


/*--------------------------------------------------------------
# Course Inbox
--------------------------------------------------------------*/
.course-inbox {
    padding-bottom: 130px;
}
.course-inbox::before {
    background: url(../img/inbox-bg.jpg) #F2F3F6;
    background-position: center bottom;
    background-size: 680px auto;
    background-repeat:  no-repeat;
}

@media screen and (min-width: 768px) {
	.course-inbox {
        padding-bottom: 245px;
	}

    .course-inbox::before {
        background-size: 1440px auto;
    }
}

/* Course Inbox Header
--------------------------------------------- */
.course-inbox__header {
    text-align: center;
    margin-bottom: 20px;
}

.course-inbox-tag {
    display: block;
    border: 1px solid var(--prcoDarkText);
    border-radius: 4px;
    color: var(--prcoNormalText);
    font-size: 12px;
    line-height: 30px;
    margin: auto;
    margin-bottom: 10px;
    padding: 0;
    height: 30px;
    font-family: var(--prcoBodyFont);
    font-weight: normal;
    width: 74px;
}

@media screen and (min-width: 768px) {
    .course-inbox__header {
		margin-bottom: 60px;	
	}

}

/* Course Inbox Box
--------------------------------------------- */
.inbox-box {
    margin-bottom: 30px;
}

.inbox-box__content {
    text-align: center;
    margin-bottom: 30px;
}

.inbox-box__content p {
    margin-top: 0;
    max-width: 300px;
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (min-width: 768px) {
	.inbox-box {
        display: flex;
        max-width: 980px;
        margin: auto;
    }

    .inbox-box > div {
        width: 50%;
    }

    .inbox-box__content {
        text-align: left;
        margin-bottom: 0;
    }

    .inbox-box__content p {
        margin: 0;
        margin-bottom: 30px;
        max-width: none;
    }

    .inbox-box__form {
        padding-left: 110px;
    }
}

/* Course Inbox Box List
--------------------------------------------- */
.inbox-box__content ul {
    border-bottom: 1px solid var(--prcoBorder);
}

.inbox-box__content li {
    position: relative;
    padding: 30px;
    padding-left: 35px;
    border-top: 1px solid var(--prcoBorder);
    text-align: left;
}

.inbox-box__content li::before {
    content: "";
    width: 20px;
    height: 14px;
    background: url(../img/c-icon-check.png) no-repeat center center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 36px;
}

@media screen and (min-width: 768px) {
    .inbox-box__content li {
        padding-top: 30px;
        padding-bottom: 30px;
        font-size: 16px;
    }
}

/* Course Inbox Box Form
--------------------------------------------- */
.inbox-box__form .gform_footer {
    margin-top: 15px !important;
}

.inbox-box__form .gform_button {
    text-transform: none !important;
}

.inbox-box__form .gform_confirmation_wrapper {
    padding-top: 0 !important;
    min-height: 0 !important;
}

.inbox-box__form .gform_confirmation_wrapper ~ .inbox-box__form__footer {
    display: none;
}

.inbox-box__form .gform_confirmation_wrapper h4 {
    margin: 0 0 15px 0 !important;
    padding: 0 !important;
    font-size: 21px !important;
}

.inbox-box__form div.gform_wrapper form,
.inbox-box__form div.gform_wrapper {
    margin-bottom: 0;
    margin-top: 0;
}

.inbox-box__form__footer {
    text-align: center;
    font-size: 13px;
}
.inbox-box__form__footer::before {
    content: "";
    display: inline-block;
    margin-right: 10px;
    background: url(../img/secure-3.svg) no-repeat;
    background-size: contain;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    position: relative;
    top: -2px;
}


@media screen and (min-width: 768px) {
    .inbox-box__form .gform_footer {
        margin-top: 15px !important;
    }
    .inbox-box__form__footer {
        padding-top: 5px;
    }

    .inbox-box {
        display: flex;
        max-width: 980px;
        margin: auto;
    }

    .inbox-box > div {
        width: 50%;
    }

    .inbox-box__form {
        padding-left: 110px;
    }
}

body .inbox-box div.gform_wrapper .gfield input:not([type='radio']):not([type='checkbox']):not([type='submit']):not([type='button']):not([type='image']):not([type='file']), 
body .inbox-box div.gform_wrapper .gfield select {
    width: 100%;
    height: 50px;
}

body .inbox-box div.gform_wrapper .gfield input[type="text"]:focus,
body .inbox-box div.gform_wrapper .gfield input[type="email"]:focus {
    border: 2px solid var(--prcoDarkText) !important;
}


body .inbox-box div.gform_wrapper .gform_footer .gform_button {
    margin-top: 0;
    width: 100%;
    height: 60px;
}

.inbox-box div.gform_wrapper ul.gform_fields li {
	padding-right: 0 !important;
}

.inbox-box div.gform_wrapper ul.gform_fields li.gfield:first-child {
    margin-top: 0;
}


.inbox-box .validation_error {
    display: none !important;
}

.inbox-box .gform_wrapper li.gfield.gfield_error.gfield_contains_required {
    border: 0 !important;
}

.inbox-box .gform_wrapper.gform_validation_error .gform_body ul li.gfield.gfield_error:not(.gf_left_half):not(.gf_right_half) {
    max-width: none !important;
}

.inbox-box .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container, 
.inbox-box .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
    color: inherit !important;
}

.inbox-box .gform_wrapper li.gfield.gfield_error.gfield_contains_required input {
    border: 2px solid #E64848 !important;
}

body .inbox-box .gform_wrapper .validation_message {
    font-weight: normal !important;
    color: #E64848 !important;
    padding-top: 12px !important;
}



/* Course Inbox Box Bootcamp
--------------------------------------------- */

.style--bootcamp.course-inbox::before {
    background-image: url(../img/mini-lessons-bootcamp-mobile.jpg);
    background-color: var(--prcoBootGrey);
}

@media screen and (max-width: 767px) {
    .style--bootcamp.course-inbox {
        background-size: cover;
        background-position: center;
    }
}

.style--bootcamp div.gform_wrapper .gform_footer .gform_button {
    background: var(--prcoBootYellow) !important;
}

@media screen and (min-width: 768px) {
    .style--bootcamp.course-inbox::before {
        background-image: url(../img/mini-lessons-bootcamp.jpg);
    }
    .style--bootcamp .hh-inbox__content li {
        padding-top: 24px;
        padding-bottom: 24px;
        font-size: 18px;
        line-height: 28.8px;
    }
    .style--bootcamp .hh-inbox__form__footer {
        color:  #fff;
    }
}



