body{
    overflow-x:hidden;
}



.main-hero-section .right-col-banner{
	position: relative !important;
}


.main-hero-section .right-col-banner:before{
    content: '';
    position: absolute !important;
    background: #006df752;
    top: 0;
    left: 50%;
    width: 50%;
    height: 63%;
    z-index: 1;
    transform: translateX(-50%);
}

.hero-title{
	font-family: "Playfair Display", serif;
	font-weight: 600;
	font-style: italic;
	color: #2f95ff;
	font-size: 68px;
}


/*  */


.services-section .services-info-cls .pp-icon{
	border-radius: 14px;
	background: linear-gradient(145deg, #0055d7, #07347e 75%);
	box-shadow: 0 10px 20px -8px rgba(15, 51, 44, 0.5);
	transition: transform .3s;
}

.services-section .services-info-cls .pp-info-box{
	transition: 0.3s !important;
	position: relative !important;
	overflow: hidden !important;
	transform: translateY(0x) !important;
}

 
.services-section .services-info-cls .pp-info-box:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	transform: scaleX(0);
	transform-origin: left;
	background: linear-gradient(90deg, #b14931, #d5993d);
	transition: transform .35s;
}

.services-section .services-info-cls .pp-info-box:hover::before {
    transform: scaleX(1);
}

.services-section .services-info-cls .pp-info-box:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 24px 46px -22px rgba(15, 51, 44, 0.38) !important;
	border-color: transparent !important;
}

@keyframes fadeUp {

0% {
    opacity: 0;
    transform: translateY(22px);
}
100% {
    opacity: 1;
    transform: translateY(0);
}
}


.services-section .services-info-cls .pp-info-box:hover .pp-icon {
    transform: scale(1.08) rotate(-4deg) !important;
}



/* ================= Icon design =================== */


.icon-list-animation .elementor-icon-list-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.icon-list-animation .elementor-icon-list-icon svg.e-fas-circle {
    fill: #16a34a;
    width: 10px;
    height: 10px;
    position: relative;
    z-index: 2;
}

.icon-list-animation .elementor-icon-list-icon::before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #16a34a;
    animation: stock-ripple 1.6s ease-out infinite;
    z-index: 1;
	left: 0 !important;
}


@keyframes stock-ripple {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }
    100% {
        transform: scale(2.5);
        opacity: 0;
    }
}


/* ======================= All Info=====================*/
.common_info_box_button_bottom .pp-info-box {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.common_info_box_button_bottom .pp-info-box-content{
    display: flex;
    flex-direction: column;
    flex: 1;
}

.common_info_box_button_bottom .pp-info-box-footer {
    margin-top: auto;
}




/* Phone icon — ringing + drop-shadow (works like text-shadow for SVG) */
.animation-icon-box .pp-info-box-icon.pp-icon svg{
  display:block;
  transform-origin:center 65%;
  animation: mrRing 2.4s ease-in-out infinite;
  will-change: transform;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.35));
}



@keyframes mrRing{
  0%,  55%, 100% { transform: rotate(0deg)   scale(1);    }
  58%            { transform: rotate(-13deg) scale(1.08); }
  61%            { transform: rotate(11deg)  scale(1.08); }
  64%            { transform: rotate(-9deg)  scale(1.06); }
  67%            { transform: rotate(7deg)   scale(1.06); }
  70%            { transform: rotate(-5deg)  scale(1.04); }
  73%            { transform: rotate(4deg)   scale(1.03); }
  76%            { transform: rotate(-2deg)  scale(1.02); }
  80%            { transform: rotate(0deg)   scale(1);    }
}

@keyframes mrGlow{
  0%,  55%, 100% { box-shadow: 0 0 0 0   rgba(255,255,255,0.55); }
  60%            { box-shadow: 0 0 0 6px rgba(255,255,255,0.35); }
  70%            { box-shadow: 0 0 0 12px rgba(255,255,255,0);   }
}

@media (prefers-reduced-motion: reduce){
  .animation-icon-box .pp-info-box-icon.pp-icon svg,
  .animation-icon-box .pp-info-box-icon-wrap{ animation:none; box-shadow:none; filter:none; }
}



/* ========================= services-section =================== */


.services-section-new .pp-info-box-container .pp-info-box-icon{
	clip-path: polygon(81.46% 100%, 100% 83%, 100% 0%, 70.71% 0%, 19.04% 0%, 0% 19.54%, 0% 100%, 29.29% 100%) !important;
}

.services-section-new .pp-info-box{
	transition: 0.3s !important;
}

.services-section-new .pp-info-box:hover{
	transform: translateY(-6px) !important;
	box-shadow: 0 18px 50px rgba(7, 27, 53, .10) !important;
	border-color: #046bd22e !important;
}

.services-section-new{
	position: relative !important;
}
.services-section-new:before{
	content: '';
	background-image: linear-gradient(108deg, rgba(26, 123, 233, 0.7) 5%, rgba(58, 126, 206, 0.1) 25%, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, 0) 60%, rgba(211, 142, 75, 0.15) 75%, rgba(255, 146, 38, 0.7) 98%);
	position: absolute;
	inset: 0%;
}


/* Services Area */

/* .services-area-section{
	position: relative !important;
}
.services-area-section:before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1;
    background-image: radial-gradient(rgba(79, 70, 229, .3) 1px, transparent 1.2px);
    background-size: 10px 10px;
    opacity: .4;
    mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 30%, transparent 85%);
    -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 30%, transparent 85%);
} */



/* ============================== offer-section =========================== */

.offer-section{
	padding-right: calc((100% - 1340px)/2 + 5px) !important;
}


@media screen and (max-width: 1199px) {
	.hero-title{
		font-size: 35px !important; 
	}
}

@media screen and (max-width: 480px) {
	.hero-title{
		font-size: 30px !important; 
	}
}