body {
    padding: 0;
    --var--color--red: #FE431B;
    --var--color--blue: #0251AB;
    --var--color--text: #22252B;
    --var-color--title: #00A0DF;
    background-image: url("/assets/front/images/Frame\ 31.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{
    line-height: 1.5em;
}
.video-home video {
    width: 100%;
}

.container {
    max-width: 1440px;
}

.row-two-column {
    display: flex;
    justify-content: space-between;
}
.row-two-column.gap-40{
    gap: 40px;
}
.row-four-column {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.row-five-column{
    display: grid;
    grid-template-columns: auto auto auto auto auto;
    gap: 20px;
}

.line-title {
    height: 40px;
    width: 2px;
    background-color: var(--var--color--red);
}

h2 {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 50px;
}

p {
    font-size: 16px;
    font-weight: 400;
}

a {
    text-decoration: none;
    color: unset;
}

.item-service {
    text-align: center;
    padding: 10px;
}

.item-service img {
    width: auto;
    height: 200px;
    margin-bottom: 40px;
    object-fit: contain;
    transition: .9s;
}
.item-service img:hover{
    transform: translateY(10px);
}
.item-service h3 {
    font-weight: 800;
    color: var(--var--color--blue);
    text-decoration: none;
    font-size: 20px;
}

.row-four-column.gap-40 {
    column-gap: 40px;
}

.row-four-column.gap-28 {
    gap: 28px;
}
.row-five-column.gap-20{
   gap: 20px;
}
.bg-banner-blue {
    background-image: url("/assets/front/images/Group 95.png");
    min-height: 554px;
    display: flex;
    align-items: center;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
}

.bg-blue-gradient {
    background-color: transparent;
    background-image: linear-gradient(205deg, #00A0DF 0%, #0251AB 100%);
}

.border-3 {
    border-radius: 3px;
}

.btn-link {
    font-weight: 700;
    text-transform: uppercase;
    color: var(--var--color--red);
    background-color: #FFFFFF;
    border-style: solid;
    border-width: 2px 2px 2px 2px;
    border-color: var(--var--color--red);
    border-radius: 20px 20px 20px 20px;
    padding: 7px 20px;
    font-size: 15px;
    text-decoration: none;
}

.btn-link:hover {
    background-color: var(--var--color--red);
    color: white;
}

.item-counter {
    text-align: center;
    max-width: 272px;
}

.counter-number-wrapper {
    display: flex;
    justify-content: center;
}

.counter-number,
.counter-suffix {
    color: #00000000;
    font-size: 60px;
    font-weight: 600;
    -webkit-text-stroke-width: 3px;
    stroke-width: 3px;
    -webkit-text-stroke-color: #FFFFFF;
    stroke: #FFFFFF;
}

.counter-title {
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.2em;
}

.bg-blue-gradient p {
    color: #FFFFFF;
    font-size: 15px;
    font-weight: 700;
    line-height: 30px;
}

.bg-blue-gradient p.title-value {
    color: #FFFFFF;
    font-size: 25px;
    font-weight: 700;
    text-shadow: 4px 0px 4px rgba(0, 0, 0, 0.3);
}
.bg-shadow{
    background: white;
    border-radius: 3px;
    box-shadow: 0 2px 50px 0 rgba(0, 0, 0, 0.1);
    padding: 20px;
}
.min-h-345 {
    height: 345px;
    padding: 40px;
}

.row-nos-valeurs .min-h-345:nth-child(2) {
    margin-top: -20px;
}

.row-nos-valeurs .min-h-345:nth-child(3) {
    margin-top: -40px;
}

.row-nos-valeurs .min-h-345:nth-child(4) {
    margin-top: -60px;
}

.mt-70 {
    margin-top: 70px;
}

.text-webkit-right {
    text-align: -webkit-right;
}

.text-webkit-center {
    text-align: -webkit-center;
}

.img-carousel {
    position: relative;
}

.img-carousel .back-content {
    display: none;
    cursor: pointer;
    position: absolute;
    top: 0;
    width: 100%;
    height: 300px;
    background-color: #0000006e;
    text-align: center;
    padding: 10px;
    -webkit-animation: scale-up-center 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
    animation: scale-up-center 1.2s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

.img-carousel:hover .back-content {
    display: grid;
    align-content: center;
   
}

.slick-slide img {
    margin: auto;
}

.img-carousel .img-bg {
    height: 300px;
}

.img-carousel p {
    color: white;
    font-weight: 600;
}

.img-carousel .title-carousel {
    font-weight: 700;
    font-size: 2vw;
    line-height: normal;
}

.img-carousel .btn-link {
    width: 170px;
    margin: auto;
    text-transform: unset;
}

.slogan {
    font-size: 40px;
    font-weight: 700;
    line-height: 54px;
    text-align: center;
    color: var(--var--color--red);
    text-transform: none;
}

.gap-20 {
    gap: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.bg-footer {
    padding-bottom: 30px;
    padding-top: 50px;
    margin-top: 30px;
    font-size: 14px;
}

.bg-footer ul {
    list-style: none;
    padding: 0;
    line-height: 2;
}

.bg-footer ul li i {
    margin-right: 10px;
}

.bg-footer hr {
    width: 100%;
}

.bg-footer .logo-footer {
    max-width: 234px;
}


.bg-footer .row-three-column {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    align-items: end;
}

.bg-footer .social-footer {
    font-size: 30px;
    gap: 20px;
    display: flex;
    justify-content: flex-end;
}

.bg-footer .title-menu {
    color: var(--var-color--title);
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 20px;
}

.logo {
    height: 50px;
    width: auto;
}

header .toggle-canvas {
    background: linear-gradient(203.96deg, #00A0DF 0%, #0251AB 100%);
    box-shadow: 0px 4px 4px 0px #00000040;
    width: 50px;
    height: 50px;
    cursor: pointer;
    border-radius: 50px;
    display: flex;
    text-align: center;
    vertical-align: middle;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
    position: fixed;
    right: 15px;
    top: 20px;
}

header .toggle-canvas:hover {
    transform: scale(1.1);
}

.menu-off-canvas {
    position: fixed;
    right: 0;
    background: linear-gradient(191.14deg, #00A0DF 1.23%, #0251AB 90.63%);
    height: 100%;
    top: 0;
    z-index: 3;
    width: 600px;
    padding: 30px 40px 20px 40px;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: auto;
}
.menu-off-canvas a:hover,.menu-off-canvas a.active{
    color: var(--var--color--red);
}
.menu-off-canvas .close-menu {
    font-size: 24px;
    text-align: right;
    width: 100%;
    display: block;
    margin-bottom: 80px;
    color: white;
}

.menu-off-canvas .close-menu i {
    cursor: pointer;
}

.menu-off-canvas .close-menu i:hover {
    color: black;
}

.menu-off-canvas .search {
    position: relative;
    border-radius: 100px;
    border: 0;
    margin-bottom: 10px;
    height: 50px;
    width: 50px;
    background: white;
}

.menu-off-canvas .search input {
    width: 100%;
    height: 50px;
    padding: 15px;
    display: none;
}

.menu-off-canvas .search i {
    color: #3584B8;
    font-size: 20px;
    position: absolute;
    right: 15px;
    top: 15px;
    z-index: 3;
    cursor: pointer;
}

.menu-off-canvas .menu-header,
.menu-footer ul {
    list-style: none;
    padding: 0;
}

.menu-off-canvas .menu-header li {
    margin-bottom: 10px;
    font-size: 25px;

}

.menu-off-canvas span {
    color: #83A5D9;
    font-size: 15px;
}

.menu-footer>div:first-child {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.menu-footer ul {
    margin-bottom: 0;
}

.menu-footer ul li {
    font-size: 20px;
}

.bg-banner-blue {
    opacity: 0;
    transform: translate(0, 10vh);
    transition: all 1s;
}

.fadein {
    opacity: 1;
    transform: translate(0, 0);
}

.translate {
    position: relative;
    cursor: pointer;
}

.translate .list-translate {
    position: absolute;
    bottom: 40px;
    right: -3px;
    display: none;
}
.mt-200{
    margin-top: 200px;
}
.mt-100{
    margin-top: 100px;
}
.mb-100{
    margin-bottom: 100px;
}
.mw-540{
    max-width: 540px;
}
.mw-500{
    max-width: 540px;
}
.slick-img{
    width: 50%;
}
.slick-img img{
    width: 100%;
}
.text-orange{
    color: var(--var--color--red);
    font-size: 30px;
    font-weight: 600;
}
.color-orange{
    color: var(--var--color--red);
}
.item-member{
    text-align: center;
    padding: 0;
    margin-bottom: 50px;
}
.item-member h3, .listing-item h3{
    font-weight: bold;
    font-size: 16px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.content-service{
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
.bg-service{
    border-radius: 15px;
    border: 1px solid var(--var--color--blue);
    box-shadow: 0px 0px 4px 0px #00A0DF;
    width: 270px;
    height: 270px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transform: rotate(45deg);
}
.bg-service:hover{
    scale: 1.05;
    transition: .5s;
}
.bg-service .content{
    text-align: center;
    transform: rotate(-45deg);
}
.bg-service h2{
    font-size: 32px;
    margin-bottom: 0;
    margin-top: 20px;
}
.bg-service img{
    width: 136px;
}
.bg-service.it{
    position: absolute;
    left:250px;
    top: 200px;
}
.bg-service.ia{
    position: absolute;
    right:250px;
    top: 200px;
}
.bg-service.be{
    margin-top: 130px;
}
.list-be{
    display: flex;
}
.list-be .img-carousel{
    width: 100%;
}
.list-be .img-carousel img{
    height: auto;
    width: 100%;
}
.list-be .img-carousel .back-content{
    height: 100%;
}
.p-50{
    padding: 50px;
}
.row-it .bg-blue-gradient{
    display: flex;
    padding:20px;
    align-items: center;
    gap: 20px;
    width: 100%;
}
.row-it .bg-blue-gradient img{
    width: 65.5px;
}
.row-it .bg-blue-gradient .title-value{
    font-size: 20px;
    margin-bottom: 0;
    line-height: 1.2;
}
.w-200{
    width: 200px;
}
.d-flex-center{
    display: flex;
    align-items: center;
}
.nous-marques{
    width: 75%;
    margin:auto;
    margin-top: 150px;
}

.nous-marques .img-carousel .img-bg{
    width: 100%;
    object-fit: cover;
}
.listing-job{
    display: grid;
    gap: 20px;
    grid-template-columns: 1fr 1fr 1fr;
}
.listing-job img{
    height: 220px;
    width: 100%;
    object-fit: cover;
}
.listing-job div.content-new{
    padding:20px 40px;
}
.listing-item{
    background: white;
    box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
    padding: 30px;
    gap:5px;
    display: flex;
    flex-direction: column;
    cursor: pointer;
}
.listing-item ul{
    list-style: none;
    padding: 0;
    font-size: 15px;
}
.listing-item ul i{
    width: 20px;
}
.listing-item h3{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
            line-clamp: 2; 
    -webkit-box-orient: vertical;
    height: 55px;
}
.listing-item .description{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 4; /* number of lines to show */
            line-clamp: 4; 
    -webkit-box-orient: vertical;
    height: 130px;
}
.listing-item .time-published{
    font-style: italic;
    color: #22252B66;
}
.pagination{
    place-content: center;
}
.page-item .page-link{
    border: 0;
    border-radius: 50%;
    color: black;
    margin: 0 10px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.page-item .page-link.active,.page-item .page-link:hover{
    color: white;
    background: var(--var--color--blue);
    border-radius: 50%;
}
.filter-job{
    border: 1px solid #22252B4D;
}
.filter-job select{
    border: 0;
    border-radius: 0;
    outline: none;
    font-weight: 600;
    font-size: 15px;
    padding: 15px;
}
.filter-job select:focus{
    border: 0;
    box-shadow: none;
}
.filter-job select:first-child{
    border-left: 1px solid #22252B4D;
}
.row-left,.row-right{
    width: 50%;
}
.translate-pc .btn-secondary{
    background: none;
    border: none;
    padding: 0;
    color: black;
}
.translate-pc img{
    margin-right: 5px;
}
.translate-pc .dropdown-menu{
    padding: 5px;
    max-width: 150px;
}
.translate-pc li{
    margin-bottom: 5px;
}
.area-mobile{display: none;}
.back-arrow{
    color: black;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 0;
}
.back-arrow i{
    color: var(--var--color--red);
}
.content-news img{
    max-width: 100%;
}
.download-link{
    color: var(--var--color--red);
    border: 2px solid var(--var--color--red);
    font-weight: bold;
    padding: 5px 10px;
    text-transform: uppercase;
    font-size: 15px;
}
.download-link i{
    margin-right: 5px;
}
.download-link:hover{
    color: white;
    background: var(--var--color--red);
}
.chatbot-html{
    position: fixed;
    z-index: 1;
    right:80px;
    bottom: 10px;
    display: none;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}
.toggle-chabot{
    position: fixed;
    z-index: 1;
    right: 10px;
    bottom: 15px;
    font-size: 30px;
    color: white;
    padding:7px 15px;
    border-radius: 50%;
    background: var(--var--color--blue);
    cursor: pointer;
}
.close-chatbot{
    position: absolute;
    right: 10px;
    top: 7px;
    z-index: 3;
    color: var(--var--color--red);
    cursor: pointer;
}
.content-thankyou{
    box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
    border-radius: 5px 5px 5px 5px;
    background-color: #FFFFFF;
    padding: 30px;
    text-align: center;
    max-width: 650px;
    margin: auto;
    display: block;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.content-thankyou h4{
    color: var(--var--color--red);
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 50px;
}
.slick-next:before, .slick-prev:before{
    color: black;
}
.logo-flag{
    width: 35px;
    height: auto;
}
.slick-dots li button:before {
    font-size: 12px;
}
.slick-dots li button:before{
    opacity: 1;
    color: var(--var--color--blue);
}
.slick-dots li.slick-active button:before{
    color: var(--var--color--red);
    opacity: 1;
}
.slick-prev:before {
    content: "\f053"; /* Unicode for Font Awesome's left arrow */
    font-family: 'Font Awesome 5 Free'; /* Specify the font family for Font Awesome 5 */
    font-weight: 700; /* Ensure the icon is bold */
    font-size: 28px; /* Adjust the size as needed */
}

.slick-next:before {
    content: "\f054"; /* Unicode for Font Awesome's right arrow */
    font-family: 'Font Awesome 5 Free'; /* Specify the font family for Font Awesome 5 */
    font-weight: 700; /* Ensure the icon is bold */
    font-size: 28px; /* Adjust the size as needed */
}
.img-be-title{
position: absolute;
top: 0;
max-width: 18vw;
right: 0;
}
.mw-50{
    max-width: 50%;
}
.lang-hoop{
    top: 75px;
}
.max-w-900{
    max-width: 900px;
}
.h-30vh{
    height: 30vh;
}
.color-blue{
    color: #0251AB;
}
.size-48{
    font-size: 48px;
}
.max-w-650{
    max-width: 650px;
}
.size-24{
    font-size: 24px;
}
.bg-orange ,.btn.bg-orange:hover{
    background: #FE431B;
}
.border-10 {
    border-radius: 10px;
}
.size-30 {
    font-size: 30px;
}
.box-shadow{
    box-shadow: 0px 0px 10px 0px #00000014;
}
body.modal-open{
    overflow: auto!important;
}
.slick-carousel-modal img{
    max-width: 300px;
    height: 300px;
    object-fit: contain;
}
