/* 
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
*/
.location-grid li {
    padding: 8px 14px 8px 14px;
    border-radius: 4px 4px 4px 4px;
    color: #22252A;
    list-style: none;
    margin: 5px;
    display: inline-block;
	  position: relative;
    padding-left: 35px;
}
	#testimonials .swiper-pagination-bullets.swiper-pagination-horizontal {
    left: 50%;
  }
	.location-grid-block ul{
		padding-left:0;
	}
	.location-grid-block li{
		display:block;
	}
	
.location-grid li::before {
    content: '\f3c5';
    position: absolute;
    left: 10px;
    top: 7px;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: var( --e-global-color-1d414ed );
    font-size: 18px;
}	
.elementor-kit-10 .elementor-form-fields-wrapper button{
	box-shadow:none;
	background: var( --e-global-color-1d414ed ) !important;
	color:#fff !important;
}
.elementor-kit-10 .elementor-form-fields-wrapper button:hover {
    background:#fff !important;
	  color:var( --e-global-color-1d414ed ) !important;
}	
.elementor-14 .elementor-element.service-box-wrap:hover * {
    color: #fff !important;
}
.elementor-14 .elementor-element.service-box-wrap:hover span.elementor-icon {
    background: #fff  !important;
}	
.partner-section img.swiper-slide-image {
    max-width: 150px;
}
.active-status {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 14px;
    border-radius: 12px;
    width: fit-content;
    font-family: inherit;
}
.active-title {
    color:var( --e-global-color-1d414ed );
    font-weight:700;
    font-size: 13px;
    line-height: 1.2;
	  letter-spacing: 0.5px;
}
.active-time {
    color: var( --e-global-color-1d414ed );
    font-size: 10px;
}
.ic-bx{
			
}
.partner-section .swiper-wrapper {
    -webkit-transition-timing-function: 1s linear !important;
    transition-timing-function: linear !important;
}
.partner-section .swiper-pagination-bullet-active {
    width: 20px !important;
    border-radius: 10px;
    transition:0.3s;
}
	
	.pg{
color: #02abbd;
}	
.count-title .elementor-counter-title {
        text-align: center;
        line-height: 28px !important;
    }	
	
.OceanTeal .elementor-icon svg .cls-1{ filter: brightness(0) saturate(100%) invert(57%) sepia(54%) saturate(5858%) hue-rotate(154deg) brightness(99%) contrast(98%);}
.EmeraldGreen .elementor-icon svg .cls-1{ filter: brightness(0) saturate(100%) invert(61%) sepia(91%) saturate(381%) hue-rotate(92deg) brightness(92%) contrast(84%); }
.RoyalBlue .elementor-icon svg .cls-1{ filter: brightness(0) saturate(100%) invert(34%) sepia(46%) saturate(2526%) hue-rotate(211deg) brightness(93%) contrast(88%);}
.SunsetOrange .elementor-icon svg .cls-1{filter: brightness(0) saturate(100%) invert(59%) sepia(86%) saturate(2861%) hue-rotate(334deg) brightness(101%) contrast(105%); }
.CrimsonRed .elementor-icon svg .cls-1{ filter: brightness(0) saturate(100%) invert(17%) sepia(100%) saturate(5474%) hue-rotate(342deg) brightness(89%) contrast(93%); }
.MidnightNavy .elementor-icon svg .cls-1{filter: brightness(0) saturate(100%) invert(7%) sepia(58%) saturate(940%) hue-rotate(174deg) brightness(99%) contrast(96%); }
.OceanTeal svg, .RoyalBlue svg {
    border-radius: 100%;
}
.under-line-offset p.elementor-heading-title {
    text-underline-offset: 5px;
}	
p.gform_required_legend {
    display: none;
}
.gform-theme--foundation .gform_fields {
    row-gap: 20px !important;
}
.gfield_label.gform-field-label {
    font-weight: 600 !important;
    font-size: 16px;
}
input[type=text], input[type=email], input[type=tel], select{
    background-color: #fff !important;
    min-height: 45px !important;
    border: 0 !important;
}
input#gform_submit_button_1 {
    background: #1f2933;
    font-size: 18px;
    font-weight: 700;
    padding: 15px 20px;
    border-radius: 5px;
}
input#gform_submit_button_1:hover {
    background: #ffae00;
}	
.sticky-phone {
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.sticky-phone.active {
  transform: translateY(0);
  opacity: 1;
}
.sticky-phone:not(.active) {
  transform: translateY(-100%);
  opacity: 0;
}	
/* 	
.sticky-phone {
  transition: transform 0.3s ease, opacity 0.3s ease;
	transform: translateY(-100%);
  opacity: 0;
}
.sticky-phone-btn .sticky-phone {
  transform: translateY(0);
  opacity: 1;
}
	 */
	
.circle {
    width: 16px;
    height: 16px;
    background: #6BD063;
    border-radius: 50%;
    position: relative;
	 	box-shadow: 0 0 6px rgba(40, 189, 189, 0.3);
    vertical-align: middle;
}
/* Pulse animation */	
 .circle:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%) scale(1);
    border-radius: 50%;
    background: #6BD063;
    opacity: 0;
    pointer-events: none;
    animation: dot-pulse 1s ease-out infinite;
}	
/* ✅ Top header dot – always animated */
.top-header .circle:before {
    animation: dot-pulse 1s ease-out infinite;
}
/* ❌ Bottom header dot – no animation by default */
.bottom-header .circle:before {
    animation: none;
}
/* ✅ Bottom header dot – animate only when sticky active */
/* .bottom-header.elementor-sticky--active .circle:before {
    animation:dot-pulse 1s ease-out infinite;
}	 */
.mobile-hero-dot .circle:before {
    animation: dot-pulse 1s ease-out infinite;
}		
.con-form button.elementor-button.elementor-size-sm:hover {
    background:var( --e-global-color-1d414ed ) !important;
	  color:#fff !important;
}	
.elementor-image-box-description i:before {
    display: inline-block;
    position: absolute;
    width: 6px;
    height: 6px;
    content: '';
    left: -10px;
    background: #05a0b2;
    border-radius: 100%;
    top: -8px;
}
.elementor-image-box-description i{
    display: inline-block;
    position: relative;
}	
.center-item {
    position: relative;
}
.center-item:before, .center-item:after {
    width: 1px;
    height: 85%;
    background: #06a1b3;
    content: '';
    position: absolute;
    top: 0;
    left: -15px;
}
.center-item:after {
    right: -15px;
    left: unset;
}	
.btn i.icon.icon-phone-call1 {
    background: #fff;
    padding: 12px 13px;
    border-radius: 100%;
	  color: var( --e-global-color-1d414ed );
	  box-shadow: 0 0 10px #00000024;
}
.btn span.elementor-button-content-wrapper {
    display: flex;
    align-items: center;
}	
@keyframes dot-pulse {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.6;
    }

    50% {
        transform: translate(-50%, -50%) scale(2.2);
        opacity:0.18;
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0;
    }
}
@media(max-width:767px){
	.ic-bx h3.elementor-icon-box-title {
    margin-top: 0;
  }
	
	.location-grid ul {
		padding: 0;
	}
	.active-title {
    font-size: 10px;
	}
	.elementor-sticky--active .circle:before {
  	animation: none !important;
	}	
	.animation-start .elementor-sticky--active .circle:before {
		 animation: dot-pulse 1s ease-out infinite !important;
	}	
	.center-item:before {
    left: -10px;
  }
	.center-item:after {
		right: -10px;
	}
}	

.icon-phone-call1 {
  position: relative;
  animation: phone-ring 3s infinite;
  transform-origin: center;

}

/* 📞 shake animation */
@keyframes phone-ring {
  0%   { transform: rotate(0); }
  5%   { transform: rotate(20deg); }
  10%  { transform: rotate(-20deg); }
  15%  { transform: rotate(20deg); }
  20%  { transform: rotate(-20deg); }
  25%  { transform: rotate(10deg); }
  30%  { transform: rotate(-10deg); }
  35%  { transform: rotate(5deg); }
  40%  { transform: rotate(-5deg); }
  45%  { transform: rotate(0); }

  /* pause */
  100% { transform: rotate(0); }
}

/** feedback css start **/
/* .st0 {
    fill: #0099FF !important;
} */
.bann_list span.elementor-icon-list-icon svg {
    /* background: #fff; */
    border-radius: 10px;
    padding: 0px;
    width: 50px;
    height: 50px;
    margin: 0px 10px 0px 0px !important;
}
.location-grid li {
    margin: 0;
}
.sticky-phone {
    z-index: -3;
}
.sticky-phone.active {
    z-index: 1;
}
.blueIcon .st0 {
    fill: #0099ff !important;
}
@media(max-width:768px){
.location-grid li {
    width:100%;
}
.btn i.icon.icon-phone-call1 {
    padding: 8px 9px;
}
.heroIcons li.elementor-icon-list-item span.elementor-icon-list-icon {
    border-right: 1px solid #ffffff;
    padding-right: 5px !important;
    margin-right: 10px;
}
span.clrBlue {
    color: var(--e-global-color-d49ac81);
}

}
/** feedback css End **/