@charset "UTF-8";

/* RESET */

* {
	padding:0;
	margin:0;
	outline:none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-variant-ligatures: none;
}

/*
* > :last-child { 
	margin-bottom:0;
}*/

*, html {
	scroll-behavior: smooth !important;
}

img {
	width:100%;
	height:auto;
	display:block;
	vertical-align: middle;
}

.clearfix::after {
	content:"";
	clear:both;
	display:table;
}

a, abbr, acronym, address, applet, article, aside, audio, b, blockquote, big, body, center, canvas, caption, cite, code, command, datalist, dd, del, details, dfn, dl, div, dt, 
em, embed, fieldset, figcaption, figure, font, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, keygen, label, legend, li, meter, nav,
object, ol, output, p, pre, progress, q, s, samp, section, small, span, source, strike, strong, sub, sup, table, tbody, tfoot, thead, th, tr, td, video, tt, u, ul, var, a img {
    background:transparent;
	border:0 none;
	outline:none;
	vertical-align:baseline;
	padding:0;
	margin:0;    
}


/* WORDPRESS */

#wpadminbar {
	display:none;
}

.post, .page {
	margin:0 !important;
}


/* GENERAL */

html {
	scroll-behavior:smooth;
	overflow-x:hidden;
	margin-top:0px !important;
}

body {
	text-rendering:optimizeLegibility;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

h1 {
	font:900 130px/130px industry, sans-serif;
	text-transform:uppercase;
	color:#fff;
	margin:0;
}

h1 span {
	color:#2b1d1e;
}

h2 {
	font:600 70px/75px industry, sans-serif;
	color:#673604;
	margin:0 0 60px 0;
}

h3 {
	font:600 50px/55px industry, sans-serif;
	color:#673604;
	margin:0 0 60px 0;
}

h4 {
	font:600 18px/26px industry, sans-serif;
	text-transform:uppercase;
	color:#271c1d;
	margin:0 0 10px 0;
}

h5 {
	font:700 24px/28px industry, sans-serif;
	color:#271c1d;
	margin:0 0 10px 0;
}

h6 {
	font:400 26px/32px trade-gothic-next, sans-serif;
	color:#271c1d;
	display:block;
	margin:0 0 40px;
}

p {
	font:400 20px/28px trade-gothic-next, sans-serif;
	color:#271c1d;
	display:block;
	margin:0 0 40px;
}

p.intro {
	font-size:35px;
	line-height:40px;
}

p strong {
	font-weight:700;
}

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

.button {
	font:600 16px/20px trade-gothic-next, sans-serif;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:#fff;
	background:#fe5900;
	display:inline-block;
	border-radius:10px;
	padding:15px 30px;
	margin:20px 0 40px 0;
	position:relative;
	transition:all 0.3s ease;
}

.button:hover {
	padding:15px 35px;
}

.button span {
  display:inline-block;
  position:relative;
  transition:all 300ms ease-out;
  will-change:transform;
  margin:0 !important;
}

.button:hover span {
  transform:translate3d(-10px, 0, 0);
}

.button img {
  color:#1f1f1f;
  position:absolute;
  width:15px !important;
  right:0px;
  opacity:0;
  top:50% !important;
  transform:translateY(-50%);
  transition:all 300ms ease-out;
}

.button:hover img {
  opacity:1;
  right:-25px;
}

hr {
	width:100%;
	height:40px;
	background:none;
	border:0;
	display:block;
	padding:0;
	margin:0;
}

.photo {
	width:100%;
	border-radius:15px;
}

.container {
	width:1750px;
	margin:0 auto;
	padding:100px 0;
	position:relative;
}

.container-small {
	width:1250px;
	margin:0 auto;
	padding:100px 0;
	position:relative;
}

.list {
	margin:0 0 40px 25px;
}

.list li::marker {
  color:#271c1d;
}

.list li {
	font:400 17px/26px trade-gothic-next, sans-serif;
	text-transform:uppercase;
	color:#271c1d;
	margin:0 0 15px;
}

.two-columns {
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  column-gap:120px;
}

.two-columns-full-width {
  display:grid;
  grid-template-columns:repeat(2, 1fr);
}

.two-columns-full-width .content {
	width:875px;
	padding:100px 100px;
}

.two-columns-full-width .col:nth-child(1) .content {
	float:right;
	padding-left:0;
}

.two-columns-full-width .col:nth-child(2) .content {
	float:left;
	padding-right:0;
}

.three-columns {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  column-gap:100px;
  row-gap:80px;
}

.four-columns {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  column-gap:30px;
  row-gap:80px;
}



.orange-bg {
	background:#c96823;
}

.orange-bg h2 {
	color:#2b1d1e;
}

.orange-bg h4,
.orange-bg p,
.orange-bg .list li,
.orange-bg .list li::marker {
	color:#f0e4d7;
}

.orange-bg .button {
	color:#2b1d1e;
	background:#f0e4d7;
}

.cream-bg {
	background:#f0e5d7;
}

/*-- GSAP --*/

.preloader-headline {
	opacity: 0;
}

.headline {
	opacity: 0;
	transform: translateY(50px);
}

.preloader-text {
	opacity: 0;
	transform: translateY(50px);
}

.text,
.list {
	opacity: 0;
	transform: translateY(50px);
}

.cta {
	opacity: 0;
	transform: scale(0.96);
}

.icon {
	opacity: 0;
}

.partner {
	opacity: 0;
}

.spacer article {
	transform: scaleX(0);
}

.accordion {
	opacity: 0;
}


/* NAVIGATION */

.logo {
	width:260px;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
}

nav {
	width:100%;
	height:100px;
	background:#673604;
	position:relative;
	z-index:999;
}

nav .container {
	height:100%;
	padding:0;
	position:relative;
}

nav ul {
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:right;
	text-align:center;
	list-style:none;
}

nav ul li {
	display:inline-block;
	margin:0;
}

nav ul li a {
	font:600 16px/20px trade-gothic-next, sans-serif;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:#f0e5d7;
	padding:20px 25px;
	transition:all 0.3s ease;
}

nav ul li a:hover {
	color:#fe5900;
}


/* HEADER */

header {
	background:#c96823 url("../images/4h-pattern-header.svg") no-repeat top center / 3500px 1000px;
	position:relative;
}

.home header h1 {
	position:absolute;
	bottom:70px;
	left:0;
}

header {
	height:450px;
}

.home header {
	height:750px;
}

header .container {
	height:100%;
	padding:0;
}

header .container {
	display:flex;
	align-items:center;
}

.home header .video {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	right:0;
	opacity:0;
	overflow:hidden;
	animation:video 1s linear forwards;
}

@keyframes video {
	0% {
		opacity:0;
	}
	100% {
		opacity:1;
	}
}

.home header .video iframe,
.home header .video video {
	width:100vw;
	height:56.25vw;
	min-height:100vh;
	min-width:177.77vh;
	background:#000;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
}


/* HOMEPAGE */

.market-areas-map {
	width:650px;
	display:block;
	margin:-50px auto 0 auto;
}

#featured-projects .two-columns {
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  column-gap:50px;
  row-gap:50px;
}

#featured-projects a {
	width:100%;
	height:400px;
	display:block;
	overflow:hidden;
	border-radius:15px;
	position:relative;
}

#featured-projects a:before {
	content:"";
	width:100%;
	height:100%;
	background:rgba(0, 0, 0, 0.2);
	position:absolute;
	top:0;
	left:0;
	z-index:1;
}

#featured-projects a .thumbnail {
	/*width:101%;
  height:101%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  object-fit:cover;
  object-position:center center;*/

  width:100%;
	height:100%;
	object-fit:cover;
	transform:scale(1);
  transition:transform 0.8s cubic-bezier(.215, .61, .355, 1);
}

#featured-projects a:hover .thumbnail {
	transform: scale(1.1);
  transition-delay: 0s;
}

#featured-projects a h3 {
	font-size:24px;
	line-height:28px;
	color:#fff;
	text-transform:uppercase;
	position:absolute;
	top:30px;
	left:30px;
	z-index:2;
}

#featured-projects a div {
	position:absolute;
	bottom:30px;
	right:30px;
	margin:0;
	z-index:2;
}

.testimonial {
	background:#c96823;
	border-radius:10px;
	padding:50px;
}

.testimonial img {
	width:85px;
	margin:0 0 30px 0;
}

.testimonial h3 {
	font-size:30px;
	line-height:35px;
	color:#f0e5d7;
	margin:0 0 40px 0;
}

.testimonial p {
	color:#f0e5d7;
	margin:0;
}


/* BX SLIDER */

.bx-wrapper {
	position:relative;
	padding:0;
	-moz-box-shadow:none;
	-webkit-box-shadow:none;
	box-shadow:none;
	border:0;
	background:#fff;
}

.bx-wrapper img {
	border-radius:15px;
}

.bx-wrapper .bx-pager {
	text-align:right;
}

.bx-wrapper .bx-pager {
    position:absolute;
    bottom:30px;
    right:30px;
    width:300px;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background:#fff;
}

.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus,
.bx-wrapper .bx-pager.bx-default-pager a:hover {
	background:#fe5800;
}


/* OUR TEAM */

#our-team img {
	border-radius:15px;
	margin:0 0 30px 0;
}

#our-team p {
	font-size:22px;
	color:#673604;
}


/* SERVICES */

.icon {
	width:75px;
	margin:0 0 20px 0 !important;
}

.page-template-services .four-columns {
	column-gap:70px;
	row-gap:60px;
}

.page-template-services .four-columns p {
	margin:0;
}

#services .button {
	margin-top:50px;
}





/* PROJECTS */

#projects h1 {
	/*font:600 70px/75px industry, sans-serif;
	text-transform:none;
	color:#673604;
	margin:0 0 50px 0;*/
	font:900 80px/80px industry, sans-serif;
	text-transform:uppercase;
	color:#2b1d1e;
	margin:0 0 50px 0;
}

.photo-thumbnail {
	width:100%;
	height:300px;
	overflow:hidden;
	border-radius:15px;
	position:relative;
	overflow:hidden;
	margin:0 0 30px 0;
}

.photo-thumbnail img {
	width:100%;
	height:100%;
	object-fit:cover;
	transform:scale(1);
  transition:transform 0.8s cubic-bezier(.215, .61, .355, 1);
}

.photo-thumbnail:hover img {
	transform: scale(1.1);
  transition-delay: 0s;
}

#projects h3 {
	font-size:35px;
	line-height:40px;
	margin:0 0 20px 0;
}

#projects p {
	margin:0 0 40px 0;
}


/* SINGLE POSTS */

#posts .two-columns {
	display:grid;
	grid-template-columns:75% 25%;
	column-gap: 0;
}

#posts .two-columns .col:nth-child(1) {
	padding-right:120px;
}

.posts-photo {
	width:100%;
	height:500px;
	border-radius:15px;
	margin:0 0 40px 0;
}

#posts h1 {
	font:900 80px/80px industry, sans-serif;
	text-transform:uppercase;
	color:#2b1d1e;
	margin:0 0 10px 0;
}

#posts h4 {
	color:#673604;
	margin:0 0 40px 0;
}

#posts .divider {
	position:relative;
	top:-2px;
	margin:0 10px;
}


/* PROJECT GALLERY */

#project-gallery {
	margin-top:80px;
}

#project-gallery h5 {
	font-size:30px;
	margin:0 0 20px 0;
}

#project-gallery .photo {
	width:100%;
	height:auto;
	display:block;
	position:relative;
	overflow:hidden;
	padding:0;
	margin:0;
}


/* SIDEBAR */

#secondary h2 {
	font:700 24px / 28px industry, sans-serif;
	color:#673604;
	margin:0 0 10px 0;
}

#secondary ul {
	list-style:none;
}

#secondary ul li a {
	font:400 17px/26px trade-gothic-next, sans-serif;
	color:#271c1d;
	margin:0 0 15px;
}

#secondary .widget {
	margin:0 0 50px 0;
}

.wp-block-search__label {
	display:none;
}

#secondary #block-2 {
	display:none;
}

#secondary input[type="search"] {
	color:#2b1d1e;
	border:2px solid #f0e5d7;
	border-radius:10px;
	padding:10px 15px;
	margin-right:15px;
}

#secondary button {
	font:600 16px/20px trade-gothic-next, sans-serif;
	letter-spacing:0.05em;
	text-transform:uppercase;
	color:#fff;
	background:#fe5900;
	display:inline-block;
	border:0;
	border-radius:10px;
	padding:15px 30px;
	margin:0;
	position:relative;
	transition:all 0.3s ease;
}


/* FORMS */

div.wpforms-container-full:not(:empty) {
	margin:0 !important;
}

.wpforms-container .wpforms-field,
.wp-core-ui div.wpforms-container .wpforms-field {
	padding:0 !important;
	margin:0 0 20px 0;
} 

div.wpforms-container-full input[type=date],
div.wpforms-container-full input[type=datetime],
div.wpforms-container-full input[type=datetime-local],
div.wpforms-container-full input[type=email], div.wpforms-container-full input[type=month],
div.wpforms-container-full input[type=number], div.wpforms-container-full input[type=password],
div.wpforms-container-full input[type=range], div.wpforms-container-full input[type=search],
div.wpforms-container-full input[type=tel], div.wpforms-container-full input[type=text],
div.wpforms-container-full input[type=time], div.wpforms-container-full input[type=url],
div.wpforms-container-full input[type=week], div.wpforms-container-full select,
div.wpforms-container-full textarea, .wp-core-ui div.wpforms-container-full input[type=date],
.wp-core-ui div.wpforms-container-full input[type=datetime],
.wp-core-ui div.wpforms-container-full input[type=datetime-local],
.wp-core-ui div.wpforms-container-full input[type=email],
.wp-core-ui div.wpforms-container-full input[type=month],
.wp-core-ui div.wpforms-container-full input[type=number],
.wp-core-ui div.wpforms-container-full input[type=password],
.wp-core-ui div.wpforms-container-full input[type=range],
.wp-core-ui div.wpforms-container-full input[type=search],
.wp-core-ui div.wpforms-container-full input[type=tel],
.wp-core-ui div.wpforms-container-full input[type=text],
.wp-core-ui div.wpforms-container-full input[type=time],
.wp-core-ui div.wpforms-container-full input[type=url],
.wp-core-ui div.wpforms-container-full input[type=week],
.wp-core-ui div.wpforms-container-full select,
.wp-core-ui div.wpforms-container-full textarea,
div.wpforms-container-full .wpforms-field-file-upload .wpforms-uploader {
	height:auto !important;
	font:400 18px/26px trade-gothic-next, sans-serif;
	color:#271c1d;
	display:block;
	border:2px solid #ccc !important;
	border-radius:0 !important;
	padding:15px 20px !important
}

.wpforms-container .wpforms-form .wpforms-field-label {

	font:600 16px/24px industry, sans-serif;
	text-transform:uppercase;
	color:#271c1d;
	margin:0 0 10px 0;

}


div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
	height:auto !important;
	font:600 16px/20px trade-gothic-next, sans-serif !important;
	letter-spacing:0.05em !important;
	text-transform:uppercase !important;
	color:#fff !important;
	background:#fe5900 !important;
	display:inline-block !important;
	border-radius:10px !important;
	padding:15px 30px !important;
	margin:0 0 40px 0 !important;
	transition:all 0.3s ease !important;
}

div.wpforms-container-full input[type=submit]:hover,
div.wpforms-container-full button[type=submit]:hover {
	height:auto !important;
	font:600 16px/20px trade-gothic-next, sans-serif !important;
	letter-spacing:0.05em !important;
	text-transform:uppercase !important;
	color:#fff !important;
	background:#fe5900 !important;
	display:inline-block !important;
	border-radius:10px !important;
	padding:15px 30px !important;
	margin:0 0 40px 0 !important;
	transition:all 0.3s ease !important;
}


/* CTA */

#cta .two-columns .col {
	position:relative;
}

#cta h2 {
	font:900 80px/80px industry, sans-serif;
	text-transform:uppercase;

	margin:0 0 40px 0;
}

#cta img {
	width:500px;
	position:absolute;
	bottom:-100px;
	left:100px;
}


/* FOOTER */

footer {
	background:#2b1d1e url("../images/4h-pattern.svg") no-repeat top center / 3500px 1000px;
}

footer .container {
	padding-top:100px;
	padding-bottom:20px;
}

footer p {
	font-size:22px;
	line-height:34px;
	color:#f0e5d7;
}

footer img {
	width:600px;
	float:right;
	margin:0 0 50px 0;
}

footer .copyright {
	font-size:16px;
	text-align:right;
}