/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

/*
 * Global CSS
 * */

body{
	--white-color: var(--e-global-color-ccde193);
	--bg-color: var(--e-global-color-56ce89d);
	--divider-color: var(--e-global-color-7b43325);
	overflow-x: clip;
}

.br-desktop-none br{
    display: none;
}

figure,
.elementor-widget-image-carousel .swiper .swiper-slide figure{
    line-height: 0;
}

.elementor-widget-theme-post-excerpt p:last-child,
.elementor-widget-text-editor p:last-child{
    margin-bottom: 0 !important;
}

.elementor-widget-icon .elementor-icon-wrapper,
.elementor-widget-icon-box .elementor-icon-box-icon{
    line-height: 0;
}

.icon-height-size.elementor-widget-icon .elementor-icon-wrapper .elementor-icon svg{
    height: auto;
}

.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-image-box .elementor-image-box-title{
    margin-top: 0;
}

.icon-box-icon-center.elementor-widget-icon-box .elementor-icon-box-wrapper{
    align-items: center;
}

/* Button CSS */

.elementor-widget-button,
.elementor-widget-button .elementor-button-wrapper{
	line-height: 0;
}

.elementor-widget-button .elementor-button{
	position: relative;
	overflow: hidden;
	z-index: 1;
	transition: all 0.5s ease-in-out;
}

.elementor-widget-button .elementor-button:not(:has(.elementor-button-icon)){
	padding: 12px 20px;
}

.elementor-widget-button .elementor-button:before{
	content: '';
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	bottom: 0;
	background-color: var(--e-global-color-primary);
	width: 0;
	height: 100%;
	transition: all 0.5s ease-in-out;
	z-index: -1;
}

.white-btn.elementor-widget-button .elementor-button:before{
	background-color: var(--white-color);
}

.elementor-widget-button .elementor-button:hover:before,
.elementor-widget-button .elementor-button:focus:before{
	left: 0;
	right: auto;
	width: 100%;
}

.white-btn.elementor-widget-button .elementor-button:hover,
.white-btn.elementor-widget-button .elementor-button:focus{
	color: var(--e-global-color-primary);
}

.white-btn.elementor-widget-button .elementor-button:hover:before,
.white-btn.elementor-widget-button .elementor-button:focus:before{
	background-color: var(--white-color);
}

.no-bg.elementor-widget-button .elementor-button:before,
.underline-btn.elementor-widget-button .elementor-button:before{
	display: none;
}

.btn-arrow-right.elementor-align-justify .elementor-button-content-wrapper{
	justify-content: space-between;
}

.btn-arrow-right.elementor-align-justify .elementor-button-text{
	width: 100%;
}

.elementor-widget-button .elementor-button .elementor-button-content-wrapper{
	align-items: center;
	gap: 10px;
}

/* Button Icon BG CSS */
.elementor-widget-button .elementor-button .elementor-button-content-wrapper .elementor-button-icon{
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--e-global-color-primary);
	border-radius: 5px;
	width: 42px;
	height: 42px;
	line-height: 0;
	transition: all 0.6s ease-in-out;
}

.no-bg.elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-content-wrapper .elementor-button-icon{
	background-color: transparent;
	width: auto;
	height: auto;
}

.elementor-widget-button .elementor-button:hover .elementor-button-content-wrapper .elementor-button-icon,
.elementor-widget-button .elementor-button:focus .elementor-button-content-wrapper .elementor-button-icon{
	background-color: var(--white-color);
}

.white-btn.elementor-widget-button .elementor-button:hover .elementor-button-content-wrapper .elementor-button-icon,
.white-btn.elementor-widget-button .elementor-button:focus .elementor-button-content-wrapper .elementor-button-icon{
	background-color: var(--e-global-color-primary);
}

/* Button Icon CSS */
.elementor-widget-button .elementor-button .elementor-button-icon svg{
	width: 16px;
	height: 16px;
	transition: all 0.6s ease-in-out;
}

.elementor-widget-button .elementor-button:hover .elementor-button-icon svg,
.elementor-widget-button .elementor-button:focus .elementor-button-icon svg{
	fill: var(--e-global-color-primary);
}

.white-btn.elementor-widget-button .elementor-button:hover .elementor-button-icon svg,
.white-btn.elementor-widget-button .elementor-button:focus .elementor-button-icon svg{
	fill: var(--white-color);
}

.elementor-widget-button .elementor-button .elementor-button-icon svg path{
	transition: all 0.6s ease-in-out;
}

/* Button Text CSS */

.elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-text{
	padding-left: 20px;
	width: calc(100% - 52px);
}

.no-bg.elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-text,
.elementor-widget-button .elementor-button:not(:has(.elementor-button-icon)) .elementor-button-text{
	padding-left: 0;
	width: auto;
}

.underline-btn.elementor-widget-button .elementor-button .elementor-button-text{
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;	
}

/* Icon & Images Box CSS */
.elementor-widget-icon-box .elementor-icon-box-description a,
.elementor-widget-image-box .elementor-image-box-description a{
    color: inherit;
    transition: all 0.3s ease-in-out;
}

/*  Tab Widget CSS */
.elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:hover,
.elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title:focus{
    border-radius: var(--n-tabs-title-border-radius);
}

.elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title{
    transition: all 0.3s ease-in-out;
}

.elementor-widget-n-tabs .e-n-tabs-heading .e-n-tab-title .e-n-tab-icon svg path{
    transition: all 0.3s;
}

/* Menu Border CSS */
.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a, 
.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a:focus, 
.elementor-widget-nav-menu ul.elementor-nav-menu--dropdown a:hover{
	border-inline-start: 0 !important;
}

/* Section Title CSS */
.section-title p.elementor-heading-title{
	position: relative;
	padding-left: 16px;
}

.section-title p.elementor-heading-title::before{
	content: '';
    position: absolute;
    top: 50%;
    left: 0;
    bottom: 0;
    background-color: var(--e-global-color-accent);
    width: 6px;
    height: 6px;
    transform: translate(0px, -50%);
}

/* Column-2 CSS */

.column-2 .elementor-icon-list-items{
	display: flex;
	flex-wrap: wrap;
	gap: 20px 30px;
}

.column-2 .elementor-icon-list-items .elementor-icon-list-item{
	width: calc(50% - 15px);
}

/* Icon Box Hover CSS */

.icon-box-hover.elementor-element .elementor-icon{
	position: relative;
	overflow: hidden;
}

.icon-box-hover.elementor-element .elementor-icon:before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--e-global-color-primary);
	border-radius: 5px;
    width: 100%;
    height: 100%;
    transform: scale(0) rotate(180deg);
    transition: all 0.4s ease-in-out;
}

.dark.icon-box-hover.elementor-element .elementor-icon:before{
	background-color: var(--white-color);
}

.icon-box-hover.elementor-element:hover .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.elementor-element.dark.icon-box-hover:hover .elementor-icon{
	color: var(--e-global-color-primary) !important;
	fill: var(--e-global-color-primary) !important;
}

@media only screen and (max-width: 1320px) {
	
	.container-padding-left{
		padding-left: 10px;
	}
	
	.container-padding-right{
		padding-left: 10px;
	}
}

@media only screen and (max-width: 1024px) {
	
	.br-tablet-none br{
		display: none;
	}
	
	.container-padding-left{
		padding-left: var(--padding-left);
	}
	
	.container-padding-right{
		padding-right: var(--padding-right);
	}
	
}

@media only screen and (max-width: 767px) {
	
	.br-mobile-none br{
		display: none;
	}
	
	.elementor-widget-button .elementor-button .elementor-button-content-wrapper .elementor-button-icon{
		width: 35px;
		height: 35px;
	}
	
	.elementor-widget-button .elementor-button .elementor-button-text{
		
	}
	
	.elementor-widget-button .elementor-button:has(.elementor-button-icon) .elementor-button-text{
		padding-left: 10px;
		width: calc(100% - 45px);
	}
	
	.column-2 .elementor-icon-list-items .elementor-icon-list-item{
		width: 100%;
	}

}

/* 
 * Header CSS 
 * */

/* For Editor if Header BG Color Was White OR Transparent */
body .site-header,
body.hello-elementor-default .elementor-location-header,
body.elementor-editor-active .elementor-location-header,
body.elementor-template-full-width .elementor-location-header{
	background-image: url("./images/dots-img.png");
	background-position: top center;
	background-repeat: repeat-x;
	background-size: cover;
}

/* For Mega Menu */
body.hello-elementor-default .elementor-widget-maxmegamenu .elementor-location-header,
body.elementor-template-full-width .elementor-widget-maxmegamenu .elementor-location-header{
	background-image: none;
}

/* If Header Are Sticky By Top Sider and Also Adding JS */
.header2-container{
	position: fixed !important;
	top: -110px !important;
	left: 0;
	right: 0;
	z-index: 9999;
	transition: all 0.4s ease-in-out !important;
	filter: drop-shadow(0px 0px 2px rgb(from var(--e-global-color-accent) r g b / 10%));
}

.header2-container.header-show{
	top: 20px !important;
}

.main-header.elementor-sticky{
	transition: all 0.3s ease-in-out
}

.header-logo img[src$=".svg"]{
	width: auto !important;
}

.header-logo a{
	display: block;
}

.header-logo img{
	background-color: var(--white-color);
	padding: 20px;
	transition: all 0.3s ease-in-out;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.10);
}

.mobile-menu{
	display: none !important;
}

.header-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, 
.header-menu .elementor-nav-menu__container.elementor-nav-menu--dropdown{
	transition: all 0.3s ease-in-out;
}

.main-header.elementor-sticky.elementor-sticky--effects .header-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, 
.main-header.elementor-sticky.elementor-sticky--effects .header-menu .elementor-nav-menu__container.elementor-nav-menu--dropdown{
	margin-top: 39px !important;
}

.top-bar-contact-info .elementor-icon-box-content .elementor-icon-box-description{
	word-break: break-word;
}

.header-btn .elementor-button-wrapper,
.header-btn .elementor-button-wrapper .elementor-button,
.header-btn .elementor-button-wrapper .elementor-button .elementor-button-content-wrapper{
	height: 100%;
}

/*
 * Mex Mega Menu CSS
 * Class Name (header-menu)
 * */

/* Mex Mega Menu CSS */

.header-menu #mega-menu-wrap-menu-1 #mega-menu-menu-1 li.mega-menu-item.mobile-menu{
	display: none !important;
}

/* Menu Visiable CSS */
.header-menu ul li.mega-menu-visiable ul{
    opacity: 1 !important;
	visibility: visible !important;
}

/* Mega Menu Bar First Menu Padding Left CSS */
.header-menu .mega-menu-wrap > ul > li:first-child > a{
/* 	padding-left: 0 !important */
}

.header-menu .mega-menu-wrap > ul > li a{
	font-family: var(--e-global-typography-primary-font-family), Sans-serif !important;
    font-weight: 500 !important;
}

.header-menu .mega-menu-wrap > ul > li > ul{
	margin-top: 15px !important;
	box-shadow: 0px 0px 10px 5px rgb(from var(--e-global-color-secondary) r g b / 10%);
}

.header2-container .header-menu .mega-menu-wrap > ul > li > ul{
	margin-top: 23px !important;
}

/* If Mega Menu Triangle Single For Custom CSS */
.header-menu .mega-menu-item.mega-menu-item-has-children > a.mega-menu-link:before{
	content: '';
	position: absolute !important;
	bottom: -16px;
	left: 50%;
	transform: translatex(-50%);
	border-left: 14px solid transparent;
	border-right: 14px solid transparent;
	border-bottom: 14px solid var(--e-global-color-accent);
	transition: all 0.3s ease-in-out;
	opacity: 0;
	visibility: hidden;
}

.header-menu .mega-menu-item.mega-menu-item-has-children .mega-indicator{
	display: none !important;
}

.header2-container .header-menu .mega-menu-item.mega-menu-item-has-children > a.mega-menu-link:before{
	bottom: -23px;
}

.header-menu .mega-menu-item.mega-menu-item-has-children a.mega-menu-link:hover:before,
.header-menu .mega-menu-item.mega-menu-item-has-children a.mega-menu-link:focus:before,
.header-menu .mega-menu-item.mega-menu-item-has-children.mega-toggle-on a.mega-menu-link:before{
	opacity: 1;
	visibility: visible;
}

/* Mega Menu Templated CSS */
.header-mega-menu-icon-box-list .elementor-icon-box-wrapper:has(.elementor-icon-box-description){
	align-items: start;
}

.header-mega-menu-icon-box-list .elementor-icon-box-wrapper:not(:has(.elementor-icon-box-description)){
	align-items: center;
}

.header-mega-menu-icon-box-list .elementor-icon-box-wrapper .elementor-icon-box-description{
	margin-bottom: 0 !important;
}

@media only screen and (max-width: 1250px) {
	
	.main-header .header-logo-menu-container{
		width: 60%;
	}
	
	.main-header .header-button-container .elementor-widget-social-icons .elementor-widget-container{
		padding: 0 20px;
	}
	
}

@media only screen and (max-width: 1024px) {
	
	.header-menu-container{
		padding-left: var(--padding-left);
	}
	
	.main-header .header-logo-menu-container{
		width: var(--width);
	}
	
	.mobile-menu{
		display: block !important;
	}
	
	.main-header.elementor-sticky.elementor-sticky--effects .header-menu .elementor-nav-menu__container.elementor-nav-menu--dropdown{
		margin-top: 28px !important;
	}
	
	/* Mega Menu CSS */
	
	.header-menu #mega-menu-wrap-menu-1 #mega-menu-menu-1 li.mega-menu-item.mobile-menu{
		display: block !important;
	}
	
	/* Menu Toggle Button CSS Start */
	.header-menu #mega-menu-wrap-menu-1 .mega-menu-toggle,
	.header-menu .mega-menu-wrap .mega-menu-toggle{
		align-items: center;
		justify-content: center;
		width: 40px;
        height: 40px;
		border-radius: 6px;
	}
	
	.header-menu #mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-box{
		width: 35px;
    	height: 23px;
	}
	
	.header-menu #mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-blocks-right .mega-toggle-block:only-child{
		margin-left: 6px;
	}
	
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner,
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner:before,
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner:after{
		width: 35px !important;
	}
	/* Menu Toggle Button CSS End */
	
	/* Menu Menu List CSS Start */
	.header-menu ul.mega-menu{
		margin-top: 20px !important;
		margin-left: 20px !important;
        width: calc(100vw - 40px) !important;
        max-height: calc(100vh - 350px) !important;
        border-radius: 6px !important;
		overflow: auto !important;
		filter: drop-shadow(0px 10px 5px rgb(from var(--e-global-color-text) r g b / 10%));
	}
	
	.header2-container .header-menu .mega-menu-wrap > ul > li > ul{
		margin-top: 0 !important;
	}
	
	.header-menu .mega-menu-wrap > ul > li > ul{
		margin-top: 0 !important;
		box-shadow: none;
		filter: none;
	}	
	
	.header-menu #mega-menu-wrap-menu-1 #mega-menu-menu-1>li.mega-menu-item>a.mega-menu-link{
		display: flex;
		padding: 0 20px;
	}
	
	/* Mega Menu Bar First Menu Padding Left CSS */
	.header-menu .mega-menu-wrap > ul > li:first-child > a{
		padding-left: 20px !important
	}
	
	/* Menu Hover And Active Style CSS */
	.header-menu #mega-menu-wrap-menu-1 #mega-menu-menu-1>li.mega-menu-item>a.mega-menu-link:hover{
		color: var(--white-color);
		background: var(--e-global-color-accent);
	}
	
	.header-menu .mega-menu-item.mega-menu-item-has-children > a.mega-menu-link:before{
		display: none !important;
		position: absolute !important;
		bottom: 0;
		left: 0;
		transform: translatex(0);
		border: 0px solid transparent;
		opacity: 0 !important;
	}
	
	/* Sub Menu List CSS */
	.header-menu #mega-menu-wrap-menu-1 #mega-menu-menu-1>li.mega-menu-item> ul li a.mega-menu-link{
		font-size: 16px !important;
		line-height: 40px !important;
		padding: 0 30px !important;
	}
	
	.main-header.elementor-sticky.elementor-sticky--effects .header-menu .mega-menu-wrap > ul > li > ul{
		margin-top: 0 !important;
	}
	
	.header-menu .mega-menu-item.mega-menu-item-has-children .mega-indicator{
		display: inline-block !important;
		margin: 0 0 0 10px !important;
	}
	
	/* Menu Menu List CSS End */

	/* Mega Menu Template CSS */
}

@media only screen and (max-width: 767px) {
	
	.header2-container.header-show{
		top: 10px !important;
	}
	
	.main-header.elementor-sticky.elementor-sticky--effects .header-menu .elementor-nav-menu__container.elementor-nav-menu--dropdown{
		margin-top: 23px !important;
	}	
	
	/* Header Mega Menu CSS */
	
	.header-menu #mega-menu-wrap-menu-1 .mega-menu-toggle,
	.header-menu .mega-menu-wrap .mega-menu-toggle{
		width: 35px;
        height: 35px;
	}
	
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner, 
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner:before, 
	.header-menu .mega-menu-wrap .mega-menu-toggle .mega-toggle-animated-box .mega-toggle-animated-inner:after{
		width: 30px !important;
		height: 3px !important;
	}
	
	.header-menu #mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-box{
		width: 30px;
        height: 22px;
	}
	
	.header-menu ul.mega-menu{
		margin-top: 17px !important;
		margin-left: 10px !important;
        width: calc(100vw - 20px) !important;		
		max-height: calc(100vh - 200px) !important;
	}
	
	/* Mega Menu Templated CSS */
}


/* 
 * Footer CSS 
 * */

.footer-menu nav ul li{
	position: relative;
	padding-left: 16px;
}

.footer-menu nav ul li:before{
	content: '';
	position: absolute;
	top: 10px;
	left: 0;
	background-color: var(--e-global-color-accent);
	width: 6px;
	height: 6px;
}

.footer-main-container:before{
	filter: blur(5px);
}


@media only screen and (max-width: 767px) {
	
	.footer-menu nav ul li{
		padding-left: 14px;
	} 
	
	.footer-menu nav ul li:before{
		top: 9px;
		width: 4px;
		height: 4px;
	}
	
}

/*
 * Home Page CSS
 * */

.hero-video-img-section{
	clip-path: polygon(0 0, 100% 0, 100% 100%, calc(0% + 170px) 100%);
}

.hero-video-img-section:before{
	position: absolute;
    top: 0;
    left: 0;
    width: 280px;
    height: 290px;
    clip-path: polygon(0 0, calc(100% - 78px) 0, 100% 100%, calc(0% + 78px) 100%);
}

.hero-video-img-section:has(.elementor-background-video-container):before{
	background-image: none !important;
}

.hero-video-img-section:has(.elementor-background-video-container) .elementor-background-video-container:before{
	position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 280px !important;
    height: 290px !important;
    clip-path: polygon(0 0, calc(100% - 78px) 0, 100% 100%, calc(0% + 78px) 100%);
}

.hero-video-img-section:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: var(--e-global-color-accent);
	width: 105px;
	height: 450px;
	clip-path: polygon(0 0, calc(100% - 93px) 0, 100% 100%, 0% 100%);
}


.hero-review-section{
	clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 100%, 0% 100%);
}

.hero-review-section:before{
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	width: 40px;
	height: 100%;
	clip-path: polygon(0 0, calc(100% - 25px) 0, 100% 100%, calc(0% + 25px) 100%);

}

.divider-roof-shape .elementor-divider{
	position: relative;
	height: 40px;
	padding-top: 40px;
	justify-content: end;
}

.divider-roof-shape .elementor-divider-separator{
	width: calc(100% - 80px) !important;
    padding-left: 80px;
    margin-top: 29px;
}

.divider-roof-shape .elementor-divider:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: auto;
	bottom: auto;
	mask-image: url("./images/divider-shape.svg");
	mask-repeat: no-repeat;
	mask-size: 80px auto;
	background: var(--divider-color);
	height: 40px;
	width: 80px;
}

.title-pentagon-shape .elementor-widget-container{
	padding: 16px 0px 16px 65px;
}

.title-pentagon-shape .elementor-widget-container:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: auto;
	bottom: auto;
	height: 100%;
	width: 40px;
	background: var(--e-global-color-accent);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 26px));
}

.home-about-text-path{
	animation: infiniterotate 20s infinite linear;
}

@keyframes infiniterotate{
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.home-roof-icon-box{
	background-color: var(--bg-color);
	clip-path: polygon(50% 0%, 100% 30px, 100% 100%, 0 100%, 0 30px);
	padding: 10px 10px 0px 00px;
}

.home-roof-icon-box .elementor-widget-container{
	clip-path: polygon(50% 0%, 100% 30px, 100% 100%, 0 100%, 0 30px);
}

.home-about-img{
	height: 100%;
}

.home-about-img img{
	aspect-ratio: 1 / 1.07;
    object-fit: cover;
	height: 100%;
}

.why-choose-image-container{
	background-position: left 110px bottom;
	background-size: 500px 370px;
}

.why-choose-image-container:before{
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
/* 	width: 71%; */
	width: 623px;
	height: 100%;
	clip-path: polygon(calc(100% - 66px) 0, 100% 0, 100% 100%, 0% 100%);
}

.why-choose-image-container .elementor-widget-image .elementor-widget-container{
	clip-path: polygon(calc(50% + 0.85vw) 100%, 0 0, 100% 0);
}

.why-choose-image-container .elementor-widget-image img{
	aspect-ratio: 1 / 0.6;
	object-fit: cover;
	object-position: 50% 40%;
	clip-path: polygon(calc(50% + 0.85vw) 100%, 0 0, 100% 0);
}


.our-numbers{
	backdrop-filter: blur(25px);
}

.our-numbers:before{
	content: "";
	top: 0;
	left: 0;
	right: auto;
	bottom: auto;
	background: transparent;
	height: 4px;
	width: 100%;
	transition: all 0.3s ease-in-out !important;
}

.our-numbers:hover:before{
	background: var(--e-global-color-accent);
}

.our-numbers .elementor-widget-counter .elementor-counter-number-suffix{
	color: var(--e-global-color-accent);
}

.cta-img:before{
	clip-path: polygon(calc(0% + 100px) 0, 100% 0%, 100% 100%, 0% 100%);
    z-index: 1;
}

.cta-img:after{
	content: "";
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	bottom: auto;
	background: var(--white-color);
	clip-path: polygon(calc(0% + 100px) 0, 100% 0%, 100% 100%, 0% 100%);
	width: calc(100% + 7px);
	height: 100%;
}

.cta-call-icon{
	position: relative;
	transform: translateY(-50%);
}

.cta-call-icon:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	right: 0;
	bottom: 0;
	background-color: transparent;
	border: 2px dashed var(--e-global-color-accent);
	border-radius: 50%;
	width: calc(100% + 15px);
	height: calc(100% + 15px);
	transform: translate(-50%, -50%);
	animation: rotate 20s infinite linear;
}

@keyframes rotate{
	0% {
		transform: translate(-50%, -50%) rotate(0deg);
	}

	100% {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

.home-feature-blog .elementor-loop-container,
.home-feature-blog .elementor-loop-container .feature-blog-loop-item{
	height: 100%;
}

.blog-feature-img img{
	aspect-ratio: 1 / 1;
    object-fit: cover;
	height: 100%;
}

@media only screen and (max-width: 1650px) {
	
	.why-choose-image-container {
		background-position: left bottom;
		background-size: 650px 470px;
	}
		
}

@media only screen and (max-width: 1470px) {
	
	.hero-video-img-section:after{
		width: 100px;
		clip-path: polygon(0 0, calc(100% - 85px) 0, 100% 100%, 0% 100%);
	}
	
	.why-choose-image-container:before{
		width: 520px;
	}
	
	.why-choose-image-container .elementor-widget-image .elementor-widget-container{
		margin-left: -80px !important;
	}
	
	.why-choose-image-container .elementor-widget-image img{
		aspect-ratio: 1 / 0.845;
	}
	
}

@media only screen and (max-width: 1024px) {
	
	.hero-video-img-section{
		clip-path: unset;
	}
	
	.hero-video-img-section:before,
	.hero-video-img-section:has(.elementor-background-video-container) .elementor-background-video-container:before{
		clip-path: unset;
		width: 100% !important;
		height: 100% !important;
	}
	
	.hero-video-img-section:after{
		display: none;
		clip-path: unset;
	}
	
	.hero-review-section{
		position: initial !important;	
		clip-path: unset;
	}
	
	.hero-review-section:before{
		display: none;
		width: 0;
		height: 0;
	}
	
	.divider-roof-shape .elementor-divider-separator{
		width: calc(100% - 60px) !important;
		padding-left: 60px;
		margin-top: 22px;
	}
	
	.divider-roof-shape .elementor-divider:before{
		mask-size: 60px auto;
	}
	
	.title-pentagon-shape .elementor-widget-container{
		padding: 14px 0px 14px 55px;
	}
	
	.home-about-img img{
		aspect-ratio: 1 / 1.02;
	}
	
	.why-choose-image-container:before{
		width: 68%;
	}
	
	.why-choose-image-container .elementor-widget-image .elementor-widget-container{
		margin-left: 0 !important;
		clip-path: polygon(calc(50% - 21px) 100%, 0 0, 100% 0);
	}
	
	.why-choose-image-container .elementor-widget-image img{
		aspect-ratio: 1 / 0.66;
		clip-path: polygon(calc(50% - 21px) 100%, 0 0, 100% 0);
	}
	
	.cta-img:before{
		clip-path: none;
	}

	.cta-img:after{
		clip-path: none;
		width: 100%;
		height: calc(100% + 4px);
	}
	
	.cta-call-icon{
		transform: translate(-50%, -50%);
	}
	
	.home-feature-blog .elementor-loop-container,
	.home-feature-blog .elementor-loop-container .feature-blog-loop-item{
		height: auto;
	}
	
}

@media only screen and (max-width: 767px) {
	
	.hero-video-img-section:after{
		border-width: 3px;
	}
	
	.title-pentagon-shape .elementor-widget-container{
		padding: 10px 90px 10px 45px;
	}
	
	.title-pentagon-shape .elementor-widget-container:before{
		width: 30px;
	}
	
	.home-about-text-path{
    	right: 10px;
	}
	
	.home-roof-icon-box{
		padding: 6px 6px 0px 0px;
		clip-path: polygon(50% 0%, 100% 20px, 100% 100%, 0 100%, 0 20px);
	}
	
	.home-roof-icon-box .elementor-widget-container{
		clip-path: polygon(50% 0%, 100% 20px, 100% 100%, 0 100%, 0 20px);
	}
	
	.home-about-img img{
		aspect-ratio: 1 / 1.15;
	}
	
	.why-choose-image-container{
		background-size: 70% auto;
	}
	
	.why-choose-image-container:before{
		width: 75%;
		clip-path: polygon(calc(100% - 33px) 0, 100% 0, 100% 100%, 0% 100%);
	}
	
	.why-choose-image-container .elementor-widget-image .elementor-widget-container{
		clip-path: polygon(50% 100%, 0 0, 100% 0);
	}
	
	.why-choose-image-container .elementor-widget-image img{
		aspect-ratio: 1 / 0.7;
		clip-path: polygon(50% 100%, 0 0, 100% 0);
	}
	
	.blog-feature-img img{
		aspect-ratio: 1 / 0.85;
	}
}

/* 
 * About Page CSS
 *  */

.page-header-container{
	background-image: url(https://rauthroofing.wpenginepowered.com/wp-content/uploads/2025/11/dots-img.png);
    background-position: top 48px center;
    background-repeat: repeat-x;
    background-size: cover;
}

.page-breadcrumbs ul li:after {
    transform: rotate(15deg);
}

.page-header-img-section{
	clip-path: polygon(0 0, 100% 0, 100% 100%, calc(0% + 130px) 100%);
}

.page-header-img-section:before{
	position: absolute;
    top: 0;
    left: 0;
    width: 320px;
    height: 70%;
    clip-path: polygon(0 0, calc(100% - 100px) 0, 100% 100%, calc(0% + 100px) 100%);
}

.page-header-img-section:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: var(--e-global-color-accent);
	width: 100px;
	height: 66%;
	clip-path: polygon(0 0, calc(100% - 88px) 0, 100% 100%, 0% 100%);
}

.about-mission-box .about-mission-icon .elementor-icon{
	position: relative;
	overflow: hidden;
}

.about-mission-box .about-mission-icon .elementor-icon:before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--e-global-color-primary);
    width: 100%;
    height: 100%;
    transform: scale(0) rotate(180deg);
    transition: all 0.4s ease-in-out;
}

.about-mission-box:hover .about-mission-icon .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.about-mission-icon:before{
	content: "";
	position: absolute;
	top: -20px;
	left: -14px;
	right: auto;
	bottom: auto;
	background-color: var(--e-global-color-accent);
    height: 20px;
    width: 15px;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    box-shadow: inset 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
	transition: all 0.4s ease-in-out;
}

.about-mission-box:hover .about-mission-icon:before{
	background-color: var(--e-global-color-primary);
}

.about-mission-icon .elementor-icon-wrapper{
	position: absolute;
	top: -20px;
}

.about-mission-icon .elementor-icon-wrapper .elementor-icon{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	width: 60px;
	background-color: var(--e-global-color-accent);
	
}

.about-mission-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title{
	position: relative;
	padding-bottom: 15px;
}

.about-mission-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title:before{
	content: "";
	position: absolute;
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
	background: var(--e-global-color-accent);
	height: 2px;
	width: 60px;
}

.about-mission-img:before{
	content: "";
	position: absolute;
	top: auto;
	right: 20px;
	left: auto;
	bottom: 20px;
	background: linear-gradient(135deg, transparent 50%, var(--e-global-color-accent) 50%);
	height: 140px;
	width: 140px;
	
}

.about-mission-img:after{
	content: "";
	position: absolute;
	top: 0;
	right: auto;
	left: 0;
	bottom: auto;
	background: linear-gradient(135deg, var(--e-global-color-accent) 50%, transparent 50%);
	height: 140px;
	width: 140px;
	
}

.about-mission-img .elementor-widget-container:before{
	content: "";
	position: absolute;
	top: auto;
	right: 0;
	left: auto;
	bottom: 0;
	height: calc(100% - 20px);
	width: calc(100% - 50px);
	border: 2px solid var(--e-global-color-accent);
	z-index: -1;
	
}

.about-mission-img img{
	aspect-ratio: 1 / 1.33;
    object-fit: cover;
}

.about-history-title-wrapper:before{
	position: absolute;
	top: auto;
	left: 0;
	right: auto;
	bottom: 0;
	height: 120px;
}

.section-footer-text p a{
	background-color: var(--e-global-color-accent);
	color: var(--white-color);
	padding: 8px 14px;
	transition: all 0.4s ease-in-out;
}

.section-footer-text p a:hover{
	background-color: var(--e-global-color-primary);
}

.about-promise-img-1 img{
	aspect-ratio: 1 / 1.26;
    object-fit: cover;
}

.about-promise-img-2 img{
	aspect-ratio: 1 / 1.276;
    object-fit: cover;
}

.about-promise-counter .elementor-counter{
	text-align: center;
}

.about-contact-circle .elementor-widget-text-path{
	animation: infiniterotate 20s infinite linear;
}

.about-where-serve-map{
	margin-right: -45px;
}

.about-where-map-content:before{
	content: "";
    left: -25px;
	width: calc(100% + 55px);
	background-color: var(--white-color);
    clip-path: polygon(0 50px, 100% 150px, 100% calc(100% - 50px), 0 calc(100% - 150px));
	border: 0;
	
}

.about-where-serve-counter .elementor-counter-number-wrapper .elementor-counter-number{
	position: relative;	
	z-index: 1;
}

.about-where-serve-counter .elementor-counter-number-wrapper .elementor-counter-number:before{
	content: "";
	position: absolute;
	top: -5px;
	left: -15px;
	right: auto;
	bottom: auto;
	background-color: var(--e-global-color-accent);
	height: 30px;
	width: 30px;
	border-radius: 50%;
	z-index: -1;
}

.about-where-serve-counter .elementor-counter-number-suffix{
	flex-grow: 0;
}

.about-where-serve-counter .elementor-counter-number-suffix sup{
	color: var(--e-global-color-accent);
}

.about-why-different-query-box .elementor-icon-box-wrapper .elementor-icon-box-content{
	display: flex;
	flex-direction: column-reverse;
	gap: 10px;
}

.about-why-different-img img{
	aspect-ratio: 1 / 0.57;
    object-fit: cover;
}

.about-why-different-video-icon{
	transform: translate(-50%, -50%);
}

.about-why-different-video-icon .elementor-widget-container{
	backdrop-filter: blur(25px);
}

@media only screen and (max-width: 1024px) {
	
	.page-header-container{
		background-position: center center;
		background-size: auto;
	}
	
	.page-header-img-section{
		clip-path: unset;
	}
	
	.page-header-img-section:before{
		clip-path: unset;
		width: 100%;
		height: 100%;
	}

	.page-header-img-section:after{
		display: none;
		clip-path: unset;
	}
	
	.about-mission-icon:before{
		left: -12px;
		width: 12px;
	}
	
	.about-mission-icon .elementor-icon-wrapper .elementor-icon{
		height: 50px;
		width: 50px;

	}

 	.about-mission-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title{
		padding-bottom: 10px;
	}

	.about-mission-img:before,
	.about-mission-img:after{
		height: 100px;
		width: 100px;
	}

	.about-mission-img img{
		aspect-ratio: 1 / 0.7;
	}
	
	.about-promise-img-1 img{
		aspect-ratio: 1 / 1.12;
	}
	
	.about-where-serve-counter .elementor-counter-number-wrapper .elementor-counter-number:before{
		top: 0px;
		left: -8px;
		height: 20px;
		width: 20px;
	}
}

@media only screen and (max-width: 767px) {
	
	.about-mission-img:before{
		right: 10px;
		bottom: 10px;
		height: 65px;
        width: 65px;
	}
	
	.about-mission-img:after{
		height: 65px;
        width: 65px;
	}
	
	.about-mission-img img{
		aspect-ratio: 1 / 0.85;
	}
	
	.section-footer-text p a{
		padding: 5px 12px;
	}
	
	.about-promise-img-1 img,
	.about-promise-img-2 img{
		aspect-ratio: 1 / 1.1;
	}
	
	.about-promise-counter .elementor-counter-number-wrapper,
	.about-promise-counter .elementor-counter-number-wrapper .elementor-counter-number-suffix{
		flex-grow: 0;	
	}
	
	.about-where-serve-map{
		margin-right: 0;
	}
	
	.about-where-map-content:before{
		clip-path: polygon(0 50px, 100% 260px, 100% calc(100% - 50px), 0 calc(100% - 260px));
	}
	
	.about-where-serve-counter .elementor-counter-number-wrapper .elementor-counter-number:before{
		height: 15px;
		width: 15px;
	}
	
	.about-why-different-img img{
		aspect-ratio: 1 / 0.75;
	}
	
	.about-why-different-query-box .elementor-icon-box-wrapper .elementor-icon-box-content{
		gap: 5px;
	}
}

/* 
 * Institutional Page CSS
 * */


.institutional-about-img-1 img{
	aspect-ratio: 1 / 1.16;
    object-fit: cover;
}

.institutional-about-img-2 img{
	aspect-ratio: 1 / 1.5;
    object-fit: cover;
}

.institutional-about-heading .elementor-heading-title{
	position: relative;
	display: inline;
	padding-bottom: 20px;
}

.institutional-about-heading .elementor-heading-title:before{
	content: "";
    position: absolute;
    top: auto;
    right: auto;
    left: 0;
    bottom: 0;
    background: var(--e-global-color-accent);
    height: 2px;
    width: 100%;
}

.service-step-number .elementor-heading-title{
	position: relative;
	transition: all 0.3s ease-in-out;
}

.service-step-number .elementor-heading-title:before{
	content: "";
	position: absolute;
    top: auto;
    left: 0;
    right: auto;
    bottom: 12px;
    background: var(--bg-color);
    width: 100%;
    height: 10px;
    border-top: 1px solid var(--divider-color);
	transition: all 0.3s ease-in-out;
}

.service-step-img-box .elementor-image-box-wrapper{
	display: flex;
    flex-direction: column-reverse;
	gap: 20px;
}

.service-step-img-box .elementor-image-box-wrapper .elementor-image-box-img img{
	aspect-ratio: 1 / 0.664;
    object-fit: cover;
}

.service-step-box:hover .service-step-number .elementor-heading-title{
	color: var(--e-global-color-accent);
}

.service-step-box:hover .service-step-number .elementor-heading-title:before{
	border-top: 1px solid var(--e-global-color-accent);
}

.how-we-work-img:before{
	clip-path: polygon(calc(0% + 155px) 0, 100% 0%, 100% 100%, 0% 100%);
    z-index: 1;
}

.how-we-work-img:after{
	content: "";
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    bottom: auto;
    background: var(--e-global-color-accent);
    clip-path: polygon(calc(0% + 155px) 0, 100% 0%, 100% 100%, 0% 100%);
    width: calc(100% + 20px);
    height: 100%;
}

.service-accordion .e-n-accordion-item .e-n-accordion-item-title-header{
	width: calc(100% - 50px);
}

.service-accordion .e-n-accordion-item .e-n-accordion-item-title-icon{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 40px;
	width: 40px;
	background-color: var(--white-color);
}


@media only screen and (max-width: 1024px) {

	.institutional-about-heading .elementor-heading-title{
		padding-bottom: 18px;
	}
	
	.institutional-about-img-1 img,
	.institutional-about-img-2 img{
		aspect-ratio: 1 / 0.75;
	}
	
	.service-step-number .elementor-heading-title:before{
		bottom: 10px;
		height: 8px;
	}
	
	.how-we-work-img:before{
		clip-path: none;
	}
	
	.how-we-work-img:after{
		clip-path: none;
		width: 100%;
        height: calc(100% + 10px);
        top: auto;
        bottom: 0;
	}
	
}


@media only screen and (max-width: 767px) {
	
	.how-we-offer-icon{
		display: none;
	}
	
	.service-step-number .elementor-heading-title:before{
		bottom: 9px;
		height: 4px;
	}
	
	.service-accordion .e-n-accordion-item .e-n-accordion-item-title-header{
		width: calc(100% - 40px);
	}
	
	.service-accordion .e-n-accordion-item .e-n-accordion-item-title-icon{
		height: 30px;
		width: 30px;
	}
	
}


/*
 * Industrial Page CSS
 *  */

.industrial-highlight-box{
	backdrop-filter: blur(15px);
}

.industrial-highlight-box:before{
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--e-global-color-accent);
    border: 1px solid transparent;
    transform: scale(0.5);
    opacity: 0;
    z-index: 0;
    transition: all 0.3s ease-in-out;
}

.industrial-highlight-box:hover:before{
	transform: scale(1);
	opacity: 1;
}

.industrial-highlight-box:after{
	content: '';
    position: absolute;
    top: auto;
    right: auto;
    bottom: -55px;
    left: 0;
    width: 100%;
    height: 2px;
    background: transparent;
    transition: all 0.3s ease-in-out;
}

.industrial-highlight-box:hover:after{
	 bottom: -42px;
	 background: var(--e-global-color-accent);
}

.industrial-highlight-box .industrial-highlight-box-icon .elementor-icon{
	transform: rotate(-45deg);
	opacity: 0;
	transition: all 0.3s ease-in-out;
}

.industrial-highlight-box .industrial-highlight-box-icon .elementor-icon svg{
	transition: all 0.3s ease-in-out;
}

.industrial-highlight-box:hover .industrial-highlight-box-icon .elementor-icon{
	opacity: 1;
}

.industrial-step-wrapper{
	counter-reset: section;
}

.industrial-step-wrapper .industrial-step-box:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: auto;
	bottom: auto;
	height: 1px;
	width: calc(100% + 30px);
	background-color: var(--divider-color);
}

.industrial-step-wrapper .industrial-step-box:last-child:before{
	width: 100%;
}

.industrial-step-wrapper .industrial-step-box .industrial-step-box-inner{
	counter-increment: section;
	height: 100%;
}

.industrial-step-wrapper .industrial-step-box .industrial-step-box-inner:before{
	content: "Step 0" counter(section) " ";
	position: absolute;
	top: -50px;
	left: 50%;
	right: auto;
	bottom: auto;
	height: auto;
	width: auto;
	font-family: var(--e-global-typography-secondary-font-family);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5em;
	color: var(--e-global-color-primary);
	background-color: var(--bg-color);
	padding: 8px 25px;
	border: 1px solid var(--divider-color);
	border-radius: 5px;
	transform: translate(-50%, -50%);
	transition: all 0.3s ease-in-out;
}

.industrial-step-wrapper .industrial-step-box .industrial-step-box-inner:after{
	content: "";
	position: absolute;
	top: -35px;
	left: 50%;
	right: auto;
	bottom: auto;
	transform: translateX(-50%);
	border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid transparent;
	transition: all 0.3s ease-in-out;
}

.industrial-step-wrapper .industrial-step-box:hover .industrial-step-box-inner:before{
	color: var(--white-color);
	background-color: var(--e-global-color-accent);
	border: 1px solid transparent;
}

.industrial-step-wrapper .industrial-step-box:hover .industrial-step-box-inner:after{
	top: -30px;
	border-top: 10px solid var(--e-global-color-accent);
}

.industrial-step-wrapper .industrial-step-box:hover .elementor-widget-icon-box .elementor-widget-container{
	border-color: var(--e-global-color-accent);
}

.industrial-step-wrapper .industrial-step-box .elementor-widget-button .elementor-button,
.industrial-step-wrapper .industrial-step-box .elementor-widget-button .elementor-button .elementor-button-icon,
.industrial-step-wrapper .industrial-step-box .elementor-widget-button .elementor-button .elementor-button-icon svg,
.industrial-step-wrapper .industrial-step-box .elementor-widget-button .elementor-button .elementor-button-icon svg path{
	transition: all 0.3s ease-in-out;
}

.industrial-step-wrapper .industrial-step-box:hover .elementor-widget-button .elementor-button{
	fill: var(--e-global-color-accent);
	color: var(--e-global-color-accent);
}

@media only screen and (max-width: 1024px) {
	
	.industrial-highlight-box:hover:after{
		bottom: -32px;
	}
	
	.industrial-step-wrapper .industrial-step-box:nth-child(even):before{
		width: 100%;
	}
	
}

@media only screen and (max-width: 767px) {
	
	.industrial-highlight-box:hover:after{
		display: none;
	}
	
	.industrial-step-wrapper .industrial-step-box:before{
		width: 100%;
	}
	
	.industrial-step-wrapper .industrial-step-box .industrial-step-box-inner:before{
		top: -40px;
		font-size: 14px;
		padding: 6px 15px;
	}
	
	.industrial-step-wrapper .industrial-step-box .industrial-step-box-inner:after{
		top: -30px;
	}
	
	.industrial-step-wrapper .industrial-step-box:hover .industrial-step-box-inner:after{
		top: -25px;
	}
	
}


/* 
 * Commercial Page CSS
 * */

.commercial-about-query-icon .elementor-icon-box-wrapper .elementor-icon-box-content{
	display: flex;
	flex-direction: column-reverse;
	gap: 10px;
}

.commercial-about-counter .elementor-counter-number-wrapper .elementor-counter-number-suffix{
	color: var(--e-global-color-accent);
}

.commercial-who-we-are-img-1 img{
	aspect-ratio: 1 / 1.18;
    object-fit: cover;
}

.commercial-who-we-are-img-2 img{
	aspect-ratio: 1 / 1.5;
    object-fit: cover;
}

.commercial-who-we-are-img-1 .elementor-widget-container{
	position: relative;
}

.commercial-who-we-are-img-1 .elementor-widget-container:before{
	content: "";
    position: absolute;
    top: auto;
    left: auto;
    right: -125px;
    bottom: 28px;
    background-color: var(--e-global-color-accent);
    height: 108px;
    width: 125px;
    border-radius: 0 0 500px 0;
}

.commercia-who-we-are-box .elementor-icon-box-wrapper .elementor-icon-box-icon{
	position: absolute;
	top: 0;
	left: 0;
}

.commercia-who-we-are-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
	padding-left: 70px;
}

.commercia-who-we-are-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description{
	padding-top: 20px;
	border-top: 1px solid rgb(from var(--e-global-color-primary) r g b / 10%);
}

.commercial-counter-section:before{
	filter: blur(5px);
}

.commercial-counter-box .elementor-widget-container{
	backdrop-filter: blur(15px);
}

.commercial-counter-box .elementor-counter{
	gap: 30px;
}

.commercial-counter-box .elementor-counter .elementor-counter-title{
	border-left: 1px solid rgb(from var(--white-color) r g b / 10%);
	padding-left: 30px;
}

.commercial-counter-box .elementor-counter-number-wrapper{
	align-items: center;
	flex: 0.4;
}

.commercial-counter-box .elementor-counter-number-wrapper .elementor-counter-number-suffix{
	flex: 0;
}

.commercial-counter-box .elementor-counter-number-wrapper .elementor-counter-number-suffix sup{
	color: var(--e-global-color-accent);
}

@media only screen and (max-width: 1024px) {
	
	.commercial-who-we-are-img-1 .elementor-widget-container:before{
		right: -75px;
        bottom: 28px;
        height: 70px;
        width: 75px;
	}
	
	.commercial-counter-box .elementor-counter-number-wrapper{
		flex: 0.2;	
	}
}

@media only screen and (max-width: 767px) {
	
	.commercial-about-counter .elementor-counter-number-wrapper{
		flex-grow: 0;
		margin-right: 15px;
	}
	
	.commercial-about-counter .elementor-counter-number-wrapper .elementor-counter-number-suffix{
		flex-grow: 0;
	}
	
	.commercial-who-we-are-img-1 .elementor-widget-container:before{
		display: none;
	}
	
	.commercial-who-we-are-img-1 img,
	.commercial-who-we-are-img-2 img{
		aspect-ratio: 1 / 0.95;
	}	
	
	.commercia-who-we-are-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
		padding-left: 55px;
	}
	
	.commercial-counter-box .elementor-counter .elementor-counter-title{
		border: none;
		padding-left: 0;
	}
}



/* 
 * Roof Replacements Page CSS
 * */

.roofR-about-title .elementor-widget-container{
	writing-mode: sideways-lr;
	height: auto !important;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 45px));
}

/* Counter Suffix Color Css */

.counter-suffix-color .elementor-counter-number-wrapper .elementor-counter-number-suffix sup{
	color: var(--e-global-color-accent);
}

/* Counter Suffix Color Css End */

.roofR-about-img-box:before{
	content: "";
	position: absolute;
	top: 0;
	left: auto;
	right: -30px;
	bottom: 0;
	border: 2px solid var(--e-global-color-accent);
	width: 100%;
	height: 100%;
}

.roofR-about-img-1 img{
	aspect-ratio: 1 / 1.354;
	object-fit: cover;
}

.roofR-about-img-2 img{
	aspect-ratio: 1 / 0.837;
	object-fit: cover;
}

.roofR-about-img-3 img{
	aspect-ratio: 1 / 0.934;
	object-fit: cover;
}

.roofR-process-icon-box{
	position: relative;
	backdrop-filter: blur(15px);
}

.roofR-process-icon-box:before,
.roofR-process-icon-box:after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	bottom: auto;
	border: solid var(--e-global-color-accent);
	border-width: 4px 4px 0 0;
	width: 40px;
	height: 40px;
	transition: all 0.4s ease-in-out;
}

.roofR-process-icon-box:hover:before,
.roofR-process-icon-box:hover:after{
	border-color: var(--white-color);
}

.roofR-process-icon-box:after{
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
	border-width: 0 0 4px 4px;
}

.roofR-process-box:hover .roofR-process-box-icon .elementor-icon svg{
	fill: rgb(from var(--white-color) r g b / 20%) !important;
}

.dark-section-footer-text.section-footer-text:hover p a{
	background: var(--white-color);
	color: var(--e-global-color-primary);
}

.roofR-features-img img{
	aspect-ratio: 1 / 1.267;
	object-fit: cover;
}

.rooR-feature-box:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	bottom: auto;
	background: linear-gradient(90deg, transparent 0%, var(--white-color) 50%, transparent 100%);
	width: 100%;
	height: 1px;
}

.rooR-feature-icon-box{
	position: relative;
}

.rooR-feature-icon-box:before{
	content: "";
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	bottom: 0;
	background: linear-gradient(0deg, transparent 0%, var(--white-color) 50%, transparent 100%);
}

.rooR-feature-icon-box:last-child:before{
	display: none;
}

.rooR-feature-icon-box:nth-child(odd):before{
	width: 1px;
	height: 100%;
}

.rooR-feature-icon-box:nth-child(even):before{
	width: 0;
	height: 0;
}

.roofR-features-img-2 img{
	aspect-ratio: 1 / 0.724;
	object-fit: cover;
}

.roofR-how-it-work-content-box:hover .icon-box-hover .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.roofR-how-it-work-box{
	counter-reset: section;
}

.roofR-how-it-work-icon-box{
	counter-increment: section;
}

.roofR-how-it-work-icon-box .elementor-widget-container{
	position: relative;
}

.roofR-how-it-work-icon-box .elementor-widget-container:before{
	content: "0" counter(section) ".";
	position: absolute;
	top: 30px;
	right: 30px;
	left: auto;
	bottom: auto;
	font-family: var(--e-global-typography-primary-font-family);
	font-size: var(--e-global-typography-secondary-font-size);
	font-weight: var(--e-global-typography-secondary-font-weight);
	line-height: 1em;
	color: var(--e-global-color-primary);
	width: auto;
	height: auto;
}	

@media only screen and (max-width: 1024px){
	
	.roofR-features-img-2 img{
		aspect-ratio: 1 / 0.6;	
	}
}

@media only screen and (max-width: 767px){
	
	.roofR-about-title .elementor-widget-container{
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - 30px));
	}
	
	.roofR-about-img-3 img{
		aspect-ratio: 1 / 1.05;	
	}

	.roofR-features-img img{
		aspect-ratio: 1 / 1.45; 
	}
	
	.rooR-feature-box:before{
		display: none;	
	}
	
	.rooR-feature-icon-box:before{
		top: auto;
		bottom: 0;
		left: 0;
		right: 0;
		background: linear-gradient(90deg, transparent 0%, var(--white-color) 50%, transparent 100%);
	}
	
	.rooR-feature-icon-box:nth-child(odd):before,
	.rooR-feature-icon-box:nth-child(even):before{
		width: 100%;
		height: 1px;
	}
}


/*
 * New Roof Construction Page CSS
 * */

.roofC-about-img-box:before{
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
	width: calc(100% - 20px);
	height: calc(100% - 20px);
}

.roofC-about-img{
	height: 100%;
}

.roofC-about-img img{
	aspect-ratio: 1 / 1.33;
	object-fit: cover;
}

.roofC-work-step-img img{
	aspect-ratio: 1 / 0.65;
	object-fit: cover;
}

.roofC-work-step-box{
	counter-reset: section;
}

.roofC-work-step-icon-box{
	counter-increment: section;
}

.roofC-work-step-icon-box .elementor-widget-container{
	position: relative;
}

.roofC-work-step-icon-box .elementor-widget-container:before{
	content: "0" counter(section) " ";
	position: absolute;
	top: 50%;
	right: 0;
	left: auto;
	bottom: auto;
	font-family: var(--e-global-typography-primary-font-family);
	font-size: 70px;
	font-weight: var(--e-global-typography-secondary-font-weight);
	line-height: 1em;
	color: rgb(from var(--e-global-color-primary) r g b / 4%);
	width: auto;
	height: auto;
	transition: all 0.4s ease-in-out;
	transform: translate(0, -50%);
}

.roofC-work-step-icon-box:hover .elementor-widget-container:before{
	color: rgb(from var(--white-color) r g b / 40%);
}

.roofC-work-step-icon-box .elementor-icon svg{
	transition: all 0.4s ease-in-out;
}

.roofC-work-step-icon-box:hover .elementor-icon svg{
	fill: var(--e-global-color-accent);
}

.roofC-work-step-icon-box.icon-box-hover .elementor-icon:before{
	background: var(--white-color);
}

.roofC-work-step-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title,
.roofC-work-step-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description{
	transition: all 0.4s ease-in-out;
}

.roofC-work-step-icon-box:hover .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title,
.roofC-work-step-icon-box:hover .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description{
	color: var(--white-color);
}

.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon-box-icon{
	position: absolute;
	right: -60px;
}

.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon{
	border: 4px solid var(--white-color);
	border-radius: 5px;
}

.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
	width: calc(100% - 110px);
}

.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title strong{
	color: var(--e-global-color-accent);
}

.roofC-who-we-are-icon-box:before{
	content: "";
	position: absolute;
	top: -15px;
	left: 50%;
	right: auto;
	bottom: auto;
	width: 100px;
	height: 30px;
	transform: translate(-50%, 0);
}

.roofC-who-we-are-icon-box:nth-child(odd):before{
	background: var(--e-global-color-accent);
}

.roofC-who-we-are-icon-box:nth-child(even):before{
	background: var(--e-global-color-primary);
}

.roofC-who-we-are-icon-box:hover .icon-box-hover .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.roofC-cta-box{
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
}

.roofC-cta-box .elementor-cta{
	overflow: hidden;
}

.roofC-cta-box .elementor-cta__content{
	align-content: flex-start;
}

.roofC-cta-box .elementor-cta__content .elementor-icon{
	position: relative;	
}

.roofC-cta-box .elementor-cta__content .elementor-icon:before{
	content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--white-color);
	border-radius: 5px;
    width: 100%;
    height: 100%;
    transform: scale(0) rotate(180deg);
    transition: all 0.4s ease-in-out;
}

.roofC-cta-box:hover .elementor-cta__content .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.roofC-cta-box:hover .elementor-cta__content .elementor-icon svg{
	fill: var(--e-global-color-accent) !important;
}

.roofC-cta-box .elementor-cta__content .elementor-icon svg path{
	stroke: none;
}

.roofC-cta-box .elementor-cta .elementor-cta__title{
	padding-bottom: 20px;
	margin-bottom: 20px !important;
	border-bottom: 1px solid rgb(from var(--e-global-color-primary) r g b / 10%);
	transition: padding-bottom 0.3s ease-in-out;
}

.roofC-cta-box:hover .elementor-cta .elementor-cta__title,
.roofC-cta-box.active .elementor-cta .elementor-cta__title{
	border-color: transparent;
}

.roofC-cta-box:hover .elementor-cta .elementor-cta__description,
.roofC-cta-box.active .elementor-cta .elementor-cta__description{
	display: block;
	overflow: visible;	
	margin-bottom: 0 !important;
}


@media only screen and (min-width: 1025px) {
	
	.roofC-cta-box .elementor-cta:hover .elementor-cta__title,
	.roofC-cta-box.active .elementor-cta .elementor-cta__title{
		padding-bottom: 20px;
	}
	
	.roofC-cta-box .elementor-cta .elementor-cta__description,
	.roofC-cta-box .elementor-cta .elementor-cta__button-wrapper{
		max-height: 0;
		opacity: 0;
		overflow: hidden;
		visibility: hidden;
		transition: max-height 0.4s ease-in-out, visibility 0.8s, opacity 0.4s ease-in-out;
	}

	.roofC-cta-box .elementor-cta:hover .elementor-cta__description,
	.roofC-cta-box .elementor-cta:hover .elementor-cta__button-wrapper,
	.roofC-cta-box.active .elementor-cta .elementor-cta__description,
	.roofC-cta-box.active .elementor-cta .elementor-cta__button-wrapper{
		max-height: 110px;
		opacity: 1;
		visibility: visible;
	}
}

.roofC-cta-box .elementor-cta .elementor-cta__button{
	position: relative;
	margin-top: 30px;
	padding-right: 25px !important;
}

.roofC-cta-box .elementor-cta .elementor-cta__button:after{
	content: '\f061';
	display: block;
	position: absolute;
	top: calc(50% + 1px);
	right: 0;
	transform: translateY(-50%);
	font-family: "Font Awesome 5 Free";
	font-size: 18px;
	font-weight: 600;
	color: var(--white-color);
}

@media only screen and (max-width: 1024px){
	
	.roofC-about-img{
		height: auto;
	}
	
	.roofC-about-img img{
		aspect-ratio: 1 / 0.8;
	}
	
	.roofC-work-step-icon-box .elementor-widget-container:before{
		right: 10px;
		font-size: 50px;
	}
	
	.roofC-cta-box .elementor-cta{
		height: 100%;
	}
	
	.roofC-cta-box .elementor-cta .elementor-cta__content .elementor-cta__icon{
		margin-bottom: 30px;
	}
	
	.roofC-cta-box .elementor-cta .elementor-cta__title{
		padding-bottom: 20px;
	}
	
	.roofC-cta-box .elementor-cta .elementor-cta__description{
		display: block;
	}
	
	.roofC-cta-box:hover .elementor-cta .elementor-cta__title,
	.roofC-cta-box.active .elementor-cta .elementor-cta__title{
		border-color: rgb(from var(--white-color) r g b / 30%);
	}
	
	.roofC-cta-box .elementor-cta .elementor-cta__button:after{
		color: var(--e-global-color-accent);	
	}
	
	.roofC-cta-box:hover .elementor-cta .elementor-cta__button:after,
	.roofC-cta-box.active .elementor-cta .elementor-cta__button:after{
		color: var(--white-color);
	}
}

@media only screen and (max-width: 767px){
	
	.roofC-about-img img{
		aspect-ratio: 1 / 1.05;
	}
	
	.roofC-work-step-img img{
		aspect-ratio: 1 / 1.05;
	}
	
	.roofC-work-step-icon-box .elementor-widget-container:before{
		top: 20px;
		right: 20px;
		font-size: 40px;
		transform: translate(0, 0);
	}
	
	.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon-box-icon{
		position: initial;
	}
	
	.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon{
		border-width: 2px;	
	}
	
	.roofC-who-we-are-logo-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
		width: 100%;
	}
}


/* 
 * Flat Roofing Page CSS
 * */

.flat-roofing-about-img-1 img{
	aspect-ratio: 1 / 0.99;
	object-fit: cover;
}

.flat-roofing-about-img-2 img{
	aspect-ratio: 1 / 0.975;
	object-fit: cover;
}

.flatR-accordion .e-n-accordion .e-n-accordion-item-title .e-n-accordion-item-title-icon{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 38px;
	height: 38px;
	background: var(--e-global-color-accent);
	border-radius: 5px;
}

body.elementor-editor-active.elementor_library-template-default .advanced-fr-tab{
	background-color: var(--e-global-color-primary);
}

.advanced-fr-tab .e-n-tabs-heading .e-n-tab-title{
	max-width: 25%;
}

.flatR-tab-icon-box .elementor-icon-box-wrapper{
	align-items: center;
}

.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}

.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
	max-width: 250px;
	width: 100%;
}

.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description{
	width: calc(100% - 270px);
}

.flatR-work-step-tab .e-n-tabs .e-n-tab-title{
	position: relative;
}

.flatR-work-step-tab .e-n-tabs .e-n-tab-title:before{
	content: '';
	position: absolute;
	bottom: auto;
	right: -13px;
	border-top: 14px solid transparent;
	border-left: 14px solid var(--e-global-color-accent);
	border-bottom: 14px solid transparent;
	transition: all 0.3s ease-in-out;
	opacity: 0;
	visibility: hidden;
}

.flatR-work-step-tab .e-n-tabs .e-n-tab-title[aria-selected=false]:hover:before,
.flatR-work-step-tab .e-n-tabs .e-n-tab-title[aria-selected=true]:before{
	opacity: 1;
	visibility: visible;
}

.flatR-why-choose-img-box{
	height: 100%;	
}


.flatR-why-choose-img-box .elementor-widget-container{
	position: relative;
	overflow-x: clip;
	z-index: 1;
}

.flatR-why-choose-img-box .elementor-widget-container:before,
.flatR-why-choose-img-box .elementor-widget-container:after{
	content: "";
    position: absolute;
    top: 0;
    right: auto;
    left: 0;
    bottom: 0;
    background: var(--e-global-color-primary);
    mask-image: url(./images/flatR-why-choose-us-mask.svg);
	mask-position: center left;
    mask-size: auto 100%;
    mask-repeat: no-repeat;
    width: 100%;
    height: 100%;
	z-index: 0;
}

.flatR-why-choose-img-box .elementor-widget-container:after{    
    left: 0;
    bottom: 0;
    background: var(--e-global-color-accent);
    mask-image: url(./images/flatR-why-choose-us-mask-1.svg);
	z-index: 0;
}

.flatR-why-choose-img-box img{
	aspect-ratio: 1 / 0.785;
	object-fit: cover;
	height: 100%;
}

@media only screen and (max-width: 1470px){
	
	.advanced-fr-tab .e-n-tabs-heading .e-n-tab-title {
		max-width: 50%;
		min-width: 50%;
	}
	
}

@media only screen and (max-width: 1024px){
	
	.flatR-work-step-tab .e-n-tabs .e-n-tab-title:before{
		display: none;		
	}
	
	.flatR-why-choose-img-box,
	.flatR-why-choose-img-box img{
		height: auto;	
	}
	
	.flatR-why-choose-img-box .elementor-widget-container:before{
		display: none;	
	}
	
	.flatR-why-choose-img-box img{
		aspect-ratio: 1 / 0.65;
	}
}

@media only screen and (max-width: 767px){
	
	.flatR-accordion .e-n-accordion .e-n-accordion-item-title .e-n-accordion-item-title-icon{
		width: 30px;
		height: 30px;
	}
	
	.advanced-fr-tab .e-n-tabs-heading .e-n-tab-title {
		max-width: 100%;
		min-width: 100%;
	}
	
	.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content{
		display: block;
	}
	
	.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title{
		max-width: 100%;	
	}
	
	.flatR-tab-icon-box .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description{
		width: 100%;	
	}
	
	.flatR-why-choose-img-box img{
		aspect-ratio: 1 / 0.95;
	}
}



/* 
 * Location Page CSS
 * */

.location-about-img-1:before{
	content: "";
	position: absolute;
	top: auto;
	left: auto;
	right: 0;
	bottom: 0;
	background-color: var(--e-global-color-accent);
	height: calc(100% - 20px);
	width: calc(100% - 20px);
	z-index: -1;
}

.location-about-img-1:after{
	content: "";
    position: absolute;
    top: auto;
    left: auto;
    right: -100px;
    bottom: -40px;
    border: 1px solid var(--e-global-color-accent);
    height: 100%;
    width: calc(100% - 40px);
    z-index: -1;
}

.location-about-img-1 img{
	aspect-ratio: 1 / 1.385;
    object-fit: cover;
}

.location-about-img-2 img{
	aspect-ratio: 1 / 1.538;
    object-fit: cover;
}

.location-why-work-img .elementor-widget-container{
	position: relative;
}

.location-why-work-img .elementor-widget-container:before{
	content: "";
	position: absolute;
	top: auto;
	left: auto;
	right: -10px;
	bottom: -10px;
	background-color: var(--e-global-color-accent);
	clip-path: polygon(25% 0%, 100% 0%, 71% 100%, 0% 100%);
	height: calc(100% - 20px);
	width: calc(100% - 100px);
}

.location-why-work-img img{
	clip-path: polygon(25% 0%, 100% 0%, 75% 100%, 0% 100%);
	aspect-ratio: 1 / 1.199;
    object-fit: cover;
}

.location-hover-image-box{
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.location-hover-image-box:before{
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	width: 80px;
	height: 80px;
    border-bottom-left-radius: 80px;
	transition: all 0.5s ease-in-out;
	z-index: -1;
}

.location-hover-image-box:hover:before,
.location-hover-image-box.active:before{
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	border-bottom-left-radius: 0;
}

.location-hover-image-box:after{
	content: '';
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	width: 80px;
	height: 80px;
    border-bottom-left-radius: 80px;
	background-color: rgb(from var(--e-global-color-primary) r g b / 40%);
	transition: all 0.5s ease-in-out;
	z-index: 0;
	opacity: 0;
}

.location-hover-image-box:hover:after,
.location-hover-image-box.active:after{
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	border-bottom-left-radius: 0;
	opacity: 1;
}

.location-hover-image-box .elementor-widget-icon-box{
	position: relative;
	z-index: 1;
	height: 100%;
}

.location-hover-image-box .elementor-widget-icon-box:before{
	content: '';
	position: absolute;
	top: 6px;
	left: auto;
	right: 6px;
	width: 80px;
	height: 80px;
	background-color: transparent;
	border: 1px solid var(--e-global-color-accent);
    border-bottom-left-radius: 80px;
	transition: all 0.5s ease-in-out;
	z-index: -1;
}

.location-hover-image-box:hover .elementor-widget-icon-box:before,
.location-hover-image-box.active .elementor-widget-icon-box:before{
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	border-bottom-left-radius: 0;
}

.location-hover-image-box.active .icon-box-hover .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon:before{
	transform: scale(1) rotate(0deg);
}

.location-hover-image-box.active .dark.icon-box-hover .elementor-icon-box-wrapper .elementor-icon-box-icon .elementor-icon{
	color: var(--e-global-color-primary);
    fill: var(--e-global-color-primary);
}

.location-hover-image-box .elementor-widget-icon-box .elementor-icon-box-content h3,
.location-hover-image-box .elementor-widget-icon-box .elementor-icon-box-content p{
	transition: all 0.4s ease-in-out;
}

.location-hover-image-box:hover .elementor-widget-icon-box .elementor-icon-box-content h3,
.location-hover-image-box:hover.elementor-widget-icon-box .elementor-icon-box-content p,
.location-hover-image-box.active .elementor-widget-icon-box .elementor-icon-box-content h3,
.location-hover-image-box.active .elementor-widget-icon-box .elementor-icon-box-content p{
	color: var(--white-color) !important;
}

.location-hover-image-icon{
	height: var(--container-widget-width);
}

.location-hover-image-icon .elementor-widget-container{
	display: flex;
    align-items: center;
    justify-content: center;	
}

.location-tab-img-container:before{
	height: calc(100% - 15px);
	width: calc(100% - 40px);
}

.location-tab-img{
	height: 100%;
}

.location-tab-img img{
	aspect-ratio: 1 / 1.11;
    object-fit: cover;
	height: 100%;
}

.location-overview-img img{
	aspect-ratio: 1 / 1.33;
    object-fit: cover;
}

.location-overview-counter .elementor-widget-container{
	background-clip: text;
}

.location-overview-counter .elementor-counter-title{
	background-clip: unset;
}

.location-overview-counter .elementor-counter-number-wrapper{
	flex-grow: 0;
	margin-right: 20px;
}

.location-overview-counter .elementor-counter-number-wrapper .elementor-counter-number-suffix{
	flex-grow: 0;
}

.location-overview-icon-box:before{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--e-global-color-accent);
	border: 1px solid transparent;
	transform: scale(0.5);
	opacity: 0;
	z-index: 0;
	transition: all 0.3s ease-in-out;
}

.location-overview-icon-box:hover:before{
	transform: scale(1);
	opacity: 1;
}

.location-overview-icon-box .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon,
.location-overview-icon-box .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title,
.location-overview-icon-box .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon-box-description,
.location-overview-icon-box .location-overview-icon .elementor-icon-wrapper .elementor-icon{
	transition: all 0.4s ease-in-out;
}

.location-overview-icon-box:hover .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon{
    fill: var(--white-color);
    color: var(--white-color);
    border-color: var(--white-color);
}

.location-overview-icon-box:hover .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon-box-title,
.location-overview-icon-box:hover .elementor-widget-icon-box .elementor-icon-box-wrapper .elementor-icon-box-description{
	 color: var(--white-color);
}

.location-overview-icon-box .location-overview-icon{
	transform: translateY(-50%);
	right: 10px;
	opacity: 0.03;
}

.location-overview-icon-box:hover .location-overview-icon{
	opacity: 0.2;
}

.location-overview-icon-box:hover .location-overview-icon .elementor-icon-wrapper .elementor-icon{
	color: var(--white-color);
    border-color: var(--white-color);
}

.location-overview-icon-box:hover .location-overview-icon .elementor-icon-wrapper .elementor-icon svg{
	fill: var(--white-color);
}


@media only screen and (max-width: 1300px) {
	
	.location-why-work-img .elementor-widget-container:before{
		bottom: -20px;
	}
	
}

@media only screen and (max-width: 1024px) {
		
	.location-about-img-1:before {
		right: 10px;
		bottom: 10px;
	}
	
	.location-about-img-1:after{
		right: 0;
		bottom: 0;
		height: calc(100% - 30px);
	}
	
	.location-about-img-2 img{
		aspect-ratio: 1 / 1.42;
	}
	
	.location-why-work-img img{
		aspect-ratio: 1 / 0.75;
	}
	
	.location-tab-img img{
		aspect-ratio: 1 / 0.75;
	}
	
	.location-overview-img img{
		aspect-ratio: 1 / 1.1;
	}
}


@media only screen and (max-width: 767px) {
	
	.location-why-work-img .elementor-widget-container:before{
		right: 0;
		bottom: 0;
		clip-path: none;
		height: 100%;
		width: 100%;
		z-index: 1;
	}

	.location-why-work-img img{
		position: relative;
		aspect-ratio: 1 / 0.95;
		clip-path: none;
		z-index: 1;
	}
	
	.location-hover-image-box:before,
	.location-hover-image-box:after,
	.location-hover-image-box .elementor-widget-icon-box:before{
		width: 70px;
		height: 70px;
	}
	
	.location-overview-img img{
		aspect-ratio: 1 / 0.75;
	}
	
	.location-overview-counter .elementor-counter-number-wrapper{
		margin-right: 0;
	}
	
	.location-overview-icon-box-wrapper{
		position: relative;
		top: 0;
		left: 0;
	}
	
}
	

/* 
 * Blog Page CSS
 * */

.blog-archive-feature-img img{
	aspect-ratio: 1 / 0.726;
	object-fit: cover;
}

.blog-loop-grid .elementor-widget-shortcode{
	height: var(--container-widget-width);
}


.blog-loop-grid .author-profile-photo img{
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 50%;
}

.blog-loop-grid .elementor-widget-post-info ul{
	justify-content: space-between;
    gap: 10px;
}

/* Blog Pagination CSS */

.blog-loop-grid .elementor-pagination{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 10px;
}

.blog-loop-grid .elementor-pagination .page-numbers.prev,
.blog-loop-grid .elementor-pagination .page-numbers.next{
	text-indent: -9999px;
}

.blog-loop-grid .elementor-pagination .page-numbers{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 0;
	color: var(--white-color);
	background-color: var(--white-color);
	border-radius: 10px;
	transition: all 0.3s ease-in-out;
}

.blog-loop-grid .elementor-pagination .page-numbers:hover,
.blog-loop-grid .elementor-pagination .page-numbers:focus,
.blog-loop-grid .elementor-pagination .page-numbers.current{
	background-color: var(--e-global-color-accent);
	color: var(--white-color);
}

.blog-loop-grid .elementor-pagination .page-numbers.prev:before,
.blog-loop-grid .elementor-pagination .page-numbers.next:before{
	content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: var(--e-global-color-primary);
    mask-image: url("./images/left.svg");
    mask-position: center center;
    mask-repeat: no-repeat;
    mask-size: contain;
    transform: translate(-50%, -50%);
    height: 20px;
    width: 20px;
    transition: all 0.3s ease-in-out;	
}

.blog-loop-grid .elementor-pagination .page-numbers.next:before{
	mask-image: url("./images/right.svg");
}

.blog-loop-grid .elementor-pagination .page-numbers.prev:hover:before,
.blog-loop-grid .elementor-pagination .page-numbers.next:hover:before,
.blog-loop-grid .elementor-pagination .page-numbers.prev:focus:before,
.blog-loop-grid .elementor-pagination .page-numbers.next:focus:before{
	background-color: var(--white-color);
}


.blog-loop-grid .elementor-pagination span.page-numbers.prev,
.blog-loop-grid .elementor-pagination span.page-numbers.next{
	display: none;
}

.blog-loop-grid .elementor-pagination .page-numbers:focus{
	color: var(--title-color) !important;
}


@media only screen and (max-width: 1024px) {
	
	.blog-loop-grid .elementor-pagination .page-numbers.prev:before, 
	.blog-loop-grid .elementor-pagination .page-numbers.next:before{
		height: 18px;
		width: 18px;
	}
	
	.blog-loop-grid .elementor-pagination .page-numbers{
		width: 45px;
		height: 45px;
	}
}

@media only screen and (max-width: 767px) {
	
	.blog-loop-grid .elementor-widget-shortcode:has(.author-profile-photo){
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.blog-loop-grid .elementor-widget-post-info ul{
		flex-direction: column;
	}
	
	.blog-loop-grid .elementor-widget-post-info ul li span.elementor-post-info__item--type-author{
		padding-left: 34px !important;
	}
	
	.blog-loop-grid .elementor-pagination .page-numbers{
		width: 40px;
		height: 40px;
	}
	
	.blog-loop-grid .elementor-pagination .page-numbers.prev:before, 
	.blog-loop-grid .elementor-pagination .page-numbers.next:before{
		height: 16px;
		width: 16px;
	}
	
}


/*
 * 	Blog Single CSS
 * */

.post-featured-img img{
	aspect-ratio: 1 / 0.424;
    object-fit: cover;
}

.blog-single-author-img .author-profile-photo img{
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 50%;
}

.post-entry .blockquote-text{
	background-color: var(--e-global-color-accent);
	background-image: url("./images/quote.svg");
    background-repeat: no-repeat;
    background-position: top 40px left 40px;
    background-size: 80px auto;
	border-radius: 0;
    padding: 40px 40px 40px 140px;
}

.blog-single-image img {
    aspect-ratio: 1 / 1.125;
    object-fit: cover;
}

.post-tag ul li .elementor-post-info__item--type-terms span{
	font-size: 0 !important;
}

.post-tag ul li .elementor-post-info__item--type-terms span a{
	display: inline-block !important;
	font-size: initial !important;
	background: transparent;
	padding: 12px 30px;
	margin-right: 20px;
	border: 1px solid var(--divider-color);
	border-radius: 5px;
	transition: all 0.4s ease-in-out;
}

.post-tag ul li .elementor-post-info__item--type-terms span a:last-child{
	margin-right: 0;
}	

.post-tag ul li .elementor-post-info__item--type-terms span a:hover{
	background: var(--e-global-color-accent);
	border-color: var(--e-global-color-accent);
	color: var(--white-color) !important;
}

@media only screen and (max-width: 1024px){
	
	.post-featured-img img {
        aspect-ratio: 1 / 0.62;
	}
		
	.post-entry .blockquote-text{
    	background-position: top 30px left 30px;
    	background-size: 60px auto;
	    padding: 30px 30px 30px 110px;
	}
	
	.post-tag ul li .elementor-post-info__item--type-terms span a{
		padding: 10px 20px;
	}

}

@media only screen and (max-width: 767px){
	
	.post-featured-img img {
        aspect-ratio: 1 / 1.1;
	}
	
	.post-entry .blockquote-text{
		background-position: top 15px left 20px;
		padding: 25px;
        background-size: 40px auto;
        text-indent: 40px;
	}
	
	.blog-single-image img{
		aspect-ratio: 1 / 1.05;
	}
	
	.post-tag ul li .elementor-post-info__item--type-terms span a{
		margin: 0 10px 10px 0;
	}
}

/*
 * Author List Page CSS
 * */

.author-profile-img,
.author-profile-img .elementor-shortcode,
.author-profile-img .author-profile-photo{
	height: 100%;
}

.author-profile-photo img{
	width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    height: 100%;
}

.author-social-media{
	list-style: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 24px;
    flex-wrap: wrap;
}


.author-social-media li a{
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-text-font-weight);
	text-transform: var(--e-global-typography-text-text-transform);
	font-style: var(--e-global-typography-text-font-style);
	line-height: var(--e-global-typography-text-line-height);
	color: var(--e-global-color-primary);
	background-color: transparent;
	border: 1px solid rgba(0, 0, 0, 0.10);
	transition: all 0.3s ease-in-out;
	padding: 10px 15px;
}

.author-social-media li a:hover,
.author-social-media li a:focus{
	background-color: var(--e-global-color-accent);
	color: var(--white-color);
}

.author-social-media li a:before{
	content: '\f39e';
	display: flex;
	align-items: center;
	justify-content: center;
    font-family: 'Font Awesome 5 Brands';
	font-weight: 400;
}

.author-social-media li.instagram a:before{
	content: '\f16d';
}

.author-social-media li.linkedin a:before{
	content: '\f0e1';
}

.author-social-media li.youtube a:before{
	content: '\f167';
}

.author-social-media li.twitter a:before{
	content: '\e61b';
}

.author-social-media li.tiktok a:before{
	content: '\e07b';
}

@media only screen and (max-width: 1024px) {
	
	.author-profile-img,
	.author-profile-img .elementor-shortcode,
	.author-profile-img .author-profile-photo,
	.author-profile-photo img{
		height: auto;
	}

	.author-profile-photo img{
		aspect-ratio: 1 / 1;
	}
	
}


@media only screen and (max-width: 767px) {
	
	.author-social-media{
		gap: 10px 15px;
	}
	
	.author-social-media li a{
		padding: 5px 10px;
	}
	
	
	
}


/* 
 * Contact Us Page CSS
 * */

.contact-cta .elementor-cta .elementor-content-item{
	line-height: 0;
}

.contact-cta .elementor-cta .elementor-content-item .elementor-icon{
	padding: 29px 21px;
	transition: all 0.4s ease-in-out;
}

.contact-cta:hover .elementor-cta .elementor-content-item .elementor-icon{
	background: var(--e-global-color-primary);
}

.contact-cta .elementor-cta .elementor-content-item .elementor-icon svg{
	stroke: none !important;
}

.team-member-img img{
	aspect-ratio: 1 / 1.16;
	object-fit: cover;
}

.team-social-icon .elementor-social-icons-wrapper{
	gap: var(--grid-column-gap,5px);
}

.team-item .team-social-icon{
	opacity: 0;
    visibility: hidden;
    transform: translateY(-134px);
    transition: all 0.4s ease-in-out;
    z-index: 0;
}

.team-item:hover .team-social-icon{
	opacity: 1;
	visibility: visible;
	transform: translateY(-190px);
}


.contact-team-slider .elementor-swiper-button-prev{
	left: -100px !important;
}

.contact-team-slider .elementor-swiper-button-prev svg{
	transform: rotate(180deg);
}

.contact-team-slider .elementor-swiper-button-next{
	right: -100px !important;
}

@media only screen and (max-width: 1470px){
	
	.contact-team-slider .e-n-carousel{
		padding-bottom: 80px;
	}
	
	.contact-team-slider .elementor-swiper-button{
		top: auto !important;
		bottom: 0 !important;
		transform: translateY(0) !important;
	}
	
	.contact-team-slider .elementor-swiper-button-prev{
		left: calc(50% - 55px) !important;
	}

	.contact-team-slider .elementor-swiper-button-next{
		right: calc(50% - 55px) !important;
	}
	
}


@media only screen and (max-width: 767px) {
	
	.contact-cta .elementor-cta .elementor-content-item .elementor-icon{
		padding: 19px 15px;
	}
	
	.contact-team-slider .e-n-carousel {
		padding-bottom: 60px;
	}
	
	.contact-team-slider .elementor-swiper-button-prev{
		left: calc(50% - 45px) !important;
	}

	.contact-team-slider .elementor-swiper-button-next{
		right: calc(50% - 45px) !important;
	}
	
}

@media (min-width: 768px) and (max-width: 1024px) {
    .team-image,
    .team-image figure {
        max-width: 480px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .team-image figure img {
        width: 100% !important;
        height: 420px !important;
        object-fit: cover !important;
        object-position: top !important;
        aspect-ratio: unset !important;
    }
}

@media (max-width: 767px) {
    .team-image figure img {
        height: 360px !important;
		object-position: top !important;
    }
}

/*
 * 	Thank You CSS
 * */

.thank-you-img img{
	aspect-ratio: 1 / 0.915;
	object-fit: cover;
	object-position: bottom;
}

@media only screen and (max-width: 1024px) {
	
	.thank-you-img img{
		aspect-ratio: 1 / 0.85;
	}
}


/* 
 * Google Review CSS 
 * */

#sb-reviews-container-1 {
	
}

/* Height 100% CSS */
.sbr-owl-stage {
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-items: stretch;
}

.sbr-owl-stage {
	padding: calc(var(--column-gutter) / 2) 0 !important;
}

.sbr-owl-item {
	padding: calc(var(--column-gutter) / 2) !important;
}

/* Height 100% CSS */
.sbr-owl-stage .sb-post-item-wrap,
.sbr-owl-stage .sb-post-item{
	height: 100%;
}

.sbr-owl-stage .sb-post-item{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	align-items: stretch;	
	align-content: flex-start;
}

.sb-post-item {
	padding: 30px;
	transition: all 0.3s ease-in-out;
}

.sb-post-item:hover{
	background-color: var(--e-global-color-accent);
}

.sb-post-item .sb-item-provider-icon {
	display: none;
}

.sb-post-item .sb-item-author-date-ctn {
	padding-right: 0 !important;
	margin-bottom: 40px !important;
}

.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn {
	align-items: center;
	gap: 10px;
}

.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-author-img {
	width: 80px;
	min-width: 80px;
	height: 80px;
}

.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-name {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	letter-spacing: 0px;
	text-transform: uppercase;
	margin: 0px 0px 4px 0px !important;
	transition: all 0.3s ease-in-out;
}

.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-date {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	text-transform: none;
	transition: all 0.3s ease-in-out;
}

.sb-post-item .sb-item-rating {
	position: relative;
	margin: 0 !important;
	padding: 12px 0 !important;
	transition: all 0.3s ease-in-out;
}

.sb-post-item .sb-item-rating:before{
	content: '';
	position: absolute;
	top: 0;
	left: auto;
	right: 0;
	background-color: rgb(from var(--e-global-color-primary) r g b / 10%);
	mask-image: url("./images/quote-left.svg");
	mask-position: center left;
	mask-repeat: no-repeat;
	mask-size: 40px auto;
	width: 40px;
	height: 40px;
	transition: all 0.3s ease-in-out;
}

.sb-post-item:hover .sb-item-rating:before{
	background-color: var(--white-color);
}

.sb-post-item .sb-item-rating .sb-relative {
	line-height: 0;
}

.sb-post-item .sb-item-rating .sb-relative .sb-item-rating-ctn .sb-item-rating-icon svg {
	margin: 0 4px;
}

.sb-post-item .sb-item-text {
	flex: 1;
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	border-bottom: 1px solid rgb(from var(--e-global-color-primary) r g b / 10%);
	padding-bottom: 24px !important;
	margin-bottom: 24px !important;
	transition: all 0.3s ease-in-out;
}

.sb-post-item .sb-item-text a {
	color: inherit;
}

.sb-post-item:hover .sb-item-rating,
.sb-post-item:hover .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-name,
.sb-post-item:hover .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-date,
.sb-post-item:hover .sb-item-text {
	color: var(--white-color) !important;
}

.sb-post-item:hover .sb-item-text{
	border-bottom-color: rgb(from var(--white-color) r g b / 50%);
}

/* .sbr-owl-dots.disabled, .sbr-owl-nav.disabled{
	display: block !important;
} */

.sbr_carousel .sbr-owl-nav>div {
	--google-review-arrow: -100px;
	top: 50%;
	left: var(--google-review-arrow);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--e-global-color-accent);
	color: var(--white-color);
	border-radius: 5px;
	padding: 0;
	margin: 0;
	width: 50px;
	height: 50px;
	transform: translateY(-50%) !important;
	transition: all 0.3s ease-in-out;
	box-shadow: none;
}

.sbr_carousel .sbr-owl-nav>div:hover,
.sbr_carousel:hover .sbr-owl-nav>div:hover{	
	background: var(--e-global-color-secondary);
}

.sbr_carousel:hover .sbr-owl-nav>div {
	background: var(--e-global-color-accent);
	box-shadow: none;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
}

.sbr_carousel .sbr-owl-nav>div svg path{
	display: none !important;
	opacity: 0 !important;
	visibility: hidden !important;
}

.sbr_carousel .sbr-owl-nav>.sbr-owl-next {
	left: auto;
	right: var(--google-review-arrow);
}

.sbr_carousel .sbr-owl-nav>div svg {
	background-color: currentcolor;
	mask-image: url("./images/arrow.svg");
	mask-position: center center;
	mask-repeat: no-repeat;
	mask-size: contain;
	transition: all 0.3s ease-in-out;
	width: 20px;
    height: 20px;
}

.sbr_carousel .sbr-owl-nav>.sbr-owl-prev svg{
	transform: scale(-1);
}

.sbr_carousel .sbr-owl-dots{
	line-height: 0;
    padding: 0;
    margin-top: 30px !important;
}

.sbr_carousel .sbr-owl-dot span{
	width: 10px;
    height: 10px;
    margin: 0 6px;
    line-height: 0;
	background: var(--e-global-color-primary) !important;
	opacity: 10px !important;
	transition: all 0.3s ease-in-out;
}

.sbr_carousel .sbr-owl-dot:hover span,
.sbr_carousel .sbr-owl-dot.active span{
	background: var(--e-global-color-accent) !important;
}

.sbr_carousel .sbr-owl-dot.active span{
	width: 30px;
}

@media only screen and (max-width: 1700px) {

	.sbr_carousel .sbr-owl-nav>div {
		--google-review-arrow: -50px;
	}
}

@media only screen and (max-width: 1440px) {

	.sbr_carousel {
		padding-bottom: 80px;
	}

	.sbr_carousel .sbr-owl-nav>div {
		--google-review-arrow: calc(50% - 60px);
		top: auto;
		bottom: 0;
		transform: translateY(0) !important;
	}
	
}

@media only screen and (max-width: 1024px) {

	/* Google Review Testimonial CSS */

	#sb-reviews-container-1 {
		--column-gutter: 20px;
	}

	.sb-post-item {
		padding: 20px;
	}

	.sb-post-item .sb-item-author-date-ctn{
		margin-bottom: 30px !important;
	}
	
	.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-author-img {
		width: 60px;
		min-width: 60px;
		height: 60px;
	}

	.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-name {
		font-size: 18px !important;
	}

	.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-name-date .sb-item-author-date {
		font-size: 14px !important;
	}

	.sbr_carousel .sbr-owl-nav>div {
		--google-review-arrow: calc(50% - 60px);
	}
	
	.sbr_carousel .sbr-owl-dots{
		margin-top: 15px !important;
	}

}

@media only screen and (max-width: 767px) {

	/* Google Review Testimonial CSS */
	.sbr_carousel {
		padding-bottom: 60px;
	}

	.sb-post-item .sb-item-author-date-ctn{
		margin-bottom: 20px !important;
	}
	
	.sb-post-item .sb-item-author-date-ctn .sb-item-author-ctn .sb-item-author-img {
		width: 50px;
		min-width: 50px;
		height: 50px;
	}

	.sbr_carousel .sbr-owl-nav>div {
		--google-review-arrow: calc(50% - 45px);
		width: 40px;
		height: 40px;
	}
	
	.sbr_carousel .sbr-owl-nav>div svg{
		width: 18px;
		height: 18px;
	}
	
	.sbr_carousel .sbr-owl-dot span{
		margin: 0 4px;
	}
	
	.sbr_carousel .sbr-owl-dot.active span{
		width: 25px;
	}
	
}






/* 
 * Gravity Form CSS
 * */

.gform_wrapper .gform_heading{
	display: none;
}

.gform_wrapper form .gform-body .gform_fields{
	row-gap: 30px;
	column-gap: 30px;
	--gf-field-gap-x: 30px;
	--gf-field-gap-y: 30px;
}

.gform_wrapper form .gform-body .gform_fields .gfield{
	border-radius: 0;
    box-shadow: none;
}

.gform_wrapper form .gform-body .gform_fields .gfield legend,
.gform_wrapper form .gform-body .gform_fields .gfield label,
.gform_wrapper form .gform-body .gform_fields .gfield legend .gfield_required span,
.gform_wrapper form .gform-body .gform_fields .gfield label .gfield_required span{
	font-family: var(--e-global-typography-primary-font-family);
	font-size: var(--e-global-typography-text-font-size);
	font-weight: var(--e-global-typography-secondary-font-weight);
	line-height: var(--e-global-typography-text-line-height);
	text-transform: var(--e-global-typography-secondary-text-transform);
	color: var(--e-global-color-primary);
	margin-bottom: 15px;
}

.gform_wrapper form .gform-body .gform_fields .gfield legend .gfield_required span,
.gform_wrapper form .gform-body .gform_fields .gfield label .gfield_required span{
	color: var(--e-global-color-accent);
}

/* .gform_wrapper form .gform-body .gform_fields .gfield label{
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
	color: var(--e-global-color-text);
} */

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container input,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container textarea{
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: 14px;
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
	color: var(--e-global-color-text);
	background-color: var(--bg-color);
	border: 1px solid var(--divider-color);
	border: 0;
	border-radius: 0;
    box-shadow: none;
	height: auto;
	padding: 14.5px 20px;
}

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container input::placeholder,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select::placeholder,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container textarea::placeholder{
	color: rgb(from var(--e-global-color-text) r g b / 50%);
}

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select{
	background-image: var(--gf-ctrl-select-icon);
    background-position: var(--gf-ctrl-select-icon-position);
    background-repeat: no-repeat;
    background-size: var(--gf-ctrl-select-icon-size);
}

/* If Placeholder Color Was Opacity */
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select[data-gtm-form-interact-field-id="0"]{
	color: var(--e-global-color-text);
}

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select option{
	background-color: var(--white-color);
}

.gform_wrapper .gform-grid-row{
	margin-inline: 0;
	column-gap: var(--gf-field-gap-x);
	row-gap: var(--gf-field-gap-y);
}

.gform_wrapper .gform-grid-col{
	padding-inline: 0;
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-date .ginput_container_date{
	position: relative;
	flex-direction: column;
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-date .ginput_container_date img{
	position: absolute;
	top: 50%;
	left: auto;
	right: 20px;
	opacity: 1;
	transform: translateY(-50%);
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-date .ginput_container_date input{
	width: 100%;
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-time .ginput_container{
	column-gap: 0;
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-time .ginput_container .gform-grid-col{
	inline-size: 50%;
}

.gform_wrapper form .gform-body .gform_fields .gfield--type-number .ginput_container .instruction {
	display: none;
}

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container input:focus,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container select:focus,
.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container textarea:focus,
.gform_wrapper form .gform_footer .gform_button:focus{
	outline: none !important;
	box-shadow: none;
}

.gform-theme--foundation .gfield textarea.large{
	min-block-size: auto;
}

.gform_wrapper form .gform-body .gform_fields .gfield .ginput_container textarea{
	height: 140px;
}

.gform_wrapper form .gform-body .gform_fields .gfield .validation_message.gfield_validation_message{
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
    font-size: 14px;
    font-weight: 500;
	line-height: var(--e-global-typography-text-line-height);
    text-transform: capitalize;
    letter-spacing: 0.02em;
	color: #C8221E;
	margin-top: 0;
}

.contact-us-form .gform_validation_errors{
	padding: 10px;
	margin-bottom: 20px;	
}

.gform_wrapper form .gform_footer{
	--gf-form-footer-margin-y-start: 30px;
	justify-content: start;
}

.gform_wrapper form .gform_footer .gform_button{
	text-align: center;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: var(--e-global-typography-accent-font-size) !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    line-height: var(--e-global-typography-text-line-height) !important;
    color: var(--white-color) !important;
    background-color: var(--e-global-color-accent) !important;
    border: none !important;
    border-radius: 5px !important;
    padding: 14px 15px !important;
    transition: all 0.3s ease-in-out !important;
	box-shadow: none;
}

.gform_wrapper form .gform_footer .gform_button:hover{
	background-color: var(--e-global-color-secondary) !important;
}

.gform_wrapper form .gform_footer .gform-loader,
.gform_wrapper form .gform-loader{
	display: none !important;
	--gf-color-primary-rgb: 21,100,155;
	--gf-form-spinner-bg-color: rgba(var(--gf-color-primary-rgb), 0.1) !important;
	border-block-end-color: var(--e-global-color-primary);
	border-block-start-color: var(--gf-form-spinner-bg-color);
    border-inline-end-color: var(--gf-form-spinner-bg-color);
    border-inline-start-color: var(--e-global-color-primary);
}

.gform_wrapper .gform_validation_errors{
	padding: 10px;
    margin-bottom: 30px;
}

.gform_wrapper .gform_validation_errors h2.gform_submission_error{
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-size: var(--e-global-typography-text-font-size);
	font-weight: 500;
    line-height: 1.2em;
}

.gform_wrapper .gform_confirmation_message{
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-size: 28px;
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    color: var(--e-global-color-primary);
}

@media only screen and (max-width: 1024px){
	
	.gform_wrapper .gform_confirmation_message{
		font-size: 24px;
	}
}

@media only screen and (max-width: 767px){
	
	.gform_wrapper form .gform-body .gform_fields{		
		column-gap: 0;
		row-gap: 20px;
		--gf-field-gap-x: 0;
		--gf-field-gap-y: 20px;
	}
	
	.gform_wrapper form .gform_footer{
		--gf-form-footer-margin-y-start: 20px;
	}
	
	.gform_wrapper form .gform-body .gform_fields .gfield .validation_message.gfield_validation_message{
		font-size: 12px;
	}
	
	.gform_wrapper .gform_confirmation_message{
		font-size: 20px;
	}
	
}
