.skip-link:focus {
z-index: 100000003 !important;
background: #319e32 !important;
color: white !important;
clip-path: unset;
clip: unset;
height: auto;
width: auto;
overflow: visible;
border: none !important;
box-shadow: none !important;
} 
h1, h2, h3, h4 {
text-wrap: auto;
}
:root {
--grey: #314555;
--blue: #0d367d;
--green: #319e32;	
}
html {
overflow-x: hidden;
}
body {
font-size: 18px !important;  
line-height: 25px !important;
max-width:100vw;
overflow: hidden;
}
h1 {
font-size: 29px !important;
line-height: 35px;
text-transform:uppercase;
}
h2, h3, h4, h5, h6 {
text-transform:uppercase;	
}
p img {
margin-bottom:25px;
}
p img:last-child {
margin-bottom:0;
}
.aligncenter, .alignright, .alignleft {
margin-bottom:20px !important;
}
.entry-title {
font-weight:700 !important;
}
.site-content ul li {
padding-left:8px;
}
.site-content ul li::marker {
color: var(--green);
content: "■";
font-size: 25px;
}
.site-content ol li::marker {
color: var(--green);	
font-weight: 700;	
}
.breadcrumbs {
display: none !important;
}
.corp-container {
max-width:1560px !important;
}
.pr {
position: relative;
}
.c-a {
align-items: center !important;
}
.comments-area {
display:none !important;
}
.top-widget {
background: var(--grey);
padding:0 20px;
}
.top-widget .panel-layout {
max-width:1560px !important;
margin:0 auto;
}
.top-widget .panel-grid {
justify-content: flex-start !important;
align-items: center !important;
height: 50px;
}
.top-widget .panel-grid-cell {
width: fit-content !important;
display: flex !important;
}
.top-widget .social-media-button-container {
display: flex;
margin-left: 1.05em !important;
}
.top-widget .social-media-button-container a, .top-widget .phone-header-resp a {
position: relative;
display: inline-block;
width: 2.5em !important;
text-align: center;
}
.top-widget .social-media-button-container a:after, .top-widget .phone-header-resp a:after {
position:absolute;
content:'';
height:100%;
width:2px;
background: white;
opacity:.5;
left:0;
top: 50%;
transform: translateY(-50%);
}
.top-widget .phone-header-resp {
display: none;
}
.top-widget .phone-header-resp img {
max-height: 25px;
width: auto;
margin-top: 7px;
filter: brightness(500%);
}
.top-widget .phone-header-resp img:hover {
filter: invert(53%) sepia(8%) saturate(7340%) hue-rotate(80deg) brightness(89%) contrast(71%);
}
.top-widget .ow-button-base a:hover {
background: transparent !important;
border-color: transparent !important;
}
.site-header {
padding:0 !important;
}
.site-header-inner {
padding-top: 25px;
}
.left-widget .siteorigin-widget-tinymce {
display: flex;
align-items: center;
gap: 15px;
text-align: left;
}
.left-widget img {
height: 42px;
width: auto;
}
.left-widget .siteorigin-widget-tinymce p {
margin-bottom: 0;
}
.left-widget .siteorigin-widget-tinymce a {
font-weight:700;
font-size:25px;
}
.right-widget  .siteorigin-widget-tinymce {
display: flex;
gap:15px;
}
.right-widget .acredited-business img {
max-width:130px !important;
}
.right-widget .naid-certified img {
max-width:100px !important;
}
.site-branding {
display: flex;
align-items: center;
width: 100%;
justify-content: space-between;
}
.site-header.centered .main-navigation {
background:#f2f2f2;
width: 100vw;
text-align: left !important;	
}
.main-navigation .inside-nav {
display: flex;
align-items:center;	
}
.quote-widget {
min-width:200px;
}
.quote-widget .sowb-button {
padding:10px !important;
}
.site-header.centered .site-branding {
gap:10px;
}
.main-navigation .menu-main-menu-container, .main-navigation .menu-primary-container {
width:100% !important;
}
.custom-logo-link img {
max-height:80px;
width: auto;
}
.main-navigation ul li {
font-size:18px !important;
font-weight:500 !important;
text-transform: uppercase;
margin-right:20px !important;
}
.main-navigation ul li:after {
position: absolute;
content:'';
width:2px;
height: 80%;
background: #333;
opacity: .5;
top: 0px;
right: -15px;
}
.main-navigation ul li:last-child:after {
display: none;
}
.main-navigation ul li a {
font-weight:500 !important;	
letter-spacing:0 !important;
padding: 0 !important;
margin-top: 4px !important;
}
.main-navigation ul .sub-menu {
top: 30px !important;
}
.main-navigation ul .sub-menu li a {
margin:0 !important;
padding:8px 5px !important;
}
.main-navigation ul .sub-menu li:after {
display: none;
} 
.main-navigation ul .sub-menu .sub-menu {
top: 10px !important;
} .hero-header .sow-image-container {
height:600px;
overflow:hidden;
align-items: center !important;
}
.hero-header .sow-image-container img {
object-fit: cover;
max-width: min-content !important;
min-height: 100%;
} .services-row .sowb-button {
height: 400px;	
align-items: end;
display: flex !important;
padding: 60px 25px !important;
}
.services-row .panel-widget-style{
height: 400px;		
position: relative;
z-index:1;
overflow: hidden;
transition: all .4s ease-in-out 0s;
}
.services-row .panel-widget-style:after {
content:'';
position: absolute;
width:110%;
height:110%;
bottom:-5%;
left: -5%;
z-index: -1;
mix-blend-mode: multiply;
transition: all .4s ease-in-out 0s;
}
.bg-green:after {
background: var(--green);
}
.bg-green a {
color: var(--blue);	
font-weight:700;
}
.bg-green a:hover, .bg-blue a:hover {
color: white;	
}
.bg-blue:after {
background: var(--blue);
}
.bg-blue a {
color: var(--green);
font-weight:700;
}
.services-row .sowb-button {
text-align: left !important;
background: transparent !important;
border: none !important;
}
.services-row .panel-widget-style:hover:after {
height: 70px !important;   
bottom: 50px;
}
.services-row .service-row-bottom:after  {
position: absolute;
content: '';
width: 100vw;
height: 200%;
background: #f2f2f2;
bottom: 0;
left: 50%;
transform: translateX(-50%);
z-index: -1;
}
.services-row .service-size .panel-grid-cell {
width: 33.33333333% !important;	
} .process-row:after {
position: absolute;
content: '';
width: 100vw;
height: 200%;
background: var(--grey);
bottom: 0;
left: 50%;
transform: translateX(-50%);
z-index: -2;
}
.process-row .work-step .siteorigin-widget-tinymce {
position: relative;
margin-top: 60px;
color: white !important;	
}
.process-row h2, .process-row .siteorigin-widget-tinymce h3, .process-row .siteorigin-widget-tinymce p {
color: white !important;
}
.process-row .work-step .w-number {
position: absolute;
font-size: 170px;
font-weight: 700;
z-index: -1;
opacity: .1;	
}
.process-row .work-step .w-number span {
font-size:110px !important;
position: absolute;
top: -20px;
} .testimonial-fade-slider-wrapper {
display: flex;
flex-wrap: wrap;
background: var(--green);
color: white;
overflow: hidden;
align-items: center;
}
.testimonial-fade-content-container {
flex: 1;
padding: 40px;
position: relative;
min-width: 300px;
box-sizing: border-box;
}
.testimonial-fade-slider-wrapper h2 {
color: white;
}
.testimonial-fade-slide {    
opacity: 0;
transition: opacity 0.5s ease;
position: relative;
padding: 0 50px 0 15%;
width: 100%;
box-sizing: border-box;
}
.testimonial-fade-slide.active {  
opacity: 1;
}
.testimonial-box {
background: white;
color: #333;
padding: 20px;
position: relative;
max-width: 100%;
box-sizing: border-box;
min-height: 125px;
}
.testimonial-box:after {
bottom: -45px;
width: 70px !important;
height: 65px !important;
content: '';
position: absolute;    
width: 0;
height: 0;
border-top: 0px solid transparent;
border-left: 70px solid white;
border-bottom: 65px solid transparent;
left: 0;
}
.testimonial-client {
margin-top: 20px;
margin-left: 40px;
}
.testimonial-static-image {
flex: 1;
max-width: 40%;
min-height: 400px;
overflow: hidden;
}
.testimonial-static-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
min-height: 400px;
}
.testimonial-nav {
position: absolute;
bottom: 20px;
right: 50px;
}
.testimonial-nav button {
border: none;
padding: 10px;
font-size: 40px;
font-weight: 700;
margin-right: 5px;
cursor: pointer;
position: relative;
z-index: 1;
background: transparent !important;
}
.testimonial-nav button:hover,
.testimonial-nav button:active,
.testimonial-nav button:focus {
color: var(--green);
background: transparent !important;
}
.testimonial-nav button:after {
content: '';
position: absolute;
background: white;
top: 55%;
left: 50%;
transform: translate(-50%, -50%);
width: 35px;
height: 35px;
border-radius: 100%;
z-index: -1;
} .quote-form, .quote-line {
display: flex;
width: 100%;
gap: 20px;
}
.quote-form, .quote-line p, .quote-form, .quote-line input, .quote-form, .quote-line select {
width: 100%;	
}
.quote-form, .quote-line p {
margin-bottom: 10px;
}
.quote-form, .quote-line select {
padding: 9px 13px 10px;
}
.quote-form label, .request-form label {
font-weight:700 !important;
}
.quote-form input[type=text], .quote-form select, .quote-form textarea, .quote-form input[type=email], .quote-form input[type=tel], .quote-form input[type=number] {
border: 1px solid var(--blue) !important;
}
.request-form input[type=text], .request-form select, .request-form textarea, .request-form input[type=email], .request-form input[type=tel], .request-form input[type=number] {
border: 1px solid var(--blue) !important;
}
.quote-form .wpcf7-form-control-wrap {
display: inline-block;
width: 100%;	
margin-top: 5px;
}
.quote-form .quote-field {
width:66%;
}
.quote-form .quote-message {
width:33%;
}
.quote-form input[type=submit] {
font-size:18px;
font-weight:700;
width:100%;
}
.request-form input[type=submit] {
font-size:18px;
font-weight:700;
width:calc(50% - 10px);
float: right;
}
.request-form .quote-line {
align-items: end;
margin-bottom:20px;
}
.request-form .quote-line p {
margin-bottom: 0;
}
.quote-form textarea {
min-height: 197px;
} .prospect-option {
}
.prospect-option .siteorigin-widget-tinymce {
position: relative;	
z-index:1;
}
.prospect-option .siteorigin-widget-tinymce p{
color: white !important;	
}
.prospect-option:after {
position: absolute;
content:'';
width:100%;
height:100%;
top:0;
left:0;
mix-blend-mode: multiply;
z-index:0;
}
.full-width .panel-grid-cell {
display: flex;
}
.full-width .panel-grid-cell .so-panel {
display: flex;
flex: 1;
} .page-header .sow-image-container {
height:400px;
overflow:hidden;
align-items: center !important;
}
.page-hero {
display: flex;
max-height: 300px;
overflow: hidden;
align-items: center;
margin-bottom:40px;
}
.page-hero img {
width:100%;
height: auto;
}
.drop-off-locations-li {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
.drop-off-locations-li li {
flex: 0 0 calc(24% - 10px);
margin-bottom: 15px;
max-width: calc(24% - 10px);
}
.drop-off-locations-li li a {
display: block;
width: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.dropoff-map .mapp-layout {
height:500px !important;
}
.drop-off h3 {
text-transform: uppercase !important;
}
.about-us h5 {
color: white !important;
}
.d-flex {
display: flex;
flex-wrap: wrap;
gap:15px;
}
.d-flex li {
width: calc(25% - 15px);
}
.about-img .panel-grid-cell:first-child {
overflow: hidden;
height: 100%;   
align-items: center;
display: flex;
align-items: center;
justify-content: center;
}
.about-img .sow-image-container {
overflow: hidden;
height: 100%;
}
.about-img .sow-image-container img {
object-fit: cover;
max-width: min-content !important;
position: relative;
left: 50%;
transform: translateX(-50%);
min-height: 250px;
height: 100% !important;	
} .contact-us .footer-contact {
display: none !important;
}
.footer-contact .panel-grid-cell {
display: flex;
}
.footer-contact .panel-grid-cell .so-panel:last-child {
max-width: 230px;
}
.footer-contact p {
color:white !important;
margin-bottom:0 !important;
}
.widget-area {
margin-top:30px;
}
.widget-area .widget_sow-editor {
margin-bottom:0 !important;
}
.widget-area h2 {
font-size:25px !important;
color:var(--green) !important;
}
.widget-area .google-business-reviews-rating-widget h2 {
color:var(--grey) !important;
}
.widget-area .google-business-reviews-rating-widget .buttons {
margin-top: 40px !important;
margin-bottom: 30px;
}
.widget-area .google-business-reviews-rating-widget .buttons a {
font-family: Montserrat;
font-weight: 700;
font-size: 18px;
padding: 15px;
padding-inline: 30px;
background: var(--grey) !important;	
}
.widget-area .google-business-reviews-rating-widget .buttons a:hover {
background: var(--green) !important;		
}
.widget-area .sidebar-img img {
max-width: 150px;
}
.bottom-bar {
border-top:1px solid white;
max-width: 80%;
margin: 0 auto;
}
.contact p {
color: white !important;
}
.site-footer .widget ul li, .site-footer .siteorigin-widget-tinymce {
font-size: 18px !important;
line-height: 25px !important;
}
.site-footer .site-info span:after, .site-info span:nth-child(2) {
display: none !important;
} @media screen and (max-width: 1024px) {
.drop-off-locations-li li {
flex: 0 0 calc(49% - 10px);
margin-bottom: 15px;
max-width: calc(49% - 10px);
}
.services-row .panel-widget-style:hover:after {
height: 120px !important;
}
}
@media screen and (max-width: 768px) { .d-flex li {
width: 100%;
} .custom-logo-link img {
max-height: 40px;
}
#mobile-navigation {
top:100% !important;
}
#mobile-navigation ul li a {
font-size: 16px;
line-height: 19px;
font-weight: 600;
padding: 10px 30px !important;
}
.menu .sub-menu {
background: #efefef;
}
.menu .sub-menu .sub-menu {
background: #e3e3e3;
} .site-header .site-header-inner {
display:block !important;
}
.site-header.centered .site-branding {
padding: 0 15px 25px !important;
gap:15px;
}	
.top-widget .panel-grid {
flex-direction: row !important;
align-items: center !important;
justify-content: center !important;
}
.top-widget .panel-grid-cell {
margin-bottom:0 !important;
}
.top-widget .phone-header-resp {
display: unset;
}
.left-widget {
display: none !important;
}
.right-widget {
max-width: 160px !important;
}
.right-widget .acredited-business img, .right-widget .naid-certified img {
width:100%;	
max-height:105px;
}
.site-header .corp-container {
padding:0 !important;
}
.centered.site-header .site-branding {
padding: 0 15px;	
}
.site-header.centered .main-navigation {
padding: 0 !important;
width:100% !important;
padding-right:10px !important;
}
.quote-widget {
order:1;
}
.menu-primary-container {
order:2;
}
#mobile-menu-button {
order:3;
top:0 !important;
} .hero-header .sow-image-container {
height:300px;
}
.hero-header img {
height: 120% !important;
max-width: unset !important;
width: auto !important;
} .services-row .service-size .panel-grid-cell {
width: 100% !important;	
margin-bottom:0 !important;
}
.services-row .panel-widget-style:hover:after {
height: 70px !important;
} .full-width {
width: calc(100% + 30px);
margin-left: -15px;
}
.full-width .panel-grid-cell {
margin-bottom:0 !important;
} .quote-form, .quote-line {
display: block;
}
.quote-line {
margin-bottom:10px !important;
}
.quote-form .quote-message, .quote-form .quote-field {
width: 100% !important;
} .testimonial-fade-slider-wrapper {
flex-direction: column-reverse;
}
.testimonial-static-image {
max-width: 100%;
min-height: 200px;
order: -1;
}
.testimonial-fade-slide {
padding: 0 20px;
}
.testimonial-fade-content-container {
padding: 20px 5px;
}
.testimonial-nav {        
text-align: center;
margin-top: 20px;
} .dropoff-map .mapp-layout {
height:400px !important;
max-width: 100%;
}
.page-header .sow-image-container {
height: 200px;	
}
.about-img .panel-grid-cell:first-child {
display:block;
} .drop-off-locations-li li {
flex: 0 0 calc(99% - 10px);
margin-bottom: 15px;
max-width: calc(99% - 10px);
} .request-form input[type=submit] {
float: none;
width:100%;
} .footer-contact .panel-grid-cell {
flex-direction: column;
}
.footer-contact .panel-grid-cell .so-panel:last-child {
max-width: 100%;
margin-top:30px;
}
.bottom-bar {		
max-width:90% !important;
}
.contact-us .site-footer .sow-image-container {
padding-top:30px;
}
}
@media screen and (max-width: 430px) {
.services-row .panel-widget-style:hover:after {
height: 95px !important;
}
}