html{
scroll-behavior: smooth;
}

body{
margin:0;
padding:0;
font-family: 'Proxima', Helvetica, Arial, Lucida, sans-serif!important;
overflow-x: hidden!important;
}

html, body, #page-container {
overflow-x: hidden!important;
}

html.contact_open,
html.menu_open{
overflow: hidden;
}

h1, h2, h3:not(.et_pb_toggle_title), h4, h5, h6 {
padding: 0;
margin-bottom: 15px;
}

#et-main-area {
padding-top: 80px;
}

.et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
content: "\4b" !important;
display: block;
}

body #page-container .et_pb_section .hover_link_effect.et_pb_button_0::after,
body #page-container .et_pb_section .hover_link_effect.et_pb_button_1::after{
font-size:26px!important;
transition: all 0.5s;
}

body #page-container .et_pb_section .hover_link_effect.et_pb_button_1:hover::after,
body #page-container .et_pb_section .hover_link_effect.et_pb_button_0:hover::after{
transform: scale(1.2);
transition: all 0.5s;
}

.services_accordion .et_pb_toggle_content {
display: none;
overflow: hidden;
}

/****** Header CSS Is Here ******/

.header_parent.onscroll{
box-shadow: 0px 0px 6px 1px #f5f5f5;
}

.header_parent .et_pb_row{
width: 90%;
transition: all 0.5s;
}

.header_parent.onscroll .et_pb_row{
width: 95%;
transition: all 0.5s;
}

.hamburger_parent{
margin-left: 15px;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
position: relative;
cursor: pointer;
}

.hamburger_parent:hover::before{
transform: translate(-50%, -50%) scale(1);
transition: 0.3s ease;
}

.hamburger_parent:before {
content: "";
position: absolute;
left: 50%;
top: 50%;
width: 50px;
height: 50px;
background: #122E52;
border-radius: 50%;
transition: 0.3s ease;
transform: translate(-50%, -50%) scale(0);
}

.header-hamburger {
background: transparent;
border-radius: 50%;
display: flex;
align-items: flex-start;
flex-direction: column;
justify-content: center;
position: relative;
}

.hamburger_parent:hover .header-hamburger span{
background: #fff;
}

.header-hamburger span{
width: 28px;
height: 3px;
background: #000;
margin: 3px 0;
}

.header-hamburger span:last-child{
width:18px;
}

.contact_form,
.main_menu {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 99999;
overflow: hidden;
visibility: hidden;
transition: 0s linear 0.7s;
background: transparent;
}

body.contact_open .contact_form,
body.menu_open .main_menu{
visibility: visible;
transition: 0s linear;
}

.contact_row,
.menu_row{
visibility: hidden;
transition: 0s linear;
}

body.contact_open .contact_row,
body.menu_open .menu_row{
visibility: visible;
transition: 0s linear 0.3s;
}

.contact_form::before,
.main_menu:before{
position: absolute;
content: "";
z-index: -1;
right: 0;
top: 0;
width: 100%;
height: 100%;
background: #122E52;
transition: clip-path 0.7s ease;
clip-path: circle(0% at 100% 0);
}

body.contact_open .contact_form::before,
body.menu_open .main_menu:before{
transition: clip-path 0.7s ease;
clip-path: circle(141.4% at 100% 0);
}

body.menu_open .menu_visibility{
display: block;
}

.menu_visibility{
display: none;
}

#hero_video,
#hero_video .et_pb_video_box{
width: 100%;
max-width: 1540px;
margin: 0 auto;
position: relative;
}

.about_us_image{
width: 100%;
max-width: 1540px;
margin: 0 auto;
position: relative;
overflow: hidden;
}

.about_us_image .et_pb_image_wrap {
display: block;
}

.about_us_image .et_pb_image_wrap img{
width: 100%;
}

.toggle_menu_effect .et_pb_text_inner a{
transition: all 0.7s cubic-bezier(0, 0, 0.23, 1);
text-decoration: none;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-image: linear-gradient(90deg, #3282eb, #3282eb 50%, #fff 0);
background-size: 200% 100%;
background-position: 100%;
}

.toggle_menu_effect .et_pb_text_inner a:hover{
background-position: 0;
color: #3282eb;
}

/****** Header CSS Is Here ******/

.award_winning_column{
display: flex;
flex-wrap: wrap;
align-items: center;
}

.award_winning_grid{
border-right:1px solid #f2f2f2;
border-bottom:0 solid #f2f2f2;
width: 20%;
}

.award_winning_grid:nth-child(5n){
border-right:0 solid #f2f2f2;
}

.award_winning_grid:nth-child(n+6){
border-bottom:0 solid #f2f2f2;
}

.award_winning_grid .et_pb_blurb_content{
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
min-height: 275px;
}

.award_winning_grid .et_pb_main_blurb_image{
transition: 0.7s;
transform: translateY(0);
}

.award_winning_grid:hover .et_pb_main_blurb_image{
transition: 0.7s;
transform: translateY(-25px);
}

.award_winning_grid .et_pb_blurb_container{
opacity: 0;
transition: 0.5s;
width: 100%;
position: absolute;
bottom: 0;
left: 0;
right: 0;
margin: 0 auto;
transform: translateY(-10px);
}

.award_winning_grid:hover .et_pb_blurb_container{
opacity: 1;
}

/****** Case Studies Is Here ******/

.case_studies_column {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

/* .case_studies_box .et_pb_main_blurb_image {
overflow: hidden;
}

.case_studies_box img {
will-change: transform;
} */

.case_studies_column .case_studies_box{
width:48%;
position: relative;
margin-bottom: 0 !important;
}

.case_studies_column .case_studies_box:nth-child(odd){
margin-top: 80px;
}

.case_studies_column .case_studies_box .et_pb_blurb_content{
max-width: 100%;
}

.case_studies_column .et_pb_main_blurb_image{
margin-bottom: 10px;
transition: 0.4s;
overflow: hidden;
position: relative;
width: 100%;
}

.case_studies_column .et_pb_main_blurb_image .et_pb_image_wrap {
padding-bottom: 100%;
position: relative;
width: 100%;
transition: 0.4s;
overflow: hidden;
transform: scale(1.1);
}

.case_studies_column .et_pb_main_blurb_image .et_pb_image_wrap img{
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
left: 0;
top: 0;
transition: 0.4s;
max-width: none;
}

.case_studies_column .et_pb_blurb_content:hover .et_pb_main_blurb_image{
transition: 0.4s;
transform: scale(0.95);
}

.case_studies_column .et_pb_blurb_content:hover .et_pb_image_wrap{
transition: 0.4s;
transform: scale(1.15);
}


/****** Review Slider Is Here ******/

.review_slider .slick-track{
display: flex!important;
}

.review_slider .slick-slide{
    height: inherit !important;
}

.review_slider .review_box{
margin:0 15px;
}

.review_slider .review_box .et_pb_text_inner{
display: flex;
flex-direction: column;
height: 100%;
}

.review_slider .review_box .et_pb_text_inner p{
flex:1;
margin-bottom:30px;
}

/****** About Us Is Here ******/

.about_us_slider .et_pb_column .et_pb_module{
margin:0 15px 0!important;
}

.about_us_slider .et_pb_column .et_pb_module .et_pb_image_wrap {
display:block;
}

.about_us_slider .et_pb_column .et_pb_module .et_pb_image_wrap img{
width:100%;
}

.about_us_slider .et_pb_column .et_pb_module:nth-child(odd){
margin-top: 80px!important;
}

.about_us_slider .et_pb_module .et_pb_image_wrap{
overflow: hidden;
}

.about_us_slider .et_pb_module .et_pb_image_wrap{
transition: 0.4s;
transform: scale(1);
}

.about_us_slider .et_pb_module:hover .et_pb_image_wrap{
transition: 0.4s;
transform: scale(0.95);
}

.about_us_slider .et_pb_module .et_pb_image_wrap img{
transition: 0.4s;
transform: scale(1);
}

.about_us_slider .et_pb_module .et_pb_image_wrap:hover img{
overflow: hidden;
transition: 0.4s;
transform: scale(1.1);
}

/****** Blog Section Is Here ******/

.blog_post_parent .et_pb_post {
padding: 30px 30px;
position: relative;
margin-bottom: 0 !important;
}

.blog_post_parent .et_pb_post .et_pb_image_container{
margin: 0;  
}

.blog_post_parent .et_pb_post .et_pb_image_container a{
margin: 0;
position: absolute;
bottom: 20px;
left: 0;
right: 0;
max-width: 100%;
height: 210px;
width: 100%;
}

.blog_post_parent .et_pb_post .et_pb_image_container a img{
width: 100%;
height:0;
object-fit: cover;
position: absolute;
left: 0;
bottom: 0;
transition: all 0.6s;
}

.blog_post_parent .et_pb_post:hover .et_pb_image_container a img{    
transition: all 0.6s;
height:100%;
}

.blog_post_parent .et_pb_blog_grid .column:nth-child(3) .et_pb_post{
border: none;
}

.our_partner_logo img {
padding: 15px;
}

/*********** About Us CSS Is Here *************/

.images_wrapper{
position: relative;
overflow: hidden;
height: 80vh;
margin-top: 0;
}

.blurb_img{
position: absolute;
inset: 0%;
width: 100%;
height: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
}

.blurb_text{
margin-bottom: 0 !important;
min-height: 100vh;
display: flex;
align-items: center;
}

.blurb_text .et_pb_main_blurb_image{
display: none;
}

/*********** Solutions CSS Is Here *************/

.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image {
max-width: 60%;
width: 100%;
margin-bottom: 0;
position: relative;
transform-origin: left center;
transition: 1.3s;
overflow: hidden;
transform: scale(1.05);
}

.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image .et_pb_image_wrap {
padding-bottom: 56.25%;
position: relative;
width: 100%;
transition: 0.4s;
overflow: hidden;
transform: scale(1);
}

.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image img{
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
left: 0;
top: 0;
transition: 0.4s;
max-width: none;
}

.solutions_grid_box .et_pb_blurb_content .et_pb_blurb_container{
max-width: 35%;
width: 100%;
/* padding-left: 5%; */
transform: matrix(1, 0, 0, 1, -40, 0);
transition: 0.9s;
}

.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image:hover .et_pb_image_wrap {
transition: 0.4s;
transform: scale(0.95);
}

.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image:hover .et_pb_image_wrap img{
transition: 0.4s;
transform: scale(1.05);
}

.solutions_grid_box.in-screen .et_pb_blurb_content .et_pb_main_blurb_image{
transition: 1.3s;
transform: scale(1);
}

.solutions_grid_box.in-screen .et_pb_blurb_content .et_pb_blurb_container{
transform: matrix(1, 0, 0, 1, 0, 0);
transition: 0.9s;
}

.solutions_grid_box  .et_pb_blurb_content{
display: flex !important;
align-items: center;
justify-content: space-between;
}

/*********** About Us CSS Is Here *************/

.timeline_slider .slick-track::before {
content: '';
position: absolute;
left: 0;
top: 7px;
width: 100%;
height: 1px;
background: rgb(0 0 0 / 20%);
}

.timeline_slider .et_pb_module {
padding: 55px 55px 0 55px;
}

.timeline_slider .et_pb_module .et_pb_text_inner > h3{
word-wrap: normal;
}

.timeline_slider .et_pb_module:before{
content: '';
position: absolute;
left: 55px;
top: 0;
width: 16px;
height: 16px;
border-radius: 50%;
background: #3282eb;
}

/*********** Our Process CSS Is Here *************/

.our_process .slick-track::before {
content: '';
position: absolute;
left: 0;
top: 88px;
width: 100%;
height: 1px;
background: rgb(0 0 0 / 20%);
}

.our_process .et_pb_module {
padding: 0 55px 0 65px;
}

.our_process .et_pb_module:before{
content: '';
position: absolute;
left:62px;
top: 80px;
width: 16px;
height: 16px;
border-radius: 50%;
background: #3282eb;
}

.our_process .et_pb_module h2{
margin-bottom: 60px;
}

/*********** Team Slider CSS Is Here *************/

.team_blurb{
position: relative;
max-width: 400px;
width: 100%;
margin: 0 15px 0;
}

.team_blurb .et_pb_blurb_content{
max-width: 400px;
width: 100%;
margin:0 auto;
}

.team_blurb .et_pb_blurb_content .et_pb_main_blurb_image{
max-width: 100%;
width: 100%;
height: 529px;
position: relative;
z-index: 9;
}

.team_blurb .et_pb_main_blurb_image .et_pb_image_wrap {
width: 100%;
height: 100%;
transition: all 0.5s;
transform-origin: left top;
z-index: 4;
position: absolute;
top: 0;
left: 0;
}

.team_blurb:hover .et_pb_main_blurb_image .et_pb_image_wrap {
width: 115px;
height: 115px;
transition: all 0.5s;
transform-origin: left top;
z-index: 4;
position: absolute;
top: 30px;
left: 30px;
border-radius:50%;
}

.team_blurb .et_pb_main_blurb_image .et_pb_image_wrap img{
width: 100%;
height: 100%;
object-fit: cover;
object-position: 75% 0;
}

.team_blurb .et_pb_blurb_description h4{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 530px;
background: #E4E4E4;
display: flex;
align-items: center;
justify-content: center;
padding: 30px;
font-size: 28px;
line-height: normal;
font-weight: 600;
color:#000;
font-family: 'Proxima', sans-serif;
}











































































































/*********** Footer CSS Is Here *************/

.et-pb-contact-message ul{
display:none;
}

.et-pb-contact-message > p {
margin-bottom: 15px;
font-size: 16px;
color: #fff;
}

/*********** Footer CSS Is Here *************/

.footer_menu_list .et_pb_text_inner a{
margin-bottom: 5px;
display: inline-block;
}

.footer_service_list .et_pb_text_inner a{
margin-bottom: 14px;
display: inline-block;	
}

.footer_service_list .et_pb_text_inner a:last-child,
.footer_menu_list .et_pb_text_inner a:last-child{
margin-bottom: 0;
}



/*********** Media QUery Is Here *************/

@media(max-width:1199px){
.award_winning_grid {
width: 25%;
}
.award_winning_grid:nth-child(4n),
.award_winning_grid:nth-child(5n){
border-right:1px solid #f2f2f2;
}
.award_winning_grid:nth-child(5n){
border-top:1px solid #f2f2f2;
}
.award_winning_grid:nth-child(4n),
.award_winning_grid:nth-child(n+6){
border-bottom:0 solid #f2f2f2!important;
}
.award_winning_grid:nth-child(n+9){
border-bottom:1px solid #f2f2f2;
}
.images_wrapper {
display: none;
}
.blurb_text{
margin-bottom: 0 !important;
min-height: inherit;
display: initial;
align-items: inherit;
}
.blurb_text .et_pb_main_blurb_image{
display: block;
width: 30%;
}
.text_wrapper {
width: 100% !important;
}
.text_wrapper .blurb_text{
margin-bottom: 50px !important;
display: block;
}
.blurb_text .et_pb_blurb_container{
width: 68%;
margin-left: 2%;
}
.blurb_text .et_pb_blurb_content {
display: flex;
align-items: center;
}
}

@media(max-width:991px){
.award_winning_grid {
width: 33.333%;
}  
.award_winning_grid:nth-child(3n){
border-right:0 solid #f2f2f2;
border-bottom:1px solid #f2f2f2;
}
.award_winning_grid:nth-child(4n){
border-right:1px solid #f2f2f2;
border-top:1px solid #f2f2f2;
}
.award_winning_grid:nth-child(n+6){
border-bottom:1px solid #f2f2f2;
}
.award_winning_grid:nth-child(n+9){
border-bottom:0 solid #f2f2f2;
}   
.about_us_slider .et_pb_column .et_pb_module {
margin: 0 15px 0 !important;
}
}

@media(max-width:980px){
.blog_post_parent .column {
width: 100% !important;
}
.blog_post_parent .et_pb_post {
margin-bottom: 30px !important;
padding:0;
}
.blog_post_parent .et_pb_post .et_pb_image_container a {
position: relative;
bottom: initial;
left: initial;
right: initial;
height: auto;
}
.blog_post_parent .et_pb_post .et_pb_image_container a img {
height: auto;
object-fit: initial;
position: relative;
left: initial;
bottom:initial;
}
.blog_post_parent .et_pb_post .et_pb_image_container {
margin: 0 0 20px;
}
.solutions_grid_box  .et_pb_blurb_content{
flex-direction: column;
}
.solutions_grid_box .et_pb_blurb_content .et_pb_main_blurb_image {
max-width: 100%;
margin-bottom: 30px;
transform: scale(1);
}
.solutions_grid_box .et_pb_blurb_content .et_pb_blurb_container {
max-width: 100%;
padding-left: 0;
transform: initial;
}
.our_process .slick-track::before {
top: 70px;
}
.our_process .et_pb_module:before {
top: 62px;
}
}

@media(max-width:767px){
.award_winning_grid {
width:50%;
}  
.award_winning_grid:nth-child(odd){
border-right:1px solid #f2f2f2;
border-bottom: 1px solid #f2f2f2 !important;
}
.award_winning_grid:nth-child(even){
border-right:0 solid #f2f2f2;
} 
.award_winning_grid:nth-child(n+9){
border-bottom:0 solid #f2f2f2!important;
} 
.award_winning_grid:last-of-type{
border-bottom:0px solid #f2f2f2!important;
}
.award_winning_grid:nth-child(4n){
border-bottom: 1px solid #f2f2f2 !important;
}
.award_winning_grid:nth-child(5n) {
border-top: 0px solid #f2f2f2;
}
.case_studies_column .case_studies_box {
width: 100%;
margin-bottom: 45px !important;
}
.case_studies_column .case_studies_box:last-child{
margin-bottom: 0 !important;
}
.case_studies_column .case_studies_box:nth-child(odd) {
margin-top: 0;
}
.blurb_text .et_pb_blurb_content {
flex-direction: column;
}
.blurb_text .et_pb_main_blurb_image img,
.blurb_text .et_pb_main_blurb_image {
width: 100%;
}
.blurb_text .et_pb_blurb_container {
width: 100%;
margin-left: 0;
padding: 0;
}
.blurb_text {
margin-bottom: 35px !important;
display: block;
}
.timeline_slider .et_pb_module {
padding: 55px 30px 0 30px;
}
.timeline_slider .et_pb_module:before {
left: 30px;
}
.our_process .et_pb_module {
padding: 0 30px 0 30px;
}
.our_process .et_pb_module:before {
left:30px;
}
.text_wrapper .blurb_text {
margin-bottom: 70px !important;
}
.text_wrapper .blurb_text:last-of-type{
margin-bottom: 0 !important;
}
}

@media(max-width:575px){
    
}
