body {
	background-color: var(--body-color);
	font-family: var(--font-default);
	color: var(--text-color);
	overflow-x: hidden;
}

.over-hidden {
	overflow: hidden;
}

a {
	text-decoration: none;
	color: var(--extra-color-3);
}

a:hover {
	color: var(--extra-color-3);
}

button {
	font-family: var(--font-btn);
	border: 0;
}

figure {
	margin-bottom: 0;
}

.primary-btn {
}

.secondary-btn {
}

/* Universal Css End Here */

/* preloader */
/* Universal Css Start Here */

#preloader {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999999999;
	overflow: hidden;
	background: #fff;
}
/* .ajax-loader {
	position: absolute;
	top: 35%;
	left: 60%;
	transform-origin: 50% 50%;
	transform: rotate(90deg) translate(-50%, 0%);
	font-size: 50px;
	width: 1em;
	height: 3em;
	color: #d31145;
} */
/*  */
main {
	display: flex;
	padding: 1.5em;
	gap: 3em;
	flex-wrap: wrap;
	justify-content: center;
	margin: auto;
	height: 100%;
	align-items: center;
}
.pl1,
.pl2,
.pl3 {
	display: block;
	width: 8em;
	height: 8em;
}
.pl1__g,
.pl1__rect,
.pl2__rect,
.pl2__rect-g,
.pl3__rect {
	animation: pl1-a 1.5s cubic-bezier(0.65, 0, 0.35, 1) infinite;
}
.pl1__g {
	transform-origin: 64px 64px;
}

.pl2__rect,
.pl2__rect-g {
	animation-name: pl2-a;
}
.pl2__rect {
	animation-name: pl2-b;
}
.pl2__rect-g .pl2__rect {
	transform-origin: 20px 128px;
	fill: #dd2200;
}
.pl2__rect-g:first-child,
.pl2__rect-g:first-child .pl2__rect {
	animation-delay: -0.25s;
}
.pl2__rect-g:nth-child(2),
.pl2__rect-g:nth-child(2) .pl2__rect {
	animation-delay: -0.125s;
}
.pl2__rect-g:nth-child(2) .pl2__rect {
	transform-origin: 64px 128px;
}
.pl2__rect-g:nth-child(3) .pl2__rect {
	transform-origin: 108px 128px;
}

/* Dark theme */
@media (prefers-color-scheme: dark) {
	:root {
		--bg: hsl(var(--hue), 90%, 10%);
		--fg: hsl(var(--hue), 90%, 90%);
	}
}

/* Animations */
@keyframes pl2-a {
	from,
	25%,
	66.67%,
	to {
		transform: translateY(0);
	}
	50% {
		animation-timing-function: cubic-bezier(0.33, 0, 0.67, 0);
		transform: translateY(-80px);
	}
}
@keyframes pl2-b {
	from,
	to {
		animation-timing-function: cubic-bezier(0.33, 0, 0.67, 0);
		width: 40px;
		height: 24px;
		transform: rotate(180deg) translateX(0);
	}
	33.33% {
		animation-timing-function: cubic-bezier(0.33, 1, 0.67, 1);
		width: 20px;
		height: 64px;
		transform: rotate(180deg) translateX(10px);
	}
	66.67% {
		animation-timing-function: cubic-bezier(0.33, 1, 0.67, 1);
		width: 28px;
		height: 44px;
		transform: rotate(180deg) translateX(6px);
	}
}

/* Typography Start Here */
.larger-heading {
	font-family: var(--font-montserrat-bold);
	font-size: 53px;
	line-height: 63px;
}

.deafult-heading {
	font-family: var(--font-heading);
	font-size: 40px;
	line-height: 50px;
}

.paragraph-family {
	font-family: var(--font-paragraph);
	font-size: 15px;
	line-height: 25px;
}

/* Typography End Here */
/* button css start here*/
.main_btn .btn {
	width: 134px;
	height: 40px;
	margin: 0.5em;
	background: #dd2200;
	color: white;
	font-family: var(--font-heading);
	border: 1px solid #dd2200;
	text-transform: capitalize;
	display: flex;
	justify-content: space-between;
	font-size: 15px;
	align-items: center;
	cursor: pointer;
	padding: 7px 8px;
	position: relative;
	z-index: 1;
	overflow: hidden;
	border-radius: 9px;
}
.main_btn span {
	padding: 4px 9px;
	background: white;
	color: #dd21ff;
	border-radius: 6px;
}

.main_btn .btn:hover {
	color: #dd2200;
}

.main_btn .btn:after {
	content: "";
	background: white;
	position: absolute;
	z-index: -1;
	left: -20%;
	right: -20%;
	top: 0;
	bottom: 0;
	transform: skewX(-45deg) scale(0, 1);
	transition: all 0.5s;
}

.main_btn .btn:hover:after {
	transform: skewX(-45deg) scale(1, 1);
	-webkit-transition: all 0.5s;
	transition: all 0.5s;
}
@media (max-width: 880px) {
	.main_btn .btn {
		width: 108px;
		height: 36px;
		font-size: 10px;
	}
}
/* button css  end here */

/* Header Css Start Here */
.web_navbar a {
	font-family: var(--font-default);
	color: #000000;
	font-size: 15px;
	text-transform: capitalize;
}

.web_navbar.px-4 {
	background: white;
	border-radius: 12px;
}

header.header-top {
	position: absolute;
	top: 10px;
	width: 100%;
	z-index: 2;
}
header.header-top a:hover {
	color: #dd2200;
}
header.header-top a.nav-link.active {
	color: #dd2200;
}
.web_navbar .nav-item.dropdown .btn {
	font-family: var(--font-default);
	color: #000000;
	font-size: 15px;
}
.web_navbar .nav-item.dropdown .btn-check:focus + .btn,
.btn:focus {
	outline: 0;
	box-shadow: none;
}
.web_navbar .nav-item.dropdown .btn:hover {
	color: #dd2200;
}
.web_navbar .nav-link:focus,
.nav-link:hover {
	color: #dd2200;
}
.web_navbar .nav-item.dropdown .dropdown-menu {
	background-color: #ffffff;
}
.web_navbar .nav-item.dropdown .dropdown-menu .dropdown-item {
	color: #000000;
}
.dropdown:hover .dropdown-menu {
	display: block;
	margin-top: 0; /* remove the gap so it doesn't close */
}
/* phone header  start here*/
.phone_header .reponsive_nav.showheader {
	transform: translateX(0%) !important;
}
.phone_header .reponsive_nav {
	width: 100%;
	height: 100%;
	position: fixed;
	background: black;
	top: 0;
	z-index: 9;
	right: 0px;
	overflow-y: scroll;
	padding: 2px 4px;
	transition: 0.7s;
	transform: translateX(100%) !important;
	box-shadow: 0px 0px 7px #ddd;
}
.cancel {
	text-align: right;
}
.cancel svg {
	width: 40px;
	height: 40px;
	fill: white;
}

.nav_Wrapper {
	display: flex;
	justify-content: space-between;
	width: 100%;
	background: #0000003d;
	gap: 20px;
	align-items: center;
}

.icons .fa {
	color: #dd2200;
	font-size: 21px;
}

.logo_img img {
	width: 81px;
}

.icons {
	position: absolute;
	color: red;
	top: 0;
	z-index: 3;
	right: 27px;
	top: 26px;
}

.web_logo img {
	width: 118px;
}

.reponsive_nav.showheader a {
	color: #ffffff;
	font-size: 13px;
}

.reponsive_nav.showheader li {
	text-align: left;
	padding: 10px 0;
}

.canvas-icon {
	display: none;
}
.web_navbar .nav-item.dropdown .dropdown-menu a.dropdown-item.active {
    background-color:#dd2200;
    color: white;
}
.reponsive_nav.web_navbar ul {
	list-style: none;
	padding-left: 0;
}
@media (max-width: 990px) {
	.web_nav {
		display: none !important;
	}
	.phone_header {
		display: block !important;
	}
	.web_navbar .nav-item.dropdown .btn {
		color: #ffffff;
	}
	.canvas-icon {
		display: block;
	}

	button.navbar-toggler {
		display: none;
	}
}

@media (max-width: 880px) {
	.web_navbar a {
		font-size: 10px;
	}
}
/* Header Css end Here */

/* banner-section start here */
.main_banner {
	position: relative;
	z-index: 1;
	top: 0;
	height: 100%;
}
.banner-section {
	/* background-image: url(../img/main_banner.png); */
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: center;
	position: relative;
	z-index: 1;
	height: 778px;
	width: 100%;
}
.main_banner img {
	height: 100%;
	width: 100%;
}
.banner-text {
	position: absolute;
	bottom: 13%;
	z-index: 2;
}
.banner-section .main_heading h5,
.banner-section .main_heading p,
.banner-section .main_heading h2,
.banner-section .main_heading h3 {
	color: #ffffff;
}
.main_heading h5 {
	font-family: var(--font-Tahoma-Regular);
	color: #000000;
	text-transform: uppercase;
}

.main_heading h2 {
	font-family: var(--font-tahomabd);
	color: #000000;
	font-size: 34px;
	text-transform: capitalize;
}

.banner-text p {
	font-family: var(--font-GeneralSans-Medium);
	color: #ffffff;
}
.main_heading h2 span {
	background: #dd2200;
	border-radius: 9px;
	padding: 0 5px;
	color: #ffffff;
}

.banner_project_info h3 {
	font-family: var(--font-tahomabd);
	color: #ffffff;
	font-size: 31px;
}
.slide-arrow img {
	width: 100px;
}
@media (max-width: 880px) {
	.banner-section {
		height: 657px;
		width: 100%;
	}
	.banner-text {
		bottom: 16%;
	}
	.main_banner img {
		height: 100%;
	}

	.banner_info {
		display: flex;
		justify-content: space-evenly;
		text-align: center;
		flex-wrap: wrap;
	}

	.slide {
		text-align: center;
		padding-bottom: 20px;
	}

	.slide img {
		width: 92px;
	}
	.main_heading {
		text-align: center;
		padding-top: 20px;
	}
	.main_heading h2 {
		font-size: 39px;
	}
}
/* banner-section end here */

/* about-sec start here */
section.about-sec {
	padding: 55px 0;
	position: relative;
}

.vision_info button {
	padding-left: 0;
	font-family: var(--font-heading);
	color: #000000;
	text-transform: capitalize;
	font-size: 20px;
}

.vision_info .accordion-button:not(.collapsed) {
	color: #000000;
	background: transparent;
	box-shadow: none;
}

.vision_info .accordion-item {
	border: 0;
	border-color: #000000 !important;
	padding-left: 0;
}

.vision_info .accordion-button:not(.collapsed)::after {
	background-image: unset;
	content: "\f107";
	font-family: "FontAwesome";
	font-size: 29px;
	transform: none;
}

.vision_info p {
	font-family: var(--font-default);
	color: #1a222b;
}

.vision_info .accordion-body {
	padding-left: 0;
	padding: 0;
}

.vision_info .accordion-button:focus {
	border-color: transparent !important;
	border: 0;
	box-shadow: none;
}
.mission_img img {
	border-radius: 25px;
}
@media (max-width: 680px) {
	.right_side_icon img {
		display: none;
	}
}
/* about-sec end here */

/*choose_us sec start  here  */

section.choose_us {
	background-color: #efefef;
	padding: 66px 0;
}
.about_information h3 {
	font-family: var(--font-heading);
	font-size: 19px;
}

.about_information p {
	font-family: var(--font-default);
	color: #1a222b;
	font-size: 14px;
}

.info_img {
	background-color: #ebbcb3;
	width: 100%;
	justify-content: center;
	display: flex;
	align-items: center;
	height: 78px;
	border-radius: 16px;
}

.info_img img {
	width: 38px;
}
@media (max-width: 680px) {
	.info_img_wrapper {
		display: flex;
		justify-content: center;
		padding-bottom: 19px;
	}

	.info_img {
		width: 100px;
	}
}
/*choose_us sec end here  */

/*service sec start here  */
section.service-sec {
	position: relative;
	padding: 80px 0;
}
.service_img img {
	border-radius: 25px;
}
.services_tabs .nav-tabs .nav-link {
	border: 0;
	color: #1e1e1ead;
	font-family: var(--font-heading);
	position: relative;
	padding-left: 6px;
	text-transform: capitalize;
}
.services_tabs .nav-tabs {
	border-bottom: 1px solid #b0b3b3;
}

.services_tabs .nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
	/* border-bottom: 4px solid ; */
	color: #dd2200;
}
.services_tabs .nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active::after {
	content: "";
	position: absolute;
	bottom: -1px;
	width: 100%;
	left: 0;
	height: 4px;
	background: #dd2200;
	border-radius: 5px;
}
.service_tab_wrapper {
	padding-top: 30px;
}
.services_tabs {
	position: relative;
	z-index: 10;
}

.service_tab_wrapper h3 {
	font-family: var(--font-tahomabd);
	font-size: 25px;
}

.service_list li {
	font-family: var(--font-default);
	color: #1a222b;
	text-transform: capitalize;
	font-size: 14px;
	list-style: none;
	margin: 9px;
}

.service_list ul {
	padding-left: 14px;
	position: relative;
}

.service_list ul li:before {
	content: "\f00c";
	position: absolute;
	font-family: "FontAwesome";
	left: -7px;
	font-size: 12px;
	/* top: 2px; */
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #dd2200;
	border-radius: 20px;
	width: 19px;
	height: 19px;
	color: #ffffff;
}

.service_list {
	padding-top: 10px;
}

.service_right_img {
	position: absolute;
	top: 0;
	right: -13px;
	z-index: 1;
}
@media (max-width: 880px) {
	.services_tabs {
		padding: 40px;
	}
	section.service-sec {
		padding: 0;
	}
	.review_slider h2 {
		font-size: 44px;
	}
	.main_heading.tab_heading {
		text-align: left;
	}
}
/*service sec end here  */

/*gallery-sec start here  */
section.gallery-sec {
	padding: 50px 0;
}
/* gallery-sec end here */

/* review-sec start here*/
section.review-sec {
	padding: 50px 0;
}
.slider_content h4 {
	font-family: var(--font-heading);
	font-size: 25px;
	margin-bottom: 0;
}
.slider_content .slick-prev {
	background: #dd2200;
	top: 249px;
	left: -104%;
	width: 30px;
	height: 32px;
}

.review_slider {
	position: relative;
}
/* 
.slider_content .slick-next{
     top: 249px;
     left: -96%;
     width: 30px;
       height: 32px;
     background-color: #C7C7C7;
  
}
.slider_content .slick-prev::before {
    content: "\f104";
    font-family: 'FontAwesome';
}
.slider_content .slick-next::before {
    content: "\f105";
    font-family: 'FontAwesome';
     color:black !important;
} */
.testimonial_slider .carousel-indicators {
	/* top: 0; */
	/* left: 0; */
	margin-left: 0;
	gap: 9px;
	position: relative;
	justify-content: start;
}

.testimonial_slider {
	position: relative;
}

.testimonial_slider .carousel-indicators [data-bs-target] {
	text-indent: unset;
	transition: unset;
	width: 53px;
	opacity: 3;
	margin-top: 20px;
}

.testimonial_slider .carousel-indicators .active .slide_imgbox img {
	width: 100%;
	height: 100%;
	border-radius: 10px;
}

.slide_imgbox img {
	width: 100%;
	height: 50px;
}

.testimonial_slider .carousel-indicators .active {
	width: 77px;
	height: 67px;
	margin-top: 0;
}
.testimonial_slider .carousel-control-prev {
	height: 37px;
	bottom: 76px;
	left: -147%;
	top: unset;
	width: 37px;
	padding: 10px;
	font-size: 9px;
	opacity: 2;
	border-radius: 6px;
	background-color: #dd2200;
}
.testimonial_slider .carousel-control-next {
	height: 37px;
	bottom: 76px;
	left: -134%;
	top: unset;
	color: #1a222b;
	width: 37px;
	padding: 10px;
	font-size: 13px;
	border-radius: 6px;
	opacity: 2;
	background: #c7c7c7;
}

.review_slider .main_heading {
	text-align: left;
	padding-top: 10px;
}

.testimonial_slider .main_heading h4 {
	font-family: var(--font-heading);
	margin: 0;
}
/* .testimonial_slider .carousel-item {
    margin-top: 50px;
} */
@media (max-width: 880px) {
	.review_slider h2 {
		font-size: 44px;
	}
	.slider_content .slick-prev {
		top: 222px;
		left: 44%;
	}
	.slider_content .slick-next {
		top: 222px;
		left: 51%;
	}
}
/* review-sec end here*/

/*estimate-sec start here  */
section.estimate-sec {
	padding-bottom: 85px;
	padding-top: 50px;
}
.estimate_foam .form-control {
    border: 0;
    background-color: #EFEFEF;
}
.estimate_foam .form-control::placeholder {
	color: #00000091;
	font-family: var(--font-default);
	font-size: 12px;
}

.estimate_foam .form-select {
      background-color: #EFEFEF;
     color: #00000091;
    font-family: var(--font-default);
    font-size: 12px;
    padding:10px;
    border: 0;
}

textarea#exampleFormControlTextarea2 {
	resize: none;
}

textarea#exampleFormControlTextarea1 {
	resize: none;
}
.estimate_foam .form-control:focus {
	color: #00000091;
	background-color: #efefef;
	outline: 0;
	box-shadow: none;
	border-color: #ced4da;
}
.estimate_foam input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
}


.estimate_foam .form-select:focus, .estimate_foam .form-control:focus {
    border:2px solid #dd2200;
    outline: 0;
    box-shadow: none;
}
/* estimate-sec end here  */
.construction-sec .main_heading.tab_heading p {
    color: #1A222B;
    font-family: var(--font-default);
    font-size: 15px;
    margin: 0;
}

.construction-sec {
    padding: 60px 0;
}
.construction-sec .main_heading h2 {
    font-size: 37px;
}
.client_review_del_wrapper p {
    margin: 0;
}

.client_review_del_wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.client_review_del_wrapper .fa {
    color: #EEBA00;
    margin: 0 3px;
}


/* footer start here  */
.footer-top li {
	list-style: none;
}

.footer-top ul {
	padding-left: 0;
}

.footer-top a,
.page-more-info span,
footer p {
	color: #ffffff;
	font-family: var(--font-default);
	text-transform: capitalize;
	font-size: 14px;
}

footer {
	background-color: var(--footer-bg);
	padding-top: 40px;
	border-top-left-radius: 29px;
	border-top-right-radius: 27px;
}
.footer-top .page-more-info span {
	margin-right: 10px;
}

.footer-top h3,
.footer-top h4 {
	font-family: var(--font-heading);
	color: #ffffff;
}

.footer-top h4 {
	font-size: 20px;
}

.footer-social {
	display: flex;
}

.icon_img {
	background: #c62305;
	/* padding: 7px; */
	border-radius: 8px;
	align-items: center;
	display: flex;
	width: 39px;
	height: 37px;
	justify-content: center;
}
.footer_heading h3 {
	font-size: 35px;
	text-transform: capitalize;
}
.footer_contact_btn {
	float: right;
}
footer hr {
	background-color: #ffffff;
}
@media (max-width: 880px) {
	.footer_heading h3 {
		font-size: 32px;
		text-transform: capitalize;
	}
}
/* footer end here  */
/* all page banner css start here */
section.banner {
    position: relative;
}
/* .top_banner_img {
    position: relative;
} */

.banner_text_wrapper {
    position: absolute;
    top: 52%;
    width: 100%;
    text-align: center;
}

.banner_text_wrapper h2 {
	color: #ffffff;
}
/* all page banner css end here */
@media (max-width: 600px) {
	.main_heading h2 {
		font-size: 23px;
	}
	.main_heading h5 {
		font-size: 15px;
	}
	.review_slider h2 {
		font-size: 22px;
	}
	.services_tabs {
		padding: 40px 10px;
	}
	.services_tabs .nav-tabs .nav-link {
		font-size: 9px;
		padding: 10px 0;
	}
	.services_tabs .nav-tabs li.nav-item {
		width: 25%;
	}
	section.gallery-sec {
		padding: 0px 0;
	}
	.banner-section {
		height: 718px;
		width: 100%;
		overflow-x: hidden;
	}
	.banner-text {
		bottom: 0;
	}
	.phone_header .main_btn {
	
		justify-content: left;

	}
	.main_btn {
		display: flex;
		justify-content: center;
		padding-bottom: 20px;
	}
	.about_information {
		text-align: center;
	}
	.page-more-info {
		text-align: center;
		margin-top: 10px;
	}
	.footer_contact_btn {
		float: unset;
	}
	.footer-top {
		text-align: center;
	}
	.service_right_img {
		/* top: 0;
        right: 0; */
		display: none;
	}
	.footer-social {
		justify-content: center;
	}
	.top_banner_img img {
		height: 190px;
	}
	.footer_heading h3 {
		font-size: 22px;
	}
	.main_btn .btn {
		width: 146px;
	}
	.testimonial_slider .carousel-control-prev {
		left: 77%;
		top: -147px;
	}
	
	.testimonial_slider .carousel-control-next {
		right: 0;
		left:unset;
		top: -146px;
	}
	/* .banner_project_info {
		text-align: center;
	} */
	
	.banner_project_info h3 {
		font-size: 23px;
	}
	
	.banner-text p {
		font-size: 13px;
	}
	.gallery-sec .gallery_wrapper .gallery_img img {
		width: 100%;
		height: 183px;
		object-fit: cover;
		margin-bottom: 10px;
	}	
	.gallery_slider_wrapper .gallery_slider_img img {
		height: 289px !important;
		object-fit: fill;
	}

}
@media (max-width: 350px) {
	.testimonial_slider .carousel-control-prev {
		left: 70%;
		top: -174px;
	}
	.testimonial_slider .carousel-control-next {
		top: -174px;
	}
}
.header-top .dropdown:hover > .dropdown-menu {
	display: block;
}

.header-top .dropdown > .dropdown-toggle:active {
	/*Without this, clicking will make it sticky*/
	pointer-events: none;
}
.gallery-sec .gallery_wrapper .gallery_img img {
    width: 100%;
    height: 183px;
    object-fit: cover;
}

.phone_header .accordion-item {
    background-color: transparent;
    width: 100%;
}

header.phone_header .accordion {
    padding: 0 20px 0 14px;
}

.phone_header .accordion .accordion-item .accordion-header .accordion-button{
    background: transparent;
    padding: 14px 0;
    font-family: var(--font-default);
    color: #ffffff;
    font-size: 13px;
}
.phone_header .accordion .accordion-item .accordion-header .accordion-button::after{
    background-image: unset;
    content: "\f0d7";
    font-family: 'FontAwesome';
    margin-left: 9px;
    height: 15px;
}
.phone_header .accordion .accordion-item .accordion-header .accordion-button:not(.collapsed)::after{
      background-image: unset;
      content: "\f0d8";
      font-family: 'FontAwesome';
      transform: none;
}

.phone_header .accordion .accordion-item  .accordion-body{
    background-color: transparent;
    /* color: black; */
	padding: 1rem 0;
}
.phone_header .accordion .accordion-item  .accordion-body ul li a {
    color: white;
    padding: 0;
}
.phone_header .accordion .accordion-item .accordion-button:focus{
    border-color: transparent;
    box-shadow: none;
}
.phone_header .accordion .accordion-item .accordion-body ul li {
    padding: 4px 0;
}