/*
Theme Name: ThirdSpace Theatre 2.1
Template: petra
Description: Child Theme of Petra
Version: 1.1
*/


 .news a {
	 text-decoration:none;
	 color:#000;
 }
 
 .news a:hover {
	 text-decoration:none;
	  color:#FC0419;
 }
 
 
 .margin0 {
	margin:0 !important;
}

 
.noMargin {
	width:100%;
	margin:0 !important;
	padding:0 !important;
}


 .red {
		background-color: #FC0419;

}

.highlight {
	color:#FC0419;
}
	
  
main .container img{
	width:100%;
}




.colLeft {
	position:relative;
	max-height:500px;
}

.colRight {
	padding: 40px;
	background-color: #FC0419;
	max-height:500px;
}

.separator {
	display:none;
	
}
@media (min-width: 768px) {
	.separator {
	display:inline;
	
}
}





.footerText {
	color: #868686;
	font-size:0.9em;
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	padding:24px 0px 24px 0px;
	text-transform:uppercase;

}

#socialLogos img {
		max-width:60px;
		margin:24px 12px 12px 0px;

	}

@media (min-width: 768px) {
	#socialLogos img {
		max-width:32px;
		margin:0px 0px 12px 12px;
	}
}


#sideLinks {
	display:none;
}
	
@media (min-width: 768px) {

	#sideLinks {
		display:block;
		position:absolute;
		right:0;
		top:240px;
		z-index:10;
		transform: rotate(270deg);
		transform-origin: right bottom;
		box-shadow: 0px 0px 4px 0px #000;
		}
}

.contactBtn {
	background-image: url('images/logo-simple.png');
	background-repeat: no-repeat;
	background-position: 90% 0%;
	background-size: 30px ;
	padding-right: 100px !important;
}

#sideLinks .btn {
	text-orientation:sideways-right;
	font-weight:bold;
	
	padding-top:20px;
	padding-bottom:20px;
	margin:0 !important;
	box-shadow: none;
}

#sideLinks .btn-primary:hover {
	color:#fff !important;
}

button {
	margin:0 !important;
}

.btn {
	border-radius:0 !important;
	border:none;
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	text-transform:uppercase;
	padding:12px 30px;
	box-shadow: 0px 0px 4px 0px #000;
	margin:0;
}

a.btn {
	text-decoration:none !important;
}


main .btn {
	margin-bottom:48px;
}

.courseForms .btn {
	margin-bottom:0px;
	margin-left:auto;
	margin-right:auto;
	box-shadow: none;
	width:100%;
	font-weight:500;
;
}
.courseForms .btn:hover {
	color:#fff !important;
}



.btn:hover {
	/*color:inherit  !important;*/
	color:#fff !important;
	
}
.btn-dark {
	background-color: #010526 !important;
}

/*
.style-red .btn-primary {
	background-color: #000 !important;
	color:#fff;
}

.style-red  .btn-primary:hover {
	background-color: #333 !important;
}
*/

.btn-primary {
	border-radius:0 !important;
	border:none;
	background-color: #FC0419 !important;
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	text-transform:uppercase;
	padding:12px 30px;
}

.btn-primary:hover {
	background-color: #BE0316 !important;
}


footer .btn-primary {
	font-size:0.8em;
	font-weight:bold;
	padding:6px 16px;
	color:#E5E5E5;
}


.btn-secondary {
	background-color:#939393 !important;
}

.btn-secondary:hover {
	background-color: #777 !important;
}

 
.btn-warm {
	background-color:#F3B610;
	color:#fff !important;
}

.btn-warm:hover {
	background-color: #C89705 !important;
	color:#fff !important;
}


a.btn.externalLink:after {
	background: url('images/external-link-white.png') no-repeat center right;
    background-size: 12px 12px;
	margin-left:2px;
    display: inline-block;
    width: 12px; 
    height: 12px;
    content:"";
}




body {
	font: 90%/1.6 'Poppins', Helvetica, Arial, sans-serif; 
	color:#050607;
	background:#fff;
	font-weight:400;
}


/* Structure */ 
/* -------------------------------------------------------------- */


.site-main {
	background-color:rgba(255, 255, 255, 0.8);
	margin-top:8px;
	margin-bottom:48px;
	padding: 32px 0px 12px 0px !important;
	z-index:1;
	position:relative; /* place it above background */
}


@media (min-width: 992px) {
	.site-main {
		padding: 24px 0px 12px 0px !important;
	}
}





.container {
	padding:0px 24px;
}



#header .container {

	margin-bottom:0 !important;
	margin-top:0 !important;
}



.mainCol {
	width:80%;
}

#primary {
	padding:0 24px;
	position:relative;
	z-index:1;
}

.container .container {
	padding:0;
	margin:0 auto;
}




.wp-bootstrap-blocks-container:first-of-type {
	 padding-top:150px !important;
}
 
.productions  .wp-bootstrap-blocks-container:first-of-type {
	 padding-top:0px !important;
}
 
 
.style-red .wp-bootstrap-blocks-container {
	 padding-top:0px !important;
}
  


@media (min-width: 768px) {
	#primary {
		padding:0 12px;
	}
	
}

#primary .row {
	margin-bottom:24px;
}

/* for courses */
.infoBox {
	background:#7f7f7f url(images/box-background.jpg) repeat-x top left;
	color:#FFFFFF;
	padding:18px 18px 12px 18px;
	margin: 0 0px 12px 0px;
}


/* from https://css-tricks.com/full-width-containers-limited-width-parents/ */
.fullWidth {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}
  
.fullWidthBackground {
	box-shadow: 0 0 0 20vmax #010526;
	clip-path: inset(0 -20vmax);
}

/* Header */ 
/* -------------------------------------------------------------- */





.banner {
	position:relative;
	margin-bottom:0px;
}




.headerMainImage{
	position:absolute;
	width:100%;	
}

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

.headerMainImage div {
	width:100%;
	height:100%;
}
  


.header-type-simple .nav-title {
	height:240px
}

.header-type-simple .banner {
	height:240px
}

.header-type-video .nav-title {
	position:relative;
	top:0;
	height:auto;
}

.header-type-video .nav-title {
	height:auto;
}

.header-type-video .banner {
	height:auto;
}



#logo {
	position:absolute;
	top:26px;
	left:60px;
	width:60px;
	z-index:4000;
}

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


.logoVert {
	display:none;
	position:absolute;
	top:120px;
	left:60px;
	width:60px;
	
}

@media (min-width: 768px) { 
	.logoVert {
		display:block;
	}
}


#header {
	position:relative;
	color:#fff;
	background-color:#333;
	height:100vh;
	
}

#header h1, #header h2, #header h3, #header h4 {
	color:#fff;
}

.headerCallout h2 {
	font-size:2.4rem;

}

@media (min-width: 768px) { 
	.headerCallout h2 {
		position:relative;
		left:24px;
	}
}


#header.simpleHeader {
	height: 500px;
}

#header.minimalHeader {
	height:auto;
}


	
.minimalHeader .headerCallout, .minimalHeader .headerInfo, .minimalHeader .logoVert {
	display:none;
}

.simpleHeader .headerCallout, .simpleHeader .headerInfo {
	display:none;
}


.headerCallout {
	text-align:center;
	font-size:2.4rem;
	position:relative;
	z-index:100;
	max-width:60%;
	margin:0 auto;

	text-shadow:  0px 0px 5px rgba(0,0,0,.6);

}



 .headerInfo {
	text-align:center;
	z-index:100;
	margin:0 auto;
	max-width:70%;
}


#carousel{
	height:100%;
	overflow: hidden;
}

.carousel-item img {
	object-fit: cover;
	object-position: center;
	height:100%;
	overflow: hidden;
}

.carousel-control-prev,
.carousel-control-next{
    /* align-items: flex-end; *//* Aligns it at the bottom */
	right:0 !important;
	width:170px;
	align-items: end;

}

.carousel-control-prev-icon,
.carousel-control-next-icon {

	width: 3rem;
	height: 3rem;
	display:none;
	margin-bottom:40px;

}




/*  Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 

.carousel-control-prev-icon,
.carousel-control-next-icon {
	display:inline-block;
}


.carousel-control-prev-icon {
	 background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")*/;
	  background-color:#FC0419;
}

.carousel-control-next-icon {
	 background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") /*rtl:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")*/;
		  background-color:#FC0419;
}

	
}




/* Header Background Images */
.backgroundImages {
	position:absolute;
	width:100%;
}

.header-bg-simple {
	background:#fff url('images/backgrounds/bg-simple-1-geometry.jpg') no-repeat center top;
	background-size: 1000px;
	min-height: 600px;
}

.headerImageSimple {
	background:#fff url('images/backgrounds/bg-1.jpg') no-repeat center top;
	background-size: auto;
	background-size: 1200px ;
	height: 340px;
}




/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
	
}

/*  Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
	
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	
	
}

/*  X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
	
}

/*  XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) { 
	
	
	
}


/* https://stackoverflow.com/questions/16154494/retina-displays-high-res-background-images */

@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) { 

}






/* Dark Page */ 
/* -------------------------------------------------------------- */


.style-dark {
	background-color:#010526;
	color:#fff;
	padding: 144px 0px 72px 0px;
}

.style-dark h2 {
  margin: 0 0 48px 0px !important;
  padding: 0 !important;
  color:#FC0419 !important;
  font-size:1.4rem;
}


@media (min-width: 768px) {
	.style-dark h2 {
		margin: 0 0 48px 96px !important;
	}
}


.style-dark h1, 
.style-dark h2, 
.style-dark h3,
.style-dark h4,
.style-dark h5 {
	color:#FC0419;
}



/* Red Pages */ 
/* -------------------------------------------------------------- */



.style-red {
	//background-color:#FC0419;
	background-color:#010526;
	color:#fff;
}
.style-red a {
	color:#fff;
}

.style-red h1, 
.style-red h2, 
.style-red h3,
.style-red h4,
.style-red h5 {
	color:#fff;
}



 .style-red h1 {
	font-size:2.5rem;
	margin: 0px 0px 70px 0px !important;

 }
 
 
.style-red h1.title {
	font-size:1.2rem;
	//color:#F4BCC1;
	color:rgba(255,255,255,0.8);
	margin: 12px 0px 108px 0px;
	line-height:2.0rem;

 }
 


 
.style-red h3 {
		font-size:1.2rem;
	 	line-height:1.7rem;
		margin-bottom:48px;

}

.style-red p {
	margin-bottom:48px;
}


.style-red .btn {
	box-shadow:none;
}
 
 .teamMember {
	border:solid 1px;
	margin-bottom:28px;
	padding:48px 12px;
 }
 
 .teamMember .teamMemberTitle:after {
    content: '';
    display: block;
    clear: both;
}

 .teamMember h3 {
	font-weight:400;
	font-size:1.0rem;
	margin:0;
 }
 
 .name {
	font-weight: 800;
	font-family: "Inter", Helvetica, Arial, sans-serif; 
	text-transform:uppercase;
	color:#939393;
}


 
@media (min-width: 768px) {

 .teamMember h3 {
	font-weight:400;
	font-size:1.0rem;
	display:inline-block;
	width:400px;
	float:left;
	 margin:0 0 72px 0;
 }

}

 .teamMember img {
	object-fit: cover;
	width:100%;
	height:500px;
	
 }
 




/* Quote Slider */ 
/* -------------------------------------------------------------- */



.quoteSlider {
	background-color:#F8F5F5;
	color:#2D2B2B;
	padding:0 0 24px 0 !important;
	margin:0;
}



#testimonials-carousel {
	padding:20px 24px 60px 24px;
}


#testimonials-carousel .carousel-control-prev, #testimonials-carousel .carousel-control-next {
	display:none;
	
}
.carousel-inner {
	height:100%;
}

.carousel-item {

}

.testimonialName {
	font-weight: 800;
	font-family: "Inter", Helvetica, Arial, sans-serif; 
	text-transform:uppercase;
	color:#939393;
	font-size:1.0rem;
	
}

.carousel-indicators {
	position:absolute;
	bottom:0px;
}
.carousel-indicators .active {
    opacity: 1 !important;
}

.carousel-indicators [data-bs-target] {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 12px;
    height: 12px;
	border-radius:50%;

    
	margin-top:24px;
    margin-right: 6px !important;
    margin-left: 6px !important;

    text-indent: -999px;
    cursor: pointer;
    background-color: #FC0419;
    background-clip: padding-box;
    border: 0;

    opacity: .5;
    transition: opacity .6s ease;
}



#testimonials-carousel .separator {
    box-sizing: content-box;
	height:1px;
    width: 100%;
    margin: 24px 0px;
    background-color: #FC0419;
}




@media (min-width: 768px) {
	
	#testimonials-carousel .separator {
		box-sizing: content-box;
		height:auto;
		flex: 0 1 auto;
		width: 0px;
		border:solid 1px #FC0419;
		margin: 0 72px;
		text-indent: -999px;
		background-color: #FC0419;
	}

}




/* Productions Listing */ 
/* -------------------------------------------------------------- */


 
 .style-productions h1,  .style-productions h2,  .style-productions h3,  .style-productions h4  {
	color:#000;
 }
 
 
.style-productions h2 {
	font-size:1.3rem; 
	line-height:1.3rem;
	padding-bottom:12px;
	margin-top:24px;
}
 .production  a h2  {
	 color:#FC0419;
}
 
 .production img {
	aspect-ratio: 10/ 7;
	object-fit: cover;
	width:100%;
	
	/*
	-webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    filter: grayscale(100%);
    transition: all 0.5s ease;*/
}
 

 /*
 .production:hover img{
   -webkit-filter: grayscale(0%);
   -moz-filter: grayscale(0%);
   filter: grayscale(0%);
 } */
 
 
.production  a {
	  text-decoration: none !important;
}
 
 .production a p {
	  color:#000;
 }


/* Course Listing */ 
/* -------------------------------------------------------------- */

 
h2.courseDay {
	background:#FC0419;
	color:#fff;
	padding:15px 12px !important;
	font-size:1.2rem;
	text-transform: uppercase; 
	line-height:1.0rem;
	font-weight:700;
	position: sticky;
	top:0;
	z-index:100;
}
 


.course-listing {
	position:relative;
	background-color: #2D053E;
	height:580px;
	color:#D9D9D9;
	padding: 0;
	margin-bottom:24px;
	
}


.course-listing .btn {
	 box-shadow: none !important;
	 padding: 4px 8px !important;
	 margin: 2px 0px  !important;
}


.course-listing-0 {
	background-color: #000122;	
}
.course-listing-1 {
	background-color: #43130E;	
}
.course-listing-2 {
	background-color: #931012;
}
.course-listing-2 {
	background-color: #921A1C;
}
.course-listing-3 {
	background-color: #762003;
}
.course-listing-4 {
	background-color: #422B07;
}
.course-listing-5 {
	background-color: #20350D;
}
.course-listing-6 {
	background-color: #020047;
}
.course-listing-7 {
	background-color: #2D053F;
}
.course-listing-8 {
	background-color: #03146F;
}
.course-listing-9 {
	background-color: #45043F;
}
.course-listing-10 {
	background-color: #5B0802;
}
.course-listing-11 {
	background-color: #472107;
}
.course-listing-12 {
	background-color: #75140D;
}
.course-listing-13 {
	background-color: #043568;
}
.course-listing-14 {
	background-color: #370C5D;
}
.course-listing-15 {
	background-color: #421329;
}

.course-listing-16 {
	background-color: #690F3B;
}

.courseListingInner   {
	width:100%;
	height:100%;
	padding: 20px 18px;
	margin:0;
	
	background-image: url('images/course-listing-cutout.png'), url('images/course-listing-cutout-bottom.png');
	background-repeat: no-repeat;
	background-position: top center, bottom center;
	background-size: 60px;
	background-color: rgba(0,0,0,0.0);
	
	transition: background-color 0.3s;
		
}

a:hover .courseListingInner   {
	background-color: rgba(0,0,0,0.45);
	color:#fff;
}


 
.course-listing a {
	text-decoration:none;
	color:inherit;
	margin:0 !important;
	padding:0 !important;
	text-decoration:none !important;
}
 
 .course-listing a:hover {
	color:inherit;
 }
 


.courseDetails {
	width:70%;
	position:absolute;
	top: 440px;
	padding-right:18px;
}


.buttons {
	width:30%;
	position:absolute; 
	right:0;
	top:440px;
}

.courseInfo,  .coursePrice, .courseLocation, .courseTime  {
	padding: 2px 32px 0px 42px;
	background-image: url('images/course-icon-info.png');
	background-repeat: no-repeat;
	background-size: 18px;
	line-height:1.0rem;
	font-weight:500;
	font-size:0.7rem;
	margin-bottom:12px;
	min-height:22px;
}

.courseImage img{
	margin:0px 0px 0px 0px;
	width: 100%;
	height: 120px;
	object-fit: cover;
	margin-bottom:0 !important;
}

.coursePopup .courseImage img{
	height: auto;

}


.courseLocation {
	background-image: url('images/course-icon-location.png') ;
	color:#fff;
}

.courseVenue {
	text-transform:uppercase;

}

.courseTime {
	background-image: url('images/course-icon-time.png');
	color:#fff;
	margin-top:18px;
}

.coursePrice {
	background-image: url('images/course-icon-price.png') ;
	padding: 0 8px 0 30px ;
	font-size:0.7rem;
	line-height:1.1rem;
	font-weight:bold;
	color: #B3B3B3;
	text-transform:uppercase;
}

a:hover .coursePrice {
	color:#fff;
}

.courseInfo {
	
	line-height:1.0rem;
	padding: 0 8px 0 30px ;
	margin-bottom:8px;
	font-weight:300;
	font-size:0.6rem;
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	
}

.course-listing .btn {
	font-family:'Poppins', Helvetica, Arial, sans-serif; 
	font-size:.7rem;
	font-weight:500;
	color:#fff;
	padding:6px 2px !important;
	margin-bottom:6px;
}


.courseExcerpt  {
	font-size:0.9rem;
	line-height:1.3rem;
}


.courseExcerpt .readMore {
	margin:4px 0px;
	color:#FC0419;
	font-size:0.8rem;
	text-transform:uppercase;
}

a:hover .courseExcerpt .readMore {
	text-decoration:underline;
}

.courseTitle {
	font-size:1.0rem;
	line-height:1.0rem;
	margin-top:8px;

}
 
 
 
/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
	
	
		
}

/*  Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { 
	.course-listing {
		height:600px;
	}
	
	.courseDetails, .buttons  {
		top: 440px;
	}
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
	.course-listing {
		height:760px;
	
	}
	
	.courseDetails, .buttons  {
		top: 580px;
	}
	
	
.courseExcerpt  {
	font-size:0.8rem;
	line-height:1.0rem;
}

	
}

/*  X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 
	.course-listing {
		height:660px;
	}
	
	.courseDetails, .buttons {
		top: 490px;
	}
		
}

/*  XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) { 
	.course-listing {
		height:570px;
	}
	
	.courseDetails, .buttons {
		top: 440px;
	}
}
 



/* Image Box */ 
/* -------------------------------------------------------------- */

.imageBox {
	color:#F9F7F7;
	
}


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

.imageBox a {
	color:#fff;
}

.imageBox a:hover {
	color:#fff;
}

.imageBox h2, .imageBox h1, .imageBox h3, .imageBox h4{
	color:#FECDD1;
	font-size:1.2rem;
}



/* Borders */ 
/* -------------------------------------------------------------- */


.borders {
	position:absolute;
	bottom:0;
	height:100%;
	width:100%;
}


.borderTop, .borderBottom {
	margin:0px 0px 46px 8px;
	width: 46px;
	height:40%;
	background-color: #FC0419;
}

.borderBottom {
	margin:0px 8px 46px 0px;
	height: 60%;

}

.borderRight {
	border-bottom: solid 46px #FC0419;
}

@media (min-width: 768px) {
	.borderTop, .borderBottom {
		margin:8px 46px 0px 0px;
		height: 46px;
		width:40%;
	}

	.borderBottom {
		margin:0px 46px 8px 0px;
		width: 60%;

	}

	.borderRight {
		border-right: solid 46px #FC0419;
	}
}





/* Menu */ 
/* -------------------------------------------------------------- */
.minimalHeader .main-nav-area {

	position:relative;

}

.main-nav-area {
	background-color:rgba(1, 5, 38, .6);
	z-index:200;
	position:absolute;
	min-height:65px;
	width:100%;
}

#main-navbar {
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	font-size:0.9rem;
	background:none;
}

#main-navbar ul {
	box-shadow: none !important;
	margin-top:24px;
	
}

#main-navbar ul a {
	color:#EAEAEA;
	text-decoration:none;
	padding: 4px 12px;
	margin:0;
}

#main-navbar ul ul {
	background: none;
	box-shadow: none;
	margin:0px 0px 4px 18px;
}

#main-navbar ul ul li {
	background-color:rgba(252, 4, 29, .8);

}
#main-navbar ul ul a {
	padding:4px 16px;
}

/*
#main-navbar li a:hover > li {
  color: red !important;
}*/


#main-navbar li a:hover, #main-navbar li.current-page-item>a, #main-navbar li.current-menu-item>a, #main-navbar li.current-page-ancestor>a, #main-navbar li.current_page_ancestor>a {
	color:#fff;
	background-color:rgba(252, 4, 29, 1.0) !important;
}


@media (min-width: 768px) {
	
	.main-nav-area .container {
		position:relative;
		height:65px;
	}
	
	#main-navbar {
		position:absolute;
		bottom:0;
		right:0;
	}
	
	#main-navbar ul {
		margin:0px;
	}
	
	
	#main-navbar ul li{
		margin-left:4px;
	}
	
	#main-navbar ul ul {
		margin-left: 0px;
	}
	
	#main-navbar li:has(ul:hover) {
	color:#fff;
	background-color:rgba(252, 4, 29, 1.0) !important;
}
}



/* =Footer
-------------------------------------------------------------- */



#footer {
	font-size:1.0rem;
	color:#fff;
	background:#010526;
	padding-top:48px ;
	
}

@media (min-width: 768px) {
	
		
	#footer {
		font-size:0.8em;
		
	}
	
	
	
}


#footer a {
	color:#d5d5d5;
	text-decoration:none;
	border:none;
}

#footer a:hover {
	color:#fff;
}

#footer ul {
	margin:0px 0px 12px 0px;
	padding:0px;
	font-weight:200;
}

#footer li {
	list-style-type:none;
	padding:0px;
	margin:0 0 24px 0px;
}

#footer h5 {
	margin:0;
	padding:0 0 0 4px;
}

#footer p {
	margin-bottom:0;
}



/* Typography */ 
/* -------------------------------------------------------------- */

/* for default pages (classes) */


h1 {
	margin-bottom:60px;
	
}
/*

h1.wp-block-heading{
	margin-top:160px;
}
*/


.spaciousLayout  h2   {
	max-width:50%;
	line-height:1.7rem;
	padding:50px 0px !important;
	font-size:1.2rem;
} 


@media (min-width: 768px) {
	.spaciousLayout h1 {
		max-width:50%;
		margin-top:0;
		padding-top:0;
	}
	
	

.spaciousLayout  h2   {
	max-width:40%;
	padding:50px 0px 70px 0px !important;
} 

}


.spaciousLayout .courseForms h2   {
	max-width:100%;
	line-height:1.7rem;
	padding:0px 0px 0px 0px !important;
	font-size:1.2rem;
} 


h1, h2, h3, h4, h5, h6 {
	font-weight: 800;
	font-family: "Inter", Helvetica, Arial, sans-serif; 
	margin: 0px 0px 8px 0px;
	text-transform:uppercase;
	color:#FC041D;	
}

h1 b, h2 b, h3 b, h4 b, h5 b, h6 b,
h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong
  {
	font-weight: 800;
}


h1 {
	font-size:2.5rem;
	line-height:3.5rem;
	margin-bottom:18px;
}

h2 {
	font-size:1.3rem;
	line-height:2.3rem;
	margin-bottom:24px;
}

h3 {
	font-size:1.2rem;
	line-height:2.2rem;
}

h4 {
	font-size:1.1rem;
	line-height:2.0rem;
}


a {
	color:#FC0419;
	text-decoration:underline;
	padding: 0 4px;
	margin:0 -4px;
	/*border-bottom: dashed 1px;*/
	
}


a:visited {
	
}

a:hover,
a:focus,
a:active {
	
}


a:hover,  footer a:hover  {
	text-decoration:underline;

}

a.button, .card a, #main-navbar a, .listing a, footer a, #sb_instagram a {
	border-bottom: none;
	background-image:none;
}



 ul {
	margin:0;
 }
  
  
 li::marker {
	color: #FC0419;
}


/* forms */
/* -------------------------------------------------------------- */
/*
a.button {
	background:#61aca5; 
	color:#fff;
	text-decoration:none;
	padding: 4px 8px;
	
	 background: url('images/external-link-white.png') no-repeat top right;
    background-size: 15px 15px;
	margin-left:6px;
    display: inline-block;
    width: 15px; 
    height: 15px;
    content:"";
}
*/




:root {
  --select-border: red;
  --select-focus: blue;
  --select-arrow: var(--select-border);
}

select {
	width:100%;
	max-width:100% !important;
}



 select.course-select {
  /* A reset of styles, including removing the default dropdown arrow*/
  appearance: none;
  /* Additional resets for further consistency*/
  background-color: transparent;
  border: none;
  padding: 0 1em 0 0;
  margin: 0;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  background-image: url('images/dropdown-arrow.png'); 
  background-position: 98%;
  background-repeat:no-repeat;
  
}

select::-ms-expand {
  display: none;
}

select.select-class {
	/*text-transform:uppercase;*/
}

.trialForm {
	margin-bottom:60px;
}


.courseForms {
	background-color:#FC0419;
	padding:0px;
	border:solid 2px #FC0419;
}

.courseForm h2 {
	font-size:	1.2rem;	
	color:#000;
	margin: 0px 0px 24px 0px;

}




.courseForm input[type=text], .courseForm input[type=email], input[type=tel],
.courseForm textarea, .courseForm select
{
	font-family:'Poppins', Helvetica, Arial, sans-serif; 
	font-weight:300;
	font-size: 1.0rem;
    background-color: #fff;
    color: #666;
    width: 100%;
	border-radius: 0px;
	box-sizing:border-box;
	padding:10px 60px 10px 18px;
	margin-bottom:0px;
	border:solid 1px #E3E3E3;
}


.courseForm .wpcf7-textarea {
	height:100px;
	
}


/* border:solid 1px var(--select-border);*/
.courseForm input::placeholder,
.courseForm textarea::placeholder {
	color: #B3B3B3;
	font-size: 1.0rem;
}

.courseForm {
	background-color:#fff;
	color:#333;
	padding:20px 20px 1px 20px;
	margin:0;
}


.formPopup {
	 display:none;
	 color:#757575;
	 max-width:500px;
	 margin-top:40px;
	 border:solid 1px #FC0419;
}
 
.coursePopup {
	background:#EDEDF0;
	color:#757575;
	 display:none;
	 max-width:80%;
	 margin-top:40px;
	 font-size:0.8rem;
}

.coursePopup .courseTime,  .coursePopup .courseLocation{
	font-weight:bold;
	color:#757575;
	
} 
  
.popupPrice {
	 padding: 36px 24px;
	 font-weight:bold;
	  color:#EDEDF0;
	  margin-bottom:24px;
}
  
.popupPrice {
	 padding: 48px 24px;
}

 .formPopup.courseForm h2 {
	color:#FC0419;
	line-height:1.6rem;

}

.formPopup.courseForm h3 {
	font-size:	1.0rem;	
	color:#FC0419;
	margin: 0px 0px 24px 0px;
}



input[type=text], input[type=email],
textarea
{
	font-family:"Montserrat", Helvetica, Arial, sans-serif;
	font-weight:500;
	font-size: .8rem;
    background-color: #fff;
    color: #666;
    width: 100%;
	border-radius: 0px;
	border-color:#7F7F7F;
	box-sizing:border-box;
	padding:10px 60px 10px 36px;
	margin-bottom:24px;
}




.joinMailList input[type=text],.joinMailList input[type=email],
.joinMailList textarea
{
  width: 100%;
}

@media (min-width: 768px) {
	.joinMailList input[type=text],.joinMailList input[type=email],
	.joinMailList textarea
	{
	  width: 48%;
	}
}

input::placeholder,
textarea::placeholder {
	color: #333333;
	font-size: .8rem;
}


input.submit, 
input.wpcf7-submit {
	width:auto;
	color:#fff;
	border:none;
	border-radius: 0px;
	background: #FC0419;
	margin: 12px 0px 6px 0px;
	padding:12px 36px;
	cursor: pointer;
	text-transform: uppercase;
	font-size: 0.8rem;

	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	line-height:1.0rem;
	
	font-weight:700;
	-webkit-transition: background-color 2s ease-out;
	-moz-transition: background-color 2s ease-out;
	-o-transition: background-color 2s ease-out;
	transition: background-color 2s ease-out;
  
	transition: box-shadow .5s;
	width:100%;

}

	
input.submit:hover, input.wpcf7-submit:hover {
	cursor: pointer;
	box-shadow: 0px 0px 4px 0px #010526;
}




.courseForms input.submit, 
.courseForms input.wpcf7-submit {

	background: #2C2C2C;
	box-shadow: none;
	transition: background-color .5s;

}



.courseForms input.submit:hover, .courseForms input.wpcf7-submit:hover {
	cursor: pointer;
	background-color: #000;
}



.mailingList {
	margin-top:80px;
	margin-bottom: 40px;
}

.mailingList .container {
	padding:0;
	margin:0;
}


.mailingList h2 {
	margin-bottom:40px;
}

.mailingList input.submit, .mailingList input.wpcf7-submit {
		width:auto;


}




/* Contact form 7 */
/* ------------------------------------------------------- */

div.wpcf7 {
	margin: 0;
	padding: 0;
}

.screen-reader-response {
  display: none;
}

div.wpcf7-response-output {
	margin: 0px 0px 48px 0;
	padding: 0px;
	font-weight:normal;
	color:#FC0419;
	border:none;
	font-size:1.1rem;
	position:relative;
	top:-24px;
}



/*
div.wpcf7-mail-sent-ok { }

div.wpcf7-mail-sent-ng { }

div.wpcf7-spam-blocked { }
*/

div.wpcf7-validation-errors {
	color:#FC0419;
	background: #bcc9dd;
	
}

span.wpcf7-form-control-wrap {
	position: relative;
	
}

span.wpcf7-not-valid-tip {
	position: relative;
	top:-20px;
	z-index: 100;
	font-weight:normal;
	font-size: 0.9rem;
	padding: 0px 0px 2px 0px;
	margin:0;
	color:#FC0419;
}

span.wpcf7-not-valid-tip-no-ajax {
	color:#FC0419;
	font-size: 10pt;
	display: block;
}

span.wpcf7-list-item {
	margin-left: 0.5em;
}

.wpcf7-display-none {
	display: none;
}

div.wpcf7 img.ajax-loader {
	display:none;
}

div.wpcf7 .watermark {
	color: #888;
}

/* booking forms */

 div.wpcf7 .courseForm input:focus,  div.wpcf7 .courseForm textarea:focus {

	
}
.courseForm span.wpcf7-not-valid-tip {
	top:0px;
}



div.wpcf7-response-output {
	
}

.courseForm div.wpcf7-response-output {
	color:#FC0419;
	margin: 0px;
	border:none;
	top:-24px !important;
}

.enquiryForm {
	margin-top:72px;
}





/* listings */ 
/* ------------------------------------------------------- */



.logos {
	margin-bottom:60px;
}

.logos h2 {
	font-size:1.0rem;
	margin:0;
	padding:0;
	
}

.logos h3 {
	text-transform:none;
	font-size:0.9rem;
		margin:0 !important;
	padding:0 !important;
}

.logo {
	width:50%;
	aspect-ratio: 9	/ 8;
	overflow:hidden;
}

.logosHeader h2 {
	font-size:1.0rem;
	line-height:1.2rem;
}


.logo-bg { }


.logo img {
/*	background-color: #EEEBEB; */
	background-color: #E4DFDF;

	object-fit:cover;
	
	
	
}


footer .logos img {
	background:none;
	
	width:48%;
	
	margin: 0px;
	padding:0px;
	
}

@media (min-width: 768px) {
	.logo {
		width:20%;
	}
	
	.logosHeader {
		aspect-ratio: 9	/ 8;
	}

	footer .logos img {
		background:none;
		max-height:50px;
		width:auto;
		margin: 0px 12px 0px 0px;
		padding:0px;
	}
}



/* listings */ 
/* ------------------------------------------------------- */

/*
.listing {
	margin-bottom:24px;
	min-height:200px;
}

.listingHeader {
	background: #30697B url('images/listing-header-bg.png') bottom left repeat-x;
	color:#fff;
	padding: 12px 24px;
}

.listingDate {
	margin:12px 0 12px 0;
	font-weight:400;
}

.listingTitle {
	margin:12px 0 6px 0;
}

.listingImage {
	overflow:hidden;
	padding:0;
	height:200px;
}

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

.listingInfo {
	padding: 18px 24px 0px 24px;
	line-height:1.2;
	font-size:0.9em;
	background-color: rgba(240,244,244,0.9);

}

.listing h3 {
	font-size:1.4em;
	color:#fff;
}

.listing a {
	text-decoration:none;
	color:#fff;
}

.listingInfo  a{
	color:#333;
}

.listing a:hover {
	color:#fff;
	background-image:none;
}

.listingInfo  a:hover{
	color:#333;
}

.listing a:hover .readMore {
	text-decoration:underline;
}


@media (min-width: 992px) {
	.listingImage {
		position:relative;
		height: auto ;
	}

	.listingImage img {
		position:absolute;
		top:0;
	}
	
	.listing h3 {
		font-size:1.2em;
	}
}
*/

/* Card  */
/*
.calloutBoxes {
	margin-bottom:12px;
}
*/
/*
.card {
	position:relative;
	border:none;
	overflow:hidden;
}

.card .title {
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	padding:8px 12px;
	background-color:rgba(48, 105, 123, 0.8);
	font-weight: 600;
}

.card h3{
	margin:0;
	text-shadow: 0px 0px 4px #2d2d2d;
	font-size:1.1rem;
	color:#fff;
	
}

.card a:hover {
	color:#fff;
}

.card .description {
	position:absolute;
	top:0;
	left:0;
	opacity:0;
	height:100%;
	width:100%;
	padding:12px;
	overflow:hidden;
	background-color:rgba(255, 255, 255, 0.88);
	background-color:rgba(48, 105, 123, 0.8);
	font-weight: 400;
	font-size: 1.0rem;
	transition: 0.3s;
	line-height: 1.0;
	color:#fff;
}

.card .description  h3{
	margin-bottom:4px;
}

@media (min-width: 992px) {
	.card .description {
		font-size: .9rem;
	}
}

@media (min-width: 1200px) {
	.card .description {
		font-size: 1.0rem;
		line-height: 1.1;
	}
}

.card:hover .description {
	transition: 0.3s;
	opacity:1;
}

.card:hover .title  {
	transition: 0.5s;
	opacity:0;
}


.card .dates {
	font-weight:400;
}	

.card img { 
	width:100%;
	height:100%;
    object-fit: cover;
}
*/

/* news items */

.newsItems {
	background-color: #010526;
	padding: 50px 0px 20px 0px;
	margin-bottom:24px;
}

.newsItems h2 {
	font-size:2.2rem ;
	margin:0px 0px 20px 0px;
	max-width:100%;
}


@media (min-width: 768px) {
	.newsItems {
		padding: 80px 0px 40px 0px;	
	}

	.newsItems h2 {
		margin:0px 0px 42px 0px;
	}

}

.newsItem {
	background-color: #fff;
	font-size:0.9rem;
	font-weight:300;
	margin-bottom:24px;
}



.newsItem .newsHeader {
	background: #FC0419 url('images/newsItem-bg.png') repeat-y right;
	background-size: 100px;
	width:100%;
	height:100px;
	position:relative;
}

.newsItem .newsHeader h2{
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	font-weight:400;
	font-size:.9rem;
	line-height:1.0rem;
	color:#fff;
	background-color:#010526;
	margin:0;
	color:#fff;
	padding:2px 12px !important;
	display:block;
}


.newsBody {
	padding: 48px 24px 12px 24px;
}



.newsItem  h3{
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
	font-weight:700;
	line-height:1.0rem;
	font-size:0.9rem !important;
	color:#F24E1E;
	text-transform: none;
	
}

.newsItem  h3 a{
	text-decoration:none;

}




/* Gallery  */

.royalSlider {
	width: 100% !important;
	-webkit-user-select: none;
	-moz-user-select: none;  
	user-select: none;

	background: #eee !important;
	clear:both;
}


.royalSlider,
.royalSlider  .rsOverflow,
.royalSlider  .rsSlide,
.royalSlider  .rsVideoFrameHolder,
.royalSlider  .rsThumbs {
	background: #eee !important;
}

.royalSlider  .rsThumbs {
	background: #ddd !important;
	margin-bottom:24px !important;
}

.royalSlider.rsFullscreen,
.royalSlider.rsFullscreen  .rsOverflow,
.royalSlider.rsFullscreen  .rsSlide,
.royalSlider.rsFullscreen  .rsVideoFrameHolder,
.royalSlider.rsFullscreen  .rsThumbs {
	border:none;
	background: #222 !important;
}

.royalSlider .rsGCaption span {
	display: block;
	clear: both;
	color: #bbb;
	font-size: 14px;
	line-height: 22px;
}

.royalSlider .rsGCaption {
	width: 100% !important;
	text-align:center !important;
	background: rgba(0,0,0, 0.5) !important;
	left:0 !important;
	bottom:0 !important;
}

.royalSlider .rsThumbsHor {
	width: 100%;
	height: 62px !important;
	padding: 6px;
}

.royalSlider .rsThumb {
    width: 50px !important;
    height: 50px !important;
	border:none !important;
}

.royalSlider .rsThumb.rsNavSelected span.thumbIco {
	border: none !important;
	border: none !important;
} 

.royalSlider .rsThumb img {
	opacity: 0.6 !important;
	filter: alpha(opacity=60) !important;
	transition: opacity 0.3s;
}

.royalSlider .rsThumb.rsNavSelected img, .royalSlider .rsThumb:hover img {
	opacity: 1.0 !important;
	filter: alpha(opacity=100) !important;
}

 .royalSlider .rsThumbsArrow {
	background-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,.2));
}

 .royalSlider .rsThumbsArrowLeft { 
	background-image: linear-gradient(to left, rgba(0,0,0,0), rgba(0,0,0,.2)); 
}

.royalSlider > .rsImg {
	visibility:hidden;
}

.royalSlider img {
}

.rsWebkit3d .rsSlide {
	-webkit-transform: none;
}
.rsWebkit3d img {
	-webkit-transform: translateZ(0);
}

@media (max-width: 768px) {
	main img:not(.royalSlider *):not(.notFullWidthMobile *) {
		clear:both;
		width:100% !important;
		margin:0 !important;
		padding:0 !important;
	}
}
	

/* Images */

figure.size-medium {
	width:100%;
}

figure.size-medium img {
	width:100%;
}

@media (min-width: 768px) {
	 figure.size-medium {
		width:50%;
	}
}


/* overrides block settings css for mobile */

.wp-block-image .alignright {
		margin-top:0 !important;
}

/* sets these again */
.alignleft {
	/*rtl:ignore*/
	float: left !important;
	/*rtl:ignore*/
	margin-right: 1.5em !important;
	margin-bottom: 1.5em !important;
}

.alignright {
	/*rtl:ignore*/
	float: right !important;
	/*rtl:ignore*/
	margin-left: 1.5em !important;
	margin-bottom: 1.5em !important;
}

.aligncenter {
	clear: both !important;
	display: block !important; 
	margin-left: auto !important;
	margin-right: auto !important;
	margin-bottom: 1.5em !important;
}


@media (max-width: 768px) {
	.alignleft {
		/*rtl:ignore*/
		float: none !important;
		/*rtl:ignore*/
		margin-right: 0em !important;
		margin-bottom: 0em !important;
	}

	.alignright {

		/*rtl:ignore*/
		float: none !important;
		
		/*rtl:ignore*/
		margin-left: 0em !important;
		margin-bottom: 0em !important;
	}

	.aligncenter {
		clear: both;
		display: block;
		/*rtl:ignore*/
		float: none !important;

		/*rtl:ignore*/
		margin-left: 0em !important;
		margin-right: 0em !important;
		margin-bottom: 0em !important;
	}

	/* sets these again */
	.alignleft.notFullWidthMobile {
		/*rtl:ignore*/
		float: left !important;
		/*rtl:ignore*/
		margin-right: 1.5em !important;
		margin-bottom: 1.5em !important;
	}

	.alignright.notFullWidthMobile {
		/*rtl:ignore*/
		float: right !important;
		/*rtl:ignore*/
		margin-left: 1.5em !important;
		margin-bottom: 1.5em !important;
	}

	.aligncenter.notFullWidthMobile {
		clear: both !important;
		display: block !important; 
		margin-left: auto !important;
		margin-right: auto !important;
		margin-bottom: 1.5em !important;
	}
}


/* Embeds */


.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	overflow: hidden; 
	max-width: 100%;
	height: auto;
}

.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.responsive-map{
	overflow:hidden;
	padding-bottom:100%;
	position:relative;
	height:0;
	margin-top:24px;
	clear:both;
}

.responsive-map iframe{
	left:0;
	top:0;
	height:100%;
	width:100%;
	position:absolute;
}

.responsive-embed{
	margin-top:24px;
	overflow:hidden;
	padding-bottom:100%;
	position:relative;
	height:0;
}

.responsive-embed iframe{
	left:0;
	top:0;
	height:100%;
	width:100%;
	position:absolute;
}

/* Extras */
.grecaptcha-badge { 
    visibility: hidden !important;
}

.recaptcha {
	font-size:0.9em;
	opacity:.8;
}

.courseVideo {
	float:right;
}

stripe-buy-button {
	position:relative;
	top:8px;
}

.clear {
	clear:both;
}

