@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Sen:wght@400;700;800&display=swap');

@font-face {
  font-family: 'Bebas-Neue-Book';
    src:  url('/fonts/bebas-neue-book/Bebas-Neue-Book.ttf.woff') format('woff'),
    url('/fonts/bebas-neue-book/Bebas-Neue-Book.ttf.svg#Bebas-Neue-Book') format('svg'),
    url('/fonts/bebas-neue-book/Bebas-Neue-Book.ttf.eot'),
    url('/fonts/bebas-neue-book/Bebas-Neue-Book.eot?#iefix') format('embedded-opentype'); 
    font-weight: normal;
    font-style: normal;
}


:root {
	--green: #91BF4B;
	--light-green: #91BF4B;
	--light-grey: #F2F2F2;
	--light-grey-alt: #E5E5E5;
	--light-blue: #82A8D9;
	--mid-grey: #565759;
	--dark-grey: #1C1C1C;
	--purple: #70368C;
}


body {
	font-family: 'Sen', sans-serif;
	padding: 0;
	overflow-x: hidden;
	image-rendering: -webkit-optimize-contrast;
}


h1 {
    font-family: 'Bebas-Neue-Book', sans-serif;
    font-size: 4.5em;
    line-height: 1em;
    padding: 2px 0;
    max-width: 800px;
    margin: 20px 0;
    font-weight: 400;
}

h1 span {
    font-family: 'Bebas Neue', sans-serif;
}

h2, .h2 {
	font-family: 'Bebas-Neue-Book', sans-serif;
	font-weight: 300;
	font-size: 3em;
	margin-bottom: 15px;
}

h2 span, .h2 span {
    font-family: 'Bebas Neue', sans-serif;
	font-weight: 400;
}

h3 {
	font-family: 'Bebas-Neue-Book', sans-serif;
	font-size: 2.2em;
	margin-bottom: 25px;
}

h3 span {
    font-family: 'Bebas Neue', sans-serif;
	font-weight: 400;
}


h3 span.font-weight-bold {
    font-family: 'Bebas Neue', sans-serif;
	font-weight: 400;
}

h4 {
	font-family: 'Bebas-Neue-Book', sans-serif;
	font-weight: 400;
	font-size: 2.5em;
	margin-bottom: 25px;
}

h4 span {
    font-family: 'Bebas Neue', sans-serif;
	font-weight: 400;
}

h5 {
	font-family: 'Bebas-Neue-Book', sans-serif;
	font-weight: 600;
	font-size: 1.4em;
	margin-bottom: 15px;
}


.double-gutter {
	margin-left: -30px;
	margin-right: -30px;
}


.double-gutter > div {
	padding-left: 30px;
	padding-right: 30px;
}

.container.wide {
	max-width: 1300px;
}



#cookiemessage {
	display: none;
	font-size: .8em;
    color: #FFF;
    padding: 15px 0 25px 0;
	background: var(--mid-grey);
	-webkit-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 0px 30px 0px rgba(0,0,0,0.3);
}


.navbar {
    position: absolute;
    height: 120px;
    margin: 0 auto;
    max-width: 1360px;
}


.navbar-brand {
    width: 240px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.navbar-brand img {
    /* max-height: 40px; */
    width: 100%;
}



header {
	position: relative;
}

header .navbar-nav {
	width: 50%;
	padding-left: 60px;
}

header .navbar-nav a {
	font-family: 'Bebas-Neue-Book', sans-serif;
	color: #FFF;
	font-weight: 600;
	font-size: .8em;
	text-transform: uppercase;
	margin-right: 20px;
}

header .navbar-nav a.btn {
	padding: 5px 20px !important; 
	letter-spacing: 2px;
	font-size: .7em !important;
	margin-top: 4px;
}


header .dropdown-toggle::after {
    content: "\f3d0";
    margin-left: 12px;
    font-family: 'IonIcons';
    border: 0;
    vertical-align: 0;
}

header .dropdown-menu {
    border-radius: 0;
    width: 500px;
    /* max-width: 200px; */
    padding: 10px 0 0 0;
    margin-left: -25px;
	background: transparent;
	border: 0;
	box-shadow: 0;
}

header .dropdown-menu a {
	color: #FFF;
	margin-bottom: 0px;
    background: var(--dark-grey);
	padding: 15px 30px;
}

header .dropdown-menu a:hover {
	text-decoration: none;
    background: rgba(145, 191, 75,.9);
	color: #FFF;
}

header .dropdown-menu a:last-child {
	margin-bottom: 10px;
}

#hero {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    height: 650px;
    background-size: 70% auto;
    background-position: center -20px;
    border-bottom: 15px solid #70368C;
}

#hero p {
    font-family: 'Bebas-Neue-Book', sans-serif;
    width: 40%;
    padding-right: 25px;
    font-size: 1.2em;
}

#hero .hero-image {
	position: absolute;
	height: 100%;
	width: 100%;
	background-size: cover;
	background-position: center;
	top: 0;
	right: 0;
}


#hero .hero-image::before {
	content: '';
	position: absolute;
	background: rgb(0,0,0);
	background: linear-gradient(180deg, rgba(0,0,0,0.7) 0%, rgba(0,0,0,0) 100%);
	height: 200px;
	width: 100%;
	top: 0;
	left: 0;
}


#hero .hero-blurb {
	position: relative;
	background: rgba(0,0,0,.8);
	height: 100%;
	color: #FFF;
	width: 50%;
	max-width: 850px;
}

#hero .hero-blurb > div {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    max-width: 550px;
    margin-left: auto;
    justify-self: f;
}

#hero .hero-blurb > div > div {
	width: 100%;
	max-width: 400px;
}


footer {
	color: #FFF;
	padding: 60px 0;
	background: var(--dark-grey);
}

footer a {
	color: #FFF;
	line-height: 1.2em;
	font-size: .9em;
}

footer a:hover {
	color: #FFF;
}

footer a span {
	display: block;
	font-weight: 600;
	margin-bottom: 20px;
}

footer .left {
	width: 100%;
	max-width: 250px;
}


footer .social i {
	font-size: 1.4em;
	margin-right: 15px;
}

footer .social i:hover {
	opacity: .7;
}

footer .center {
	width: 100%;
	max-width: 300px;
}

footer .center a {
}

footer .center a:last-child span {
	margin: 0;
}

footer .right {
	width: 100%;
}

footer .right a {
	margin-bottom: 10px;
}

footer .right a:last-child {
	margin: 0;
}


.btn {
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: 4px;
    font-weight: 600;
    padding: 20px 45px;
    border-radius: 40px;
    /* height: 40px; */
    font-size: .7em;
    transition: all 250ms ease-in-out;
}

.btn-lg {
	font-size: .8em;
	padding: 15px 45px;
	letter-spacing: 5px;
}

.btn.btn-purple {
	background: var(--purple);
}




.btn:hover {
	color: #FFF;
	opacity: .8;
}



section {
	padding: 120px 0;
}

section.slim {
    padding: 90px 0;
}

.card {
	border: none;
	border-radius: 0;
}

.form-control {
	border-radius: 0;
	font-size: .9em;
}

label {
	font-size: .9em;
	font-weight: 600;
}



.row.no-gutter {
	margin-left: 0;
	margin-right: 0;
}

.row.no-gutter > div {
	padding-left: 0;
	padding-right: 0;
}


.row.half-gutter {
	margin-left: -7.5px;
	margin-right: -7.5px;
}

.row.half-gutter > div {
	padding-left: 7.5px;
	padding-right: 7.5px;
}

.tick-list {
	padding: 0;
	margin: 0 0 0 30px;
	list-style: none;
}

.tick-list li {
	padding: 0 30px;
	margin: 0;
	list-style: none;
	margin-bottom: 15px;
}

.tick-list li::before {
    content: '\f122';
    font-family: 'IonIcons';
    float: left;
    color: var(--purple);
    font-size: 1.1em;
    clear: left;
    margin-right: 8px;
    margin-left: -25px;
    margin-top: 0;
}

.tick-list.white-ticks li::before {
	color: #FFF;
}

.featuring-slider img {
    max-width: 140px;
    max-height: 90px;
    width: auto !important;
    height: auto;
}

.featuring-slider .owl-item {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100px;
}

.featuring-slider .owl-dots {
	margin-top: 30px;
}


.featuring-slider .owl-dots button.owl-dot {
    border: 1px solid #1A1A1A;
    height: 10px;
    width: 10px;
    border-radius: 100%;
    margin: 0 5px;
}

.featuring-slider .owl-dots button.owl-dot.active {
	background: #1A1A1A;
}

.course-card, .card-body {
	border-radius: 0;
}

.course-card .card-img {
	position: relative;
	height: 600px;
	background-size: cover;
	background-position: center center;
	border-bottom: 15px solid #70368C;
	border-radius: 0;
}

.course-card .course-info {
	position: absolute;
	z-index: 2;
	max-width: 400px;
	width: 100%;
	right: 0;
	bottom: 0;
}

.course-card .course-info > div {
	background: rgb(0,0,0);
	background: linear-gradient(270deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	color: #FFF;
	margin-top: 1px;
	display: flex;
	justify-content: flex-end;
}

.course-card .course-info > div > div {
    width: 100%;
    max-width: 250px;
    padding: 15px 30px;
}

.course-card .course-info > div > div i {
	font-size: 2.6em;	
	float: left;
	margin-right: 15px;
	width: 45px;
	text-align: center;
	margin-top: 5px;
	
}

.course-card .course-header {
    position: absolute;
    z-index: 1;
    width: 100%;
    bottom: 0;
    padding: 35px 55px;
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
    height: 300px;
    display: flex;
    align-items: flex-end;
}

.course-card .course-header h3 {
	color: #FFF;
	font-family: 'Sen';
	margin: 0;
	font-size: 2em;
}

.course-card .course-header h3 span {
	font-family: 'Sen';
	font-weight: 600;
	display: block
}

.course-stats {
    background: #FFF;
    font-weight: 600;
    line-height: 1.2em;
}

.course-stats > div {
	height: 100%;
}

.course-stats > div > div {
	text-align: center;
	justify-content: center;
	border-left: 2px solid #F2F2F2;
	display: flex;
	height: 200px;
}

.course-stats > div > div img {
	display: block;
	margin: 20px auto 15px auto;
	height: 55px;
}






#faq-accordion {
	text-align: left;
	margin-bottom: 85px;
}

#faq-accordion .card-header {
	padding: 0;
	margin-bottom: 0;
	border: 0;
	display: block;
	background: transparent;
}

#faq-accordion .card-header h2 {
    margin: 0;
    display: block;
    font-size: 1em !important;
}

#faq-accordion .card-header h2 button {
    color: #2B2070;
    font-weight: 600;
    background: transparent;
    display: block;
    width: 100%;
    text-align: left;
    padding: 10px 30px;
    font-size: 1.3em;
    margin-top: 5px;
    text-decoration: none;
    border-radius: 0;
    border: 0;
    border-bottom: none;
    height: auto;
    letter-spacing: 0 !important;
    text-transform: initial;
}

#faq-accordion .card-header h2 button span::before {
	font-family: 'IonIcons';
	content: '\f35d';
	position: absolute;
	right: 0;
	color: var(--purple);
	font-size: 1.4em
}


#faq-accordion .card-header h2 button.collapsed span::before {
    content: '\f35d';
    color: #000;
}

#faq-accordion .card-header h2 img {
	float: right;
	margin-right:  30px;
	margin-top: -10px;
}

#faq-accordion .card-header h2 button span {
	position: relative;
	border-bottom: 0;
	padding: 15px 0;
	display: block;
	font-family: 'Sen', sans-serif !important;
	font-weight: 600;

}

#faq-accordion .card-header h2 button.collapsed span {
	border-bottom: none;
}

#faq-accordion .card-header h2 button.collapsed {
	margin: 0;
}

#faq-accordion .card {
    border: 0;
    margin: 0 0 10px 0;
    background: #F2F2F2;
    border-radius: 0;
}



#faq-accordion .card .show {
	margin-bottom: 5px;
}


#faq-accordion .card > div > .card-body {
	padding: 15px 30px;
}






#faq-accordion .card-header h2 button {
	white-space: break-spaces;
	color: #000;
}

#faq-accordion .card-header h2 button span {
	padding-right: 20px
}

#faq-accordion .card-header h2 button.collapsed span::before {
	content: '\f366';
	color: var(--purple);
}

#more {
	background: #262626;
	padding: 30px;
}




#more label {
    display: inline-block;
    margin-bottom: .5rem;
    font-size: .9em;
	color: #FFF;
	font-weight: 400;
}


#more .field.hs-form-field {
    margin-bottom: 20px;
}

#more .hs-input:not([type="file"]) {
    background-color: #FFF;
    border: 1px solid #202020;
    width: 100%;
    height: 40px;
    padding-left: 10px;
}

#more .hs-button {
    width: 100%;
    background: var(--purple);
    border: 0;
    border-radius: 40px;
    height: 45px;
    color: var(--white);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: .9em;
	margin: 0 0 20px;
}






.fw-slider {
	background: var(--dark-grey);
	padding: 0;
}



.fw-slider .owl-item {
    height: 700px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2em;
}

.fw-slider .owl-item > div, .fw-slider .owl-item > div > .row {
    width: 100%;
    height: 100%;
}


.fw-slider .owl-item .image {
	position: relative;
	padding: 0;
}


.fw-slider .owl-item .image > div {
    width: 100%;
    height: 100%;
	background-size: cover;
}

.fw-slider .owl-item .image > div::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
	/*
    background: rgb(0,0,0);
    background: linear-gradient(0deg, rgba(2, 133, 217,0.5) 0%, rgba(2, 133, 217,0.5) 30%, rgba(2, 133, 217,0) 80%);
    mix-blend-mode: multiply;*/
}


.fw-slider .owl-item .info {
    font-size: 1em;
    color: #FFF;
    position: relative;
    font-weight: 400;
    line-height: 1.4em;
    display: flex;
    align-items: center;
    min-height: 700px;
    padding-right: 80px;
    max-width: 550px;
    margin-left: auto;
}

.fw-slider .owl-item .info h3 {
	font-size: 3em;
}

.fw-slider .owl-item .info .btn {
	font-size: .6em;
}







.fw-slider .owl-dots {
    /* max-width: 1366px; */
    margin-top: 0;
    position: absolute;
    z-index: 1;
    text-align: center;
    width: 50%; 
    bottom: 50px;
}

.fw-slider .owl-dots button.owl-dot {
    height: 25px;
    width: 25px;
    margin: 0 5px;
	outline: none;
}

.fw-slider .owl-dots button.owl-dot span {
    height: 1px;
	width: 100%;
	background: #FFF;
	display: block;
	margin-bottom: 2px;
	transition: all 250ms ease-in-out;
}

.fw-slider .owl-dots button.owl-dot.active span {
    height: 5px;
	margin: 0;
}













.bg-light-grey { background: var(--light-grey); }
.bg-dark-grey { background: var(--dark-grey); }
.bg-mid-grey { background: var(--mid-grey); }
.bg-light-blue { background: var(--light-blue); }
.bg-light-green { background: var(--light-green); }


.text-x0 { font-size: 1em; }
.text-x1 { font-size: 1.1em; }
.text-x2 { font-size: 1.2em; }
.text-x3 { font-size: 1.3em; }
.text-x4 { font-size: 1.4em; }
.text-x5 { font-size: 1.5em; }
.text-x6 { font-size: 1.6em; }
.text-x7 { font-size: 1.7em; }
.text-x8 { font-size: 1.8em; }
.text-x9 { font-size: 1.9em; }
.text-x10 { font-size: 2em; }
.text-x11 { font-size: 2.1em; }
.text-x12 { font-size: 2.2em; }
.text-x13 { font-size: 2.3em; }
.text-x14 { font-size: 2.4em; }
.text-x15 { font-size: 2.5em; }
.text-x16 { font-size: 2.6em; }
.text-x17 { font-size: 2.7em; }
.text-x18 { font-size: 2.8em; }
.text-x19 { font-size: 2.9em; }
.text-x20 { font-size: 3em; }


.lh-x0 { line-height: 1em; }
.lh-x1 { line-height: 1.1em; }
.lh-x2 { line-height: 1.2em; }
.lh-x3 { line-height: 1.3em; }
.lh-x4 { line-height: 1.4em; }
.lh-x5 { line-height: 1.5em; }
.lh-x6 { line-height: 1.6em; }
.lh-x7 { line-height: 1.7em; }
.lh-x8 { line-height: 1.8em; }
.lh-x9 { line-height: 1.9em; }
.lh-x10 { line-height: 2em; }

