/*
============================================================================================================================
 Theme Name:	Optima Systems 2017
 Theme URI:		http://www.optimasystems.com
 Description:	New design and build for the 2017 refresh of the Optima Systems website, utilising WordPress Multisite.
 Author:		Rooster Marketing
 Author URI:	http://www.roostermarketing.com
 Version:		1.0
 Tags:			blue, white, grey, light, clean, responsive, responsive-layout, accessibility-ready
============================================================================================================================
*/

/*
============================================================================================================================
 Table of Contents
============================================================================================================================

 * Table of contents for easily navigating this stylesheet
*/

/*
 * 1. Colour palette
 * 2. Resets
 * 3. Global elements & classes
 	  * 3.1. HTML elements
 	  * 3.2. Classes/ID's
 * 4. Layout & structure
 	  * 4.1. Container(s)
 	  * 4.2. Header area
 	  * 4.3. Full-screen menu
 	  * 4.4. Banner area
 	  * 4.5. Sub-menu(s)
 	  * 4.6. Breadcrumb navigation
 	  * 4.7. Home page sections
 	  * 4.8. Link blocks
 	  * 4.9. Product blocks
 	  * 4.10. CTA banners
 	  * 4.11. Single Product page
 	  * 4.12. Projects page
 	  * 4.13. Single Project page
	  * 4.14. Single Sector page
	  * 4.15. Team profiles
	  * 4.16. Single team member profile
	  * 4.17. Blog page(s)
	  * 4.18. Job Vacancies page
	  * 4.19. Contact page
	  * 4.20. 3D Room Tour page
	  * 4.21. International site notice
 	  * 4.22. Footer area
 * 5. Legacy browser bar
*/

/*
============================================================================================================================
 1. Colour palette
============================================================================================================================

 * Define the HEX & RGB values of the primary colours of the website
 * NOTE: These colours are dynamically pulled from the CMS and loaded
 * into a dynamic stylesheet; this lets the client update the colours
 * throughout the site without needing to know the CSS language
*/

/*
 * Blue:       #0071b9 (0,113,185)
 * Dark Pink:  #e53c65 (229,60,101)
 * Purple:     #7b398b (123,57,139)
 * Light Pink: #cf4b94 (207,75,148)
 * Turquoise:  #0de6c2 (13,230,194)
 * Teal:       #36a9ac (54,169,172)
 * Orange:     #e88301 (232,131,1)
 * Dark Grey:  #495965 (73,89,101)
 * Light Grey: #e7e7e7 (231,231,231)
 * White:      #ffffff (255,255,255)
*/

/*
============================================================================================================================
 2. Resets
============================================================================================================================

 * Global CSS resets for most HTML elements
 * Removes all browser-specific styling
*/

/* Ensure all elements don't expand their specified width with padding, borders etc. */
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
		    box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 100px; 
} 

/* Remove browser-specific styling (margin, padding etc.) from most major HTML elements */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, input, textarea, select,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	border: 0;
}

ol, ul {
	list-style: none inside none;
}

input[type="button"],
input[type="submit"],
input[type="tel"],
input[type="email"],
input[type="text"],
input[type="file"],
textarea {
	-webkit-appearance: none;
	   -moz-appearance: none;
			appearance: none;
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
			border-radius: 0;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none; 
	margin: 0; 
}

select {
	-webkit-border-radius: 0;
	   -moz-border-radius: 0;
			border-radius: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Display settings for HTML5 elements for legacy browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

/* Change colour of placeholder text in input fields */
::-webkit-input-placeholder {
	color: #495965;
	opacity: 1;
}

:-moz-placeholder {
	color: #495965;
	opacity: 1;
}

::-moz-placeholder {
	color: #495965;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #495965;
	opacity: 1;
}

/* Change colour of text/background in highlighted text */
::-moz-selection {
    color: #fff;
    text-shadow: none;
    background-color: #495965;
}

::selection {
    color: #fff;
    text-shadow: none;
    background-color: #495965;
}

/*
============================================================================================================================
 3. Global elements & classes
============================================================================================================================

 * Styling for global HTML elements, and reusable classes and ID's
 * These will appear throughout various pages in the markup
*/

/*
====================
 3.1. HTML elements
====================
*/

/* Font declarations */
html {
	font: normal 300 1em/1 'Muli', Arial, 'Helvetica Neue', Helvetica, sans-serif;
}

/* Headings */
h1,
h2 {
	font-weight: 700;
	font-size: 2.25em;
	line-height: 1.277;
	color: #fff;
	margin-bottom: 10px;
}

.home-section h1,
.product-info h1,
.sector-info h1,
h2 {
	color: #495965;
}
.product-info h2 {
	font-size: 1.75em;
	line-height: 1.25;
}
h2.sector-name-heading {
	padding-top: 55px;
}

h3 {
	font-weight: 700;
	font-size: 1.75em;
	line-height: 1.25;
	color: #495965;
}
.single-post article h4,
.single-post article h5 {
	font-weight: 700;
	font-size: 1.4em;
	line-height: 1.4em;
	color: #495965;
}
.single-post article h5 {
	font-size: 1.25em;
}

h4 {
	font-weight: 700;
	font-size: 3.75em;
}

h5 {
	font-weight: 700;
	font-size: 1.125em;
	letter-spacing: 0.05em;
	color: #fff;
	margin-bottom: 8px;
}
.elementor .link-block .block-content h1,
.elementor .link-block .block-content h2,
.elementor .link-block .block-content h3,
.elementor .link-block .block-content h4,
.elementor .link-block .block-content h5,
.elementor .link-block .block-content .view-more span {
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}
.elementor .link-block .block-content .content-wrap p {
    font-size: 1.125em;
    line-height: 1.777;
    letter-spacing: 0.05em;
	font-weight: 300;
}
/* Links */
a {
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

a.read-more {
	position: relative;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-decoration: none;
	color: #495965;
	display: inline-block;
	margin-top: 2px;
	padding: 10px 35px;
	border: 1px solid #495965;
	-webkit-transform: skewX(-32deg);
	   -moz-transform: skewX(-32deg);
		 -o-transform: skewX(-32deg);
		-ms-transform: skewX(-32deg);
			transform: skewX(-32deg);
}

.banner-text a.read-more {
	color: #fff;
	margin-top: 15px;
	border-color: #fff;
}

a.read-more span {
	display: block;
	-webkit-transform: skewX(32deg);
	   -moz-transform: skewX(32deg);
		 -o-transform: skewX(32deg);
		-ms-transform: skewX(32deg);
			transform: skewX(32deg);
}

a.read-more:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background-color: #495965;
	-webkit-transition: width 0.4s ease-in-out;
	   -moz-transition: width 0.4s ease-in-out;
		 -o-transition: width 0.4s ease-in-out;
			transition: width 0.4s ease-in-out;
}

.banner-text a.read-more:before {
	background-color: #fff;
}

.no-touchevents a.read-more:hover {
	color: #fff;
}

.no-touchevents .banner-text a.read-more:hover {
	color: #495965;
}

.no-touchevents a.read-more:hover:before {
	width: 100%;
}

.no-touchevents .ie8 a.read-more:hover {
	color: #fff;
	background-color: #495965;
}

.no-touchevents .ie8 .banner-text a.read-more:hover {
	color: #495965;
	background-color: #fff;
}

/* Blockquote */
blockquote {
	width: 100%;
	font-size: 1.2em;
	font-style: italic;
	text-align: center;
	display: block;
	margin: 30px 0;
	padding: 0 60px;
}

blockquote p,
.main-content blockquote p {
	color: #495965;
}

blockquote p:last-of-type {
	font-style: normal;
	margin-bottom: 0;
}

/* Horizontal rule */
hr {
	max-width: 115px;
	height: 1px;
	margin: 27px auto 22px;
	border: 0;
}

.main-content .table-wrap {
	padding: 20px 0;	
}

.main-content table {
	width: 100%;
	border-collapse: collapse;
    border-spacing: 0;
	color: #495965;	
}

.main-content table tr {
	width: 100%;  	
}
 
.main-content table thead tr td {
	font-weight: bold;
	color: #ffffff;
	background-color: #0071b9;
	padding: 15px; 
}

.main-content table tr td {
	border: 1px solid #e7e7e7;
	padding: 15px; 		
}

.main-content table strong {
	color: #495965;	
}

.main-content table p {
	margin-bottom: 5px;	
}

/*
===================
 3.2. Classes/ID's
===================
*/

/* Main content styles */
.main-content h3 {
	margin-bottom: 15px;
}

.main-content p {
	font-size: 1.125em;
	line-height: 1.777;
	letter-spacing: 0.05em;
	color: #495965;
	margin-bottom: 20px;
}

.main-content p a,
.main-content ul li a {
	text-decoration: underline;
}

.no-touchevents .main-content p a:hover,
.no-touchevents .main-content ul li a:hover {
	color: #495965;
}

.main-content p strong {
	font-weight: 600;
}

.main-content a.read-more {
	display: table;
	margin: 22px auto 0;
}

.main-content a.read-more + h2,
.main-content a.read-more + h3,
.main-content a.read-more + p,
.main-content a.read-more + a,
.main-content a.read-more + img {
	margin-top: 20px;
}

.main-content ul {
	margin-bottom: 20px;
}

.main-content ul li {
	position: relative;
	font-size: 1.125em;
	line-height: 1.777;
	letter-spacing: 0.05em;
	color: #495965;
	padding-left: 20px;
}

.main-content ul li:before {
	content: "\2022";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1em;
	color: #495965;
}

.main-content ul.simple-sitemap-page li {
	font-size: 1rem;
}

.main-content img {
	margin: 10px 0 20px;
}

.main-content img.alignright {
	float: right;
	margin: 8px 0 10px 100px;
}

.main-content img.alignleft {
	float: left;
	margin: 8px 100px 0 0;
}

.flexible-main-content {
	padding: 30px 0 20px 60px;
}

.preloader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	z-index: 9998;
	background-color: #fff;
}

.ie8 .preloader {
	display: none;
}

.preloader img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 150px;
	height: 150px;
	display: block;
	margin: auto;
}

/* Hide desktop content (for mobile elements only) */
.desktop-hide {
	display: none;
}

.misc-page {
	padding-top: 50px;
}

/* Vertical centre */
.vertical-centre {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	text-align: center;
	margin: auto;
	-webkit-transform: translateY(-50%);
	   -moz-transform: translateY(-50%);
		 -o-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
			transform: translateY(-50%);
}
@media screen and (max-height: 575px) and (min-width: 1200px) {
	.banner.carousel .vertical-centre.main-content p {
		font-size: 0.9em;
	}
	.banner.carousel .vertical-centre p.banner-heading {
		font-size: 2.2em;
	}
	.play {
		display: block;
		width: 0;
		height: 0;
		border-top: 25px solid transparent!important;
		border-bottom: 25px solid transparent!important;
		border-left: 30px solid #fff!important;
		margin: 25px auto 25px auto!important;
		position: relative;
		z-index: 1;
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		left: 10px;
		color: transparent!important;
	}
	.play:before {
		content: '';
		position: absolute;
		top: -37px!important;
		left: -57.5px!important;
		bottom: -37px!important;
		right: -17px!important;
		border-radius: 50%;
		border: 5px solid #fff!important;
		z-index: 2;
		transition: all 0.3s;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
	}
	.play:after {
		content: '';
		opacity: 0;
		transition: opacity 0.6s;
		-webkit-transition: opacity 0.6s;
		-moz-transition: opacity 0.6s;
	}
}
.ie8 .vertical-centre {
	top: 35%;
}

/* Top offset */
.offset-top {
	position: relative;
	margin-top: -220px !important;
}

/* Remove padding */
.no-padding {
	padding-bottom: 0 !important;
}

/* Remove right-hand margin */
.last-in-row {
	margin-right: 0 !important;
}

/* Background colour(s) */
.white-bg {
	background-color: #fff;
}

.grey-bg {
	background-color: #e7e7e7;
}

/* Full-screen background image(s) */
.cover {
	background: none center no-repeat transparent;
	-webkit-background-size: cover;
	   -moz-background-size: cover;	
		 -o-background-size: cover;	
			background-size: cover;
	-ms-behavior: url(/backgroundsize.min.htc);
}

/* Force element to clear its floated children */
.clearfix:after {
	content: "";
	height: 0;
	display: block;
	visibility: hidden;
	clear: both;	
}

/*
============================================================================================================================
 4. Layout & structure
============================================================================================================================
 
 * Styling for the actual layout and structure of the site
 * Organised by section(s), templates and pages
*/

/*
===================
 4.1. Container(s)
===================
*/

.container {
	max-width: 1180px;
	margin: 0 auto;
}

.container.narrow {
	max-width: 1000px;
	padding: 0;
}

/* Grid columns */
.full {
	width: 100%;
	clear: both;
}

.half {
	width: 49%;
	float: left;
	margin-right: 2%;
}

.one-third {
	width: 32%;
	float: left;
	margin-right: 2%;
}

.two-thirds {
	width: 66%;
	float: left;
	margin-right: 2%;
}

.one-quarter {
	width: 23.5%;
	float: left;
	margin-right: 2%;
}

.one-fifth {
	width: 20%;
	float: left;
}

.one-sixth {
	width: 16.666%;
	float: left;
}

/*
==================
 4.2. Header area
==================
*/

header {
	position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	min-height: 70px;
	z-index: 5;
}
.admin-bar header {
	top: 54px;
}

header.clone {
	position: fixed;
	z-index: 9999;
	background-color: #fff;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
	-webkit-transform: translateY(-100%);
	   -moz-transform: translateY(-100%);
	     -o-transform: translateY(-100%);
		-ms-transform: translateY(-100%);
			transform: translateY(-100%);
	top: 0;
}

.ie8 header.clone {
	top: -100%;
}

header.clone.fixed {
	-webkit-transform: translateY(0%);
	   -moz-transform: translateY(0%);
	     -o-transform: translateY(0%);
		-ms-transform: translateY(0%);
			transform: translateY(0%);
}

.ie8 header.clone.fixed {
	top: 0;
}

/* Logo */
.logo {
	/* float: left; REMOVED TO STOP THE MEGAMENU FROM STOPPING THE LINK FROM WORKING */
	margin: 28px 0 0 40px;
	/* ADDED TO STOP THE MEGAMENU FROM STOPPING THE LINK FROM WORKING */
	position: absolute;
    z-index: 9999999;
}

header.clone .logo,
.logo.hidenav {
	margin-top: 12px;
}

/* Topbar icon nav */
.icon-wrap {
	float: right;
}

nav.topbar {
	float: left;
}

nav.topbar ul li {
	float: left;
}

nav.topbar ul li a {
	position: relative;
	display: block;
	padding: 38px 38px 30px;
	background-color: transparent;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

header.clone nav.topbar ul li a {
	padding: 22px 38px;
}

.no-touchevents nav.topbar ul li a:hover {
	background-color: rgba(255,255,255, 0.15);
}

nav.topbar ul li a img.icon {
	position: relative;
	z-index: 2;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

nav.topbar ul li a img.icon.hover {
	position: absolute;
	top: 38px;
	right: 0;
	left: 0;
	z-index: 1;
	opacity: 0;
	margin: auto;
}

header.clone nav.topbar ul li a img.icon.hover {
	top: 22px;
}

nav.topbar ul li.search-link.open a {
	background-color: rgba(255,255,255, 1);
}

.ie8 nav.topbar ul li.search-link.open a {
	background-color: #fff;
}

nav.topbar ul li.search-link.open a img.icon.regular,
header.clone nav.topbar ul li a img.icon {
	opacity: 0;
}

nav.topbar ul li.search-link.open a img.icon.hover,
header.clone nav.topbar ul li a img.icon.hover {
	opacity: 1;
}

nav ul li.members-btn,
.logged-in nav ul li.login-btn,
.wpmm-mobile-menu ul li.members-btn,
.logged-in .wpmm-mobile-menu ul li.login-btn,
.logged-in ul li.members-btn.hide-desktop {
	display: none!important;
}

.logged-in nav ul#menu-top-bar li.members-btn {
	display: block!important;
}
.logged-in nav ul li.members-btn,
.logged-in .wpmm-mobile-menu  ul li.members-btn.hide-desktop {
	display: inline-block!important;
}

.ie8 header.clone nav.topbar ul li a img.icon.regular {
	display: none;
}

/* Hamburger */
.hamburger {
	cursor: pointer;
	float: right;
	padding: 41px 38px 30px;
	background-color: transparent;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

header.clone .hamburger {
	padding: 25px 38px 22px;
}

.no-touchevents .hamburger:hover {
	background-color: rgba(255,255,255, 0.15);
}

.hamburger .line {
	position: relative;
	top: 0;
	width: 29px;
	height: 1px;
	display: block;
	margin-bottom: 10px;
	background-color: #fff;
	-webkit-transition: -webkit-transform 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, top 0.4s ease-in-out 0.45s;
	   -moz-transition:    -moz-transform 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, top 0.4s ease-in-out 0.45s;
	     -o-transition: 	 -o-transform 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, top 0.4s ease-in-out 0.45s;
		-ms-transition: 	-ms-transform 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, top 0.4s ease-in-out 0.45s;
			transition: 		transform 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, top 0.4s ease-in-out 0.45s;
}

header.clone .hamburger .line {
	background-color: #495965;
}

.hamburger .line.mid {
	height: 1px;
}

.hamburger .line.bottom {
	margin-bottom: 0;
}

.hamburger.open .line {
	-webkit-transition: top 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, -webkit-transform 0.4s ease-in-out 0.45s, background-color 0.4s ease-in-out 0.55s;
	   -moz-transition: top 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s,    -moz-transform 0.4s ease-in-out 0.45s, background-color 0.4s ease-in-out 0.55s;
	     -o-transition: top 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, 	  -o-transform 0.4s ease-in-out 0.45s, background-color 0.4s ease-in-out 0.55s;
		-ms-transition: top 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, 	 -ms-transform 0.4s ease-in-out 0.45s, background-color 0.4s ease-in-out 0.55s;
			transition: top 0.4s ease-in-out, opacity 0.3s ease-in-out 0.4s, 		 transform 0.4s ease-in-out 0.45s, background-color 0.4s ease-in-out 0.55s;
}

.hamburger.open .line.top {
	top: 12px;
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	     -o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
			transform: rotate(45deg);
}

.hamburger.open .line.mid {
	opacity: 0;
}

.hamburger.open .line.bottom {
	top: -11px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
}

/* Search area */
.search-area {
	width: 100%;
	display: none;
	padding: 60px 0 40px;
	background-color: #fff;
}

.search-area input {
	width: 93.5%;
	min-height: 75px;
	font: 700 3em "Muli";
	letter-spacing: 0.005em;
	color: #495965;
	float: left;
	padding-bottom: 14px;
	border-bottom: 1px solid #495965;
}

.search-area .search-status {
	width: 6%;
	height: 75px;
	float: left;
	border-bottom: 1px solid #495965;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

.search-area .search-status span {
	width: 100%;
	height: 100%;
	display: block;
	opacity: 0;
	background: url(../img/search-loading.svg) no-repeat center top;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

.no-svg .search-area .search-status span,
.ie .search-area .search-status span {
	background-image: url(../img/search-loading.gif);
}

.ie8 .search-area .search-status span {
	display: none;
}

.search-area .search-status.open span {
	opacity: 1;
}

.ie8 .search-area .search-status.open span {
	display: block;
}

.search-area p.search-text {
	font-weight: 300;
	line-height: 1.5;
	margin: 20px 0 0;
}

.search-results-list,
.search-results-list .results {
	display: none;
}

header.clone .search-results-list {
	max-height: 600px;
	overflow: auto;
}

.search-results-list .results {
	margin-top: 20px;
}

.search-results-list .result {
	width: 100%;
	padding: 20px 0;
	border-top: 1px solid #eee;
}

.search-results-list .result a {
	text-decoration: none;
}

.search-results-list .result p {
	margin-bottom: 0;
}

.search-results-list .result .highlight {
	font-weight: 700;
}

/* Search results page */
.search-results-list.search-page,
.search-results-list.search-page .results {
	display: block;
}

.search-results-list.search-page {
	margin-top: 20px;
	padding-top: 30px;
}

/*
=======================
 4.3. Full-screen menu
=======================
*/

.menu-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 15;
	background-color: #fff;
	-webkit-transform: translateX(100%) translateY(-100%);
	   -moz-transform: translateX(100%) translateY(-100%);
	     -o-transform: translateX(100%) translateY(-100%);
		-ms-transform: translateX(100%) translateY(-100%);
			transform: translateX(100%) translateY(-100%);
	-webkit-transition: all 0.75s ease-in-out;
	   -moz-transition: all 0.75s ease-in-out;
		 -o-transition: all 0.75s ease-in-out;
			transition: all 0.75s ease-in-out;
}

.ie8 .menu-overlay {
	display: none;
	height: 1000px;
}

.menu-overlay.open {
	-webkit-transform: translateX(0%) translateY(0%);
	   -moz-transform: translateX(0%) translateY(0%);
	     -o-transform: translateX(0%) translateY(0%);
		-ms-transform: translateX(0%) translateY(0%);
			transform: translateX(0%) translateY(0%);
}

.ie8 .menu-overlay.open {
	display: block;
}

.menu-overlay .hamburger .line {
	background-color: #495965;
}

.ie8 .menu-overlay .hamburger {
	background: url(../members-area/img/cross-blue.png) no-repeat center;
}
.ie8 .menu-overlay .hamburger .line,
.ie8 .menu-overlay .hamburger.open .line {
	display: none;
}

/* Main menu */
.main-menu-wrap {
	text-align: left;
}

.ie8 .main-menu-wrap {
	top: 20%;
}

nav.main ul li {
	position: relative;
	max-width: 50%;
	font-weight: 700;
	font-size: 2.25rem;
	text-align: right;
	color: #495965;
	padding: 0 120px 24px 0;
}

.ie8 nav.main ul li {
	font-size: 2em;
}

nav.main ul li.menu-item-has-children .arrow {
	position: absolute;
	top: 5px;
	right: 52px;
	width: 46px;
	height: 12px;
	display: block;
	z-index: 1;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 nav.main ul li.menu-item-has-children .arrow {
	display: none;
}

.no-touchevents nav.main ul li.menu-item-has-children:hover .arrow,
.no-touchevents nav.main ul li.menu-item-has-children:hover .arrow {
	right: 42px;
	opacity: 1;
}

.no-touchevents .ie8 nav.main ul li.menu-item-has-children:hover .arrow {
	display: block;
}

nav.main ul li .mobile-expand {
	cursor: pointer;
	display: none;
	float: right;
	margin-right: 1px;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

nav.main ul li .mobile-expand.open {
	-webkit-transform: rotate(180deg);
	   -moz-transform: rotate(180deg);
	     -o-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
			transform: rotate(180deg);
}

nav.main ul li .mobile-expand img {
	padding: 28px 20px 26px;
}

nav.main ul li a {
	text-decoration: none;
	color: #495965;
}

nav.main ul li ul {
	position: absolute;
	top: 14px;
	left: 100%;
	width: 100%;
	z-index: -1;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 nav.main ul li ul {
	top: 11px;
	display: none;
}

nav.main ul li:hover > ul {
	z-index: 1;
	opacity: 1;
}

.ie8 nav.main ul li:hover > ul {
	display: block;
}

nav.main ul li ul li {
	max-width: 100%;
	font-weight: 300;
	font-size: 1.125rem;
	text-align: left;
	color: #495965;
	padding-bottom: 18px;
}

.ie8 nav.main ul li ul li {
	font-size: 0.5em;
}

nav.main ul li ul li a {
	color: #495965;
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}

.ie10 nav.main ul li ul li a,
.ie9 nav.main ul li ul li a,
.ie8 nav.main ul li ul li a {
	padding-bottom: 18px;
}

/* social icons */
.social-wrap {
	max-width: 50%;
	margin-top: 70px;
	padding-right: 120px;
}

nav.social {
	float: right;
}

nav.social ul li {
	font-size: 2em;
	display: inline-block;
	margin-left: 20px;
}

nav.social ul li a {
	color: #495965;
}

/*
==================
 4.4. Banner area
==================
*/

.banner {
	position: relative;
	width: 100%;
	min-height: 320px;
}

/* Static banner */
.banner.static.image,
.single-project .banner {
	height: 550px;
}

.search-results .banner.static.image,
.search-no-results .banner.static.image {
	min-height: 0;
	height: 270px;
}

.banner.static.image .colour-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0.75;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
}

/* Carousel banner */
.banner.carousel {
	height: 550px;
}

.banner.carousel.full-screen {
	height: -webkit-calc(100vh - 40px);
	height: -moz-calc(100vh - 40px);
	height: calc(100vh - 40px);
}
@media (max-width: 1200px) {
		.banner.carousel.full-screen {
		height: -webkit-calc(100vh - 10px);
		height: -moz-calc(100vh - 10px);
		height: calc(100vh - 10px);
	}
}

.ie8 .banner.carousel.full-screen {
	height: 1000px;
}

.carousel-slide {
	width: 100%;
	height: 550px;
}

.ie8 .carousel-slide {
	-ms-behavior: url(none);
}

.banner.carousel.full-screen .carousel-slide {
	height: -webkit-calc(100vh - 40px);
	height: -moz-calc(100vh - 40px);
	height: calc(100vh - 40px);
}
@media (max-width: 1200px) {
		.banner.carousel.full-screen .carousel-slide {
		height: -webkit-calc(100vh - 10px);
		height: -moz-calc(100vh - 10px);
		height: calc(100vh - 10px);
	}
}

.ie8 .banner.carousel.full-screen .carousel-slide {
	height: 1000px;
}

/* Banner text */
.banner-text {
	max-width: 780px;
	text-align: center;
	color: #fff;
	margin: 0 auto;
	padding: 140px 0 50px;
	width: 100%;
}

.banner.static.image .banner-text {
	position: relative;
	z-index: 2;
}

.banner.carousel .banner-text {
	max-width: 620px;
	/*padding: 130px 0 0 0;*/
	padding: 0;
}

.ie .banner.carousel .banner-text {
	max-width: none;
	width: 620px;
}

.banner-text p {
	color: #fff;
	margin-bottom: 0;
}

.banner.carousel .banner-text p {
	max-width: 490px;
	line-height: 1.444;
	margin: 0 auto 26px;
}

.banner-text .post-cat {
	font-size: 0.75em;
	margin-top: 20px;
}

p.banner-heading,
.banner.carousel p.banner-heading {
	max-width: 100%;
	font-weight: 700;
	font-size: 3.75em;
	line-height: 1.166;
	letter-spacing: 0;
}

.banner-text a,
.banner-text p a {
	color: #fff;
}

/* Progress bar */
.progress-bar {
	width: 100%;
	height: 10px;
	background-color: #e7e7e7;
}

.progress-bar span {
	width: 0%;
	max-width: 100%;
	display: block;
	border-top: 10px solid #495965;
	border-right: 8px solid transparent;
}

/* Down arrow */
.banner.carousel .down-arrow {
	position: absolute;
	bottom: 30px;
	right: 0;
	left: 0;
	width: 20px;
	height: 44px;
	display: block;
	z-index: 5;
	margin: auto;
	background: url(../img/down-arrow.svg) no-repeat center;
}

.no-svg .banner.carousel .down-arrow {
	background-image: url(../img/down-arrow.png);
}

/*
==================
 4.5. Sub-menu(s)
==================
*/

nav.sub-menu {
	width: 100%;
	min-height: 50px;
	overflow: hidden;
	padding: 0 15px;
	background-color: #fff;
}

nav.sub-menu.fixed {
	position: fixed;
	top: 70px;
	z-index: 10;
	border-top: 1px solid #f9f9f9;
}

nav.sub-menu ul li {
	display: inline;
	margin-right: 0;
}
nav.sub-menu ul li.one-half { width: 50%; }
nav.sub-menu ul li.one-third { width: 33.333%; }
nav.sub-menu ul li.one-quarter { width: 25%; }

nav.sub-menu ul li a,
nav.sub-menu ul li a.read-more {
	width: 100%;
	height: 100%;
	font-weight: 400;
	font-size: 1.125em;
	text-align: center;
	text-transform: none;
	display: block;
	margin: 0;
	padding: 16px 0;
	border: none;
}

nav.sub-menu ul li a.active {
	color: #fff;
}

/*
===========================
4.6. Breadcrumb navigation
===========================
*/

.breadcrumb {
	font-weight: 700;
	font-size: 1em;
	letter-spacing: 0.05em;
	color: #495965;
	margin: 30px auto;
}

.product-info .breadcrumb,
.sector-info .breadcrumb {
	margin: 0 auto 35px;
}

.breadcrumb a {
	text-decoration: none;
	color: #495965;
	padding-bottom: 1px;
	border-bottom: 1px solid transparent;
}

.no-touchevents .breadcrumb a:hover {
	border-color: #495965;
}

.breadcrumb .separator {
	font-weight: 300;
	margin: 0 2px;
}

/*
=========================
 4.7. Home page sections
=========================
*/

.home-section {
	padding: 100px 0;
}

.home-section .intro-text-wrap {
	max-width: 840px;
	text-align: center;
	margin: 0 auto 75px;
}

.home-section .intro-text-wrap h1 {
	max-width: 600px;
	margin: 0 auto;
}

/* Intro section */
.intro-section .intro-text-wrap {
	max-width: 720px;
	margin-bottom: 0;
}

/* Blog posts */
.home-section .link-block.blog-post {
	background-color: #fff;
}

.home-section .link-block.blog-post .post-image {
	min-height: 300px;
}

.home-section .link-block.blog-post.latest .post-image {
	min-height: 400px;
}

.home-section .link-block.blog-post.latest .post-image .image {
	background-position: 55% center;
}

.home-section .link-block.blog-post.latest .half {
	width: 50%;
	margin-right: 0;
}

.home-section .link-block.blog-post .colour-overlay {
	-webkit-transition: all 0.4s ease-in-out 0.4s;
	   -moz-transition: all 0.4s ease-in-out 0.4s;
		 -o-transition: all 0.4s ease-in-out 0.4s;
			transition: all 0.4s ease-in-out 0.4s;
}


.home-section .link-block.blog-post h3 {
	font-size: 1.75em;
	color: #495965;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.home-section .link-block.blog-post.latest h3 {
	font-size: 2em;
}

.home-section .link-block.blog-post.latest p {
	font-size: 1.4em;
	line-height: 1.5;
}

.home-section .link-block.blog-post .view-more {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	max-height: 50px;
	text-align: center;
	color: #fff;
	margin: auto;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .home-section .link-block.blog-post .view-more {
	display: none;
}

.home-section .link-block.blog-post .view-more span {
	color: #fff;
}

.no-touchevents .home-section .link-block.blog-post:hover .view-more {
	opacity: 1;
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.no-touchevents .ie8 .home-section .link-block.blog-post:hover .view-more {
	display: block;
}

/*
==================
 4.8. Link blocks
==================
*/

.regular-blocks {
	/*display: inline-block; /* avoids collapsing margins */
	margin: 75px 0 0;
}

.ie8 .regular-blocks {
	display: block;
}

.flexible-main-content + .main-content .regular-blocks {
	margin-top: 0;
}

.link-block {
	position: relative;
	min-height: 400px;
	margin-bottom: 20px;
	overflow: hidden;
	padding: 53px 60px 0;
}
.elementor .link-block {
	margin-bottom: 0;
	min-height: initial;
}

.link-block.deeper {
	min-height: 500px;
}

.link-blocks.smaller .link-block {
	min-height: 250px;
	padding: 40px 40px 0;
}

.project-blocks.link-blocks.smaller .link-block {
	min-height: 350px;
}

.link-block.no-image {
	background-color: #fff;
}

.link-block.no-link
 {
	/* min-height: 320px; */
	padding: 40px 40px 20px;
}

.link-block.no-link.last-in-row:first-child {
	min-height: auto;
}
@media screen and (min-width: 601px) {
	.link-block.full.no-link.last-in-row:first-child {
		/* min-height: 400px; */
	}
}
@media screen and (max-width: 600px) {
	.link-block.full.no-link.last-in-row:first-child {
		/* min-height: 250px; */
	}
	.regular-blocks {
		margin-top: 20px;
	}
}
.link-block.no-link.two-thirds.last-in-row {
	min-height: 400px; 
}
.link-block a {
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: #fff;
	display: block;
}

.link-block.no-link a {
	display: inline;
}

.link-block .image {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.link-block .dark-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	background-color: rgba(0,0,0, 0.2);
}

.ie8 .link-block .dark-overlay {
	background: url(../img/dark-overlay-fallback.png) repeat;
}

.link-block .colour-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3;
	-webkit-transform: translateX(-100%) translateY(-100%);
	   -moz-transform: translateX(-100%) translateY(-100%);
	     -o-transform: translateX(-100%) translateY(-100%);
		-ms-transform: translateX(-100%) translateY(-100%);
			transform: translateX(-100%) translateY(-100%);
	-webkit-transition: all 0.4s ease-in-out 0.4s;
	   -moz-transition: all 0.4s ease-in-out 0.4s;
		 -o-transition: all 0.4s ease-in-out 0.4s;
			transition: all 0.4s ease-in-out 0.4s;
}

.ie8 .link-block .colour-overlay {
	display: none;
}

.link-blocks.smaller .link-block .colour-overlay {
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.link-block h3 {
	font-size: 2.25em;
	color: #fff;
	margin-bottom: 10px;
}

.link-blocks.smaller .link-block h3 {
	font-size: 1.75em;
}

.link-block.no-image h3 {
	color: #495965;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.link-block .block-content {
	position: relative;
	z-index: 4;
}

.link-block .block-content .content-wrap {
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .link-block .block-content .content-wrap {
	display: none;
}

.link-block.no-image .block-content .content-wrap {
	opacity: 1;
}

.ie8 .link-block.no-image .block-content .content-wrap {
	display: block;
}

.link-block .block-content .content-wrap p {
	color: #fff;
}

.link-block.no-image .block-content .content-wrap p {
	color: #495965;
}
.elementor .block-content .content-wrap p {
	margin-bottom: 1em;
}
.elementor .block-content .content-wrap p:last-child {
	margin-bottom: 0;
}

.link-block .view-more {
	position: absolute;
	bottom: 17px;
	left: 60px;
	z-index: 4;
}

.ie8 .link-block .view-more {
	bottom: 22px;
}

.link-blocks.smaller .link-block .view-more {
	bottom: 3px;
	left: 40px;
}

.ie8 .link-blocks.smaller .link-block .view-more {
	bottom: 10px;
}

.link-block .view-more span {
	font-weight: 700;
	font-size: 1.125em;
	letter-spacing: 0.05em;
}

.link-block .view-more span.arrow {
	position: relative;
	left: -10px;
	font-weight: 300;
	font-size: 2em;
	letter-spacing: 0;
	color: #fff;
	display: block;
	z-index: 1;
	margin-top: 5px;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.link-blocks.smaller .link-block .view-more span.arrow {
	margin-top: 1px;
}

.ie8 .link-block .view-more span.arrow {
	display: none;
}

.link-block.no-image .view-more span {
	color: #495965;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

/* Hover state's */
.no-touchevents .link-block:hover .colour-overlay {
	-webkit-transform: translateX(0%) translateY(0%);
	   -moz-transform: translateX(0%) translateY(0%);
	     -o-transform: translateX(0%) translateY(0%);
		-ms-transform: translateX(0%) translateY(0%);
			transform: translateX(0%) translateY(0%);
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

.no-touchevents .link-block:hover .block-content .content-wrap {
	opacity: 1;
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.no-touchevents .link-block:hover .view-more span.arrow {
	left: 0;
	opacity: 1;
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.no-touchevents .ie8 .link-block:hover .colour-overlay,
.no-touchevents .ie8 .link-block:hover .block-content .content-wrap,
.no-touchevents .ie8 .link-block:hover .view-more span.arrow {
	display: block;
}

/*
=====================
 4.9. Product blocks
=====================
*/

.product-cats {
	padding-top: 55px;
}

.product-cats h2 {
	margin: 0 0 32px 60px;
}

.product-block {
	position: static;
	min-height: 300px;
	padding: 0;
}

.product-block .product-image {
	position: relative;
	min-height: 300px;
}

.product-block .view-more {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	max-height: 50px;
	text-align: center;
	margin: auto;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .product-block .view-more {
	display: none;
}

.product-block .view-more span.arrow {
	left: -16px;
	margin-top: 6px;
	opacity: 1;
}

.product-block .product-desc {
	padding: 34px 60px;
	background-color: #fff;
}

.product-block h3 {
	font-size: 1.5em;
	color: #495965;
	margin-bottom: 2px;
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

.product-block .product-desc p {
	margin-bottom: 0;
}

/* Hover state's */
.no-touchevents .product-block:hover .view-more {
	opacity: 1;
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.no-touchevents .ie8 .product-block:hover .view-more {
	display: block;
}

.no-touchevents .product-block:hover .view-more span.arrow {
	left: -6px;
}

.tax-product_category .product-feature {
	margin-top: 60px;
}

/*
===================
 4.10. CTA banners
===================
*/

/* Free Product download */
.cta-banner {
	position: relative;
	width: 100%;
	min-height: 450px;
	text-align: center;
	margin: 55px 0 0;
	padding-top: 80px;
}

.cta-banner.project-testimonial {
	min-height: 300px;
	margin-top: 0;
	padding-top: 0;
}

.cta-banner.project-testimonial.has-image {
	min-height: 450px;
	margin-top: 55px;
	padding-top: 80px;
}

.cta-banner.product-summary-banner {
	margin-bottom: 20px;
}

.cta-banner .cta-banner-text {
	max-width: 620px;
	min-height: 150px;
	margin: 0 auto;
}

.cta-banner.project-testimonial .cta-banner-text {
	max-width: 900px;
}

.ie .cta-banner .cta-banner-text {
	width: 620px;
}

.ie8 .cta-banner .cta-banner-text {
	top: 30%;
}

.cta-banner.has-image h2,
.cta-banner.has-image p,
.cta-banner.has-image p a,
.cta-banner.has-image a.read-more,
.cta-banner.has-image blockquote p {
	color: #fff;
}

.cta-banner.has-image a.read-more {
	border-color: #fff;
}

.cta-banner.has-image a.read-more:before {
	background-color: #fff;
}

.no-touchevents .cta-banner.has-image a.read-more:hover {
	color: #495965;
}

.no-touchevents .ie8 .cta-banner.has-image a.read-more:hover {
	color: #495965;
	background-color: #fff;
}

.cta-banner .wpcf7 form {
	max-width: 100%;
}

.cta-banner .wpcf7 form input {
	max-width: 33.333%;
	color: #fff;
	display: inline;
	margin: 0 20px 0 0;
	border: 1px solid #fff;
	background-color: transparent;
}

.cta-banner .wpcf7 form input[type="submit"] {
	max-width: 28%;
	text-transform: none;
	color: #495965;
	margin: 0;
	border: 0;
	background-color: #fff;
}

.no-touchevents .cta-banner .wpcf7 form input[type="submit"]:hover {
	color: #fff;
}

.cta-banner .wpcf7 form.sent input[type="submit"] {
	opacity: 0.5;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
	cursor: default;
}

.no-touchevents .cta-banner .wpcf7 form.sent input[type="submit"]:hover {
	color: #495965;
	background-color: #fff;
}

.cta-banner .wpcf7 form input::-webkit-input-placeholder {
	color: #fff;
}

.cta-banner .wpcf7 form input:-moz-placeholder {
	color: #fff;
}

.cta-banner .wpcf7 form input::-moz-placeholder {
	color: #fff;
}

.cta-banner .wpcf7 form input:-ms-input-placeholder {
	color: #fff;
}

.cta-banner .wpcf7 form input.wpcf7-not-valid::-webkit-input-placeholder {
	color: #d8000c;
}

.cta-banner .wpcf7 form input.wpcf7-not-valid:-moz-placeholder {
	color: #d8000c;
}

.cta-banner .wpcf7 form input.wpcf7-not-valid::-moz-placeholder {
	color: #d8000c;
}

.cta-banner .wpcf7 form input.wpcf7-not-valid:-ms-input-placeholder {
	color: #d8000c;
}

.cta-banner div.wpcf7 .wpcf7-response-output {
	display: none !important;
}

.cta-banner div.wpcf7 .ajax-loader {
	right: 0;
	bottom: -64px;
	left: 0;
	display: block;
	clear: both;
	margin: 0 auto;
}

/*
==========================
4.10.1. Download Form
==========================
*/
.download-form #free-download {
	background-color: #fff;
	position: relative;
	width: 100%;
	min-height: 450px;
	margin: 55px 0 0;
	padding: 40px 40px 20px;
}
/*
==========================
4.11. Single Product page
==========================
*/

.product-intro-box {
	position: relative;
	z-index: 2;
}

.product-feature {
	margin-bottom: 20px;
	padding: 60px;
}

/* Product intro */
.product-intro h1,
.product-stats h2 {
	line-height: 1;
}

.product-intro p:last-of-type,
.product-main p:last-of-type {
	margin-bottom: 0;
}
.product-stats .awards ul {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  margin-bottom: 0;
}
.product-stats .awards li {
	list-style: none;
	padding-left: 0;
}
.product-stats .awards li img {
	width: 100%;
	margin: 0 0 20px 0;
}
.product-stats .awards li:before {
	content: '';
}
/* Product downloads */
.product-download {
	text-align: center;
	color: #fff;
	margin-bottom: 20px;
}

.product-download .icon {
	position: relative;
	top: 0;
	font-size: 3.5em;
	display: block;
	margin-bottom: 10px;
	-webkit-transition: all 0.25s ease-in-out;
	   -moz-transition: all 0.25s ease-in-out;
		 -o-transition: all 0.25s ease-in-out;
			transition: all 0.25s ease-in-out;
}

.no-touchevents .product-download:hover .icon {
	top: 6px;
}

.product-download a {
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: #fff;
	display: block;
}

.product-download .download-wrap {
	margin-bottom: 0;
	padding: 40px;
}

.product-download .download-wrap img {
	margin: 20px 0 2px;
}

.product-download h2 {
	line-height: 1;
	color: #fff;
}

/* Product feature blocks */
.product-features .product-feature p:last-of-type {
	margin-bottom: 0;
}

.product-feature-image {
	float: left;
	margin: 0 50px 10px 0;
}

/* Related Products */
.related-products-text {
	max-width: 70%;
	margin-top: 10px;
	padding-bottom: 0;
}

.post-type-archive-product .product-block .colour-overlay,
.tax-product_category .product-block .colour-overlay,
.single-product .product-block .colour-overlay {
	opacity: 0.75;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
}

/* Product summary download */
.cta-banner.product-summary-banner.has-image a.read-more {
	color: #495965;
	padding: 16px 70px;
	border: 0;
	background-color: #fff;
}

.cta-banner.product-summary-banner.has-image a.read-more:before {
	z-index: 0;
}

.cta-banner.product-summary-banner.has-image .download-form {
	text-align: left;
}

.cta-banner.product-summary-banner.has-image .download-file {
	min-height: 50px;
	margin-top: 26px;
}

/*
===========================
 4.12. Projects page
===========================
*/

.international-projects {
	margin-top: 75px;
}

/* Search filters */
.search-filters {
	margin-bottom: 40px;
	padding: 35px 0 5px;
}

.search-filters label {
	font-size: 1.313em;
	letter-spacing: 0.05em;
	text-align: right;
	color: #495965;
	display: block;
	margin-top: 14px;
}

.search-filters label.gallery-filters-label {
	text-align: left;
	margin-top: 0;
	margin-bottom: 15px;
}

.select-wrap {
	margin-bottom: 30px;
	border: 1px solid #495965;
}

.select-wrap select {
	width: 100%;
	font-weight: 300;
	font-size: 1.125em;
	font-family: "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif;
	letter-spacing: 0.05em;
	color: #495965;
	padding: 12px;
	background: url(../members-area/img/dropdown-arrow.svg) no-repeat 95% center transparent;
	-webkit-appearance: none;
	   -moz-appearance: none;
			appearance: none;
}

.no-svg .select-wrap select {
	background-image: url(../members-area/img/dropdown-arrow.png);
}

.select-wrap select::-ms-expand {
	display: none;
}

.select-wrap select option {
	font-family: "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif;
}

/* Project blocks */
.project-blocks {
	min-height: 100px;
}

img.projects-loading {
	max-width: 60px;
	display: block;
	margin: 0 auto 40px;
}

.link-blocks.smaller .link-block {
	padding: 30px 40px;
}

.project-blocks.link-blocks.smaller .link-block h3 {
	font-size: 2.25em;
}

/* Load more */
.load-more.more-projects {
	min-height: 60px;
	text-align: center;
	margin-top: 42px;
}

/*
===========================
 4.13. Single Project page
===========================
*/

/* Intro text */
.product-intro {
	width: 65%;
	float: left;
}

/* Project stats */
.product-stats {
	width: 25%;
	float: left;
	margin-left: 10%;
}

.product-stats .stat {
	width: 100%;
	padding: 18px 5px 18px 0;
	border-bottom: 1px solid #e7e7e7;
}

.product-stats .stat:first-of-type {
	margin-top: 18px;
	/*border-top: 1px solid #e7e7e7;*/
}

.product-stats .stat:last-of-type {
	border-bottom: none;
}

.product-stats .stat p {
	line-height: 1.2;
	margin-bottom: 0;
}

.product-stats .stat p strong {
	font-weight: 600;
}

/* Gallery thumbnail(s) */
.product-gallery {
	margin: 20px 0;
}

.product-gallery.gallery-page {
	min-height: 100px;
	margin: 75px 0 20px;
}

.gallery-image {
	position: relative;
	min-height: 0;
	margin-bottom: 2%;
	padding: 0;
}

.gallery-image img {
	margin: 0;
}

.gallery-image .colour-overlay {
	opacity: 0.75;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
}

.gallery-image .view-more {
	max-height: 65px;
}

.gallery-image .view-more .magnify {
	width: 65px;
	height: 65px;
	display: inline-block;
	background: url(../img/magnify-icon.svg) no-repeat center transparent;
}

.no-svg .gallery-image .view-more .magnify {
	background-image: url(../img/magnify-icon.png);
}

#lightbox .lb-data .lb-caption a {
    color: #495965;
    text-decoration: none;
}

#lightbox .lb-data .lb-caption a:hover {
    color: #0071b9;
}

/* Installed Products */
.installed-products .product-block .product-image {
	min-height: 200px;
}

/*
==========================
 4.14. Single Sector page
==========================
*/

/* Other Sectors */
.other-sectors {
	display: inline-block; /* avoids collapsing margins */
	padding-bottom: 30px;
}

.ie8 .other-sectors {
	display: block;
}

.other-sector {
	width: 30%;
	float: left;
	margin: 0 5% 30px 0;
	padding-left: 60px;
}

.other-sector a {
	text-decoration: none;
}

.other-sector h3 {
	position: relative;
	margin-bottom: 8px;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.other-sector h3:before {
	content: "\65";
	position: absolute;
	top: 3px;
	left: -60px;
	font: 300 1em/1 "optima-icons";
	color: #495965;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.no-touchevents .other-sector:hover h3:before {
	left: -50px;
	opacity: 1;
}

.other-sector p {
	margin-bottom: 4px;
}

/*
=====================
 4.15. Team profiles
=====================
*/

.team-profile {
	height: 500px;
}

.team-profile h3 {
	margin-bottom: 8px;
}

.team-profile h4 {
	font-weight: 300;
	font-size: 1em;
	line-height: 1.25;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #fff;
}

.team-profile .block-content.full h4 {
	font-weight: 400;
	margin-bottom: 20px;
}

.team-profile .block-content.full h4.has-icons {
	margin-bottom: 10px;
}

.team-profile .block-content.full .contact-icons {
	margin-bottom: 18px;
}

.team-profile .block-content.full .contact-icons a {
	display: inline;
	color: #fff;
	margin-right: 10px;
}

.team-profile .block-content.full .contact-icons img {
	margin: 0;
}

.team-profile .block-content.full .contact-icons .linkedin-icon {
	font-size: 1.5em;
	color: #fff;
	margin-top: 3px;
}

.team-profile .block-content.full .content-wrap p {
	line-height: 1.55;
}

.team-profile .block-content.preview {
	position: absolute;
	bottom: 30px;
	left: 30px;
	z-index: 2;
	padding-right: 20px;
}

.team-profile .block-content.full,
.team-profile .view-more {
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .team-profile .block-content.full,
.ie8 .team-profile .view-more {
	display: none;
}

.no-touchevents .team-profile:hover .block-content.full,
.no-touchevents .team-profile:hover .view-more {
	opacity: 1;
	-webkit-transition: all 0.35s ease-in-out 0.4s;
	   -moz-transition: all 0.35s ease-in-out 0.4s;
		 -o-transition: all 0.35s ease-in-out 0.4s;
			transition: all 0.35s ease-in-out 0.4s;
}

.no-touchevents .ie8 .team-profile:hover .block-content.full,
.no-touchevents .ie8 .team-profile:hover .view-more {
	display: block;
}

/*
==================================
 4.16. Single team member profile
==================================
*/

.main-content .profile-image img {
	margin: 0 0 15px;
}

.main-content .profile-image p.profile-contact {
	position: relative;
	line-height: 1.1;
	margin-bottom: 22px;
	padding-left: 35px;
	font-size: 1em;
}

.main-content .profile-image p.profile-contact a {
	color: #495965;
	text-decoration: none;
}

.profile-image p.profile-contact:before {
	position: absolute;
	top: -6px;
	left: 0;
	width: 25px;
	height: 25px;
}

.profile-image p.profile-contact.email:before { content: url(../img/team-member-email-blue.svg); }
.no-svg .profile-image p.profile-contact.email:before { content: url(../img/team-member-email-blue.png); }

.profile-image p.profile-contact.tel:before { content: url(../img/team-member-phone-blue.svg); }
.no-svg .profile-image p.profile-contact.tel:before { content: url(../img/team-member-phone-blue.png); }

.profile-image p.profile-contact.linkedin:before {
	content: "\f0e1";
	font-size: 1.4em;
	font-family: "fontAwesome";
	line-height: 1;
	float: none;
	margin-top: 0;
	margin-left: 2px;
}

.profile-bio h2 {
	margin-bottom: 6px;
}

.profile-bio p.job-title {
	font-size: 1em;
	text-transform: uppercase;
	margin-bottom: 15px;
}

.profile-bio img.hide {
	display: none;
}

/*
====================
 4.17. Blog page(s)
====================
*/

.blog-posts {
	margin-top: 75px;
}
.page-template-home-page .blog-posts { margin-top: 0; }
.category .blog-posts { margin-top: 0; }

/* Blog listings page */
.link-block.blog-post {
	position: static;
	min-height: 0;
	padding: 0;
}

.link-block.blog-post .post-image {
	position: relative;
	min-height: 280px;
	overflow: hidden;
}

.link-block.blog-post.latest .post-image {
	min-height: 500px;
}

.link-block.blog-post .colour-overlay {
	-webkit-transition: all 0.4s ease-in-out;
	   -moz-transition: all 0.4s ease-in-out;
		 -o-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;
}

.link-block.blog-post.highlighted .colour-overlay.opaque {
	opacity: 0.75;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
	-webkit-transform: none;
	   -moz-transform: none;
	     -o-transform: none;
		-ms-transform: none;
			transform: none;
}

.link-block.blog-post .block-content {
	text-align: center;
	padding: 56px 50px;
}

.link-block.blog-post.highlighted .block-content {
	padding-bottom: 20px;
}

.post-date {
	position: relative;
	width: 80px;
	height: 80px;
	font-weight: 700;
	font-size: 0.875em;
	text-transform: uppercase;
	text-align: center;
	margin: 0 auto 35px;
	padding: 12px 0;
	border: 2px solid #fff;
}

.link-block.blog-post.highlighted .post-date:before,
.post-date.highlighted:before {
	content: "";
	position: absolute;
	top: -13px;
	left: 26px;
	width: 22px;
	height: 21px;
	display: block;
	background: url(../img/star-icon.svg) no-repeat center;
}

.no-svg .link-block.blog-post.highlighted .post-date:before,
.no-svg .post-date.highlighted:before {
	background: url(../img/star-icon.png) no-repeat center;
}

.post-date span {
	font-size: 2.25em;
	display: block;
	margin-bottom: 3px;
}

.link-block.blog-post h2 {
	font-size: 1.75em;
	color: #fff;
	margin-bottom: 20px;
}

.link-block.blog-post.latest h2 {
	max-width: 40%;
	font-size: 2.25em;
	margin: 0 auto 18px;
}

.link-block.blog-post .post-cat,
.post-cat {
	font-weight: 400;
	font-size: 0.75em;
	line-height: 1.5;
	text-transform: uppercase;
	color: #fff;
	margin: 0;
}

.link-block.blog-post .highlighted-text {
	position: relative;
	color: #fff;
	z-index: 4;
	padding: 0 50px 20px;
}

.link-block.blog-post .highlighted-text p {
	color: #fff;
}

.link-block.blog-post .post-preview {
	padding: 33px 40px 2px;
}

.link-block.blog-post .post-preview p {
	margin-bottom: 28px;
}

.link-block.blog-post .view-more {
	position: static;
}

.link-block.blog-post.highlighted .view-more {
	position: relative;
	left: 50px;
	color: #fff;
	z-index: 4;
}

.link-block.blog-post.latest .view-more {
	position: absolute;
	left: 0;
	width: 100%;
	text-align: center;
	color: #fff;
}

.link-block.blog-post .view-more span {
	font-size: 1em;
	color: #495965;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.link-block.blog-post.highlighted .view-more span,
.link-block.blog-post.latest .view-more span {
	color: #fff;
}

.link-block.blog-post .view-more span.arrow {
	font-size: 2em;
}

.no-touchevents .link-block.blog-post.highlighted:hover .view-more span,
.no-touchevents .link-block.blog-post.latest:hover .view-more span {
	color: #fff;
}

/* Subscribe to Blog banner */
.cmApp_signupContainer.cmApp_embedded,
.cmApp_signupContainer {
	width: 100%;
	max-width: none !important;
	padding: 0;
}

.cmApp_signupContainer div {
	margin-top: 0 !important;
}

.cmApp_signupContainer #cmApp_signupForm > div {
	padding: 0 !important;
}

.cmApp_formHeader,
.cmApp_processingMsg {
	max-width: 620px;
	font: 700 2.25em/1.277 "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
	color: #fff;
	margin: 0 auto 10px !important;
}

.cmApp_formSubHeader {
	max-width: 620px;
	font: 300 1.125em/1.777 "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif !important;
	letter-spacing: 0.05em;
	color: #fff;
	margin: 0 auto 20px !important;
}

.cmApp_fieldWrap {
	max-width: 100%;
	width: 100%;
	margin: 30px auto 0;
}

.cmApp_formInput {
	width: 33.333%;
	float: left;
	margin: 0 20px 0 0 !important;
}

.cmApp_signupContainer #cmApp_signupForm input,
.cmApp_signupContainer #cmApp_signupForm textarea,
.cmApp_signupContainer #cmApp_signupForm select {
	width: 100%;
	height: 50px;
	font: 300 1.125em "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif;
	letter-spacing: 0.05em;
	color: #fff;
	padding: 0 10px;
	border: 1px solid #fff;
	background-color: transparent;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.cmApp_signupContainer #cmApp_signupForm input[type="submit"] {
	max-width: 28%;
	font-weight: 700;
	text-transform: none;
	text-align: center;
	color: #495965;
	cursor: pointer;
	margin: 0;
	border: 0;
	background-color: #fff;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.no-touchevents .cmApp_signupContainer #cmApp_signupForm input[type="submit"]:hover {
	color: #fff;
	background-color: #495965;
}

.cmApp_signupContainer #cmApp_signupForm input::-webkit-input-placeholder {
	color: #fff;
}

.cmApp_signupContainer #cmApp_signupForm input:-moz-placeholder {
	color: #fff;
}

.cmApp_signupContainer #cmApp_signupForm input::-moz-placeholder {
	color: #fff;
}

.cmApp_signupContainer #cmApp_signupForm input:-ms-input-placeholder {
	color: #fff;
}

.cmApp_signupContainer div.cmApp_errorMsg {
	display: none !important;
}

.cmApp_signupContainer #cmApp_signupForm input.error {
	outline: none !important;
	border-color: #d8000c;
	background-color: #ffbaba;
}

/* Pagination */
.blog-pagination {
	width: 100%;
	text-align: center;
	display: inline-block; /* avoids collapsing margins */
	margin: 60px 0 20px;
}

.ie8 .blog-pagination {
	display: block;
}

.single-post .blog-pagination {
	margin-top: 20px;
}

.blog-pagination a.read-more {
	display: inline-block;
	margin-right: 10px;
 	-webkit-transform: none;
	   -moz-transform: none;
		 -o-transform: none;
		-ms-transform: none;
			transform: none;
}

.blog-pagination a.read-more.older-posts {
	margin-right: 0;
}

.blog-pagination a.read-more.back {
	margin-bottom: 40px;
}

h2.related-posts {
	text-align: center;
	margin-bottom: 20px;
}

/* Social sharing buttons */
.social-sharing {
	margin-top: 40px;
}

.social-sharing a {
	font-size: 1.75em;
	margin-right: 20px;
}

/*
==========================
 4.18. Job Vacancies page
==========================
*/

.staff-testimonials {
	padding-bottom: 30px;
}

.staff-testimonial blockquote {
	font-size: 1em;
	margin: 0;
	padding: 0;
}

.job-vacancies {
	margin-top: 75px;
}

.main-content.job-vacancies  img.alignleft {
	margin: 0 50px 10px 0;
}

.main-content.job-vacancies img.alignright {
	margin: 0 0 10px 50px;
}

.vacancy {
	margin-bottom: 20px;
}

.vacancy .vacancy-details {
	margin-bottom: 0;
	padding: 40px;
}

.vacancy .vacancy-details h3 {
	font-size: 2.25em;
	color: #fff;
	margin-bottom: 8px;
}

.vacancy .vacancy-details p,
.vacancy .vacancy-details li {
	color: #fff;
	margin-bottom: 0;
}

.vacancy .vacancy-details ul {
	margin-bottom: 0;
}

.vacancy .vacancy-details li {
	display: inline;
	margin-right: 18px;
	padding-left: 0;
}

.vacancy .vacancy-details li:before {
	content: "";
}

.vacancy .vacancy-toggle {
	position: relative;
	width: 50px;
	height: 50px;
	float: right;
	cursor: pointer;
	margin: 18px 10px 0 0;
}

.vacancy .vacancy-toggle span.vertical {
	width: 7px;
	display: block;
	height: 100%;
	margin: 0 auto;
	background-color: #fff;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.vacancy.open .vacancy-toggle span.vertical {
	opacity: 0;
}

.vacancy .vacancy-toggle span.horizontal {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 7px;
	display: block;
	margin: auto;
	background-color: #fff;
}

.vacancy .vacancy-description {
	display: none;
	margin-bottom: 0;
}

.vacancy.first .vacancy-description {
	display: block;
}

h2.no-vacancies {
	margin-bottom: 20px;
}

/*
===================
4.19. Contact page
===================
*/

.contact-box {
	margin-top: 75px;
}

.contact-address {
	padding-left: 60px;
}

.contact-address h2 {
	margin-bottom: 20px;
}

#map {
	width: 100%;
	height: 500px;
}

.contact-form {
	display: inline-block; /* avoids collapsing margins */
}

.chrome .contact-form,
.safari .contact-form,
.ie .contact-form {
	display: block;
}

.wpcf7 form {
	position: relative;
	max-width: 75%;
	margin: 30px auto 0;
}

.wpcf7 form label {
	font: 300 1.125em/1.777 "Muli";
	letter-spacing: 0.05em;
	color: #495965;
}

.wpcf7 form input,
.wpcf7 form textarea,
.wpcf7 select {
	width: 100%;
	height: 50px;
	font: 300 1.125em "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif;
	letter-spacing: 0.05em;
	color: #495965;
	margin-bottom: 17px;
	padding: 0 10px;
	border: 1px solid #495965;
	background-color: #fff;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .wpcf7 form input {
	padding-top: 12px;
}

.wpcf7 form textarea {
	height: 225px;
	padding: 8px 10px;
}

.wpcf7 select option {
	font: 300 1.125em "Muli", Arial, 'Helvetica Neue', Helvetica, sans-serif;
}

.wpcf7 form input[type="submit"] {
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	color: #fff;
	cursor: pointer;
	margin-bottom: 0;
	border: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 .wpcf7 form input[type="submit"] {
	padding-top: 0;
}

.wpcf7 form input[type="submit"]:hover {
	background-color: #495965;
}

div.wpcf7 .ajax-loader {
	position: absolute;
	bottom: 7px;
	right: 12px;
	width: 36px !important;
	height: 36px !important;
	background: url(../img/contact-loading.svg) no-repeat center !important;
}

.no-svg div.wpcf7 .ajax-loader,
.ie div.wpcf7 .ajax-loader {
	background-image: url(../img/contact-loading.gif) !important;
}

span.wpcf7-not-valid-tip {
	display: none !important;
}

div.wpcf7 form input.wpcf7-not-valid,
div.wpcf7 form textarea.wpcf7-not-valid,
div.wpcf7 form select.wpcf7-not-valid {
	border-color: #d8000c;
	background-color: #ffbaba;
}

div.wpcf7 div.wpcf7-response-output {
	width: 100%;
	font-weight: 300;
	font-size: 1.125em;
	line-height: 1.777;
	letter-spacing: 0.05em;
	margin: 0 0 20px;
	padding: 15px;
}

div.wpcf7 .wpcf7-response-output.wpcf7-validation-errors {
	color: #d8000c;
	border: 1px solid #d8000c;
    background-color: #ffbaba;
}

div.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok {
	color: #4f8a10;
	border: 1px solid #4f8a10;
	background-color: #dff2bf;
}

/*
=========================
 4.20. 3D Room Tour page
=========================
*/

#product-tool {
	width: 100%;
	margin: 0 auto;
}

.product-tool-wrapper {
    max-height: 600px;
	height: 100%;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding-bottom: 50%;
	overflow: hidden;
	position: relative
}

.product-tool-wrapper iframe {
	min-width: 100%;
	width: 10px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.product-tool-wrapper iframe.hide {
	display: none;
}

.product-tool-wrapper iframe#meeting-room {
    background-color: #36a9ac;
}

.product-tool-wrapper iframe#conference-room {
	background-color: #e53c65;
}

.product-tool-wrapper iframe#quiet-room {
	background-color: #0071b9;
}

ul.product-tool-menu {
	margin: 0;
	margin-bottom: 2em;
	padding: 0;
	list-style-type: none;
	text-align: center;
}

ul.product-tool-menu li {
	display: inline;
	margin-right: 10px;
	padding-left: 0;
}

ul.product-tool-menu li:before {
	display: none;
}

ul.product-tool-menu li:last-child {
	margin-right: 0px;
}

a.product-tool-btn {
    -webkit-transform: skewX(-20deg);
    -moz-transform: skewX(-20deg);
    -ms-transform: skewX(-20deg);
    -o-transform: skewX(-20deg);
    transform: skewX(-20deg);
    -webkit-border-radius: 0px; /* Safari 3-4, iOS 1-3.2, Android 1.6- */
    -moz-border-radius: 0px; /* Firefox 1-3.6 */
    border-radius: 0px; /* Opera 10.5, IE 9, Safari 5, Chrome, Firefox 4, iOS 4, Android 2.1+ */
    color: #495965;
    border-style: solid;
    border-width: 1px;
    outline: 1px solid transparent; /* Firefox fox for jaggered edges */
    padding: 10px 60px;
    display: inline-block;
    text-align: center;
    font: 700 1.125em/1.777em 'Muli';
}

.main-content ul li a.product-tool-btn {
	color: #495965;
}

a.product-tool-btn.blue {
	border-color: #0071b9;
}

a.product-tool-btn.pink {
	border-color: #e53c65;
}

a.product-tool-btn.teal {
	border-color: #36a9ac;
}

a.product-tool-btn span {
    -webkit-transform: skewX(20deg);
    -moz-transform: skewX(20deg);
    -ms-transform: skewX(20deg);
    -o-transform: skewX(20deg);
    transform: skewX(20deg); 
    display: inline-block;
    vertical-align: top;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

a.product-tool-btn:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    z-index: -1;
    -webkit-transition: width 0.4s ease-in-out;
    -moz-transition: width 0.4s ease-in-out;
    -o-transition: width 0.4s ease-in-out;
    transition: width 0.4s ease-in-out;
}

a.product-tool-btn.blue:before {
	background-color: #0071b9;
}

a.product-tool-btn.pink:before {
	background-color: #e53c65;
}

a.product-tool-btn.teal:before {
	background-color: #36a9ac;
}

.no-touchevents a.product-tool-btn:hover,
.no-touchevents .main-content ul li a.product-tool-btn:hover {
    color: #ffffff;
}

.no-touchevents a.product-tool-btn:hover:before {
    width: 100%;
}

a.product-tool-btn.active:before {
    width: 100%;
}

a.product-tool-btn.active,
.main-content ul li a.product-tool-btn.active {
    color: #ffffff;
}

.product-tool-menu.mobile {
   display: none;
}

/*
================================
4.21. International site notice
================================
*/

.international-notice {
	position: fixed;
	bottom: 0;
	left: 0;
	min-width: 300px;
	max-width: 300px;
	min-height: 350px;
	text-align: center;
	z-index: 9996;
	padding: 30px;
	border: 1px solid #495965;
	border-bottom: 0;
	-webkit-transition: all 0.75s ease-in-out;
	   -moz-transition: all 0.75s ease-in-out;
		 -o-transition: all 0.75s ease-in-out;
			transition: all 0.75s ease-in-out;
}

.international-notice.email-notice {
	display: none;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	bottom: inherit;
	min-height: 200px;
	min-width: 400px;
	max-width: 400px;
	border: 1px solid #495965;
	z-index: 9998;
	-webkit-transition: none;
	   -moz-transition: none;
		 -o-transition: none;
			transition: none;
}

.international-notice.closed {
	-webkit-transform: translateX(-100%) translateY(100%);
	   -moz-transform: translateX(-100%) translateY(100%);
	     -o-transform: translateX(-100%) translateY(100%);
		-ms-transform: translateX(-100%) translateY(100%);
			transform: translateX(-100%) translateY(100%);
}
.international-notice.email-notice.closed {
	-webkit-transform: translateX(-0%) translateY(300%);
	   -moz-transform: translateX(-0%) translateY(300%);
	     -o-transform: translateX(-0%) translateY(300%);
		-ms-transform: translateX(-0%) translateY(300%);
			transform: translateX(-0%) translateY(300%);
}

.international-notice img {
	margin: 0;
}

.international-notice img.close-button {
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
	z-index: 9997;
}

.international-notice h2 {
	font-size: 1.7em;
	line-height: 1.15;
	margin-top: 25px;
}

.international-notice p {
	font-size: 1em;
}

.international-notice a.read-more {
	color: #fff;
	border: 0;
}

/*
===================
 4.22. Footer area
===================
*/

footer {
	width: 100%;
	min-height: 550px;
	color: #fff;
	margin-top: 55px;
	padding: 60px 0 40px;
}
.page-template-home-page footer { margin-top: 80px; }
.page-template-default footer { margin-top: 75px; }
.single-post footer { margin-top: 75px; }

footer.no-margin {
	margin-top: 0;
}

footer .cta-message {
	margin-bottom: 80px;
}

footer .cta-message p,
footer .cta-message a {
	font-size: 2.25em;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #fff;
	text-decoration: none;
}

footer .cta-message a:after {
	content: "\65";
	font: 300 1em/1 "optima-icons";
	position: relative;
	top: 9px;
	margin-left: 8px;
	opacity: 0;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.ie8 footer .cta-message a:after {
	font-size: 2.2em;
}

.no-touchevents footer .cta-message a:hover:after {
	margin-left: 18px;
	opacity: 1;
}

footer .main-content p,
footer .main-content ul li {
	color: #fff;
	margin-bottom: 0;
}

footer .main-content ul {
	margin-bottom: 0;
}

footer .main-content ul li {
	padding-left: 0;
}

footer .main-content ul li:before {
	display: none;
}

footer .main-content p a,
footer .main-content ul li a {
	color: #fff;
	text-decoration: none;
}

.no-touchevents footer .main-content p a:hover,
.no-touchevents footer .main-content ul li a:hover {
	color: #fff;
	text-decoration: underline;
}

footer .main-content img {
	margin: 0;
}

footer nav.social {
	float: none;
	margin-top: 0;
	padding-left: 0;
}

footer nav.social ul li {
	margin-right: 8px;
	margin-left: 0;
}

.no-touchevents footer nav.social ul li a:hover {
	color: #fff;
}

.footer-logo {
	margin-top: 80px;
}

footer .active-region {
	font-size: 1.125em;
	letter-spacing: 0.05em;
	cursor: pointer;
	display: inline-block;
	margin: 15px 0 25px;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

footer .active-region.icon:before {
	position: relative;
	top: 8px;
	font-size: 2.1rem;
	margin-right: 12px;
}

footer h4 {
	line-height: 1!important;
}

.ie8 footer .active-region.icon:before {
	font-size: 2.1em;
}

.no-touchevents footer .active-region:hover {
	opacity: 0.65;
}

.pop-up.region-picker {
	max-width: 620px;
}

.pop-up.region-picker a {
	width: 100%;
	font-weight: 300;
	font-size: 1.625em;
	letter-spacing: 0.05em;
	text-decoration: none;
	color: #495965;
	display: block;
	padding: 15px 10px;
	border-bottom: 1px solid #e7e7e7;
}

.pop-up.region-picker a:first-of-type {
		border-top: 1px solid #e7e7e7;
}

.pop-up.region-picker a .arrow {
	position: relative;
	left: 0;
	font-size: 1.05em;
	float: right;
	-webkit-transition: all 0.35s ease-in-out;
	   -moz-transition: all 0.35s ease-in-out;
		 -o-transition: all 0.35s ease-in-out;
			transition: all 0.35s ease-in-out;
}

.no-touchevents .pop-up.region-picker a:hover .arrow {
	left: 10px;
}

.pop-up.region-picker h2 {
	text-align: center;
	margin-bottom: 30px;
}
footer .copyright {
	margin-top: 30px;
}
footer .copyright p {
	font-size: 0.8em;
	line-height: 1.6;
}

footer .one-quarter {
	width: 28.5%;
	margin-right: 0%;
}

/*
============================================================================================================================
 5. Legacy browser bar
============================================================================================================================

 * Styling for a conditional bar that will appear only in Internet Explorer 8 and below
 * Provides a warning to <=IE8 users that the website may not look and/or function as intended
*/

.legacy-browser-notice {
	position: fixed;
	bottom: 0px;
	z-index: 9999;
	width: 100%;
	font-size: 1em;
	line-height: 1.45;
	text-align: center;
	color: #ffffff;
	padding: 22px 0;
	background: url(../img/legacy-browser-logo.jpg) no-repeat 30px center #00a1f1;
}

.legacy-browser-notice p span {
	font-weight: bold;
	font-size: 1.2em;
}
	
.legacy-browser-notice a {
	font-weight: 600;
	color: #fff;
}

.legacy-browser-notice strong {
	font-weight: 700;
}
/*
============================================================================================================================
 6. Fancybox customisations
============================================================================================================================
*/


.play {
    display: block;
    width: 0;
    height: 0;
    border-top: 50px solid transparent;
    border-bottom: 50px solid transparent;
    border-left: 60px solid #fff;
    margin: 50px auto 50px auto;
    position: relative;
    z-index: 1;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    left: 10px;
	color: transparent!important;
}
.play:before {
    content: '';
    position: absolute;
    top: -75px;
    left: -115px;
    bottom: -75px;
    right: -35px;
    border-radius: 50%;
    border: 10px solid #fff;
    z-index: 2;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
}
.play:after {
    content: '';
    opacity: 0;
    transition: opacity 0.6s;
    -webkit-transition: opacity 0.6s;
    -moz-transition: opacity 0.6s;
}
.videolink .play {
	position: absolute;
	top: 0;
    right: 0;
    bottom: 0;
    left: 7%;
    max-width: 100%;
    max-height: 100%;
    text-align: center;
	margin: auto;
}
                                                                   
.fancybox-button, .fancybox-button:visited, .fancybox-button:link {
	color: #fff!important;
}
.fancybox-caption {
	font-size: 2.25em;
    font-weight: bold;
    line-height: 1em;
	border-top: none;
	text-align: center;
}
.videogallery .fancybox-caption {
	display: none;
}
.fancybox-is-open .fancybox-bg {
	background-color: #000;
	opacity: 0.8;
}
.fancybox-caption a {
	text-decoration: none;
}
@media screen and (max-width:480px) {
	.banner.static.image, 
	.single-project .banner {
		height: auto!important;
		min-height: 400px;
	}
}
.videowrapper {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0;
}
.videowrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* NEW TOPBAR AND NAVIGATION */
.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu.wpmm-fadeindown:hover > .wpmm-strees-row-container ul.wp-megamenu-sub-menu {
	background: transparent!important;
}
nav#wp-megamenu-main-nav .wpmm-strees-row-container > ul.wp-megamenu-sub-menu {
	box-shadow: none!important;
}
#wp-megamenu-main-nav > .wpmm-nav-wrap ul.wp-megamenu>li.wpmm_mega_menu>ul.wp-megamenu-sub-menu {
	background-color: transparent!important;
}
#wp-megamenu-main-nav > .wpmm-nav-wrap ul.wp-megamenu>li ul.wp-megamenu-sub-menu li {
	background-color: #fff;
}
#wp-megamenu-main-nav > .wpmm-nav-wrap ul.wp-megamenu > li.current-menu-ancestor > a {
	color: #fff!important;
}
#wp-megamenu-main-nav > .wpmm-nav-wrap ul.wp-megamenu > li.current-menu-ancestor:hover > a {
	color: #413d45!important;
}
#wp-megamenu-main-nav.wp-megamenu-wrap.wpmm-mobile-menu ul.wp-megamenu > li.current-menu-ancestor > a {
	color: #495965!important;
}
.wp-megamenu-wrap a {
	text-decoration: none;
}
.wp-megamenu-sub-menu > li {
	max-width: 1180px;
	margin: 0 auto;
}
.wp-megamenu-sub-menu > li .wpmm-col.wpmm-col-2 {
	width: 20%;
}
.wp-megamenu-sub-menu > li .wpmm-col.wpmm-col-2:last-child {
	display: none;
}
.wp-megamenu >li > ul.wp-megamenu-sub-menu li > a {
	word-wrap: inherit!important;
    word-break: inherit!important;
}
.wpmm-nav-wrap {
    margin: 30px 0 25px 0;
}
.clone .wpmm-nav-wrap {
	margin: 0;
}
.clone.fixed #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li>a,
.clone.fixed #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li.current-menu-ancestor>a {
	color: #495965!important;
}
.clone.fixed #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li:hover>a {
	color: #0071b9;
}
#wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li>a {
	
}
#wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li:hover>a {
    color: #282828;
    background-color: #fff;
}
@media (max-width: 1200px) {
	.wp-megamenu-wrap.wpmm-mobile-menu .wpmm-nav-wrap {
		margin-right: 0;
		margin-left: 0;
	}
	#wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li>a {
		
	}
	.clone .wpmm_mobile_menu_btn {
		color: #495965!important;
		margin-right: 0;
	}
	#wp-megamenu-main-nav.wpmm-mobile-menu a.wpmm_mobile_menu_btn {
		/*margin-right: 12px!important;*/
		margin: -20px 0 0 0!important;
	}
	#wp-megamenu-main-nav.wp-megamenu-wrap.wpmm-mobile-menu>.wpmm-nav-wrap ul.wp-megamenu>li>a {
		font-size: 18px!important;
		font-weight: 600!important;
		line-height: 1.2;
	}
}
.clone #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li>a {
	margin-bottom: 0px;
	font-size: 25px;
}
#wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li>a {
	font-family: Muli, Arial, Helvetica, sans-serif!important;
}
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li ul.wp-megamenu-sub-menu li a, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li ul.wp-megamenu-sub-menu li, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h1, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h2, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h3, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h4, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h5, 
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu h6 {
    font-family: Muli, Arial, Helvetica, sans-serif!important;
}
nav ul li a img.icon {
    margin-top: 5px;
	
}
nav ul li.search-link {
	margin-right: 25px;
}
nav ul li a img.icon {
	display: inline-block;
}
nav ul li a img.icon.hover {
   display: none;
}
header.clone nav ul li a img.icon,
nav ul li.search-link:hover img.icon {
    display: none;
}
header.clone nav ul li a img.icon.hover,
.wpmm-mobile-menu ul li a img.icon.hover,
nav ul li.search-link:hover img.icon.hover {
    display: inline-block;
}
nav .wpmm-strees-row-container > ul.wp-megamenu-sub-menu {
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15)!important;
}
nav.wpmm-mobile-menu ul.wp-megamenu {
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15);
}
nav .wpmm-mobile-menu .wpmm-strees-row-container > ul.wp-megamenu-sub-menu {
	box-shadow: none!important;
}
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.hide-desktop {
	display: none;
}
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.hide-mobile {
	display: inline-block;
}

@media (max-width: 1200px) {
	div.top-bar {
		display: none;
	}
	header {
		top: 0;
	}
	.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.hide-desktop {
		display: inherit;
	}
	.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.hide-mobile {
		display: none;
	}
	.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li,
	.wp-megamenu-wrap .wpmm-nav-wrap > ul.wp-megamenu > li.wpmm_mega_menu > .wpmm-strees-row-container ul.wp-megamenu-sub-menu > li.wpmm-row > ul.wp-megamenu-sub-menu > li {
		padding: 0 25px 25px 25px!important;
	}
	nav .wp-megamenu-wrap .wpmm-strees-row-container > ul.wp-megamenu-sub-menu {
		box-shadow: none;
	}
}
div.top-bar {
	background-color: #413d45;
	color: #ffffff;
	border-bottom: 1px solid #888;
}
div.top-bar .wrapper {
	/* width: 1170px; */
	margin: 0 auto;
	padding-top: 7px;
    padding-bottom: 7px;
	padding-left: 40px;
	padding-right: 40px;
}
div.top-bar .tablewrapper {
	display: table;
	width: 100%;
	font-size: 14px;
}
div.top-bar nav {
	display: table-cell;
	vertical-align: middle;
}
div.top-bar nav.contact {
	text-align: left;
}
div.top-bar nav.contact a {
	color: #fff;
	text-decoration: none;
}	
div.top-bar nav.region {
	text-align: left;
}
div.top-bar nav.region .icon-globe:before {
	top: 2px;
	position: relative;
	margin-right: 8px;
}
div.top-bar nav ul#menu-top-bar li {
	text-align: left;
}
div.top-bar nav.region ul ul {
	display: none;
	position: absolute; 
	top: 30px;
	width: 174px;
	z-index: 6;
	margin-top: -6px;
	padding-top: 7px;
}
div.top-bar nav ul#menu-top-bar ul {
	display: none;
	position: absolute; 
	top: 30px;
	width: 174px;
	z-index: 6;
	margin-top: -14px;
	padding-top: 7px;
	margin-left: 0px;
	width: 250px;
	left: 0;
}
div.top-bar nav.region ul > li,
div.top-bar nav ul#menu-top-bar ul > li {
	cursor: pointer;
}
div.top-bar nav.region ul li:hover > ul,
div.top-bar nav ul#menu-top-bar li:hover > ul {
	display: inherit;
}
div.top-bar nav.region ul li ul li {
	
}
div.top-bar nav ul#menu-top-bar li ul li {
	display: block;
}
div.top-bar nav ul#menu-top-bar > li > a {
	/* text-transform: uppercase; */
}
div.top-bar nav ul#menu-top-bar > li.menu-item-has-children > a:after {
	content: "\f107";
	font: normal normal normal 14px/1 FontAwesome;
	margin-left: 3px;
}
div.top-bar nav.region ul li ul li a,
div.top-bar nav ul#menu-top-bar li ul li a {
	text-decoration: none;
	color: #fff;
	background-color: #413d45;
	display: block;
	padding: 10px;
}
div.top-bar nav.region ul li ul li:hover a,
div.top-bar nav ul#menu-top-bar li ul li:hover a {
	background-color: #fff;
	color: #000;
}
div.top-bar nav {
	text-align: right;
}
div.top-bar .menu li {
	display: inline-block;
	position: relative;
}
div.top-bar .menu li a {
	text-decoration: none;
	color: #fff;
}
div.top-bar #menu-top-bar > li {
	padding-left: 10px;
	padding-right: 10px;
}
div.top-bar #menu-social-media-icons li {
	padding-left: 5px;
}
/* GLASS PARTITION ACOUSTICS EBOOK */
.page-id-20768 .banner.static.image {
	height: auto;
}
.page-id-20768 .link-blocks .link-block {
	min-height: auto;
	padding-bottom: 40px;
}
body #wp-megamenu-main-nav>.wpmm-nav-wrap ul.wp-megamenu>li.current-menu-ancestor>a {
	background-color: inherit;
}
#wp-megamenu-main-nav > .wpmm-nav-wrap ul.wp-megamenu > li.current-menu-ancestor:hover > a {
	background-color: #fff;
}


.page-id-25571 .samples {
	background-color: #fff!important;
}
.page-id-25571 .samples .wpcf7 form input[type="submit"] {
    margin-top: 30px;
    margin-bottom: 20px;
}

.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.whiteborder > a {
	border: 2px solid #fff;
    padding: 13px 12px;
}
.wp-megamenu-wrap .wpmm-nav-wrap > ul > li.whiteborder > a:hover {
	padding: 15px 14px;
}

/* HOlDING PAGE */

.grey-bg.page-template-holding-page {
	background-color: #fff;
}
.page-template-holding-page .logo.hidenav {
	display: none;
}

.page-template-holding-page .container.main-content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.wp-megamenu-sub-menu span.wpmm_item_description {
	display: none!important;
}

/* ELEMENTOR */

.page-template-elementor_header_footer .elementor {
	padding-top: 120px;
}

.e-form__buttons .elementor-button {
	position: relative;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-decoration: none;
	color: #495965;
	display: inline-block;
	margin-top: 2px;
	padding: 10px 35px;
	border: 1px solid #495965;
	-webkit-transform: skewX(-32deg);
	   -moz-transform: skewX(-32deg);
		 -o-transform: skewX(-32deg);
		-ms-transform: skewX(-32deg);
			transform: skewX(-32deg);
}
.e-form__buttons .elementor-button > span {
	display: block;
	-webkit-transform: skewX(32deg);
	   -moz-transform: skewX(32deg);
		 -o-transform: skewX(32deg);
		-ms-transform: skewX(32deg);
			transform: skewX(32deg);
}

.e-form__buttons .elementor-button:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background-color: #495965;
	-webkit-transition: width 0.4s ease-in-out;
	   -moz-transition: width 0.4s ease-in-out;
		 -o-transition: width 0.4s ease-in-out;
			transition: width 0.4s ease-in-out;
}

#wp-megamenu-main-nav>.wpmm-nav-wrap .wp-megamenu>li .wpmm-strees-row-container>ul.wp-megamenu-sub-menu li.wpmm-type-widget>a {
	font-size: 16px!important;
}

.firetable {
	/*padding: 15px 30px;*/
	background-color: #fff;
}
.main-content .firetable table-wrap {
	padding: 0;
}
.firetable table {
	width: 100%;
	border: 2px solid #000;
	border-collapse: collapse;
	
}
.main-content .firetable table tr th,
.main-content .firetable table tr td {
	border: 2px solid #000;
	padding: 10px;
	color: #000;
	text-align: center;
}
.firetable td a {
	color: #000;
	text-decoration: none;
}
.main-content .firetable table tr td:first-child {
	text-align: left;
}
.nbssource {
	max-height: 65px;
	overflow: hidden;
	transition: max-height 300ms;
}
.nbssource.open {
	max-height: 600px;
}
.blogPostFlex {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}
.blogPostFlex .cmApp_formInput {
	width: 100%;
}
.blogPostFlex .cmApp_signupContainer #cmApp_signupForm > div {
	display: flex;
    flex-direction: column;
}
.blogPostFlex .cta-banner {
    position: relative;
    width: 100%;
	min-width: 300px;
    min-height: auto;
    text-align: center;
    margin: 0;
	padding: 28px 34px 37px;
}
.blogPostFlex .cmApp_formHeader {
	color: #FFF!important;
	font-size: 24px!important;
	font-style: normal;
	font-weight: 800!important;
	line-height: 33px!important;
	text-align: left!important;
}
.blogPostFlex .cmApp_formSubHeader {
	color: #FFF!important;
	font-size: 18px!important;
	font-style: normal;
	font-weight: 400!important;
	line-height: 36px!important;
	text-align: left!important;
}
.blogPostFlex input {
	color: #FFF;
	font-size: 16px!important;
	font-style: normal;
	font-weight: 400!important;
	line-height: 36px!important;
}
.blogPostFlex input[type="submit"] {
	max-width: 100%!important;
	width: 100%!important;
}
.blogPostFlex .cmApp_fieldWrap {
	display: flex;
    flex-direction: column;
	gap: 30px;
}
.blogPostFlex #cmApp_signupForm > div:nth-child(9) {
	margin-top: 30px!important;
	margin-bottom: 30px;
}
.blogPostFlex #cmApp_signupForm > div:nth-child(9) > input {
	min-height: 111px;
}

.blogPostFlex #cmApp_signupForm > div:nth-child(9) > input {
	padding: 20px 10px 100px;
 }

@media (max-width: 991px) {
	.blogPostFlex {
		display: flex;
		flex-direction: column;
	}
	.blogPostFlex .cmApp_formHeader,
	.blogPostFlex .cmApp_formSubHeader {
		margin-left: 0!important;
	}
}
@media (max-width: 767px) {
	.blogPostFlex .cta-banner {
		padding: 28px 10px 37px;
	}
}