@charset "UTF-8";
/* Web Solutions 4.0 Compatible */

/* addon classes */
.twoCol, .threeCol, .resCol{
-webkit-column-rule:1px outset rgba(0,0,0,.15);
   -moz-column-rule:1px outset rgba(0,0,0,.15);
        column-rule:1px outset rgba(0,0,0,.15);
-webkit-columns: auto;
   -moz-columns: auto;
        columns: auto;
-webkit-column-width: 13em;
   -moz-column-width: 13em;
        column-width: 13em;}
/* text */
h1{font-size:1.6em; margin-bottom: 1em; border-bottom: 5px solid #C0C0C0; text-transform: uppercase; font-weight:600; padding-bottom: 0.5rem;}
h2{font-size:1.5em}
h3{font-size:1.4em}
h4, th{font-size:1.3em}
h5 {font-size:1.2em}

/* list */
.content ul li {padding-left: 1.5em;}
.content ul li:before {left: 0.25em}
/* forms */
.formTable, .formTable table{width:100%;display: block}
.formTable tbody{display: block}
.formTable tr{display: block}
.formTable td{display: block;width:100%;padding: 0}
.formTable input[type="text"], 
.formTable input[type="password"], 
.formTable input[type="tel"], 
.formTable input[type="number"], 
.formTable input[type="email"], 
.formTable input[type="url"], 
.formTable input[type="file"], 
.formTable textarea{margin-bottom:1em}
button, .content .button, .button, input[type="button"], input[type="submit"], input[type="reset"] {padding:0.4em 1.5em}

body>header {position: relative}
header #ancillary  .wrap > em, header #ancillary  .wrap > span em {display: none}
header #ancillary {position: absolute; top: calc(50% - 1.25em); color: #6C953C; right:1em; transform: translateY(-50%)}
header #ancillary  .wrap a {float: right; font-weight: 600}
#ancillary  .wrap > span {float: right}
header > .wrap {float: left; width:50%}
header #brand {display: block; width: 100%; padding: 1em}
header #brand img {display: block; max-width: 100%; height: auto}


/* nav */
#navContainer{position: fixed;left: 100%;top:0;bottom:0;width: 75%; height: 100%; padding-bottom: 4em; overflow: auto; background-color:#6C953C;z-index:999;-webkit-transition: left 200ms ease;transition: left 200ms ease}
.slideNav #navContainer{left: 25%;box-shadow: 0 0 100px 100px rgba(0,0,0,0.75); border-left: 1px solid #333}
#navContainer nav{display: inline;border-bottom: 1px solid rgba(255,255,255,0.15);}
#navContainer ul{display: block;float: left;width: 100%;margin: 0;padding-left: 0}
#navContainer li{display:block;float: left;width: 100%; position: relative; border-bottom: 1px solid rgba(0,0,0,0.15); border-top: 1px solid rgba(255,255,255,0.15);}
#navContainer li li{border: 0}
#navContainer a, #navContainer .menu{color:#fff;line-height:2.5em;padding:0 1rem;display:block;float: left;width: 100%}
#navContainer a:hover,#navContainer .menu:hover,
#navContainer nav>ul>li.on>a{background-color:rgba(0,0,0,0.5);color: #fff; text-shadow: 0 1px 0 rgba(43,46,41,0.4)}
#navContainer li.open{background-color: rgba(0,0,0,0.25)}
#navContainer li>span{color: #000;background-color:#fff;opacity: .1; border-radius: 50%; display: block;position: absolute;right: .25em;top: .25em;line-height: 1.5em;width:1.5em;text-align: center;-webkit-transition: transform .2s ease;transition: transform .2s ease}
#navContainer li>span:hover, #navContainer li.on>span{opacity: .3}
#navContainer li>span:before{content: "\25B8"}
#navContainer li.open>span{transform: rotate(90deg)}
#navContainer ul ul {font-size: .8em; padding: 0.5em 0}
#navContainer ul ul a {padding: 0.5em 0.5em 0.5em 2rem; line-height: 120%}
#navContainer .menu {color: #2B2D29; background: #fff; font-weight: 600}


#mobilenav{background-image: linear-gradient(-180deg, #6C953C 52%, #5D8233 53%); border-bottom:1px solid #2B2E29; background-color: #6C953C;float: left;width: 100%;text-align: center;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;}
#mobilenav a, #mobilenav span{color: #fff;line-height: 2.5em;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;}
#mobilenav a:hover, #mobilenav span:hover{color: #fff;background-color:#5D8233}
#mobilenav * {text-shadow: 0 1px 0 rgba(43,46,41,0.4); border-right: 1px solid rgba(0,0,0,0.25); border-left: 1px solid rgba(255,255,255,0.25)}
#mobilenav *:first-child {border-left: 0}
#mobilenav *:last-child {border-right: 0}
.hamburger{height: 2em;width: 2em;display: block;position: fixed;right: 0;top:0;opacity: .5;background: url(/images/m/hamburger.svg);background-size: cover;z-index:1;opacity: 0}
.hamburger.on{opacity: .3}


.contact-cta {display: none;}

/* content */
#content .photoright{width: 100%; max-width:100%; height:auto; margin:1em 0}
#content .photoleft{width: 100%; max-width:100%; height:auto; margin:1em 0}
.pageHeader {display: none}
.content p {line-height: 150%}
.highlight > *, .content .highlight > * {padding: 0 1rem}
.home main > section, .home main > div {padding: 3em 1em}
.home #environmental-services .tabs a {display: block; position: relative; z-index: 1;font-size: 1.125em; font-weight:700; color:#6C953C; padding: 0.75em 0.5em; border-bottom: 1px solid #DEDEDE}
.home #environmental-services .tabs a:first-child {border-top: 1px solid transparent}
.home #environmental-services .tabs a:last-child {border-bottom: 1px solid transparent}
.home #environmental-services .tabs a:before {content:"\203A"; float: right; line-height: 1.5rem; font-size: 1.375em}
.home #environmental-services .info {display: none}
#markets-served a {padding-bottom: 100%; margin: 1em auto; width:100%}
   .interior #markets-served {border: 0}
.home #markets-served a span:after {content:"\203A"; margin-left: 0.25em; display: inline-block; vertical-align: text-bottom}
.home #markets-served a:after {background-position: center bottom; opacity: 1}
.home #blog {margin-top: 4em}
.content #services li, .content #services li:nth-child(2n+2) {width: 100%; margin: 1em 0 0}

input[type="file"] {width: 100%}
td {padding-left:  0 !important}

/* Landing */
.landingFoot .left {width: 100%;clear: both;padding: 1em;text-align: center;}
.landingFoot .right {width: 100%;float: left;clear: both;}
.landing #content h1 {text-align: center;}
.wrap.landing h1 span {display: block;margin-top: 1em;}
.landingExtra ul {clear: both;}
.landing #content .photoright, .landing #content .photoleft {clear: both;margin: 1em 0;padding: 0;}
.landingExtra ul li:before {left: -.7em;}
.landing .row:last-child {margin-bottom: 0;}

/* main */
.interior main{padding: 1.75em 1em}

/* footer */
footer {text-align: center}
footer .flex .addresses {
    justify-content: space-evenly;
}
footer .social {margin-top:1em;}
footer .social a:hover {opacity: 0.5; filter: grayscale(1)}
footer .copyright {padding-top: 1em; border-top:2px solid rgba(255,255,255,0.125)}body>footer .copyright {font-size: 0.8em}
body>footer nav {display: block; margin-bottom: 1em}
body>footer nav span {display: none}
body>footer nav a+span {display: inline-block}
body>footer .wrap{
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}
#web-solutions-exposure{
	-webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
}
body>footer .wrap nav a+span:before {content: "|"; margin: 0 0.5em}
body>footer a.tel{color:#C0C0C0; font-weight: 400; cursor: text}

/* 580px */
@media screen and (max-width: 36.25em) {
	#virtual-assessment .wrap {
		flex-direction: column;
	}
	#virtual-assessment .text-container {
		padding-bottom: 11em;
		text-align: center;
	}
	#virtual-assessment .image-container {
		margin-top: -8em;
	}
	#virtual-assessment .image-container img {
		max-height: 18.75rem;
		width: auto;
	}
}