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

body {padding-top: 7.250rem}
#tinymce {padding-top: 0}

/* addon classes */
.twoCol, .threeCol, .resCol{
-webkit-column-rule:0;
   -moz-column-rule:0;
        column-rule:0;
}

.twoCol {-webkit-columns:2;-moz-columns:2;columns:2;}
.threeCol {-webkit-columns:3;-moz-columns:3;columns:3;}
.resCol {
	-webkit-columns: auto;-moz-columns: auto;columns: auto;
	-webkit-column-width: 13em;-moz-column-width: 13em;column-width: 13em;
}

/* text */
h1{font-size:1.938em; margin-bottom: 1em; border-bottom: 5px solid #C0C0C0; text-transform: uppercase; font-weight:600; padding-bottom: 0.5rem;}
h2{font-size:1.750em}
h3{font-size:1.375em}
h4, th{font-size:1.125em}
h5 {font-size:1.1em}

/* forms */
.formTable td{width:50%}
.formTable td{padding:0 0 .5em .5em}
.formTable td:first-child{padding:0 .5em .5em 0}
.formTable td[colspan="2"]{padding-right:0}
.formTable.formLoose,.formTable.formLoose td{width:auto}
#content label, #content [type="file"] {cursor: pointer}

/* content */
.photoright{margin:0 0 2em 2em;}
.photoleft{margin:0 2em 2em 0;}

/* HEADER ------------------------------*/
body>header{position: fixed; left:0; top:0; width: 100%; border-bottom: 1px solid #9B9B9B; z-index: 99; overflow: visible}
.management>header{top:35px}
body>header>.wrap {height: 5rem; padding: 0 1rem; overflow: visible}
#brand {display: inline-block; height: 100%; vertical-align: middle}
#brand:hover {opacity: 0.5}
#brand:before {height: 100%; content: ""; display: inline-block; vertical-align: middle}
#brand img {display: inline-block; vertical-align: middle}


/* NAV ------------------------------ */
nav ul{margin: 0}
#navContainer {display: inline-block; overflow: visible; margin-top: 1.25rem; float: right;}
#mainnav{display: inline-block; float: right; overflow:visible}
#mainnav ul{text-align:center; float: right; overflow:visible;margin: 0; z-index: 12; padding: 0;}
#mainnav li{display:inline-block; position:relative}
#mainnav a{line-height:2.5rem; border-radius: 2px; font-size: 1.125rem; padding:0 1em; display:inline-block;color:#6C953C;text-decoration:none;}
#mainnav>ul>li{margin-left: 1em;}
#mainnav>ul>li:hover>a, #mainnav>ul>li:active>a{background:#F6A623;color:#fff}
#mainnav>ul>li.on>a,
#mainnav>ul>li.on:hover>a{background:#6C953C;color:#fff}
/*dhtml*/
#mainnav li ul{z-index:1;width:14.5rem; top:calc(100% - 2px); border-radius: 2px; padding:0.5em 0;background:#F6A623;position:absolute;overflow:auto;height:auto}
#mainnav>ul>li:last-child ul{right:0}
#mainnav li ul li{width:100%;display:block;float:left}
#mainnav ul li ul li a{background:none;color:rgba(255,255,255,0.75)}
#mainnav li ul li a{font-size:1rem; border-radius: 0;line-height:1.1em;padding:.3em 1em; display:block;width:100%;text-align:left;float:left}
#mainnav li ul li a:hover, .t1 li ul li a:active{color:#fff;background:none}

/* ancillary */
#ancillary {position:relative; width:100%; background: #24281F; color: #C0C0C0; font-size: 0.875rem; line-height: 2.188rem;}
#ancillary .wrap {padding: 0 1rem;}
#ancillary :nth-child(2) {float: right;}
#ancillary a {color: #F6A623; font-weight:600}

/* mobile */
#mobilenav,.menu{display: none}

/* Contact CTA */
.contact-cta {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(51, 51, 51, 0.8)), to(rgba(51, 51, 51, 0.9))), url(../../images/requestquote.jpg);
    background: linear-gradient(rgba(51, 51, 51, 0.8), rgba(51, 51, 51, 0.9)), url(../../images/requestquote.jpg);
    width: 100%;
    border-radius: 3px;
    background-size: cover;
    padding: 1.8em .8em;
    text-align: center;

}
.contact-cta h2 {
    color: #fff;
    font-size: 1.05em;
    text-transform: uppercase;
    margin-bottom: .6em;
    letter-spacing: .9px;
}
.contact-cta span {
    height: 0;
    border: 3px solid #7f7e7c;
    width: 5.2em;
    margin: 0 auto 1.35em auto;
    display: block;
}
.contact-cta .button {
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(47%, #ffa300), color-stop(50%, #ef8d04));
    background-image: linear-gradient(-180deg, #ffa300 47%, #ef8d04 50%);
    padding: .7em 1em;
    font-weight: 500;
    -webkit-transition: all .2s;
    transition: all .2s;
    width: 100%;
}
.contact-cta .button:hover {
    background-image: none;
    color: #F6A623;
}


/* MAIN ------------------------------ */
main>.wrap{padding-top:3.750em;
    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: 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;;
}
/* content */
#content{padding:0 1rem 8em 0; width:100%; overflow:visible;min-height:600px;position:relative;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;}
#content.fullWidth {float:none;margin: 0 auto}
.wsManagementLogin td:first-child {width:40%; text-align: right}
/* side nav */
main>div>aside{margin-right: 3.125em;min-width:12.5rem;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}
main #sidenav {min-width:12.5rem;}

.home #environmental-services .flex {
    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: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;}
.home #environmental-services .tabs {min-width: 20.875rem;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    -webkit-flex: 0 1 20.875rem;
    -ms-flex: 0 1 20.875rem;
    flex: 0 1 20.875rem;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto}
.home #environmental-services .tabs a {display: block; position: relative; z-index: 1; width: 20.875rem; font-size: 1.125em; font-weight:700; color:#6C953C; padding: 0.75em 1em; border-left: 1px solid transparent; 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.hover:first-child,
.home #environmental-services .tabs a.hover:last-child {border-color: #DEDEDE}
.home #environmental-services .tabs a:before {content:"\203A"; float: right; line-height: 1.5rem; font-size: 1.375em}
.home #environmental-services .tabs a.hover:after {content: ""; display: block; background:#fff; top:0; width: 1em; right:-0.5em; height: 100%; position: absolute}
.home #environmental-services .tabs a:hover,
.home #environmental-services .tabs a.hover {background: #fff; border-left-color: #DEDEDE; color: #F6A623}
.home #environmental-services .info {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    -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;}
.home #environmental-services .info section {display: none; position: relative; height:100%; background: #fff; padding:2.5em; border: 1px solid #DEDEDE; border-radius: 0 3px 3px 0}
.home #environmental-services .info section.hover {display: block}
.home #environmental-services .info section div {padding-bottom: 38%; margin-bottom: 1.25em; background-position: center; background-size: cover; background-repeat: no-repeat;}
    .home #environmental-services .info [data-attribute="VacuumExcavation"] div {background-image:url(/images/home/services/VacuuumExcavation.webp)}
    .home #environmental-services .info [data-attribute="HydroExcavation"] div {background-image:url(/images/home/services/hydro-excavation.jpg)}
    .home #environmental-services .info [data-attribute="VacTraxx"] div {background-image:url(/images/home/services/VacTraxx.webp)}
    .home #environmental-services .info [data-attribute="SiteRemediation"] div {background-image:url(/images/home/services/Site-Remediation.webp)}
    .home #environmental-services .info [data-attribute="IndustrialServices"] div {background-image:url(/images/home/services/Industrial-Services.webp)}
    .home #environmental-services .info [data-attribute="WasteManagement"] div {background-image:url(/images/home/services/waste-management.webp)}
    .home #environmental-services .info [data-attribute="MunicipalSewer"] div {background-image:url(/images/home/services/Municiplal-Sewer-Water.webp)}
    .home #environmental-services .info [data-attribute="PipeCleaning"] div {background-image:url(/images/home/services/pipe-cleaning.jpg)}
    .home #environmental-services .info [data-attribute="EmergencyResponse"] div {background-image:url(/images/home/services/emergency-response.jpg)}
    .home #environmental-services .info [data-attribute="PipeInspection"] div {background-image:url(/images/home/services/pipe-inspection.jpg)}
    .home #environmental-services .info [data-attribute="RailServices"] div {background-image:url(/images/home/services/HyRail.webp)}
.home #environmental-services .info section p {line-height: 1.5em; margin-bottom: 1.5em}
.home #markets-served a {display: block; width: 19.75%; padding-bottom: 26%; float: left}
.home #markets-served a+a {margin-left: 0.3125%;}
    .interior #markets-served {margin: 1em 0 2em; overflow: auto; border: 0}
    .interior #markets-served a {width: 31.5%; padding-bottom: 38%; display: block; margin: 0.75%; float: left;}


#markets-served a:is(:hover, :focus-visible):before {
	opacity: 0;
}


.home #welcome .wrap {
    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: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
}
.home #welcome .wrap .welcome {
    position: relative;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}
.home #welcome .wrap #blog {
    min-width: 14.5em;
    margin-left: 9.8%;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
    align-self: auto;
}
.home #welcome .wrap .welcome p {margin-bottom: 2em}
.home #welcome .wrap .welcome p:last-child {margin-bottom: 0}
.home #welcome .wrap #blog h1 {margin-top: 0.75em}

/* Landing */
.landingFoot .wrap { 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: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;}
.landingFoot .left {width: 55%;}
.landingFoot .right {width: 45%;float: right;}
.landingExtra ul {width: 59%;}
.landing #content .photoright, .landing #content .photoleft {max-width: 41%;}
.wrap.landing h1 span {margin-left: 3em;}
.landing .row {margin-bottom: 1.5em;}


.flexCol > * {
    width:25%;
}

/* footer */
.fatFooter {text-align:center; overflow: hidden; padding-bottom: 0.15em}

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)}
#web-solutions-exposure {float:right;margin-left:11px}
body>footer a.tel{color:#C0C0C0; font-weight: 400; cursor: text}



@media screen and (min-width: 2000px) {
    body {font-size: 18px}
    body>*>.wrap, .wrap, body>footer>.fatFooter, #alertApp>* {max-width: 75rem}
}

@media screen and (max-width: 1000px) {
    #mainnav>ul>li {margin-left: 0.5em}
    .home #environmental-services .info section div {padding-bottom: 55%}
    .home .markets {text-align: center}
    .home #markets-served a {display: inline-block;width: 27.75%;padding-bottom: 34%;float: none;margin: 0 1% 1% !important;}
    .home #welcome .wrap {display: block}
    .home #welcome .wrap #blog {margin: 3em 0 0}
}
