/*
Theme Name: LightsUp
Version: 100.0.1
Description: Custom website for LightsUp
Author: Ehren Fergusson @ FazeDesigns
Author URI: https://www.fazedesigns.com
*/






/************************************/
/*** CSS CODED BY EHREN FERGUSSON ***/
/************************************/






/************************************/
/************ START CSS *************/

/* Colors
	#8717FB = Electric Purple
	#FF4062 = Flamingo Pink
	#FFBF00 = Sunflower Yellow
	#14BDEB = Sky Blue
	#23CE6B = Emerald Green
	#F7F7F9 = Stage White
	#310450 = Midnight Purple
	#240B36 = Midnight Black
*/

.fa { font-style: normal !important;}
.shadow { box-shadow: 0 15px 40px rgba(0,0,0,0.1);}
.overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; z-index: 1; background: no-repeat center center; background-size: cover; transition:.5s;}

iframe {
	width: 1px;
	min-width: 100%;
}

/* Buttons */

.btn { 
	display: inline-block; 
	position: relative; 
	padding: 15px 30px; 
	font-size: 20px; 
	text-decoration: none !important;
	line-height: 1em; 
	text-align: center; 
	white-space: normal; 
	font-weight: 600 !important;
	border-top-right-radius: 20px;
	border-bottom-left-radius: 20px;
	transition: .3s;
	cursor: pointer;
}

.btn.btn_primary { background: #8717FB; border: 2px solid #8717FB; color: #fff;}
a:hover .btn.btn_primary,
.btn.btn_primary:hover { background: #240B36; border-color: #240B36;}

.btn.btn_secondary { background: none; border: 2px solid #8717FB; color: #8717FB;}
a:hover .btn.btn_secondary,
.btn.btn_secondary:hover { color: #240B36; border-color: #240B36;}

.btn.disabled { opacity: 0.3; pointer-events: none; cursor: default;}

a.link { position: relative; display: inline-block; text-transform: uppercase; vertical-align: middle; font-size: 15px; letter-spacing: 0.045em; font-weight: 600; color: #8717FB; text-decoration: none !important; transition:.3s;}
a.link:before { content: ''; display: block; position: absolute; bottom: 0; width: 0; height: 2px; left: 0; background: #8717FB; transition:.3s;}
a.link:hover:before { width: 100%;}
a.link:after { content: ''; display: inline-block; margin-left: 7px; width: 18px; height: 10px; background: url(_assets/svg/link-arrow.svg) no-repeat;}
a.link.back { padding-left: 26px;}
a.link.back:after { margin-left: 0; position: absolute; top: 7px; left: 0; transform: rotate(180deg);}

a.link2 { position: relative; display: inline-block; text-transform: uppercase; font-size: 18px; letter-spacing: 0.054em; font-weight: 600; color: #8717FB; text-decoration: none !important; transition:.3s;}
a.link2:hover { color: #310450;}
a.link2:before { content: ''; display: block; position: absolute; bottom: 0; width: 0; height: 2px; left: 0; background: #310450; transition:.3s;}
a.link2:hover:before { width: 100%;}
a.link2:after { content: ''; display: inline-block; margin-left: 7px; width: 18px; height: 10px; background: url(_assets/svg/link-arrow.svg) no-repeat; transition:.3s;}
a.link2:hover:after { margin-left: 11px; background: url(_assets/svg/link-arrow-hover.svg) no-repeat;}

@media (min-width: 768px) and (max-width: 1070px) {
	.btn { padding: 15px 20px;}
}

@media (max-width: 767px) {
	.btn { padding: 15px 20px;}
	
	a.link:before,
	a.link2:before { display: none;}
	a.link:hover,
	a.link2:hover { text-decoration: underline !important;}
	
	a.link + br + a.link { margin-top: 15px;}
}

/****************************************************/
/* Header */
/****************************************************/

#header { 
	position: fixed;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 8000;
    background: #310450;
}
	#header.up {}
	#header.down {}
	#header.has_alert_box {}
	
	#header .header_inner { position: relative;}
	body.admin-bar #header { top: 32px;}
	body.admin-bar #header.has_alert_box {}
	
	@media (max-width: 767px) {
		html { margin-top: 0 !important;}
		#wpadminbar { display: none !important;}
		#header { transition: .5s;}
		#header.menu_open { height: 100%;}
	}
	
.site_gap { position: relative; height: 80px;}
.site_gap.has_alert_box { height: 120px;}
.site_gap.has_submenu { height: 160px;}
.site_gap.has_alert_box.has_submenu { height: 200px;}

	@media (max-width: 767px) {
		.site_gap { height: 60px;}
		.site_gap.has_alert_box { height: 100px;}
		.site_gap.has_submenu { height: 120px;}
		.site_gap.has_alert_box.has_submenu { height: 160px;}
	}

/* Logo */

#header #logo { line-height: 1em; 
	padding-left: 0;
	height: 80px;
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}

	@media (max-width: 767px) {
		#header #logo { height: 60px;}
		#header #logo img { max-height: 31px; width: auto;}
	}

/* Header cta */

.header_cta {
	height: 80px;
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
}
	.header_cta .btn { font-size: 16px !important;}
	
	@media (max-width: 767px) {
		.header_cta { display: none;}
	}

/* Menu */

#menu {}
	#menu nav > ul {
		height: 80px;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	}
	#menu nav > ul > li { display: inline-block;}
	#menu nav ul li a { display: block; font-size: 16px; text-transform: none; color: #fff; cursor: pointer; font-weight: 600; text-decoration: none; transition: .5s;}
	#menu nav > ul > li > a { padding: 10px 0; margin: 0 15px; line-height: 1em; white-space: nowrap; border-bottom: 2px solid #310450;}
	#menu nav > ul > li > a:hover,
	#menu nav > ul > li.hover > a,
	#menu nav > ul > li.current-menu-item > a,
	#menu nav > ul > li.current-menu-parent > a { border-bottom: 2px solid #8717FB;}
	
	#menu nav > ul > li > ul { display: none; position: absolute; top: 80px; left: 0; background: #451D61; width: 100%; padding-left: calc(50% - 610px);}
	#menu nav > ul > li.current-menu-parent > ul {
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: flex-start;
	    align-items: center;
	    height: 80px;
	}
	#menu nav > ul > li > ul > li { display: inline-block;}
	#menu nav > ul > li > ul > li > a { padding: 7px 0; margin: 0 15px; line-height: 1em; font-size: 13px; border-bottom: 2px solid #451D61; opacity: 0.5;}
	#menu nav > ul > li > ul > li > a:hover,
	#menu nav > ul > li > ul > li.current-menu-item > a { border-bottom: 2px solid #8717FB; opacity: 1;}
	#menu nav > ul > li > ul > li:first-child > a { margin-left: 0;}
	/*#menu nav > ul > li > ul > li:first-child > a:before { content:"\f104"; font-family: FontAwesome; display: inline-block; color: #fff; margin-right: 5px;}*/
	
	#menu nav > ul > li.menu-item-has-children:last-child > ul { left: auto; right: -20px;}
	
	@media (min-width: 1071px) and (max-width: 1300px) {
		#menu nav > ul > li > ul { padding: 0 40px;}
		#menu nav > ul > li > ul > li > a { margin: 0 7px; font-size: 13px;}
	}
	@media (min-width: 768px) and (max-width: 1070px) {
		#menu nav > ul > li.current-menu-parent > ul { min-height: 80px; height: auto;}
		#menu nav ul li a { font-size: 14px; line-height: 1em;}
		#menu nav > ul > li > a {  margin: 0 5px; line-height: 1em;}
		#menu nav > ul > li > ul { padding: 0 10px;}
		#menu nav > ul > li > ul > li > a { margin: 10px 7px; font-size: 12px;}
	}
	
/* Mobile Button */

.menu_button { width: 30px; height: 30px; background: url(_assets/svg/menu.svg) no-repeat; cursor: pointer; display: block; position: absolute; top: 50%; margin-top: -15px; right: 20px; z-index: 9999;}
	.menu_button.active { background: url(_assets/svg/menu_full.svg) no-repeat center center;}

/* Mobile Menu */

#mobile_menu { position: relative; display: none; height: calc(100% - 60px);}
	#mobile_menu.has_alert_box { height: calc(100% - 100px);}
	#mobile_menu #menu nav > ul {
		height: auto;
		display: block;
		padding: 0 20px 60px 20px;
	}
	#mobile_menu #menu nav > ul > li { display: block;}
	#mobile_menu #menu nav ul li a { display: inline-block; font-size: 16px; text-transform: none; color: #fff; cursor: pointer; font-weight: 600; text-decoration: none; transition: .5s;}
	#mobile_menu #menu nav > ul > li > a { padding: 10px 0; margin: 5px 0; line-height: 1em; white-space: nowrap; border-bottom: 2px solid #310450;}
	#mobile_menu #menu nav > ul > li > a:hover,
	#mobile_menu #menu nav > ul > li.hover > a,
	#mobile_menu #menu nav > ul > li.current-menu-item > a,
	#mobile_menu #menu nav > ul > li.current-menu-parent > a { border-bottom: 2px solid #8717FB;}
	
	#mobile_menu #menu nav > ul > li > ul { display: none; position: relative; top: 0; left: 0; padding-left: 0;}
	
	#mobile_menu .header_cta { height: auto; display: block; position: absolute; bottom: 0; left: 0; width: 100%; padding: 20px; text-align: center;}
	#mobile_menu .header_cta .btn { width: 100%;}
	
#mobile_sub_menu { position: relative; margin-top: -60px; margin-bottom: 0; background: #451D61; color: #fff;}
	#mobile_sub_menu .submenu_toggle { position: relative; height: 60px; padding-left: 20px;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: flex-start;
	    align-items: center;
	}
	#mobile_sub_menu .submenu_toggle span { display: inline-block; padding-right: 5px; font-size: 14px; line-height: 1em; opacity: 0.7;}
	#mobile_sub_menu .submenu_toggle i { position: absolute; width: 30px; height: 30px; margin-top: -15px; font-size: 30px; line-height: 1em; top: 50%; right: 20px; text-align: center; transition: .3s;}
	#mobile_sub_menu .submenu_toggle.active i { transform: rotate(180deg);}
	
	#mobile_sub_menu ul.sub-menu { display: none; padding: 0 20px 30px 20px;}
	#mobile_sub_menu ul > li { display: block;}
	#mobile_sub_menu ul li a { display: inline-block; font-size: 15px; text-transform: none; color: #fff; cursor: pointer; font-weight: 400; text-decoration: none; transition: .5s;}
	#mobile_sub_menu ul > li > a { padding: 10px 0; margin: 2px 0; line-height: 1em; white-space: nowrap; border-bottom: 2px solid #451D61;}
	#mobile_sub_menu ul > li > a:hover,
	#mobile_sub_menu ul > li.hover > a,
	#mobile_sub_menu ul > li.current-menu-item > a,
	#mobile_sub_menu ul > li.current-menu-parent > a { border-bottom: 2px solid #8717FB;}
	#mobile_sub_menu ul > li:first-child > a:before { content:"\f104"; font-family: FontAwesome; display: inline-block; color: #fff; margin-right: 5px;}
	
	#mobile_sub_menu ul > li > ul { display: none; position: relative; top: 0; left: 0; padding-left: 0;}


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

/* Alerts */

.alert_box { position: relative; display: none; min-height: 40px; background: #FFBF00; color: #240B36;}
	.alert_box .row { position: relative;}
	.alert_box .text { font-size: 15px; line-height: 1.2em; padding: 10px 50px 10px 0;}
	.alert_box a { color: #240B36;}
	.alert_box .alert_close { position: absolute; top: 10px; right: 0; width: 20px; height: 20px; background: url(_assets/svg/close_alert.svg) no-repeat center center;}
	
	@media (max-width: 767px) {
		.alert_box .text { font-size: 12px; line-height: 1.2em; padding: 7px 20px 7px 0;}
		.alert_box .alert_close { top: 50%; margin-top: -10px; right: 20px;}
	}
/****************************************************/
/* Home Builder */
/****************************************************/

h2.entry-h2 { margin-bottom: 20px;}
.entry-title { font-size: 3.33em;}
.single-title { margin-bottom: 20px;}

@media (max-width: 767px) {
	.entry-title { font-size: 2.3em;}
}

/****************************************************/
/* Page Builder */
/****************************************************/

.has_line {}
.has_line:after { content: ''; display: block; width: 77px; height: 10px; background: #8717FB; border-radius: 10px; margin-top: 40px;}

@media (max-width: 767px) {
	.has_line:after { width: 77px; height: 6px; margin-top: 30px;}
}

/* Twinkle */

.detail_twinkle { position: absolute; z-index: 99; display: block; width: 70px; height: 70px; background: url(_assets/svg/twinkle.svg) no-repeat center center; background-size: contain; transition: .3s;
	animation-name: twinkle;
	animation-duration: 7s;
    animation-timing-function: ease-out;
    animation-direction: revert;
    animation-iteration-count: infinite;
    animation-play-state: running;
}

@keyframes twinkle {
	0%, 90% {
		transform: rotate(0deg) scale(1);
	}
	95% {
		transform: rotate(90deg) scale(1.2);
	}
	100% {
		transform: rotate(90deg) scale(1);
	}
}

@media (max-width: 767px) {
	.detail_twinkle { width: 50px; height: 50px;}
	
	@keyframes twinkle {
		0%, 100% {
			transform: rotate(0deg) scale(1);
		}
	}
}

/****************************************************/
/* Page Heading */

.block_heading { position: relative; background: #310450; color: #fff; overflow: hidden;}
	.block_heading:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 160px; background: #fff; z-index:1;}
	.block_heading h1 { text-align: center; padding: 100px 0 80px 0; color: #fff;}
	.block_heading .preview { position: relative; width: 100%; padding-top: 55%; z-index: 9;}
	.block_heading .preview figure { position: absolute; border: none; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; overflow: hidden; border-top-left-radius: 60px; border-bottom-right-radius: 60px;}
	.block_heading .preview figure img { color: #310450; border-color: #310450; border: none; max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	
	.block_heading .preview .detail_01 { position: absolute; display: block; width: 40px; height: 40px; z-index: 9; top: 140px; right: -20px; background: url(_assets/svg/heading_detail_01.svg) no-repeat center bottom; background-size: 100% 100%;}
	.block_heading .preview .detail_02 { position: absolute; display: block; width: 200px; height: 200px; z-index: 1; top: 90px; right: -50px; background: url(_assets/svg/heading_detail_02.svg) no-repeat center bottom; background-size: 100% 100%;}
	.block_heading .preview .detail_03 { position: absolute; display: block; width: 220px; height: 220px; z-index: 1; bottom: 90px; left: -80px; background: url(_assets/svg/heading_detail_03.svg) no-repeat center bottom; background-size: 100% 100%;}
	
	@media (max-width: 767px) {
		.block_heading:after { height: 50px;}
		.block_heading h1 { padding: 70px 0 50px 0;}
		.block_heading .preview figure { border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
		
		.block_heading .preview .detail_01 { width: 16px; height: 16px; top: 30px; right: -8px;}
		.block_heading .preview .detail_02 { width: 60px; height: 60px; top: 15px; right: -15px;}
		.block_heading .preview .detail_03 { width: 80px; height: 80px; bottom: 30px; left: -15px;}
	}

.block_heading_default { position: relative; background: #310450; color: #fff;}
	.block_heading_default .inner { position: relative; width: 100%; padding: 100px 0; z-index: 91;}
	.block_heading_default .inner .parent { text-transform: uppercase; font-size: 15px; letter-spacing: 0.045em; font-weight: 600; line-height: 1em;}
	.block_heading_default .inner h1 { color: #fff;}
	
	.block_heading_default .detail_01 { position: absolute; top: 0; left: 0; width: 70px; height: 190px; background: url(_assets/svg/heading2.svg) no-repeat left top; z-index: 2;}
	.block_heading_default .feature { position: absolute; top: 0; right: 0; width: 35%; height: 100%; z-index: 1;}
	.block_heading_default .feature figure { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; overflow: hidden;}
	.block_heading_default .feature figure img { color: #310450; border-color: #310450; max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	.block_heading_default .feature .overlay {}
	.block_heading_default .feature .detail_02 { position: absolute; top: 0; left: 0; width: 620px; height: 100%; margin-left: -450px; background: url(_assets/svg/heading.svg) no-repeat center bottom; background-size: 100% 100%; z-index: 9;}
	
	@media (max-width: 767px) {
		.block_heading_default .inner { padding: 50px 0;}
		
		.block_heading_default .detail_01 { width: 20px; height: 100px; background-size: contain;}
		.block_heading_default .feature { width: 45%;}
		.block_heading_default .feature .detail_02 { width: 240px; height: 100%; margin-left: -180px;}
	}
	
/****************************************************/
/* Hero */

.block_hero { position: relative; background: #310450; color: #fff; 
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    min-height: 85vh;
    padding-bottom: 100px;
}
	.block_hero:after { content: ''; display: block; width: 100%; height: 100px; background: #fff; z-index: 1; position: absolute; bottom: 0; left: 0;}
	.hero_overlay { position: relative; width: 100%; max-width: 1300px; padding: 100px 30px; z-index: 9;}
	.hero_overlay .hero_box { position: relative; max-width: 770px;}
	.hero_overlay .hero_box h1 { color: #fff;}
	.hero_overlay .hero_box .text { max-width: 500px; padding: 30px 0 40px 0;}
	.hero_image { position: absolute; top: 0; right: 0; width: 50%; height: 100%; z-index: 4; background: no-repeat center center; background-size: cover; border-bottom-left-radius: 20px;}
	
	.block_hero .detail_01 { position: absolute; top: 0; left: 0; width: 70px; height: 300px; background: url(_assets/svg/hero_detail_01.svg) no-repeat left top; z-index: 2;}
	.block_hero .detail_02 { position: absolute; bottom: 100px; left: 50%; margin-left: -130px; width: 230px; height: 90px; background: url(_assets/svg/hero_detail_02.svg) no-repeat left bottom; z-index: 2;}
	.block_hero .detail_twinkle { bottom: 100px; left: 50%; margin: 0 0 -35px -35px; z-index: 6;}
	
	@media (max-width: 767px) {
		.block_hero { display: block; min-height: 330px; padding-bottom: 0;}
		.block_hero:after { display: none;}
		.hero_overlay { position: relative; width: 100%; max-width: 100%; padding: 260px 20px 70px 20px; z-index: 9;}
		.hero_overlay .hero_box { max-width: 500px;}
		.hero_overlay .hero_box h1 { font-size: 2.125em; line-height: 1.2em;}
		.hero_image { position: absolute; top: 0; right: 0; width: 70%; height: 330px; border-bottom-left-radius: 0;}
		
		.block_hero .detail_01 { width: 20px; height: 100px; background-size: contain;}
		.block_hero .detail_02 { bottom: 0; left: auto; right: 0; margin-left: 0; width: 70px; height: 50px; background-size: cover;}
		.block_hero .detail_twinkle { bottom: 0; left: auto; right: 0; margin: 0 0 -25px 0; width: 25px; background-position: left center; background-size: cover;}
	}

/****************************************************/
/* Text Area */

.block_textarea { position: relative; z-index: 9; padding: 100px 0;}
	.block_textarea.white {}
	.block_textarea.light { background: #F7F7F9;}
	.block_textarea .text { padding-top: 15px;}
	.block_textarea .left_box { padding-right: 50px;}
	.block_textarea .right_box { padding-top: 105px;}
	
	.text .tagline { color: #8717FB; font-size: 15px; font-weight: 600; letter-spacing: 0.045em; text-transform: uppercase; line-height: 1em; padding-bottom: 15px;}
	
	@media (max-width: 767px) {
		.block_textarea { padding: 50px 0;}
		.block_textarea .left_box { padding-right: 0;}
		.block_textarea .right_box { padding-top: 30px;}
	}

/* Page Title */

.block_pagetitle { padding-top: 100px;}
	.block_pagetitle + .block_textarea { padding-top: 0; padding-bottom: 100px;}

.block_pagetitle_text { padding-top: 100px;}
	.block_pagetitle_text .text { padding-top: 30px;}

	@media (max-width: 767px) {
		.block_pagetitle { padding-top: 50px;}
		.block_pagetitle + .block_textarea { padding-top: 0; padding-bottom: 50px;}
		.block_pagetitle_text { padding-top: 50px;}
		.block_pagetitle_text .text { padding-top: 30px;}
	}

/****************************************************/
/* Feature Box */

.block_featured_img { position: relative; padding: 100px 0; overflow: hidden;}
	.block_featured_img.light { background: #F7F7F9;}
	
	.block_featured_img .feature_img_box {
		position: relative;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: flex-start;
	    align-items: center;
	}
	.block_featured_img .row.reverse .feature_img_box {
	    justify-content: flex-end;
	}
	.block_featured_img .feature_img_box .preview_inner { width: 100%; max-width: 500px; padding-top: 100%; position: relative; margin-right: 40px;}
	.block_featured_img .row.reverse .feature_img_box .preview_inner { margin-left: 40px; margin-right: 0;}
	.feature_img_box figure { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; overflow: hidden; border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
	.feature_img_box figure img { color: #fff; max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	.feature_img_box .detail_01 { position: absolute; top: 80px; right: -30px; width: 60px; height: 60px; background: url(_assets/svg/img_detail_01.svg) no-repeat; background-size: contain; z-index: 8;}
	.feature_img_box .detail_02 { position: absolute; bottom: 110px; left: -30px; width: 60px; height: 60px; background: url(_assets/svg/img_detail_02.svg) no-repeat; background-size: contain; z-index: 8;}
	.feature_img_box .detail_03 { position: absolute; bottom: 60px; left: -70px; width: 280px; height: 280px; background: url(_assets/svg/img_detail_05.svg) no-repeat; background-size: contain; z-index: 2;}
	
	.feature_img_inner {}
	.feature_img_inner .tagline { color: #8717FB; font-size: 15px; font-weight: 600; letter-spacing: 0.045em; text-transform: uppercase; line-height: 1em; padding-bottom: 15px;}
	.feature_img_inner h2 {}
	.feature_img_inner .text { padding: 30px 0;}
	.feature_img_inner .btn {}
	
	@media (max-width: 767px) {
		.block_featured_img { padding: 20px 0 60px 0;}
		.block_featured_img .feature_img_box { display: block; margin-bottom: 50px;}
		.block_featured_img .feature_img_box .preview_inner { width: 100%; max-width: 100%; padding-top: 120%; margin-right: 0;}
		.block_featured_img .row.reverse .feature_img_box .preview_inner { margin-left: 0; margin-right: 0;}
	}
	
/****************************************************/
/* Anchored Feature */

.sticky_nav { position: -webkit-sticky; position: sticky; top: 80px; background: #fff; z-index: 991;}
	
	.sticky_nav.has_submenu { top: 160px;}
	.sticky_nav.has_alert_box { top: 120px;}
	.sticky_nav.has_alert_box.has_submenu { top: 200px;}
	
	body.admin-bar .sticky_nav { top: 112px;}
	body.admin-bar .sticky_nav.has_submenu { top: 192px;}
	body.admin-bar .sticky_nav.has_alert_box { top: 152px;}
	body.admin-bar .sticky_nav.has_alert_box.has_submenu { top: 232px;}
	
	.sticky_nav.hider { position: relative;}
	.sticky_nav .anchors {
		height: 100px;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: flex-start;
	    align-items: center;
	}
	.sticky_nav .anchors .btn { font-size: 15px; letter-spacing: 0.045em; text-transform: uppercase; color: #B5A4C0; background: none; border: 1px solid #B5A4C0; padding: 15px 20px; border-radius: 50px; margin-right: 10px;}
	.sticky_nav .anchors .anchor_pink.active .btn { color: #fff; background: #FF4062; border-color: #FF4062;}
	.sticky_nav .anchors .anchor_purple.active .btn { color: #fff; background: #8717FB; border-color: #8717FB;}
	.sticky_nav .anchors .anchor_blue.active .btn { color: #fff; background: #14BDEB; border-color: #14BDEB;}
	

.block_anchor { position: relative; padding: 150px 0; overflow: hidden;}
	
	.block_anchor .pill_btn { font-style: normal; margin-bottom: 20px; border-radius: 50px; font-size: 12px !important; text-transform: uppercase;}
	.block_anchor .btn.pill_pink { color: #fff; background: #FF4062; border-color: #FF4062;}
	.block_anchor .btn.pill_purple { color: #fff; background: #8717FB; border-color: #8717FB;}
	.block_anchor .btn.pill_blue { color: #fff; background: #14BDEB; border-color: #14BDEB;}
	
	.block_anchor h2 {}
	.block_anchor .text { padding: 30px 0 25px 0;}
	.links {}
	.links li { display: block; padding: 5px 0;}
	
	.block_anchor.block_pink a.link2 { color: #FF4062;}
	.block_anchor.block_pink a.link2:hover { color: #310450;}
	.block_anchor.block_pink a.link2:after { background: url(_assets/svg/link-arrow-pink.svg) no-repeat;}
	.block_anchor.block_pink a.link2:hover:after { background: url(_assets/svg/link-arrow-hover.svg) no-repeat;}
	
	.block_anchor.block_purple a.link2 { color: #8717FB;}
	.block_anchor.block_purple a.link2:hover { color: #310450;}
	.block_anchor.block_purple a.link2:after { background: url(_assets/svg/link-arrow.svg) no-repeat;}
	.block_anchor.block_purple a.link2:hover:after { background: url(_assets/svg/link-arrow-hover.svg) no-repeat;}
	
	.block_anchor.block_blue a.link2 { color: #14BDEB;}
	.block_anchor.block_blue a.link2:hover { color: #310450;}
	.block_anchor.block_blue a.link2:after { background: url(_assets/svg/link-arrow-blue.svg) no-repeat;}
	.block_anchor.block_blue a.link2:hover:after { background: url(_assets/svg/link-arrow-hover.svg) no-repeat;}

	/* Preview Feature Image */

	.preview_feature_img {
		position: relative;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: flex-end;
	    align-items: center;
	}
	.preview_feature_img .preview_inner { width: 100%; max-width: 500px; padding-top: 100%; position: relative; margin-left: 40px;}
	.preview_feature_img figure { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; overflow: hidden; border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
	.preview_feature_img figure img { color: #fff; max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	.preview_feature_img .detail_01 { position: absolute; top: 80px; left: -30px; width: 60px; height: 60px; background: url(_assets/svg/img_detail_01.svg) no-repeat; background-size: contain; z-index: 8;}
	.preview_feature_img .detail_02 { position: absolute; top: 240px; right: -30px; width: 60px; height: 60px; background: url(_assets/svg/img_detail_02.svg) no-repeat; background-size: contain; z-index: 8;}
	.preview_feature_img .detail_03 { position: absolute; top: 80px; right: -70px; width: 280px; height: 280px; background: url(_assets/svg/img_detail_03.svg) no-repeat; background-size: contain; z-index: 2;}
	.preview_feature_img .detail_04 { position: absolute; bottom: -60px; right: 20px; width: 280px; height: 280px; background: url(_assets/svg/img_detail_04.svg) no-repeat; background-size: contain; z-index: 2;}

	@media (max-width: 767px) {
		.block_anchor + .block_anchor { padding-top: 30px;}
		.sticky_nav { position: relative; top: 0; display: none;}
		.block_anchor { padding: 70px 0;}
		.block_anchor h2.h1 { font-size: 2.125em; line-height: 1.2em;}
		.block_anchor .text { padding: 30px 0 25px 0;}
		.block_anchor .preview_feature_img { display: block; margin-bottom: 30px;}
		.preview_feature_img { display: block; margin-bottom: 50px;}
		.preview_feature_img .preview_inner { width: 100%; max-width: 100%; padding-top: 120%; margin-left: 0;}
	}

/****************************************************/
/* Program Feed */

.block_program_feed { position: relative; padding: 100px 0;}
	.block_program_overview + .block_program_feed.style_grid { padding-top: 0;}
	.block_program_feed .intro { padding-bottom: 50px; text-align: center;}
	.block_program_feed h2.headline {}
	.block_program_feed .text.tagline { text-align: center; width: 100%; max-width: 500px; margin: 0 auto; padding-top: 30px;}
	
	/* List */
	
	.program_list { position: relative; margin: 0 auto; width: 100%; max-width: 800px;}
	.program_list li {
		position: relative;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: space-between;
	    align-items: center;
	    padding: 30px;
	    border-top-right-radius: 20px; border-bottom-left-radius: 20px;
	    margin-bottom: 10px;
	}
	.program_list li h3 { font-size: 1.2em;}
	.program_list.light li { background: #F7F7F9;}
	.program_list.dark li { background: #310450; color: #fff;}
	.program_list.dark li h3 { color: #fff;}
	
	/* Grid */
	
	.program_grid { position: relative; width: calc(100% + 40px); margin-left: -20px;}
	.program_grid .item { position: relative; margin: 20px;}
	.program_grid .item .detail { padding: 20px 20px 0 20px; border-top-left-radius: 20px; border-top-right-radius: 20px;}
	.program_grid .item.item_1 .detail { background: url(_assets/svg/promo_1.svg) no-repeat center top; background-size: contain;}
	.program_grid .item.item_2 .detail { background: url(_assets/svg/promo_2.svg) no-repeat center bottom; background-size: contain;}
	.program_grid .item.item_3 .detail { background: url(_assets/svg/promo_3.svg) no-repeat center top; background-size: contain;}
	.program_grid .item .preview { position: relative; padding-top: 75%; overflow: hidden; border-top-left-radius: 10px; border-top-right-radius: 10px;}
	.program_grid .item .preview .img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: no-repeat center center; background-size: cover; transition: .5s;}
	.program_grid .item:hover .preview .img { transform: scale(1.05);}
	.program_grid .inner { padding: 30px 20px 20px 20px;}
	.program_grid a { text-decoration: none !important;}
	.program_grid .inner h3 {}
	.program_grid .inner h4 { padding-top: 4px;}
	.program_grid .inner .text { padding: 20px 0; color: rgba(50, 4, 80, 0.8); font-weight: 400;}
	
	@media (max-width: 767px) {
		.block_program_feed { padding: 70px 0;}
		.block_program_overview + .block_program_feed.style_grid { padding-top: 0;}
		.block_program_feed .intro { padding-bottom: 30px; text-align: center;}
		
		.program_list li { justify-content: center; padding: 30px 20px;}
		.program_list li h3 { font-size: 1.2em; padding-bottom: 15px;}
		.program_list li .btn { padding: 15px; display: block; width: 100%;}
		
		.block_program_feed.style_grid { padding-bottom: 40px;}
		.program_grid { width: 100%; margin-left: 0;}
		.program_grid .item { margin: 20px 0;}
		.program_grid .item .preview { padding-top: 100%;}
	}

/****************************************************/
/* Schedule Embed */

.block_schedule_embed { position: relative; padding: 100px 0;}
	.block_schedule_embed h2 { margin-bottom: 30px;}
	.block_schedule_embed .text { padding: 15px 0;}
	.block_schedule_embed .terms { font-size: 13px; line-height: 1.3em;}
	.schedule_desktop { margin: 30px 0;}
	.schedule_mobile { margin: 30px 0;}
	
	@media (max-width: 767px) {
		.block_schedule_embed { padding: 70px 0;}
		.block_schedule_embed h2 { margin-bottom: 20px;}
		.schedule_desktop { margin: 15px 0;}
		.schedule_mobile { margin: 15px 0;}
	}

/****************************************************/
/* Schedule Toggle */

.block_schedule_toggle { position: relative; padding: 100px 0;}
	.block_schedule_toggle h2 { text-align: center; padding-bottom: 20px;}
	.block_schedule_toggle .intro { position: relative; text-align: center; padding: 50px 40px;}
	
	/* Toggle Items */
	
	.toggle_item { position: relative; display: block; background: #F7F7F9; border-bottom-left-radius: 20px; border-top-right-radius: 20px; padding: 40px 60px 0 40px; margin: 10px;}
	.toggle_item .title { position: relative; padding-bottom: 40px; cursor: pointer;}
	.toggle_item .title h3 { font-size: 1.2em;}
	.toggle_item .title span { position: absolute; display: block; top: 5px; right: -20px; width: 19px; height: 19px; background: url(_assets/svg/toggle.svg) no-repeat center center; transition: .3s;}
	.toggle_item .title .tag { font-style: italic;}
	.toggle_item .toggle { display: none; padding-bottom: 40px;}
	.toggle_item .text {}
	.toggle_item .btn { display: block; width: 100%; margin-top: 30px;}
	.toggle_item.active .title span { transform: rotate(45deg);}
	
	/* Schedule tabs */
	
	.tab_schedules { width: 100%;}
	.tab_schedules .tab_list { padding: 0;}
	.tab_schedules .tab_list li { margin: 0; width: 50%;}
	.tab_schedules .tab_list li a { font-size: 20px; text-transform: none; letter-spacing: normal; font-weight: 400; color: #B5A4C0; border: none; border-radius: 0; padding: 15px 0; transition: .5s;}
	.tab_schedules .tab_list li a.current { color: #8717FB; background: none; border-color: #8717FB; border-bottom: 2px solid;}
	
	@media (max-width: 767px) {
		.block_schedule_toggle { padding: 70px 0;}
		.block_schedule_toggle .intro { padding: 50px 0;}
		
		/* Toggle Items */
		
		.toggle_item { padding: 25px 50px 0 25px; margin: 5px 0;}
		.toggle_item .title { padding-bottom: 25px;}
		.toggle_item .title h3 { font-size: 1.2em;}
		.toggle_item .title span { right: -30px;}
		.toggle_item .toggle { padding-bottom: 25px;}
	}

/****************************************************/
/* FAQ */

.block_faq { position: relative; padding: 100px 0;}
	.block_faq h2 { text-align: center; padding-bottom: 50px;}
	.block_faq .faqs { position: relative;}
	
	.block_faq .tagline { padding-top: 50px; text-align: center;}
	
	/* FAQ Page */
	
	.block_faq_page { position: relative; padding-top: 100px;}
	.block_faq_page h1 { font-size: 3em; text-align: center;}
	.tab_item .cta { padding: 10px;}
	
	.tab_list { position: relative; padding: 50px 0;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	}
	.tab_list li { display: inline-block; margin: 0 7px;}
	.tab_list li a { display: block; text-align: center; font-size: 15px; text-transform: uppercase; text-decoration: none !important; line-height: 1em; letter-spacing: 0.045em; font-weight: 600; color: #B5A4C0; border: 2px solid #B5A4C0; border-radius: 50px; padding: 15px 30px; transition: .5s;}
	.tab_list li a.current { color: #fff; background: #8717FB; border-color: #8717FB;}
	
	@media (max-width: 767px) {
		.block_faq { padding: 70px 0;}
		.block_faq h2 { padding-bottom: 30px;}
		.block_faq .tagline { padding-top: 30px;}
		
		.block_faq_page { padding-top: 50px;}
		.block_faq_page h1 { font-size: 2.125em; line-height: 1.2em;}
		.tab_item .cta { padding: 10px 0;}
		
		.tab_list { padding: 30px 0;}
		.tab_list li { margin: 5px;}
		.tab_list li a { font-size: 12px; padding: 14px 20px;}
	}

/****************************************************/
/* Program Overview */

.block_program_overview { position: relative; padding: 100px 0; overflow: hidden;}
	.block_program_overview.white {}
	.block_program_overview.light { background: #F7F7F9;}
	
	.block_program_overview h5.tagline { font-size: 15px; color: #8717FB; text-transform: uppercase; letter-spacing: 0.04em; padding-bottom: 15px; display: block;}
	.block_program_overview h1.title {}
	.block_program_overview .text { padding: 30px 0 0 0;}
	.block_program_overview .video_box,
	.block_program_overview #video_frame { margin-top: 60px;}
	.block_program_overview .video_box i {}
	
	.video_box { position: relative; width: 100%; padding-top: 56%; background: #240B36 no-repeat center center; background-size: cover; border-radius: 20px;}
	.video_box i { position: absolute; top: 50%; left: 50%; width: 100px; height: 64px; background: #8717FB; color: #fff; text-align: center; border-radius: 20px; font-size: 30px; line-height: 1em; border-radius: 10px; margin: -32px 0 0 -50px; z-index: 9; transition: .5s;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	}
	.video_box:hover i { background: #310450; color: #fff;}
	.video_box .overlay { opacity: 1; background: rgba(36, 11, 54, 0.5); border-radius: 20px;}
	
	.block_program_overview.type_split_day { padding-bottom: 0;}
	.block_program_overview.type_split_day:after { content: ''; display: block; position: absolute; bottom: -2px; left: 0; width: 100%; height: 100px; background: #fff;}
	.split_boxes { position: relative; z-index: 9; padding-top: 130px;}
	.split_boxes .split { position: relative; height: 100%; background: #fff; border: 1px solid #8717FB; padding: 50px; text-align: center; border-bottom-right-radius: 20px;}
	.split_boxes .split.half { margin-right: 10px;}
	.split_boxes .split.full { margin-left: 10px;}
	.split_boxes .split h3 {}
	.split_boxes .split .text { padding-bottom: 40px;}
	.split_boxes .split .link {}
	
	@media (max-width: 767px) {
		.block_program_overview { padding: 20px 0;}
		.block_program_overview.type_none { padding-top: 50px;}
		.block_program_overview .video_box,
		.block_program_overview #video_frame { margin-top: 40px;}
		
		.video_box { border-radius: 10px;}
		.video_box i { width: 80px; height: 50px; border-radius: 10px; font-size: 24px; line-height: 1em; border-radius: 10px; margin: -25px 0 0 -40px;}
		.video_box .overlay { border-radius: 10px;}
		
		.block_program_overview.type_split_day { padding-bottom: 0;}
		.block_program_overview.type_split_day:after { height: 70px;}
		.split_boxes { padding-top: 50px;}
		.split_boxes .split { height: auto; padding: 30px; margin-bottom: 20px;}
		.split_boxes .split.half { margin-right: 0;}
		.split_boxes .split.full { margin-left: 0;}
		.split_boxes .split .text { padding-bottom: 40px;}
	}

/****************************************************/
/* Location Map */

.block_locaiton_map { position: relative; padding-top: 100px;}
	.block_locaiton_map h2 { max-width: 400px;}
	.block_locaiton_map .text { max-width: 400px; padding: 30px 0;}

	.map_wrap { position: relative; margin: 45px; z-index: 9;}
	.map_wrap #map { background: #F7F7F9; height: 57vh; min-height: 600px;}
	
	.map_wrap #zoombuttons { position: absolute; right: 18px; top: 18px; box-shadow: 0px 0px 4px rgba(0,0,0,0.15); }
	.map_wrap #zoombuttons button { display: flex; width: 40px; height: 40px; justify-content: center; align-items: center; border: 0; border-bottom: 1px solid #cfcbc1; background: #fff url(_assets/svg/map_plus.svg) center center no-repeat; }
	.map_wrap #zoombuttons button:last-of-type { border-bottom: 0; background-image: url(_assets/svg/map_minus.svg); margin-top: 3px;}
	.map_wrap #zoombuttons button:active { background-color: #efefef; }
	
	.map_wrap #locationinfo { top: 50px; bottom: 50px; right: 80px; width: 400px;}
	.map_wrap #locationinfo { display: none; z-index: 10; overflow-y: auto; flex-direction: column; justify-content: space-between; padding: 35px; background: #fff; border: 1px solid #C1B3CA; position: absolute; border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
	.map_wrap #locationinfo button.close { position: absolute; top: 10px; right: 10px; opacity: 1; width: 20px; height: 20px; background: #fff url(_assets/svg/close_alert.svg) center center no-repeat; }
	.map_wrap #locationinfo .name { padding-bottom: 20px;}
	.map_wrap #locationinfo .address { margin-bottom: 10px; }
	.map_wrap #locationinfo .programs { margin-top: 20px;}
	.map_wrap #locationinfo .programs p { font-size: 15px; text-transform: uppercase; letter-spacing: 0.045em; font-weight: 600; padding-bottom: 5px;}
	.map_wrap #locationinfo .programs ul {}
	.map_wrap #locationinfo .programs li { display: block; padding: 3px 0;}
	.map_wrap #locationinfo .programs li a { font-weight: 400;}
	
	/* Map Page */
	
	.block_heading_map { position: relative; background: #310450;}
	.block_heading_map:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 100px; background: #fff; z-index:1;}
	.block_heading_map h1 { text-align: center; padding: 100px 0 35px 0; color: #fff;}
	
	.block_heading_map .map_wrap #map { height: 660px;}
	
	@media (max-width: 767px) {
		.block_locaiton_map { padding: 70px 0 50px 0;}
		.block_locaiton_map h2 { max-width: 100%;}
		.block_locaiton_map .text { max-width: 100%;}
		.map_wrap { margin: 20px;}
		.map_wrap #map { height: 57vh; min-height: 500px;}
		.map_wrap #locationinfo { top: 10px; bottom: 10px; right: 10px; width: calc(100% - 20px);}
		.map_wrap #locationinfo { padding: 30px;}
		.block_heading_map:after { height: 70px;}
		.block_heading_map h1 { padding: 70px 0 30px 0;}
		.block_heading_map .map_wrap #map { height: 500px;}
	}

/****************************************************/
/* Location Carousel */

.block_location_carousel { position: relative; padding: 100px 0;}
	.block_single_posttype + .block_location_carousel { padding-top: 0;}
	.block_location_carousel h3 { margin-bottom: 40px;}
	
	.location_carousel { position: relative; /*margin-left: calc(50% - 620px);*/}
	.location_carousel .carousel_slider {}
	
	.block_location_carousel .panel {}
	.block_location_carousel .location_grid .panel { padding-right: 30px;}
	.block_location_carousel .panel .map_overlay { position: relative; background: #F6F6F4;}
	.block_location_carousel .panel .map_overlay:after { content: ''; display: block; position: absolute; top: 50%; left: 50%; width: 40px; height: 40px; margin: -20px 0 0 -20px; background: url(_assets/img/ajax-loader.gif) no-repeat center center; opacity: 0.3; z-index: 1;}
	.block_location_carousel .panel .map_overlay .overlay { opacity: 1; background: none; z-index: 99;}
	.block_location_carousel .panel .map_overlay .overlay i { position: absolute; z-index: 100; width: 30px; height: 30px; background: url(_assets/svg/pin.svg) no-repeat; top: 50%; left: 50%; margin: -30px 0 0 -15px;}
	.block_location_carousel .panel .map_preview { position: relative; z-index: 9; display: block; height: 230px;}
	.block_location_carousel .panel .static_map { position: relative; z-index: 2; display: block; background: no-repeat center center; background-size: cover; height: 230px;}
	.block_location_carousel .panel h4 { padding: 10px 0;}
	.block_location_carousel .panel .text { margin: 40px 0 20px 0;}
	
	@media (max-width: 767px) {
		.block_location_carousel { padding: 70px 0; overflow: hidden;}
		.block_single_posttype + .block_location_carousel { padding-top: 0;}
		.block_location_carousel h3 { margin-bottom: 30px;}
		
		.location_carousel { margin: 0 20px; /*width: 600px;*/}
		.block_location_carousel .panel .map_preview { height: 180px;}
		.block_location_carousel .panel .static_map { height: 180px;}
		.block_location_carousel .panel .text { margin-top: 30px;}
		
		/*.location_carousel .lSPrev,
		.location_carousel .lSNext { display: none;}*/
	}

/****************************************************/
/* Location Tiles */

.block_Location_tiles { position: relative; background: #F7F7F9; padding: 40px 0 100px 0;}
	.block_Location_tiles:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 150px; background: #fff;}
	.locaiton_tile { position: relative; z-index: 9; display: block; height: calc(100% - 20px); margin: 10px; background: #fff; border: 1px solid #C1B4CB; padding: 35px; border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
	.locaiton_tile h3 { font-size: 1.7em; padding-bottom: 20px;}
	.locaiton_tile .text {}
	.locaiton_tile .link {}
	.locaiton_tile .programs { padding-top: 20px;}
	.locaiton_tile .programs p { display: block;  text-transform: uppercase; font-size: 15px; letter-spacing: 0.045em; color: #310450; font-weight: 600; padding-bottom: 15px;}
	.locaiton_tile .programs a { font-weight: 400;}
	
	@media (max-width: 767px) {
		.block_Location_tiles { padding: 10px 0 100px 0;}
		.block_Location_tiles:before { height: 80px;}
		.locaiton_tile { height: calc(100% - 20px); margin: 10px 0; padding: 30px;}
	}

/****************************************************/
/* Team */

.block_team { position: relative; background: #F7F7F9; padding: 100px 0 60px 0;}
	.block_team h2 { text-align: center; padding-bottom: 60px;}
	
	.team_expander {}
	.team_member { position: relative; margin: 10px; height: calc(100% - 20px);}
	.team_member { position: relative; cursor: pointer; transition:.3s; text-align: center;}
	.team_member .preview { position: relative; width: 100%; padding: 20px 20px 0 20px; border-top-left-radius: 20px; border-top-right-radius: 20px;}
	.team_member.pink .preview { background: url(_assets/svg/team_pink.svg) center top no-repeat; background-size: cover;}
	.team_member.purple .preview { background: url(_assets/svg/team_purple.svg) center bottom no-repeat; background-size: cover;}
	.team_member.yellow .preview { background: url(_assets/svg/team_yellow.svg) center top no-repeat; background-size: cover;}
	.team_member.blue .preview { background: url(_assets/svg/team_blue.svg) center bottom no-repeat; background-size: cover;}
	.team_member .preview .inner { position: relative; width: 100%; padding-top: 100%; overflow: hidden; border-top-left-radius: 20px; border-top-right-radius: 20px;}
	.team_member .preview .inner figure { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 5; overflow: hidden; transition:.5s;}
	.team_member .preview .inner figure img { color: #fff; max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	.team_member .info { padding: 20px 0;}
	.team_member .info h3 { line-height: 1.1em;}
	.team_member .info .pronoun { display: block; font-size: 12px; line-height: 1em; padding: 5px 0 10px 0;}
	.team_member .info .position { display: block; font-size: 16px; line-height: 1.2em;}
	.team_member:hover .preview .inner figure { transform: scale(1.05);}
	
	.team_member:after { content: ''; display: block; position: absolute; bottom: -10px; left: 50%; width: 0; height: 3px; transition:.3s;}
	.team_member.active:after { width: 100%; left: 0;}
	.team_member.pink.active:after { background: #FF4062;}
	.team_member.purple.active:after { background: #8717FB;}
	.team_member.yellow.active:after { background: #FFBF00;}
	.team_member.blue.active:after { background: #14BDEB;}
	
	.content_filler { position: relative; height: 0;}
	.content_filler.active { background: #fff; height: auto; margin-bottom: 40px; transition:.5s;}
	.content_filler .filler_wrap { position: relative; text-align: center; padding: 80px 20px; width: 100%; max-width: 1200px; margin: 0 auto; transition:.5s;}
	.content_filler h3.title { padding-bottom: 0;}
	.content_filler .pronoun { display: block; font-size: 12px; line-height: 1em; padding: 10px 0;}
	.content_filler .position { display: block; font-size: 16px; line-height: 1.2em;}
	.content_filler .text { padding-top: 20px; max-width: 800px; margin: 0 auto;}
	
	.content_filler .close_expander {
		position: absolute;
		width: 40px;
		height: 40px;
		top: 40px;
		right: 0;
		cursor: pointer;
		background: url(_assets/svg/team_close.svg) center center no-repeat; background-size: contain;
	}
	
	@media (max-width: 767px) {
		.block_team { padding: 100px 0 60px 0;}
		.block_team h2 { padding-bottom: 60px;}
		.content_filler .filler_wrap { padding: 30px 20px;}
		.content_filler .close_expander { width: 20px; height: 20px; top: 20px; right: 15px;}
	}

/****************************************************/
/* Testimonials */

.block_testimonail { position: relative; padding: 100px 0 60px 0;}
	.block_testimonail .cycle-slideshow { width: 100%; position: relative;}
	.block_testimonail .testimonials { display: block; position: relative; width: 100%; height: 100%;}
	.block_testimonail .testimonials .preview { position: relative; width: 300px; height: 300px; background: no-repeat center center; background-size: cover; border-radius: 50%;}
	.block_testimonail .testimonials .preview .detail_twinkle { top: 20px; right: 0;}
	.block_testimonail .quote { padding: 40px 0;}
	.block_testimonail .quote .text { font-size: 1.4em; padding-bottom: 30px; line-height: 1.5em;}
	.block_testimonail .quote .author { font-size: 16px; font-weight: 600; line-height: 1.1em; padding-bottom: 4px;}
	.block_testimonail .quote .role { font-size: 16px; line-height: 1.1em;}
	
	.block_testimonail .detail_01 { position: absolute; top: 0; left: 0; width: calc(50% - 450px); height: 100%; background: url(_assets/svg/testimonial_bg.svg) right center no-repeat; background-size: cover;}
	
	.block_testimonail .testimonial_pager { margin-top: 30px;}
	.block_testimonail .testimonial_pager .testimonial-cycle-pager {}
	.block_testimonail .testimonial_pager .testimonial-cycle-pager span { background: #F7F7F9; display: inline-block; width: 75px; height: 8px; border-radius: 10px; margin-right: 15px; color: #fff; content: ''; cursor: pointer;}
	.block_testimonail .testimonial_pager .testimonial-cycle-pager span.cycle-pager-active { background: #8717FB;}
	
	@media (max-width: 767px) {
		.block_testimonail { padding: 70px 0 50px 0;}
		.block_testimonail .testimonials .preview { width: 200px; height: 200px; margin: 0 auto;}
		.block_testimonail .testimonials .preview .detail_twinkle { top: 15px; right: -5px;}
		.block_testimonail .quote { padding: 40px 0;}
		.block_testimonail .quote .text { font-size: 1.25em; line-height: 1.5em;}
		
		.block_testimonail .detail_01 { position: absolute; top: 0; left: 0; width: 100%; height: 150px; background: url(_assets/svg/testimonial_bg_mob.svg) center bottom no-repeat; background-size: cover;}
		
		.block_testimonail .testimonial_pager { margin-top: 15px;}
		.block_testimonail .testimonial_pager .testimonial-cycle-pager span { width: 50px; height: 8px; margin-right: 10px;}
	}

/****************************************************/
/* Video */

.block_video { position: relative; background: #F7F7F9; padding: 100px 0;}
	.block_video h4 { max-width: 500px; text-align: center; margin: 0 auto; padding-bottom: 50px;}
	
	@media (max-width: 767px) {
		.block_video { padding: 70px 0;}
		.block_video h4 { padding-bottom: 30px;}
	}

/****************************************************/
/* Gallery */

.block_gallery { position: relative; padding: 80px 0;}
	
	.block_textarea.white + .block_gallery { padding-top: 0;}
	.block_gallery + .block_textarea.white { padding-top: 0;}
	
	.gallery_grid {
		display: flex;
		flex-direction: row;
	    flex-wrap: nowrap;
	    justify-content: space-between;
	    align-items: flex-start;
	}
	.gallery_grid .col.col_1,
	.gallery_grid .col.col_4 { width: 33%;}
	.gallery_grid .col.col_2,
	.gallery_grid .col.col_3 { width: 16.5%;}
	.gallery_grid .col .item { margin: 10px;}
	.gallery_grid .col .item .preview { position: relative; padding-top: 100%; background: no-repeat center center; background-size: cover;}
	.gallery_grid .col.small .item { margin-bottom: 20px;}
	.gallery_grid .col.col_1 .item .preview { border-bottom-left-radius: 60px;}
	.gallery_grid .col.col_4 .item .preview { border-top-right-radius: 60px;}
	
	@media (max-width: 767px) {
		.block_gallery { padding: 40px 0;}
		.block_textarea.white + .block_gallery { padding-top: 0;}
		.block_gallery + .block_textarea.white { padding-top: 0;}
		.gallery_grid { flex-wrap: wrap;}
		.gallery_grid .col.col_1 { order: 3;}
		.gallery_grid .col.col_2 { order: 4;}
		.gallery_grid .col.col_3 { order: 1;}
		.gallery_grid .col.col_4 { order: 2;}
		.gallery_grid .col.col_1,
		.gallery_grid .col.col_4 { width: 66%;}
		.gallery_grid .col.col_2,
		.gallery_grid .col.col_3 { width: 33%;}
		.gallery_grid .col .item { margin: 2px;}
		.gallery_grid .col.small .item { margin-bottom: 4px;}
	}

/****************************************************/
/* Call to Action */

.block_cta { position: relative; padding: 100px 0; overflow: hidden;}
	.block_schedule_embed + .block_cta { padding-top: 0;}
	.block_program_feed + .block_cta { padding-top: 0;}
	.block_cta .cta_box { position: relative; background: #F7F7F9; padding: 100px 0; border-top-left-radius: 60px; border-bottom-right-radius: 60px;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	}
	.block_cta .cta_box .inner { position: relative; text-align: center; width: 100%; max-width: 570px;}
	.block_cta .cta_box h3.headline {}
	.block_cta .cta_box .text { padding: 30px 0;}
	.block_cta .cta_box .buttons {
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: center;
	    align-items: center;
	}
	.block_cta .cta_box .buttons .btn { margin: 10px;}
	.block_cta .cta_box .detail_01 { position: absolute; top: 0; left: 0; margin: 60px 0 0 -50px; width: 80px; height: 250px; background: url(_assets/svg/detail_cta1.svg) right center no-repeat; background-size: contain; z-index: 2;}
	.block_cta .cta_box .detail_02 { position: absolute; bottom: 0; right: 0; margin: 0 -40px -40px 0; width: 140px; height: 140px; background: url(_assets/svg/detail_cta2.svg) right center no-repeat; background-size: contain; z-index: 8;}
	
	@media (max-width: 767px) {
		.block_cta { padding: 0;}
		.block_cta .cta_box { display: block; width: calc(100% + 40px); margin-left: -20px; padding: 70px 20px 50px 20px; border-top-left-radius: 0; border-bottom-right-radius: 0;}
		.block_cta .cta_box .inner { max-width: 100%;}
		.block_cta .cta_box .buttons .btn { margin: 5px;}
	}

/****************************************************/
/* Call to Action 2 */

.block_cta_2 { position: relative; padding: 100px 0; background: #310450; color: #fff;}
	.block_cta_2 .cta_box { height: 100%; padding-right: 40px;}
	.block_cta_2 .cta_box h2 { color: #fff;}
	.block_cta_2 .cta_box .text { padding: 30px 0;}
	.block_cta_2 .images { width: 100%;
		display: flex;
		flex-direction: row;
	    flex-wrap: wrap;
	    justify-content: space-between;
	    align-items: center;
	}
	.block_cta_2 .images .img { background: no-repeat center center; background-size: cover;}
	.block_cta_2 .images.items_1 .img { width: 100%; padding-top: 70%;}
	.block_cta_2 .images.items_2 .img { width: calc(50% - 10px); padding-top: 55%;}
	
	@media (max-width: 767px) {
		.block_cta_2 { padding: 70px 0;}
		.block_cta_2 .cta_box { padding-right: 0;}
		.block_cta_2 .images { margin-top: 50px;}
	}

/****************************************************/
/* Classes / Camps / After School */

.block_single_posttype { position: relative; padding: 100px 0;}
	.block_single_posttype .text { padding-right: 60px;}
	
	@media (max-width: 767px) {
		.block_single_posttype { padding: 50px 0;}
		.block_single_posttype .text { padding-right: 0;}
	}

/****************************************************/
/* Enrol Boxes */

.enrol_box { position: relative; padding: 40px; background: #F7F7F9; border-top-right-radius: 20px; border-bottom-left-radius: 20px;}
	.enrol_group:first-child { padding-bottom: 50px;}
	.enrol_group h3 { padding-bottom: 30px;}
	.enrol_group .text {}
	.enrol_group h4 { padding: 15px 0; line-height: 1em; color: #8717FB;}
	.enrol_group .small { font-size: 14px; line-height: 1.4em;}
	.enrol_group .btn { display: block; margin-top: 20px;}
	
	.enrol_group2 h3 { padding-bottom: 20px;}
	.enrol_group2 h3.details { padding-top: 30px;}
	.enrol_group2 .pricing { padding-bottom: 10px;}
	.enrol_group2 .term { font-weight: 600; }
	.enrol_group2 h4 { padding: 10px 0; color: #8717FB;}
	.enrol_group2 .small { font-size: 14px; line-height: 1.4em;}
	.enrol_group2 .btn { display: block; margin-top: 20px;}
	
	.full_terms { font-size: 14px; line-height: 1.4em; padding: 40px 0;}
	
	@media (max-width: 767px) {
		.enrol_box { margin-top: 40px; padding: 30px;}
	}

/****************************************************/
/* Defaults */

.block_single { position: relative; padding: 100px 0;}
	.block_single .meta { padding-bottom: 30px; font-size: 15px; line-height: 1.2em; font-weight: 600; color: #B5A4C0;}
	.block_single .meta a { color: #B5A4C0;}
	.block_single .meta a:hover {}

	@media (max-width: 767px) {
		.block_single { padding: 50px 0;}
	}

/* Blog */

.block_blog { position: relative; padding: 100px 0;}
	
	.post_block { position: relative; width: calc(100% + 40px); margin-left: -20px;}
	.post_block a { text-decoration: none !important;}
	.post_block .post { position: relative; margin: 20px;}
	.post_block .post .preview { position: relative; padding-top: 60%; background: #F7F7F9; border-top-right-radius: 20px; border-bottom-left-radius: 20px;}
	.post_block .post .preview figure { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; overflow: hidden; transition:.5s; border-top-right-radius: 20px; border-bottom-left-radius: 20px;}
	.post_block .post .preview figure img { max-width: none; max-height: none; height: 100%; width: 100%; object-fit: cover;}
	.post_block .post .preview img { color: #F7F7F9;}
	.post_block .post .details { position: relative; background: #fff; z-index: 9; width: 100%; padding: 30px 0; transition:.5s;}
	.post_block .post .details .date { text-transform: uppercase; display: block; font-weight: 600; font-size: 14px; color: #B5A4C0; padding-bottom: 0; transition:.5s;}
	.post_block .post .details h3 { color: #310450; line-height: 1.2em; margin: 0; padding: 0;}
	.post_block .post .details .text { padding: 10px 0; font-size: 16px; line-height: 1.5em; font-weight: 400; color: #310450;}
	.post_block .post .details .read_more { display: inline-block; font-size: 20px; font-weight: 600; color: #8717FB;}
	.post_block .post:hover .details h3 { color: #8717FB;}
	
	@media (max-width: 767px) {
		.block_blog { padding: 50px 0;}
	}
	
/* 404 */

.page_404 { position: relative; text-align: center; padding: 200px 0; background: #fff url(_assets/img/404.png) no-repeat right bottom; background-size: contain;}
	.page_404 h1 { font-size: 10em; line-height: 1em;}
	.page_404 h2 {}
	.page_404 p { padding: 20px 0 50px 0;}
	.page_404 .btn {}
	
	@media (max-width: 767px) {
		.page_404 { padding: 100px 0;}
		.page_404 h1 { font-size: 8em; line-height: 1em;}
		.page_404 p { padding: 20px 0 50px 0; max-width: 250px; margin: 0 auto;}
		.page_404 .btn {}
	}

/* Sidebar */

#sidebar { position: relative; padding: 40px; margin-left: 50px; background: #F7F7F9; border-top-right-radius: 20px; border-bottom-left-radius: 20px;}
	.widget { padding-bottom: 40px;}
	.widget h3 { padding-bottom: 20px;}
	.widget ul li { position: relative;}
	.widget ul ul li {}
	.widget ul li a { padding: 3px 0; display: block; position: relative; z-index: 1; transition:.5s;}
	.widget ul li a:hover,
	.widget ul li.current-menu-item a {}
	.widget .textwidget { padding: 0;}
	
	@media (max-width: 767px) {
		#sidebar { padding: 25px; margin-left: 0; margin-top: 40px;}
	}


/****************************************************/
/* Footer */
/****************************************************/

/****************************************************/
/* Footer Block */

#footer { position: relative; background: #240B36; padding: 80px 0 30px 0; color: #fff;}
	
	#footer .logo {}
	#footer .address { font-size: 15px; line-height: 1.5em; padding-top: 20px;}
	#footer .address a { color: #fff; text-decoration: none;}
	#footer .address a:hover { text-decoration: underline;}
	
	.footer_menu { position: relative; display: block;}
	.footer_menu p { font-size: 15px; font-weight: 600; display: block; padding-bottom: 20px;}
	.footer_menu ul {}
	.footer_menu ul li { display: block;}
	.footer_menu ul li a { font-size: 15px; color: #fff; text-decoration: none; font-weight: 400; line-height: 1em; opacity: 0.8; transition:.5s;}
	.footer_menu ul li a:hover { color: #8717FB; text-decoration: underline; opacity: 1;}
	
	#footer .copyright { color: #fff; font-size: 12px; text-align: center; padding-top: 80px; opacity: 0.5;}
	#footer .copyright a { color: #fff; font-weight: normal; text-decoration: none;}
	
	@media (min-width: 1071px) and (max-width: 1300px) {
		#footer { padding: 40px 0;}
		#footer .address { padding-bottom: 40px; border-bottom: 1px solid rgba(255, 255, 255, 0.2); margin-bottom: 40px;}
		#footer .copyright { padding-top: 40px;}
	}
	
	@media (max-width: 767px) {
		#footer { padding: 40px 0;}
		#footer .address { padding-bottom: 40px; border-bottom: 1px solid rgba(255, 255, 255, 0.2); margin-bottom: 40px;}
		#footer .menu { padding-bottom: 40px;}
		.footer_menu ul li { padding-bottom: 12px;}
		.foot_end { text-align: left;}
		.foot_end span.title { text-align: left;}
		#footer .copyright { padding-top: 0; text-align: left;}
	}

/****************************************************/
/* Footer Social Media */

.social { display: block; position: relative; margin-bottom: 30px;
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
}
	.social li { display: inline-block; position: relative; margin-right: 15px;}
	.social li a { text-decoration: none !important;}
	.social li span { display: block; width: 24px; height: 24px; text-align: center; font-size: 24px; line-height: 1em; color: #fff; transition:.5s;}
	.social li a:hover span { color: #8717FB;}
	
	@media (max-width: 767px) {
		.social { justify-content: flex-start;}
		.social li { margin: 0 5px;}
	}

/****************************************************/
/* Enrol Popup */

#enrol_popup { width: 100%; max-width: 600px; border-top-left-radius: 20px; border-bottom-right-radius: 20px;}
	#enrol_popup .fancybox-button:hover { background: #8717FB; color: #fff;}
	#enrol_popup .inner { text-align: center;}
	#enrol_popup .inner h3 {}
	#enrol_popup .inner .text { padding-top: 10px;}
	#enrol_popup #tabbed { position: relative; padding-top: 30px;}
	#enrol_popup .tabs { position: relative; padding: 0 3px;
		display: flex;
		flex-direction: row;
	    flex-wrap: nowrap;
	    justify-content: flex-start;
	    align-items: center;
	}
	#enrol_popup .tabs li { display: block; width: 100%; text-align: center;}
	#enrol_popup .tabs li a { display: block; position: relative; padding: 20px 15px; font-size: 15px; text-decoration: none !important; letter-spacing: 0.045em; text-transform: uppercase; line-height: 1em; margin: 0 3px; border-top-left-radius: 10px; border-top-right-radius: 10px; color: #310450; background: rgba(50, 4, 80, 0.1);}
	#enrol_popup .tabs li a.current { background: #310450; color: #fff;}
	#enrol_popup .tab_box { background: #310450; margin-top: -1px; color: #fff; padding: 20px 15px; border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px;}
	#enrol_popup .tab_box ul {}
	#enrol_popup .tab_box ul li { display: block; margin-bottom: 10px;}
	#enrol_popup .tab_box ul li:last-child { margin-bottom: 0;}
	#enrol_popup .tab_box ul li a { display: block; padding: 10px; color: #fff; border: 2px solid #8717FB; border-radius: 10px; text-decoration: none !important; transition:.5s;}
	#enrol_popup .tab_box ul li a:hover { background: #8717FB;}
	
	@media (max-width: 767px) {
		.fancybox-content,
		.fancybox-slide { padding: 30px 15px !important;}
	}
	
/****************************************************/
/* Forms */
/****************************************************/

/* FORMS */
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
	padding: 15px 10px; 
	background: #F7F7F9; 
	border: 1px solid #F7F7F9; 
	color: #310450; 
	font-weight: 600;
	width: 100%; 
	font-size: 15px;
	border-radius: 8px;
}
textarea { line-height: 1.3em;}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus {
	background: #F7F7F9;
	border-color: #8717FB;
	color: #8717FB;
}

input[type="radio"],
input[type="checkbox"] {}

.gform_wrapper input[type="button"],
.gform_wrapper input[type="submit"],
.gform_wrapper form button,
input[type="button"],
input[type="submit"],
form button {
	border: none; 
	background: #8717FB;
	color: #fff; 
	font-size: 20px !important; 
	text-transform: none; 
	padding: 15px 40px; 
	border-radius: 0;
	font-weight: 600;
	line-height: 1em !important;
	border-top-right-radius: 20px;
	border-bottom-left-radius: 20px;
}

.gform_wrapper input[type="button"]:hover,
.gform_wrapper input[type="submit"]:hover,
.gform_wrapper form button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
button:hover {
	color: #fff; 
	background: #310450; 
}

.gform_wrapper .gform_delete_file { background: rgba(0,0,0,0.2);}
.gform_wrapper .gform_delete_file:hover { background: #8717FB;}
.gform_wrapper.gravity-theme .gfield_label { font-size: 15px !important; font-weight: 600!important; letter-spacing: 0.045em; text-transform: uppercase!important; line-height: 1em; padding-bottom: 5px !important;}

.gform_wrapper textarea,
.gform_wrapper input[type="text"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="datetime"],
.gform_wrapper input[type="datetime-local"],
.gform_wrapper input[type="date"],
.gform_wrapper input[type="month"],
.gform_wrapper input[type="time"],
.gform_wrapper input[type="week"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="color"] {
	padding: 15px 10px !important; 
	width: 100% !important; 
	font-size: 15px !important;
}

@media (max-width: 767px) {
	textarea,
	input[type="text"],
	input[type="password"],
	input[type="datetime"],
	input[type="datetime-local"],
	input[type="date"],
	input[type="month"],
	input[type="time"],
	input[type="week"],
	input[type="number"],
	input[type="email"],
	input[type="url"],
	input[type="search"],
	input[type="tel"],
	input[type="color"] {
		padding: 11px 10px;
	}
	.gform_wrapper textarea,
	.gform_wrapper input[type="text"],
	.gform_wrapper input[type="password"],
	.gform_wrapper input[type="datetime"],
	.gform_wrapper input[type="datetime-local"],
	.gform_wrapper input[type="date"],
	.gform_wrapper input[type="month"],
	.gform_wrapper input[type="time"],
	.gform_wrapper input[type="week"],
	.gform_wrapper input[type="number"],
	.gform_wrapper input[type="email"],
	.gform_wrapper input[type="url"],
	.gform_wrapper input[type="search"],
	.gform_wrapper input[type="tel"],
	.gform_wrapper input[type="color"] {
		padding: 11px 10px !important; 
		font-size: 15px !important;
	}
	
	input[type="button"],
	input[type="submit"],
	form button {
		padding: 8px 20px;
	}

}

/****************************************************/
/* Search Form */

#searchform {}
	#searchform { position: relative; padding: 0; margin: 0;}
	#searchform input[type="search"] { display: block; width: calc(100% - 40px) !important; background: none; border: 1px solid #8717FB; color: #fff; padding: 10px; height: 40px; margin: 0 !important; font-size: 14px !important; border-bottom-right-radius: 0; border-top-right-radius: 0;}
	#searchform input[type="search"]:focus { color: #fff;}
	#searchform .searchsubmit { position: absolute; top: 0; right: 0; border: none; padding: 0 !important; border-radius: 0; background: #8717FB; width: 40px; height: 40px; margin: 0; font-size: 18px; line-height: 1em; display: block; cursor:pointer; color: #fff; text-align: center; border-bottom-right-radius: 10px; border-top-right-radius: 10px;}
	#searchform .searchsubmit:hover { opacity: 1; box-shadow: none; background: #8717FB; color: #fff;}

/************************************/
/************** GRIDS ***************/

/* GRIDS TABLET */
@media (min-width: 768px) and (max-width: 1239px) {
	
	

}

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

		
}

@media print {

}

/************************************/
/************* END CSS! *************/