
html {
	height: 100%;
}
body {
	height: 100%;
	font-family: 'Raleway', sans-serif;
	font-size: 15px;
	line-height: 1.50;
	color: #333333;
	background-color: #ffffff;
	position: relative;
}


/* Text properties */

.site-name {
	font-family: 'Raleway', sans-serif;
	font-size: 34px;
	font-weight: 400;
}


h1 {
	font-size: 38px;
	font-weight: 700;
}
h2 {
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 0rem;
	margin-top: 0rem;
}
h3 {
	font-size: 28px;
	margin-bottom: 15px;
}
h4 {
	font-size: 1.2rem;
	font-weight: 700;
}


h1 span.blue,
h2 span.blue,
h3 span.blue,
h4 span.blue,
a span.blue {
	color: #296fad;
}
.text-colored {
	color: #296DAA;
}
a {
	color: #296DAA;
}
a:hover {
	color: #339BEB;
}
a:focus,
a:active {
	outline: none;
}

.lead1 {
    font-weight: 550;
}
.lead2 {
    font-size: 1rem;
}

/* ClearFix
----------------------------------------------------------------------------- */
.clearfix {
  overflow: auto;
}
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}


/* Sections & Containers
----------------------------------------------------------------------------- */
.section {
    background-color: #ffffff;
    padding: 40px 0;
}


/* Tabs & Pills
---------------------------------- */
.tab-content {
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 20px;
}

.nav-tabs {
	margin-bottom: 0;
	border-bottom: 0px;
}


/* Class Properties
----------------------------------------------------------------------------- */

.fa2x {
	font-size: 1.5rem;
}

span.blue {
	color: #296fad;
}

span.purple {
	color: #aa47bc;
}

.greenil {
	color: #0B6623;
}

/* Backgrounds
----------------------------------------------------------------------------- */

.default-bg.blue {
	background-color: #296DAA;
}
.default-bg.grey {
	background-color: #909090;
}
.default-bg.greyblue {
	background-color: #345; 
}
.translucent-bg {
	color: #ffffff;
	overflow: auto;
}

.default-bg.blue h1,
.default-bg.blue h2,
.default-bg.blue h3,
.default-bg.blue h4,
.default-bg.blue h5,
.default-bg.blue h6,
.default-bg.greyblue h1,
.default-bg.greyblue h2,
.default-bg.greyblue h3,
.default-bg.greyblue h4,
.default-bg.greyblue h5,
.default-bg.greyblue h6,
.translucent-bg h1,
.translucent-bg h2,
.translucent-bg h3,
.translucent-bg h4,
.translucent-bg h5,
.translucent-bg h6 {
	color: #ffffff;
}

.translucent-bg blockquote footer {
	color: #cccccc;
}

.translucent-bg a:hover {
	text-decoration: none;
}
.translucent-bg {
	-webkit-background-size: cover !important; /* Safari */
	background-size: cover !important;
	background-position: 50% 0;
	background-repeat: no-repeat;
	z-index: 1;
	position: relative;
}
.translucent-bg .translucent-bg {
	margin-top: 80px;
	z-index: 3;
}
.translucent-bg:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
}
.translucent-bg.blue:after {
	background-color: rgba(85, 172, 238, 0.7);
}
.translucent-bg.grey:after {
	background-color: rgba(80, 80, 80, 0.1);
}
.translucent-bg .container {
	z-index: 3;
	position: relative;
	overflow: hidden;
}
.bg-image-1 {
	background: url("../img/bg-image-1.jpg") 50% 0px no-repeat;
}
.bg-image-2 {
	background: url("../img/bg-image-2.jpg") 50% 0px no-repeat;
}

/* Visible and Invisible objects */
.object-non-visible {
	opacity: 0;
	filter: alpha(opacity=0);
}
.object-visible,
.touch .object-non-visible {
	opacity: 1 !important;
	filter: alpha(opacity=100) !important;
}

/* FadeIn */
.fadeIn {
  opacity: 0;
  animation: fadeIn 1.8s forwards;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  30% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}


/* Banners
----------------------------------------------------------------------------- */

/* Parallax Banner Image */
.banner-image {
	/* The image used */
	background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.1)), url("../img/banner.jpg");
  
	/* Set a specific height */
	height: 60%;
  
	/* Create the parallax scrolling effect */
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
  
.banner-text {
	text-align: center;
	position: absolute;
	top: 30%;
	left: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
}

.banner-title {
	color: #ffffff;
	font-size: 7rem;
	font-weight: 500;
}

.banner-caption {
	color: #ffffff;
	font-size: 1.8rem;
	font-weight: 400;
}
  
.ml2 .letter {
	display: inline-block;
	line-height: 1em;
	opacity: 0;
	transition: opacity 0s linear;
  }

.ml3 .letter {
	display: inline-block;
	line-height: 1em;
	opacity: 0;
	transition: opacity 0s linear;
}

@media (max-width:767px) {
	.ml3 {
		display: none;
	}
}

/* Image Size Restrictions */
.imaxhw50 {
	max-width:50px;
	max-height:50px;
}

.imaxh320 {
	max-height:320px;
}

/* Assign JQuery 3 Smooth Scroll function to HTML (overrides default scroll - doesn't work on Safari, IE or Edge) 
html {
	scroll-behavior: smooth;
  } */


/* Nav-Link styling in NavBar
----------------------------------------------------------------------------- */
.navbar-dark .navbar-nav .nav-link {
    color: rgba(255,255,255,1.0);
	font-size: 1.1rem;
	padding: 10px 20px;
}

.navbar-dark .navbar-nav .nav-link.active {
  color:#296fad;
}

.navbar-dark .navbar-nav .nav-link:focus {
	color:#296fad;
}
	
.navbar-dark .navbar-nav .nav-link:hover {
	color:#c6ccd8;
}

.navbar-dark .navbar-nav .active>.nav-link {
	color:#296fad;
}

/* Change Navbar Colour on Scroll */
.fixed-top {
	  transition: background-color 200ms linear;
}

.fixed-top.scrolled {
  background-color: #fff !important;
  transition: background-color 200ms linear;
}

.fixed-top.scrolled .nav-link {
  color:#666666;
}

.fixed-top.scrolled .show > .nav-link {
    color: #666666;
}

.fixed-top.scrolled .nav-link:focus {
  color:#666666;
}

.fixed-top.scrolled .nav-link.active {
  color:#296fad;
}

.fixed-top.scrolled .nav-link:hover {
  color:#333333;
}

.fixed-top.scrolled .navbar-brand {
  color:#555555;
}

.fixed-top.scrolled .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(166,166,166, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}

.fixed-top.scrolled .navbar-toggler {
  border-color:#bbbbbb;
} 
/* End */





/* Accordian Panel Collapse Styling
---------------------------------- */
.panel-group .panel {
	-webkit-border-radius: 0px;
	border-radius: 0px;
	border: none;
}
.panel-default > .panel-heading {
	padding: 0;
	outline: none;
	border: none;
	-webkit-border-radius: 0; /* Safari */
	border-radius: 0;
	width: 100%;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
	border: 1px solid #f0f0f0;
	border-top: none;
	background-color: #fafafa;
}
.panel-heading a {
	font-weight: 400;
	padding: 12px 35px 12px 15px;
	display: inline-block;
	width: 100%;
	background-color: #296DAA;
	color: #ffffff;
	position: relative;
	text-decoration: none;
}
.panel-heading a.collapsed {
	color: #ffffff;
	background-color: #333333;
}
.panel-heading a:after {
	font-family: "Font Awesome 5 Free";
	content: "\f146";
	position: absolute;
	right: 15px;
	font-size: 14px;
	font-weight: 300;
	top: 50%;
	line-height: 1;
	margin-top: -7px;
}
.panel-heading a.collapsed:after {
	content: "\f0fe";
}
.panel-heading a:hover {
	text-decoration: none;
	background-color: #296DAA;
	color: #ffffff;
}
.panel-title a i {
	padding-right: 10px;
	font-size: 16px;
}


/* Contact Form List and Text
----------------------------------------------------------------------------- */
.contact-text {
	font-size: 1.2rem;
}
.list-icons {
	padding: 0;
	margin: 20px 0;
	list-style: none;
	font-size: 1.2rem;
}
.list-icons li {
	padding: 0 0 15px 0;
}
.input-group>.input-group-append {
    flex: 0 0 8%;
}
.input-group .input-group-text {
    width: 100%;
}

/* Social Links
---------------------------------- */
.social-links {
	padding: 0;
	list-style: none;
	margin: 15px 0;
}
.social-links li {
	margin: 10px 25px 10px 0;
	display: inline-block;
	font-size: 36px;
}

/* Buttons
---------------------------------- */
.btn-1 {
	padding: 8px 15px;
	font-size: 14px;
	line-height: 1.42857143;
	min-width: 160px;
	text-align: center;
	border-radius: 0;
	text-transform: uppercase;
	-webkit-transition: all 0.2s ease-in-out; /* Safari */
	transition: all 0.2s ease-in-out;
}
.btn-2 {
	color: #296DAA;
	border: 1px solid #cccccc;
}
.btn-2:hover {
	color: #ffffff;
	background-color: #296DAA;
	border-color: #296DAA;
}
.cc-btn:hover {
	color: #ffffff !important;;
	background-color: #296DAA !important;;
	border-color: #ffffff !important;;
}
/* Google Maps
----------------------------------------------------------------------------- */
#map {
    width: 100%; height: 400px; margin-top: 40px; margin-bottom: 40px;
}

.info-window {
    font-family: 'Montserrat', sans-serif;
}
.info-content {
    color: #999;
}

