/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 20 2026 | 12:43:43 */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 6rem;
}

/* important classes start */

.sec-tp {
	padding-top: 3rem;
}

.sec-bp {
	padding-bottom: 3rem;
}

.px2{
	padding-right: 1rem;
	padding-left: 1rem;
}

.pt1 {
	padding-top: 1rem;
}

.pb1 {
	padding-bottom: 1rem;
}

.pt2 {
	padding-top: 2rem;
}

.pb2 {
	padding-bottom: 2rem;
}

.mt1 {
	margin-top: 1rem;
}

.mb1 {
	margin-bottom: 1rem;
}

.mt2 {
	margin-top: 2rem;
}

.mb2 {
	margin-bottom: 2rem;
}

/* important classes start */

/* header css start */

/* sticky header */
.sticky-header {
   box-shadow: 0 .2rem .4rem 0 rgba(79, 65, 65, .1);
   position: relative;
   top: 0;
   right: 0;
   left: 0;
   z-index: 9999;
}

.sticky-header.is-sticky{
	position: fixed;
    animation: slideDown 0.35s ease-out;
    z-index: 9999;
}

@keyframes slideDown {
	0%{
		transform: translateY(-100%);
	}
	
	100% {
		transform: translateY(0%);
	}
}


.gradient-btn {
	
    /* 135deg gradient */
  background: linear-gradient(
    135deg,
    rgba(98, 161, 215, 1),
    rgba(107, 75, 161, 1)
  );

  /* Large background for smooth animation */
  background-size: 400% 400%;

  /* Animation */
  animation: Gradient 3s ease infinite;
}

/* Keyframes */
@keyframes Gradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.gradient-btn svg path{
 transform-origin: center;
  animation: phoneBuzz 2s ease-in-out infinite;
}

@keyframes phoneBuzz {

  /* buzz start */
  0%   { transform: rotate(0deg); }
  5%   { transform: rotate(15deg); }
  10%  { transform: rotate(-15deg); }
  15%  { transform: rotate(12deg); }
  20%  { transform: rotate(-12deg); }
  25%  { transform: rotate(8deg); }
  30%  { transform: rotate(-8deg); }
  35%  { transform: rotate(0deg); }

  /* pause period */
  36%  { transform: rotate(0deg); }
  100% { transform: rotate(0deg); }

}

/* menu link base */
.ekit-menu-nav-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

/* underline */
.ekit-menu-nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    width: 100%;
    height: 2px;
    background: linear-gradient(
        135deg,
        rgba(98, 161, 215, 1),
        rgba(107, 75, 161, 1)
    );
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.35s ease;
}

/* hover underline */
li:hover > .ekit-menu-nav-link::after {
    transform: scaleX(1);
}

/* ACTIVE underline (clicked link) */
.ekit-menu-nav-link.active::after {
    transform: scaleX(1);
}


.ekit-wid-con .ekit-sidebar-group .ekit-overlay {
	background-color: rgb(0 0 0 / 10%) !important; 
}

.mob-hamburger .ekit_sidebar-widget-container {
	transition: none !important;
}

.mob-hamburger .ekit-overlay {
	transition: none !important;
}
/* header css end */

/* home css start */

 .home-banner{
	 position: relative;
	z-index: 1;
}

.float-items {
	position: absolute;
	bottom: 150px;
	left: 0%;
}

.card-icons .elementor-icon-box-wrapper .elementor-icon svg path{
	 background: linear-gradient(
    135deg,
    rgba(98, 161, 215, 1),
    rgba(107, 75, 161, 1)
  );
}

.card-icon-container .elementor-icon {
  transition: transform 0.4s ease;
}

.card-icon-container:hover .elementor-icon {
  transform: scale(1.1) rotate(5deg);
}

.line-heading {
	position: relative;
}

.line-heading span:before {
  content: "";
  position: absolute;
  top: 31%;
  left: -50px; 
  width: 40px;
	height: 0.8px;
  background: #acaaaa;
  transform: translateY(-50%);
}

.popup-btn {
	animation: 2s ease-in-out 0s infinite normal none running pulse-button;
    transition: 0.3s;
}

@keyframes pulse-button {

  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(197, 78, 97, 0.6);
  }

  50% {
    box-shadow: 0 0 0 10px rgba(0, 163, 211, 0);
  }
}

.price-card {
	position: relative;
}

.price-tag {
	position: absolute;
    top: -18px;
}

.project-list-icon .elementor-icon-list-items li {
	border: 1px solid #dce4eb;
	padding: 12px 10px;
	gap: 12px;
}

.project-list-icon .elementor-icon-list-items li svg {
	margin: 0px !important;
}

.project-list-icon .elementor-icon-list-icon {
    background: linear-gradient(135deg, rgba(98, 161, 215, 1), rgba(36, 112, 191, 1));
    display: flex;
    justify-content: center;
    align-items: center;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    line-height: 0;
}

/* fix SVG alignment */
.project-list-icon .elementor-icon-list-icon svg {
    display: block;
    width: 16px;
    height: 16px;
    margin: 0;
}

.blur-box {
	position: relative;
} 

.blur-box::after {
  content: "";
  position: absolute;
  inset: 0;
 box-shadow: inset 0px 0px 38px #2d393d;
  pointer-events: none;
}

.layout-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.layout-btn:hover {
	color: #0052CC;
	opacity: 0.9;
}

.gallery-slider .elementor-swiper-button-prev,
.elementor-swiper-button-next{
	background-color: #ffffff;
    padding: 5px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.location-adv-list .elementor-icon-list-items li {
	border: 1px solid rgb(98 161 215);
	border-radius: 14px;
	padding: 14px 10px;
	gap: 12px;
	transition: all 0.3s;
}

.location-adv-list .elementor-icon-list-items li:hover{
	transform: translateY(-2px);
	 background: linear-gradient(135deg, rgba(98, 161, 215, 1), rgba(36, 112, 191, 1));
	color: #ffffff;
}

.location-adv-list .elementor-icon-list-items li svg {
	margin: 0px !important;
}

.location-adv-list .elementor-icon-list-icon {
    background: linear-gradient(135deg, rgba(98, 161, 215, 1), rgba(36, 112, 191, 1));
    display: flex;
    justify-content: center;
    align-items: center;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    line-height: 0;
}

.location-adv-list .elementor-icon-list-items li:hover .elementor-icon-list-icon {
	border: 1px solid #ffffff;
}

/* fix SVG alignment */
.location-adv-list .elementor-icon-list-icon svg {
    display: block;
    width: 16px;
    height: 16px;
    margin: 0;
}

.call-box .elementor-icon-box-icon {
	background: linear-gradient(135deg, rgba(98, 161, 215, 1), rgba(36, 112, 191, 1));
	display: flex;
    justify-content: center;
    align-items: center;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    line-height: 0;
}

.call-box .elementor-icon-box-description a {
	color: #000000;
	text-decoration: none;
}

/* home css end */

/* form css start */
.input-box {
	border: 1px solid #dee2e6;
    background-color: #ffffff;
	margin-bottom: 20px;

}

.wpcf7-form-control:focus-visible{
	border: none;
	box-shadow: none;
}


.wpcf7-form-control:focus{
	border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);
}


.input-box p {
	display: flex;
	align-items: center;
}

.input-box .icon {
	width: 20px;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: -33px;
	margin-left: 12px;
    position: relative;
    z-index: 2;
}

.wpcf7-form-control-wrap {
	margin-bottom: 0px !important;
}

.wpcf7-form-control {
	margin-left: 2px;
	border: none !important;
	padding: 14px 20px 14px 50px !important;
}

.wpcf7-form-control.wpcf7-submit {
	padding: 12px 18px !important;
}

.form-submit-btn p {
	display: block !important;
}

.form-submit-btn p .wpcf7-form-control.wpcf7-submit {
	display: block !important;
	margin: 0 auto !important;
}

.form-submit-btn p .wpcf7-spinner {
	display: block !important;
	margin: 0 auto;
}
/* form css end */

/* responsive css start */

/* 1500px – 1400px */
@media (max-width: 1500px) and (min-width: 1400px) {
	.float-items {
		bottom: 110px;
		left: 0%;
	}
}

@media (max-width: 1400px) and (min-width: 1300px) {
		.float-items {
		bottom: 78px;
		left: 0%;
	}
}

/* 1400px – 1300px */
@media (max-width: 1300px) and (min-width: 1025px) {
	.float-items {
		bottom: 60px;
		left: 0%;
	}
	
   .contact-form .ue_form_title {
		margin-bottom: 4px !important;
	}
	
	.contact-form .mb-3.position-relative{
		display: none !important;
	}
	
	.input-box {
		margin-bottom: 12px !important;
	}
	
	.contact-form .ue_form_wrapper {
		padding: 14px 30px 0px 30px !important;
	}
}


/* 1200px – 1100px */
@media (max-width: 1200px) and (min-width: 1100px) {
	.float-items {
		bottom: 40px;
		left: 0%;
	}
}

/* 1100px – 1024px */
@media (max-width: 1100px) and (min-width: 1025px) {
	.float-items {
		bottom: 70px;
		left: 0%;
	}
}

@media (max-width: 768px){
	.ekit_sidebar-textwidget {
		padding: 0px !important;
	}
	
	.ekit-wid-con .ekit_close-side-widget{
		top: 22px !important;
		right: 24px !important;
	}
	
	.mobile-nav-list .elementor-icon-list-items li:first-child {
    border-top: 1px solid #eaeaea;
    border-bottom: 1px solid #eaeaea;
    padding-top: 10px;
    padding-bottom: 10px;
	}
	
	.mobile-nav-list .elementor-icon-list-items li{
    border-bottom: 1px solid #eaeaea;
    padding-top: 10px;
    padding-bottom: 10px;
	}
	
   .elementor.elementor-837 {
		display: flex;
	}
}

@media (max-width: 576px){
	.sec-tp {
	padding-top: 1.3rem;
}

    .sec-bp {
	padding-bottom: 1.3rem;
}
	
    .ekit-sidebar-widget{
		max-width: 292px !important;
	}
	
	   .elementor.elementor-837 {
		display: flex;
	}
	
	#spu-949 .spu-container {
		padding: 0px !important;
	}

}


/* responsive css start */