/**
Theme Name: Hotshots Air Duct Cleaning Child
Author: Brainstorm Force
Description: -
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: hotshots-air-duct-cleaning-child
Template: hello-elementor
*/

/*Global var*/
:root {
	--section-py: 100px;
	--section-py-mobile: 50px;
	--mw-25: calc((100% / 4) - 20px);
	--mw-33: calc((100% / 3) - 20px);
	--mw-33-gap: calc((100% / 3) - 60px);
	--mw-50: calc((100% / 2) - 20px);
	--mw-50-gap: calc((100% / 2) - 60px);
	--mw-100: 100%;
	--padding-200: clamp(3.125rem, -5.5288rem + 24.0385vw, 12.5rem);
	--padding-150: clamp(3.125rem, -2.6442rem + 16.0256vw, 9.375rem);
	--padding-122: clamp(3.125rem, -1.0288rem + 11.5385vw, 7.625rem);
	--padding-104: clamp(3.125rem, 0.0096rem + 8.6538vw, 6.5rem);
	--padding-80: clamp(3.375rem, -1.4747rem + 10.1167vw, 5rem);
	--padding-72: clamp(3.375rem, 0.0175rem + 7.0039vw, 4.5rem);
	--padding-60: clamp(2.5rem, 0.4661rem + 4.2373vw, 3.75rem);
	--padding-50: clamp(1.25rem, -4.375rem + 11.7188vw, 3.125rem);
	--padding-48: clamp(1.25rem, -3.9728rem + 10.8949vw, 3rem);
	--padding-40: clamp(1.25rem, -2.5rem + 7.8125vw, 2.5rem);
	--padding-32: clamp(1.25rem, -3rem + 7.8125vw, 2rem);
	--padding-24: clamp(1.25rem, -2.5rem + 6.25vw, 1.5rem);
	--padding-16: clamp(0.5rem, -1rem + 3.125vw, 1rem);
	--fs-170: clamp(36px, -0.5417rem + 12.4074vw, 170px);
	--fs-110: clamp(36px, 0.7083rem + 6.8519vw, 110px);
	--fs-95: clamp(28px, 0.3542rem + 6.2037vw, 95px);
	--fs-90: clamp(28px, 0.4583rem + 5.7407vw, 90px);
	--fs-85: clamp(28px, 0.5625rem + 5.2778vw, 85px);
	--fs-85s: clamp(22px, 0.0625rem + 4vw, 85px);
	--fs-80: clamp(28px, 0.4583rem + 5.7407vw, 80px);
	--fs-60: clamp(24px, 0.75rem + 3.3333vw, 60px);
	--fs-55: clamp(24px, 0.8542rem + 2.8704vw, 55px);
	--fs-50: clamp(24px, 0.9583rem + 2.4074vw, 50px);
	--fs-45: clamp(22px, 1rem + 1.6667vw, 45px);
	--fs-40: clamp(22px, 1rem + 1.6667vw, 40px);
	--fs-38: clamp(22px 1.0417rem + 1.4815vw, 38px);
	--fs-36: clamp(22px, 1.0833rem + 1.2963vw, 36px);
	--fs-35: clamp(22px, 1.0833rem + 1.2963vw, 35px);
	--fs-30: clamp(20px, 1.0417rem + 0.9259vw, 30px);
	--fs-26: clamp(20px, 1.125rem + 0.5556vw, 26px);
	--fs-24: clamp(20px, 1.375rem + 0.5556vw, 24px);
	--fs-24s: clamp(0.75rem, 0.0577rem + 1.9231vw, 1.5rem);
	--fs-23: clamp(18px, 1.0208rem + 0.463vw, 23px);
	--btn-row-gap: 10px;
	--btn-col-gap: 20px;
	--ff-h: "Heading Now Trial";
	--ff-sh: "Austein";
	--ff-primary: "Heading Now Trial";
	--ff-secondary: "Austein";
	--ff-accent: "Charter Oak";
	--ff-body: "Aeonik";
	--ff-btn: "Anton";
	--gradient-purple: linear-gradient(180deg, #a865f7 20%, #6700e0 100%);
	--gradient-orange: linear-gradient(180deg, #fe8b2e 0%, #e76801 100%);
}


/* Global */
@media(max-width: 1024px) {
	:root {
		--section-py: var(--section-py-mobile);
	}
}
div#page {
    overflow: hidden;
}
body:not(.elementor-editor-active) .cm-divider {
	pointer-events: none;
}

/*Accessibility*/
.accessibility-location-left .aicon_link {
	left: auto !important;
	top: auto !important;
	bottom: 70px !important;
	right: -80px !important;
	padding: 0 !important;
}

body .accessability_container * {
	background: transparent !important;
	font-family: var(--ff-body);
	text-transform: unset;
	font-weight: 500 !important;
	font-size: inherit;
}
.accessibility-location-left .accessability_container.active {
    z-index: 9999999999 !important;
}

button.close_container {
    color: #fff !important;
    background: #000 !important;
    line-height: 1;
    padding: 0;
}
button.close_container:hover, body .accessability_container button.wah-action-button:hover, body .accessability_container button.wah-action-button:focus, body .accessability_container button.wah-action-button.active_button {
	color: #fff !important;
	background: #5f5f5f !important;
}
body .accessability_container button.wah-action-button, button.close_container {
	transition: color 0.3s, background 0.3s;
}

div#page {
    overflow: hidden;
}

body:not(.elementor-editor-active) .cm-divider {
	pointer-events: none;
}

/*Default*/
.cm-section {
	padding-top: var(--section-py) !important;
	padding-bottom: var(--section-py) !important;
}
.cm-section.pb-0 {
	padding-bottom: 0 !important;
}
.cm-section.pt-0 {
	padding-top: 0 !important;
}
.cm-section.pt-half {
	padding-top: calc(var(--section-py) / 2) !important;
}

.mbp0 {
	text-wrap: pretty;
}
.mbp0 p:last-child {
	margin-bottom: 0;
}
.mbp0 a {
	font-weight: 700;
	text-decoration: underline;
}
.mbp0 a:hover, .mbp0 a:focus {
	text-decoration: underline;
}
.mbp0 ul {
	list-style-type: none;
	width: fit-content;
	text-wrap: pretty;
}
@media (max-width:1024px) {
	.mbp0 ul {
		margin: auto;
	}
}
.mbp0 ul li {
	position: relative;
	text-align: left;
	margin-bottom: 8px;
	padding-right: 24px;
}
.mbp0 ul li::before {
	content: '';
	background: var(--e-global-color-secondary);
	width: 10px;
	height: 10px;
	position: absolute;
	left: -24px;
	top: 4px;
	border-radius: 50%;
}
.mbp0.orange-list ul li::before {
	background: var(--e-global-color-primary);
}
@media only screen and (max-width:1024px) {
	.cmbr br, .cm-h3 br {
		display: none;
	}
}
@media(min-width: 768px) {
	.cm-row-3, .cm-row-2 {
    --flex-direction: row !important;
		--flex-wrap: wrap !important;
		justify-content: center !important;
}
	.cm-row-3 > .e-con-inner, .cm-row-2 > .e-con-inner {
    --flex-direction: row !important;
		--flex-wrap: wrap !important;
		justify-content: center !important;
}
	.cm-row-3 .cm-col {
        max-width: calc((100% / 2) - 10px);
    }
	.cm-row-2 .cm-col {
        max-width: calc((100% / 2) - 30px);
    }
}
@media(min-width: 1025px) {
	.cm-row-3, .cm-row-2 {
    --column-gap: 40px;
    --row-gap: 40px;
	}
	.cm-row-3 .cm-col {
    max-width: calc((100% / 3) - 30px);
	}
}
.cm-sticky .cm-btn-pr .elementor-button .elementor-button-text, .cm-sticky .cm-btn-sc .elementor-button .elementor-button-text {
		font-size: 0.75em !important;
	}
/*Nav*/
@media(max-width: 600px) {

	.cm-sticky .cm-btn-pr a, .cm-sticky .cm-btn-sc a {
		min-width: unset;
		padding: 8px 8px 10px !important;
	}
	.cm-sticky .cm-btn-sc .elementor-button .elementor-button-content-wrapper:after {
		right: -0.5em;
	}
	.cm-sticky .cm-btn-pr .elementor-button-text, .cm-sticky .cm-btn-sc .elementor-button-text {
/* 		font-size: 0; */
/* 		width: 20px; */
/* 		height: 20px; */
	}
	.cm-sticky .cm-btn-pr .elementor-button-text:after, .cm-sticky .cm-btn-sc .elementor-button-text:after {
		font-family: "Font Awesome 5 Free";
		font-size: 16px;
		line-height: 1em;
		font-weight: 900 !important;
		position: relative;
	}
	.cm-sticky .cm-btn-pr .elementor-button-text:after {
		content: "\f1ec";
		left: -3px;
	}
	.cm-sticky .cm-btn-sc .elementor-button-text:after {
		content: "\f879";
		left: -3px;
	}
	.cm-sticky .cm-btn-pr .elementor-button .elementor-button-text, .cm-sticky .cm-btn-sc .elementor-button .elementor-button-text {
		font-size: 0 !important;
		display: block;
		width: 30px;
	}
}

/*Nav*/
.cm-nav-phone {
	color: #fffb2e;
	display: flex;
	font-size: 15px;
	align-items: center;
}
.cm-nav-phone-tel {
	font-size: 1.43em;
	font-family: "Anton";
	line-height: 1em;
}
.cm-nav-phone-tel a {
	color: #ffffff;
}
.cm-nav-phone-tel a:hover, .cm-nav-phone-tel a:focus {
	color: #fffb2e;
}
.cm-nav-phone img {
	width: 4.94em;
	height: 3.06em;
	object-fit: contain;
}
.cm-nav-phone p {
	margin-bottom: 0;
}
.cm-nav-link {
	position: relative;
	font-size: 18px;
	line-height: 1em;
	letter-spacing: -0.04em;
	font-family: var(--ff-primary);
	font-weight: 700;
	display: block;
	padding: 0.8em 2em 0.6em;
	z-index: 1;
	text-transform: capitalize;
}
@media(max-width: 1080px) {
	.cm-nav-phone {
		font-size: 14px
	}
	.cm-nav-link {
		font-size: 17px
	}
}
@media(max-width: 600px) {
	.cm-nav-phone {
		font-size: 10px
	}
	.cm-nav-link {
		font-size: 12px
	}
}
/* .cm-sticky-toggle svg, */
 .ast-mobile-svg {
	fill: #faf331;
}
#cm-sticky {
	background-color: #21478c;
}
#cm-sticky .cm-sticky-txt {
	color: #ffffff
}
#cm-sticky .cm-btn-pr .elementor-button, #cm-sticky .cm-btn-sc .elementor-button {
	font-size: 17px !important;
}
.cm-sticky-container .site-logo-img {
	margin-right: 20px;
}

/*Contact form 7*/
@media (min-width: 576px){
	.cf-col-6 {
			-ms-flex: 0 0 50%;
			flex: 0 0 50%;
			max-width: 50%;
	}
}
.cf-col-1, .cf-col-2, .cf-col-3, .cf-col-4, .cf-col-5, .cf-col-6, .cf-col-7, .cf-col-8, .cf-col-9, .cf-col-10, .cf-col-11, .cf-col-12 {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 10px;
    padding-left: 10px;
}
.cf-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px;
}
.cm-offset-col {
    max-width: calc((100vw - 1240px) / 2);
    width: 100% !important;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0px 0px 0px!important;
	background: #fff;
	border-radius:5px;
}
.wpcf7 span.wpcf7-not-valid-tip {
	color: #ef5350;
	padding: 8px 10px;
	margin-top: 5px;
	font-size: 12px;
	display: inline-block;
	line-height: 1;
}
.wpcf7 input {
	line-height: 1.5;
}
.wpcf7 .cf-container label {
	width: 100%;
}
.wpcf7  input.wpcf7-submit {
	color: #fff!important;
	border: 2px solid #fff!important;
	border-radius: 0;
	transform: skew(-6deg);
	transition: .2s all linear;
}
.wpcf7  input[type="submit"]:hover {
	color: #fff!important;
	background-color: var(--e-global-color-primary)!important;
	border: 2px solid var(--e-global-color-primary)!important;
}



/* Others */
.m0 {
	margin: 0;
}
.capitalize {
	text-transform: uppercase;
}
.elementor-button:hover,
.elementor-button:focus,
.elementor-button:active {
	color: #fff!important;
}
.elementor-element-populated a:hover {
	color: var(--e-global-color-primary)!important;
}
.elementor-sticky--active {
	z-index: 9999!important;
}
.cta-btn-wrapper {
	z-index: 5;
}
/* .section-heading .elementor-heading-title {
	text-wrap: auto;
} */
.mw-1000 {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
@media(max-width: 1024px) {
	:root {
		--mw-25: var(--mw-50);
		--mw-33: var(--mw-50);
		--mw-33-gap: var(--mw-50-gap);
	}
}
@media(max-width: 767px) {
	:root {
		--mw-25: var(--mw-100);
		--mw-33: var(--mw-100);
		--mw-33-gap: var(--mw-100);
		--mw-50: var(--mw-100);
		--mw-50-gap: var(--mw-100);
	}
}
.austein {
	font-size: var(--fs-50);
	line-height: 1em;
	font-family: var(--ff-secondary);
	position: relative;
	color: transparent;
	display: block;
	width: fit-content;
	margin: auto;
	padding: 10px 0;
}
.austein em {
	position: relative;
	color: transparent;
	font-style: unset;
	padding: 10px 0;
	background-image: var(--gradient-purple);
	background-clip: text;
	z-index: 5;
}
.austein::before,
.austein::after  {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
	padding: 10px 0;
}
.austein::before {
	z-index: 2;
	-webkit-text-stroke: 8px #000;
	/* text-shadow:3px 5px 0 #000,-3px 3px 0 #000,3px -3px 0 #000,-3px -4px 0 #000,5px 0px 0 #000,-5px 0px 0 #000,-4px -3px 0 #000,0px -4px 0 #000,4px -2px 0 #000; */
}
.austein::after {
  z-index: 3;
	text-shadow: 1px 2px 0 #fff;
}
.austein-white::before {
	-webkit-text-stroke: 8px #fff;
	/* text-shadow:1px 5px 0 #fff,-2px 4px 0 #fff,0px 4px 0 #fff,-2px 2px 0 #fff,-3px -3px 0 #fff,-3px 2px 0 #fff,0px -3px 0 #fff,3px -1px 0 #fff,5px 0px 0 #fff; */
}
@media(max-width: 1024px) {
	.austein::before {
		-webkit-text-stroke: 6px #000;
	}
	.austein::after {
		text-shadow: .5px .5px 0 #fff;
	}
	.austein-white::before {
		-webkit-text-stroke: 6px #fff;
	}
}
/* .elementor-heading-title .austein {
	margin-top: -14px;
} */
@media(max-width: 767px) {
	.austein::before {
		-webkit-text-stroke: 4px #000;
	}
	/* .elementor-heading-title .austein {
		margin-top: -10px;
	} */
	.austein-white::before {
		-webkit-text-stroke: 4px #fff;
	}
}
.charter {
	display: block;
	width: fit-content;
	margin: auto;
	font-family: var(--ff-accent);
	color: var(--e-global-color-primary);
}
.hnt {
	font-size: var(--fs-90);
	line-height: 1em;
	position: relative;
	display: block;
	width: fit-content;
	margin: auto;
	font-family: var(--ff-primary);
	font-style: italic;
	color: var(--e-global-color-primary);
	-webkit-text-stroke: 2px #fff;
	/* text-shadow: -6px 0px #000,6px 0px #000,0px 5px #000,0px -5px #000,-4px -5px #000,6px -5px #000,-7px 5px #000,5px 5px #000; */
	text-wrap: balance;
}
@media (max-width:1024px) {
	.hnt {
		-webkit-text-stroke: .5px #fff;
	}
}
.hnt em {
	position: relative;
	z-index: 5;
}
.hnt::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	-webkit-text-stroke: 10px #000;
}
@supports (font: -apple-system-body) { 
	.hnt::before  {
		text-wrap: auto;
	} 
}
@media(max-width: 1024px) {
	.hnt::before {
		-webkit-text-stroke: 8px #000;
	}
}
@media(max-width: 576px) {
	.hnt::before {
		-webkit-text-stroke: 5px #000;
	}
}
.hnt.hnt-black {
	color: #333333;
}
.text-inline {
	display: inline-block;
}
.text-overide {
	font-family: 'Aeonik';
	font-weight: 600;
}
.cm-btn-pr .elementor-button span,
.cm-btn-sc .elementor-button span,
.cm-btn-pr .elementor-icon {
	position: relative;
}
.cm-btn-pr,
.cm-btn-sc {
	transition: .2s all linear;
}
.cm-btn-pr:hover,
.cm-btn-sc:hover {
	transform: scale(1.1);
}
.cm-btn-pr:hover .elementor-button span,
.cm-btn-sc:hover .elementor-button span {
	color: #fff!important;
}
.cm-btn-pr .elementor-button span,
.cm-btn-sc .elementor-button span {
	font-family: var(--ff-btn);
	font-size: var(--fs-24s);
	line-height: 1em;
	font-weight: 400;
	font-style: italic;
	letter-spacing: 1px;
	text-shadow: -2px 3px #00000040;
}
.cm-btn-pr .elementor-button,
.cm-btn-sc .elementor-button {
	position: relative;
	border: 0!important;
	border-radius: 0!important;
  background: unset!important;
}
.cm-btn-pr .elementor-button::before,
.cm-btn-sc .elementor-button::before,
.cm-btn-tr .elementor-grid-item::before  {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: skewX(-15deg);
	box-shadow: 0 0 0 4px black;
	border: 2px solid #ffffff;
	transition: .2s all linear;
}
.cm-btn-pr .elementor-button::before,
.cm-btn-tr .elementor-grid-item:nth-child(odd)::before {
	background-image: var(--gradient-orange);
}
.cm-btn-sc .elementor-button::before,
.cm-btn-tr .elementor-grid-item:nth-child(even)::before {
	background-image: var(--gradient-purple);
}
.cm-btn-tr .elementor-grid-item {
	position: relative;
	width: fit-content;
	padding: 10px;
	transition: .2s all linear;
}
.cm-btn-tr .elementor-grid-item:hover {
	transform: scale(1.1);
	z-index: 2;
}
.frame-sc .elementor-widget-container {
	height: fit-content!important;
	border: 8px solid transparent;
  border-image-slice: 1!important;
	border-image: var(--gradient-purple);
}
.frame-sc .elementor-widget-container img {
	border: 6px solid #fff;
}


/* Hero */
.hero-section .austein,
.hero-section .austein::before,
.hero-section .austein::after {
	font-size: var(--fs-80);
	line-height: 1em;
}
.hero-section .charter {
	margin-top: -.4em;
}
.banner-section .charter {
	margin-top: -.6em;
}
.hero-section .charter,
.banner-section .charter {
	font-size: var(--fs-170);
	line-height: 1em;
	font-style: italic;
	-webkit-text-stroke: 1px #fff;
	text-shadow: 5px 5px #000;
	margin-bottom: var(--padding-16);
}
@media (max-width:767px) {
	.hero-section .charter,
	.banner-section .charter {
		text-shadow: 3px 3px #000;
	}
}
.hero-section .hnt,
.banner-section .hnt {
	font-size: var(--fs-55);
	line-height: 1em;
	color: #fff;
	-webkit-text-stroke: unset;
	text-shadow: 2px 3px #034587;
}
.banner-section .charter {
	font-size: var(--fs-110);
}
.banner-section .charter.charter-plain {
	-webkit-text-stroke: unset;
	text-shadow: 1px 1px #fff,-1px -1px #fff,5px 5px #000;
}

/* Services */
.services-section .hnt {
	font-size: var(--fs-95);
	line-height: 1em;
}
.services-section .service-item .service-item--icon::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: calc(100% + 20px);
	height: calc(100% + 20px);
	transform: translate(-50%, -50%)skewX(-15deg);
	box-shadow: 0 0 0 6px black;
}
.services-section .service-item:nth-child(odd) .service-item--icon::before {
	background-image: var(--gradient-purple);
}
.services-section .service-item:nth-child(even) .service-item--icon::before {
	background-image: var(--gradient-orange);
}

/* Residential and Commercial */
.resicom-section .austein {
	font-size: var(--fs-60);
	line-height: 1em;
}
.resicom-section h3 {
	margin: 0;
	font-style: italic;
}
.resicom-section-inner .hnt-white {
	font-size: var(--fs-35);
	line-height: 1em;
	color: #fff;
	letter-spacing: 2px;
	-webkit-text-stroke: unset;
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading button,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading button span,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading {
	position: relative;
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading button {
	z-index: 3;
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading::before,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title[aria-selected=true]::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: skewX(-15deg);
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading {
	width: fit-content;
	margin: auto;
	z-index: 2;
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tabs-heading::before  {
	background-color: var(--e-global-color-secondary);
	height: calc(100% + 10px);
	width: calc(100% + 10px);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) skew(-15deg);
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title[aria-selected=true]::before {
	border: 1px solid #fff;
	background-color: var(--e-global-color-primary);
}
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title:hover,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title:active,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title:focus,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title:focus-visible,
.tabs-wrapper .elementor-widget-n-tabs .e-n-tab-title:focus-within {
	border: 0;
}
.resicom-section .e-n-tabs-content > div {
	border: 2px solid #6700e03d;
}

/* Process */
.process-section .hnt {
	font-size: var(--fs-85);
	line-height: 1em;
}
.process-section .austein {
	font-size: var(--fs-55);
	line-height: 1em;
}
.process-section .card-wrapper {
	counter-reset: card-count;
}
.process-section .card-wrapper .card-item {
	position: relative;
}
.process-section .card-wrapper .card-item::before,
.process-section .card-wrapper .card-item::after {
	position: absolute;
	left: 50%;
}
.process-section .card-wrapper .card-item::before {
	content: '';
	top: -28px;
	width: 66px;
	height: 60px;
	transform: translateX(-50%)skewX(-15deg);
	background-image: var(--gradient-orange);
	border: 4px solid #fff;
}
.process-section .card-wrapper .card-item::after {
	top: -18px;
	width: fit-content;
	height: fit-content;
	transform: translateX(-50%);
	counter-increment: card-count;
	content: ''counter(card-count);
	font-size: clamp(22px, calc(1.042rem + 1.481vw), 37px);
	line-height: 1em;
	font-weight: 800;
	color: #000;
	font-family: var(--ff-txt);
}
@media (max-width:767px) {
	.process-section .card-wrapper .card-item::after {
		top: -12px;
	}
}

/* Why Choose Us */
.why-choose-section .card-wrapper .card-item h3 {
	text-wrap: balance;
}
.why-choose-section .card-wrapper .card-item {
	box-shadow: 2px 4px #000;
}
.why-choose-section .card-wrapper .card-item .card-img {
	position: relative;
	width: fit-content;
	margin: -30px auto 40px;
}
.why-choose-section .card-wrapper .card-item .card-img::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 104px;
	height: 92px;
	transform: translate(-50%,-50%)skewX(-15deg);
	background-image: var(--gradient-orange);
	border: 4px solid #fff;
}
.why-choose-section .card-wrapper .card-item .card-img img {
	position: relative;
}
.why-choose-section .bg-image {
	position: relative;
	z-index: -1;
	margin-top: calc(-100vw * .48);
}
.why-choose-section .divider {
	margin-top: calc(-100vw * .17);
}
@media (max-width:767px) {
	.why-choose-section .divider {
		margin-top: calc(-100vw * .2);
	}
}
.why-choose-section-service {
	position: relative;
}
.why-choose-section-service::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(180deg, #e76801 -450%, #00000000 60%);
}
.why-choose-section-service .bg-image {
	margin-top: calc(-100vw * .48);
}

/* Before After */
.gallery-section {
	position: relative;
}
.gallery-section::before {
	content: '';
	position: absolute;
	top: 25%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform: translate(-50%, -50%);
	background-image: radial-gradient(at center center, #fff -10%, #00000000 80%);
	opacity: .25;
	z-index: 1;
}
.gallery-section .section-wrapper {
	z-index: 2;
}
.gallery-section .gallery-slider-wrapper .slider-item,
.gallery-section .gallery-slider-wrapper .e-con-inner,
.gallery-section .gallery-slider-wrapper .e-con-inner > .elementor-element {
  padding: 0;
}
.gallery-section .section-wrapper .inner-wrapper {
	transform: scale(.9);
}
.gallery-section .gallery-slider-wrapper .swiper {
  padding: clamp(0rem, -1.4239rem + 8.1855vw, 6.25rem) 0 clamp(3.375rem, 0.3666rem + 6.2756vw, 6.25rem)!important;
}
.gallery-section .gallery-slider-wrapper .swiper-slide .img-wrapper,
.gallery-section .gallery-slider-wrapper .swiper-slide .elementor-widget-image {
	height: 100%;
}
.gallery-section .gallery-slider-wrapper .swiper-slide .elementor-widget-image img {
	border: 8px solid #fff;
}
.gallery-section .gallery-slider-wrapper .swiper-slide-next .slider-item .elementor-widget-image {
	position: relative;
  z-index: 3;
	transform: scale(1.2);
	transition: .4s all linear;
}
.gallery-section .gallery-slider-wrapper .swiper-slide-next .slider-item .elementor-widget-image::before {
	content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% + 16px);
  height: calc(100% + 16px);
	background-image: linear-gradient(180deg, #a865f7 20%, #6700e0 100%);
  transform: translate(-50%, -50%);
  z-index: 4;
}
.gallery-section .gallery-slider-wrapper .swiper-slide-next .slider-item .elementor-widget-image .elementor-widget-container {
	position: relative;
	z-index: 5;
}
@media (max-width:879px) {
	.gallery-section .gallery-slider-wrapper .swiper-slide-next .slider-item .elementor-widget-image {
		transform: unset;
	}
	.gallery-section .gallery-slider-wrapper .swiper-slide-next .slider-item .elementor-widget-image::before {
		background-image: unset;
	}
	.gallery-section .gallery-slider-wrapper .swiper-slide-active .slider-item .elementor-widget-image {
		position: relative;
		width: fit-content;
		padding: 0 8px;
		margin: auto;
		z-index: 3;
	}
	.gallery-section .gallery-slider-wrapper .swiper-slide-active .slider-item .elementor-widget-image::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: calc(100% + 16px);
		height: calc(100% + 16px);
		background-image: linear-gradient(180deg, #a865f7 20%, #6700e0 100%);
		transform: translate(-50%, -50%);
		z-index: 4;
	}
	.gallery-section .gallery-slider-wrapper .swiper-slide-active,
	.gallery-section .gallery-slider-wrapper .swiper-slide-active .slider-item .elementor-widget-image .elementor-widget-container {
		position: relative;
		z-index: 5;
	}
}
.gallery-section .gallery-slider-wrapper .swiper-pagination-bullet {
  background-color: #ccc;
  width: 66px;
  height: 9px;
  border-radius: 0;
  margin: 0 10px !important;
  transition: 0.2s all linear;
  opacity: 1;
}
.gallery-section .gallery-slider-wrapper .swiper-pagination-bullet.swiper-pagination-bullet-active,
.gallery-section .gallery-slider-wrapper .swiper-pagination-bullet:hover {
  background-color: var(--e-global-color-primary);
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button i::before {
  display: none;
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-prev::before,
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-next::before {
  content: "";
  position: absolute;
  top: 50%;
  height: clamp(2.5rem, -2.3403rem + 7.563vw, 4.75rem);;
  width: clamp(2.5rem, -2.3403rem + 7.563vw, 4.75rem);;
  transform: translateY(-50%);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: 0.2s all linear;
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-prev::before {
  right: clamp(1rem, -2.7269rem + 5.042vw, 2rem);;
  background-image: url(/wp-content/uploads/2025/10/chevron-left-white.svg);
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-prev:hover::before {
  transform: translateY(-50%) scale(1.1);
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-next::before {
  left: clamp(1rem, -2.7269rem + 5.042vw, 2rem);;
  background-image: url(/wp-content/uploads/2025/10/chevron-right-white.svg);
}
.gallery-section .gallery-slider-wrapper .elementor-swiper-button.elementor-swiper-button-next:hover::before {
  transform: translateY(-50%) scale(1.1);
}
@media (max-width:879px) {
	.gallery-section .gallery-slider-wrapper .swiper-pagination {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
		width: 100%;
    gap: 10px 0;
	}
	.gallery-section .gallery-slider-wrapper .swiper-pagination-bullet {
		width: 8px;
		height: 8px;
	}
}

/* FAQ */
.faq-section .hnt {
	font-size: var(--fs-95);
	line-height: 1em;
	-webkit-text-stroke: 2px #000;
}
.faq-section .hnt::before {
	-webkit-text-stroke: 2px #000;
}
.faq-section .hnt em {
	color: #fff;
}
.faq-section .e-n-accordion-item-title {
  position: relative;
  justify-content: space-between;
  border: 0;
  z-index: 3;
	padding: 12px 12px 12px 32px;
}
.faq-section .e-n-accordion-item-title::before,
.faq-section .e-n-accordion-item > .elementor-element::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #fff;
  transform: skewX(-15deg);
}
.faq-section .e-n-accordion-item-title::before {
  background-color: #000;
  transition: 0.2s all linear;
}
.faq-section .e-n-accordion-item[open] > .e-n-accordion-item-title::before {
  background-color: unset;
  background-image: var(--gradient-purple);
  transition: 0.2s all linear;
}
.faq-section .e-n-accordion-item > .elementor-element::before {
  background-color: #fff;
  height: calc(100% + 20px);
  top: unset;
  bottom: 0;
  left: -10px;
}
@media (max-width:767px) {
	.faq-section .e-n-accordion-item > .elementor-element::before {
		width: 100%;
		left: 0;
	}
	.faq-section .e-n-accordion-item-title::before,
	.faq-section .e-n-accordion-item > .elementor-element::before {
		transform: skewX(-6deg);
	}
}
.faq-section .e-n-accordion-item {
  padding: 10px 50px;
}
@media (max-width:767px) {
	.faq-section .e-n-accordion-item {
		padding: 10px 30px;
	}
}
.faq-section .e-n-accordion-item > .elementor-element {
  border: 0;
}
.faq-section .e-n-accordion-item-title span {
  position: relative;
  color: #fff;
  height: fit-content;
}
.faq-section .e-n-accordion-item-title span i::before {
  color: #fff;
  font-size: var(--fs-35)
}
.faq-section .e-n-accordion-item-title-header .e-n-accordion-item-title-text {
  font-size: var(--fs-23);
  line-height: 1em;
  font-family: var(--ff-body);
}
.faq-section .e-n-accordion-item .e-con-inner {
  padding: 26px 20px 16px;
}
@media (max-width:767px) {
	.faq-section .e-n-accordion-item .e-con-inner {
		padding: 10px;
	}
}
.faq-section .e-n-accordion-item-title[aria-expanded="true"]::before {
	border: 5px solid #000;
}
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened i,
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed i  {
	position: relative;
}
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened,
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed {
	position: relative;
	padding: 14px 18px;
}
@media (max-width:767px) {
	.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened,
	.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed {
		padding: 10px 14px;
	}
}
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened::before,
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transform: skewX(-15deg);
	transition: .2s all linear;
}
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened::before {
	background-image: var(--gradient-orange);
	border: 1px solid #fff;
}
.faq-section .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed::before {
	background-image: var(--gradient-purple);
	border: 5px solid #fff;
}

/* Service Area */
.service-section .elementor-image-box-img,
.service-section .elementor-image-box-img img,
.service-section .elementor-widget-image-box {
  position: relative;
}
.service-section .elementor-image-box-img::before,
.service-section .elementor-widget-image-box::before,
.service-section .elementor-widget-image-box::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% + 24px);
  height: calc(100% + 20px);
  transform: translate(-50%, -50%) skewX(-15deg);
}
.service-section .elementor-widget-image-box:nth-child(odd) .elementor-image-box-img::before {
  background-image: var(--gradient-orange);
  border: 2px solid #ffffff;
  box-shadow: 0 0 0 4px black;
}
.service-section .elementor-widget-image-box:nth-child(even) .elementor-image-box-img::before {
  background-image: var(--gradient-purple);
  border: 2px solid #ffffff;
  box-shadow: 0 0 0 4px black;
}
.service-section .elementor-widget-image-box:nth-child(odd)::before,
.service-section .elementor-widget-image-box:nth-child(odd)::after,
.service-section .elementor-widget-image-box:nth-child(even)::before,
.service-section .elementor-widget-image-box:nth-child(even)::after {
  border: 2px solid transparent;
	border-right: 0;
  border-image-slice: 1 !important;
	width: calc(100% + 44px);
	height: 100%;
}
.service-section .elementor-widget-image-box:nth-child(odd)::before {
  background-image: linear-gradient(90deg, #e76801 -250%, #ffffff00 100%);
  border-image: linear-gradient(90deg, #e76801 -50%, #ffffff00 60%);
}
.service-section .elementor-widget-image-box:nth-child(even)::before {
  background-image: linear-gradient(90deg, #6700e0 -250%, #ffffff00 100%);
  border-image: linear-gradient(90deg, #6700e0 -50%, #ffffff00 60%);
}
.service-section .list-item{
	max-width: calc(50% - 8px)!important;
	flex: 0 0 calc(50% - 10px);
}
.service-section .list-item.list-three {
	max-width: calc(33% - 8px)!important;
	flex: 0 0 calc(33% - 10px);
}
@media (max-width: 880px) {
	.service-section .list-item,
	.service-section .list-item.list-three {
		max-width: 100%!important;
		flex: 0 0 100%;
	}
}
.service-section .map-wrapper img {
  border: 12px solid transparent;
  border-image-slice: 1 !important;
  border-image: var(--gradient-purple);
}
.service-section .list-wrapper {
	/* max-height: 600px;
	overflow-y: scroll;
	overflow-x: hidden; */
	display: flex;
	flex-flow: row wrap;
	padding: 0 0 0 40px;
}
.service-section .elementor-image-box-content span {
	padding: 16px;
	text-transform: uppercase;
	position: relative;
	display: block;
	width: fit-content;
	font-size: var(--fs-30);
	font-family: var(--ff-primary);
	font-style: italic;
	font-weight: 800;
	color: #000;
	text-wrap: balance;
	z-index: 5;
}
.service-section .elementor-image-box-content span a {
	padding: 16px 0;
}
.service-section .elementor-image-box-img {
	min-width: 34px;
}
@media (max-width:576px) {
	.service-section .list-item {
		margin-left: -8px;
	}
	.service-section .elementor-image-box-img {
		transform: scale(.8);
	}
	.service-section .elementor-image-box-wrapper {
		display: flex;
		flex-flow: row;
		justify-content: space-between;
		align-items: center;
	}
}
.service-section .bg-image {
	position: relative;
	z-index: -1;
	margin-top: calc(-100vw * .48);
}

/* CTA */
.cta-section .charter {
	margin-top: -.4em;
	margin-left: unset;
	margin-right: unset;
	font-size: var(--fs-85s);
	line-height: 1em;
	color: #fff;
	text-shadow: 5px 5px #00000012;
	text-wrap: balance;
}
.cta-section .austein {
	margin: inherit;
}
@media(max-width: 1024px) {
	.cta-section .charter {
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		text-shadow: 2px 2px #00000012;
	}
	.cta-section .austein {
		/* margin: -10px auto 0; */
		margin: 0 auto;
	}
}
.cta-section {
	margin-top: calc(-100vw * .28);
}
.cta-section-inner {
	margin-top: calc(-100vw * .16);
}
.cta-section .section-wrapper {
	top: calc(100vw * .23);
}
@media(max-width: 1900px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .25);
	}
}
@media(max-width: 1600px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .22);
	}
}
@media(max-width: 1400px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .2);
	}
}
@media(max-width: 1200px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .19);
	}
}
@media(max-width: 1024px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .21);
	}
	.cta-section .e-con-inner {
		gap: 0;
	}
}
@media(max-width: 880px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .2);
	}
}
@media(max-width: 768px) {
	.cta-section .charter {
		width: 60%;
	}
	.cta-section .section-wrapper {
		top: calc(100vw * .21);
	}
	.cta-section .e-con.e-flex {
		margin-top: -2px;
	}
	/*.cta-section .cta-btn {
		display: none;
	}*/
}
@media(max-width: 576px) {
	.cta-section .charter {
		width: 100%;
	}
	.cta-section .section-wrapper {
		top: calc(100vw * .28);
	}
}
@media(max-width: 420px) {
	.cta-section .section-wrapper {
		top: calc(100vw * .27);
	}
}

.cta-section .image-wrapper img {
	max-width: calc(100% - 80px);
}
@media(max-width: 1200px) {
	.cta-section .image-wrapper img {
    max-width: calc(100% - 14vw);
	}
}
.cta-section-service {
	margin-top: calc(-100vw * 0.2);
}


/* CTA2 */
.cta2-section {
	margin-top: calc(-100vw * .23);
}
.cta2-section .charter {
	margin-top: -.4em;
	font-size: var(--fs-85s);
	line-height: 1em;
	color: #fff;
	text-shadow: 5px 5px #00000012;
	text-wrap: balance;
}
@media (max-width:767px) {
	.cta2-section .charter {
		text-shadow: 2px 2px #00000012;
	}
}
.cta2-section .charter em {
	font-style: normal;
}
.cta2-section .austein {
	margin-left: unset;
}
@media (max-width:1024px) {
	.cta2-section .austein {
		margin-left: auto;
	}
}
@media (max-width:1024px) {
	.cta2-section .section-wrapper > div {
		width: 100%;
	}
}

/* Location Pages */

/* Seasonal Challenges */
.seasonal-section-inner .section-heading-text .hnt {
	font-size: var(--fs-35);
	line-height: 1em;
	-webkit-text-stroke: 1px #fff;
}
.seasonal-section-inner .section-heading-text .hnt-purple {
	color: var(--e-global-color-secondary);
	font-size: var(--fs-45);
	line-height: 1em;
	-webkit-text-stroke: 1px #fff;
}
.seasonal-section-inner .section-heading-text .austein em {
	color: var(--e-global-color-secondary);
}
.seasonal-section-inner .section-heading-text .aeonik {
	display: block;
	margin-top: 16px;
	color: #000;
	font-size: 15px;
	line-height: 1em;
}
.seasonal-section-inner  .section-wrapper {
	border: 1px solid #6700e040;
}

/* Bundles */
.bundles-section .title-wrapper {
	position: absolute;
	top: -34px;
	left: 50%;
	transform: translateX(-50%);
	width: fit-content;
	text-wrap: nowrap;
}
.bundles-section .title-wrapper::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: skewX(-15deg);
	border: 2px solid #ffffff;
	transition: .2s all linear;
}
.bundles-section .item-wrapper:nth-child(odd) .title-wrapper::before {
	background-image: var(--gradient-orange);
}
.bundles-section .item-wrapper:nth-child(even) .title-wrapper::before {
	background-image: var(--gradient-purple);
}
.bundles-section .title-wrapper h3 {
	position: relative;
	padding: 16px 40px;
	color: #fff;
}

/* Areas Served */
.service-section .location-map {
	border: 8px solid transparent;
  border-image-slice: 1 !important;
  border-image: var(--gradient-purple);
}

/* Contact Us */
.contact-section .hnt {
	margin: unset;
	font-size: var(--fs-60);
}
@media (max-width: 767px) {
	.contact-section .hnt {
		margin: auto;
	}
}
.contact-section .hnt em {
	padding-right: 10px;
}
.form_label--text {
	padding-bottom: 6px;
    display: block;
}
.wpcf7-response-output {
	padding-top: 7px!important;
	color: red!important;
}

/* Others */
.dryer-vent-cta {
	margin-top: calc(-100vw * .22);
}
.home-cta {
	margin-top: calc(-100vw * .24);
}
.press-cta {
	margin-top: calc(100vw * .02);
}


/* Smooth header fade-in (Elementor header) */
header.elementor-location-header {
  opacity: 0;
  transition: opacity 0.6s ease-out;
  /* Optional: CSS-only fallback if JS totally fails */
  animation: header-fallback 0.1s 1.5s forwards;
}

body.header-loaded header.elementor-location-header {
  opacity: 1;
  animation: none; /* Disable fallback animation when JS works */
}

/* Fallback animation for when JavaScript doesn't load */
@keyframes header-fallback {
  to {
    opacity: 1;
  }
}
