html {
	background-color: #f3f3f3;
}
body {
	background-color: #ffffff;
	-webkit-animation: fadein 2s;
	animation: fadein 2s;
}

@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

img {
	max-width: 100%;
}

.fs-lg {
	font-size: 43px;
}

.navbar-brand {
	font-family: 'Oswald', sans-serif;
	line-height: 1.23;
	font-weight: 100;
	font-size: 22pt;
}

.btn-warning,
.btn-warning:hover,
.bg-warning {
	border-color: gold !important;
	background-color: gold !important;
}
.btn-light,
.btn-light:hover,
.bg-light {
	border-color: #f3f3f3 !important;
	background-color: #f3f3f3 !important;
}


.btn-primary,
.btn-primary:hover,
.bg-primary {
	border-color: #00003f;
	background-color:  #00003f;
}


.btn {
	border-radius: 0;
}

h1 {
	font-size: 38pt;
}

h1, h2, h3, h4 {
	font-family: 'Oswald', sans-serif;
	line-height: 1.23;
	font-weight: 400;
}

/* h2, h3, a:not(.btn) {
	color: #111111;
} */

h2, h3 {
	color: #111111;
}

.motto {
	font-size: 3rem;
	font-family: 'Cedarville Cursive', cursive;
}

	.navbar-brand {
		padding-left: 15px;
	}

.sidebar {
	position: fixed;
	top: 0; left: 0; bottom: 0;
	width: 90%; max-width: 450px;
	height: 100%; height: 100vh;
	color: #00003f;
	z-index: 80;
	transform: scale(0);

	display: none;
	opacity: 0;
	/*transition: all 0.5s linear;*/
	transition: all .2s ease-in-out;
}

.sidebar-overlay {
	display: none;
	position: fixed;
	top: 0; right: 0; left: 0; bottom: 0;
	background: rgba(255,255,255,0.6);
	filter: blur(8px);
	-webkit-filter: blur(8px);
	z-index: 70;
	cursor: pointer;
	transition: all 0.5s linear;
}

body.nav-open {
	overflow: hidden;
}

body.nav-open .sidebar {
	display: block;
	opacity: 1;
	padding-top: 30px;
	transform: scale(1);
	overflow-y: auto;
}


body.nav-open .sidebar-overlay {
	display: block;
}
body.nav-open .sidebar-overlay:hover {
	background: rgba(255,255,255,0.3);
}

	.sidebar li,
	.sidebar a {
		display: block;
		width: 100%;
		color: #00003f;
		padding: 5px 0;

		font-family: 'Oswald', sans-serif;
		font-size: 19px;
		line-height: 1.23;
		font-weight: 400;
		text-decoration: none;
		text-transform: uppercase;

		transition: all 0.5s linear;
	}

	.sidebar li > a:hover,
	.sidebar li.active > a {
		color: #333333;
		text-decoration: none;
		/*text-shadow: 0 0 1px rgba(100,100,100.12);*/
	}
	.sidebar li.child-active > a {

	}

	.sidebar li > ul,
	.sidebar li > ul > li > ul {
		display: none;
		visibility: hidden; opacity: 0;
		transition: all 0.5s linear;
	}

	.sidebar li.child-active > ul,
	.sidebar li.active > ul,
	.sidebar li.menu-active > ul,
	.sidebar li.menu-child-active > ul,
	.sidebar li > ul > li.child-active > ul,
	.sidebar li > ul > li.active > ul,
	.sidebar li > ul > li.menu-active > ul,
	.sidebar li > ul > li.menu-child-active > ul {
		display: block;
		visibility: visible;
		opacity: 1;
	}

	ul.has-menu-break {
		display: none !important;
	}

.img-square {
	width: 100%; height:  0;
	padding-bottom:  50%;
}

.hover-zoom { display: block; width: 100%; }
.hover-zoom-box { display: block; width: 100%;overflow: hidden; text-align: center; }
.hover-zoom img { transition: all 0.5s; min-width: 100%; -o-object-fit: cover; object-fit: cover; }
.hover-zoom img:hover { transform: scale(1.2); }



.opacity-9 { opacity: 0.9 }
.opacity-8 { opacity: 0.8 }
.opacity-7 { opacity: 0.7 }
.opacity-6 { opacity: 0.6 }
.opacity-5 { opacity: 0.5 }
.opacity-4 { opacity: 0.4 }
.opacity-3 { opacity: 0.3 }
.opacity-2 { opacity: 0.2 }
.opacity-1 { opacity: 0.1 }




.bg-transition {

}

.bg-transition:hover {
	text-decoration: none;
	color: #ffffff;
	background-color: rgba(81, 95, 108, 0.4);
}


	.bg-transition:hover h4 {
		color: #ffffff;
	}



	.hover-zoom h4 {
	    -webkit-backdrop-filter: blur(10px);
	    backdrop-filter: blur(10px);
	    -webkit-transition: opacity linear 100ms, -webkit-backdrop-filter linear 100ms;
	    transition: opacity linear 100ms, -webkit-backdrop-filter linear 100ms;
	    transition: opacity linear 100ms, backdrop-filter linear 100ms;
	    transition: opacity linear 100ms, backdrop-filter linear 100ms, -webkit-backdrop-filter linear 100ms;
	    color: #fff;
	    -moz-osx-font-smoothing: grayscale;
	    -webkit-font-smoothing: antialiased;
	    font-weight: 500;
	    display: inline-block;
	    border-radius: 5px;
	    padding: 7px 14px;
	    border: none;
	    text-align: center;
	    white-space: nowrap;
	    -webkit-user-select: none;
	    -moz-user-select: none;
	    -ms-user-select: none;
	    user-select: none;
	    cursor: pointer;
	    -webkit-box-sizing: border-box;
	    box-sizing: border-box;
	    -webkit-appearance: none;
	    -moz-appearance: none;
	    appearance: none;
	    outline: none;
	    /*background-color: rgba(96, 125, 159, 0.25);*/
}


footer {
	opacity: 0.7;
	font-size: 12px;
	font-family: 'Oswald', sans-serif;
	line-height: 1.23;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: #4a4a4a;
}


.footer {
	opacity: 0.7;
	font-size: 12px;
	font-family: 'Oswald', sans-serif;
	line-height: 1.23;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: #4a4a4a;
}



/*NEW STUFF*/


.carousel-item>img {
        height: 500px;
        width: 500px;
        object-fit: cover

      }


.kc-head-links {
background-position: center;
background-size: cover;
padding: 2em;
height: 300px;
}


a.head-link {
color: #000;
padding: .5em;
margin: 3px;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8Xw8AAoMBgDTD2qgAAAAASUVORK5CYII=);
transition: .5s;
text-align: center;
font-weight: 700;
text-decoration: none;
}

a.head-link:hover {
color: #fff;
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mPUM099CgADFgGx7wGfOAAAAABJRU5ErkJggg==);
font-size: 1.02rem;
padding: 2px;
}

blockquote {
  background: #f9f9f9;
  border-left: 10px solid #ccc;
  margin: 1.5em 10px;
  padding: 0.5em 10px;
}



/*GRID NEWS LISTING*/


.news-listing-grid {
	margin-top: 1em;
  margin-bottom: 1em;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  grid-auto-rows: 200px;
  grid-gap: 2em
 }

.news-listing-grid p {
line-height: normal;
 }

a.news-listing-grid-block-image {
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: .5s;

}

a.news-listing-grid-block-image:hover,
a.news-listing-grid-block-image:focus
  {
 text-decoration: none;
  background-color: #ccc;
  transform: scale(1.02);

}


a.news-listing-grid-block-text {
  display: flex;
  flex-direction: column;
  padding: 1em;
  color: #fff;
  transition: .5s;
}


a.news-listing-grid-block-text:hover,
a.news-listing-grid-block-text:focus
 {
 text-decoration: none;
 background-color: #ccc;
 transform: scale(1);
}


.news-listing-grid-content {
	padding: .5em
}

.news-listing-grid-title {
font-weight: 700
}

.news-listing-grid-date {
	display: none;}


.news-listing-grid-summary {

background-color: #ccc;
display: none;

}

.grid-img-port {
background-size: contain;
background-repeat: no-repeat;
background-position: center;
background-color: #000;
height: 70%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 3em;
color: #fff;

}


.fa-play-circle { filter: opacity(50%); }


.grid-img-ls {
background-size: cover;
height: 70%;
background-position: center;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 3em;
color: #fff;
}


.grid-news-link {

display: none;
  padding: .5em;
  text-align: center;
}


.news-listing-grid-block-text-readmore {
  background-color: green;
  color: #fff;
  display: block;
  margin-left: auto;
}


.site-tag {
	display: flex;
flex-direction: column;
}

.ibdn-site-tag {
	margin: auto;
	}
	
.ibdn-site-tag-img {
	height: 3em;
	margin-bottom: 1em;
	filter: grayscale(100%) opacity(60%);
	transition: .5s;
	}
  
.ibdn-site-tag-img:hover {
	 filter: grayscale(0%) opacity(100%);
	}

.open-day{
	
}

.open-day .heading{
	color: #20124d;
	line-height: 1.5;
}

.homepage-bottom-img{
	width: 100%;
}