@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto+Slab&display=swap');

*{
	font-family: 'Roboto', 'sans-serif';
}

div.clear{
	clear: both;
}

div.divMessage{
	padding: 15px;
	margin-bottom: 20px;
	color: white;
	font-weight: bold;
	text-align: center;
	line-height: 1.3em;
}

div.divMessage_confirm{
	background-color: green;
}

div.divMessage_error{
	background-color: red;
}

@media (max-width: 1070px){
	a.desktopLogo img{
		display: none;
	}

	a.desktopLogo{
		flex-grow: 1;
	}

	body{
		position: relative;
		overflow-x: hidden;
		box-shadow: inset 2px 4px 10px rgba(0, 0, 0, .2);
	}

	body.bodyGreyOut:hover{
		cursor: pointer;
	}

	ul.ulNavigationParent{
		position: absolute;
		left: -200px;
		top: 0;
		width: 200px;
		height: 100%;
		color: #898989;
		cursor: default;
		z-index: 1000001;
	}

	div.divLiParentListItem, div.divLiChildListItem{
		padding: 20px 10px;
		text-decoration: none;
		color: white;
	}

	li.liParentListItem{
		position: relative;
	}

	li.liParentListItem:not(:first-child), li.liChildListItem{
		border-top: 1px solid #F1F1F1;
	}

	li.liParentListItem a{
		text-decoration: none;
	}

	li.liParentListItem a:first-of-type{
		padding: 20px 0;
	}

	a.expand{
		position: absolute;
		right: 0;
		top: 0;
		padding: 20px 10px;
		color: #F1F1F1;
	}

	ul.ulNavigationChild{
		width: 200px;
		position: relative;
		background-color: #2288bb;
		color: #FFFFFF;
	}

	div.divHeaderLogoContainer{
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 32px;
		padding-top: 98px;
		background-color: #ffffff !important;
	}

	img.imgHeaderLogo{
		max-width: 200px;
	}

	div.divHeader{
		box-shadow: 0 4px 10px rgba(0, 0, 0, .2);
		display: flex;
		align-items: center;
		padding: 10px;
		position: fixed;
		width: 100%;
		box-sizing: border-box;
		z-index: 1000000;
		top: 0;
	}

	.headerOfsted {
		top: 4px !important;
		right:4px !important;
	}

	div.divParentPortal{
		color: #FFFFFF;
		display: flex;
		align-items: center;
		justify-content: space-evenly;
		height: 100%;
	}

	div.divParentPortal span{
		text-align: center;
		font-size: 14px;
		letter-spacing: 1px;
	}

	div.divParentPortal i{
		font-size: 20px;
		margin-left: 4px;
	}

	a.aParentPortal{
		width: 100px;
		box-sizing: border-box;
		text-decoration: none;
		height: 45px;
		margin: 0 12px 0 7px;
	}

	div.divSearch{
		display: flex;
		justify-content: flex-end;
		width: 100%;
		padding-right: 67px;
	}

	div.divSearchInner{
		width: 100%;
	}

	div.divSearchInner form{
		display: flex;
		justify-content: flex-end;
	}

	div.divSearchInner input{
		padding: 8px;
		border: none;
		background-color: #EDEDED !important;
		width: 75px;
		transition: width 200ms ease-in-out;
		outline: none;
		border-radius: 8px 0 0 8px;
	}

	div.divSearchInner input:focus, div.divSearchInner input:valid{
		width: 175px;
		background-color: white;
	}

	div.divSearchInner button{
		color: #FFFFFF;
		background-color: #FFFFFF;
		border: none;
		border-top: 2px solid #EDEDED;
		border-right: 2px solid #EDEDED;
		border-bottom: 2px solid #EDEDED;

		border-radius: 0 8px 8px 0;
	}

	div.divSearchInner button i{
		margin-top: 2px;
		margin-right: 2px;
	}

	/*

	Hamburger Menu

	*/
	.hamburger{
		padding: 10px 5px 10px 0px;
		display: inline-block;
		cursor: pointer;
		transition-property: opacity, filter;
		transition-duration: 0.15s;
		transition-timing-function: linear;
		font: inherit;
		color: inherit;
		text-transform: none;
		background-color: transparent;
		border: 0;
		margin: 0;
		overflow: visible;
	}

	.hamburger:hover{
		opacity: 0.7;
		cursor: pointer;
	}

	.hamburger.is-active:hover{
		opacity: 0.7;
	}

	.hamburger.is-active .hamburger-inner,
	.hamburger.is-active .hamburger-inner::before,
	.hamburger.is-active .hamburger-inner::after{
		background-color: #FFFFFF;
	}

	.hamburger-box{
		width: 30px;
		height: 24px;
		display: inline-block;
		position: relative;
	}

	.hamburger-inner{
		display: block;
		top: 50%;
		margin-top: -2px;
	}

	.hamburger-inner,
	.hamburger-inner::before,
	.hamburger-inner::after{
		width: 30px;
		height: 4px;
		background-color: #FFFFFF;
		border-radius: 4px;
		position: absolute;
		transition-property: transform;
		transition-duration: 0.15s;
		transition-timing-function: ease;
	}

	.hamburger-inner::before,
	.hamburger-inner::after{
		content: "";
		display: block;
	}

	.hamburger-inner::before{
		top: -10px;
	}

	.hamburger-inner::after{
		bottom: -10px;
	}

	.hamburger--collapse .hamburger-inner{
		top: auto;
		bottom: 0;
		transition-duration: 0.13s;
		transition-delay: 0.13s;
		transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	}

	.hamburger--collapse .hamburger-inner::after{
		top: -20px;
		transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
	}

	.hamburger--collapse .hamburger-inner::before{
		transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
	}

	.hamburger--collapse.is-active .hamburger-inner{
		transform: translate3d(0, -10px, 0) rotate(-45deg);
		transition-delay: 0.22s;
		transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	.hamburger--collapse.is-active .hamburger-inner::after{
		top: 0;
		opacity: 0;
		transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
	}

	.hamburger--collapse.is-active .hamburger-inner::before{
		top: 0;
		transform: rotate(-90deg);
		transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	img.imgFooterLogo{
		max-width: 275px;
	}


}


@media (max-width: 600px){
	.headerOfsted{
		display: none;
	}


	div.divSearch{
		padding-right: 0px;
	}
}


@media (max-width: 400px){
	div.divSearchInner input:focus, div.divSearchInner input:valid{
		width: 100px;
	}
}

@media (min-width: 1070.1px){
	a.mobileLogo{
		display: none;
	}

	a.expand{
		display: none;
	}

	ul.ulNavigationParent{
		/*background: none repeat scroll 0 0 rgba(0, 0, 0, .8) !important;*/
		color: white;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0 2vw;
		height: calc(1em + 32px);
		position: relative;
		width: 100%;
		box-sizing: border-box;
		z-index: 5;
	}

	li.liParentListItem{
		display: flex;
		align-items: center;
		position: relative;
	}

	li.liParentListItem:before{
		border-color: #ffffff transparent transparent;
		border-style: solid;
		border-width: 20px;
		top: -21px;
		content: "";
		left: 50%;
		transform: translateX(-50%);
		transition: .5s;
		z-index: -1;
		position: absolute;
	}

	li.liParentListItem:hover:before{
		border-color: #ffffff transparent transparent;
		border-style: solid;
		border-width: 20px;
		z-index: -1;
		content: "";
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		position: absolute;
		top: -10px;
		display: block;
	}

	li.liParentListItem a{
		padding: 16px 0;
		text-transform: uppercase;
		text-decoration: none;
		color: #FFFFFF;
	}

	div.divLiParentListItem{
		border-left: 1px solid #ffffff;
		padding: 0 6px;
		white-space: nowrap;
		text-decoration: none;
	}

	ul.ulNavigationChild{
		padding: 16px;

	}

	li.liChildListItem{
		border-bottom: 1px solid rgba(0, 0, 0, .25);
	}

	li.liChildListItem:not(:first-of-type){
		border-top: 1px solid rgba(255, 255, 255, .1);
	}

	div.divLiChildListItem{
		white-space: nowrap;
		padding: 8px;
		text-align: center;
	}

	div.divLiChildListItem:hover{
		color: #fff;
	}

	li.liParentListItem:last-of-type div.divLiParentListItem{
		border-right: 1px solid #ffffff;
	}

	li.liParentListItem:hover div.divLiParentListItem{
		color: #fff;
	}

	li.liParentListItem:hover ul.ulNavigationChild{
		display: flex !important;
		flex-direction: column;
		position: absolute;
		top: 46px;
		background: none repeat scroll 0 0 rgba(0, 102, 0, .9) !important;
		left: 50%;
		transform: translateX(-50%);
	}

	div.divHeader{
		background-color: #ffffff !important;
		display: flex;
		width: 100%;
	}

	a.aParentPortal{
		justify-self: flex-start;
		border-radius: 0 0 25px 0;
		height: 50px;
		text-decoration: none;
	}

	a.desktopLogo{
		justify-self: center;
		padding: 20px;
		margin: 20px 5vw;
	}

	div.divSearch{
		justify-self: flex-end;
		border-radius: 0 0 0 25px;
		height: 50px;
	}

	a.aParentPortal, div.divSearch{
		flex-grow: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		min-width: 250px;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
	}

	a.aParentPortal > div{
		transition: color 250ms ease-in-out;
	}

	a.desktopLogo{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-shrink: 1;
	}

	a.desktopLogo img.imgHeaderLogo{
		min-width: 100px;
		max-width: 300px;
		width: 100%;
	}

	div.divParentPortal{
		display: flex;
		font-size: 16px;
		align-items: center;
	}

	div.divParentPortal span{
		letter-spacing: 1px;
	}

	div.divParentPortal i{
		font-size: 20px;
		margin-left: 8px;
	}

	div.divSearchInner{
		width: 100%;
		height: 100%;
	}

	div.divSearchInner form{
		display: flex;
		width: 100%;
		height: 100%;
	}

	div.divSearchInner input{
		padding: 8px 8px 8px 16px;
		border: none;
		width: 100%;
		border-radius: 0 0 0 25px;
		outline: none;
		color: white;
		transition: background 400ms ease-in-out;
	}

	div.divSearchInner input::placeholder{
		color: white;
		font-size: 16px;
	}

	div.divSearchInner input:focus,
	div.divSearchInner input:valid,
	div.divSearchInner input:hover{
		background-color: white !important;
		color: black;
	}

	div.divSearchInner input:focus::placeholder,
	div.divSearchInner input:valid::placeholder,
	div.divSearchInner input:hover::placeholder{
		color: black;
	}

	div.divSearchInner button{
		border: none;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 0 16px;
	}

	div.divSearchInner button:hover{
		cursor: pointer;
	}

	div.divSearchInner button i{
		color: white;
		font-size: 18px;
	}

	.container{
		width: 90vw;
		max-width: 1000px;
	}
}

footer .divFooterContainer{
	width: 90vw;
	margin: 0 auto;
}

footer{
	background-color: #0A3365;
	box-shadow: 0 -4px 10px rgba(0, 0, 0, .2);
	margin-top: 18px;
	color: #ffffff;
	box-sizing: border-box;

}

footer a{
	text-decoration: none;
	color: #fff;
	font-size: 14px;
}

footer a:hover{
	text-decoration: underline;
}

ul.footerLinks{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 16px;
}

ul.footerLinks li{
	margin: 8px;
	font-size: 18px;
}

ul.footerLinks li:first-of-type{
	margin-left: 16px;
}

ul.footerLinks li:last-of-type{
	margin-right: 16px;
}

img.imgFooterLogo{
	max-width: 300px;
}

div.divFooterLogo{
	display: flex;
	align-items: center;
	margin: 16px 0 32px 0;
}

div.imageFooter {
	display: flex;
	justify-content: flex-end;
}

div.underLogo{
	margin: 16px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-items: flex-end;
}

div.contact{
	margin-right: 16px;
	font-size: 14px;
}


div.badges{
	text-align: right;
}

div.badges img{
	height :70px;
}




div.badges p{
margin-bottom:10px;
	font-size: 12px;
}



div.contact ul li{
	margin: 4px 0;
}

div.contact li.contactBigger{
	margin: 12px 0;
}


div.contact img{
	margin-right:10px;
}

div.footerFooter{
	display: flex;
	justify-content: space-between;
	padding-top: 32px;
	padding-bottom: 10px;
}

.headerOfsted {
	position: absolute;
	right: 16px;
	top: 64px;
}

@media (max-width: 800px){
	div.underLogo{
		display: block;
		flex-direction: column;
		justify-content: center;
	}

	.contact li{
		text-align: center;
	}

	div.badges{
		margin-top: 16px;
	}

	div.divFooterLogo{
		justify-content: center;
	}


	div.badges{
		text-align: center;
	}

}

@media (max-width: 650px){
	div.outerBlock{
		width: 100% !important;
		min-width: unset;
		margin-left:0px !important;
		margin-right:0px !important;
	}

}

@media (max-width: 750px){

	.divNewsItem{
		width: 100% !important;
	}

}

.container{
	width: 90vw;
	margin: auto;
}

.content{
	padding: 45px 0;
}

div.scrollTop{
	color: #898989;
	font-size: 18px;
	border-radius: 100%;
	width: 50px;
	height: 50px;
	position: fixed;
	bottom: 25px;
	right: 25px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);
	display: flex;
	justify-content: center;
	align-items: center;
	transition: box-shadow 100ms ease-out;
	z-index: 100000;
}

div.scrollTop:hover{
	box-shadow: 0 0 4px rgba(0, 0, 0, .14), 0 4px 8px rgba(0, 0, 0, .28);
	cursor: pointer;
	opacity: 0.7;

}

div.divPageBlocks{
	display: flex;
	flex-wrap: wrap;
	margin-top: 45px;
	justify-content: center;
}

div.outerBlock{
	margin: 8px;
	width: 30%;
	min-width: 270px;
	border: 8px solid #0A3365;
	box-sizing: border-box;

}

div.outerBlock a, div.outerBlock span{
	font-family: 'Roboto Slab', serif;
	font-weight: bold;
	font-size: 18px;
}

div.divPageBlock, a.aPageBlock{
	padding: 32px;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #0A3365;
	text-decoration: none;

	height: 100%;
	
	border: 1px solid #446697;
}

a.aPageBlock:hover{
	background-color: #53B01F;
}

div.divFormErrors > div:first-child{
	font-family: "Open Sans";
	color: white;
	background-color: red;
	font-weight: bold;
	padding: 11px 14px;
	font-size: 14px;
}

div.divFormErrors > div:last-child{
	padding: 11px 14px;
	background-color: #eee;
}

div.divFormErrors ul{
	margin-left: 15px;
	list-style-type: disc;
	font-size: 14px;
	line-height: 1.3em;
}

div.divFormErrors ul li:not(:first-child){
	margin-top: 5px;
}

div.marquee{
	width: 100%;
	margin: 0 auto;
	white-space: nowrap;
	overflow: hidden;
	box-sizing: border-box;
	padding: 16px;
	background-color: #003366;
	color: #fff;
}

div.marquee p{
	display: inline-block;
	padding-left: 100%;
	animation: marquee 20s linear infinite;
	font-size: 18px;
}

div.marquee:hover p{
	animation-play-state: paused;
}

@keyframes marquee{
	0%{
		transform: translate(0, 0);
	}
	100%{
		transform: translate(-100%, 0)
	}
}

/*******************CALENDAR******************/


.divTweets{
	position:relative;
}

.divTwitterNav{
	position:absolute;
	right:0;
	top:0;
}


.divTweet{
	border:1px solid #fff;
	padding:20px;
	margin-top:10px;
	border-radius: 6px;
	background-color: #c3e3ff;
	color:#333;
	line-height:22px;
	position: relative;
	display: none;
	}

.divTweet:first-of-type{
	display: block;
}

.divTweetDate{
	position: absolute;
	right:10px;
	bottom:3px;
	font-size:10px;
	color:white;
	text-shadow: #000000 0 0 4px;
}

.divTweet a{
	color: #666;
}
.divTweet:hover{
	background-color: #ddd;
}
.divTweet:hover a{
	color: red;
}



/*******************CALENDAR******************/

.spnCalendarDot{
	display: inline-block;
	border-radius: 20px;
	border: 1px solid #fff;
	width: 20px;
	height: 20px;
	vertical-align: middle;
}

.spnCalendarEvent{
	display: inline-block;
	line-height: 20px;
	vertical-align: middle;
	margin-right: 30px;
	font-size: 16px;
}

.calendarPopupTable{
	display: block;
	margin: 20px;
	border: 2px solid #ccc;
	border-radius: 5px;
}

.calendarPopupTable tr th, .calendarPopupTable tr td{
	padding: 10px;
	font-size: 16px;
}

.calendarPopupTable tr th{
	background-color: #2b2b2b;
	color: white;
	text-align: left;
}

/*******************NEWS ITEMS******************/

.divNewsItems{
	display: flex;
	flex-wrap: wrap;
	margin-top: 30px;
}

.divNewsItem{
	/*flex-grow: 1;*/
	width: 50%;
	min-height: 250px;
	border-right: 10px solid white;
	border-bottom: 10px solid white;
	position: relative;
	background-size: cover;
	background-position: center;
	box-shadow: inset 0px 0px 100px rgba(0, 0, 0, 0.5);
}

.outerBlockNews {
	position: absolute;
	bottom: 0;
	width: 100%;
	border: 8px solid #0A3365;
	
}

.divNewsItemText{
	width: 100%;
	padding: 10px;
	background-color: #0A3365;
	border: 1px solid #446697;
}

.divNewsItemTitle{
	font-family: 'Roboto Slab', serif;
	color: #fff;
	font-size: 20px;
	line-height: 22px;
}

.divNewsItemDate{
	font-family: 'Roboto Slab', serif;
	color: #ccc;
	font-size: 16px;
	line-height: 30px;
}


.divNewsItem:hover .divNewsItemText{
	background-color: #53B01F;
}

.imgNewsTop{
	margin: 20px 0;
	max-width: 100%;
}

.divNewsDate{
	font-family: 'Roboto Slab', serif;
	font-size: 20px;
	line-height: 30px;
}

/***********************SEARCH*******************/

.searchResult{
	margin: 20px 0;
	border:3px solid #f3f3f3;
	background-color: #f9f9f9;
	padding: 20px;
	line-height: 20px;
	display: block;
	text-decoration: none !important;
}

.searchResult:hover{
	background-color: #f3f3f3;

}

.searchResult h3{
	font-size: 16px;
	margin-bottom: 5px;
	text-decoration: none;
	color:#069;
}

.searchResult div{
	font-size: 16px;
	margin-bottom: 5px;
	text-decoration: none;
	color:#333;
}

.searchResult div.searchUrl{
	font-size: 12px;
	color:#090;
}
