/**
Theme Name: Superior Sewer & Drain Service Child Theme
Author: The Janice Christopher Marketing Agency
Author URI: https://janicechristopher.com/
Description: This is a child theme for \"Superior Sewer & Drain Service\".
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: superior-sewer-drain-service-child-theme
Template: astra
*/

html {
  scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6, body, a, button, input, textarea, select, ul, ol, li, blockquote, p {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* header */
/* .header-menu nav ul.elementor-nav-menu > li.menu-item > a { padding-bottom: 10px !important;} */
.header-menu nav ul.elementor-nav-menu > li.menu-item > a.has-submenu:after { content: none !important;}
.elementor-nav-menu .sub-arrow { padding: 0 !important; padding-inline: 4px !important; transform: unset !important; transform-origin: center center; z-index: 10; transition: all .3s ease !important;}
.header-menu nav ul.elementor-nav-menu > li.menu-item > a.has-submenu:hover .sub-arrow { transform: rotate(180deg) !important; transform-origin: center center !important;}
.header-main>.e-con-inner { transition: all .3s ease;}
.has-sticky .header-main>.e-con-inner { padding-block:10px !important;}
.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-item-has-children > a.has-submenu ~ ul.sub-menu.elementor-nav-menu--dropdown {
    min-width: 222px !important; left: 50% !important; transform: translateX(-50%) !important; text-align: center !important;
}
.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-item-has-children > a.has-submenu ~ ul.sub-menu.elementor-nav-menu--dropdown > li > a {
	padding-inline: 0 !important;
	border-left: unset !important;
    display: block;
    text-align: center;
}
.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-call-num > a.elementor-item.menu-link {
    background-color: var( --e-global-color-primary );
    display: flex;
    align-items: center;
    justify-content: center;
    padding-block: 8.5px !important;
    min-width: 200px;
}
.has-sticky .header-main { background-color: rgb(0 0 0 / 50%); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);}
#ast-scroll-top { background-color: var(--e-global-color-primary);}
#ast-scroll-top:hover { background-color: rgb(194 30 30 / 25%); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);}

/* Gravity Form Css */
input[type="text"], input[type="number"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type=reset], input[type=tel], input[type=date], select {
	height:auto; box-shadow:none !important;
}
label, legend { color: var(--e-global-color-text);}
body .gform_wrapper.gravity-theme input[type=color],body .gform_wrapper.gravity-theme input[type=date],body .gform_wrapper.gravity-theme input[type=datetime-local], body .gform_wrapper.gravity-theme input[type=datetime],body .gform_wrapper.gravity-theme input[type=email],body .gform_wrapper.gravity-theme input[type=month],body .gform_wrapper.gravity-theme input[type=number],body .gform_wrapper.gravity-theme input[type=password],body .gform_wrapper.gravity-theme input[type=search],body .gform_wrapper.gravity-theme input[type=tel], body .gform_wrapper.gravity-theme input[type=text],body .gform_wrapper.gravity-theme input[type=time],body .gform_wrapper.gravity-theme input[type=url],body .gform_wrapper.gravity-theme input[type=week],body .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea{
	border: 1px solid var(--e-global-color-e8e5ca5);
	border-radius: 2px;
	height: 35px;
}
.gform_heading .gform_required_legend { display: none!important;}
.gform_wrapper.gravity-theme .gform_fields { grid-column-gap: 15px !important; grid-row-gap: 25px !important;}
.gform_wrapper.gravity-theme .gfield { position: relative;}
body .gform_wrapper.gravity-theme .gfield_label { margin-bottom:10px;}
body .gform_wrapper.gravity-theme .gfield_label{ font-size:15px; font-weight: 500; line-height: 1.4;}
body .gform_wrapper.gravity-theme .gfield textarea { height: 125px !important; min-height:auto !important; resize: none!important; overflow-y: auto;}
body .gform_wrapper .gfield_error [aria-invalid=true] { border: 1px solid var(--e-global-color-primary) !important;}
body .gform_wrapper.gravity-theme #field_submit, body .gform_wrapper.gravity-theme .gform_footer { margin: 25px 0 0 !important; padding:0 !important;}
.gform_wrapper.gravity-theme #field_submit input, .gform_wrapper.gravity-theme .gform_footer input{	width:100% !important; margin-bottom:0 !important; line-height:1.2 !important;}
.charleft.ginput_counter.gfield_description { color: var(--e-global-color-text); padding-top: 0; font-size: 12px;}
.gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message { 
	background: #fff9f9; border: 1px solid var(--e-global-color-primary); font-size: 12px !important; line-height: 1.4 !important; margin-block-start: 4px !important; padding: 5px !important;
}
.gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) { padding-right: unset !important;}
.gform_wrapper.gravity-theme .gfield_required { padding-left: .5px;}
body .gform_wrapper.gravity-theme .gform_footer { margin-top: 35px !important;}
.gform-footer .gform_button.button { display: flex; width: 100% !important; max-width: 200px; padding: 8px 20px !important; border: unset; border-radius: unset; transition: all .3s ease;}
.gform-footer .gform_button.button:hover, .gform-footer .gform_button.button:focus { background-color: var(--e-global-color-text); color: var(--e-global-color-secondary);}
.gform_heading { display: none;}

.cta-img-box .elementor-image-box-wrapper { display: flex; gap: 8px;}

.cmn-btn > a.elementor-button { padding: 8.5px 5px !important; min-width: 200px !important; border-radius: unset !important;}
.elementor-icon-list-item a { outline: none !important;}
span.elementor-icon-list-icon svg.e-far-check-circle > * { display: none;}
span.elementor-icon-list-icon svg.e-far-check-circle {
    margin: 0 !important;
	margin-top: 3px !important;
    background: url('https://superior-sewer-drain-service.websitepro.hosting/wp-content/uploads/2025/10/icons_check.png') no-repeat center center / 15px 15px;
}
.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text { padding-left: 7px;}

/* Home Page */
.sl-content-wrp, .h-100, .home-left-img { height: 100%;}
.home-left-img-grid, .home-right-img-grid { width: 100%; max-width: (calc(50% - 7.5px));}
.home-right-img img { object-position: 75% center !important;}
.ep-contact-img-box .elementor-image-box-wrapper h2 { margin: unset;}
.ep-contact-img-box .elementor-image-box-wrapper a { text-decoration: none; color: var( --e-global-color-primary ) !important;}
.ep-contact-img-box .elementor-image-box-wrapper:hover a { color: var(--e-global-color-text) !important;}
.ep-contact-img-box .elementor-image-box-wrapper img { filter: none; transition: all .3s ease;}
.ep-contact-img-box .elementor-image-box-wrapper:hover img { filter: brightness(0);}

.elementor-nav-menu--dropdown ul li.menu-item-has-children .sub-arrow {
  position: absolute;
  right: 0;
  top: 5px;
  width: 30px;
  height: 30px;
  margin: 0px !important;
  text-align: center;
  display: flex;
  justify-content: center;
	cursor: pointer;
}
.sub-menu.open { display: block;}
.sub-arrow.active { transform: rotate(180deg) !important;}

/* FAQs - Accordion Styling */
.faq-acc .e-n-accordion-item { border: 1px solid var(--e-global-color-text); border-bottom: none;}
.faq-acc .e-n-accordion-item:last-of-type { border-bottom: 1px solid var(--e-global-color-text);}
.faq-acc * {outline: none;}

.inner-serv-img-box  h3.elementor-image-box-title { margin-top: unset;}



/* Blog Listing */
.post-list-wrp { overflow: visible;}
.posts-wrap .elementor-post__card {position: relative;box-shadow: 0px 3px 15px #00000014 !important;z-index: 1;}
.posts-wrap a.elementor-post__thumbnail__link { margin: unset;}
.posts-wrap .elementor-post__text { padding: 30px !important;}
.posts-wrap a.elementor-post__read-more {
    display: flex; justify-content: center; align-items: center; padding: 8.5px 5px !important; min-width: 200px !important; border-radius: unset !important; 
	background-color: #C21E24 !important; font-weight: bold !important; text-transform: uppercase !important; font-size: 15px !important; line-height: 18px !important; 
	letter-spacing: 0.15px !important; color: #FFFFFF !important; text-decoration: none !important; text-align: center; transition: all .3s ease !important;
}
.posts-wrap a.elementor-post__read-more:hover { background: #000000 !important; color: #FFFFFF !important;}
.posts-wrap .elementor-post__read-more { margin: unset !important;}
.posts-wrap .elementor-post__meta-data { border: none !important; padding: unset !important; margin-block: 15px !important;}
.posts-wrap .elementor-post__text .elementor-post__excerpt p { font-size: 15px !important; line-height: 21px !important; letter-spacing: 0.15px !important; color: #191919 !important;}

/* Single Post Page */
.error404 .site-content > .ast-container,
.error404 .site-content > .ast-container > div.content-area.primary,
.single.single-post.ast-narrow-container .site-content > .ast-container,
.single.single-post.ast-narrow-container .site-content > .ast-container > section.elementor.ast-article-single { width: 100% !important; max-width: 100% !important; padding: unset !important; margin: unset !important;}
body.error404, body.single.single-post.ast-narrow-container { background: unset !important;}


.post-content-wrp h2, .post-content-wrp h3, .post-content-wrp h4, .post-content-wrp h5, .post-content-wrp h6 { margin-block: 30px 15px !important; text-transform: capitalize; color: var( --e-global-color-primary ) !important;}
.post-content-wrp a { color: var( --e-global-color-primary ) !important; transition: all .3s ease;}
.post-content-wrp a:hover { color: var(--e-global-color-text) !important;}
.post-content-wrp ol, .post-content-wrp ul { margin: 0 0 15px 25px;}
.post-content-wrp ol li:not(:last-of-type), .post-content-wrp ul li:not(:last-of-type) { margin-bottom: 5px;}
.post-content-wrp p { margin-bottom: 10px;}
.post-feat-img { margin-inline: auto; margin-bottom: 15px !important; width: 100%; overflow: hidden;}
.post-feat-img img { margin-top: unset !important; width: 100%; height: 100%; max-width: clamp(600px, 50vw, 100%) !important; max-height: 500px; object-fit: cover; object-position: center center;}
.post-content-wrp .wp-block-image { text-align: center; margin-inline: auto !important;}
.post-content-wrp img { margin-block: 15px !important; width: 100%; height: 100%; max-width: clamp(600px, 50vw, 75%) !important; max-height: 450px; object-fit: cover; object-position: center center;}


#sendUsMessageWrap { scroll-margin-top: 150px;}


/* Responsive CSS */
@media (min-width:1200px){
	.why-img-box .elementor-image-box-description { max-width: 219px;}
}


@media (max-width: 1199px) {
}

@media ( min-width: 992px) {
	.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-call-num > a.elementor-item.menu-link:hover { 
		color: var(--e-global-color-text); background-color: var(--e-global-color-secondary);
	}
	.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-call-num > a.elementor-item.menu-link:after { content: none;}
	
	/* Home Page */
	.max-h-479 img { max-height: 479px;}
	
	/* About Page */
	.max-h-885 img { max-height: 885px;}
	.max-h-313 img { max-height: 313px;}
	
	
}

@media (max-width: 991px) {
	.page-main-wrapper .no-page-heading {font-size: 150px;}
	/* Header */
	.has-sticky .header-main>.e-con-inner{padding-block:20px !important;}
	.has-sticky .header-main .header-logo img {max-width: 168px !important;}
	body header.has-sticky.elementor-1320 .elementor-element.elementor-element-195d610 .elementor-nav-menu__container.elementor-nav-menu--dropdown {margin-top: 45px !important;}
	.elementor-nav-menu--dropdown.elementor-nav-menu__container { top: 58px !important;}
	.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-item-has-children > a.has-submenu ~ ul.sub-menu.elementor-nav-menu--dropdown {
		min-width: unset; width: 100%; transform: unset !important; border: unset;
	}
	.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-call-num > a.elementor-item.menu-link { display: inherit; text-align: inherit; padding: 15px 20px !important; color: var(--e-global-color-secondary);}
	.header-menu nav ul.elementor-nav-menu > li.menu-item.menu-item-has-children > a.has-submenu ~ ul.sub-menu.elementor-nav-menu--dropdown > li > a {
		text-align: left; padding-inline: 30px 10px !important;
	}
	
/* 	.elementor-nav-menu--dropdown li.menu-item:has(a.elementor-item-active), .elementor-nav-menu--dropdown li.menu-item:has(a.has-submenu.highlighted) { background-color: var( --e-global-color-primary ) !important;}
	.header-menu nav ul.elementor-nav-menu > li.menu-item > a.has-submenu { display: inline-flex; align-items: center; gap: 10px; position: relative; outline: none !important;}
	.elementor-nav-menu .sub-arrow { margin: unset !important; margin-top: 5px !important;  min-width: 20px; width: 100%; max-width: 20px; pointer-events: none; z-index: 9999;}
	 */
	
	
	.elementor-nav-menu--dropdown > ul.elementor-nav-menu > li.menu-item.menu-item-has-children a:hover .sub-arrow svg path,
	.elementor-nav-menu--dropdown > ul.elementor-nav-menu > li.menu-item.menu-item-has-children a:focus .sub-arrow svg path,
	.elementor-nav-menu--dropdown > ul.elementor-nav-menu > li.menu-item.menu-item-has-children a.elementor-item-active .sub-arrow svg path,
	.elementor-nav-menu--dropdown > ul.elementor-nav-menu > li.menu-item.menu-item-has-children a.highlighted .sub-arrow svg path {
		color: var( --e-global-color-secondary ) !important;
		fill: var( --e-global-color-secondary ) !important;
	}
	.elementor-nav-menu--dropdown ul li.menu-item-has-children .sub-arrow { top: 11px;}
	.cmn-btn > a.elementor-button { padding-block: 8.5px !important; padding-inline: 10px !important;}
	li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-has-children:has(span.sub-arrow.active) > a.has-submenu {
		border-bottom: 1px solid var(--e-global-color-primary) !important;
	}
	
	/* Services Inner Page */
	.inner-serv-list-wrp { flex-direction: row; align-items: stretch;}
	.inner-serv-card { align-self: stretch; margin-inline: auto;}

	
	
}

@media (min-width:480px) and (max-width:767px){
}
	

@media (max-width: 767px) {
	/* Header */
	.elementor-nav-menu--dropdown.elementor-nav-menu__container { top: 50px !important;}
	/* Gravity Forms */
	.gform_wrapper.gravity-theme .gform_fields { grid-row-gap: 15px !important;}
	body .gform_wrapper.gravity-theme .gfield_label { margin-bottom: 5px;}
	.gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) { line-height: 1.5; min-height: auto;}	
	body .gform_wrapper.gravity-theme .gfield textarea { height:100px !important; overflow-y: auto;}
	body .gform_wrapper.gravity-theme .gform_footer { margin-top: 15px !important;}
	
	.elementor-nav-menu--dropdown ul li.menu-item-has-children .sub-arrow { top: 6px;}
	/* .cmn-btn > a.elementor-button { min-width: 180px !important;} */
	
	/* Footer */
	.foo-menu > nav > ul.elementor-nav-menu > li.menu-item { display: flex; justify-content: center;}
	.cta-img-box .elementor-image-box-wrapper { display: flex; gap: 8px;}
	
	
	/* Home Page */
	.home-left-img-grid img { height: 250px !important;}
	.home-right-img-grid { height: 510px !important;}
	.lr-left-img { margin-inline: auto !important; text-align: center !important;}
	.ep-contact-img-box .elementor-image-box-wrapper { display: flex; align-items: center; justify-content: center; gap: 10px;}
	.ep-contact-img-box .elementor-image-box-wrapper .elementor-image-box-content { width: auto;}
	.ep-contact-img-box .elementor-image-box-wrapper figure.elementor-image-box-img {margin: unset !important;}
	.sl-card, .why-card { width: 100%; max-width: 350px;}
	.sl-img-box { width: 100%;}
	
	/* About Page */
	.max-h-885 img, .max-h-313 img, .serv-img img { height: auto; max-height: 350px;}
	
	/* 	Services Page */
	.serv-img { max-width: 100%; width: 100%;}
	
	/* Blog & Single Post Page */
	.posts-wrap .elementor-post__text { padding: 20px !important;}
	.post-feat-img img { max-height: 400px;}
	
}


@media (max-width: 480px) {	
	/* Home Page */
	.home-left-img-grid img { height: 200px !important;}
	.home-right-img-grid { height: 410px !important;}

}











