body {
	padding: 0px;
    margin: 0px;
	background-color:#FFFFFF;
	font-family: 'Work Sans';
}
#wrap {
	float:left;
	width:100%;
}
:root {
    --container-width: 1250px;
	--container-padding: calc((100vw - var(--container-width)) / 2);
}
.container {
	max-width: 1250px;
	padding:0;
	margin:0px auto;
}
.site-header {
	width: 100%;
    min-width: 100%;
    display: inline-block;
    margin: 0;
    padding: 0;
}
#headertop {
	float: left;
    width: 100%;
    padding: 8px 0px;	
	background-color:#f4f4f4;
}
#headertop .topbar {
	width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#headertop .topbar .phoneBox {
	display: flex;
    /*align-content: center;
    align-items: center;*/
    grid-gap: 8px;
	font-size: 16px;
	line-height:20px;
	font-weight: 700;
	color: #3e3e3e;
	text-transform: uppercase;
}
#headertop .topbar .phoneBox i {
	float:left;
	margin-right:5px;
}
#headertop .topbar .phoneBox a {
	font-size: 16px;
	line-height:20px;
	font-weight: 700;
	color: #3e3e3e;
	text-decoration:none;
	text-transform: uppercase;
}
#headertop .topbar .phoneBox a i {
	float:left;
	margin-right:5px;
}
#headertop .topbar .phoneBox a:hover {
	color: #22fc36;
	transition: all .25s ease-in-out;
}
#headertop .topbar .socialBox {
	display: flex;
    align-content: center;
    align-items: center;
    grid-gap: 10px;
}
#headertop .topbar .socialBox i {
	float:left;
	margin-right:5px;
}
#headertop .topbar .socialBox a {	
	padding: 7px;
	font-size: 16px;
	line-height:16px;
	font-weight: 400;
	color: #3e3e3e;
	text-decoration:none;
    border-radius: 100%;
}
#headertop .topbar .socialBox a:hover {
	color: #22fc36;
	transition: all .25s ease-in-out;
}
#headerbotm {
    width: 100%;
	display: inline-block;
    padding: 18px 0px;	
	transition: all .25s ease-in-out;
}
#headerbotm .header {
	width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}
#headerbotm .header .logo {
	display: block;
    width: 157px;
    transition: all .25s ease-in-out;
}
#headerbotm .header .logo img {
	width: 100%;
	height: auto;
}
#mainNav {
    display: block;
    width: 100%;
    text-align: center;
	margin-bottom: 20px;
}
#mainNav ul.menu {
	padding: 0;
	margin: 0;
	list-style-type: none;
}
#mainNav ul.menu li {
	position: relative;
	display: inline-block;
	margin-right: 55px;
	text-align: left;	
}
#mainNav ul.menu li:last-child {
	margin-right: 0px;
}
#mainNav ul.menu li a {
	position: relative;
	display: block;
	padding: 0 0 0px 0;
	font-size: 16px;
	line-height:28px;
	color: #3e3e3e;
	font-weight: 400;	
	text-decoration: none;
	text-transform:uppercase;
	transition: all 0.5s ease-in-out;	
}
#mainNav ul.menu > li > a:hover, 
#mainNav ul.menu > li:hover > a, 
#mainNav ul.menu > li.current-menu-item > a, 
#mainNav ul.menu > li.current-menu-parent > a {
	color: #22fc36;
	transition: all 0.5s ease-in-out;
}
#mainNav ul.menu li.current-menu-item a:after,
#mainNav ul.menu > li:hover > a:after,
#mainNav ul.menu > li > a:hover:after {
	position: absolute;
	display:block;
	content: '';	
	left: 0px;
	right: 0px;
	bottom: 0px;	
	width: 100%;
    height: 2px;
    background: #22fc36;
	transition: all 0.5s ease-in-out;
}
#mainNav ul.menu > li.menu-item-has-children:after {
    content: '\f140';
    font-family: "Material Design Icons";
    display: inline-block;
    margin: 0 0 0 6px;
    color: #3e3e3e;
    position: absolute;
    height: auto;
    width: auto;
    right: -26px;
    top: 0;
    line-height: 28px;
    font-size: 22px;
}

#mainNav ul.menu > li:hover > ul.sub-menu {
	display: block;
}
#mainNav ul.menu li button.sub-menu-toggle {
	display:none;
}
#mainNav ul.menu li ul.sub-menu {
	margin: 0;
	padding: 0;
	list-style-type: none;
	float: left;
	width: 250px;
	background-color: #404040;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 3;
	display: none;
}
#mainNav ul.menu li ul.sub-menu li {
	float: left;
	width: 100%;
	margin: 0 0px;
}
#mainNav ul.menu li ul.sub-menu li a {
	padding: 12px 12px;
	border-bottom: none;
	font-size: 16px;
	color: #fff;
	text-align: left;
	text-transform: none;
}
#mainNav ul.menu li ul.sub-menu li a:hover, 
#mainNav ul.menu li ul.sub-menu li:hover > a, 
#mainNav ul.menu li ul.sub-menu li.current-menu-item > a {
	background-color: #22fc36;
    color: #2e2e2e;
	text-decoration: none;
}
#mainNav ul.menu li ul li ul.sub-menu {
	top: 0;
	left: 100%;
	display: none;
}
#mainNav ul.menu > li > ul > li:hover > ul.sub-menu {
	display: block;
}

.titlebor {
	position:relative;
    padding: 0px 0 25px 0;
    margin: 0 0 25px 0!important;
}
.titlebor:after {
	content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 8px;
    height: 8px;
    display: inline-block;
    background-color: #00FF00;
    border-radius: 50px;
}
.titlebor:before {
	content:'';
	position: absolute;	
	bottom:0;
	left:0;
    width: 100px;
	height:2px;
	display:inline-block;
	background-color:#00FF00;
}
.titleborcnt {
	position:relative;
    padding: 0px 0 25px 0;
    margin: 0 0 25px 0!important;
}
.titleborcnt:after {
	content: '';
    position: absolute;
    bottom: -3px;
    left: -100px;
	right: 0;
    margin: auto;
    width: 8px;
    height: 8px;
    display: inline-block;
    background-color: #00FF00;
    border-radius: 50px;
}
.titleborcnt:before {
	content:'';
	position: absolute;	
	bottom:0;
	left:0;
	right: 0;
    margin: auto;
    width: 100px;
	height:2px;
	display:inline-block;
	background-color:#00FF00;
}

.serviceBox {
	position:relative;
}
.serviceBox .elementor-widget-container {
	position:relative;
}
.serviceBox .elementor-widget-container:after {
	content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
    display: inline-block;
    background: rgb(0 0 0 / 70%);
    z-index: 0;
}
.serviceBox h4 {
	position: relative;
	margin: 0 0 10px 0;
	font-size: 16px;
	line-height: 20px;
	color: #22fc36;
	font-weight: 600;
	text-transform: uppercase;
	z-index: 1;
}
.serviceBox p {
	position: relative;
	margin: 0 0 10px 0;
	font-size: 15px;
	line-height: 20px;
	color: #fff;
	font-weight: 400;
	z-index: 1;
	min-height: 60px;
}
.serviceBox p:last-child {
	min-height: inherit;
}
.serviceBox p a {
	position: relative;
	font-size: 15px;
	line-height: 20px;
	font-weight: 600;
	border-bottom:1px solid #22fc36;
	text-transform: uppercase;
	z-index: 1;
}
.serviceBox p a:hover {
	font-weight: 600;
	border-bottom:1px solid #ffffff;
}
.reviewSec .elementor-testimonial {
    background-color: #fff;
    padding: 30px 20px;
    border: 1px solid #dedede;
}
.reviewSec .elementor-testimonial__text {
    font-size: 16px!important;
    font-style: inherit!important;
    line-height: 22px!important;
    color: #2e2e2e!important;
    min-height: 115px!important;
}
.reviewSec .elementor-testimonial__cite {
    font-size: 20px!important;
    line-height: 20px!important;
}
.groupList ul {
	margin:0;
	padding:0;
	list-style:none;
}
.groupList ul li {
	position: relative;
    float: left;
    width: 100%;
    padding: 5px 0px 5px 35px;
    font-size: 18px;
    color: #565656;
    font-weight: 400;
    line-height: 28px;
}
.groupList ul li:before {
    position: absolute;
    content: "\f5e1";
    padding-top: 3px;
    font-family: "Material Design Icons";
    font-size: 20px;
    color: #2e2e2e;
    font-weight: 400;
    line-height: 26px;
    text-align: center;
    left: 0px;
    top: 5px;
}
#footer {
	position: relative;
	display: block;
	background: #2e2e2e;
	overflow: hidden;
}
.footerTop {
	float: left;
	width: 100%;
}
.footerSection {
	float: left;
	width: 100%;
	padding-top: 60px;
	display: flex;
    grid-gap: 80px;
}
.footerSection h5 {
	position: relative;	
	margin: 0 0 20px 0;	
	padding: 0 0 15px 0;
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 700;
	line-height: 30px;
	text-transform: uppercase;
}
.footerSection h5:after {
	content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 8px;
    height: 8px;
    display: inline-block;
    background-color: #00FF00;
    border-radius: 50px;
}
.footerSection h5:before {
	content:'';
	position: absolute;	
	bottom:0;
	left:0;
    width: 50px;
	height:2px;
	display:inline-block;
	background-color:#00FF00;
}
.footerSection .ftr-logo {
	padding-bottom: 30px;	
	width:25%;
}
.footerSection .ftr-logo div > img {
	width:auto;
	height:auto;
}
.footerSection .hours-sec {
	margin: 30px 0 0 0;
}
.footerSection .hours-sec strong {
	width: 100%;
    display: inline-block;
	margin: 0 0 10px 0;
	font-size: 16px;
	line-height: 26px;
	color: #FFFFFF;
	font-weight: 700;
	text-transform: uppercase;
}
.footerSection .hours-sec p {
	margin: 0 0 10px 0;
	font-size: 16px;
	line-height: 26px;
	color: #FFFFFF;
	font-weight: 400;
}
.footerSection .hours-sec p span {
	display: inline-block;
	margin: 15px 0 0px 0;
	font-size: 16px;
	line-height: 26px;
	color: #21fc35;
	font-weight: 400;
	text-decoration:none;
}
.footerSection .hours-sec p a {
	display: inline-block;
	margin: 15px 0 0px 0;
	font-size: 16px;
	line-height: 26px;
	color: #21fc35;
	font-weight: 400;
	text-decoration:none;
}
.footerSection .hours-sec p a:hover {
	color: #ffffff;
	text-decoration:none;
}
.footerSection .ftr-menu {
	padding-bottom: 30px;
	width:25%;
}
.footerSection .ftr-menu ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.footerSection .ftr-menu ul li {
	display: inline-block;
	width: 100%;
	padding: 0 0 5px 0;
}
.footerSection .ftr-menu ul li a {
	display: inline-block;
	font-size: 16px;
	color: #FFFFFF;
	font-weight: 400;
	text-decoration: none;
 	transition: all .3s ease-in-out;
}
.footerSection .ftr-menu ul li a:hover {
	color: #21FC35;
}
.footerSection .ftr-contact {
	padding-bottom: 30px;
	width:25%;
}
.footerSection .ftr-contact h4 {
	position: relative;
    margin: 0 0 2px 0;
    font-size: 16px;
    line-height: 26px;
    font-weight: 700;
    color: #FFFFFF;
    text-transform: uppercase;
}
.footerSection .ftr-contact ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
.footerSection .ftr-contact ul li {
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 0 0px 20px 0px;
	font-size: 16px;
	color: #FFFFFF;
	font-weight: 400;
	line-height: 26px;
}
.footerSection .ftr-contact a {
	color: #ffffff;
	text-decoration: none;
	transition: all .3s ease-out;
}
.footerSection .ftr-contact a:hover {
	color: #21fc35;
}
.footerBottom {
	float: left;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 1px solid #585858;
}
.footerBottom .copy-right {
	width: 72%;
    float: left;
}
.footerBottom .copy-right p {
	margin: 0;
	font-size: 16px;
	color: #FFFFFF;
	font-weight: 400;
	line-height: 30px;
}
.footerBottom .copy-right a {
	display: inline-block;
	font-size: 16px;
	color: #21fc35;
	font-weight: 400;
	text-decoration: none;
 	transition: all .3s ease-in-out;
}
.footerBottom .copy-right a:hover {
	color: #fff;
}
.footerBottom .ftr-social {
    width: 27%;
	float: right;
    text-align: right;
}
.footerBottom .ftr-social ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.footerBottom .ftr-social ul li {
    display: flex;
    padding: 0 10px 0 0;
    width: 100%;
    text-align: right;
    float: right;
    justify-content: flex-end;
    align-items: center;
    grid-gap: 20px;
	color: #ffffff;
}
.footerBottom .ftr-social ul li:last-child {
	padding:  0;
}
.footerBottom .ftr-social ul li a {
	display: inline-block;
    width: 39px;
    height: 39px;
    background: transparent;
    border: 1px solid #fff;
    border-radius: 0;
    font-size: 18px;
	font-weight:400;
    color: #fff;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
}
.footerBottom .ftr-social ul li a:hover {
	background: #21fc35;
	border: 1px solid #21fc35;
	color: #ffffff;
}

/* ---------- Theme Header & Footer CSS  ---------- */ 
.mainNav {}
.mainNav .sub-menu-toggle {
	display:none;
}
.mainNav ul li.menu-item {
    margin: 0 30px;
}
.mainNav ul li.menu-item a {
    padding: 13px 0 8px 0;
	font-size: 16px;
    font-weight: 400!important;
    text-transform: uppercase;
}
.mainNav ul li.menu-item a:hover {
    padding: 13px 0 8px 0;
}
.mainNav .elementor-nav-menu a, 
.mainNav .elementor-nav-menu a.highlighted, 
.mainNav .elementor-nav-menu a:focus, 
.mainNav .elementor-nav-menu a:hover {
    padding: 13px 0 8px 0;
}
.elementor-nav-menu--main .elementor-nav-menu a, 
.elementor-nav-menu--main .elementor-nav-menu a.highlighted, 
.elementor-nav-menu--main .elementor-nav-menu a:focus, 
.elementor-nav-menu--main .elementor-nav-menu a:hover {
    padding: 13px 0px!important;
}
.mainNav ul li.menu-item ul.sub-menu {
	width:100%;
	background-color:#2e2e2e;
}
.mainNav ul li.menu-item ul.sub-menu li {
	margin: 0 0px 0 0px;
}
.mainNav ul li.menu-item ul.sub-menu li a {
	width:100%;
	display:inline-block;
    padding: 10px 20px 10px 10px!important;
	font-size:16px;
	line-height:20px;
    text-transform: uppercase;
	color:#ffffff;
}
.mainNav ul li.menu-item ul.sub-menu li a:hover {
	width:100%;
	display:inline-block;
    padding: 10px 20px 10px 10px!important;
	background-color:#22fc36;
	font-size:16px;
	line-height:20px;
	color:#3e3e3e;
}
.hdrFb .elementor-share-btn__icon {
    display: flex;
    align-self: stretch;
    justify-content: flex-start;
    align-items: center;
    width: 3em;
}
.hdrFb .elementor-share-btn__title {
    font-weight: 500;
}
.hdrFb .elementor-share-btn_facebook:hover .elementor-share-btn__icon i {
	color:#21fc35!important;
}
.hdrFb .elementor-share-btn_facebook:hover .elementor-share-btn__title {
    color:#21fc35!important;
}
.hdrPhone p > a {
	font-size:16px;
	font-weight:700;
	color:#3e3e3e!important;
}
.hdrPhone p > a:hover {
	font-size:16px;
	font-weight:700;
	color:#21fc35!important;
}
.hoursText {}
.hoursText h5 { 
	margin:0 0 10px 0;
	font-size: 16px;
    line-height: 16px;
	font-weight:700;
    color: #fff;
	text-transform: uppercase;
}
.hoursText h6 {
	margin:10px 0 0 0;
	font-size: 16px;
    line-height: 16px;
	font-weight:400;
    color: #21fc35;
}
.footerNav {}
.footerNav h5 {
	position: relative;	
	margin: 0 0 5px 0;	
	padding: 0 0 15px 0;
}
.footerNav h5:after {
	content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 8px;
    height: 8px;
    display: inline-block;
    background-color: #00FF00;
    border-radius: 50px;
}
.footerNav h5:before {
	content:'';
	position: absolute;	
	bottom:0;
	left:0;
    width: 50px;
	height:2px;
	display:inline-block;
	background-color:#00FF00;
}
.footerNav ul li.menu-item a, .footerNav ul li.current-menu-item a {
    padding: 0;
    margin: 0 0 18px 0;
	font-size: 16px;
    font-weight: 400!important;
	color:#ffffff!important;
}
.footerNav ul li.menu-item a:hover, .footerNav ul li.current-menu-item a:hover {
    padding: 0;
    margin: 0 0 18px 0;
	font-size: 16px;
    font-weight: 400!important;
	color:#22FC36!important;
}
.footerNav .hoursText h5 {
	padding: 0 0 0px 0;
}
.footerNav .hoursText h5:before, .footerNav .hoursText h5:after {
	display:none;
}
.footerNav .hoursText a {
	font-size: 16px;
    font-weight: 400;
	color:#ffffff!important;
}
.footerNav .hoursText a:hover {
	font-size: 16px;
    font-weight: 400;
	color:#22FC36!important;
}
.ftrCopyright {
	font-size: 16px;
    font-weight: 400;
	color:#ffffff;
}
.ftrCopyright a {
	font-size: 16px;
    font-weight: 400;
	color:#ffffff!important;
}
.ftrCopyright a:hover {
	font-size: 16px;
    font-weight: 400;
	color:#22FC36!important;
}
.ftrFacebook {}
.fa-facebook:before {
    content: "\F20C"!important;
	font: normal normal normal 24px/1 "Material Design Icons"!important;
}
.ftrFacebook .elementor-share-btn_facebook {
	display: flex;
    flex-direction: row-reverse;
}
.ftrFacebook .elementor-share-btn__icon {
	border: 1px solid #fff;
    margin-left: 1px!important;
    margin-right: 10px;
}
.ftrFacebook .elementor-share-btn_facebook:hover .elementor-share-btn__icon {
	border: 1px solid #22FC36;
    margin-left: 1px!important;
    margin-right: 10px;
}

/* contact form 7 */
.wpcf7-form-control-wrap { display: block; }
body .wpcf7 form .wpcf7-response-output { float: left; width: 100%; padding: 10px; margin: 0 0 0 0; box-sizing: border-box; }
body span.wpcf7-not-valid-tip { position: absolute; top: 5px; right: 10px; font-size: 12px; white-space: nowrap; }
body .wpcf7-not-valid {	border-color: #f00 !important; }


.contact-form {
	width: 70%!important;
    margin: 0 auto;
}
.contact-form p {
    margin: 0 0 0px 0;
    font-size: 18px;
    color: #fff;
    font-weight: 400;
    line-height: 28px;
    text-align: center;
}
.contact-form .form-group {
	position: relative;
	float: left;
	width: 48%;
    margin: 10px 1% 30px 1%;
}
.contact-form .form-group .form-control {
	display: inline-block;
    width: 100%;
    height: 55px;
    padding: 0px 35px;
    outline: 0;
    background-color: transparent;
    border: 1px solid #ababab;
    box-shadow: 5px 5px 0px 3px rgb(0 0 0 / 9%);
    border-radius: 30px;
    font-size: 18px;
    color: #4a4a4a;
    font-weight: 400;
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.contact-form .form-group .form-control::placeholder {
	color: #b3b3b3;
}
.contact-form .wth-100 {
	position: relative;
	float: left;
	width: 98%;
    margin: 10px 1% 30px 1%;
}
.contact-form .form-group textarea.form-control {
	resize: none;
	height: auto;
	padding: 15px 40px;
}
.contact-form .form-group .submitBtn {
	display: inline-block;
    width: 30%;
    padding: 15px 25px;
    background: #2e2e2e!important;
    border: 0px solid #2e2e2e!important;
    box-shadow: 5px 5px 0px 3px rgb(0 0 0 / 9%);
    border-radius: 30px;
    font-size: 16px;
    color: #ffffff;
    font-weight: 600;
    text-transform: capitalize;
    text-decoration: none;
    transition: all .3s ease-in-out;
}
.contact-form .form-group .submitBtn:hover {
	background: #22fc36!important;
	color: #2e2e2e!important;
}
.site .button:focus, button:focus, input[type=submit]:focus, input[type=reset]:focus, .wp-block-search .wp-block-search__button:focus, .wp-block-button .wp-block-button__link:focus, .wp-block-file a.wp-block-file__button:focus {
    outline: 0px dotted currentColor;
}
.adrbox > .elementor-widget-wrap {
    position: relative;
    float: left;
    width: 100%;
    height: 100%;
    margin: 10px 10px 10px 10px!important;
    padding: 8px!important;
    background: #FFFFFF;
    border-radius: 30px;
    border: 1px solid #ababab;
    text-align: center;
}
.adrbox .elementor-icon {
	padding: 25px;
    background: #2e2e2e;
    border-radius: 100px;
    position: relative;
    margin-top: -45px;
}
.adrbox .elementor-icon i {
	font-size: 22px;
    color: #fff;
}

.reviewContent p {
	min-height: 310px;
}
.projectList {}
.projectList .elementor-post__thumbnail img {
	width:100%!important;
	height:100%!important;
}
.projectList .elementor-post__text h3.elementor-post__title {
	padding-top:15px;
	border-top:1px solid #000;
}
.projectList .elementor-post__text h3.elementor-post__title a {
	font-size: 18px;
    line-height: 28px;
    font-weight: 400;
	color:#565656;
}
.project_detail {
	width:80%;
	margin: 50px auto;
}
.project_detail .thumb {
	width:100%;
	display:inline-block;
	margin: 0 0 30px 0;
}
.project_detail .content {
	width:100%;
	display:inline-block;
}
.project_detail .content h2 {
	margin: 0 0 20px 0;
    font-size: 34px;
    line-height: 44px;
    font-weight: 700;
    color: #2E2E2E;
	text-transform:uppercase;
    text-align: center;
}
.project_detail .content p {
	margin: 0 0 20px 0;
    font-size: 18px;
    line-height: 28px;
    color: #565656;
    font-weight: 400;
    text-align: center;
}