@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100..900&family=Open+Sans&family=Roboto:ital@0,300..600;1,300..600;1&display=swap');

:root {
	--color: #000;
	--icolor: #fff;
	--currentColor: #fff;
	--wrap: 1520px;
	--tight: 1140px;
	--paraheight: 600px;
	--oddcolor: #26493b;
	--evencolor: #242531;
	--menu: #fff;
	--imenu: #000;
	--pageMenu: #000;
	--transbar: #fff0;
	--dotLine: #fff8;
	--link: #183352;
	--linkhv: #366192;
	--bar: #fff;
	--pagebg: #fcfcfc;
	--foot: #333; 
	--footerColor: #b5b5b5;
	--footHV: #ccc;
	--menubghv: #fff0;
	--imenubghv: #fff5;
	--submenuhv: #fffc;
	--pageheader: #213559;
	--tdark: #0009;
	--contentbg: #fff;
}

html {
	height: 100%;
}

html, body {
	margin: 0;
	padding: 0;
	font-size: 18px;
	zoom: 1;
}

body {
	font-family: 'Noto Sans', Arial, sans-serif;
	color: var(--color);
	background: #fff;
}

h1, h2, h3, h4 {
	font-weight: 700;
}

h1 {
	font-size: 2em;
}

h2 {
	font-size: 1.75em;
}

h3 {
	font-size: 1.5em;
}

h4 {
	font-size: 1.25em;
}

p, table tr td {
	font-size: 1em;
	vertical-align: top;
}

h1, h2, h3, h4, p, table {
	margin: .5em auto;
}

strong {
	font-weight: 600;
}

button {
	cursor: pointer;
}

a {
	text-decoration: none;
	outline: none;
	color: var(--link);
}

	a:hover {
		color: var(--linkhv);
	}

span.br {
	display: block;
	font-size: 0;
}

img {
	max-width: 100%;
	height: auto;
}

#bodyCss {
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans', Arial, sans-serif;
	font-weight: 300;
	color: #000;
	line-height: 1.5;
	text-align: left;
	background: var(--pagebg);
}

.parallax-mirror {
	text-align: left;
}

.mm-wrapper_opened .parallax-mirror {
	z-index: 2 !important;
}

	.wrapper {
		width: var(--wrap);
		margin: 0 auto;
		padding: 0;
		position: relative;
	}

		.wrapper.tight {
			width: var(--tight);
		}

	.full-width .wrapper {
		width: auto;
	}

#header.sticky {
	padding-top: 4.5em;
}

	.home #header.sticky {
		padding: 0;
	}

.item-page {
	background-color: var(--pagebg);
}

.item-page > .page-header {
	position: relative;
	margin: 0 auto;
	padding: 0;
	color: var(--icolor);
	text-align: center;
	background: var(--pageheader);
}

.projects .com-content-category-blog > .category-title {
	float: left;
	width: calc(27% - 1.25em - 1px);
	padding: .5em 1.25em .5em 0;
	font-size: 3em;
	text-align: right;
	line-height: 1.2;
	border-right: 1px solid #999;
}

.projects .category-desc {
	float: right;
	width: calc(73% - 3em);
	padding: 3.5em 0 3.5em 3em;
	text-align: left;
}

	.category-desc .tight {
		width: auto;
		margin: 1em auto;
	}

.item-page > .page-header:before {
		content: '\00a0';
		width: 0;
		height: 13em;
		display: inline-block;
		vertical-align: middle;
	}

	.item-page > .page-header > h1 {
		display: inline-block;
		font-size: 3em;
		font-weight: 400;
		text-transform: uppercase;
		vertical-align: middle;
	}

#bannerBanners {
	position: relative;
	z-index: 0;
}

	#bannerBanners .slideImg {
		height: 850px;
		background-position: center top;
	}

	#captionBanners {
		position: absolute;
		width: 45%;
		font-family: 'Roboto', Arial, sans-serif;
		color: #fff;
		text-align: left;
		line-height: 1.15;
		z-index: 10;
	}

		#captionBanners .name {
			font-size: 3em;
			font-weight: 500;
		}

		#captionBanners .desc {
			font-size: 1.75em;
			font-weight: 800;
		}

		#captionBanners .desc a {
			display: inline-block;
			margin-top: 1.5em;
			font-size: .55em;
			padding: .85em 1.85em;
		}

		#captionBanners .desc a:first-child {
			margin-right: 1em;
			font-weight: 400;
			color: #000;
			background: #fff;
		}

		#captionBanners .desc a:last-child {
			font-weight: bold;
			color: #fff;
			background: #3e3e3e
		}

#mainContent {
	padding: 0;
}

.home .blog-featured {
	font-family: 'Roboto', Arial, sans-serif;
}

	.featured-article .item-title {
		font-weight: 300;
		font-size: 2.75em;
		text-align: center;
	}

	.featured-article .item-title > a {
		display: inline-block;
		margin: .5em auto .75em;
		padding: .25em .75em;
		color: #626262;
		border-bottom: 1px dotted #626262;
	}

	.featured-article .item-content {
		padding: 1em 0 4em;
	}

	.item-content .newsflash {
		display: block;
		font-size: 0;
	}

		table.services tr,
		table.services {
			border: 0 none;
		}

			table.services td {
				padding: 5px;
			}

			table.services figure.image {
				position: relative;
				overflow: hidden;
				z-index: 10;
			}

			table.services figure.image img {
				background-position: center center;
			}

			table.services figcaption {
				padding: 1em;
				border: 0 none;
			}

			table.services td:nth-child(odd) figcaption {
				color: #fff;
				background: #000;
			}

			table.services td:nth-child(even) figcaption {
				color: #000;
				background: #fff;
			}

			table.services figcaption ul li {
				font-size: .85em;
			}

	section.centered {
		text-align: center;
	}

	.services section figure.block {
		background: #fff;
	}

	figure.block {
		display: inline-block;
		width: calc(30% - 2em);
		margin: 1em 1%;
		padding: 1em;
		text-align: left;
		vertical-align: top;
		border: 1px solid #a7b0be;
	}

		figure.block figcaption strong {
			font-size: 1.2em;
		}

		.newsflash .mod-articlesnews__item {
			position: relative;
			display: inline-block;
			width: 24%;
			margin: 1em .5%;
			vertical-align: top;
			font-size: initial;
		}

		.newsflash-content {
			padding: 1em;
		}

		.newsflash .mod-articlesnews__item:nth-child(odd) .newsflash-content {
			color: #fff;
			background: #000;
		}

		.newsflash .mod-articlesnews__item:nth-child(even) .newsflash-content {
			color: #000;
			background: #fff;
		}

		.newsflash-title {
			margin: 0;
		}

			.newsflash-title a {
				color: inherit;
			}

			.newsflash-title a:before {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				content: '\00a0';
			}


		.newsflash-image {
			width: 100%;
			margin: 0;
			padding: 0;
			background-position: center center;
			background-repeat: no-repeat;
		}

			.newsflash-image img {
				width: 100%;
				height: auto;
				visibility: hidden;
			}

	.inquire-now {
		text-align: center;
	}
	
		.inquire-now > a {
			display: inline-block;
			padding: .75em 2.5em;
			color: #fff;
			font-size: 1.2em;
			font-weight: 600;
			line-height: 1;
			background: #c63c3c;
		}

.com-content-category-blog__items {
	clear: both;
	padding: 1rem 0;
}

	.com-content-category-blog__item {
		position: relative;
		cursor: pointer;
	}

	.com_content_category .Qualified {
		margin: 1rem auto 2rem;
		padding-bottom: 3rem;
	}

		.customQualified {
			padding: 1rem 2rem;
			border: 1px dashed var(--tdark);
		}

.home .bottom,
.masonry-3,
.masonry-2 {
	font-size: 0;
}

	.home .bottom .mod-custom,
	.masonry-2 > div {
		width: 50%;
	}

	.masonry-3 > div {
		width: 33.33%;
	}

	.home .bottom .mod-custom,
	.masonry-3 > div,
	.masonry-2 > div {
		position: relative;
		display: inline-block !important;
		font-size: initial;
		vertical-align: top;
	}

		.projects .masonry-3 > div,
		.home .mod-custom {
			color: #fff;
		}

		/* Home Page */
			/* left */
			.home .customAbout .wrapper {
				padding: 1em 5% 1em 10%;
			}

			/* right */
			.home .customCareers .wrapper {
				padding: 1em 10% 1em 5%;
				
			}

			.home .bottom .mod-custom .wrapper {
				display: table !important;
				width: 85%;
				min-height: 580px;
			}

			.home .bottom .mod-custom .content {
				display: table-cell !important;
				height: 100%;
				vertical-align: middle;
			}

		.masonry-3 figure.item-image {
			display: block;
			width: auto;
			margin: 1em;
			overflow: hidden;
		}

		.masonry-3 figure.item-image img {
			max-width: 100%;
		}

		.masonry-3 .item-content {
			position: absolute;
			width: calc(100% - 13em);
			margin: 1em;
			padding: .5em 10em .5em 1em;
			bottom: 0;
			color: #fff;
			background: var(--tdark);
		}

			.masonry-3 .blog-item:hover .item-content {
				padding-bottom: 1em;
			}

			.masonry-3 a {
				color: #fff;
			}

			.masonry-3 .page-header > h2 {
				font-size: 1.5em;
				text-align: left !important;
			}

			.masonry-3 h2 {
				margin: 0;
				font-size: inherit;
				text-align: left !important;
			}

			.masonry-3 p.readmore {
				position: absolute;
				right: 1em;
				top: 1em;
				margin: 0;
			}

				.com-content-category-blog__item p.readmore > a {
					margin: 0;
				}

.projects aside {
	float: left;
	width: calc(27% - 1px);
	padding-left: 5%;
	padding-right: 2%;
	margin-right: 1%;
	text-align: right;
	border-right: 1px dashed #3c3c3c;
}

	.projects aside > h2:first-child,
	.projects aside > p:first-child {
		margin-top: .5em;
	}

	.projects aside > ul {
		padding: 0 20px 0 0;
		list-style: none;
	}

		.projects aside > ul li {
			position: relative;
		}

		.projects aside > ul li:after {
			position: absolute;
			top: 2px;
			right: -18px;
			content: '•';
			font-weight: bold;
		}

	.projects aside + p {
		display: none;
	}

.projects .sigFreeContainer {
	width: 65%;
	clear: none;
}

	.projects .sigFreeContainer + p {
		clear: both;
	}

	.projects ul.sigFreeClassic li.sigFreeThumb {
		width: 45%;
		margin: 0 !important;
		padding: 2.5%;
	}

		.projects .sigFreeThumb a.sigFreeLink,
		.projects .sigFreeThumb a.sigFreeImg {
			max-width: 100%;
		}


p.readmore {
	text-align: right;
}

	p.readmore > a {
		display: inline-block;
		margin: 1em auto 0;
		padding: .5em 1em;
		font-weight: 400;
	}

	.home .mod-custom p.readmore > a {
		color: #fff;
		text-transform: uppercase;
		word-spacing: 1em;
	}

		.home .mod-custom p.readmore > a:hover,
		.projects p.readmore > a:hover,
		.blog-featured p.readmore > a:hover {
			background-color: #0005;
		}

	/* Careers */

	.career-opportunities .masonry-2 .item-content {
		margin: 1em;
		padding: 1em 1.5em;
		background: var(--contentbg);
	}

	.career-opportunities p.readmore > a {
		color: #000;
	}

	figure.item-image {
		position: relative;
		margin: 0 auto;
	}

figure {
	margin: 0;
	padding: 0;
}

	figure.boxed img {
		max-width: 270px;
		margin: .25em auto .5em;
		padding: 25px;
		background: #fff7;
	}


figure.center {
	text-align: center;
}


#footer {
	clear: both;
	padding: 2em 0 3em;
	color: #fff;
	font-size: initial;
	font-weight: 400;
	line-height: 1.3;
	background: var(--foot);
}


.soc {
	display: inline-block;
	width: 42px;
	height: 42px;
	font-size: 0;
	vertical-align: top;
	background-image: url(../images/soc.png);
}

	.soc.fb {
		margin: 0 7px 0 0;
		background-position: 0 0;
	}

	.soc.tw {
		margin: 0 7px;
		background-position: 50% 0;
	}

	.soc.ig {
		margin: 0 0 0 7px;
		background-position: 100% 0;
	}

form.mod-finder {
	display: inline-block;
	margin-left: 1em;
}

	.mod-finder input.form-control {
		display: inline-block;
		margin: 0 1em 0 0;
		padding: .85em 1.5em;
		border: 0 none;
		vertical-align: middle;
	}

	.mod-finder button.btn-primary {
		display: inline-block;
		padding: 0;
		font-size: 0;
		border: 0 none;
		background: none;
		vertical-align: middle;
	}
	
		.mod-finder .btn-primary .icon-search {
			display: block;
			font-size: initial;
			width: 2em;
			height: 2em;
			background: transparent url(../images/s.png) no-repeat center center;
		}

.divider .separator {
	visibility: hidden;
}

	.divider.rows-2 .separator {
		line-height: 2.6;
	}


#footer {
	padding: 2rem 0 1rem;
	font-size: 0;
	text-align: left;
	color: var(--footerColor);
}

	#footer .no-card {
		display: inline-block;
		margin: 1em 0 2em;
		text-align: left;
		font-size: initial;
		vertical-align: top;
	}

		#footer .no-card:first-child {
			width: 75%;
		}

	#footer .Copyright {
		display: inline-block;
		width: 25%;
		margin: -1em 0 0;
		font-family: 'Roboto', Arial, sans-serif;
		font-size: initial;
	}
	
	#footer p {
		margin: .5em 0 1em;
	}

	#footer a {
		text-decoration: none;
		color: inherit;
	}

		#footer a:hover {
			color: var(--footHV);
		}

video {
	width: 100%;
	height: auto;

}


/* Pages */

.parallax .page-head {
	margin: 0;
	padding: 4em 0;
	font-style: italic;
	text-align: center;
}

	.parallax .page-head .page-title {
		display: block;
		margin: 1em auto;
		font-size: 3em;
		line-height: 1.3;
		color: #fff;
	}

		.parallax .page-head .image.page-title {
			width: 17em;
			margin: 2em auto 0;
			font-size: 1.4em;
			font-weight: 500;
		}

	.parallax .page-title em {
		display: block;
		width: 40%;
		margin: 0 auto;
		font-size: .5em;
		font-weight: normal;
		font-style: normal;
	}

	.com-content-category-blog,
	.com-contact-article__body,
	.com-content-article__body {
		padding: 2em 0;
	}

	.com-content-article__body h1,
	.com-content-article__body h2,
	.com-content-article__body h3,
	.com-content-article__body h4,
	.com-content-article__body p,
	.com-content-article__body table {
		margin: 1.5em auto;
	}

	.left-heading {
		display: inline-block;
		margin: 1.5em auto .25em !important;
		padding-bottom: .25em;
		padding-right: 1em;
		border-bottom: 1px dashed #000;
}

	table {
		font-family: 'Noto Sans', Arial, sans-serif;
		font-size: .9em;
		border-collapse: collapse;
		border-width: 4px 0 0;
		border-style: solid;
		border-color: #ccc;
	}

		table tr {
			border-bottom: 1px solid #ccc;
		}

		table td {
			padding: .5em 1em;
		}

.customBottom table {
	margin: 0;
	padding: 0;
	border-collapse: separate;
	border: 0 none !important;
	border-spacing: 0;
}

	.customBottom td {
		height: 320px;
		background-size: cover;
	}

.vision-mission .com-content-article__body {
	padding: 0;
}

	.com-content-article__body > .vision,
	.com-content-article__body > .mission {
		position: relative;
		width: 30%;
		min-height: 550px;
	}

	.com-content-article__body > .vision {
		float: left;
		padding: 2em 7% 2em 13%;
		background: #2b2b2b;
	}

	.com-content-article__body > .mission {
		float: right;
		padding: 2em 13% 2em 7%;
		background: #eee;
	}

	.vision > h2,
	.mission > h2 {
		margin: 1em 0 .75em;
		padding: 0 1.25em;
		font-size: 2.25em;
		font-family: 'Roboto', Arial,sans-serif;
		padding-bottom: .5em;
	}

	.vision > h2 {
		color: #fff;
		border-bottom: 1px solid #fff;
	}

	.mission > h2 {
		border-bottom: 1px solid #2b2b2b;
	}

	.mission > blockquote,
	.vision > blockquote {
		margin: 2em 0;
		padding: 2em 3em;
		text-align: center;
	}

		.vision > blockquote,
		.mission > blockquote {
			font-size: 1.2em;
			background-color: #fff;
		}

	.com-content-article__body blockquote > p {
		margin: 0;
	}


/* DFLIP Button Override */

._df_thumb {
	width: 150px !important;
	height: 175px !important;
}

._df_button {
	display: inline-block;
	margin: .25em auto;
	min-width: 80%;
	font-size: inherit;
	color: inherit;
	border: 1px dashed #ccc;
	vertical-align: top;
	background: none;
}

	._df_button:hover {
		border-color: #fff;
		background: #ddd;
	}


/* Tweaks */

.wrapper:before,
.wrapper:after {
	content: "\00a0";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.visually-hidden {
	display: none;
}

.com-content-article__body {
	text-align: inherit;
}

.com-content-article__body > table > tbody > tr > td > img {
	margin-bottom: 20px;
}

.contact .misc {
	margin: 3em auto 1em;
	width: 65%;
	font-size: 1.2em;
}

	.contact-form form {
		width: 65%;
		margin: 3em auto;
		padding: 1.5em 2em;
		text-align: justify;
		background: #fff;
	}

	.contact-form .control-group {
		display: inline-block;
		width: 49%;
	}

	.contact-form input[type="text"],
	.contact-form input[type="email"],
	.contact-form textarea,
	.contact-form select {
		font-family: 'Noto Sans', Arial, sans-serif;
		font-size: 1em;
		font-weight: 400;
		background: #f0f0f0;
	}

		.contact-form input[type="text"]:focus,
		.contact-form input[type="email"]:focus,
		.contact-form textarea:focus,
		.contact-form select:focus {
			background: #cdd;
		}

	.contact-form input[type="text"],
	.contact-form input[type="email"] {
		width: 92%;
		margin: 0;
		padding: .75em 4%;
		border: 0 none;
	}

	.contact-form div.text {
		margin: .35em 0;
		border-bottom: 2px solid #cde;
	}

	.contact-form select {
		width: 100%;
		margin: 0;
		padding: .45em 2.5% .45em;
		border: 0 none;
	}

	.contact-form div.textarea {
		width: 100%;
	}

		.contact-form textarea.textarea {
			display: block;
			width: 97.5%;
			margin: 0;
			padding: .5em 1.25%;
			border: 0 none;
			resize: none;
		}

	.contact-form div.button,
	.contact-form div.check {
		width: auto;
	}
	
			.contact-form div.check .controls,
			.contact-form div.check .control-label {
				display: inline-block;
				vertical-align: middle;
			}

			.contact-form input.check,
			.contact-form div.check .control-label {
				font-size: .7em;
				text-transform: uppercase;
			}

	.contact-form div.button {
		float: right;
		margin-top: .5em;
	}

		.contact-form button {
			padding: 1em 2em;
			color: #fff;
			font-size: 1em;
			background-color: #09f;
			border: 0 none;
		}

.catalogue td {
	text-align: left;
}

a[href^='https://www.youtube.com/watch'] {
	position: relative;
	display: inline-block;
	max-width: 45%;
}

.bottom .module .wrapper > h2,
.bottom .module .wrapper > h3 {
	text-align: center;
}



/* CSS Hacks */
.clearFix:after {
	content: "\0020";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.clearFix {
	display: inline-block;
}

html[xmlns] .clearFix {
	display: block;
}

* html .clearFix {
	height: 1%;
}

.icon-chevron-right {
	display: none;
}

@media only screen and (max-width: 1600px) {
	:root {
		--wrap: 95%;
	}

	.hide-mobile {
		display: none !important;
	}

	.mobile-only {
		display: initial !important;
	}

	.com-content-article__body > .vision,
	.com-content-article__body > .mission {
		width: 40%;
		min-height: 600px;
	}

	.com-content-article__body > .vision {
		padding: 2em 5%;
	}

	.com-content-article__body > .mission {
		padding: 2em 5%;
	}
}

@media only screen and (max-width: 1200px) {
	:root {
		--wrap: 95%;
		--tight: 90%;
	}

	.tight br {
		display: none;
	}

	#bannerBanners .slideImg {
		height: 80vh;
		background-position: center center;
	}

	.dotsContainer {
		height: 30vh;
	}

	.owl-dots > .owl-dot {
		width: 25vh;
		height: 25vh;
		margin: 2.5vh 1.25vh;
	}

	#captionBanners[style] {
		top: 35% !important;
		left: 8% !important;
		width: 60%;
	}

	#captionBanners img {
		width: 85%;
	}

	figure.full.item-image {
		margin: .5em 0;
		overflow: hidden;
	}

	figure.full.item-image:before,
	figure.full.item-image:after {
		display: none;
	}

	figure.full.item-image > img {
		width: 200% !important;
		max-width: 200%;
		height: auto !important;
		margin: 0 -50%;
	}

	table.services {
		display: block;
		border-spacing: 0;
		border-collapse: separate;
	}

		table.services tbody,
		table.services tr {
			display: block;
			font-size: 0;
			margin: 0;
			padding: 0;
			text-align: center;
		}

		table.services td {
			display: inline-block;
			margin: 10px;
			padding: 0;
			width: calc(33.33% - 40px);
			font-size: initial;
			text-align: left;
		}

	#footer .no-card {
		font-size: 16px;
	}

	#footer .no-card:first-child {
		width: 65%;
	}

	#footer .Copyright{
		width: 35% !important;
	}

	.com-content-article__body table[style] {
		display: block;
		position: relative;
		overflow-x: scroll;
		overflow-y: hidden;
	}

	.com-content-article__body table tbody {
		display: table;
		width: 1200px;
	}

	.com-content-article__body > .vision,
	.com-content-article__body > .mission {
		width: 45%;
		min-height: 450px;
	}

	.com-content-article__body > .vision {
		padding: 2em 2.5%;
	}

	.com-content-article__body > .mission {
		padding: 2em 2.5%;
	}

	.mission > blockquote, .vision > blockquote {
		margin: 1em;
		padding: 1em;
		line-height: 1.2;
	}

	.vision > h2,
	.mission > h2 {
		margin: .75em 0;
	}

	.masonry-3 .page-header > h2,
	.masonry-3 h2 {
		line-height: 1.2;
	}

	.masonry-3 figure.item-image,
	.masonry-3 .item-content {
		margin: .5em;
	}
	
	.masonry-3 .item-content {
		width: calc(100% - 8em);
		padding: .5em 6em .5em 1em;
	}

	.com-content-category-blog__item p.readmore > a {
		font-size: .9em;
	}
}


@media only screen and (max-width: 980px) {
	:root {
		--wrap: 95%;
		--tight: 95%;
	}

	html, body {
		font-size: 16px;
	}

	.customLogo {
		font-size: 26px;
	}

	h1, h2, h3, h4, p {
		margin: .5em auto .75em;
	}
	
	hr {
		margin: 1em auto 3em;
	}

	div.heading p + hr {
		width: auto;
	}

	p.readmore > a {
		padding: .85em 2.5em;
	}

	section .newsflash .mod-articlesnews__item {
		width: 47%;
	}

	div.heading {
		margin: 1em 0 2em;
		width: 70%;
	}

	figure.item-image {
		width: 30%;
		margin: 2em 0 3em;
	}

	div.heading p > img {
		width: 50%;
	}

	div.heading p + hr {
		margin: 1em auto;
	}

	div.heading p + hr + h2 {
		font-size: 4vw;
	}

	#bannerBanners #sliderBanners {
		margin-top: 0;
	}

	.featured-article br,
	.home .bottom .mod-custom br {
		display: none;
	}

		.bottom .mod-custom figure.image.boxed img {
			max-width: 40%;
		}

	p > img.float-none[style] {
		width: auto !important;
		height: 1.5em !important;
	}

	table.services td {
		width: calc(50% - 40px);
	}

	.contact-form input[type="text"],
	.contact-form input[type="email"] {
		padding: .5em 4%;
	}

	.contact-form input[type="text"],
	.contact-form input[type="email"],
	.contact-form select {
		font-size: 3vw;
	}

	.com-content-article__body > .vision,
	.com-content-article__body > .mission {
		float: none;
		display: block;
		width: auto;
		min-height: unset;
	}

	.mission > blockquote, .vision > blockquote {
		padding: 2em;
	}

	.mission:before,
	.vision:after {
		display: none;
	}

	.masonry-3 > div {
		width: 50%;
	}

	.projects .com-content-category-blog > .category-title {
		width: calc(45% - .75em - 1px);
		padding: .5em .75em .5em 0;
	}
	
	.projects .category-desc {
		width: calc(55% - 2em);
		padding: 1.5em 0 1.5em 2em;
	}

	.com-content-category-blog__item p.readmore > a {
		padding: .5em .75em;
	}

	.projects aside {
		text-align: left;
		border: 0 none;
	}

		.projects aside,
		.projects .sigFreeContainer {
			float: none;
			width: auto;
			margin: 0;
			padding: 0;
		}	

		.projects aside > ul {
			padding: 0 0 0 20px;
			list-style-type: disc;
		}

	.projects aside > ul li:after {
		display: none;
	}

}

@media only screen and (max-width: 640px) {
	:root {
		--wrap: 90%;
		--tight: 90%;
	}

	h1 {
		font-size: 7vw;
	}

	h2 {
		font-size: 6.75vw;
	}

	h3 {
		font-size: 6.25vw;
	}

	h4, p, table tr td {
		font-size: 5vw;
		vertical-align: top;
	}

	h1 em, h2 em, h3 em, h4 em {
		font-weight: 500;
	}

	.parallax .page-head .image.page-title,
	.contact .misc {
		width: auto;
	}

	.contact-form form {
		width: auto;
		padding: 1.5em;
	}
	
	.parallax .page-head .page-title {
		margin: 1em;
	}

	.item-page > .page-header {
		padding: 5vw;
		line-height: 1;
	}

	.item-page > .page-header > h1 {
		font-size: 7vw;
	}

	.item-page > .page-header:before {
		display: none;
	}

	div.heading p + hr + h2 {
		font-size: 5vw;
	}

	div.heading p > img {
		width: 70%;
	}

	.customLogo {
		font-size: 22px;
	}

	.page-head img {
		max-width: 90%;
	}

	.mod-custom span.logoImg {
		float: left;
		width: 2.5em;
		margin: .5em 0;
	}

	.mod-custom span.logoImg img {
		width: 100%;
	}
	
		.customLogo span.logoTxt {
			margin-left: 2.5em;
			padding: .5em 0;
			font-size: 1.15em;
		}

	#bannerBanners .slideImg {
		height: 60vh;
		background-size: auto 100%;
	}

	#captionBanners[style] {
		top: auto !important;
		bottom: 1em !important;
		right: -5% !important;
		padding-right: 15px;
		width: 80%;
		font-size: 14px;
	}

	#captionBanners img {
		width: 50%;
	}

	.dotsContainer {
		height: 1em;
		margin-top: -1em;
	}

	.owl-dots {
		right: 0;
		left: auto;
		bottom: 0;
	}

	.owl-dots > .owl-dot:first-child {
		margin-left: .35em;
	}

	.owl-dots > .owl-dot:last-child {
		margin-right: .35em;
	}

	.owl-dots > .owl-dot {
		margin: .3em .15em;
		width: .4em;
		height: .4em;
		border-radius: .5em;
		border: 0 none;
	}

	.owl-carousel .owl-nav button.owl-next,
	.owl-carousel .owl-nav button.owl-prev,
	.owl-carousel button.owl-dot {
		background: #9995;
		border: 1px solid #ccc7;
	}

	.owl-carousel .owl-dot.active {
		background: #ccc8;
		border: 1px solid #fff8;
	}

	.owl-dots > .owl-dot img,
	.owl-dot:after {
		display: none;
	}

	.com-content-article__body h2 strong {
		font-size: inherit;
	}

	section .newsflash .mod-articlesnews__item {
		width: 97%;
	}

	figure.item-image.right {
		margin-right: -5%;
	}

	figure.item-image.left {
		margin-left: -5%;
	}

	figure.item-image.left img {
		right: -5vw;
		top: .5em;
	}

	figure.item-image.right img {
		left: -5vw;
		top: .5em;
	}

	figure.item-image.right:after {
		right: 2.5vw;
	}
	
	figure.item-image.left:after {
		left: 2.5vw;
	}
	
	table[style] {
		width: 100% !important;
		overflow: visible !important;
	}

	.com-content-article__body table tbody {
		display: block;
		width: auto;
	}

	.com-content-article__body > table > colgroup {
		display: none;
	}

	.com-content-article__body > table > tbody > tr > td {
		display: block;
	}

	.home .bottom .mod-custom,
	table.services td {
		display: block;
		width: auto;
		margin: 0;
		white-space: initial;
	}

	#footer .no-card {
		font-size: 2.85vw;
	}

	table.catalogue td {
		display: block;
		margin: 0 !important;
		padding: 0 !important;
		font-size: 0 !important;
	}

	._df_thumb {
		display: inline-block;
		width: 31.33%;
		height: 35vw;
		margin: 1vw 1% 2vw;
	}

	#footer .Copyright {
		margin-top: 3em;
		padding-top: 3em;
		border-top: 1px dashed #5a5a5a;
	}

	.masonry-2 > div,
	.masonry-3 > div {
		display: block !important;
		width: auto;
	}

	.masonry-3 .page-header > h2 {
		font-size: 6vw;
	}
	
		.masonry-3 h2 {
			font-size: 4.5vw;
		}


	.com-content-category-blog__item figure.item-image {
		width: calc(100% - 1em);
		margin: .5em;
	}

		.com-content-category-blog__item figure.item-image img {
			width: 100%;
			height: auto;
		}

	.projects .com-content-category-blog > .category-title,
	.projects .category-desc {
		float: none;
		width: auto;
		padding: .5em;
		text-align: center;
		border: 0 none;
	}
	

	.com-content-category-blog__item p.readmore > a {
		padding: .5em .75em;
	}

	.masonry-3 .item-content {
		width: calc(100% - 10em);
		padding: .5em 8em .5em 1em;
	}

	.masonry-3 figure.item-image,
	.masonry-3 .item-content {
		margin: .5em .5em 0;
	}

	.com-content-category-blog__item p.readmore > a {
		font-size: 3.5vw;
	}

	.masonry-3 p.readmore {
		right: .5em;
		top: .75em;
	}

	.sigFreeThumb a[style],
	.sigFreeThumb a img[style] {
		width: 320px;
		height: 200px !important;
	}
}