/* 
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
*/

/* -------------------------Header starts--------------------------- */

.social-icn .elementor-grid-item::before {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	background: #fff;
	right: -13px;
}

.social-icn .elementor-grid-item {
	position: relative;
}

.social-icn .elementor-grid-item:last-child::before {
	display: none;
}

.bttn-icon .elementor-button-icon {
	font-size: 50px;
	transition: 0.3s ease all;
}

.bttn-icon .elementor-button-content-wrapper {
	align-items: center;
}

.bttn-icon a:hover .elementor-button-icon {
	transform: rotate(45deg);
}


.hdr-menu .elementor-nav-menu--dropdown {
	padding: 7px !important;
}
.hdr-menu .elementor-sub-item{
	border-bottom: 1px solid #00000008;
}
.hdr-menu .sub-menu li:last-child > .elementor-sub-item {
  border-bottom: none;
}

.hdr-menu .elementor-sub-item.elementor-item-active {
	border-radius: 10px;
}
.hdr-menu .elementor-sub-item:hover{
	border-radius: 10px;
}
/* -------------------------Footer starts--------------------------- */

.contact-form #gform_submit_button_1 {
	background-color: #D3242B;
	width: 50px;
	height: 50px;
	padding: 0;
	border-radius: 50px;
	position: absolute;
	top: 5px;
	right: 5px;
	transition: 0.3s ease all;
}

.contact-form #gform_submit_button_1:hover {
	background-color: #272727;
}

.contact-form .gfield .ginput_container input[type="email"] {
	text-transform: lowercase;
}

.contact-form .gfield .ginput_container input[type="email"]::placeholder {
	text-transform: capitalize;
}




.contact-form .gform_validation_errors,
.request-form .gform_validation_errors {
	display: none !important;
}

/* 
.contact-form .validation_message {
	position: absolute;
	margin: 0 !important;
} */

.contact-form .gfield .ginput_container input {
	border: 0;
	box-shadow: none;
	background: transparent;
	outline: none;
	font-family: 'Poppins', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 15px;
	line-height: 22px;
	text-transform: capitalize;
	color: #545454;
	padding: 18px 60px 18px 53px;
	height: 60px;
	background: #FFFFFF;
	border-radius: 32.1331px;
}

.contact-form .gform-footer.gform_footer.top_label {
	margin: 0;
}

.contact-form .gform-theme--api,
.gform-theme--framework {
	position: relative;
	/* Required for absolute positioning */
}

.contact-form .gform-theme--framework .gform-loader {
	position: absolute !important;
	right: -30px;
	top: 0;
}

.contact-form #input_1_1 {
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='14' viewBox='0 0 20 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.1611 0H1.75C0.787033 0 0 0.783572 0 1.75V12.25C0 13.2168 0.787539 14 1.75 14H18.1611C19.1241 14 19.9111 13.2164 19.9111 12.25V1.75C19.9111 0.783339 19.1237 0 18.1611 0ZM17.8924 1.16667L10.4076 8.67588C10.1796 8.90462 9.73167 8.90478 9.50351 8.67588L2.01872 1.16667H17.8924ZM1.16667 12.0355V1.96447L6.18586 7L1.16667 12.0355ZM2.01872 12.8333L7.00949 7.82631L8.67724 9.49951C9.36067 10.1852 10.5507 10.1849 11.2339 9.49951L12.9017 7.82635L17.8924 12.8333H2.01872ZM18.7444 12.0355L13.7253 7L18.7444 1.96447V12.0355Z' fill='%23545454'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat no-repeat;
	background-position-x: 24px;
	background-position-y: 50%;
	z-index: 5;
}

/* -------------------------Homepage starts--------------------------- */
.logo-slider .swiper-slide-inner {
	border: 1px solid #E7E7E7;
	filter: drop-shadow(0px 4px 40px rgba(0, 0, 0, 0.08));
	border-radius: 15px;
	background: #fff;
	height: 109px !important;
	align-items: center;
	justify-content: center;
	display: flex;
	opacity: 0.7;
}

.logo-slider .swiper {
	overflow: visible !important;
}

.logo-slider .swiper-slide:hover {
	background: #FFFFFF;
	box-shadow: 0px 4px 40px rgba(0, 0, 0, 0.08);
	border-radius: 15px;
	opacity: 1;
}

.logo-slider .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	-moz-transition-timing-function: linear !important;
	-o-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}
#service-loop .elementor-loop-container.elementor-grid {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center; /* center items horizontally */
    gap: 30px; /* space between cards */
}

/* Each card width (3 per row) */
#service-loop .elementor-loop-container.elementor-grid > .e-loop-item {
    width: calc(33.333% - 20px);
}
.serviceCard:hover .serv-icn img {
	filter: brightness(0) saturate(100%) invert(16%) sepia(61%) saturate(4598%) hue-rotate(345deg) brightness(102%) contrast(93%);

}

.serv-icn {
	position: relative;
}

.serv-icn::before {
	content: "";
	position: absolute;
	height: 98px;
	width: 98px;
	background-color: #D3242B;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
	outline: 11px solid rgba(211, 36, 43, 0.25);
	z-index: 1;
}

.serv-icn img {
	position: relative;
	z-index: 2;

}

.serviceCard:hover .serv-icn::before {
	background-color: #fff;
	outline: 11px solid rgba(255, 255, 255, 0.2);
}

.choose-card:hover .elementor-icon svg path {
	fill: #D3242B;
}

.choose-card .elementor-icon svg path {
	transition: 0.3s ease all;
}

.choose-card .elementor-icon {
	outline: 10px solid #D3242B40;
	transition: 0.3s ease all;
}

.choose-card:hover .elementor-icon {
	outline: 10px solid #ffffff30;
}

.choose-cntn .elementor-icon-box-title {
	margin: 0;
}

.choose-cntn .elementor-icon-box-description {
	margin-left: -39px !important;
	margin-top: 12px !important;
}

.choose-cntn .elementor-icon-box-icon {
	margin-top: 3px;
}

.img-box-tiles .elementor-image-box-description {
	width: 86%;
}

.video-sec .elementor-custom-embed-play {
	position: relative;
}

.video-sec .elementor-custom-embed-play::before {
	content: "";
	position: absolute;
	width: 117.25px;
	height: 117.93px;
	background-color: #fff;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	top: 50%;
	left: 50%;
}

.video-sec .elementor-custom-embed-play {
	width: 100px;
	height: 100px;
	background: #fff;
	border-radius: 50%;
	line-height: 115px;
	animation: animate-pulse 3s linear infinite;
	cursor: pointer
}

@keyframes animate-pulse {
	0% {
		box-shadow:
			0 0 0 0 rgba(255, 255, 255, 0.7),
			0 0 0 0 rgba(255, 255, 255, 0.7);
	}

	40% {
		box-shadow:
			0 0 0 50px rgba(255, 255, 255, 0),
			0 0 0 0 rgba(255, 255, 255, 0.7);
	}

	80% {
		box-shadow:
			0 0 0 50px rgba(255, 255, 255, 0),
			0 0 0 30px rgba(255, 255, 255, 0);
	}

	100% {
		box-shadow:
			0 0 0 0 rgba(255, 255, 255, 0),
			0 0 0 30px rgba(255, 255, 255, 0);
	}
}


.testimonial-slider,
.testimonial-slider .swiper,
.testimonial-slider .swiper-wrapper {
	overflow: visible !important;
}



.testimonial-slider .swiper-slide {
	opacity: 0;
	overflow: visible;
	pointer-events: none;
	transition: opacity 0.3s ease;
}


.testimonial-slider .swiper-slide-active,
.testimonial-slider .swiper-slide-next,
.testimonial-slider .swiper-slide-next+.swiper-slide {
	opacity: 1;
	pointer-events: auto;
}

.testimonial-slider .swiper-slide-duplicate.swiper-slide-active,
.testimonial-slider .swiper-slide-duplicate.swiper-slide-next,
.testimonial-slider .swiper-slide-next+.swiper-slide {
	opacity: 1;
}

.testimonial-slider .elementor-swiper-button circle,
.testimonial-slider .elementor-swiper-button path {
	transition: 0.3s ease all;
}

.testimonial-slider .elementor-swiper-button:hover circle {
	stroke: red;
}

.testimonial-slider .elementor-swiper-button:hover path {
	fill: #fff;
}

.map-list .elementor-icon-list-item {
	background: #FFFFFF;
	border: 1px solid #EEEEEE;
	border-radius: 9px;
	height: 50px;
	padding: 15px !important;
}

.map-list {
	height: 612px;
	overflow-y: scroll;
	padding-right: 18px;
}

.map-list::-webkit-scrollbar {
	width: 8px;
}

.map-list::-webkit-scrollbar-track {
	background: #FAF6F2;
	border-radius: 10px;
}

.map-list::-webkit-scrollbar-thumb {
	background: #D3242B;
	/* red */
	border-radius: 10px;
}

.map-list::-webkit-scrollbar-thumb:hover {
	background: #B51F25;
	/* darker red on hover */
}

.map-list {
	scrollbar-width: thin;
	scrollbar-color: #D3242B #FAF6F2;
}




/* -------------------------About us page starts--------------------------- */

.request-form .gfield .ginput_container input[type="email"] {
	text-transform: lowercase;
}

.request-form .gfield .ginput_container input[type="email"]::placeholder {
	text-transform: capitalize;
}

.request-form .gfield .ginput_container input,
.request-form .gfield .ginput_container textarea,
.request-form .gfield .ginput_container select {
	background: #FBEAEA50;
	border-radius: 50px;
	height: 58px;
	padding: 15px 20px;
	outline: none;
	border: 0;
	box-shadow: none;
	font-family: 'Poppins';
	font-style: normal;
	font-weight: 400;
	font-size: 16px;
	line-height: 27px;
	color: #373737;
}

.request-form .gfield .ginput_container textarea {
	border-radius: 20px !important;
}

.request-form .gform-theme--foundation .gfield textarea.small {
	min-block-size: 115px;
}

.request-form select {
	appearance: none;
	/* Standard */
	-webkit-appearance: none;
	/* Chrome, Safari */
	-moz-appearance: none;
}

.request-form #input_2_5,
#input_3_6 {
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23373737' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat no-repeat;
	background-position: 97% 50%;
	background-size: auto;
	padding-right: 50px;
}

.request-form #gform_submit_button_2,
#gform_submit_button_3 {
	background: #D3242B;
	border-radius: 50px;
	width: 136px;
	height: 62px;
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: var(--e-global-typography-accent-font-weight);
	text-transform: var(--e-global-typography-accent-text-transform);
	line-height: var(--e-global-typography-accent-line-height);
	transition: 0.3s ease all;
}

.request-form .gform-footer.gform_footer.top_label {
	margin-top: 30px;
}

#gform_fields_2,
#gform_fields_3 {
	row-gap: 20px;
	column-gap: 20px;
}

.request-form #gform_submit_button_2:hover,
#gform_submit_button_3:hover {
	background-color: #272727;
}

.gfield_description.instruction.validation_message {
	color: var(--gf-ctrl-desc-color-error)
}

.gform_confirmation_message {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-size: var(--e-global-typography-accent-font-size);
	font-weight: 600;
	text-transform: var(--e-global-typography-accent-text-transform);
	line-height: var(--e-global-typography-accent-line-height);
	color: #D3242B;

}

.cntct-frm .gform-footer.gform_footer.top_label {
	justify-content: center;
}

.cntct-frm .gform-theme--foundation .gfield textarea.small {
	min-block-size: 175px;
}

/* -------------------------Gallery page starts--------------------------- */

.gallery-slide .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	-moz-transition-timing-function: linear !important;
	-o-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}

.gallery-slide .swiper-slide-image {
	height: 386px !important;
	width: 100%;
	object-fit: cover;
	object-position: center center;
}

.bfr-aftr-loop .swiper {
	touch-action: pan-y !important;
	cursor: default !important;
}

.bafg-twentytwenty-container.twentytwenty-container {
	border-radius: 20px;
}

.bfr-aftr-loop .elementor-swiper-button circle,
.bfr-aftr-loop .elementor-swiper-button path {
	transition: 0.3s ease all;
}

.bfr-aftr-loop .elementor-swiper-button:hover circle {
	stroke: red;
}

.bfr-aftr-loop .elementor-swiper-button:hover path {
	fill: #fff;
}



/* -------------------------Blog page search validation--------------------------- */
.e-search-error {
    color: #d63638;
}

.e-search-input.has-error {
    border-color: #d63638 !important;
}
.e-search-form {
    position: relative;
}

.e-search-error {
    position: absolute;
    top: 100%;
    left: 0;
    font-size: 12px;
    color: #e63946;
    white-space: nowrap;
}

/* -------------------------Faq page starts--------------------------- */

.faq-sec .e-n-tabs-heading .e-n-tab-title:last-child {
	border-bottom: none;
	border-radius: 0px 0px 20px 20px;
}
.faq-sec .e-n-tabs-heading .e-n-tab-title:first-child {
	border-radius: 20px 20px 0px 0px;
}
.faq-sec .e-n-tabs-heading {
	background: #FFFFFF;
	border: 1px solid #F0F0F0;
	box-shadow: 0px 4px 84px rgba(211, 36, 43, 0.2);
	border-radius: 20px;
}

.faq-sec .e-n-tabs-heading .e-n-tab-title h4{
	margin: 0 !important;
}
.faq-sec .e-n-tabs.e-activated {
	align-items: baseline;
}

.faq-itms .e-n-accordion-item {
	background: #FFFFFF;
	border: 1px solid #E3E3E3;
	border-radius: 30px;
}


.faq-itms .e-n-accordion-item[open] {
	background: #FFFFFF;
	border: 1px solid #F0F0F0;
	box-shadow: 0px 4px 84px rgba(211, 36, 43, 0.2);
	border-radius: 30px;
}

/* -------------------------Responsive starts--------------------------- */

@media only screen and (min-width: 1201px) and (max-width: 1599px) {
	html {
		zoom: 0.85;
		zoom: 85%;
	}
}

@media(max-width:1366px) {
	.serv-icn::before {
		height: 92px;
		width: 92px;
		outline: 9px solid rgba(211, 36, 43, 0.25);
		z-index: 1;
	}

	.logo-slider .swiper-slide-inner {
		height: 100px !important;
		padding: 10px 20px;
	}

	.gallery-slide .swiper-slide-image {
		height: 365px !important;

	}

}

@media(max-width:1200px) {
	.bttn-icon .elementor-button-icon {
		font-size: 36px;
	}

	.serv-icn::before {
		height: 80px;
		width: 80px;
	}

	.logo-slider .swiper-slide-inner {
		height: 90px !important;
		padding: 10px 20px;
	}

	.logo-slider .swiper-slide-image {
		height: 100% !important;
	}

	.video-sec .elementor-custom-embed-play {
		width: 80px;
		height: 80px;
		line-height: 105px;

	}

	.video-sec .elementor-custom-embed-play::before {

		width: 100px;
		height: 100px;

	}

	.map-list {
		height: 530px;
		overflow-y: scroll;
		padding-right: 12px;
	}

	.gallery-slide .swiper-slide-image {
		height: 290px !important;
	}

	.faq-itms .e-n-accordion-item {
	border-radius: 20px;
}


.faq-itms .e-n-accordion-item[open] {
	border-radius: 20px;
}
}

@media(max-width:1024px) {
	.logo-slider .swiper-slide-inner {
		height: 78px !important;
		padding: 10px 20px;
	}

	.serv-icn::before {
		content: "";
		position: absolute;
		height: 70px;
		width: 70px;

	}

	.choose-cntn .elementor-icon-box-description {
		margin-left: -30px !important;
		margin-top: 8px !important;
	}

	.video-sec .elementor-custom-embed-play {
		width: 65px;
		height: 65px;
		line-height: 78px;
	}

	.video-sec .elementor-custom-embed-play::before {
		width: 80px;
		height: 80px;
	}

	.map-list {
		height: 415px;
		overflow-y: scroll;
		padding-right: 12px;
	}

	.contact-form #gform_submit_button_1 {
		background-color: #D3242B;
		width: 40px;
		height: 40px;

	}

	.contact-form .gfield .ginput_container input {
		border: 0;
		box-shadow: none;
		background: transparent;
		outline: none;
		font-family: 'Poppins', sans-serif;
		font-style: normal;
		font-weight: 400;
		font-size: 12px;
		line-height: 22px;
		text-transform: capitalize;
		color: #545454;
		padding: 18px 50px 18px 53px;
		height: 50px;
		background: #FFFFFF;
		border-radius: 32.1331px;
	}

	.request-form .gfield .ginput_container input,
	.request-form .gfield .ginput_container textarea,
	.request-form .gfield .ginput_container select {
		height: 50px;
		padding: 10px 20px;
		font-size: 12px;
		line-height: 20px;
	}

	.request-form #gform_submit_button_2,
#gform_submit_button_3  {

		width: 118px;
		height: 48px;

	}

	.gallery-slide .swiper-slide-image {
		height: 230px !important;
	}
 #service-loop .elementor-loop-container.elementor-grid > .e-loop-item {
        width: calc(50% - 15px);
    }
}

@media(max-width:880px) {
	.bttn-icon .elementor-button-icon {
		font-size: 28px;
	}

	.serv-icn::before {
		content: "";
		position: absolute;
		height: 60px;
		width: 60px;
	}

	.gallery-slide .swiper-slide-image {
		height: 210px !important;
	}

}

@media(max-width:767px) {
	.choose-cntn .elementor-icon-box-description {
		margin-left: -30 !important;
		margin-top: 8px !important;
	}

	.logo-slider .swiper-slide-inner {
		height: 65px !important;
		padding: 10px 20px;
	}

	.img-box-tiles .elementor-image-box-description {
		width: 100%;
	}

	.video-sec .elementor-custom-embed-play::before {
		width: 40px;
		height: 40px;
	}

	.video-sec .elementor-custom-embed-play {
		width: 20px;
		height: 20px;
		line-height: 24px;
	}

	.request-form #input_2_5,
	#input_3_6 {
		background-image: url("data:image/svg+xml,%3Csvg width='14' height='8' viewBox='0 0 14 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L7 7L13 1' stroke='%23373737' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
		background-repeat: no-repeat no-repeat;
		background-position: 94% 50%;
		background-size: 10px;
		padding-right: 30px;
	}
	 #service-loop .elementor-loop-container.elementor-grid > .e-loop-item {
        width: 100%;
    }
}