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

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

Make sure to respect the media queries! Otherwise you may
accidentally add desktop styles to the mobile layout.
https://www.w3schools.com/css/css_rwd_mediaqueries.asp
--------------------------------------------------------------*/
:root {
	--accent: #EC5974;
	--accent-rgb: 236, 89, 116;
}

/* HEADER */
.bb-header-buttons .button.signin-button { background-color: var(--bb-primary-button-background-regular); padding: 0 20px; color: var(--bb-header-links) !important; }
h1, h2, h3, h4, h5, h6, .et_pb_button, nav a, input, select, textarea, .century-gothic { font-family: "century-gothic", sans-serif !important; }
p, li, .eurostile { font-family: "eurostile",sans-serif !important; }

/* FOOTER */
#page .footer-widget-area { border-top: 3px solid var(--accent); padding-top: 4%; }
#page .footer-widget-area::before { content: ''; display: block; margin: 0 auto 2%; width: 200px; height: 77px; background: no-repeat center center url("../images/HVC-logo.png"); background-size: contain; }
.bb-footer .footer-logo { display: none; }
.bb-footer .widget { padding: 0; }
.bb-footer .widget .wp-block-heading { color: var(--accent) !important; text-transform: uppercase; font-size: 23px; letter-spacing: 0.3em; font-weight: 500; margin-bottom: 15px; }
.bb-footer .widget p { font-size: 16px; }
.bb-footer .et_pb_button { display: inline-block; position: relative; text-align: center; color: var(--accent); border: 2px solid var(--accent); border-radius: 100px; letter-spacing: 0.05em; font-size: 20px; text-transform: uppercase; background-color: #FFFFFF; padding: 0.8em 2em 0.6em 2em !important; overflow: hidden; line-height: 1.4 !important; box-shadow: 0px 2px 54px 0px rgba(236,89,116,0.77); }
.bb-footer .et_pb_button::before, .bb-footer .et_pb_button::after { content: ''; display: block; border: 13px solid transparent; position: absolute; opacity: 1 !important; margin: 0; border-radius: 100px; filter: blur(8px); }
.bb-footer .et_pb_button::before { border-top-color: var(--accent); border-left-color: var(--accent); top: -3px; left: -3px; width: 100%; height: 80%; }
.bb-footer .et_pb_button::after { border-bottom-color: #2d2f35; border-right-color: #2d2f35; right: -4px; bottom: -3px; width: 104%; height: 90%; }
.bb-footer .et_pb_button:hover { border-color: #fff; }

/* GENERAL */
.grecaptcha-badge { display: none; }
.container { max-width: 1270px; }
@media (min-width: 980px) {
	.et_pb_equal_columns > .et_pb_column { margin-top: auto; margin-bottom: auto; }
}

/* FULLSCREEN PAGE TEMPLATE */
body.page-template-page-fullscreen .site-content { padding-top: 0; }
body.page-template-page-fullscreen .content-area { padding: 0; }
body.single-event-sales .content-area,
body.single-course-sales .content-area { padding: 0 !important; }

/* HIDE HEADER SIGN UP BUTTON */
.bb-header-buttons .button.signup {
	display: none;
}

/* WOO */
.woocommerce table.shop_table .coupon button.button { background-color: var(--bb-primary-button-background-hover) !important; }
.login #login_error a, .login .message a { text-decoration: underline; }

/* Overrides */
.bb-template-v2 .site-header .user-wrap.menu-item-has-children > .user-link:hover:before { background-color: var(--bb-header-alternate-background); }
.bb-template-v2 .site-header .user-wrap.menu-item-has-children .sub-menu .user-link .user-name { color: var(--bb-alternate-text-color); }
.bb-template-v2 ul.buddypanel-menu > li > a > img:first-child { margin-left: 2px; }

/* Gutenburg */
#content .wp-block-group.has-background { padding: 1.5em 1.5em 0.5em; }

/* Paper effect */
.overlap__section { overflow: hidden; position: relative; height: 110px; width: 100%; }
.overlap__section .layer { position: absolute; bottom: 0; height: 90%; height: 36%; width: 100%; }
.overlap__section ~ .ld-tab-content { background-color: #F8F8F6; color: #000; padding: 1.5em !important; }
.overlap__section ~ .ld-tab-content table thead th { color: #000; }

/* LearnDash */
.with-bg-image #content { color: #fff; --bb-headings-color: #fff; --bb-body-text-color: #fff; --bb-alternate-text-color: rgba(255,255,255,0.8); }
.with-bg-image .ld-breadcrumbs a { color: var(--bb-headings-color) !important; }
.with-bg-image .learndash_next_prev_link a { color: #000 !important; }
.ld-tab-content .alignfull { width: calc(100% + 3em); margin-left: -1.5em; margin-right: -1.5em; }
.ld-tab-content .alignfull:last-child { margin-bottom: -1.5em; }
#learndash-page-content { border-bottom: none; background-color: transparent; }
#learndash-page-content::before { content: ''; display: block; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 0; background: -moz-linear-gradient(top,rgba(0,0,0,0.1) 0%,rgba(0,0,0,.6) 99%,rgba(0,0,0,.6) 100%); background: -webkit-linear-gradient(top,rgba(0,0,0,.1) 0%,rgba(0,0,0,.6) 99%,rgba(0,0,0,.6) 100%); background: linear-gradient(to bottom,rgba(0,0,0,.1) 0%,rgba(0,0,0,.6) 99%,rgba(0,0,0,.6) 100%); pointer-events: none; }
.lms-topic-sidebar-wrapper { background-color: rgba(0,0,0,0.4)!important; }
.bb-lms-header h1 { text-align: center; text-shadow: 0em 0em 0.3em rgba(0,0,0,0.4); }
.bb-pages { display: none !important; }

/* TO CHECK */
.learndash_content_wrap .ld-progress { display: none; } 

/* DIVI 
.et_pb_section.et_pb_with_background .et_pb_row {
	width: 90% !important;
}

.et_pb_section.et_pb_with_background .et_pb_row.fullwidth {
	width: 100% !important;
}
*/

/* NINJA */
.nf-form-wrap .nf-form-content .nf-field-element input[type="submit"] { background-color: var(--bb-primary-button-background-regular); }

/* .nf-form-fields-required, .ninja-forms-req-symbol { display: none; } */
#main .et_pb_module .nf-before-form-content { padding-bottom: 10px; }
#main .et_pb_module .nf-progress-container { height: 3px; background-color: #000; }
#main .et_pb_module .nf-progress { height: 3px; background-color: var(--accent); }
/* #main .et_pb_module .nf-response-msg { margin-top: 2em; } */
/* #main .et_pb_module .nf-response-msg a { text-decoration: underline; } */
/* #main .nf-form-wrap .nf-field-description { font-size: 18px; padding: 10px; } */

#main .et_pb_module .nf-error-msg { margin-top: 5px; background-color: var(--accent); border-radius: 10px; padding: 5px 10px; color: #fff !important; }

#main .et_pb_module .nf-breadcrumb { padding: 0 10px 0 0; }
#main .et_pb_module .active .nf-breadcrumb { text-decoration: underline !important; }
#main .et_pb_module .nf-field-label { padding-bottom: 8px; }
#main .et_pb_module .nf-field-container { padding-bottom: 18px; }
#main .et_pb_module .nf-field-label label,
#main .et_pb_module .nf-label-span { font-family: "eurostile", sans-serif; }
#main .et_pb_module .nf-form-content input.text:not(.qty), 
#main .et_pb_module .nf-form-content input.title, 
#main .et_pb_module .nf-form-content input[type="email"], 
#main .et_pb_module .nf-form-content input[type="password"], 
#main .et_pb_module .nf-form-content input[type="tel"], 
#main .et_pb_module .nf-form-content input[type="text"], 
#main .et_pb_module .nf-form-content select, 
#main .et_pb_module .nf-form-content textarea { width: 100% !important; background: #fff; border-radius: 10px; padding: 14px 2% !important; height: auto; font-size: 16px; border: 1px solid var(--accent) !important; }

#main .et_pb_module .nf-form-content .listradio-wrap .nf-field-element label:after { background: #fff; border: 1px solid var(--accent) !important; }
#main .et_pb_module .nf-form-content .listradio-wrap .nf-field-element label:before { content: ""; position: absolute; width: 10px; height: 10px; left: -26px; bottom: 5px; z-index: 2; top: .25em; background: var(--accent); transform: scale(0); transition: 120ms transform ease-in-out; }
#main .et_pb_module .nf-form-content .listradio-wrap .nf-field-element label.nf-checked-label:before {  transform: scale(1); }
#main .et_pb_module .nf-form-content .listradio-wrap .nf-field-element label.nf-checked-label:before { background: var(--accent); }
#main .et_pb_module .nf-form-content input[type=checkbox]:focus+label:after, input[type=radio]:focus+label:after { box-shadow: none !important; }

#main .et_pb_module .list-radio-wrap .nf-field-element ul li,
#main .et_pb_module .list-radio-wrap .nf-field-element ul li { margin-bottom: 15px; }
/* These appear the first step of a form only and are dumb - I can't see a purpose for them */
#main .et_pb_module .nf-form-content .listradio-wrap .bs-radio { display: none !important; }

/* #main .et_pb_module .nf-form-content input[type="checkbox"],
#main .et_pb_module .nf-form-content input[type="radio"] { opacity: 1 !important; appearance: none; background-color: #fff; color: var(--accent); width: 1.2em !important; height: 1.2em; border: 1px solid var(--accent); display: grid; place-content: center; margin: 0 !important; } */
/* #main .et_pb_module .nf-form-content input[type="checkbox"]::before,
#main .et_pb_module .nf-form-content input[type="radio"]::before { content: ""; width: 0.9em; height: 0.9em; transform: scale(0); transition: 120ms transform ease-in-out; box-shadow: inset 1em 1em var(--accent); border-radius: inherit; }
#main .et_pb_module .nf-form-content input[type="checkbox"]:checked::before,
#main .et_pb_module .nf-form-content input[type="radio"]:checked::before { transform: scale(1); }
#main .et_pb_module .nf-form-content input[type="radio"] { border-radius: 50%; } */

/* #main .et_pb_module .nf-form-content input[type="checkbox"]:focus ~ label:after, 
#main .et_pb_module .nf-form-content input[type="radio"]:focus ~ label:after { box-shadow: none !important; } */

#main .et_pb_module .list-radio-wrap .nf-field-element ul li label,
#main .et_pb_module .list-checkbox-wrap .nf-field-element ul li label { margin-left: 30px; cursor: pointer; }


#main .et_pb_module .nf-form-content button, 
#main .et_pb_module .nf-form-content input[type="button"], 
#main .et_pb_module .nf-form-content input[type="submit"] { cursor: pointer; color: var(--accent) !important; border: 2px solid var(--accent); border-radius: 100px; letter-spacing: 0.05em; font-size: 20px; text-transform: uppercase; background-color: #FFFFFF; padding: 0.6em 2em; height: auto; }
#main .et_pb_module .nf-form-content .submit-wrap .nf-field-element { text-align: right; }

#main .et_pb_module .nf-form-wrap .nf-response-msg { font-size: 16px !important; }
#main .et_pb_module .nf-form-wrap .nf-response-msg p:first-child { font-size: 23px !important; line-height: 1.4em; }

#main .et_pb_module .nf-form-content .nf-next-previous li { position: relative; overflow: hidden; border-radius: 100px; }
#main .et_pb_module .nf-form-content .nf-next-previous li::before, 
#main .et_pb_module .nf-form-content .nf-next-previous li::after { content: ""; display: block; border: 13px solid transparent; position: absolute; opacity: 1 !important; margin: 0; border-radius: 100px; filter: blur(8px); pointer-events: none; }
#main .et_pb_module .nf-form-content .nf-next-previous li::before { border-top-color: var(--accent); border-left-color: var(--accent); top: -3px; left: -3px; width: 100%; height: 80%; }
#main .et_pb_module .nf-form-content .nf-next-previous li::after { border-bottom-color: #2d2f35; border-right-color: #2d2f35; right: -4px; bottom: -3px; width: 104%; height: 90%; }

#main .et_pb_module.et_pb_bg_layout_dark .nf-form-content input:not([type="button"]),
#main .et_pb_module.et_pb_bg_layout_dark .nf-form-content select, 
#main .et_pb_module.et_pb_bg_layout_dark .nf-form-content textarea { color: #fff; }
#main .et_pb_module.et_pb_bg_layout_dark .nf-form-content input[type="checkbox"],
#main .et_pb_module.et_pb_bg_layout_dark .nf-form-content input[type="radio"] { background-color: #000; }

#main .whats-your-vibe .nf-progress-container { margin-bottom: 15px; }
#main .whats-your-vibe .nf-field-label .nf-label-span { font-family: "century-gothic", sans-serif !important; display: block; text-align: center; font-size: 30px; letter-spacing: 0.06em; font-weight: 500; padding: 0 0 0.3em; line-height: 1.4; border: 0; }
#main .whats-your-vibe .nf-field-element { border: 0; padding: 0; }
#main .whats-your-vibe .listradio-container .nf-field-element label { font-family: "century-gothic", sans-serif !important; cursor: pointer; font-size: 18px; }

/* 
#main .whats-your-vibe .listradio-container .nf-field-element ul li { color: #000; overflow: visible; padding: 0.2em 0 1em 0 !important; }
#main .whats-your-vibe .listradio-container .nf-field-element ul li::before { content: ""; border-radius: 50%; height: 30px; width: 30px; box-shadow: -8px -4px 8px 0px #ffffff, 8px 4px 12px 0px #d1d9e6; background: #ecf0f3; position: absolute; top: 0; left: 0; }
#main .whats-your-vibe .listradio-container .nf-field-element input,
#main .whats-your-vibe .listradio-container .nf-field-element .bs-radio { display: none; }
#main .whats-your-vibe .listradio-container .nf-field-element label { font-family: "century-gothic", sans-serif !important;  cursor: pointer; font-size: 18px; padding-left: 3em !important; margin: 0 !important; }

#main .whats-your-vibe .listradio-container .nf-field-element label::before,
#main .whats-your-vibe .listradio-container .nf-field-element label::after { content: ''; position: absolute; top: 0px; left: 3px; height: 24px; width: 24px; border-radius: 50%; border: 0 !important; }
#main .whats-your-vibe .listradio-container .nf-field-element label::before { box-shadow: -4px -2px 4px 0px #d1d9e6, 4px 2px 8px 0px #fff; transition: all .25s .1s ease-in-out; }
#main .whats-your-vibe .listradio-container .nf-field-element label::after { background-color: #ecf0f3; box-shadow: -4px -2px 4px 0px #fff, 4px 2px 8px 0px #d1d9e6; transform: scale3d(1, 1, 1); transition: opacity .25s ease-in-out, transform .25s ease-in-out; }
#main .whats-your-vibe .listradio-container .nf-field-element input:checked ~ label::before { background-color: var(--accent); opacity: 1 !important; z-index: 1; }
#main .whats-your-vibe .listradio-container .nf-field-element label:hover::after { transform: scale3d(.975, .975, 1) translate3d(0, 10%, 0); opacity: 0; }  */

#main .whats-your-vibe .nf-field-container.listradio-container,
#main .whats-your-vibe .nf-response-msg { font-family: "century-gothic",sans-serif !important; border-radius: 16px; padding: 24px 48px 48px; margin-bottom: 50px;
	/* box-shadow: rgba(var(--accent-rgb), 0.4) 5px 5px, rgba(var(--accent-rgb), 0.3) 10px 10px, rgba(var(--accent-rgb), 0.2) 15px 15px, rgba(var(--accent-rgb), 0.1) 20px 20px, rgba(var(--accent-rgb), 0.05) 25px 25px; */
	box-shadow: rgba(var(--accent-rgb), 0.4) -5px 5px, rgba(var(--accent-rgb), 0.3) -10px 10px, rgba(var(--accent-rgb), 0.2) -15px 15px, rgba(var(--accent-rgb), 0.1) -20px 20px, rgba(var(--accent-rgb), 0.05) -25px 25px;
	/* padding: 48px 64px; margin-bottom: 50px; border-radius: 16px; background: #ecf0f3; box-shadow: 4px 4px 4px 0px #d1d9e6 inset, -4px -4px 4px 0px #ffffff inset; font-family: "century-gothic",sans-serif !important;  */
}

@media (max-width: 480px) {
	#main .whats-your-vibe .nf-field-label .nf-label-span { 
		font-size: 20px; 
	}

	#main .whats-your-vibe .nf-field-container.listradio-container,
	#main .whats-your-vibe .nf-response-msg {
		padding: 20px 0 20px 20px;
	}
	
	#main .whats-your-vibe .listradio-container .nf-field-element label {
		font-size: 14px;
	}
}

#main .whats-your-vibe .nf-response-msg h2,
#main .whats-your-vibe .nf-response-msg h3 { text-align: center; }
#main .whats-your-vibe .nf-response-msg h2 { color: #ef476f; }


/* SLICK */
.slick-arrow { background: transparent !important; border: 5px solid var(--accent); border-radius: 0 !important; transform: scaleX(1.7) rotate(45deg); padding: 0; box-shadow: none !important; text-indent: -2222em !important; border-left-color: transparent !important; border-bottom-color: transparent !important; }
.slick-arrow.slick-next { left: auto; right: -60px; }  
.slick-arrow.slick-prev { left: -60px; transform: scaleX(-1.7) rotate(45deg); }	
.slick-arrow::before,
.slick-arrow::after { content: ''; display: block; width: calc(100% + 10px); height: calc(100% + 10px); border: 5px solid var(--accent); border-left-color: transparent; border-bottom-color: transparent; position: absolute; top: 50%; left: 50%; }	
.slick-arrow::before { transform: translate(-80%, -20%); opacity: 0.6; }	
.slick-arrow::after { transform: translate(-110%, 10%); opacity: 0.3; }
	
/* Dots */
.slick-dotted.slick-slider { padding-bottom: 50px !important; }
.slick-dots { display: block; padding: 0 !important; margin: 0 !important; list-style: none; text-align: center !important; }
.slick-dots li { position: relative; display: inline-block; width: 20px; height: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li button { font-size: 0; line-height: 0; display: block; width: 20px; height: 20px; padding: 5px; cursor: pointer; color: var(--accent); border: 0; outline: none; background: transparent; }
.slick-dots li button:hover,
.slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before,
.slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { content: ''; display: block; margin: 0 auto; width: 6px; height: 6px; background-color: var(--accent); border-radius: 50%; opacity: .25; color: var(--accent); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { opacity: .75; color: var(--accent); }