@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600&family=Oswald:wght@400;600;700&&family=Roboto:wght@300;600;700&display=swap');
@import url('../../../media/templates/site/wavetech/css/editor.min.css');

:root {
	--wrap: 1400px;
	--paraheight: 600px;
	--oddcolor: #26493b;
	--evencolor: #242531;
	--transbar: #17b75ccc;
	--link: #183352;
	--linkhv: #366192;
	--bar: #ddd;
	--default: #000;
	--pagebg: #fff;
	--greybg: #ededed;
	--grey: #ccc;
	--lightbg: #f1f1f1;
	--backbg: #e7e7e7;
	--foot: #3e3e3e; 
	--copybg: #20252b;
	--btn: #b79055;
	--title: #7d3939;
	--btnhv: #7d3939;
	--btn2: #464646;
	--transbg: #0005;
	--download: #009411;
	--zoom-width: 512px;
	--fsize: 30px;
}

html {
	height: 100%;
}

html, body {
	margin: 0;
	padding: 0;
	font-size: var(--fsize);
	zoom: 1;
}

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

h1 {
	font-size: 1.75em;
}

h2 {
	font-size: 1.5em;
}

h3 {
	font-size: 1.25em;
}

h4 {
	font-size: 1em;
}

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

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

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: 'Barlow Condensed', Arial, sans-serif;
	font-weight: 500;
	color: var(--default);
	line-height: 1.3;
	text-align: left;
	background: var(--backbg);
}

.customLogo {
	float: left;
	position: relative;
	margin-left: calc(-50vw + (var(--wrap) / 2));
	padding: .25em 5em .25em calc(50vw - (var(--wrap) / 2));
}

	.customLogo:before,
	.customLogo:after,
	.customLogo {
		background: #fff4;
		clip-path: polygon(0 0, 100% 0, calc(100% - 3em) 100%, 0 100%);
	}

	.customLogo:before {
		width: 97%;
	}

	.customLogo:after {
		width: 94%;
	}

	.customLogo:before,
	.customLogo:after {
		position: absolute;
		content: '\00a0';
		top: 0;
		left: 0;
		height: 100%;
		z-index: 0;
	}

	.customLogo > div {
		position: relative;
		z-index: 999;
	}


/*.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;
	}

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

#header {
	text-align: right;
}

.menuBar {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	padding: 0;
	background: var(--transbar);
	z-index: 999;
}

.page-header {
	position: relative;
	margin: 0 auto;
	padding: 0;
}

	.page-header > h1 {
		margin: 0;
	}

#bannerBanners {
	position: relative;
}

	#captionBanners .desc h1 {
		font-family: 'Times New Roman', Times, serif;
		font-weight: normal;
		font-size: 2em;
	}

	#captionBanners .desc p {
		margin: 15px auto 50px;
		font-family: Georgia, Times, serif;
		font-size: 1em;
	}

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

	#captionBanners {
		position: absolute;
		width: auto;
		text-align: left;
		z-index: 999;
	}

		#captionBanners .desc {
			line-height: 1.1;
			color: #fff;
		}

.bannerfooter {
	padding: .5em;
	text-align: center;
	color: #c7a67d;
	background: #eeede8;
}

	.bannerfooter img {
		max-width: 2em;
		margin: 0 0 0 1em;
		vertical-align: middle;
	}

.lead-items .item-content {
	position: relative;
	margin: 0 auto;
	padding: 5em 0 7em;
	color: #000;
	font-size: 1.2em;
	text-align: center;
	vertical-align: middle;
	z-index: 1;
}

	.lead-items .item-title {
		font-size: 1.5em;
		font-weight: 500;
	}

p.readmore {
	text-align: center;
	font-size: var(--fsize);;
}

	p.readmore > a {
		display: inline-block;
		margin: 0 auto;
		padding: .1em 1em;
		font-size: 1.25em;
		color: #fff;
		text-transform: capitalize;
		background: var(--btn);
	}

	p.readmore > a:hover {
		background-color: var(--btnhv) !important;
	}
	
	.intro-items p.readmore > a {
		margin: 1em 0;
		background: #02bcae;
	}

	figure {
		position: relative;
		margin: 0 auto;
	}

		figure img {
			width: 100%;
		}

.products .article-modules {
	padding: 3em 0 2em;
}

.module.solutions p.readmore,
.mod-articlesnews__item p.readmore {
	margin: 0 auto;
}

	.products .article-modules p.readmore > a,
	.module.solutions p.readmore > a,
	.blog-cat p.readmore > a,
	.mod-articlesnews__item p.readmore > a {
		display: block;
		padding: .5em;
		font-family: 'Oswald', Tahoma, sans-serif;
		font-size: .85em;
		text-transform: capitalize;
	}

	.module.solutions p.readmore > a:hover:after,
	.blog-cat p.readmore > a:hover:after,
	.mod-articlesnews__item p.readmore > a:hover:after {
		position: absolute;
		margin: .25em 0 0 .25em;
		content: '>';
		line-height: 1;
	}

	.module.solutions img,
	.blog-cat img,
	.mod-articlesnews__item img {
		width: 100%;
	}


aside.left,
figure.left {
	float: left;
	margin-right: 5%;
}

aside.right,
figure.image.right {
	float: right;
	margin-left: 5%;
}

aside {
	width: 30%;
	padding-top: 25px;
	padding-bottom: 25px;
	font-size: var(--fsize);;
}

	aside.left {
		margin-right: calc(5% - 1px);
		border-right: 1px dashed #000;
	}

	aside.right {
		margin-left: calc(5% - 1px);
		text-align: right;
		border-left: 1px dashed #000;
	}

	.com-content-article__body aside h2 {
		font-size: 2.5em;
		font-weight: 600;
	}

	aside + div {
		margin-left: 35%;
		padding: 25px 0;
	}

	._df_thumb {
		margin: 10px;
		font-size: var(--fsize);;
	}

h1 em,
h2 em,
h3 em {
	font-style: normal;
	font-weight: 300;
}

.com-content-article__body h2 strong {
	position: relative;
	display: inline-block;
	padding: 0 1em .25em 0;
	font-size: .85em;
	font-weight: 400;
	border-bottom: 1px dotted #000;
}

	.com-content-article__body aside h2 {
		border: 0 none;
	}

.com-content-article__body h2 strong:before {
	position: absolute;
	display: block;
	width: 3.5em;
	height: 4em;
	left: -1.2em;
	top: -1.5em;
	content: '\00a0';
	background: #e8e5e4;
	z-index: -1;
}

hr.cat-intro {
	display: none;
}

hr {
	position: relative;
	display: block;
	width: 25%;
	margin: 2em auto;
	height: 2px;
	background: #999;
	border: 0 none;
	overflow: visible;
}

	hr:before,
	hr:after {
		position: absolute;
		display: inline-block;
		width: 50%;
		height: inherit;
		content: '\00a0';
		vertical-align: top;
	}

	hr:before {
		left: -50%;
		background-image: -ms-linear-gradient(to left, #999, #fff0); 
		background-image: -o-linear-gradient(to left, #999, #fff0);
		background-image: linear-gradient(to left, #999, #fff0);
	}

	hr:after {
		right: -50%;
		background-image: -ms-linear-gradient(to right, #999, #fff0); 
		background-image: -o-linear-gradient(to right, #999, #fff0);
		background-image: linear-gradient(to right, #999, #fff0);
	}

div.heading {
	display: block;
	margin: 3em auto 5em;
}

	div.heading p {
		margin: 0;
	}

	div.heading p > img {
		margin: 25px 0 0;
	}

	div.heading p + hr {
		display: block;
		margin: 1.5em 0;
		width: calc(100% - 1em);
		height: 5px;
		background: #000;
	}

		div.heading p + hr:before,
		div.heading p + hr:after {
			display: none;
		}


	div.heading p + hr + h2 {
		display: block;
		margin: 25px 0 0;
		font-size: 1.5em;
		font-weight: 300;
		border: 0 none;
	}

	.blog-featured + .module {
		padding: 2em 0;
	}

	.blog-featured .parallax {
		padding: 17em 0 0;
		color: var(--pagebg);
	}

		.blog-featured .wrapper {
			padding: .5em calc((100% - var(--wrap)) / 2);
			background: #0009;
		}

		.blog-featured .wrapper:hover {
			background: #0005;
		}

		.blog-featured .parallax:first-child h2 {
			font-family: 'Barlow Condensed', Arial, sans-serif;
			font-size: 1.25em;
			color: var(--grey);
		}

		.blog-featured .parallax:first-child h1,
		.blog-featured .parallax:first-child h2,
		.blog-featured .parallax:first-child p {
			margin: 0;
		}

		.blog-featured .parallax:first-child p {
			font-size: 1em;
			line-height: 1.2;
		}

		.blog-featured .parallax:first-child .readmore,
		.blog-featured .parallax:first-child .readmore > a {
			position: absolute;
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
			font-size: 0;
			z-index: 999;
			background: none !important;
		}

		.blog-featured figure.image {
			border: 10px solid var(--pagebg);
		}

.module.ibs,
.module.solutions {
	background-color: #f9f8f3;
}

.module-title {
	margin: 0 0 1em;
	font-family: 'Barlow Condensed', Arial, sans-serif;
	font-size: 1.85em;
	color: var(--title);
}

.products .article-modules .masonry,
.cat-children.masonry,
.module .masonry {
	font-size: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.masonry .item {
		display: inline-block;
		font-size: var(--fsize);;
	}

	.masonry-4 .item {
		width: calc(25% - 1.3em);
		margin: 0 .65em;
	}

	.masonry-3 .item {
		width: calc(33% - 1.3em);
		margin: 0 .65em;
	}


.intro-items .item-content {
	padding: 3em 0;
	text-align: left;
}

	.neat h1.item-title {
		position: relative;
		display: inline-block;
		min-width: 8em;
		padding: .5em 0 .35em;
		border-bottom: 7px solid #fdd326;
		font-size: 2em;
	}

	.neat h1.item-title:before,
	.neat h1.item-title:after {
		position: absolute;
		right: -7px;
		bottom: -7px;
		width: 35px;
		height: 7px;
		content: '\00a0';
		font-size: 0;
		background: #fdd326;
		border-left: 10px solid white;
	}

	.neat h1.item-title:after {
		right: -30px;
		width: 20px;
	}

.intro-items .item-content.parallax {
	padding: 2.5em 0 3.5em;
	color: #fff;
	text-align: center;
}

	.intro-items h1 {
		padding: 1em 0;
		font-size: 2em;
	}

	.dotsContainer {
		position: absolute;
		right: .25em;
		bottom: .25em;
	}

		.owl-carousel button.owl-dot {
			display: inline-block;
			outline: none;
		}

		.owl-carousel button.owl-dot > span {
			display: block;
			width: 1.5em;
			height: .5em;
			margin: 0 1px;
			background: var(--btn);
		}

		.owl-carousel button.owl-dot.active > span,
		.owl-carousel button.owl-dot:hover > span {
			background: var(--btnhv);
		}


.btn {
	display: inline-block;
	text-decoration: none;
	font-size: .85em;
	font-weight: 500;
	color: #fff;
	padding: .5em 1em;
}

	.convertforms .cf-btn {
		font-size: 1.25em;
	}

	.btn.download {
		background-color: var(--download)
	}

	.convertforms .cf-btn,
	.btn-1 {
		background-color: var(--btn);
	}

	.btn-2 {
		background-color: var(--btn2);
	}

.convertforms .cf-btn:hover,
.btn:hover {
	color: #fff;
	background-color: var(--btnhv);
}

#captionBanners .btn {
	margin: 0 .5em 0 0;
}


/* Contact Module */

.ContactForm {
	background-color: var(--lightbg);
}

.ContactForm .module-title {
	display: none;
}

	.contact-us .ContactForm {
		background: none;
	}

	.contact-us .ContactForm > .wrapper {
		width: calc(var(--wrap) - 2em);
		padding: 0 1em;
		background: var(--pagebg);
	}

	.contact-us .ContactForm .module-title {
		display: block;
	}
	

.ContactForm .wrapper .convertforms {
	padding: 1em 0 1.5em;
}

.convertforms {
	background-color: unset;
}

	.convertforms:after {
		content: '\00a0';
		display: block;
		font-size: 0;
		clear: both;
	}

p.address {
	position: relative;
}

	p.address:before {
		float: left;
		margin-right: .5em;
		padding-bottom: 2.6em; /* 2 lines */
		content: url('../../../images/map.png');
	}

	a.icon:before {
		display: inline-block;
		margin-right: .35em;
		vertical-align: middle;
	}

	a.landline:before {
		content: url('../../../images/phone.png');
	}

	a.mobile:before {
		content: url('../../../images/mobile.png');
	}

	a.email:before {
		content: url('../../../images/mail.png');
	}

	a.fb:before {
		content: url('../../../images/fb.png');
	}

	a.ig:before {
		content: url('../../../images/ig.png');
	}


#cf_1 {
	max-width: unset;
}

.convertforms .cf-fields {
	display: block;
}

	.module .convertforms iframe[style] {
		width: 100%;
		height: 300px;
	}

	.convertforms .cf-control-group {
		display: inline-block;
		width: calc(16.5% - 10px);
		flex-grow: unset;
		-webkit-box-flex: unset;
	}

	.convertforms .cf-control-group[data-name="details"],
	.convertforms .cf-control-group[data-type="recaptcha"] {
			width: calc(25% - 10px);
	}

	.convertforms .contactInfo {
		float: right;
		width: 50%;
	}

		.convertforms .contactTxt {
			float: left;
			width: 45%;
		}

			.contactTxt a {
				white-space: nowrap;
			}

		.convertforms .googleMap {
			float: right;
			width: 55%;
		}

	.convertforms .contactTxt h2 {
		margin: 0 0 1em;
		font-family: 'Times New Roman', Times, serif;
		font-size: 2em;
	}

	.convertforms input::placeholder,
	.convertforms textarea::placeholder {
		font-size: 0;
	}


.contact-us .convertforms .contactInfo,
.contact-us .ContactForm label {
	display: none;
}

	.contact-us #cf_1 {
		--input-size: var(--fsize);
	}

	.contact-us .cf-form-wrap {
		width: 90%;
		margin: 0 auto 2em;
		padding: 2em;
	}

	.contact-us .convertforms .cf-fields {
		font-size: 0;
	}

	.contact-us .convertforms .cf-control-group {
		width: 33.33%;
		font-size: var(--input-size);
	}

	.contact-us .convertforms button.cf-width-auto,
	.contact-us .convertforms .cf-control-group[data-name="details"] {
		width: 100%;
	}

		.contact-us .convertforms .cf-control-group[data-name="details"] textarea {
			min-height: 7em;
		}

	.contact-us .convertforms .cf-control-group[data-type="submit"] {
		float: right;
	}

	.contact-us .convertforms .cf-input {
		padding: .5em 1em;
		background: #f0f0f0;
		border: 0 none;
		border-bottom: 2px solid #77a79f;
	}

	.contact-us .convertforms .cf-input:focus {
		background: #eee;
		border: 0 none;
		border-bottom: 2px solid #12a554;
	}

	.contact-us .convertforms ::placeholder {
		font-size: var(--input-size);
	}


/* Pages */

	.blog > .category-desc {
		margin-bottom: 3em;
	}

	.category-desc > p:first-child {
		margin: .5em auto;
	}

	.com-content-category-blog > .category-desc > p:first-child {
		margin: 1em auto 2em;
	}

	.com_content_category #mainContent,
	.com_content_article #mainContent {
		font-family: 'Roboto', Arial, sans-serif;
		font-weight: 300;
		font-size: .95em;
	}

	.parallax .page-head {
		margin: 0;
		padding: 4em 0 3em;
		text-align: center;
	}
	
		.parallax .page-head .page-title {
			display: block;
			line-height: 1.3;
			color: var(--pagebg);
			background: var(--transbg);
		}
	
			.parallax .page-head h1.page-title {
				margin: 3em auto;
				padding: .35em 0;
				font-size: 1.65em;
				font-weight: 400;
			}

			.contact-us .parallax .page-head,
			.projects .parallax .page-head,
			.products .parallax .page-head {
				margin: 0;
				padding: 1.5em 0 .5em;
				text-align: center;
			}

			.products .parallax .page-head h1.page-title {
				margin: 3em auto 2em;
			}

		.parallax .page-title em {
			display: block;
			width: 40%;
			margin: 0 auto;
			font-size: .5em;
			font-weight: normal;
			font-style: normal;
		}
	
		.blog,
		.item-page {
			margin: 0 auto;
			width: calc(var(--wrap) - 6em);
			padding: 2em 3em;
			background-color: var(--pagebg);
		}

			.no-padding {
				margin: -2em -3em 0;
				padding: 2em 3em 1em;
			}

			.greybg {
				background-color: var(--greybg);
			}

		.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: 1em auto 1.5em;
		}

			.com-content-article__body h1.title {
				margin: 1em auto;
				position: relative;
			}

			.com_content_article .module-title:before,
			.com_content_article h1.title:before,
			.com_content_category h1.title:before {
				content: "\00a0";
				position: absolute;
				bottom: -.35em;
				left: 0;
				width: 4.85em;
				height: .15em;
				background: #b49133;
			}

		.com_content_article .bottom.module {
			padding: 0;
		}
		
			.com_content_article .module-title {
				position: relative;
				font-family: inherit;
				font-weight: normal;
				color: var(--default);
			}

		.com_content_article .module p.readmore > a {
			background: #454545;
		}


table.dataTable {
	color: var(--default);
	background: var(--pagebg);
	border-collapse: collapse;
	border: 0 none #ccc;
	border-spacing: 1px;
}

	.dataTable th {
		padding: .5em 1em;
		font-size: 1.15em;
		font-weight: 600;
		background-color: #dfdfdf;
	}

	.dataTable td {
		padding: .25em 1em;
		font-weight: 500;
		background-color: var(--pagebg);
	}

	table.dataTable td > img {
		margin-right: .5em;
		vertical-align: middle;
	}

#footer {
	padding: 2em 0 3em;
	color: #fff;
	font-size: var(--fsize);
	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: var(--fsize);;
			width: 2em;
			height: 2em;
			background: transparent url(../images/s.png) no-repeat center center;
		}

#footer {
	font-size: 0;
	text-align: left;
}

	#footer .no-card {
		display: inline-block;
		width: 20%;
		margin: 2em 0;
		text-align: left;
		font-size: var(--fsize);
		vertical-align: top;
	}

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

		#footer .no-card:nth-child(2) {
			width: 33%;
		}


	#footer h3 {
		font-weight: 800;
		font-size: .85em;
	}

	#footer p {
		font-size: .65em;
		font-weight: 400;
	}

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

		#footer a:hover {
			color: #5489a2;
		}

	#footer h3,
	#footer p {
		margin: .35em auto;
	}

	#footer .no-card.copyright {
		text-align: right;
	}

	.flooring h3 {
		color: #000;
	}

	.footer.Member img,
	.footer.Certified img {
		margin: 0 .25em;
	}

#footer .copyright {
	display: block;
	padding: 1em 0;
	clear: both;
	text-align: center;
	background-color: var(--copybg);
}

	.copyrightTxt {
		padding-left: 3.35em;
		font-size: .65em;
	}

	#footer a {
		color: #fff;
	}


video {
	width: 100%;
	height: auto;

}



/* DFLIP Button Override */

._df_thumb {
	width: 320px !important;
	height: 405px !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;
	}


/* Fancybox Gallery */



/* Tweaks */

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

.visually-hidden {
	display: none;
}

/* Landing Page */

section .newsflash {
	font-size: 0;
}

	section .newsflash .mod-articlesnews__item {
		display: inline-block;
		width: 30.33%;
		margin: 1em 1.5%;
		font-size: var(--fsize);;
		vertical-align: top;
		background: #e8e5e4;
	}

	section .newsflash .newsflash-image {
		position: relative;
		display: block;
		margin: 0;
		font-size: var(--fsize);;
		text-align: center;
	}

		section .newsflash .newsflash-image:before {
			min-height: 150px; /* set min-height for image block */
			font-size: 100%;
			content: '\00a0';
			width: 1px;
			margin-right: -1px;
			background: transparent;
		}

		section .newsflash .newsflash-image:before,
		section .newsflash .newsflash-image img {
			display: inline-block;
			vertical-align: middle;
		}

		section .newsflash .newsflash-image:after {
			display: block;
			position: absolute;
			left: 50%;
			bottom: 0;
			margin: -22px -20px;
			width: 40px;
			height: 40px;
			content: '\00a0';
			font-size: 0;
			background: #bea8a7;
		}

	section .newsflash .newsflash-content {
		padding: 1em 1.5em;
		font-size: 1.25em;
		background: #ccc;
		border-top: 5px solid #000;
	}


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

.contactMap iframe {
	width: 100%;
	min-height: 50vh;
}

.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-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%;
}

/* Products */

	.image-gallery {
		margin-top: 20px;
		font-size: 0;
	}

	.image-gallery .item {
		display: inline-block;
		font-size: var(--fsize);;
		margin: .5em 1%;
		width: 31.33%;
		vertical-align: top;
		background-color: var(--pagebg);
	}

		.image-gallery .item img {
			object-fit: contain;
		}

		.masonry-4 .image-gallery .item {
			margin: 1em 1%;
			width: 23%;
		}

	.squares .item img {
		object-fit: cover;
		aspect-ratio: 1 / 1;
	}


	.f-caption .desc,
	.image-gallery .desc {
		display: block;
		padding: 1em 1.5em;
		font-family: 'Roboto', Arial, sans-serif;
		font-size: .65em;
	}

		.f-caption .desc.th
		.image-gallery .desc.th {
			padding-right: 6.5em;
		}

		.f-caption .desc:first-line,
		.image-gallery .desc:first-line {
			font-weight: 700;
			font-size: 1.25em;
		}

		.f-caption .desc h3,
		.image-gallery .desc h3 {
			margin: 0 auto;
			font-size: 1em;
		}

		.f-caption .desc.th:before,
		.image-gallery .desc.th:before {
			display: block;
			float: right;
			width: 6em;
			min-height: 3em;
			margin-right: -1em;
			content: '\00a0';
			background-image: var(--bg-img);
			background-repeat: no-repeat;
			background-size: contain;
			background-position: right top;
		}

		.f-caption,
		.fancybox__slide .is-fullsize {
			min-width: var(--zoom-width);
			background: var(--pagebg);
		}

		.f-caption {
			padding: 0;
		} 

	figure.image {
		position: relative;
	}

		figure.prod.image figcaption {
			position: absolute;
			top: 60%;
			padding: .5em 1em .5em 1.5em;
			color: var(--pagebg);
			background: var(--transbg);
		}

	figure.doc.image {
		text-align: center;
	}

		figure.doc.image img {
			margin: 0 auto;
			width: 90%;
			height: auto;
		}

		figure.doc.image figcaption {
			width: calc(90% - 1em);
			margin: 1em auto 0;
			padding: .5em;
			font-size: .5em;
			background: #fff;
		}

		figure.doc.image:hover figcaption {
			background: #eee;
		}

	.categories-module figure.image,
	.cat-children figure.image {
		margin: .5em auto .75em;
	}

	.blog .blog-items.masonry {
		font-size: 0;
	}
	
		.blog .blog-items.masonry .blog-item {
			position: relative;
			font-size: var(--fsize);;
			margin: .65em;
		}
	
		.blog .blog-items.masonry .blog-item figure {
			position: relative;
			width: 100%;
			margin: 0;
			padding-bottom: 100%;
		}

			.blog .blog-items.masonry .blog-item figure > img {
				position: absolute;
				object-fit: cover;
				width: auto;
				top: 0;
				left: 0;
				aspect-ratio: 1 / 1;
			}

	.blog .blog-items.masonry .blog-item .item-content {
		position: absolute;
		top: 0;
		left: 0;
		height: calc(100% - 20px);
		width: calc(100% - 20px);
		border: 10px solid var(--pagebg);
	}

		.blog .blog-items.masonry .blog-item .item-content .page-header,
		.blog .blog-items.masonry .blog-item .item-content p.readmore,
		.blog .blog-items.masonry .blog-item .item-content p.readmore > a {
			position: absolute;
			margin: 0;
		}

		.blog .blog-items.masonry .blog-item .item-content .page-header {
			bottom: 0;
			right: 0;
		}

			.blog .blog-items.masonry .blog-item .item-content .page-header h2 {
				position: absolute;
				right: 0;
				bottom: .5em;
				padding: .5em .7em;
				font-size: .85em;
				text-align: right;
				background: var(--pagebg);
			}

			.blog .blog-item.active .item-content,
			.blog .blog-items.masonry .blog-item .item-content:hover {
				border-color: var(--btn);
			}

			.blog .blog-items.masonry .blog-item.active .item-content .page-header > h2,
			.blog .blog-items.masonry .blog-item .item-content:hover .page-header > h2 {
				color: var(--pagebg);
				background: var(--btn);
			}

		.blog .blog-items.masonry .blog-item .item-content p.readmore,
		.blog .blog-items.masonry .blog-item .item-content p.readmore > a {
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
		}

		.blog .blog-items.masonry .blog-item .item-content p.readmore > a {
			font-size: 0;
			z-index: 9;
			background: unset !important;
		}

	.sidebar-right {
		position: relative;
	}

		.sidebar-right .blog.burger {
			--currentColor: var(--btn2);
			margin: 1px auto 0;
			padding: 0 3em;
			background-color: var(--greybg);
		}

			.sidebar-right .blog.burger:hover {
				padding: 3px 3em;
			}

		.sidebar-right .mBurger {
			position: absolute;
			right: 1em;
			bottom: -2.1em;
			z-index: 1;
			background-color: var(--greybg);
		}

		.burger > input[type="checkbox"] {
			display: none;
		}

		.burger ul.mod-articles-items {
			margin: 0;
			padding: 0;
			overflow: hidden;
		}

		.burger input + label + ul.mod-articles-items {
			height: 0;
		}

		.burger input:checked + label + ul.mod-articles-items {
			height: var(--ht) !important;
			padding: 50px 0;
		}

.cols {
	font-size: 0;
}

	.cols-2 > * {
		display: inline-block;
		margin: 0;
		width: 49%;
		font-size: var(--fsize);
		vertical-align: top;
	}

	.cols-2 > :nth-child(1) {
		margin-right: 1%;
	}

	.cols-2 > :nth-child(2) {
		margin-left: 1%;
	}



/* 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%;
}

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

	.product img.logo {
		max-width: 50% !important;
		margin-top: 0;
	}

	aside.left, figure.left,
	aside.right, figure.image.right {
		max-width: 45%;
	}

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

	.mobile-only {
		display: var(--fsize) !important;
	}
}

@media only screen and (max-width: 1200px) {
	aside.left p {
		font-size: 2vw;
	}

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

	#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%;
	}

	#footer .no-card {
		display: block;
		width: auto !important;
		text-align: center !important;
	}
}


@media only screen and (max-width: 980px) {
	html,body {
		font-size: 4vw;
	}

	.customLogo {
		font-size: 26px;
	}

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

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

	#captionBanners {
		left: 5% !important;
		pointer-events: none;
	}

		#captionBanners h1 {
			font-size: 1.25em;
		}

		#captionBanners .desc p {
			font-size: .75em;
		}

		#captionBanners .btn {
			font-size: .65em;
			pointer-events: all;
		}

	.blog-featured figure.image.right {
		float: none;
		width: 60%;
	}

		.blog-featured .parallax:first-child h2,
		.blog-featured .parallax:first-child h1,
		.blog-featured .parallax:first-child p {
			margin: .25em auto .5em;
			text-align: center !important;
		}

	p.readmore > a {
		padding: .5em 2.5em;
		font-size: .85em;
	}

	.module-title {
		font-size: 1.5em;
	}

	.masonry-4 .item {
		width: calc(25% - .5em);
		margin: 0 .25em;
	}

	.convertforms .cf-fields {
		text-align: center;
	}

	.convertforms .cf-control-group {
		width: calc(50% - 10px);
		margin: 0 auto;
		text-align: left;
	}

	.convertforms .contactInfo {
		float: none;
		display: block;
		width: auto;
	}

	.convertforms .cf-text-left {
		text-align: center;
	}

	.blog-featured + .module {
		padding: 2em 0;
	}

	#footer .no-card {
		margin: 1em auto;
	}

	aside.left, figure.left,
	aside.right, figure.image.right {
		max-width: unset;
		float: unset;
		width: auto;
		margin: 0 auto 2em !important;
	}

		figure img {
			width: 100%;
		}

	.product img.logo {
		max-width: unset;
	}

	.product .videos.cols-3 td a,
	.product .videos td a,
	a[href^='https://www.youtube.com/watch'] {
		max-width: unset;
	}

	.com-content-article__body aside h2 {
		font-size: 4.5vw;
	}

	aside.right h2 {
		font-size: 4vw;
	}

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

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

	figure {
		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;
	}

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

	.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;
	}

	.catalogue td {
		text-align: center;
	}	
}

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

	h1 {
		font-size: 7vw;
	}

	h2 {
		font-size: 6.75vw;
	}

	h3 {
		font-size: 6.25vw;
	}

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

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

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

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

	.customLogo {
		font-size: 22px;
	}

	.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;
		overflow: hidden;
	}

	#captionBanners img {
		width: 50%;
	}

	.com-content-article__body aside h2 {
		font-size: 7vw;
	}

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

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

	aside.left,
	aside.right {
		display: block;
		float: none;
		width: auto;
		margin: 0 auto;
		padding: .25em;
		border: 0 none;
	}

		aside.left p {
			text-align: center;
		}

		aside.left br {
			display: inline-block;
			content: '\00a0';
			width: .25em;
			height: .25em
		}

	aside + div {
		margin: 0 auto;
	}

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

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

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

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

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

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

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

	#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;
	}
}