/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.4.1758966057
Updated: 2025-09-27 09:40:57

*/

/*
#main-header .e-con-inner {
	position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1;
    height: auto;
    padding-left: 20px;
    padding-right: 20px;
    background-color: rgb(248 248 248 / 5%);
    border-radius: 30px 30px 30px 30px;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    transition: all .3s;
}
*/

header#site-header.elementor-sticky--effects {
    /* box-shadow: 0 2px 8px 0px #dcdde2; */
    border-bottom: 1px solid #e0e8ff;
}
header#site-header .e-con-inner {
    transition: 0.3s;
}
header#site-header.elementor-sticky--effects > .e-con-inner {
    padding-top: 15px;
    padding-bottom: 15px;
}

.bordered-icon .elementor-icon-box-icon a {
    border: 1px solid #A1B3EA !important;
    padding: 12px;
    border-radius: 8px;
}

.bordered-icon:hover .elementor-icon-box-icon a {
    border-color: #ffffff !important;
}

.bordered-icon .elementor-icon-box-description a {
    color: #08225D;
    font-weight: 700;
    text-transform: uppercase;
    display: block;
    margin-top: 14px;
    font-size: 14px;
}

.bordered-icon:hover .elementor-icon-box-title {
    color: #fff !important;
}

.bordered-icon:hover .elementor-icon-box-description,
.bordered-icon:hover .elementor-icon-box-description a {
    color: #ffffff !important;
}

.bordered-icon:hover .elementor-icon-box-icon {
    background-color: #ffffff;
}

.bordered-icon .elementor-icon-box-icon {
    align-self: flex-start;
    border-radius: 8px;
}

.industry-slider .elementor-cta {
    padding-top: 40px;
}

.industry-slider .elementor-cta__bg-wrapper { 
    margin-top: 25px;
} 

.industry-slider .elementor-cta__content {
    overflow: initial;
}

.industry-slider .elementor-widget-call-to-action {
    position: relative;
    overflow: initial;
}


.industry-slider .elementor-cta__title {
    position: absolute;
    font-style: normal;
    font-weight: 700;
    font-size: 58px;
    right: 40px;
    top: -40px;
    display: inline-block;
    width: auto;
    z-index: 9999;
}

.industry-slider .elementor-cta__description {
    position: absolute;
    left: 0;
    bottom: 75px;
    width: 100%;
    padding: 20px 30px;
    font-family: 'Onest';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 26px;
    background-color: #08225D;
}
.elementor-our-teams .elementor-image-box-content {
    background-color: #fff;
    border-radius: 8px;
    padding: 13px 20px;
    margin-top: -8px;
}

.elementor-our-teams .elementor-image-box-content .elementor-image-box-title {
    margin-top: 0;
    margin-bottom: 4px;
}


.elementor-services-section > .e-con-inner {position:relative}
/* .elementor-services-section .v-line {
    background: #a1b3ea;
    position: absolute;
    left: 207px;
    top: 0px;
    width: 0.5px;
    height: 100%;
    z-index: 0;
} */

.elementor-services-section .v-line {
    background: #a1b3ea;
    position: absolute;
    left: 207px;
    top: 0;
    width: 1px;
    height: 0;
    z-index: 0;
}

.elementor-services-section.animate .v-line {
    animation: lineGrow 1.5s ease forwards;
    animation-delay: 1s;
}

@keyframes lineGrow {
    from { height: 0; }
    to   { height: 100%; }
}





.elementor-services-section .h-line {
    background: #a1b3ea;
    position: absolute;
    left: -2500px;
    width: 0; 
    height: 1px;
    z-index: 0;
}
.elementor-services-section .h-line-1 { top: 240px; animation-delay: 2s !important;}
.elementor-services-section .h-line-2 { top: 550px;animation-delay: 3s !important;}
.elementor-services-section .h-line-3 { top: 855px;animation-delay: 4s !important;}

.elementor-services-section.animate .h-line {
    animation: lineWidthGrow 3s ease forwards;
}

@keyframes lineWidthGrow {
    from { width: 0; }
    /* to   { width: calc(100% + 1000px); } */
    to   { width: calc(100% + 5000px); }
    
}








.section-background {
  position: relative;
  width: 100%;
  height: 400px;
  overflow: hidden;

  /* GRID */
  background-image:
    linear-gradient(to right, #F5F5F5 1px, transparent 1px),
    linear-gradient(to bottom, #F5F5F5 1px, transparent 1px);
  background-size: 80px 68px;
}

/* VERTICAL GLOW LINE */
.section-background::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 2px;
  height: 100%;

  background: linear-gradient(
    to bottom,
    transparent,
    #1147C3,
    transparent
  );

  box-shadow: 0 0 12px #1147C3, 0 0 24px #1147C3;
  animation: moveVertical 6s linear infinite;
}

/* HORIZONTAL GLOW LINE */
.section-background::after {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 100%;
  height: 2px;

  background: linear-gradient(
    to right,
    transparent,
    #1147C3,
    transparent
  );

  box-shadow: 0 0 12px #1147C3, 0 0 24px #1147C3;
  animation: moveHorizontal 6s linear infinite;
}

/* ANIMATIONS */
@keyframes moveVertical {
  from {
    left: -2px;
  }
  to {
    left: 100%;
  }
}

@keyframes moveHorizontal {
  from {
    top: -2px;
  }
  to {
    top: 100%;
  }
}


.dark-gradient-title {
    background: #08225D;
    background: -webkit-linear-gradient(to bottom, #08225D 0%, #1147C3 100%);
    background: -moz-linear-gradient(to bottom, #08225D 0%, #1147C3 100%);
    background: linear-gradient(to bottom, #08225D 0%, #1147C3 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.lines {
    position: absolute;
    z-index: 0;
    top: 0px;
    left: 0;
    right: 0;
    height: 100%;
    margin: auto;
    width: 100%;
    display: block;
}

.vertical-lines {
    position: absolute;
    z-index: -1;
    top: 0px;
    left: 0;
    right: 0;
    height: 100%;
    margin: auto;
    width: 90vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.horizontal-lines {
    position: absolute;
    z-index: -2;
    top: 0px;
    left: 0;
    right: 0;
    height: 100%;
    margin: auto;
    width: 90vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    transform: rotate(90deg);
	display:none;
}

.line {
    position: relative;
    width: 1px;
    height: 100%;
    top: 0;
    /*background: linear-gradient(#e5d2b1, #f2eee2);
    background: linear-gradient(#c4d8ff, #e9f0ff);*/
    background: #F5F5F5;
    overflow: hidden;
}

.line:after {
    content: "";
    display: block;
    position: absolute;
    height: 15vh;
    width: 100%;
    top: -50%;
    left: 0;
    /* background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #08225D 75%, #08225D 100%); */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #1749bf 75%, #103896 100%);
    animation: drop 10s 0s infinite;
    animation-fill-mode: forwards;
    animation-timing-function: cubic-bezier(.4, .26, 0, .97)
}

.horizontal-lines .line {
    width: 100%;
    height: 1px;
}

.horizontal-lines .line:after {
    height: 100%;
    width: 15vw;
}

.line:nth-child(1):after {
    animation-delay: 2s
}

.line:nth-child(2):after {
    animation-delay: 3.5s
}

.line:nth-child(3):after {
    animation-delay: 2s
}

.line:nth-child(4):after {
    animation-delay: 3.5s
}

.line:nth-child(5):after {
    animation-delay: 2s
}

.line:nth-child(6):after {
    animation-delay: 3.5s
}

.line:nth-child(7):after {
    animation-delay: 2s
}

.line:nth-child(8):after {
    animation-delay: 3.5s
}

.line:nth-child(9):after {
    animation-delay: 2s
}

.line:nth-child(10):after {
    animation-delay: 3.5s
}

.line:nth-child(11):after {
    animation-delay: 2s
}

.line:nth-child(12):after {
    animation-delay: 3.5s
}

.line:nth-child(13):after {
    animation-delay: 2s
}

.line:nth-child(14):after {
    animation-delay: 3.5s
}

.line:nth-child(15):after {
    animation-delay: 2s
}

.line:nth-child(16):after {
    animation-delay: 3.5s
}

.line:nth-child(17):after {
    animation-delay: 2s
}

.line:nth-child(18):after {
    animation-delay: 3.5s
}

.line:nth-child(19):after {
    animation-delay: 2s
}

.line:nth-child(20):after {
    animation-delay: 3.5s
}

.line:nth-child(21):after {
    animation-delay: 2s
}

.line:nth-child(22):after {
    animation-delay: 3.5s
}

.line:nth-child(23):after {
    animation-delay: 2s
}

.line:nth-child(24):after {
    animation-delay: 3.5s
}

.line:nth-child(25):after {
    animation-delay: 2s
}

@keyframes drop {
    0% {
        top: -50%
    }

    100% {
        top: 110%
    }
}

/*#hero-section .elementor-background-video-container {
    opacity: .07;
}
#hero-section .elementor-background-video-container:after {
	content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 100px;
    z-index: 1;
    bottom: 0;
    background-color: #121534;
    background: #121534;
    background: -webkit-linear-gradient(180deg, rgba(18, 21, 52, 0) 0%, rgba(18, 21, 52, 1) 75%);
    background: -moz-linear-gradient(180deg, rgba(18, 21, 52, 0) 0%, rgba(18, 21, 52, 1) 75%);
    background: linear-gradient(180deg, rgba(18, 21, 52, 0) 0%, rgba(18, 21, 52, 1) 75%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#121534", endColorstr="#121534", GradientType=0);
}*/


.map-pin{
position: relative;
       
    transform-origin: bottom center;
}
.map-pin1{
 animation: floatUpDown 2s ease-in-out infinite;
}
.map-pin2{
 animation: floatUpDown 3s ease-in-out infinite;
}
.map-pin3{
 animation: floatUpDown 4s ease-in-out infinite;
}
.map-pin4{
 animation: floatUpDown 4s ease-in-out infinite;
}


@keyframes floatUpDown {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-15px);
    }
    100% {
        transform: translateY(0);
    }
}

@media (max-width: 1024px) {

	.industry-slider .elementor-cta__description {
  
    bottom: 60px;

}
	.elementor-services-section .v-line {
   
    left: 50%;
    transform: translateX(-50%);
}
	
.elementor-services-section .h-line-1 {top: 190px;}
	.elementor-services-section .h-line-2 {
    top: 470px;
}
	.elementor-services-section .h-line-3 {
    top: 760px;
}
}

@media (max-width: 767px) {
	.elementor-services-section .h-line {display:none !important}

	.map-pin {

       animation: none;
}
    
	
	header#site-header.elementor-sticky--effects {
    	padding-top: 14px;
	}
	

	div#address-1, div#address-2, div#address-3, div#address-4 {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    right: auto !important;
}
}







