/* Resets */

* {
	margin: 0;
	padding: 0;
}

a img {
	border: 0px none;
}

a {
	text-decoration: none;
	color: #772D00;
	font-weight: 400;
}

ol, li {
	color: #333;
}

hr {
	border-bottom: 1px solid #333333;
	margin: 20px 0;
	border-top: 0;
	border-left: 0;
}

.clear {
	clear: both;
	line-height: 0;
	font-size: 0;
	height: 0;
	display: block;
	float: none !important;
}

/* Type */

p, h1, h2, h3, h4, h5, h6 {
	color: #333333;
	font-family: "Bitter", Arial, Helvetica, sans-serif;
	font-weight: 400;
	margin-bottom: 10px;
}

h1 {
	font-size: 27px; 
	font-weight:400; 
}

h2 {
	font-size: 26px;
}
h3 {
	font-size: 24px;
}
h4 {
	font-size: 22px;
}
h5 {
	font-size: 20px;
}
h6 {
	font-size: 16px; font-weight: bold; margin-bottom: 30px; }
p { font-size:  16px; }

/* #Site Styles
==================================================
*/

body {
	color: #333;
	font-family: "Bitter", Arial, Helvetica, sans-serif;
}

section.grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	/* grid-template-rows: repeat(5, 1fr); */
	grid-column-gap: 25px;
	grid-row-gap: 15px;
}

.grid-col img {
	max-width:100%;
	margin-bottom:10px;
}

.grid-col h4 {
	font-weight:600;
}

#mainView {
	background: #ffffff url('assets/images/background.webp') no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	position: relative;
	z-index: 100;
}

#page {
	background: #fff;
	max-width: 1050px;
	width: 94%;
	margin: 0 auto;
}

.menuButton {
	display: none;
	position: absolute;
	right: 5%;
	top: 20px;
	z-index: 110;
	color: #823700;
	font-weight: bold;
	font-size: 16px;
	width:45px;
}

.g-recaptcha {
	z-index: 100;
	position: relative;
	bottom: 490px;
	left: 280px;
	width: 265px;
}

#phoneNav {
	background: none repeat scroll 0 0 #333333;
	box-shadow: 0 0 5px 5px #222222 inset;
	color: #FFFFFF;
	font-size: 15px;
	height: 100%;
	overflow-y: auto;
	position: fixed;
	top: 0;
	right: 0;
	width: 80%;
}

#phoneNav ul {
	border-bottom: 1px solid #4D4D4D;
	border-top: 1px solid #1A1A1A;
	display: block;
	margin: 0 0 15px;
	padding: 0;
}

#phoneNav ul li {
	border-bottom: 1px solid #1A1A1A;
	border-top: 1px solid #4D4D4D;
	display: block;
	line-height: 48px;
	margin: 0;
	list-style-type: none;
}

#phoneNav ul li:hover {
	box-shadow: 0 0 15px 3px #222222 inset;
}

#phoneNav ul li a {
	color: #FFFFFF;
	display: block;
	padding: 0 15px;
	text-decoration: none;
}

#header {
	width: 100%;
	background: #ffffff;
	z-index: 10;
	position: relative;
}

#header .leftColumn,
#header .middleColumn {
	float: left;
	margin-top: 20px;
	margin-bottom: 20px;
}

#header .leftColumn {
	width: 10%;
	margin-left: 5%;
}

#header .middleColumn {
	margin: 20px 10.5% 0 12.5%;
	width: 45%;
}

#header .rightColumn {
	width: 13%;
	margin-top: 30px;
	margin-bottom: 0;
	float: left;
}

#header .leftColumn img,
#header .middleColumn img,
#header .rightColumn img {
	width: 100%;
	height: auto;
}

#navigation {
	background: none repeat scroll 0 0 #9C3C02;
	box-shadow: 0 5px 5px -2px rgba(0, 0, 0, 0.75) inset;
	padding: 15px;
	z-index: 5;
}

#navigation * {
	list-style-type: none;
}

#navigation {
	display: flex;
	gap: 28px;
}

#navigation li.menu-item-has-children {
	position: relative;
}

#navigation li.menu-item-has-children:hover > .sub-menu {
	display:flex;
	flex-direction: column;
	min-width: 240px;
}

#navigation li.menu-item-has-children .sub-menu a {
	padding: 12px;
	display: flex;
}

@media screen and (min-width: 760px) and (max-width: 1250px) {
	#navigation {
		gap: 14px;
		padding: 15px 8px;
	}
}

.img-responsive {
	max-width: 100%;
}

#navigation a {
	color: #ffffff;
	font-size: 16px;
}

#navigation ul {
	display: none;
	position: absolute;
	top: 20px;
	left: -2px;
	z-index: 20;
	background: #9c3c02;
	width: 100%;
	/* line-height: 30px; */
}

#navigation ul li ul li:first-child, 
#navigation ul li ul li:last-child {
	padding: 0 14px;
}

/*
#navigation ul li ul li:first-child {
	border-bottom: 2px solid #bd4a03;
}
*/

#navigation ul li ul li {
	float: none;
}

.featuredImage {
	width: 100%;
	height: auto;
}

.featuredImage img {
	width: 100%;
	height: 100%;
}

#mainContent .content {
	padding: 20px;
}

.bg {
	left: 0;
	position: absolute;
	top: 0;
}

.content li {
	margin-left: 30px;
	margin-bottom: 10px;
}

.content ul ul {
	margin-left: 20px;
}

.size-full {
	height: auto;
	width: 100%;
	margin: 10px 0 0;
}

.banner {
	width: 100%;
	margin-bottom: 20px;
	overflow: hidden;
	position: relative;
}

.banner img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.contactForm {
	float: left;
	width: 70%;
}

.contact {
	float: left;
	width: 30%;
}

.inputRow
{
	width: 100%;
	margin-bottom: 10px;
}

.contactLeft
{
	width: 39%;
	float: left;
}

.contactRight
{
	width: 49%;
	float: left;
	margin-left: 2%;
}

.inputRow textarea
{
	width: 100%;
	height: 200px
}

input.wpcf7-text {
	margin-top: 5px;
	border-style: 2px solid #D8D8D8;
	height: 30px;
	/* width: 100%; */
}

input[type="submit"].wpcf7-submit {
	background: #772d00;
	padding: 10px 18px;
	border: 0px none;
	color: #fff;
	cursor: pointer;
}

input[type="submit"].wpcf7-submit:hover {
	background: #444;
}

.inputRow input
{
	border-style: 1px solid #D8D8D8;
	height: 30px;
	width: 100%;
}

.submitRow  {
	width: 100%;
}

.submitRow  input {
	width: 100%;
	border: 1px solid #D8D8D8;
	height: 30px;
	cursor: pointer;
}

#footer {
	width: 96%;
	padding:2%;
	background: #772d00;
}

#footer a,
#footer p {
	color: #fff;
}

#footer .address,
#footer .pages,
#footer .contact {
	width: 30%;
	float: left;
}

#footer .pages li {
	list-style-type: none;
}

#footer .pages {
	margin: 0 3%;
}

@media only screen and (min-width: 960px) and (max-width: 1150px) {
	
	#navigation ul li {
		padding: 0 7px;
		font-size: 10px;
	}

	
	#navigation ul {
		margin: 0 auto;
		width: 94%;
	}

}

@media only screen and (max-width: 1024px) {

	.g-recaptcha {
		bottom: 445px;
		left: 210px;
	}

}

@media only screen and (max-width: 960px) {

	.g-recaptcha {
		bottom: 5px;
		left: 0px;
	}
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
	
	#navigation {
		display: none;
	}
	
	.menuButton {
		display: block;
	}

	.rightColumn {
		display: none;
	}
	
	.nextButton {
		bottom: 55px;
		position: absolute;
		right: 14px;
		width: 25px;
		height: 25px;
	}
	
	.prevButton {
		bottom: 55px;
		position: absolute;
		right: 50px;
		width: 25px;
		height: 25px;
	}
	
	.g-recaptcha {
		bottom: 370px;
		left: 317px;
	}
	
}

@media only screen and (max-width: 767px) {
	
	#page {
		width: 100%;
	}

	#navigation {
		display: none;
	}
	
	.menuButton {
		display: block;
	}
	
	#header .middleColumn {
		margin: 15px 10.5% 0 12.5%;
	}
	
	.featuredImage {
		height: auto;
	}
	
	#mainContent .content {
		/* width: 96%;
		margin: 2%;
		float: none;
		min-height: 100px; */
	}
	
	.innerTagLine p {
		font-size: 16px;
	}
	
	.innerTagLine h1 {
		font-size: 20px;
	}
	
	#mainContent .content h1 {
		font-size: 16px;
	}
	
	#mainContent .content p {
		/* font-size: 10px; */
	}
	
	#mainContent .content .projectText {
		min-height: 10px;
		padding: 0px;
	}
	
	.nextButton {
		width: 25px;
		height: 25px;
		right: 0px;
	}
	
	.prevButton {
		width: 25px;
		height: 25px;
		right: 30px;
	}
	
	
	.leftColumn,
	.rightColumn {
		float: none;
		margin: 20px auto;
		width: 90%;
	}

	.rightColumn {
		display:none;
	}
	
	.contactForm {
		float: none;
		width: 100%;
	}
	
	.contact {
		float: none;
		width: 100%;
	}
	
	.contactLeft
	{
		width: 100%;
		float: none;
	}
	
	.contactRight
	{
		width: 100%;
		float: none;
		margin-left: 0%;
	}
	
	#footer .address,
	#footer .pages,
	#footer .contact {
		width: 100%;
		float: none;
		margin-bottom: 20px;
	}
	
	#footer .pages {
		margin: 0%;
	}
	
}

@media only screen and (min-width: 480px) and (max-width: 767px) {

}

@media only screen and (max-width: 420px) {

	.g-recaptcha {
		bottom: 5px;
		left: 30px;
	}
}

@media only screen and (max-width: 365px) {

	.g-recaptcha {
    bottom: 5px;
    left: 10px;
}