/*
Theme Name: Schoolcms
Author: Innermedia
Author URI: https://www.innermedia.co.uk
Description: 
Version: 5.1.0

*/
:root {
	--body_colour : #000;
	--title_colour : #000;
	--link_colour : #ec3822;
	--link_colour_hover : #ec3822;	
	--button_bg: #ec3822;
	--button_colour: #fff;
	--button_bg_hover: #000;
	--button_colour_hover: #fff;
}

/*Content Wrapper*/


.well {
	padding:10px 15px;
	background:#eaeaea;
	border:solid 1px #ddd;
	margin:20px 0;
}
.scms-carousel .owl-dots span {
	width:10px;
	height:10px;
	display:inline-block;
	background:currentColor;
	border-radius:50%;
}
.scms-carousel .owl-nav {
	position:relative;
}
.scms-carousel .owl-nav .owl-prev{
	position:absolute;
	left:0;
	top:0;
}
.scms-carousel .owl-nav .owl-next{
	position:absolute;
	right:0;
	top:0
}
.scms-carousel .owl-dots {
	padding-left:10px;
	padding-right:10px;
	text-align:center;
}
.scms-carousel .owl-dots .owl-dot {
	display:inline-block;
	margin:0 2px;
	opacity:0.8;
}
.scms-carousel .owl-dots .owl-dot.active {
	opacity:1;
}
.breadcrumbs {
	font-size:0.875rem;
	padding-bottom:1.25rem;
	position:relative;
	border-bottom:solid 1px #d7d9d9;
	margin-bottom:1.25rem;
}
.searchform label{
	display:none;
}
.searchform {
	padding-right:40px;
	padding-left:0px;
	position:relative;
	overflow:hidden;
	font-size:14px;
}
.searchform input.searchInput {
	border: 0;
	height:30px;
	width:100%;
	background:transparent;
	padding: 4px 10px;
    outline: 0;
}
.searchform .searchSubmit{
    background: transparent;
    border: 0;
    text-transform: uppercase;
    padding: 0;
    font-size: 16px;
	position:absolute;
	background-repeat:no-repeat;
	background-position:center;
	right:5px;
	top:0px;
	width:30px;
	height: 28px;
    outline: 0;
}
.body-text iframe{
	max-width:100%;
}

/*news*/
.list-item{
    overflow: hidden;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
}
.list-item-image{
	text-align:center;
}
.list-item-image a{
	display:block;
	padding:10px 0;
}
.list-item-text{

}
.list-item-text p.date{
	font-size:0.8em;
	margin:0;
}

.postThumb {
	margin-bottom:20px;
	text-align:center;
}

/*------------------------------------*\
    Header
\*------------------------------------*/
header.mainHeader {
	height:120px;
	position:relative;
}
.headGroup {
	background:#fff;
	transition:300ms;
	padding-top:15px;
	padding-bottom:15px;
	z-index:220;
	position:fixed;
	height:120px;
	width:100%;
	top:0;
	left:0;
}
.fixedHeader .headGroup {
	
}
.socialDesktop {
	justify-content: end;
    display: flex;
}
/*------------------------------------*\ 
    Navigation
\*------------------------------------*/

.menu-toggle{
    position:relative;
	padding-right:40px;	
	display:inline-block;
	cursor:pointer;
	height:30px;	
    color: #ec3822;
}
.menu-toggle .toggleText{
	display:none;
	vertical-align:middle;
	font-size:14px;
}
.menu-toggle .toggleIcon {
	position:absolute;
	width:30px;
	height:30px;
	right:0;
	top:0px;
	transition:300ms;
}
@media (min-width:992px){
	.menu-toggle .toggleText{
		display:inline-block;
	}
}
.menu-toggle .toggleIcon span:before,
.menu-toggle .toggleIcon span:after {
	content:'';
}
.menu-toggle .toggleIcon span,
.menu-toggle .toggleIcon span:before,
.menu-toggle .toggleIcon span:after {
    width: 26px;
    height: 1px;
    background-color: var(--link_colour);
    display: block;
    transition:all 300ms;
	position:absolute;
}

.menu-toggle:hover .toggleIcon span,
.menu-toggle:hover .toggleIcon span:before,
.menu-toggle:hover .toggleIcon span:after{
    background-color: var(--link_colour_hover);
}
.menu-toggle .toggleIcon span {
	top:50%;
	left:2px;
	margin-top:-.5px;	
}
.menu-toggle .toggleIcon span:before {
    top: -8px;
}
.menu-toggle .toggleIcon span:after {
    top: 8px;
}
body.menuopen .menu-toggle .toggleIcon span {
    background-color: transparent!important;
}
body.menuopen .menu-toggle .toggleIcon span:before {
    transform: rotate(135deg);
    top: 0px;
}
body.menuopen .menu-toggle .toggleIcon span:after {
    transform: rotate(-135deg);
    top: 0px;
}
#navbar{
	position: fixed;
	right: 0;
	transition: transform 500ms;
	background-color: #fff;		
	z-index: 9999;
	top: 119px;
	bottom:0;
	width: 480px;
	max-width:100%;
	transform:translateX(100%);
	border-left:1px solid #676767;
	display:flex;
	flex-direction:column;
}

#navbar .menu-main-container{
	padding:20px 20px;	
	overflow-x: hidden;	
}
#navbar .navbarExtra {
	padding:10px 20px;
}
body.menuopen .headGroup{ 
	border-bottom-color:#676767;	
}
body.menuopen  #navbar{ 
	transform:translateX(0%);
	z-index: 9999;
}	
#menu-main{
	margin-bottom:30px;
	margin-top:20px;
	clear:both;
}
#menu-main li{
	position:relative;
}	
#menu-main li a{
	display: block;
	text-decoration:none;
	line-height:1.35;
	position:relative;
	border-bottom:solid 1px #676767;
	padding:10px 10px;
}
#menu-main li a:hover{
	text-decoration:none;
	color:#000;
}
#menu-main .sub-menu {
	padding-left:40px;
	position:relative;
	display:none;
	border-bottom:solid 1px #676767;
}
#menu-main .sub-menu li:last-child > a{		
	border-bottom:none;
}
#menu-main li.open > .sub-menu {
	display:block;
}
#menu-main li.menu-item-has-children > a {
	padding-right:35px;
}	
#menu-main li.menu-item-has-children > .arrow {
	position:absolute;
	right:0;
	top:5px;
	width:30px;
	height:30px;
}	
#menu-main li.menu-item-has-children > .arrow:after{
	position:absolute;
	content: '\f054';
	display: block;
	width: 11px;
	height: 25px;
    left: 10px;
    top: 3px;
	font-weight: 700;
	font-family: "Font Awesome 6 Free";
	transform: rotate(0deg);
	transition: 300ms;
}
#menu-main li.open.menu-item-has-children > .arrow:after{
	transform:rotate(90deg);
}

/*------------------------------------*\ 
    Banner
\*------------------------------------*/
#pageBanner,
.bannerWrap {
	position: relative;
	overflow:hidden;
	min-height:300px;
	max-height:680px;
}
#homeBanner {	
	position: relative;
	overflow:hidden;
	min-height:480px;
	max-height:100vh;
}
#pageBanner:before,
.bannerWrap:before {
	content:'';
	display:block;
	width:100%;
	padding-top:35.897%;
}
#homeBanner:before {
	content:'';
	display:block;
	padding-top:56.08%;
}
@media(min-width:768px){
	#homeBanner {
		max-height:880px;
	}
	#homeBanner:before {
		content:'';
		display:block;
		padding-top:56.08%;
	}
}

/*------------------------------------*\ 
    FOOTER
\*------------------------------------*/

#footer{
	margin-top:2rem;
}
#menu-useful {
	list-style:none;
	padding:0;
}
.footerLower {
	background:#000;
	color:#dddedf;
	--link_colour:#dddedf;
	padding:20px 0;
	font-size:14px;
	text-align:center;
}
.footerLower p,
.footerLower ul{
	margin:10px 0;
}
.footerLower a{
	text-decoration:none;
}
.footerInfo {
	text-align:center;
	line-height:1.87;
	margin-bottom:20px;
}
.footerInfo h3{
	font-size:1.5em;
	margin:30px 0 20px;
}
.footerInfo a:before {
	content: "";
    display: inline-block;
    vertical-align: middle;
    width: 0px;
    height: 1px;
    background-color: #000;
    transition: all 300ms;
    margin-right: 0px;
}
.footerInfo a:hover:before {
    width: 5px;
    margin-right: 5px;
}
.footer-links{
	margin:0;
	list-style:none;
	padding:0;
	margin-bottom:15px;
}
.footer-links li{
	display: inline;
}
.footer-links li:after{
	content:" | ";
	margin: 0 1px 0 1px;
	display: inline;
}
.footer-links li:last-child:after{
	content:"";
}
.footer-links li a{
	display: inline;
	white-space:nowrap;
}
@media (min-width:768px){
	.footerLower {
		text-align:initial;
		padding:50px 0;
	}
}
@media (min-width:1200px){
	.footerInfo {
		margin-bottom:70px;
	}
}

/*------------------------------------*\
    Dynamic Content
\*------------------------------------*/

.dynamicContent {
	margin-top:30px;
	margin-bottom:00px;
}
@media (min-width:992px){
	.dynamicContent {
		margin-top:50px;
		margin-bottom:00px;
	}
}
/*******Dividers******/
.dividera{
	clear: both;
    width: 100%;
    height: 100px;
   position:relative;
}
.dividera:before{
	content:'';
	width:90%;
	height:1px;
	border-bottom:solid 1px #ccc;
	position:absolute;
	top:50%;
	left:5%;
}

.dividera:after{
	content:'';
	display:block;
	 background-image: url(images/icon.png);
    background-position: center center;
	background-size:contain;
	height:76px;
	width:76px;
	top:50%;
	left:50%;
	margin-top:-38px;
	margin-left:-38px;
    background-repeat: no-repeat;
	position:absolute;
	background-color:#fff;
}
.dividerb{
    clear: both;
    width: 100%;
    height: 130px;
    background-image: url(images/icon.png);
    background-position: center center;
    background-repeat: no-repeat;
	background-size:90px;
}



/*******FAQS*****/
.faqs{

}
.faqs .faq{
	border-bottom:solid 2px #fff;
}

.faq-question{
	position:relative;
	margin:0;
	padding:0.625rem 1.5rem;
    padding-right: 2em;
	background: #a2a6a9;
	color:#fff;
	cursor:pointer;
}
.faq.open .faq-question{
	background:#969696;
}
.faq-question:hover{
	background: #000;
}
.faq-question:after {
    content: '\f054';
    display: block;
    width: 1.5em;
    height: 1.5em;
    line-height: 1.5em;
	text-align:center;
    position: absolute;
    right: 5px;
    top:0.625rem;
	font-size:0.8em;
	font-weight:700;
	font-family: "Font Awesome 6 Free";   
    transform: rotate(0deg);
	transition:300ms;
}
.faq.open .faq-question:after {
  transform:rotate(90deg);
}

.faqs .faq:last-child .faq-answer{
	border-bottom:solid 1px #a2a6a9;
}
.faqs .faq.open:last-child .faq-answer{
	border-color:#969696;	
}


/******Staff********/
.staffMember {
	padding-bottom:15px;
	margin-bottom:20px;
	border-bottom:solid 1px #eee;
}
.staff-meta {
	margin-bottom:5px;
}
.staff-meta .meta-label {
	font-weight:700;
}
.staff-meta.featured-staff-metas .staff-meta > *{
	display:inline-block;
}
.staff-meta a.email-value{
	font-size: 0;
    color: transparent;
	display: inline-block;
    vertical-align: middle;
}
.staff-meta a.email-value:before {
    content: "send";
    font-size: 12px;
    padding: 5px 10px;
    color: #000;
    display: block;
    text-align: center;
    background-color: #eee;
    border-radius: 5px;
    text-transform: uppercase;
    pointer-events: none;
	transition:300ms;
}
.staff-meta a.email-value:hover:before{
	background-color:#ccc;
}
/*****Quotes******/
.quoteContainer .quotesTitle{ 
	margin:10px 0 0;
	text-align:center;
	padding:0 15px;
}
.quoteContainer {
	background:#e0e0e0;	
	color:#000;
	padding-top:1.5em;
	padding-bottom:1.5em;
}
.quoteContainer .cycle-pager {
	width:100%;
	margin:0;
	padding:0 15px;
	text-align:center;
}
.quoteContainer .cycle-pager span{
	cursor:pointer;
	display:inline-block;
	margin:0 2px;
	width:15px;
	text-align:center;
	opacity:0.8;
	font-size:20px;
}
.quoteContainer .cycle-pager span.cycle-pager-active{
	opacity:1;
}
.quoteContainer blockquote.quote-text{
	padding-top:1em;
	padding-bottom:0.1em;
	margin-bottom:0;
	
}
.quoteContainer .quote-cite{
	text-align:center;
	font-weight:700;
	padding:0 15px 15px;
}
/****Documents******/
a.button.document-link {
	padding-right:50px;
	width:100%;
}
a.button.document-link:after {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f56d";
	display:block;
	position:absolute;
	top:50%;	
    right: 10px;
    transform: translateY(-50%);
}

/*Callout*/
.callout {
	display:block;
	position:relative;
	transition:300ms;
	color: #fff;
	--body_colour: #fff;
	--title_colour: #fff;
    background: #969696;
	font-size:1em;
	overflow:hidden;
}
.callout .calloutContent {
	position:relative;
	text-align:center;
}
.callout .calloutTitle {
	font-size:1em;
	margin:0.5em 0;
}
.callout.hasbg .coimg {
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}
.callout.hasbg .coimg:after {
	content: '';
    display: block;
    width: 100%;
    bottom: 0;
    position: absolute;
    left: 0;
    height: 100%;
    background: rgba(0,0,0,0.3);
}
.callout .coimg img{
	width:100%;
	height:100%;
	object-fit:cover;
	position:absolute;	
}

.callout.hasbg .calloutContent {
	padding-bottom:75px;
	padding-top:150px;
}
.callout.hastext.hasbg .calloutContent {
	padding-bottom:35px;
	padding-top:100px;
}

/***POIS****/
.row.pois {
    --bs-gutter-y: 1.5rem;
}

.poi {
	position: relative;
	display: block;
	transition:all 300ms;
    overflow: hidden;
	background:#676767;
	color:#fff;
	font-family: 'Crimson Pro', serif;
	margin-bottom:30px;
}
.poi:hover  {
	color:#fff;
	text-decoration:none;
}
.poiImage .poiImageBG {
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
	transition:300ms;
	opacity:1;
}

.poiImage .poiImageBG:after {
	content:'';
	display:block;
	width:100%;
	bottom:0;
	position:absolute;
	left:0;
	height:100%;
	background:rgba(0,0,0,0.3);
}
.poiImage .poiImageBG img{
	width:100%;
	height:100%;
	object-fit:cover;
	position:absolute;	
}


.poiImage {
	background:inherit;
}
.poi:hover .poiImage .poiImageBG {

}
.poiImage:before {
	content:'';
	display:block;
	width:100%;
	padding-top:100%;
}
.textOnlyBlock .poiText {
	position:relative;
	padding:25px 15px;
}
.poi .poiTitle {	
	display:inline-block;
	line-height:1.3;
	text-align:center;

}
.poi .textOnlyBlock{
	
}
.poi .poiTitle {
	display:block;
	font-size:20px;
	font-weight:400;
	position:relative;
	padding:10px 15px;
	text-transform:uppercase;
}

.poi .textOnlyBlock .poiTitle{
	margin:5px;
}
.textOnlyBlock {
	padding:10px 30px;
	transition:300ms;
}

.textOnlyBlock .poiText{
	display:block;	
	text-align:center;
}

.poi:hover .textOnlyBlock {
	background-color:rgba(0,0,0,0.2);
	color:#fff;
	text-decoration:none;
}

.poiImage .poiText {
	padding:10px 20px;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;	
	bottom:15%;
	transform:translateY(50%);
	text-align:center;
	width:100%;
	transition:300ms;
}
.poiImage .poiText {
}
.poiImage .poiText .poiEx {
	max-height:0;
	overflow:hidden;
	font-size:18px;
	transition:300ms;
}
.poi:hover .poiImage .poiText {
	bottom:50%;
}
.poi:hover .poiImage .poiImageBG {
	opacity:0;
}
.poi:hover .poiImage .poiEx {
	max-height:460px;	
}
.pois.homePOIs .col-xs-6 {
	padding-left:15px;
	padding-right:15px;
}

/*------------------------------------*\
    HOME DYNAMIC
\*------------------------------------*/
.welcomeBlock {
	margin-bottom:40px;
}
/*------------------------------------*\
    END DYNAMIC CONTENT
\*------------------------------------*/

/*------------------------------------*\
    Sidebar
\*------------------------------------*/
.sidebar {
	margin-top:0px;
}
#menu-side li{
	position:relative;
	margin:5px 0;
}
#menu-side a {
	display:inline-block;
	text-decoration:none;
	padding:0.5rem 1rem;
}
#menu-side a:hover {
	text-decoration:none;
}
/*Top level item*/
#menu-side > li > .sub-menu{
	margin:10px 0;
}
/*main Sub menu items*/
#menu-side .sub-menu li.current-menu-ancestor a,
#menu-side .sub-menu li.current-menu-item a{	
}
#menu-side .sub-menu li.current-menu-item > a{
	
}
#menu-side .sub-menu li.menu-item-has-children > .arrow {
	display:block;
	width:45px;
	height:45px;
	position:absolute;
	top:0;
	right:0;
}
#menu-side .sub-menu li.menu-item-has-children > .arrow:before {
	position:absolute;
	content: '\f054';
	display: block;
	width: 11px;
	height: 27px;
	position: absolute;
	left: 12px;
	top: 10px;
	font-weight: 700;
	font-family: "Font Awesome 6 Free";
	transform: rotate(0deg);
	transition: 300ms;
}

#menu-side .sub-menu li.menu-item-has-children.open > .arrow:before {
	transform:rotate(90deg);
}
#menu-side .sub-menu li a:hover{
	color:#676767;
}
#menu-side .sub-menu .sub-menu {
	background:rgba(0,0,0,0.1);
	padding-bottom:10px;
	display:none;
}
#menu-side .sub-menu .sub-menu li{
	margin:0;
}
#menu-side .sub-menu li.open > .sub-menu {
	display:block;
}
@media (max-width:991.99px){
	.side-menu-container {
		display:none;
	}
}

/*Blog sidebar*/
#blognav ul {
	list-style:none;
}
.sidebarSec {	
    padding:0px 15px 15px;
	margin:0 auto 10px;
}
@media (min-width:1200px){

}
/*Animation*/


.hideme {
	opacity:0;
	top:30px;
	position:relative;
	transition:500ms;
}
.hideme.active {
	opacity:1;
	top:0;
}
