@charset "utf-8";
/* CSS Document */

html, body {
	font-family: montserrat, sans-serif;
	font-style: normal;
	font-weight: 400;
	margin: 0;
	padding: 0;
	color: #000;
}

/** Banner **/
#banner {
	width: 100%;
	padding: 20px 0 10px 0;
	background-color: #032552;
	color: #fff;
}
#banner-logo {
	width: 200px;
	height: auto;
	padding: 10px 0;
	margin: 0 auto;
}
#banner-logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
#banner-nav {
	width: 100%;
	height: 100%;
	padding: 10px 0;
}
#banner-contact {
	width: 100%;
	text-align: center;
	color: #fff;
}
#banner-contact span {
	font-size: 1.5em;
	font-weight: 700;
}
@media (min-width: 992px) {
#banner {
	padding: 20px 3% 10px 3%;
}
#banner-logo {
	width: 240px;
	height: auto;
	padding: 10px 0;
	margin: 0;
}
#banner-contact {
	height: 50px;
	text-align: right;
	padding-right: 15px;
}
#banner-contact span {
	font-size: 1.75em;
}
}
@media (min-width: 1200px) {
#banner {
	padding: 20px 5% 10px 5%;
}
}
@media (min-width: 1400px) {
#banner {
	padding: 20px 8% 10px 8%;
}
}
@media (min-width: 1600px) {
#banner {
	padding: 20px 12% 10px 12%;
}
}

/** Landing Page **/
#landing-page {
}
#landing-page-back {
	width: 100%;
	height: auto;
	padding: 50px 0;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top -20px center;
	background-image: url("../images/circles-small-blue.svg");
}
#landing-page-intro {
	width: 90%;
	text-align: center;
	margin: 0 auto 30px auto;
}
.landing-panel-container {
	width: 100%;
	border: 5px solid rgba(255,255,255,0.5);
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
	border-radius: 10px;
}
.landing-panel-facilitiesback {
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right;
	background-image: url("../images/landingpanels-facilities.jpg");
}
.landing-panel-componentsback {
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: right;
	background-image: url("../images/landingpanels-components.jpg");
}
.landing-panel-content {
	width: 100%;
	height: 100%;
	padding: 30px 20px 30px 40px;
	border-radius: 10px;
	color: #fff;
	background: -webkit-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
	background: -o-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
}
.landing-panel-logo {
	width: 200px;
	height: auto;
	margin: 0 0 10px -25px;
}
.landing-panel-text {
	width: 100%;
	margin: 0 0 30px 0;
}
@media (min-width: 442px) {
.landing-panel-logo {
	width: 200px;
	margin: 0 0 10px -30px;
}
.landing-panel-text {
	width: 85%;
}
}
@media (min-width: 576px) {
#landing-page {
	padding: 30px 2% 30px 2%;
}
.landing-panel-logo {
	width: 250px;
	margin: 0 0 10px -30px;
}
.landing-panel-text {
	width: 70%;
}
}
@media (min-width: 768px) {
#landing-page-back {
	padding: 50px 0;
	background-repeat: no-repeat;
	background-size: 60%;
}
#landing-page-intro {
	width: 60%;
}
.landing-panel-content {
	background: -webkit-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 50%, rgba(255, 255, 255, 0) 100%);
	background: -o-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 50%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 50%, rgba(255, 255, 255, 0) 100%);
}
.landing-panel-logo {
	width: 250px;
	margin: 0 0 10px -30px;
}
.landing-panel-text {
	width: 80%;
}
}
@media (min-width: 992px) {
#landing-page {
	padding: 50px 2% 50px 2%;
}
#landing-page-intro {
	width: 45%;
}
.landing-panel-content {
	padding: 40px 20px 40px 50px;
	background: -webkit-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
	background: -o-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 60%, rgba(255, 255, 255, 0) 100%);
}
.landing-panel-logo {
	width: 280px;
	height: auto;
	margin: 0 0 10px -40px;
}
.landing-panel-text {
	width: 80%;
}
}
@media (min-width: 1200px) {
#landing-page {
	padding: 50px 5% 50px 5%;
}
.landing-panel-content {
	padding: 40px 20px 40px 60px;
}
.landing-panel-text {
	width: 70%;
}
}
@media (min-width: 1400px) {
#landing-page {
	padding: 50px 12% 50px 12%;
}
.landing-panel-content {
	padding: 40px 20px 40px 50px;
	background: -webkit-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 45%, rgba(255, 255, 255, 0) 100%);
	background: -o-linear-gradient(left, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 45%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, rgba(3, 37, 82, 1) 0%, rgba(3, 37, 82, 1) 45%, rgba(255, 255, 255, 0) 100%);
}
.landing-panel-text {
	width: 50%;
}
}

/** Content **/
#content {
	padding: 50px 0;
}

.intro {
	padding: 0 5%;
	text-align: center;
}
@media (min-width: 992px) {
.intro {
	padding: 0 20%;
}
}
@media (min-width: 1200px) {
.intro {
	padding: 0 25%;
}
}

/** Team **/
#team {
	padding: 50px 5%;
}
.team-profile {
	width: 100%;
	padding: 20px;
	margin: 0 0 20px 0;
	border-radius: 20px;
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
}
.team-profile-pic {
	margin: 0 auto 20px auto;
	width: 200px;
	height: 200px;
	background: #eaeaea;
	border-radius: 20px;
}
.team-profile-text {
	text-align: center;
}
@media (min-width: 992px) {
#team {
	padding: 50px 5%;
}
}
@media (min-width: 1200px) {
#team {
	padding: 50px 8%;
}
}
@media (min-width: 1400px) {
#team {
	padding: 50px 15%;
}
}


/** Icons **/
#icons {
	padding: 50px 2% 0 2%;
}
#icons-intro {
	text-align: center;
}
.icon-icon {
	width: 60px;
	height: 60px;
	margin: 10px auto;
}
.icon-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.icon {
	text-align: center;
}
.circle-icon-primary, .circle-icon-secondary {
	border-radius: 50%;
	float: left;
	margin: -24px 10px 0 -35px;
	width: 70px;
	height: 70px;
	padding: 10px;
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
}
.circle-icon-primary {
	background: #159ed9;
}
.circle-icon-secondary {
	background: #fff;
}
.circle-icon-primary img, .circle-icon-secondary img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
a.icon-button-primary, a.icon-button-secondary {
	font-weight: 700;
	font-size: .9em;
	text-transform: uppercase;
	line-height: 1.2em;
	border-radius: 10px;
	border: none;
	transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
	text-decoration: none;
	color: #fff;
	display: inline-block;
	height: 55px;
	padding: 17px 25px 14px 10px;
	margin: 0 0 10px 20px;
	text-align: left;
}
a.icon-button-primary {
	background: #159ed9;
}
a.icon-button-secondary {
	background: #fff;
	color: #159ed9;
}
a.icon-button-primary:hover, a.icon-button-secondary:hover {
	text-decoration: underline;
	color: rgba(255,255,255,0.7);
}
@media (min-width: 992px) {
a.icon-button-primary, a.icon-button-secondary {
	font-size: 1.1em;
}
}
@media (min-width: 1200px) {
#icons {
	padding: 50px 0 0 0;
}
#icons-intro {
	text-align: left;
}
}

/** Jumbo **/
.jumbo {
	width: 100%;
	padding: 50px 0;
	margin: 0 0 20px 0;
}
.jumbo-facilities {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-image: url("../images/facilitiesmain.jpg");
}
.jumbo-components {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-image: url("../images/componentsmain.jpg");
}
.jumbo-intro {
	width: 100%;
	text-align: center;
	background: rgba(255,255,255,0.7);
	padding: 30px;
	border-radius: 20px;
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
}
@media (min-width: 768px) {
.jumbo {
	padding: 60px 12%;
}
.jumbo-intro {
	padding: 30px;
}
}
@media (min-width: 992px) {
.jumbo {
	padding: 100px 18%;
}
.jumbo-intro {
	padding: 40px;
}
}
@media (min-width: 1200px) {
.jumbo {
	padding: 100px 20%;
}
}
@media (min-width: 1400px) {
.jumbo {
	padding: 100px 25%;
}
}

/** Facilties **/
#facilities {
	
}
.facilities-sec1 {
	padding: 0 0 40px 0;
	text-align: center;
}
.facilities-sec2 {
	padding: 60px 5%;
	text-align: center;
}
.facilities-sec1-pic {
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.facilities-sec1-pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media (min-width: 442px) {
.facilities-sec1-pic {
	width: 450px;
}
}
@media (min-width: 768px) {
.facilities-sec1 {
	text-align: left;
}
.facilities-sec1-pic {
	width: 100%;
}
}
@media (min-width: 992px) {
.facilities-sec1 {
	padding: 60px 5% 60px 5%;
}
}
@media (min-width: 1200px) {
.facilities-sec2 {
	padding: 60px 15%;
}
}
@media (min-width: 1400px) {
.facilities-sec1 {
	padding: 60px 15%;
}
.facilities-sec2 {
	padding: 60px 25%;
}
}


/** Components **/
#components {
	padding: 40px 0;
}
.components-pic {
	border-radius: 20px;
	overflow: hidden;
	width: 100%;
	height: 280px;
	border: 0.5px solid #eaeaea;
	float: left;
	margin: 0 0 20px 0;
}
.components-pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.components-text {
	margin: 0 0 30px 0;
	padding: 20px;
	border: 5px solid rgba(255,255,255,0.5);
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
	border-radius: 10px;
	background: rgba(255,255,255,0.9);
	text-align: center;
}
@media (min-width: 768px) {
#components {
	padding: 40px 2%;
}
}
@media (min-width: 992px) {
#components {
	padding: 40px 5%;
}

}
@media (min-width: 1200px) {
}
@media (min-width: 1400px) {

}

#privacy {
	padding: 0 5%;
}
@media (min-width: 1200px) {
#privacy {
	padding: 0 15%;

}
}

.blue-back {
	background: #159ed9;
	color: #fff;
}

/** Teasers **/
.teasers {
	margin: 30px 6%;
}
.teaser {
	width: 100%;
	margin: 10px 0;
	border: 5px solid rgba(255,255,255,0.5);
	-webkit-box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19); 
	box-shadow: 1px 0px 6px 1px rgba(0,0,0,0.19);
	border-radius: 20px;
	color: #fff;
}
.teaser-content-dkblue {
	background: #032552;
	border-radius: 15px;
	padding:  10px 30px 20px 30px;
}
.teaser-content-ltblue {
	background: #159ed9;
	border-radius: 15px;
	padding: 10px 30px 20px 30px;
}
.teaser-icon {
	width: 60px;
	height: 70px;
}
.teaser-icon img {
	width: 100%;
	height: 100%;
	object-fi: contain;
}
@media (min-width: 768px) {
.teasers {
	margin: 30px 12%;
}
}
@media (min-width: 992px) {
.teasers {
	margin: 30px 2%;
}
}
@media (min-width: 1200px) {
.teasers {
	margin: 30px 5%;
}
}
@media (min-width: 1400px) {
.teasers {
	margin: 30px 12%;
}
}

/* Form */
.quote-form {
	font-weight: 800;
	text-align: center;
}
.contact-list {
	text-align: center;
	padding: 0 0 40px 0;
}
.contact-list ul {
	list-style: none;
	margin-left: -40px;
	font-weight: 500;
	font-size: 1em;
	text-align: center;
}
@media (min-width: 768px) {
form {
	padding-left: 30px;	
	border-left: .5px dotted #223871;
}
.quote-form {
	margin: 50px 0 0 0;
	padding: 0 15%;
	text-align: left;
}
.contact-list {
	text-align: right;
}
.contact-list ul {
	text-align: right;
}
}


/** Footer **/
#footer {
	width: 100%;
	padding: 30px 0 15px 0;
	background: #032552;
	color: #fff;
	position: sticky;
	bottom: 0;
}
#footer-strap {
	width: 100%;
	padding: 30px 5% 15px 0;
	background: #000;
	color: #fff;
	bottom: 0;
	text-align: center;
}
#footer-icon {
	border-radius: 50%;
	width: 70px;
	height: 70px;
	float: left;
	margin: -5px 20px 0 0;
	background: #159ed9;
	padding: 20px;
	display: none;
}
#footer-icon img {
	height: 100%;
	width: 100%;
	object-fit: contain;
}
#footer-text {
	text-align: center;
}
#footer-contact {
	text-align: center;
}
@media (min-width: 768px) {
#footer {
	padding: 30px 2% 15px 2%;
}

}
@media (min-width: 992px) {
#footer {
	padding: 30px 2% 15px 2%;
}
#footer-icon {
	display: block;
}
#footer-text {
	text-align: left;
}
#footer-contact {
	text-align: right;
}
}
@media (min-width: 1200px) {
#footer {
	padding: 30px 5% 15px 5%;
}
}
@media (min-width: 1400px) {
#footer {
	padding: 30px 12% 15px 12%;
}
}

/** Text **/
span.small-header {
	text-transform: uppercase;
	color: #159ed9;
	font-weight: 900;
	font-size: 1.5em;
	line-height: 1em;
}
h1 {
	font-family: futura-pt-bold, sans-serif;
	font-size: 2.5em;
	font-weight: 700;
	line-height: 1em;
	margin: 0 0 20px 0;
}
h2 {
	font-family: futura-pt-bold, sans-serif;
	font-size: 2em;
	font-weight: 700;
	line-height: 1em;
	margin: 0 0 20px 0;
}
h3 {
	font-size: 1.5em;
	font-weight: 700;
}
h4 {
	font-size: 1.5em;
	font-weight: 600;
}
p {
	font-size: .9em;
	font-weight: 500;
	letter-spacing: 0.5px;
	line-height: 1.5em;
}
h1+p {
	font-size: 1.05em;
	font-weight: 600;
	line-height: 1.4em;
}
.landing-panel-text p {
	font-size: 1.15em;
	font-weight: 700;
	line-height: 1.4em;
}
#icons-intro p {
	font-size: 1.15em;
	font-weight: 500;
	letter-spacing: 0.5px;
	line-height: 1.5em;
}
.category {
	text-transform: uppercase;
	color: #159ed9;
	font-size: 1.25em;
	font-weight: 700;
	font-family: futura-pt-bold, sans-serif;
	margin: 0 0 10px 0;
}
.category-wht {
	text-transform: uppercase;
	color: #fff;
	font-size: 1.25em;
	font-weight: 700;
	font-family: futura-pt-bold, sans-serif;
	margin: 0 0 10px 0;
}
@media (min-width: 576px) {
h1 {
	font-size: 2.75em;
}
}
@media (min-width: 992px) {
span.small-header {
	font-size: 1.75em;
}
h1 {
	font-size: 3.25em;
}
p {
	font-size: 1em;
}
}
@media (min-width: 1200px) {
h1 {
	font-size: 3.5em;
}
h2 {
	font-size: 2.25em;
	letter-spacing: -0.5px;
	
}
h3 {
	font-size: 1.75em;
}
h1+p {
	font-size: 1.25em;
}
}

/** Lists **/
ul li {
	font-size: 1em;
	font-weight: 500;
	letter-spacing: 0.5px;
	line-height: 1.5em;
}
ul.services-bullets {
 	list-style-type: none;
	margin: 20px 0 20px -15px;
}
ul.services-bullets li {
	font-size: .9em;
	line-height: 2.5em;
	font-weight: 500;
	letter-spacing: 0.5px;
	margin: 0;
}
ul.services-bullets li:before {
	content: '';
	display: inline-block;
	height: 20px;
	width: 20px;
	background-size: contain;
	background-image: url("../images/tickicon.svg");
	background-repeat: no-repeat;
	background-position: center;
	margin: -3px 10px 0 -25px;
	position: relative;
	bottom: -3px;
	list-style-position: inside;
}

/** Links **/
a {
	color: #159ed9;
	font-weight: 900;
	text-decoration: underline;
}
a:hover {
	color: rgba(21,158,217,0.6);
}
.blue-back a {
	color: #fff;
	font-weight: 900;
	text-decoration: underline;
}
.blue-back a:hover {
	color: rgba(255,255,255,0.6);
}

.align-center {
	text-align: center;
}
.align-right {
	text-align: right;
}