/**
* Typography
**/


/**
* Main menu
**/
/****
** Sticky
****/
[data-elementor-type="header"]{
	position:fixed;
	left:0;
	top:0;
	width:100%;
	z-index:999;
}

.elementor-editor-active [data-elementor-type="header"]{
	position:static;
	background:#0062b2;
}

.admin-bar [data-elementor-type="header"]{
	top:32px;
}

body:not(.home) #main-header,
.sticky-menu #main-header{
	background:#fff;
	box-shadow:0 0 5px #000;
}

body:not(.home) #main-header li a,
.sticky-menu #main-header li a{
	color:#0062b2;
}

#main-header .main-logo{
	max-width:380px;
	margin:auto;
}

body:not(.home) #main-header .main-logo img,
.sticky-menu #main-header .main-logo img{
	content:url(/wp-content/uploads/2025/07/sub-main-logo.png);
}

#main-header .elementor-nav-menu--dropdown{
    position:fixed;
    left:0;
    top:100%;
    width:100%;
    margin:0;
}

@media screen and (max-width: 1330px){
    .elementor-50 .elementor-element.elementor-element-2aeedfa .elementor-nav-menu--main .elementor-item{
        padding-left:10px;
        padding-right:10px;
    }
}

@media screen and (max-width: 1330px){
    .elementor-50 .elementor-element.elementor-element-6affbaf,
    .elementor-50 .elementor-element.elementor-element-4a584fe{
        width:38%;
    }
    
    .elementor-50 .elementor-element.elementor-element-b830abf{
        width:24%;
    }
}

@media screen and (max-width: 1240px){
    .elementor-50 .elementor-element.elementor-element-2aeedfa .elementor-nav-menu--main .elementor-item{
        padding-left:5px;
        padding-right:5px;
    }
}

@media screen and (max-width: 1100px){
    .elementor-50 .elementor-element.elementor-element-6affbaf,
    .elementor-50 .elementor-element.elementor-element-4a584fe{
        width:40%;
    }
    
    .elementor-50 .elementor-element.elementor-element-b830abf{
        width:20%;
    }
}

@media screen and (max-width: 1024px){
    .elementor-50 .elementor-element.elementor-element-2aeedfa .elementor-nav-menu--main .elementor-item{
        padding-left:15px;
        padding-right:15px;
    }
    
    .elementor-50 .elementor-element.elementor-element-4a584fe{
        width:20%;
    }
    
    .elementor-50 .elementor-element.elementor-element-b830abf{
        width:80%;
    }
}

/****
** Home banner settings
****/
body.home #main-header{
	opacity:0;
	transform: translate3d(0,-100%,0);
	animation: navigationAnimation 1s linear 7s 1 normal forwards;
	
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}

body.home.home-logo-animation-ended #main-header{
	opacity:1!important;
	transform: translate3d(0,0,0)!important;
}

body.home .main-logo{
	opacity:0!important;
}

body.home.home-logo-animation-ended .main-logo{
    opacity:1!important;
}

.home-logo-animation-ended .main-logo{
    opacity:0!important;
}

/****
** subpage-banner
****/
.subpage-banner{
    margin-top:87px;
}

/****
** Home keyframes
****/
@keyframes navigationAnimation {
	0%{
		opacity:0;
		transform: translate3d(0,-100%,0);
	}
	100%{
		opacity:1;
		transform: translate3d(0,0,0);
	}
}

/****
** eg-custom-banner-logo-animation
****/
.eg-custom-banner-logo-animation > .inner{
    position:relative;
}

.eg-custom-banner-logo-animation > .inner .shimmer-effect{
	display:block;
	position:absolute;
	left:0;
	top:0;
	height:100%;
	width:100%;
	
	/*	
	background: linear-gradient(to right, #e6e6e6 5%, #ccc 55%, #e6e6e6 85%);	
	background-size: 200px 100%;	
	background: linear-gradient(-80deg, rgba(0, 98, 178, .5) 50%, rgba(250, 250, 250, .5) 52%, rgba(0, 98, 178, .5) 54%);
	*/
	background: linear-gradient(-75deg, rgba(0, 98, 178, 0) 50%, rgba(230, 230, 230, .2) 51%, rgba(250, 250, 250, .3) 52%, rgba(230, 230, 230, .2) 53%, rgba(0, 98, 178, 0) 54%);
	background-size: 300% 100%;
	background-position-x: 100%;
	background-repeat:no-repeat;
	
	animation: shimmer 1.5s 1 linear 1s;
	/*
	animation: shimmer 3s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;	
	opacity:.5;	
	*/
	
	content:"";
	
	z-index:3;
}

.home-logo-animation-ended .eg-custom-banner-logo-animation > .inner .shimmer-effect{
	display:none;
}

.eg-custom-banner-logo-animation .video-banner-wrapper{
    position:relative;
    left:0;
    top:0;
    height:100%;
    width:100%;
    overflow:hidden;
}

.eg-custom-banner-logo-animation .video-banner-wrapper > img{
    opacity:0;
    height:90vh;
}

.eg-custom-banner-logo-animation .video-banner-wrapper iframe{
    position:absolute;
    left:-25%;
    top:-25%;
    padding:0!important;
    height:150%;
    width:150%;
    min-height:1100px;
	z-index:1;
}

.eg-custom-banner-logo-animation .video-banner-wrapper > iframe{
    display:block;
    height:150%;
	max-height:none;
    width:150%;
	max-width:none;
}

.eg-custom-banner-logo-animation .banner-content{
    display:flex;
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:100%;
	
	background:rgba(0, 98, 178, .5);
	
    z-index:2;
    
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
}

.eg-custom-banner-logo-animation .banner-content > .inner{
    /*overflow:hidden;*/
}

.eg-custom-banner-logo-animation .banner-content h1{
    text-align:center;
    padding:0 20px;	
	font-size:44px;
	font-weight:700;
    color:#fff;
    
    line-height: 100%;
    letter-spacing:5px;
	
    opacity:0;
	transform: translate3d(0,100%,0);
	animation: headlineAnimation 1s linear 7s 1 normal forwards;
	
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}

.eg-custom-banner-logo-animation  .banner-content h1 > .smaller{
	font-size:.7em;
}

/****
** keyframe
****/
@keyframes shimmer {
	from{
		background-position-x: 80%;
	}
	
	to {
      background-position-x: 10%;
   }
}

@keyframes logoAnimation {
	0% {
		opacity:1;
	}
	
	80% {
		opacity:1;
	}
	
	95% {
		margin-top:50px;
		width:360px;
		opacity:0;				
	}
	
	100% {
		margin-top:0;
		width:0;
		opacity:0;				
	}			
}

@keyframes headlineAnimation {
	0%{
		opacity:0;
		transform: translate3d(0,100%,0);
	}
	100%{
		opacity:1;
		transform: translate3d(0,0,0);
	}
}

.eg-custom-banner-logo-animation .banner-content .banner-logo{
    display:block;
    position:relative;
    left:-1px;
	top:80px;
    max-width:380px;
	margin:auto;
	
	opacity:0;
	transform: translate3d(0,100%,0);
	animation: headlineAnimation 1s linear 3s 1 normal forwards;
	
    -webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	-o-transition: all 0.3s linear;
	transition: all 0.3s linear;
}

.home-logo-animation-ended .eg-custom-banner-logo-animation .banner-content .banner-logo{
    opacity:0!important;
}

@media screen and (max-width: 1330px){
    .eg-custom-banner-logo-animation .banner-content .banner-logo{
        max-width:281px;
    }   
}

@media screen and (max-width: 980px){
    .eg-custom-banner-logo-animation .video-banner-wrapper > img{
        height: 75vh;
    }	
    
    .eg-custom-banner-logo-animation .video-banner-wrapper iframe{
        position: absolute;
        left: -75%;
		top: -85%;
        padding: 0!important;
        height: 270%;
		width: 270%;
        min-height: 300px;
    }
    
    .eg-custom-banner-logo-animation  .banner-content h1{
        font-size:60px;
    }
}

@media screen and (max-width: 480px){
    .eg-custom-banner-logo-animation .banner-content .banner-logo{
        max-width:220px;
        left:-10px;
    }
    
    .eg-custom-banner-logo-animation .video-banner-wrapper iframe{
		left: -75%;
		top: -85%;
		height: 270%;
		width: 270%;
    }
    
    .eg-custom-banner-logo-animation  .banner-content h1{
        font-size:36px;
    }
}

/**
* eg-testimonials-wrapper
**/
.eg-testimonials-wrapper .eg-testimonial{
	position:relative;
	text-align:center;
	padding:40px 40px 40px 40px;
	background:rgba(255,255,255,.8);
}

.eg-testimonials-wrapper .eg-testimonial:before{
	display:block;
	height:50px;
	width:50px;
	margin:auto;
	background:url(../img/quotation-b.png);
	background-size:cover;
	background-position:50%;
	background-repeat:no-repeat;
	content:"";
}

.eg-testimonials-wrapper .eg-testimonial .content{
	margin-bottom:20px;
	font-size:20px;
	font-style:italic;
	line-height:1.3em;
}

.eg-testimonials-wrapper .eg-testimonial .author{
	font-family:"Avenir", Sans-serif;
	font-size:28px;
	font-weight:700;
	color:#0062B2;
}

/**
* logo-carousel
**/
.logo-carousel{
	padding:0 100px;
	overflow:hidden;
}

.logo-carousel > .inner{
	overflow:visible;
}

.logo-carousel .arrows-wrapper{
	text-align:center;
}

.logo-carousel .arrow-left,
.logo-carousel .arrow-right{
	display:inline-block;
	height:30px;
	width:30px;
	margin:0 5px;
	border:1px solid #000;
	border-radius:100%;
	
	cursor:pointer;
}

.logo-carousel .arrow-left{	
	background:url(../img/logos-arrow-l.png);
	background-size:20px;
	background-position:50%;
	background-repeat:no-repeat;	
}

.logo-carousel .arrow-right{	
	background:url(../img/logos-arrow-r.png);
	background-size:20px;
	background-position:50%;
	background-repeat:no-repeat;
}

.logo-carousel > .inner > .slick-list{
	overflow:visible;
}

.logo-carousel > .inner > .slick-list > .slick-track{
	display: flex;
	align-items: center;    
}

.logo-carousel .image-wrapper{
	max-width:300px;
}

/****
** Text with icon
****/
.text-with-icon{
    display:flex;
    align-items:center;
    column-gap:10px;
}

.text-with-icon > img{
    display:block;
    width:32px;
}

.text-with-icon > span{
    display:block;
    font-size:20px;
    font-weight:700;
    color:#0062b2;
}

/****
** popup-video
****/
.popup-video{
    display: block;
    position: relative;
    cursor:pointer;
}

.popup-video:before{
    display: block;
    position: absolute;
    left: calc( 50% - 40px );
    top: calc( 50% - 40px );
    height: 80px;
    width: 80px;
    background-image: url(/wp-content/uploads/2025/04/play-button.png);
    background-size:cover;
    content: "";
    
    z-index:2;
}

.popup-video.v2:before{
    position: absolute;
    left: calc( 50% - 50px );
    top: calc( 50% - 35px );
    height: 40px;
    width: 70px;
}

/****
** popup-video-wrapper
****/
.popup-video-wrapper > .inner{
    position:relative;
    z-index:2;
}

.popup-video-wrapper p{
    margin:0!important;
}

.popup-video-wrapper img{
    display:block;
    position:relative;
    width:100%;
    opacity:0;
    z-index:1;
}

.popup-video-wrapper > .inner{
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:100%;
}

.popup-video-wrapper > .inner > iframe{
    display:block;
    position:relative;
    left:0;
    top:0;
    height:100%;
    width:100%;
    border:0;
}

/**
* Plugin Overrides
**/
/**
* Slick
**/
 .slick-slide {
  margin: 0 20px;
}

.slick-list {
  margin: 0 -20px;
}

.slick-dots{
    position:static;	
    padding:0!important;
	margin-top:30px;
}

.slick-dots li{
	height:16px;
	width:16px;
}

.slick-dots li button{
    padding:0;
}

.slick-dots li button:hover{
	background:transparent!important;
}

.slick-dots li button:before{
	opacity:1!important;
	height:16px;
	width:16px;
	border:1px solid #0062B2;
	border-radius:100%;
	font-size:16px;
	color:transparent!important;	
}

.slick-dots li.slick-active button:before{	
	height:20px;
	width:20px;	
	border:0;
	font-size:20px;
	color:#0062B2!important;	
}