/*GENERIC*/
html{overflow-x:hidden!important;}

.elementor-widget-text-editor p {
    margin-bottom: 0;
}

/*HEADER*/



/*HOMEPAGE*/

/*icon box widgets container*/
.box_container {
    transition: transform 0.3s; 
}

.box_container:hover {
    transform: translateY(-10px); 
}

/*icon box widgets*/

h3.elementor-icon-box-title {
    margin: 0px;
}

.custom_icon_box svg {
    filter: brightness(0) saturate(100%) invert(7%) sepia(15%) saturate(7090%) hue-rotate(225deg) brightness(129%) contrast(105%);
}

.custom_icon_box .elementor-icon:after {
	transition: transform 0.3s;
    position: absolute;
    top: -10px;
    left: 28px;
    content: "";
    opacity: 1;
    border-radius: 50%;
    background-color: #203f991f;
    width: 36px;
    height: 36px;
}

.box_container .custom_icon_box .elementor-icon:hover:after {
    transform: translateY(-10px);
}


@media(max-width:767px){
.custom_icon_box .elementor-icon:after {
		top: 9px;
		left: 0;
		width: 60px;
		height: 60px;
		margin: 0 auto;
		right: 0;
	}
}

/*Services*/

/*shapes*/
.divider_01 {
    background-color: #151343;
    width: 30px;
    height: 200px;
    border-radius: 16px;
    overflow: hidden;
    z-index: 1;
}

.divider_02 {
    background-color: #203F99;
    width: 30px;
    height: 200px;
    border-radius: 16px;
    overflow: hidden;
    z-index: 1;
}

/*Activities*/

/*boxes & icons*/
.icon_hover .elementor-icon::after {
    transition: transform 0.3s;
    position: absolute;
    top: 5px;
    left: 0;
	right: 0;
    margin: 0 auto;
    content: "";
    border-radius: 50%;
    background-color: #203f991f;
    width: 90px;
    height: 90px;
    opacity: 0;
	z-index:0;
}

.activity_box .icon_hover .elementor-icon:hover:after {
    transform: scale(1.4)!important;
    opacity: 1!important;
}

/**/
.box_icon_flip span.elementor-icon:hover {
    transform: scale(1.1);
}


.box_icon_flip span.elementor-icon:after {
    transition: transform 0.3s;
    position: absolute;
    top: -5px;
    left: -5px;
    content: "";
    border-radius: 50%;
    background-color: #dce5ff1f;
    width: 90px;
    height: 90px;
    opacity: 0;
    z-index: 0;
}

.box_icon_flip span.elementor-icon:hover:after {
    transform: scale(1.2)!important;
    opacity: 1!important;
}

/*SERVICES PAGE*/
.image_services_effect {
    transition: 0.4s ease-in;
 }
 
 .image_services_effect img {
     transition: 0.3s ease-in;
 }
 
 .image_services_effect img:hover {
     filter: brightness(0.5);
 }
 
 .image_services_effect:hover:after {
     content: url(https://nissoy2.com/wp-content/uploads/2025/01/plus.svg);
     filter: brightness(0) saturate(100%) invert(100%) sepia(10%) saturate(10%) hue-rotate(253deg) brightness(104%) contrast(104%);
     zoom: 0.06;
     position: absolute;
     top: 150vh;
     left: 0;
     margin: 0 auto;
     width: 100%;
     z-index: 1!important;
 }


/*SERVICES INNER PAGES*/

/*services image text section*/
.services_section li {
    margin-bottom: 12px;
    margin-top: 12px;
}

/*Q&A accordion*/
.eael-accordion-list {
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    border-radius: 10px
}

/*services sidebar*/
.services_menu li.elementor-icon-list-item {
    padding: 0px 10px !important;
}

.services_menu a {
	position: relative;
	z-index: 2 !important;
	padding: 10px !important;
    
}
.services_menu a.elementor-item:after {
    position: absolute!important;
    top: 0px;
    right: -24px;
    content: "";
    width: calc(100% + 48px);
    height: 100%;
    border-radius: 8px;
    background-color: #fff;
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.05);
    width: 0;
    transition: width 0.5s, box-shadow 0.5s;
    z-index: -1;
}

.services_menu a.elementor-item:hover:after {
    width: calc(100% + 46px);
    left: -24px;
    box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.05);
}


/*shapes dividers*/
.divider_03 {
    background-color: #151343;
    width: 30px;
    height: 300px;
    border-radius: 16px;
    overflow: hidden;
    z-index: 1;
}

.divider_04 {
    background-color: #203F99;
    width: 30px;
    height: 300px;
    border-radius: 16px;
    overflow: hidden;
    z-index: 1;
}

/*COMPANY PAGE*/
.divider_company {
    background-color: #151343;
    width: 20px;
    height: 180px;
    border-radius: 16px;
    overflow: hidden;
    z-index: 1;
}
