/******
Do a find and replace to change all colours / fonts

Colour:
main dark grey #575757
Lighter grey #8f8f8f

Font:
'Quicksand' is the google font
********/

html,
body {
    height: 100%;
	font-family: Trebuchet MS,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Tahoma,sans-serif;
}
h1{
	color: #6b8af3;
	padding: 0px 0px 10px;
	margin: 0px 0px 10px;
}
h2, h3{
	/*font-family: 'Quicksand', sans-serif;*/
}
#content p, #content span {
  
}
#content a {
  	
}
header {
	background-color: #fff;
}
.navbar-header {
    text-align: center;
	float: none;
}
.navbar-brand {
    color: #6b8af3;
	height: 100%;
	width: 100%;
	font-size: 32px;
	float: none;
	display: block;
	line-height: normal;
	text-align: center;
}
.navbar-brand:focus, .navbar-brand:hover {
    color: #6b8af3;
}
.navbar-brand > img {
	margin: 0 auto 15px;
}

section#welcome {
	position: relative;
}

section#main-text {
	padding-bottom: 70px;
}
section#main-text.home-text .welcome-vid{
	float: left;
	margin: 0 15px 15px 0;
}
section#main-text.home-text h1:first-child {
	font-size: 42px;	
}
section#main-text h2 {
	color: #144b9e;
}
section#main-text.home-text h2:first-child {
	margin-bottom: 20px;	
	font-size: 28px;
}
section#main-text a {
	color: #6b8af3;
}
section#main-text #content p, section#main-text #content p span, section#main-text #content li{
	font-size: 18px !important;
	line-height: 1,7em;
	color: #999;
}

.tagline {
    position: absolute;
    bottom: 10%;
	width: 100%;
	text-align: center;
    color: #fff;
    font-size: 10px;
    padding: 12px 0;
    z-index: 100;
	text-shadow: 2px 1px 2px rgb(44 44 44);
}
#class_menu li a {
    color: #fff !important;
	margin: 0px 10px 10px 0px;
	background: #144b9e;
	transition: 0.3s;
	border: 0;
}
#class_menu li a:hover{
	background: #6b8af3;
	text-decoration: none !important;
}

/* ----- Icon Styles -----*/

section#icons {
	padding: 0 0 20px;
	margin-top: -30px;
}
.icon-column {
	min-height: 290px
}
.icon-column a {
    color: #fff;
    line-height: 40px;
    font-size: 26px;
}
.icon-column a:hover {
   	text-decoration: none;
}
.circle {
    height: 200px;
    width: 200px;
    border-radius: 50%;
	margin: 0 auto;
	padding-top: 50px;
}
.circle.green {
	background-color: #144b9e;
}
.circle.blue {
	background-color: #6b8af3;
}

.fa-book, .fa-calendar, .fa-envelope-open {
	font-size: 46px;
}
.circle-shadow {
	height: 20px;
    width: 110px;
    background-color: #e4e4e4;
    border-radius: 50%;
	margin: 20px auto 0;
}
.icon-column a:hover .circle-shadow {
	background-color: #999;
	margin: 30px auto 0;
}

/* ----- Quick Links Styles -----*/

section#quick-links {
	padding: 30px 0px;
}
.quick-links-column {
	padding: 0;
}
.quick-links-column a {
	color: #fff;
	display: block;
}
.quick-links-column a:hover {
	text-decoration: none;
}
.quick-links-column img{
	transition: 0.3s ease-in;
}
.quick-links-column a:hover img{
	opacity: 0.8;
}
.quick-links-column a:hover .ql-header.green {
	background-color: #0b3f8b;
}
.quick-links-column a:hover .ql-header.blue {
	background-color: #5a79dd;
}

.ql-header {
	padding: 14px;
	margin: 0;
	border-bottom: 5px solid #fff;
	transition: 0.3s ease-in;
}
.ql-header.green {
	background-color: #144b9e;
}
.ql-header.blue {
	background-color: #6b8af3;
}

.square{
    padding: 5px;
    text-align: center;
    height: 200px;
}
.square .content{
	position: relative;
	display: block;
	text-decoration: none;
	cursor: pointer;
}
.square .content:hover > .icon i.fa{
  animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  perspective: 1000px;
}

.hvr-sweep-to-right.white:before{
	background: #ffffff;
}

.square.s1 .content, 
.square.s2 .content, 
.square.s3 .content{
	height: 100%;
    padding: 45px 0px;
}
.square.s1 .content{
    background: #144b9e;
}
.square.s2 .content{
	background: #6b8af3;
}
.square.s3 .content{
	background: #144b9e;
}
.square i.fa{
	font-size: 55px;
    color: #ffffff;
}
.square .text{
	font-size: 25px;
	color: #ffffff;
}
.flip-tiles-column h1 {
    color: #fff;
    position: absolute;
    bottom: 20px;
    width: 100%;
    font-size: 24px;
}

.flip-container:hover .front, .flip-container.hover .front {
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
    transform: rotateY(180deg);
}
		
		/* END: Accommodating for IE */

		.flip-container, .front, .back {
			width: 100%;
			height: 250px;
			-webkit-border-radius: 2px;
			-moz-border-radius: 2px;
			border-radius: 2px;
			margin-bottom: 20px;
		}

		.flipper {
			-webkit-transition: 0.6s;
			-webkit-transform-style: preserve-3d;
			-ms-transition: 0.6s;

			-moz-transition: 0.6s;
			-moz-transform: perspective(1000px);
			-moz-transform-style: preserve-3d;
			-ms-transform-style: preserve-3d;

			transition: 0.6s;
			transform-style: preserve-3d;

			position: relative;
		}

		.front, .back {
			-webkit-backface-visibility: hidden;
			-moz-backface-visibility: hidden;
			-ms-backface-visibility: hidden;
			backface-visibility: hidden;

		    -webkit-transition: 0.6s;
		    -webkit-transform-style: preserve-3d;
		    -webkit-transform: rotateY(0deg);

		    -moz-transition: 0.6s;
		    -moz-transform-style: preserve-3d;
		    -moz-transform: rotateY(0deg);

		    -o-transition: 0.6s;
		    -o-transform-style: preserve-3d;
		    -o-transform: rotateY(0deg);

		    -ms-transition: 0.6s;
		    -ms-transform-style: preserve-3d;
		    -ms-transform: rotateY(0deg);

		    transition: 0.6s;
		    transform-style: preserve-3d;
		    transform: rotateY(0deg);

			position: absolute;
			top: 0;
			left: 0;
		}

		.front {
			-webkit-transform: rotateY(0deg);
			-ms-transform: rotateY(0deg);
			/*background: #963591;*/
			z-index: 2;
		}

		.back {
			/*background: #842e80;*/
			-webkit-transform: rotateY(-180deg);
		    -moz-transform: rotateY(-180deg);
		    -o-transform: rotateY(-180deg);
		    -ms-transform: rotateY(-180deg);
		    transform: rotateY(-180deg);
		}

		.front .icon {
			margin-top: 40px;
		}
		
		.front .icon.fa {
    	font-size: 60px;
    	background: #fff;
    	padding: 25px 10px 10px;
    	color: #144b9e;
    	z-index: 1;
    	border-radius: 50%;
    	width: 110px;
		height: 110px;
		}
		
		.mission-block .front {
			background: #144b9e;
		}
		.mission-block .back {
			background: #144b9e;
		}
		.vision-block .front {
			background: #6b8af3;
		}
		.vision-block .back {
			background: #6b8af3;
		}
		.newsletter-block .front {
			background: #144b9e;
		}
		.newsletter-block .back {
			background: #144b9e;
		}
		
	.back p {
			position: absolute;
			bottom: 40px;
			left: 0;
			right: 0;
			text-align: center;
			padding: 0 20px;
			font-size: 28px;
			color: #fff;
		}

		/* vertical */
		.vertical.flip-container {
			position: relative;
		}

			.vertical .back {
				-webkit-transform: rotateX(180deg);
				-moz-transform: rotateX(180deg);
				-ms-transform: rotateX(180deg);
				transform: rotateX(180deg);
			}

			.vertical.flip-container .flipper {
				-webkit-transform-origin: 100% 213.5px;
				-moz-transform-origin: 100% 213.5px;
				-ms-transform-origin: 100% 213.5px;
				transform-origin: 100% 213.5px;
			}

			/* START: Accommodating for IE */
			.vertical.flip-container:hover .back, .vertical.flip-container.hover .back {
			    -webkit-transform: rotateX(0deg);
			    -moz-transform: rotateX(0deg);
			    -o-transform: rotateX(0deg);
			    -ms-transform: rotateX(0deg);
			    transform: rotateX(0deg);
			}

			.vertical.flip-container:hover .front, .vertical.flip-container.hover .front {
			    -webkit-transform: rotateX(180deg);
			    -moz-transform: rotateX(180deg);
			    -o-transform: rotateX(180deg);
			    transform: rotateX(180deg);
			}
/* ----- Bottom Logos Styles -----*/


section#events_section {
	border-top: 3px solid #144b9e;
}
#events_section .container .item {
    display: none;
}
#events_section .container .item.active {
    display: block;
}
#events_section a.events-header:hover, #events_section a.events-header:focus {
	text-decoration: none;
}
#events_section h1 {
	display: table;
	margin: 0 auto 30px;
	border-bottom: 3px solid #144b9e;
	padding-bottom: 10px;
	font-size: 26px;
	text-transform: uppercase;
}
/*#events_section .controls {
    text-align: center;
	display: none;
}*/
/*#events_section .container a.lower-link {
    text-transform: uppercase;
	color: #1b2c45;
	margin-bottom: 10px;
	display: inline-block;
	font-size: 18px;
	width: 100%;
}*/
#events_section .container .item {
    display: none;
	margin-right: -15px;
	margin-left: -15px;
}
#events_section .container .item.active{
    display: block;
	margin-right: -15px;
	margin-left: -15px;
}
/*.event-col {
	margin-bottom: 80px;
}
.event-col:last-child {
	margin-bottom: 20px;
}*/
#events_section .event-col .event-link {
    display: block;
	/*width: 290px;*/
	font-size: 22px;
	line-height: 1.1em;
	margin: 0 auto 20px;
}
#events_section .event-col .event-link:hover {
	text-decoration: none;
}
#events_section .event-col .details .text:hover {
	text-decoration: underline;
}
#events_section .event-col .details {
	display: block;
	margin: auto;
	color: #fff;
	text-align: center;
}
/*#events_section .event-col .details h2 {
    margin-top: 0;
}*/
#events_section .event-col .details .month {
	font-size: 26px;
	display: table;
	margin: 0 auto 25px;
	text-transform: uppercase;
}
#events_section .event-col .details .day {
	font-size: 50px;
	font-weight: 700;
	display: table;
	margin: 0 auto;
	transition: all .2s ease-in-out;
}
/*#events_section .event-col .details .time i.fa {
    font-size: 30px;
    color: #b59f76;
}
#events_section .event-col .event-link:hover .time i.fa {
    color: #c1ae8b;
}
#events_section .event-col .details .time span {
    font-size: 30px;
    margin-left: 10px;
	text-transform: lowercase;
}*/
#events_section .event-col .details .text {
    margin-top: 20px;
	margin-bottom: 20px;
	color: #005dac;
	font-weight: 400;
}
#events_section .event-col .event-link:hover .details, #events_section .event-col .event-link:hover .details h2, #events_section .event-col .event-link:hover .diary-details {
	color: #fff;
}
.event-date {
	position: relative;
	width: 180px;
	height: 180px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	margin: 0 auto 10px;
	position: relative;
	z-index: 1;
	background-color: #6b8af3;
}
.event-date::before {
    border-radius: inherit;
    content: '';    
    display: block;
    height: 100%;
    position: absolute;
    top: 0; left: 0;
    opacity: 0;
    width: 100%;
    z-index: -1;
    transition: opacity 0.45s;
}
.event-date:hover::before {
    opacity: 1;
}
.event-date:hover .day {
	transform: scale(1.5);
}
.inner-event-date {
    position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
/*.event-title {
	font-size: 22px;
}
.diary-details {
	position: absolute;
	display: block;
	bottom: -40px;
	color: #fff;
	background: #ce333a;
	width: 150px;
	font-size: 18px;
	text-transform: uppercase;
	line-height: 1em;
	padding: 12px;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: background-color .3s ease-in-out;
    -moz-transition: background-color .3s ease-in-out;
    -ms-transition: background-color .3s ease-in-out;
    -o-transition: background-color .3s ease-in-out;
    transition: background-color .3s ease-in-out;
}
#events_section .event-col .event-link:hover .diary-details {
	background-color: #a4282e;
}*/

/* ----- Events Section END -----*/


#bottom-logos .col-md-5ths {
	text-align: center;
	padding: 10px 0;
}
#bottom-logos img {
	display: block;
	margin: 0 auto 22px;
	height: 90px;
}
.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}
section#map {
	background-color: #fff;
	margin-bottom: -5px;
}

section#contact {
	background-color: #144b9e;
	color: #fff;
	padding: 30px 0;
	border-top: 5px solid #fff;
	border-bottom: 10px solid #fff;
}
.contact-upper {
	font-size: 16px;
}
.contact-lower {
	font-size: 14px;
	margin-top: 10px;
}
.contact-lower a {
	color: #fff;
}
.contact-lower span {
	display: table;
	margin-bottom: 8px;
}

.class_heading_right a {
    color: #fff;
}
.standard_box p.staff_details {
	color: #575757 !important;
}
#class_info a {
   color: #8f8f8f;
}

/* ----- Common Styles -----*/

.top-buffer {
	padding-top: 40px;
}
.bottom-buffer {
	padding-bottom: 20px
}


/* ----- Footer Styles -----*/

footer {
	padding: 20px;
	background-color: #6b8af3;
	color: #fff;
	text-align: center;
}

footer a {
	text-decoration: none;
}
footer a:hover {
	color: #fff;
	text-decoration: underline;
}
.footer-right {
	margin-top: 16px;
}
.footer-right span {
	width: 50px;
	font-size: 22px;
	-webkit-transition: all .2s ease;
	-moz-transition: all .2s ease;
	-ms-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}
.footer-right span:hover {
	color: #e4f0b1;
}


/* ----- Responsive Styles -----*/

@media (min-width: 420px) {
	.tagline {
    font-size: 14px;  
	}
}
@media (min-width: 470px) {
	.contact-lower {
    margin-top: 0;
	}
	.contact-lower span {
    display: inline-block;
    margin-bottom: 0;
	}
	.contact-lower span.contact-break::after {
    content: '|';
    color: #fff;
    padding: 0 6px;
	}
	#events_section h1 {
		font-size: 36px;
	}
}
@media (min-width: 576px) {
	.container > .navbar-header {
    	text-align: left;
	}
	.navbar-brand {
	float: left !important;
	display: inline;
	line-height: 20px;
	}
	.navbar-brand > img {
	display: inline-block;
	padding-right: 20px;
	margin: 0;
	}
	.tagline {
    font-size: 24px;
	}
	.contact-lower {
    font-size: 18px;
	}
}
@media (min-width: 768px) {
	.tagline {
    font-size: 34px;
	}
	#events_section h1 {
		margin-bottom: 40px;
	}
	#events_section .event-col .event-link {
		height: 270px;
	}
	section#contact {
    padding: 50px 0;
	}
	.contact-lower {
	font-size: 23px;
	}	
}
@media (min-width: 992px) and (max-width: 1199px){
	#events_section .event-col .event-link {
	width: 215px;
	height: 260px;
	font-size: 18px;
	}
	#events_section .event-col .details .month {
	font-size: 21px;
	}
	#events_section .event-col .details .day {
	font-size: 40px;
	}
	#events_section .event-col .details .time i.fa {
	font-size: 26px;
	}
	#events_section .event-col .details .time span {
	font-size: 26px;
	}
	
}
@media(min-width:992px) {
	section#main-text.home-text h1:first-child {
	font-size: 70px;	
	}
	section#main-text.home-text h2:first-child {
	font-size: 34px;
	}	
	#logo span.name {
    font-size: 38px;
	}
	.navbar-brand{
	font-size: 32px;
	}	
	.tagline {
    font-size: 40px;
	}
	#events_section h1 {
		font-size: 42px;
		border-bottom: 4px solid #144b9e;
	}
	#events_section .event-col .event-link {
		margin: 0 auto 0px;
	}
	#events_section .container a.lower-link {
		margin-top: 30px;
	}
	section#events_section {
		border-top: 4px solid #144b9e;
	}
	section#icons {
    padding: 0 0 40px;
	}
	.icon-column {
    min-height: 260px;
	}
	/*.col-md-5ths {
    width: 20%;
    float: left;
    }*/
	#bottom-logos img {
		height: 90px;
	}
	.contact-upper {
    font-size: 18px;
	}
	.contact-lower {
	font-size: 26px;
	}
	#mobile_black_bar {
    display: none;
	}
	.footer-right {
	margin-top: 0;
	}
}
@media(min-width:1200px) {
	.navbar-brand{
		font-size: 48px;
	}
	.tagline {
    font-size: 60px;
	bottom: 4%;
	}
	#events_section h1 {
		font-size: 42px;
		margin-bottom: 50px;
	}
	#events_section .event-col .event-link {
		width: 265px;
	}
	.contact-upper {
    font-size: 22px;
	}
	.contact-lower {
	font-size: 32px;
	}
	#bottom-logos img {
		height: 90px;
	}
}

@media(max-width:380px) {
	.col-md-5ths {
     width: 100%;
     float: left;
    }
}

@keyframes shake {
	10%, 90% { transform: translate3d(-1px, 0, 0); }
	20%, 80% { transform: translate3d(2px, 0, 0); }
	30%, 50%, 70% { transform: translate3d(-4px, 0, 0); }
	40%, 60% { transform: translate3d(4px, 0, 0); }
  }