html {
	font-size: 14px;
}

body {
	font-family: "Roboto", sans-serif;
	font-weight: 400;
	color: #000;
}

p, .fp-p, th, .fp-th, td, .fp-td {
	font-weight: 400;
	letter-spacing: 0.5px;
	line-height: 26px;
	margin-bottom: 30px;
	font-size: 1.1rem;
}

.m-reduced p {
	margin-bottom: 10px;
}

.nav-brand-logo {
	height: 50px;
}

h1, h2, h3, h4, h5, h6 {
	font-family: Inter, "Helvetica Neue", "Noto Color Emoji", sans-serif;
	font-weight: 500;
	letter-spacing: 0.5px;
	color: #000;
}

.main-headline {
	font-weight: 700;
}

.h1-main {
	font-size: 5rem;
}

.h2-slogan {
	font-size: 3rem;
}

.nav-brand-logo:after {
	background-color: white;
}

h1 {
	font-size: 2.5rem;
	font-weight: 500;
}

h2 {
	font-size: 2rem;
	font-weight: 500;
}

h3 {
	font-size: 1.5rem;
	font-weight: 500;
}

h4 {
	font-size: 1.2rem;
	font-weight: 500;
}

.h1 {
	font-size: calc(1.375rem + 1.5vw);
	font-weight: 700;
}



a {
	outline: 0;
	text-decoration: none;
}

.text-right {
	text-align: right;
}

.main-text li {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.main-video {
	position: absolute;
	right: 0;
	top: 0;
	min-width: 100%;
	min-height: 100%;
}

.main-video-overlay {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: black;
	opacity: 0.4;
}

.main-image {
	position: absolute;
	right: 0;
	top: 0;
	min-width: 100%;
	min-height: 100%;
	opacity: 0.4;
}

.main-image::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: black;
}

.container-padded {
	padding-left: 48px;
	padding-right: 48px;
}

.heading-padded {
	padding-left: 33px;
	padding-right: 33px;
}

.slider-container {
	min-height: 40px;
	width: 100%;
	display: block;
}

.overlay-div {
	position: relative;
}

.overlay-div::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.4);
	pointer-events: none;
}

/* NAVBAR */
.top-data a, .top-data a:hover{
	color: white;
	margin-bottom: 0;
	padding-bottom: 0;
	text-decoration: none;
}

a.text-primary:focus, a.text-primary:hover {
	color: rgb(1, 82, 168);!important;
}

.main-nav .nav-item {
	margin-left: 1rem;
}

.nav-link:focus, .nav-link:hover, .navbar-nav .nav-link.active {
	color: rgb(1, 82, 168);!important;
}

/* END OF NAVBAR */

.spec-wrapper {
	position: relative;
}

.spec {
	-webkit-transition: 0.4s ease;
	transition: 0.6s ease;
	min-height: 90px;
	margin-bottom: 1px;
	width:25%;
}

.spec {
	border: 0;
}

.spec .spec-container {
	padding-top: 3rem;
	border-right: 1px solid #fff;
	height: 100%;
}

.spec:hover {
	background-color: rgb(1, 82, 168);
	color: #fff;
}

.spec:hover h4 {

	color: #fff;
}

.spec-wide {
	-webkit-transition: 0.4s ease;
	transition: 0.6s ease;
	min-height: 80px;
	margin-bottom: 1px;
	width:50%;
}

.spec-wide {
	border: 0;
}

.spec-wide p {
	margin-bottom: 10px;
}

.spec-wide .spec-container {
	border-right: 1px solid #fff;
	height: 100%;
}

/*.spec-wide:hover {
	background-color: rgb(1, 82, 168);
	color: #fff;
}*/

.spec-wide h3 {
	color: rgb(1, 82, 168);
	font-weight: 500;
	font-size: 1.3rem;
}

/*.spec-wide:hover h3 {
	color: #fff;
}*/

.dropdown-item.active, .dropdown-item:active {
	 color: #fff;
	 text-decoration: none;
	 background-color: rgb(1, 82, 168);
}

.dropdown-item {
	font-family: "Libre Baskerville", serif;
	color: rgb(1, 82, 168);
}



.card-footer {
	border-top: 1px solid #f2f1f1;
}



.sector-card {
	background: transparent!important;
}

.overlay-img {
	position: relative;
}

.header-container {
	font-size: 2.75rem;
	position: relative;
	height: 5rem;
}

.header-animate {
	overflow: hidden;
	white-space: nowrap;
	width: 0;
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
}

.header-animate.triggered {
	animation: expand 2s;
	animation-fill-mode: both

}

/*.slider-link {
	position: absolute;
	bottom: -40px;
	right: 0;
}*/

@keyframes expand {
	from {
		width:0
	}
	to {
		width:100%
	}
}


.slide {
	display: none;
	transition: visibility 0.5s, opacity 0.5s linear;
}

.slide p {
	font-size: 1.15rem;
}

.slide.current-slide {
	display: initial;
	transition: visibility 0.5s, opacity 0.5s linear;
}

.image-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	opacity: 0.9;
	background:linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.5) 30%, rgba(0,0,0,0) 80%);
}

.pt-from-nav {
	padding-top: 77.7px;
}

.blog-card .card-footer {
	background-color: #fff;
	border: none;
}

.btn-white {
	border-color: #fff;
	background-color: #fff;
	color: rgb(1, 82, 168)!important;
	outline: 0;
}

.btn-primary {
	border-color: rgb(1, 82, 168);
	background-color: rgb(1, 82, 168);
	color: #fff!important;
	outline: 0;
}

.btn-primary-solid {
	border-color: rgb(1, 82, 168);
	background-color: rgb(1, 82, 168);
	color: #fff!important;
	outline: 0;
}

.btn-outline-primary {
	border-color: rgb(1, 82, 168);
	color: rgb(1, 82, 168);!important;
	outline: 0;
}

.btn-outline-primary:hover {
	border-color: rgb(1, 82, 168);
	color: rgb(1, 82, 168);!important;
	background-color: white;
	outline: 0;
}

.btn-dark {
    color: white;
    background-color: #000;
    border-color: #000;
}

.btn-icon {
    color: white;
    font-size: 2rem!important;
	line-height: 1;
}

.btn-icon:hover img {
	transform: rotate(90deg);
}

.blog-card:hover .btn-icon-clean img {
	transform: rotate(90deg);
}

.spin {
	transition: 0.8s;
}
.spin:hover {
	transform: rotate(90deg);
}

.icon-clean-text {

	line-height: 1.2;
}

.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.show > .btn-primary.dropdown-toggle,
.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
	border-color: #3E88D5;
	background-color: #3E88D5;
	color: #fff;!important;
	outline: 0;
}

.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus,
.show > .btn-primary.dropdown-toggle:focus {
	box-shadow: none;
	outline: 0;
}

.btn:focus,.btn:active {
	outline: none !important;
	box-shadow: none;
}

.bg-dark {
	background-color: #000 !important;
}

.bg-light {
	background-color: #ECF4FC !important;
}

.bg-primary {
	background-color: rgb(1, 82, 168)!important;
}

.py-6 {
	padding-top: 6rem;
	padding-bottom: 6rem;
}

.pt-6 {
	padding-top: 6rem;
}

.py-section {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

.pb-section {
	padding-bottom: 3rem;
}

.pt-section {
	padding-top: 3rem;
}

.py-8 {
	padding-top: 8rem;
	padding-bottom: 8rem;
}

.pt-8 {
	padding-top: 8rem;
}

.py-10 {
	padding-top: 10rem;
}

.pt-10 {
	padding-top: 10rem;
}

.py-12 {
	padding-top: 12rem;
	padding-bottom: 12rem;
}

a {
	color: rgb(1, 82, 168);
}

a:hover {
	color: #1f2021;
	text-decoration: none;
}

.btn-circle {
	width: 30px;
	height: 30px;
	padding: 6px 0px;
	border-radius: 15px;
	text-align: center;
	font-size: 12px;
	line-height: 1.42857;
}

.btn-circle.btn-xl {
	width: 70px;
	height: 70px;
	padding: 10px 16px;
	border-radius: 35px;
	font-size: 24px;
	line-height: 1.83;
}

.map-container {
	position: relative;
}

.map-contact-overlay {
	position: absolute;
	z-index: 99;
	right: 5%;
	top: 60px;
	width: 40%;
}

.footer-dark a:hover {
	color: #fff;
	text-decoration: none;
}

.text-primary {
	color: rgb(1, 82, 168);!important;
}

.footer {
	background-color: #012E5E;
	color: white;
}

.footer a {
	color: #fff;
}

.footer a:hover {
	color: #fff;
}

.footer .nav .nav-item .dropdown-item:hover {
	color: rgb(1, 82, 168);
}

.footer-dark {
	background-color: rgb(1, 82, 168);
	color: #fff;
}

.footer-heading {
	color: #fff;
	font-weight: 500;
}

.footer-dark a{
	color: #fff;
}

.footer-dark h4{
	color: #fff;
	font-size: 1.1rem;
}

.footer-dark strong{
	color: #fff;
}

.footer .btn-default {
	color: white;
}

.footer-dark .list-group-item {
	background: transparent;
	padding: 0;
	border: none;
}

.footer-logo {
	padding-top: 5px;
}

.img-zoom-container {
	overflow: hidden;
}

.img-zoom-container img {
	transition: all 0.7s ease-in-out;
}

.img-zoom-container img {
	transition: opacity 1.5s, -webkit-transform 1.5s ease-out;
	transition: transform 1.5s ease-out, opacity 1.5s;
	transition: transform 1.5s ease-out, opacity 1.5s, -webkit-transform 1.5s ease-out;
	opacity: 1;
	will-change: transform;
	transform: scale(1.01);
	-webkit-transform: scale(1.01);
	-ms-transform: scale(1.01);
}

.img-zoom-container:hover img {
	transform: scale(1.05);
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
}

.hex-container {
	background-image: url('../images/app/bg-effect-1.png');
	background-position: top right;
	background-repeat: no-repeat;
}

.card a {
	text-decoration: none;
}

/* 5. Shadows */
.z-depth-1, .btn{
    box-shadow: 0 1px 1.5px 0 rgba(0, 0, 0, 0.12), 0 1px 1px 0 rgba(0, 0, 0, 0.24);
}

.z-depth-2, .btn:hover {
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.14),0 3px 1px -2px rgba(0,0,0,.2),0 1px 5px 0 rgba(0,0,0,.12);
}

.z-depth-3, .z-depth-2:hover, .btn.z-depth-2:hover{
    box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12);
}

.breadcrumb {

	background-color: #f4f4f4;
	border-radius: unset;
}

.list-group-item.active {
	z-index: 2;
	color: #fff;
	background-color: rgb(1, 82, 168);
	border-color: rgb(1, 82, 168);
}

.list-group-item.active a {
	color: #fff!important;
}

.list-group-item a {
	display: block;
	line-height: 1.5;
}

.square-text-photo {
	width: 40%;
	padding-right: 2rem;
	padding-bottom: 2rem;
	float: left;
}

.png-shadow {
    -webkit-filter: drop-shadow(1px 2px 3px #595959 );
    filter: drop-shadow(1px 2px 3px #595959);
}

.service-heading {
	position: absolute;
	bottom: 1.70rem;
	font-weight: 100;
	left: 48px;
	color: #fff;
}

.website-map:focus, .website-map:active, .website-map {
	outline: none;
	border: none;
}

.highlight-background {
    position: absolute;
    overflow: hidden;
    max-width: 100%;
    top: 0;
}

.featured-card img{
	transition:all .4s ease 0s;
	transform-origin: center center;
}

.featured-card:hover img{
	transform: scale(1.05);
}

.featured-card:hover .img-zoom-container:after{
	left:1rem;
	right:1rem;
	bottom:1rem;
	opacity:1;
	transform-origin: top left;
}

.bg-change {
    background-color: rgb(240,241,250);
}

.gradient-light--lean-right {
    background-image: -moz-linear-gradient( 30deg, rgb(247,248,250) 0%, rgb(240,241,250) 100%);
    background-image: -webkit-linear-gradient( 30deg, rgb(247,248,250) 0%, rgb(240,241,250) 100%);
    background-image: -ms-linear-gradient( 30deg, rgb(247,248,250) 0%, rgb(240,241,250) 100%);
}

.mtm-100 {
    margin-top: -100px;
}

.ml-8 {
    margin-left: 3.5rem !important;
}

.testimonial-quote {
    position: relative;
}

.testimonial-quote::before {
    top: 0;
    left: -54px;
    position: absolute;
    content: "\201E";
    margin-top: -65px;
    font-family: Arial,sans-serif;
    font-size: 110px;
    line-height: 1;
    color: #ddd;
}

.img-avatar-circle {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    margin: 0 auto;
    display: block;
    z-index: 1;
    vertical-align: middle;
}

.video-container {
	position: relative;
}

.video-container .fa {
	position: absolute;
	left: calc(50% - 27px);
	top: calc(50% - 32px);
	color: #fff;
	opacity: 0.7;
}


.list-group-item {
	line-height: 1;
	position: static;
}

.list-group-item a {
	text-decoration: none;
}

.nav-tabs {
	border-bottom: 0;
}

.bg-transparent-white {
	background-color: rgba(255,255,255, 0.7);
}

.navbar-expand-lg .navbar-nav .nav-link {
	padding-right: .4rem;
	padding-left: .4rem;
}

.fp-grid {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	overflow: hidden;
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: rgb(1, 82, 168);
	transition: background-color 3s;
}

.fp-grid__item {
	margin-bottom: calc(.5px);
	margin-top: calc(.5px);
	overflow: hidden;
}

.fp-grid__item:nth-child(2n+1) {
	width: calc(50% - .5px);
	margin-right: .5px;
}

.fp-grid__item:nth-child(2n) {
	width: calc(50% - .5px);
	margin-left: .5px;
}

.fp-news-grid {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	overflow: hidden;
	list-style: none;
	margin: 0;
	padding: 0;
	padding-bottom: 3px;
}

.fp-news-grid__item {
	width: 25%;
}

.news-border {
	position: relative;
}

.news-item-container {
	/*border-right: thin solid #dee2e6;*/
	border-bottom: 1px solid #dee2e6;
	height: 100%;
	position: relative;
}

.news-item-container .card-img-top {
	margin-left: -1px;
}

.border-right-news {
	position: absolute;
	right: 1px;
	bottom: 0;
	width: 1px;
	height: 100%;
	background-color: #dee2e6;
	z-index: 10;
}

.blog-full-image-container {
	position: relative;
}

.blog-full-image {
	opacity: 0.4;
	object-fit: cover;
	object-position: center;
	width: 100%;
	max-height: 70vh;

}

.sector-full-image {
	opacity: 0.6;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.sector-main-heading {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}

.blog-main-heading {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}

.fp-grid:last-child .news-item-container {
	border-right: 0;
}

.sector-row:nth-child(2n+1) {
	width: calc(100% - 0.5px);
	margin-right: 0.5px;
}

.main-text ul {
	 list-style:none;
	 padding-left: 2em;
 }

.main-text ul li {
	position: relative;
	font-size: 1.1rem;
}

.main-text ol li {
	font-size: 1.1rem;
}

.team-title {
	font-size: 1.2rem;
}

.footer-dark a, .footer a {
	text-decoration: none;
}

@media (min-width:0px) and (max-width:575px) {

	.h1-main {
		font-size: 2.5rem;
	}

	.xs-bg-offset-x-right {
		background-position-x: calc( 50% + 30px)!important;
	}

	.slider-container {
		min-height: 80px;
		width: 100%;
		display: block;
	}

	.about-1, .about-2, .about-3 {
		height: 35vh;
	}

	.about-1, .about-2, .about-3 {
		background-size: cover;
		background-position: center top;
		background-repeat: no-repeat;
	}

	.header-transparent .container-padded {
		padding-left: 18px;
		padding-right: 18px;
	}

	.blog-full-image-container h1 {
		margin-top: 3rem!important;
		font-size: 1.2rem;
	}

	.sector-full-image h1 {
		margin-top: 3rem!important;
		font-size: 1.2rem;
	}

	.main-nav.navbar {
		padding-top: 20px;
		padding-bottom: 11px;
	}

	.navbar-brand img {
		width: 210px;
	}

	.main-image{
		height: 100%;
	}

	.map-contact-overlay {
		display: none;
	}

	.fp-news-grid__item {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.fp-grid__item {
		width: 100% !important;
	}

	.spec {
		width:50%;
	}

	.spec-wide {
		width: 100%;
	}

	.header-container {
		font-size: 1.8rem;
		height: 5rem;
	}
}

@media (min-width:576px) and (max-width:767px) {

	.blog-full-image-container h1 {
		margin-top: 3rem!important;
		font-size: 2rem;
	}

	.map-contact-overlay {
		display: none;
	}

	.main-nav.navbar {
		padding-top: 20px;
		padding-bottom: 11px;
	}

	.header-container {
		font-size: 1.8rem;
		height: 4rem;
	}


}

@media (min-width:768px) and (max-width:991px) {

	.main-nav.navbar {
		padding-top: 20px;
		padding-bottom: 11px;
	}

	.navbar-nav {
		margin-top: 1.5rem;
	}

	.navbar-light .nav-link {

		padding-top: 0.55rem;
		padding-bottom: 0.65rem;
		border-bottom: 1px solid #efefef;
	}
}

@media (max-width:1200px) {

	.spec {
		width: 50%;
	}

	.spec-wide {
		width: 100%;
	}
}

@media (min-width:1200px) {

	.map-contact-overlay {
		position: absolute;
		z-index: 99;
		right: 20px;
		top: 60px;
		width: 30%;
	}

	.spec {
		width:25%;
	}

	.spec-wide {
		width: 50%;
	}
}

