@import url('https://fonts.googleapis.com/css2?family=Albert+Sans:wght@400;600&family=Barlow:wght@700;800&display=swap');

.site-branding, 
#content, 
.site-info {
	width: 970px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}
body {
	font-family: 'Albert Sans', sans-serif;
	color: #54565a;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'Barlow', sans-serif;
	font-weight: 800;
}
h1 {
	font-size: 40px;
	letter-spacing: 2px;
	text-transform: uppercase;
	margin-bottom: 15px;
} 
h2 {
	font-size: 40px;
	letter-spacing: 2px;
}
h3 {
	font-size: 30px;
	margin: 0;
	text-align: center;
	letter-spacing: 3px;
}
h4 {
	font-size: 22px;
	margin: 0;
	letter-spacing: 2px;
	font-weight: 100;
}
.clear {
	clear: both;
}

/*-------------- Header Styles --------------*/

#top-bar {
    background: #898a8d;
    text-align: right;
    color: #fff;
    font-size: 12px;
    font-family: 'Barlow', sans-serif;
    padding: 10px 0;
    letter-spacing: 2px;
}
#top-bar section, 
#top-bar p {
    margin: 0;
}
#top-bar a {
    text-decoration: none;
}
#main-header {
	background: #54565a;
	padding: 35px 0 30px;
}
.custom-logo {
	width: 160px;
}
.main-navigation {
    float: right;
    margin-top: 25px;
    font-family: 'Barlow', sans-serif;
    text-transform: uppercase;
    font-size: 15px;
}
.main-navigation a {
    color: #fff;
    margin-left: 20px;
    border-bottom: 4px solid transparent;
    transition: 0.3s ease-in-out;
}
.main-navigation li.current-menu-item > a, 
.main-navigation a:hover {
    border-bottom: 4px solid #ffd100;
}
#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li {
    margin-left: 28px !important;
}
span.mega-indicator {
    display: none !important;
}
.mega-menu-link {
    letter-spacing: 2px;
}

/*-------------- Footer Styles --------------*/

body.home .footer-contact {
	margin-top: -80px;
}
.footer-contact {
	background: #898a8d;
	clip-path: polygon(50% 0%, 100% 10%, 100% 100%, 0 100%, 0% 10%);
	padding: 100px 0 150px;
	margin-top: 60px;
}
.footer-contact h3 {
	color: #fff;
	letter-spacing: 2px;
}
#footer-form {
    margin-top: 40px;
}
.nf-form-fields-required, 
.nf-field-label, 
.nf-error-msg.nf-error-required-error {
    display: none;
}
.nf-form-content .list-select-wrap .nf-field-element>div, 
.nf-form-content input:not([type=button]), 
.nf-form-content textarea {
    border: 0 !important;
}
.nf-field-container {
    margin-bottom: 15px !important;
}
.nf-form-content textarea.ninja-forms-field {
    height: 120px !important;
}
.nf-form-content input[type=submit] {
    background: #ffd100 !important;
    padding: 17px 41px 13px !important;
    height: auto !important;
    font-size: 12px !important;
    margin: 0 auto;
    display: block;
    font-family: termina, sans-serif;
    font-weight: 600;
    font-style: normal;
    cursor: pointer;
}
.nf-form-content input[type=submit]:hover {
    background: #fff !important;
}
footer#colophon {
	background: #fff;
    clip-path: polygon(50% 0%, 100% 25%, 100% 100%, 0 100%, 0% 25%);
    margin-top: -100px;
}
footer#colophon > .site-info:first-child {
    padding: 100px 20px 50px;
}
#footer-bottom {
	background: #898a8d;
	font-family: 'Barlow', sans-serif;
	color: #fff;
	text-align: center;
	padding: 20px 0;
	letter-spacing: 2px;
}
#footer-bottom p {
	margin: 0;
}
#footer-bottom a {
	text-decoration: none;
}
.fwidgets {
	float: left;
}
#f1 {
	width: 20%;
}
#f1 img {
	width: 160px;
	margin-top: 7px;
}
#f2 {
    width: 45%;
    padding-left: 20px;
}
#f2 a {
	text-decoration: none;
}
#f2 section, 
#f2 p, 
#f3 section, 
#f3 p {
    margin: 0;
}
#f2 #text-2 {
    font-size: 16px;
    font-family: 'Barlow', sans-serif;
    letter-spacing: 2px;
}
#f2 #text-3, 
#f2 #text-4 {
	font-size: 12px;
    width: 49%;
    float: left;
    margin-top: 6px;
}
#f3 {
    width: 35%;
    text-align: right;
    font-size: 15px;
    font-family: 'Barlow', sans-serif;
    letter-spacing: 2px;
    margin-top: 17px;
}
#f3 a {
	text-decoration: none;
}


.home-banner {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 86%, 0 100%);
}
.second-row {
    padding: 80px 0 120px;
    clip-path: polygon(50% 0%, 100% 7%, 100% 100%, 0 100%, 0% 7%);
}
.what-section {
    padding: 20px 0 80px;
}
.image-tabs ul {
    background: #f1f1f2;
    padding: 10px !important;
    width: 351px;
    margin: 0 auto 55px !important;
}
li.vc_pagination-item:first-child {
    margin-left: 140px !important;
}
li.vc_pagination-item:last-child {
	margin-right: 0 !important;
    margin-left: 155px !important;
}
.image-tabs ul li:first-child a {
    margin-right: 190px !important;
    position: relative;
}
.image-tabs ul li:first-child a:before {
    content: "EXTERNAL";
    font-size: 23px;
    color: #54565a;
    position: absolute;
    top: -14px;
    right: 20px;
    font-family: 'barlow', sans-serif;
    font-weight: 800;
    letter-spacing: 2px;
}
.image-tabs ul li:last-child a:before {
    content: "INTERNAL";
    font-size: 23px;
    color: #54565a;
    position: absolute;
    top: -14px;
    right: 20px;
    font-family: 'barlow', sans-serif;
    font-weight: 800;
    letter-spacing: 2px;
}
li.vc_pagination-item a {
    border: none !important;
    margin: 0 !important;
    position: relative;
}
.vc_pagination-item {
    border: 2px solid #54565a !important;
    border-radius: 100%;
    padding: 2px !important;
    width: 18px !important;
}
li.vc_pagination-item.vc_active a {
    background: #ffd100 !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.project-column {
    display: inline-block;
    width: 100%;
}
.project-column {
    display: inline-block;
    width: 100%;
    padding: 60px 0 30px;
}
.project-container {
    width: 48%;
    float: left;
    margin-right: 4%;
}
.project-container:nth-of-type(2) {
    margin-right: 0;
}
.project-container a {
	text-decoration: none;
}
.project-image {
    height: 270px;
    background-size: cover !important;
    background-position: center center !important;
}
.project-title {
    background: #54565a;
    color: #fff;
    transition: 0.3s ease-in-out;
}
.project-container:hover .project-title, 
.main-project-container:hover .project-title {
	background: #ffd100;
}
.project-title h4 {
    margin: 0;
    padding: 14px 20px 12px;
    font-family: termina, sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 12px;
}
.yellow-btn {
    background: #ffd100;
    color: #fff;
    text-decoration: none;
    font-family: termina, sans-serif;
    font-size: 12px;
    padding: 12px 20px 10px;
    transition: 0.3s ease-in-out;
}
.yellow-btn:hover {
    background: #54565a;
}

.client-row {
    padding: 30px 0 120px;
    clip-path: polygon(50% 0%, 100% 15%, 100% 100%, 0 100%, 0% 15%);
    margin-top: -60px;
}
.client-row h3 {
    color: #fff;
}
.client-row img {

}

.subpage-banner {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 86%, 0 100%);
}
body.page-id-20 #content p {
    font-size: 20px;
}
.cp-block {
    padding: 60px 0 80px;
}
.c-title {
    font-family: 'barlow', sans-serif;
    font-size: 22px;
    letter-spacing: 2px;
}
#email-wrap {
	word-break: break-word;
}
.cp-block .wpb_text_column {
    margin-bottom: 20px !important;
}
#nf-form-2-cont input {
    background: #f1f1f2;
}
#nf-form-2-cont .nf-field-container .field-wrap .nf-element::placeholder { /* WebKit browsers */
    color: #bfbfbf !important;
    opacity: 1;
}
#nf-form-2-cont input#nf-field-10:hover {
    background: #54565a !important;
    color: #fff;
}
.find-row {
    padding: 20px 0 170px;
    clip-path: polygon(50% 0%, 100% 8%, 100% 100%, 0 100%, 0% 8%);
}
.tick-bp {
    list-style: none;
    padding-inline-start: 0;
}
.tick-bp li {
    position: relative;
    font-family: 'barlow', sans-serif;
    font-size: 22px;
    letter-spacing: 2px;
    padding-left: 40px;
    padding-bottom: 10px;
    text-transform: uppercase;
}
.tick-bp li:before {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    background: url(/wp-content/uploads/2023/01/tick.svg);
    width: 23px;
    height: 23px;
    background-repeat: no-repeat;
}
body.blog #primary {
    display: inline-block;
    width: 100%;
    padding-top: 80px;
}
body.blog article {
    width: 48%;
    float: left;
    margin-right: 4%;
    margin-bottom: 37px;
}
body.blog article:nth-of-type(even) {
    margin-right: 0;
}
span.pages {
    float: left;
    padding: 5px 8px;
    border: 1px solid #BFBFBF;
    margin: 2px;
    font-size: 12px;
}
.wp-pagenavi a, .wp-pagenavi span.current {
    text-decoration: none;
    border: 1px solid #BFBFBF;
    padding: 5px 0;
    margin: 2px;
    width: 30px !important;
    display: block;
    float: left;
    text-align: center;
    font-size: 12px;
}
#project-pages {
	clear: both;
    display: table;
    margin: 0 auto;
    text-align: center;
    height: 34px;
}
.sp-banner {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 69%, 0 100%);
    margin-bottom: 60px;
}
body.single-post h4 {
    text-transform: uppercase;
}
body.single-post .pd-text {
    color: #898a8d;
}
.single-post #content ul {
    padding-inline-start: 15px;
    margin-top: 10px;
}
.single-post .wpb_single_image {
    margin-bottom: 30px !important;
}
nav.navigation.post-navigation {
    display: none;
}
.hotspots-map-container, 
.hotspots-image-container {
    background: transparent !important;
}
body.page-id-3 #content ul li {
	position: relative;
	display: table;
	margin: 0 auto;
}
body.page-id-3 #content ul li:before {
    content: "•";
    left: -15px;
    position: absolute;
    top: -3px;
    font-size: 20px;
}
nav.navigation.posts-navigation {
    display: none;
}
.vc_images_carousel .vc_carousel-control .icon-prev:before, 
.vc_images_carousel .vc_carousel-control .icon-next:before {
    color: #fff;
}
.vc_images_carousel .vc_carousel-control.vc_left {
    width: 14px !important;
    left: -15px !important;
}
.vc_images_carousel .vc_carousel-control.vc_right {
    width: 14px !important;
    right: -15px !important;
}
#f3 img {
    margin-top: 10px;
}

@media screen and (max-width: 970px) {
	.site-branding, 
	#content, 
	.site-info {
		width: 100%;
	}
    #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {
        font-size: 13px;
    }
	.home-banner {
	    clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 91%, 0 100%);
	}
	.second-row {
		clip-path: polygon(50% 0%, 100% 5%, 100% 100%, 0 100%, 0% 5%);
	}
	.client-row {
		clip-path: polygon(50% 0%, 100% 10%, 100% 100%, 0 100%, 0% 10%);
	}
	.footer-contact {
		clip-path: polygon(50% 0%, 100% 5%, 100% 100%, 0 100%, 0% 5%);
	}
	footer#colophon {
		clip-path: polygon(50% 0%, 100% 15%, 100% 100%, 0 100%, 0% 15%);
	}
}
@media screen and (max-width: 767px) {
	.mega-menu-toggle, 
	.main-navigation {
	    display: none !important;
	}
	.second-row {
	    clip-path: polygon(50% 0%, 100% 3%, 100% 100%, 0 100%, 0% 3%);
	}
	.client-row {
	    clip-path: polygon(50% 0%, 100% 4%, 100% 100%, 0 100%, 0% 4%);
	}
	.client-row img {
	    height: 50px !important;
	}
	.project-container {
	    width: 100%;
	    float: none;
	    margin-right: 0;
	    margin-bottom: 40px;
	}
	footer#colophon {
	    clip-path: polygon(50% 0%, 100% 10%, 100% 100%, 0 100%, 0% 10%);
	}
	#f1 {
	    width: 100%;
	}
	#f1 img {
	    width: 160px;
	    margin: 0 auto;
	    display: block;
	}
	#f2 {
		width: 50%;
		padding-left: 0;
	}
	#f3 {
		width: 50%;
	}
	.find-row {
		clip-path: polygon(50% 0%, 100% 4%, 100% 100%, 0 100%, 0% 4%);
	}
	.find-row iframe {
	    height: 400px;
	}
	.cp-block h4 {
	    margin-top: 40px;
	}
    h1, 
    h2 {
        font-size: 30px;
    }
}
@media screen and (max-width: 600px) {
	.second-row {
	    padding: 50px 0 120px;
	    clip-path: polygon(50% 0%, 100% 2%, 100% 100%, 0 100%, 0% 2%);
	}
	.footer-contact {
	    clip-path: polygon(50% 0%, 100% 3%, 100% 100%, 0 100%, 0% 3%);
	}
	footer#colophon {
	    clip-path: polygon(50% 0%, 100% 5%, 100% 100%, 0 100%, 0% 5%);
	}
	#f2, 
	#f3 {
	    width: 100%;
	    text-align: center;
	}
}