@font-face{
  font-family:"NHaasGroteskDSW01-65Md";
  src:url("/fonts/825424/83d6b8f7-bd47-4e8d-a359-27b74d3100f6.eot?#iefix");
  src:url("/fonts/825424/83d6b8f7-bd47-4e8d-a359-27b74d3100f6.eot?#iefix") format("eot"),
    url("/fonts/825424/75e1af8f-1a4c-475a-8b53-f27e52822b6b.woff2") format("woff2"),
    url("/fonts/825424/2ba6fbd5-9c17-4733-af15-f49fbecc5c15.woff") format("woff"),
    url("/fonts/825424/7dcf6c37-4fb4-4211-9808-6a39bfa89e0d.ttf") format("truetype");
}

@font-face{
  font-family:"Neue Haas Grotesk Disp W01_55R";
  src:url("/fonts/5549029/af92ac3b-2fbd-40a2-bfff-e1bbbc25af20.eot?#iefix");
  src:url("/fonts/5549029/af92ac3b-2fbd-40a2-bfff-e1bbbc25af20.eot?#iefix") format("eot"),
    url("/fonts/5549029/6e329389-9c44-48b0-8291-f918840fe862.woff2") format("woff2"),
    url("/fonts/5549029/dc6a6646-e0ac-4deb-b3c0-19e5dc30bf6a.woff") format("woff"),
    url("/fonts/5549029/b9a6a687-9455-4b53-af55-4fcad8d9572d.ttf") format("truetype");
}



body {
	font-family:"Neue Haas Grotesk Disp W01_55R";
	font-weight:400;
	overflow-x: hidden;
	padding:0;
	margin:0;
	font-size:16px;
	letter-spacing:0.5px;
}

strong {
	font-family:"NHaasGroteskDSW01-65Md";
	font-weight:normal !important;
	}

.red {
	color: rgb(227,31,38);
}

hr {
	margin-top: 40px;
	margin-bottom: 40px;
	border: 0;
	border-top: rgba(0, 0, 0, 0.80) 1px solid;
	}

h1 {
	font-size:4.5em;
	margin:0 0 30px 0;
	font-weight:normal !important;
	color: #8a8c8e;
	line-height:90%;
	font-family:"Neue Haas Grotesk Disp W01_55R";
}

h1 strong {
	color: #58595b;
	font-family:"Neue Haas Grotesk Disp W01_55R";
	font-weight:normal !important;
}

h2 {
	font-size:2.5em;
	margin:0 0 30px 0;
	color: #58595b;
	line-height:110%;
	font-family:"Neue Haas Grotesk Disp W01_55R";
	font-weight:normal !important;
}

body.our-work-entry h2 {
	font-family:"NHaasGroteskDSW01-65Md" !important;
	font-weight:normal !important;
}

h3 {
	font-size:20px;
	line-height:145%;
	margin:0 0 30px 0;
	font-weight:normal !important;
	color: #58595b;
}

h4 {
	font-size:18px;
	line-height:110%;
	margin:0 0 30px 0;
	font-weight:normal !important;
	color: #58595b;
}

#content {
	margin-bottom:40px;
}

#content a {
	color: rgb(227,31,38);
}

#content a:hover, #content a:focus {
	color: #58595b;
	text-decoration:none;
}


/*  HEADER STYLING  */

.homepage-image-row-image {
    height:35vh !important;
}

.header-banner-image-container {
    height:65vh !important;
	margin-bottom:40px;
}

.navbar {
	margin-bottom:0;
}

.navbar-default {
	-webkit-box-shadow: none none !important;
	-moz-box-shadow: none none !important;
	box-shadow: none !important;
	background-image:none !important;
	background: none;
	border:none;
}

.header-menu-container .container {
	padding:15px 0 0 0;
}

.navbar-brand {
	display:block;
	padding-top:0;
  padding-bottom:0;
	height:auto;
}

.navbar-brand img {
	width:200px;
	height:88px;
}

.navbar-header {
	padding-bottom:20px;
}

/*  NAV STYLING  */


.navbar-collapse {
    float: right;
}

.navbar-nav {
	display:block;
	width:100% !important;
	padding-top:49px;
}

.navbar-default .navbar-nav > li {
}

.navbar-default .navbar-nav > li > a {
	color: #8a8c8e;
	padding:15px 20px;
}

.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a.active, .navbar-default .navbar-nav > li.active > a  {
	color: #000000;
	background:none !important;
	background-image:none !important;
	box-shadow:none !important;
}

.navbar-toggle {
	border:none !important;
	background:none !important;
	padding: 0 !important;
	margin-right: 0 !important;
	border-radius:0 !important;
}

.icon-bar {
	width:28px !important;
	height:2px !important;
	border-radius:0 !important;
	background-color: rgba(0,0,0,0.80) !important;
}

.navbar-toggle:hover .icon-bar, .navbar-toggle:active .icon-bar {
	background-color: rgb(227,31,38) !important;
}

.navbar-toggle .icon-bar + .icon-bar {
	margin-top:7px;
}

/*  HOMEPAGE STYLING  */

#content .container .text-row {
	padding:0 0 60px 0;
}

/*  ABOUT US STYLING  */


body.about-us #content .container .content-row:last-of-type {
	padding:50px 0 60px 0;
}

body.about-us #content .container .content-row h2 {
	color: rgb(227,31,38);
	border-top: rgb(227,31,38) 1px solid;
	padding:10px 0 15px 0;
	margin:0;
	font-size:24px;
	font-family:"NHaasGroteskDSW01-65Md";
}

/*  CONTACT STYLING  */

.street-address, .phone-number, .email-address {
	display:block !important;
	margin-bottom:13px;
}

body.contact-us #content .row {
	margin-bottom:50px;
}

body.contact-us h2.red p {
	margin-bottom:0;
}

.contact-form-row {
	padding:20px 0;
	border-top:rgb(227,31,38) 1px solid;
	margin-left:0;
	margin-right:0;
}

body.contact-us h2.red {
	margin-bottom:20px !important;
	font-size:2.0em !important;
}

.form input[type="text"], .form input[type="email"], .form textarea {
	border:#e7e7e7 1px solid;
	padding:8px 12px;
	width:100%;
	box-sizing:border-box;
	font-size:18px;
	font-family:"Neue Haas Grotesk Disp W01_55R";
	-webkit-appearance: none;
    border-radius: 0;
}

.form input[type="text"]:focus, .form input[type="email"]:focus, .form textarea:focus {
	outline-color: transparent;
	outline-style: none;
}

.form .form__row{
	margin-bottom:20px !important;
}

.form label{
	display:none;
}

.form .form__note {
	display:none;
}

.form button {
	background:none;
	border:none;
	padding:0;
	color:rgb(227,31,38);
	font-family:"NHaasGroteskDSW01-65Md";
	font-size:18px;
	float:right;
	-webkit-appearance: none;
    border-radius: 0;
}

.form button:hover, .form button:focus {
	color:#58595b;
}

.faceboon-icon {width:40px; height:40px; margin-left:10px; margin-top:-4px;}

/*  PROJECT STYLING  */

.project-image-container {
    min-height: 35vh  ;
    margin-bottom: 15px;
}

.project-image-row > div > a > div,
.project-image-row > div > a {
  height:100%;
}

.project-image-row > div{
  margin-bottom:30px;
}

.form-of {
  opacity: 0;
}

.form-of--shown {
  opacity: 1;
  -webkit-transition: opacity 0.9s ease-in;
    -moz-transition: opacity 0.9s ease-in;
    transition: opacity 0.9s ease-in;
}

.row.is-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.row.is-flex > [class*='col-'] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}


body.contact-us #content {padding-top:30px;}


.project-title {
	margin-bottom:0;
	font-family:"NHaasGroteskDSW01-65Md";
	line-height:135%;
	margin-top:15px;
}

.project-address {
	margin-bottom:0;
	line-height:135%;
}

.project-container {
	margin-bottom:40px;
	position:relative;
}

.project-image-container div {
    content: '';
    width: 100%;
    height: 100%;
}

.project-image-container div:hover {
    background: rgba(0,0,0,.3);
	transition:all 0.2s;
}

.residential-container, .commercial-and-industrial-container {
	margin-bottom:20px;
}

.residential-heading, .commercial-and-industrial-heading {
	border-top: rgba(0, 0, 0, 0.80) 1px solid;
	padding:15px 0;
	margin:0;
}

body.our-work-entry .heading-row h2 {
	margin-bottom:15px;
}

body.our-work-entry #content .container {
	margin-bottom:30px;
}

body.our-work-entry .project-image-container {
	margin-bottom:30px;
}

body.our-work-entry #content .container .text-row {
	padding:30px 0 30px 0;
}

body.error #content > .container,
body.unsupported-browser-page #content > .container {
  margin-top: 40px;
}

/* FOOTER STYLING  */

.footer-brand-img {
	width:300px;
	height:23px;
}

#foot-el .container {
	padding:20px 15px 30px 15px;
	border-top: rgba(0,0,0,0.80) 1px solid;
}

.tagline {
	text-align:right;
	font-size:20px;
	color: rgb(0,0,0);
}

.footer-row-toplink-container {
	text-align:right;
	padding:30px 0;
}

.toplink {
	color: rgb(227,31,38);
	font-size:16px;
}

.toplink:hover {
	color: #58595b;
	text-decoration:none;
}

@media screen and (max-width:576px) {

	h1 {
	font-size:3.6em;
	}

	h3 {
    font-size: 18px;
	}
}

@media screen and (min-width:768px) {

	.residential-container, .commercial-and-industrial-container {
		margin-left:-15px;
		margin-right:-15px;
	}
}

@media screen and (max-width:768px) {

	h2 {
	font-size:2.2em;
	}

	.navbar-brand img {
		width:180px;
		height:79px;
	}

	.navbar-default .navbar-brand {
		padding:0;
	}

	.tagline {
		margin-top:20px;
	}

	.footer-row-toplink-container {
		text-align:left;
	}

	.navbar-collapse {
		float:none;
		padding:0;
		border:none;
		margin-bottom:15px
	}

	.navbar-collapse .navbar-nav > li.active > a {
		color:#58595b !important;
	}

	.navbar-nav {
		margin:0 !important;
		width:100%;
		padding:0;
	}

	.nav {

	}

	.nav > li {
		width:100%;
		padding:0;
	}

	.nav > li:last-child {
		border-bottom:none;
	}

	.nav > li > a {
		padding:20px 0 !important;
		background-image:none !important;
		text-align:center !important;
		display:block !important;
		width:100% !important;
		background-color:rgb(227,31,38);
		color:#ffffff !important;
		font-size:20px;
	}

	.nav > li > a:hover, .nav > li > a:focus {
		color:rgb(227,31,38) !important;
		background-color: #ffffff !important;
	}

	.nav > li:last-child > a {
		padding-bottom:40px !important;
	}

	.nav > li:first-child > a {
		padding-top:40px !important;
	}

	body.our-work-entry .project-image-container {
		margin-bottom:15px;
	}

	#foot-el .container {
	padding:20px 0 30px 0;
	}

	#content .container .text-row {
		padding-bottom:0;
	}

	.mixed-row .image-column {
		margin-bottom: 40px;
	}

	.toplink-col-wrapper, .disclaimer-area-container {
		text-align: right;
	}

	body.about-us .content-row .left-column {
		margin-bottom:40px;
	}

	body.about-us #content .container .content-row:last-of-type {
		padding:40px 0;
	}

	.commercial-and-industrial-container, .residential-container {
		padding-left:0;
		padding-right:0;
	}

}

@media screen and (max-width:992px) {

	.homepage-image-row-image-container {
		margin:0 0 30px 0 !important;
	}

	.google-maps-container {
		margin-bottom:40px;
	}

}


@media screen and (min-width:1200px) {

	h1 {font-size:6em;}

}


/*Unsupported Browser Styling*/

body.unsupported-browser-page .navbar-collapse {display:none !important;}
body.unsupported-browser-page footer {display:none !important;}
body.unsupported-browser-page header {display:none !important;}


