/*
 css file

*/
@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Ubuntu:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');
/************Global*************/
:root {
    --blue-color: #003097;
    --dark-blue-color: #002064;
    --light-blue-color: #0070AD;
    --text-color: #707070;
    --text-color2: #242424;
    --white-color: #fff;
    --black-color: #232323;
    --black-color2: #2A2A2A;
    --grey-color: #EEEEEE;
    --bg-grey: #A6A6A6;
    --bg-grey1: #E8E8E8;
    --bg-grey2: #4E4E4E;
    --bg-field: #F2F2F2;
    --medium-blue: #0022F5;
    --green-color: #00B944;
    --orange-color: #F17700;
    --orange-light-color: #FF7E0087;
    --field-color: #5D5D5D;
    --field-color-btn: #F5F5F4;
    --aside-bg-color: #E0E3ED;
    --text-23: 23px;
    --text-10: 10px;
    --text-11: 11px;
    --text-12: 12px;
    --text-13: 13px;
    --text-14: 14px;
    --text-15: 15px;
    --text-20: 20px;
    --text-24: 24px;
    --text-25: 25px;
    --text-28: 28px;
    --text-18: 18px;
    --text-16: 16px;
    --text-48: 48px;
    --text-40: 40px;
    --text-45: 45px;
    --text-50: 50px;
    --text-30: 30px;
    --text-35: 35px;
    --text-60: 60px;
    --text-78: 78px;
    --text-72: 72px;
    --text-32: 32px;
    --border-radius-4: 4px;
    --border-radius-5: 5px;
    --border-radius-10: 10px;
    --border-radius-8: 8px;
    --border-radius-12: 12px;
    --border-radius-6: 6px;
    --border-radius-20: 20px;
    --border-radius-30: 30px;
    --font-barlow: "Barlow", sans-serif;
    --fw-500: 500;
    --fw-300: 300;
    --fw-400: 400;
    --fw-600: 600;
    --fw-700: 700;
  }
body{
    margin: 0;
    transition: all .3s ease-in;
    color: var(--text-color);
    font-size: var(--text-14);
    line-height: var(--text-18);
    word-wrap: break-word;
    font-family: var(--font-barlow);
    background-color: var(--field-color-btn);
}

h1,
h2{
    
    
    font-weight: 700;
}
p{
    margin-top: 0;
    margin-bottom: 0.75rem;
}
p:last-child {
    margin-bottom: 0 !important;
}
*{
    min-height: 0;
    min-width: 0;
    transition: all .3s ease-in;
    box-sizing: border-box;
}
.o_relative{
    position: relative;
}
.o_container{
    max-width: 1404px;
    padding: 0 20px;
    margin: 0 auto;
}
.form-error, .form-errors li {
    color: red;
    font-size: 0.9em;
}
.o_flex{
    display: flex;
    flex-wrap: wrap;
}
.o_bg-white{
    background-color: var(--white-color);
}
img{
    max-width: 100%;
    display: block;
    height: auto;
}
.o_section .o_content-page figure img{
    height: 90% !important;
}
.o_text-uppercase{
    text-transform: uppercase;
}
.o_underline-orange::after{
    content: '';
    display: block;
    width: 80px;
    height: 4px;
    background-color: var(--orange-color);
    margin: 0 auto;
}
.o_text-center{
    text-align: center;
}
form button[type="submit"],
.o_section .o_btn-blue{
    background-color: var(--blue-color);
    border-color: var(--blue-color);
    letter-spacing: 0.16px;
    padding: 12px 40px;
    font-size: var(--text-16);
    font-weight: var(--fw-300);
    font-family: var(--font-barlow);
    border: none;
    color: var(--field-color-btn);
    cursor: pointer;
}
form .o_btn-black,
.o_section .o_btn-black{
    color: var(--white-color);
    background-color: var(--black-color);
}
form button[type="submit"]:hover,
.o_section .o_btn-blue:hover,
form .o_btn-black:hover,
.o_section .o_btn-black:hover{
    background-color: var(--dark-blue-color);
    border-color: var(--dark-blue-color);
}
.o_text-orange{
    color: var(--orange-color);
}
.o_nopb {
    padding-bottom: 0 !important;
}

/**********Header********/
.o_header{
    background: var(--blue-color);
    background: linear-gradient(90deg, var(--blue-color) 0%, var(--dark-blue-color) 100%);
    color: var(--white-color);
    /*padding: 25px 0;*/
    position: relative;
}
.o_header .o_header-top{
    justify-content: flex-end;
    padding-bottom: 0;
    gap: 20px;
    padding-right: 18px;
    padding-top: 25px;
}
#o_menu-mobile:not(.mm-menu--opened) {
    width: 0;
    transition: all .4s ease;
    display: none;
}

.o_header .o_header-top .o_links-socials{
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 10px;
    align-items: center;
    padding-right: 20px;
    border-right: 1px solid #fff;
}
.o_header .o_header-top .o_links-socials a{
    display: inline-flex;
    width: 22px;
    height: 22px;
    border: 1px solid #fff;
    border-radius: 50px;
    color: #fff;
    justify-content: center;
    align-items: center;
    font-size: var(--text-12);
    text-decoration: none;
}
.o_header .o_header-top .o_links-socials a:hover{
    background-color: var(--blue-color);
    border-color: var(--blue-color);
}
.o_header .o_header-top .o_links-socials a span{
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 12px;
    height: 12px;
}
.o_header .o_header-top .o_links-socials .o_logo-linkedin span{
    background-image: url('../../images/logo-white-linkedin.svg');
}
.o_header .o_header-top .o_links-socials .o_logo-youtube span{
    background-image: url('../../images/logo-white-youtube.svg');
}
.o_header .o_header-top .o_links-socials .o_logo-xtwitter span{
    background-image: url('../../images/logo-white-x.svg');
}
.o_header  .o_wrap-drop {
    cursor: pointer;
    position: relative;
    width: auto;
    z-index: 1;
}
.o_header .o_header-top .o_menu-lang span {
    font-size: var(--text-14);
    line-height: 18px;
    text-transform: uppercase;
}
.container-not-found {
    padding: 40px 20px;
    max-width: 600px;
    margin: auto;
}

.title-not-found {
    font-size: 2.5em;
    margin-bottom: 10px;
    color: #333;
    text-align: center;
}

.image-not-found {
    width: 100%;
    margin-top: 80px;
}

.sub-title {
    font-size: 1.8em;
    margin-bottom: 15px;
    font-weight: bold;
    color: #333;
    text-align: center;
}

.description-not-fount {
    font-size: 1em;
    color: #666;
    text-align: center;
}

.buttons-not-found {
    margin-top: 25px;
}
.m_badge-category {
    display: inline-block;
    background-color: #00345F;
    color: #fff;
    font-size: 14px;
    padding: 2px 8px;
    border-radius: 12px;
    margin-bottom: 8px;
    text-transform: uppercase;
    font-weight: 600;
    width: fit-content;
}
.btn-not-found {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 10px;
    padding: 12px 25px;
    border-radius: 25px;
    text-decoration: none;
    font-weight: bold;
    transition: 0.3s ease;
}

.btn-not-found.dark {
    background-color: #00345f;
    color: #fff;
}

.btn-not-found.dark:hover {
    background-color: #000;
}

.btn.light {
    background-color: #fff;
    color: #333;
    border: 2px solid #333;
}

.btn.light:hover {
    background-color: #f1f1f1;
}

.credit {
    font-size: 0.8em;
    margin-top: 40px;
    color: #888;
}

.credit a {
    color: #666;
    text-decoration: none;
}
.o_header  .o_menu-lang{
    background-color: var(--white-color);
    padding: 4px 13px;
    border: rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 35px 0px rgba(0, 0, 0, 0.07);
    gap: 4px;
    border-radius: 3px;
    display: none;
    left: 20px;
    list-style: none;
    margin: 0;
    opacity: 0;
    position: absolute;
    top: 100%;
    z-index: 2;
    width: 50px;
    display: flex;
    flex-direction: column;
    height: 0;
}
.o_header .o_wrap-drop.o_active .o_menu-lang {
    display: block;
    opacity: 1;
    height: auto;
}
.o_header .o_mobile-menu a{
    text-decoration: none;
    color: var(--white-color);
    font-size: var(--text-30);
}
.o_header .o_wrap-drop.o_active .o_menu-lang a{
    text-decoration: none;
    color: var(--black-color);
    letter-spacing: 0;
}
.o_header .o_wrap-drop.o_active .o_menu-lang a:hover{
    font-weight: var(--fw-500);
    text-decoration: none;
}
.o_header .o_wrap-drop::after {
    content: "";
    position: absolute;
    top: 8px;
    right: -15px;
    background: url('../../images/icon-arrow.svg') no-repeat transparent;
    width: 11px;
    height: 6px;
    background-size: contain;
}
.o_header .o_header-main {
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.o_header .o_main-menu ul{
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 0;
}
.o_header .o_main-menu > ul > li > a{
    text-decoration: none;
    font-size: var(--text-18);
    font-weight: 600;
    text-transform: uppercase;
    color: var(--white-color);
    display: inline-block;
    line-height: 22px;
    position: relative;
    padding-bottom: 8px;
}
.o_header .o_main-menu > ul > li > a::after{
    content: '';
    display: block;
    position: absolute;
    width: 0;
    background-color: var(--white-color);
    bottom: 0;
    border-radius: 15px;
    left: 0;
    height: 4px;
}
.o_header .o_main-menu > ul > li:hover > a::after,
.o_header .o_main-menu > ul > li > a:hover::after,
.o_header .o_main-menu > ul > li.o_nav-item-active > a::after{
    width: 100%;
}
.o_header .o_main-menu > ul > li > a::before{
    content: '';
    display: block;
    height: 16px;
    position: absolute;
    right: -25px;
    top: 4px;
    width: 2px;
    background-color: var(--white-color);
}
.o_header .o_main-menu > ul > li:last-child > a::before{
    display: none;
}
.o_header .o_main-menu > ul > li{
    padding: 23px 25px;
}
.o_header .o_main-menu > ul > li.o_nav-has-children{
    padding-right: 50px;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > a::before{
    right: -50px;
}
.o_header .o_main-menu > ul > ul{
    display: none;
}
.o_header .o_main-menu > ul > li > ul{
    position: absolute;
    left: 0;
    width: 100%;
    top: 100%;
    background-color: var(--field-color-btn);
    z-index: 5;
    display: none;
}
.o_header .o_main-menu > ul > li.o_nav-has-children:hover > ul{
    display: flex;
}
.o_header .o_main-menu ul li .o_icon-indicator{
    position: absolute;
    right: -30px;
    top: 0;
}
.o_header .o_main-menu ul li.o_nav-html{
    background-color: #E8E8E8;
    padding: 40px;
    color: var(--black-color);
    font-size: var(--text-18);
    line-height: 34px;
    max-width: 466px;
    
}
.o_header .o_main-menu ul li.o_nav-html h4{
    font-size: var(--text-25);
    color: var(--blue-color);
    line-height: 30px;
    margin-bottom: 20px;
    font-weight: var(--fw-600);
}
.o_header .o_main-menu ul li .o_submenu li a{
    text-decoration: none;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li{
    padding: 40px;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li.o_nav-has-children{
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: relative;
}

.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li > ul > li > a{
    font-size: var(--text-18);
    line-height: 22px;
    color: #535353;
    font-weight: var(--fw-500);
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li > ul > li > a{
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li > ul > li > a:hover{
    text-decoration: underline;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul > li > ul > li.o_show-submenu-active > a::after{
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    position: absolute;
    right: -30px;
    top: 0;
    width: 6px;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > ul li a:hover{
    color: var(--blue-color);
}
.o_header .o_main-menu > ul > li.o_nav-has-children:hover > ul,
.o_header .o_main-menu ul li .o_show-submenu-active .o_submenu{
    display: flex;
    height: 300px;
}
.o_header .o_main-menu ul li .o_show-submenu-active .o_submenu{
    flex-direction: column;
    background-color: var(--white-color);
    padding: 20px;
    max-width: 664px;
    min-width: 500px;
    position: absolute;
    left: calc(100% + 40px);
    top: 0;
    height: 100%;
    display: none;
}
.o_header .o_main-menu ul li .o_show-submenu-active.show .o_submenu{
    display: flex;
}
.o_header .o_main-menu ul li .o_show-submenu-active .o_submenu li a{
    font-size: var(--text-16);
    line-height: 30px;
    font-weight: var(--fw-400);
    color: var(--black-color);
    text-decoration: none;
    position: relative;
}
.table-scroll.nowrap.tabcontent-map {
    font-size: 15px;
}
ul.stats-project-popup li {
    display: inline-block;        /* Pour qu'ils s'affichent sur une ligne si possible */
    padding: 0.25em 0.75em;      /* Espace à l'intérieur du badge */
    margin: 0.2em;                /* Petit espacement entre les badges */
    background-color: #007bff;    /* Couleur de fond du badge */
    color: #fff;                  /* Couleur du texte */
    border-radius: 12px;          /* Arrondir les coins pour l'effet badge */
    font-size: 14px;            /* Taille de texte réduite */
    font-weight: 500;             /* Légèrement en gras */
    list-style: none;
}
.o_header .o_main-menu > ul > li.o_nav-has-children > li a:hover,
.o_header .o_main-menu ul li .o_show-submenu-active > a:hover{
    color: var(--blue-color);
}
.o_header .o_main-menu .o_menu-vertical{
    display: flex;
    gap: 15px;
    flex-direction: column;
}
.o_header .o_btn-contact{
    padding-right: 20px;
    border-right: 1px solid var(--white-color);
}
.o_header .o_btn-contact a{
    background-color: var(--orange-color);
    padding: 6px 15px;
    display: inline-block;
    text-transform: uppercase;
    color: var(--white-color);
    text-decoration: none;
    font-size: var(--text-14);
    font-weight: 400;
}
.o_header .o_btn-contact:hover a{
    background-color: var(--white-color);
    color: var(--orange-color);
}
.o_header-contact-lang > div{
    align-items: center;
    gap: 20px;
}
header.o_header-nobg{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 2;
    background: none transparent;
    padding-bottom: 0;
}
.o_header.o_header-nobg .o_btn-contact{
    border: none;
    padding-right: 0;
}
header.o_header-nobg .o_main-menu > ul > li{
    padding-top: 25px;
    padding-bottom: 25px;
}
/**********Home********/
.o_section-partners{
    overflow: hidden;
}
.o_section-partners .o_partner{
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 35px;
}
.o_section-partners .o_bg-white{
    padding: 100px 0;
}
.o_section-partners .o_list-partners{
    margin: 0 -35px;
}
.o_section h2{
    font-weight: var(--fw-600);
    color: var(--black-color);
    font-size: var(--text-40);
    margin-bottom: 30px;
    line-height: 51px;
}
.o_section-experts .o_slide-experts .o_slide-item{
    box-shadow: 50px 0 0 #00000029;
    border-radius: 0px 0px 4px 4px;
}
.o_section-experts .o_slide-experts .o_slide-item h3{
    font-size: var(--text-25);
    line-height: 30px;
    color: var(--black-color);
    font-weight: var(--fw-600);
    margin: 0;
}
.select2-container, .select2-dropdown, .select2-search, .select2-results {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}
.o_section-experts .o_slide-experts .o_slide-item .o_expert-title{
    gap: 30px;
    justify-content: space-between;
    padding-bottom: 15px;
    align-items: center;
}
select.form-select,
input.form-control {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 14px;
    background-color: #fff;
    appearance: none;
}
tr.clickable {
    cursor: pointer;
}
select.form-select {
    background-position: right 10px center;
    background-repeat: no-repeat;
}

.o_section-experts .o_slide-experts .o_slide-item .o_expert-social{
    display: inline-flex;
    width: 40px;
    height: 40px;
    justify-content: center;
    align-items: center;
    color: var(--text-color);
    border: 1px solid rgba(112, 112, 112, 0.5);
    font-size: var(--text-20);
    text-decoration: none;
    border-radius: 50px;
}
.o_section-experts .o_slide-experts .o_slide-item .o_expert-social:hover{
    color: var(--blue-color);
    border-color: var(--blue-color);
}
.o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb{
    flex: 0 0 398px;
    border-radius: 4px 4px 0px 0px;
}
/*.o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb img{*/
/*    width: 100%;*/
/*    height: 100%;*/
/*    object-fit: cover;*/
/*}*/
.o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb img {
    width: 100%;
    max-height: 380px;
    object-fit: cover;
    display: block;
}
.o_section-experts .o_slide-experts .o_slide-item .o_slide-content{
    padding: 35px 35px 100px;
    font-size: var(--text-18);
    line-height: 30px;
    flex: 0 0 calc(100% - 398px);
}
.o_section-experts .o_slide-experts .o_slide-item .o_expert-small-infos{
    color: var(--black-color);
    padding-bottom: 25px;
}
.o_section-experts .o_slide-experts .o_slide-item .o_expert-small-infos span{
    display: block;
    font-size: var(--text-18);
    line-height: 22px;
}
.o_section-experts .o_slide-experts .o_slide-item .o_expert-small-infos .o_expert-job{
    font-weight: var(--fw-500);
    padding-top: 5px;

    /* Badge styles below */
    display: inline-block; /* Allows padding and background to wrap content, and prevents it from taking full width */
    background-color: #00000038; /* Example: A common blue for badges */
    color: white; /* Text color for contrast */
    padding: 4px 10px; /* Adjust padding to give space around text (top/bottom, left/right) */
    font-size: 0.85em; /* Slightly smaller text for badges, adjust as needed */
    letter-spacing: 0.5px; /* Optional: Add slight letter spacing */
    margin-top: 10px; /* Adjust if padding-top: 5px; isn't enough, or replace it */
}
.o_main section{
    padding-bottom: 50px;
}
.o_main section .o_section-partners{
    padding-bottom: 0;
}
.o_section-experts  .slick-dots,
.o_slide-farAway .slick-dots,
.o_slick-dots-partners-container  .slick-dots,
.o_slide-echo-container .slick-dots{
    display: inline-flex;
    width: auto;
    position: relative;
    bottom: 0;
}
.o_section-experts .slick-dots li button::before,
.o_slide-farAway .slick-dots li button::before,
.o_slick-dots-partners-container  .slick-dots li button::before,
.o_slide-echo-container .slick-dots li button::before{
    display: none;
}
.o_section-experts  .slick-dots li button,
.o_slide-farAway .slick-dots li button,
.o_slide-echo-container .slick-dots li button,
.o_slick-dots-partners-container  .slick-dots li button{
    padding: 0;
    width: 19px;
    height: 19px;
    border-radius: 100%;
    border: 1px solid var(--black-color);
}
.o_section-experts .slick-dots li.slick-active button,
.o_slide-farAway .slick-dots li.slick-active button,
.o_slide-echo-container .slick-dots li.slick-active button,
.o_slick-dots-partners-container  .slick-dots li.slick-active button{
    background-color: var(--black-color);
}
.o_section-experts .o_slick-dots-experts-container,
.o_slide-farAway .o_slick-dots-farAway-container,
.o_slide-echo-container  .o_slick-dots-echo-container,
.o_section .o_slick-dots-partners-container{
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: -125px;
}
.o_section-experts .o_slick-dots-experts-container div,
.o_slide-farAway .o_slick-dots-farAway-container div,
.o_slide-echo-container .o_slick-dots-echo-container div,
.o_section .o_slick-dots-partners-container div{
    width: auto;
    background-color: var(--grey-color);
    border-radius: 47px;
    padding: 23px 60px 25px;
    position: relative;
}
.o_section .o_slick-dots-experts-container .slick-prev::before,
.o_section .o_slick-dots-experts-container .slick-next::before,
.o_slide-farAway .o_slick-dots-farAway-container .slick-prev::before,
.o_slide-farAway .o_slick-dots-farAway-container .slick-next::before,
.o_slide-echo-container .o_slick-dots-echo-container .slick-prev::before,
.o_slide-echo-container .o_slick-dots-echo-container .slick-next::before,
.o_section .o_slick-dots-partners-container .slick-prev::before,
.o_section .o_slick-dots-partners-container .slick-next::before{
    display: none;
}
.o_section .o_slick-dots-experts-container .slick-prev,
.o_section .o_slick-dots-experts-container .slick-next,
.o_slide-farAway .o_slick-dots-farAway-container .slick-prev,
.o_slide-farAway .o_slick-dots-farAway-container .slick-next,
.o_slide-echo-container .o_slick-dots-echo-container .slick-prev,
.o_slide-echo-container .o_slick-dots-echo-container .slick-next,
.o_section .o_slick-dots-partners-container .slick-prev,
.o_section .o_slick-dots-partners-container .slick-next{
    font-size: var(--text-20);
    color: #A6A6A6;
    top: 50%;
}
.o_section .o_slick-dots-experts-container .slick-prev,
.o_slide-farAway .o_slick-dots-farAway-container .slick-prev,
.o_slide-echo-container .o_slick-dots-echo-container .slick-prev,
.o_section .o_slick-dots-partners-container .slick-prev{
    left: 25px;
}
.o_section .o_slick-dots-experts-container .slick-next,
.o_slide-farAway .o_slick-dots-farAway-container .slick-next,
.o_slide-echo-container .o_slick-dots-echo-container .slick-next,
.o_section .o_slick-dots-partners-container .slick-next{
    right: 25px;
}
.o_section .o_slick-dots-experts-container .slick-prev:hover,
.o_section .o_slick-dots-experts-container .slick-next:hover,
.o_slide-farAway .o_slick-dots-farAway-container .slick-prev:hover,
.o_slide-farAway .o_slick-dots-farAway-container .slick-next:hover
.o_slide-echo-container .o_slick-dots-echo-container .slick-prev:hover,
.o_slide-echo-container .o_slick-dots-echo-container .slick-next:hover,
.o_section .o_slick-dots-partners-container .slick-prev:hover,
.o_section .o_slick-dots-partners-container .slick-next:hover{
    color: #000;
}
.o_section .o_listing-news{
    gap: 10px;
    justify-content: space-between;
    padding-bottom: 50px;
}
.o_section .o_listing-news .o_item-news{
    flex: 0 0 calc(33.33% - 8px);
    font-style: italic;
}
.o_section .o_listing-news .o_item-news-category{
    gap: 10px;
    color: var(--orange-color);
    font-style: italic;
    font-size: var(--text-18);
    line-height: 23px;
    align-items: center;
    padding-bottom: 10px;
}
.o_section .o_listing-news .o_item-news-category a{
    text-decoration: none;
    color: var(--orange-color);
}
.o_section .o_listing-news .o_item-news-category a:hover{
    color: var(--orange-light-color);
}
.o_section .o_listing-news .o_item-news-content{
    padding: 25px;
}
.o_section .o_listing-news .o_item-news a{
    text-decoration: none;
}
.o_overlay-link{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.o_section .o_listing-news .o_item-news .o_item-news-thumb,
.o_section-projects .o_listing-projects .o_project-item .o_project-item-thumb,
.o_section .o_item-member .o_item-member-thumb{
    overflow: hidden;
}
.o_section .o_listing-news .o_item-news:hover .o_item-news-thumb img,
.o_section .o_item-member .o_item-member-thumb:hover img,
.o_section-projects .o_listing-projects .o_project-item:hover .o_project-item-thumb img{
    transform: scale(1.02);
}
.o_section .o_listing-news .o_item-news img{
    width: 100%;
    object-fit: cover;
    height: 241px;
}
.o_section .o_listing-news .o_item-news .o_item-news-date span,
.o_section .o_details-news .o_item-news-date span{
    display: flex;
    align-items: center;
    gap: 15px;
}
.o_section .o_listing-news .o_item-news .o_item-news-date{
    padding: 20px 0;
    font-size: var(--text-16);
    line-height: 26px;
}
.o_section .o_listing-news .o_item-news .o_item-news-date span::before,
.o_section .o_details-news .o_item-news-date  span::before{
    content: '';
    display: inline-block;
    width: 53px;
    background-color: var(--blue-color);
    border-top: 1px solid rgba(0, 48, 151, 0.5);
}
.o_section .o_listing-news .o_item-news h3{
    margin: 0;
    font-size: var(--text-25);
    line-height: 32px;
    font-weight: 500;
}
.o_section .o_listing-news .o_item-news .o_item-news-excerpt{
    font-weight: var(--fw-300);
    font-size: var(--text-18);
    line-height: 26px;
    padding: 15px 0 45px;
}
.o_section .o_listing-news .o_item-news .o_btn-news{
    justify-content: flex-end;
}
.o_section .o_listing-news .o_item-news .o_btn-news a{
    padding: 13px 26px;
    background-color: var(--blue-color);
    color: var(--white-color);
    font-size: var(--text-16);
    line-height: 20px;
    font-style: normal;
}
.o_section .o_listing-news .o_item-news .o_btn-news a:hover{
    background-color: var(--dark-blue-color);
}
.o_section .o_listing-news .o_item-news h3 a{
    color: var(--blue-color);
}
.o_section .o_listing-news .o_item-news:hover h3 a{
    color: var(--dark-blue-color);
}
.o_section  .o_btn-container{
    justify-content: center;
}
.o_section  .o_btn-container .o_btn-more{
    color: var(--white-color);
    text-decoration: none;
    padding: 12px 52px;
    display: inline-block;
    font-size: var(--text-18);
    line-height: 23px;
    text-transform: uppercase;
    background: var(--blue-color);
    background: linear-gradient(90deg, var(--blue-color) 0%, var(--dark-blue-color) 100%);
}
.o_section  .o_btn-container .o_btn-more:hover{
    background: linear-gradient(90deg, var(--dark-blue-color) 0%, var(--blue-color) 100%);
}
.o_section .o_slide-farAway .o_slide-farAway-slide{
    color: var(--white-color);
    background-color: #214554;
}
.o_section .o_slide-farAway > div{
    gap: 30px;
}
.o_section .o_slide-farAway .o_slide-item-farAway-content,
.o_section .o_slide-farAway .o_slide-item-farAway-thumb{
    flex: 0 0 50%;
}
.o_section .o_slide-farAway .o_slide-item-farAway-content{
    padding: 46px 30px 30px 0;
}
.o_section .o_slide-farAway .o_slide-item-farAway-content h3{
    margin-top: 0;
    font-weight: var(--fw-600);
    font-size: var(--text-40);
    line-height: 45px;
    margin-bottom: 20px;
}
.o_section .o_slide-farAway  .o_slide-item-farAway-excerpt {
    font-size: var(--text-25);
    line-height: 36px;
    font-weight: var(--fw-300);
    min-height: 180px;
}
.o_section .o_slide-farAway .o_slide-item-farAway-content .o_btn-more-info,
.o_section .o_slide-echo .o_btn-more-container .o_btn-more-info{
    display: inline-flex;
    padding: 16px 25px;
    border: 1px solid var(--white-color);
    border-radius: 47px;
    gap: 15px;
    align-items: center;
    color: var(--white-color);
    text-decoration: none;
    font-weight: var(--fw-300);
    position: relative;
    font-size: var(--text-20);
}
.o_section .o_slide-farAway .o_slide-item-farAway-content .o_btn-more-info::after,
.o_section .o_slide-echo .o_btn-more-container .o_btn-more-info::after{
    content: '';
    width: 30px;
    height: 15px;
    display: inline-block;
    background: url('../../images/icon-long-right-arrow.svg') no-repeat right center;
}
.o_section .o_slide-farAway .o_slide-item-farAway-content .o_btn-more-info:hover::after,
.o_section .o_slide-echo .o_btn-more-container .o_btn-more-info:hover::after{
    margin-left: -5px;
}
.o_section .o_slide-farAway .o_slide-item-farAway-thumb img{
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    object-fit: cover;
}
.o_section .o_block-numbers-container{
    color: var(--bg-grey1);
    background-color: #848484;
    padding: 60px 100px 30px;
    justify-content: space-between;
}
.o_section .o_block-numbers-container .o_block-number{
    width: 25%;
    padding: 0 50px;
    flex-direction: column;
    gap: 30px;
    text-align: center;
    position: relative;
}
.o_section .o_block-numbers-container .o_block-number-icon{
    height: 75px;
}
.o_section .o_block-numbers-container .o_block-number::after{
    content: "";
    width: 1px;
    height: 60%;
    top: 15%;
    right: 0;
    position: absolute;
    display: block;
    background-color: rgba(232, 232, 232, 0.5)
}
.o_section .o_block-numbers-container .o_block-number:last-child:after{
    display: none;
}
.o_section .o_block-numbers-container .o_block-number img{
    margin: 0 auto;
}
.o_section .o_block-numbers-container .o_block-number h3{
    font-size: var(--text-30);
    line-height: 39px;
    margin: 0;
    font-weight: var(--fw-300);
}
.o_section .o_block-numbers-container .o_block-number .o_block-number-value{
    font-size: var(--text-60);
    line-height: 73px;
    font-weight: 200;
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-bg{
    background-repeat: no-repeat;
    background-size: cover;
    padding: 30px 0;
    height: 378px;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    background-position: left top;
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_container{
    z-index: 2;
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text{
    box-shadow: 0px 0px 30px #00000029;
    background-color: var(--grey-color);
    padding: 35px;
    color: var(--black-color);
    font-size: var(--text-18);
    line-height: 35px;
    width: 50%;
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text h3 a{
    color: var(--black-color);
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text h3{
    font-size: var(--text-25);
    line-height: 30px;
    font-weight: var(--fw-500);
    margin-top: 0;
}
.o_section .o_slide-echo .o_btn-more-container{
    justify-content: flex-end;
}
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text h3:hover a,
.o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text h3 a{
    text-decoration: none;
}
.o_section .o_slide-echo .o_btn-more-container .o_btn-more-info{
    color: var(--black-color);
    font-size: var(--text-18);
    border-color: var(--black-color);
    padding: 10px 25px;
    margin-top: 65px;
}
.o_section .o_slide-echo .o_btn-more-container .o_btn-more-info::after{
    background-image: url('../../images/icon-right-arrow-black.svg');
}
.o_slide-echo-container .o_slick-dots-echo-container div {
    margin-left: 250px;
}
.o_slide-echo-container .o_slide-echo-item{
    position: relative;
}
.o_section .o_slide-echo .o_slide-echo-item-content{
    padding-top: 100px;
}
.o_section .o_slide-echo-container{
    padding-bottom: 12rem;
}
.o_slide-echo-container .o_slick-dots-echo-container{
    margin-top: -210px;
}
.o_section  .o_listing-services{
    row-gap: 40px;
    column-gap: 20px;
}
.o_section  .o_listing-services .o_item-service{
    flex: 0 0 calc(33.33% - 15px);
}
.o_section  .o_listing-services .o_item-service .o_item-service-thumb{
    overflow: hidden;
}
.o_section  .o_listing-services .o_item-service img{
    height: 313px;
    width: 100%;
    object-fit: cover;
}
.o_section  .o_listing-services .o_item-service:hover img{
    transform: scale(1.02);
}
.o_section  .o_listing-services .o_item-service .o_item-service-title{
    width: calc(100% - 70px);
    margin: 0 auto;
    box-shadow: 0px 0px 10px #00000029;
    background: var(--white-color);
    padding: 50px 20px;
    text-align: center;
    margin-top: -60px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}
.o_section  .o_listing-services .o_item-service .o_item-service-title h3{
    margin: 0;
    font-weight: var(--fw-500);
    font-size: var(--text-20);
    color: var(--black-color);
    line-height: 24px;
}
.o_section  .o_listing-services .o_item-service:hover .o_item-service-title h3::before{
    width: 100px;
    height: calc(100% + 20px);
    position: absolute;
    top: -10px;
    left: calc(50% - 50px);
    background: #00E6FF;
    content: "";
    display: none;
    z-index: -1;
}
.o_section  .o_listing-services .o_item-service:hover .o_item-service-title h3::before{
    display: block;
}
.o_section-map .o_map-filter .o_filter-left{
    flex: 0 0 275px;
}
.o_section-map .o_map-filter .o_filter-map{
    flex: 0 0 calc(100% - 275px);
    padding-right: 50px;
    padding-left: 20px;
    position: relative;
}
.o_section-map .o_map-filter .o_filter-left-content{
    background-color: rgba(238, 238, 238, 0.62);
    padding: 30px 25px;
}
.o_section-map .o_map-filter .o_filter-left-content h3{
    text-transform: uppercase;
    margin: 0 0 30px;
    font-weight: var(--fw-500);
}
.o_section-map .o_map-filter .o_filter-left-content h3 span,
.o_section-map .o_map-filter .o_filter-left-content label{
    font-size: var(--text-16);
    letter-spacing: 0.32px;
    line-height: 36px;
}
.o_section-map .o_map-filter .o_filter-left-content h3 span{
    display: inline-block;
    border-bottom: 1px solid var(--black-color2);
    color: var(--black-color2);
}
.o_section-map{
    padding-top: 60px;
    padding-bottom: 20px;
    margin-bottom: 45px;
}
.o_section-map .o_map-filter .o_filter-left-content label{
    color: var(--blue-color);
    font-weight: var(--fw-300);
    display: block;
    margin-bottom: 0;
}
.o_section-map .o_map-filter .o_filter-left-content .o_field{
    margin-bottom: 20px;
}
.o_section-map .o_map-filter .o_filter-left-content .o_field-submit-btn{
    width: 100%;
    letter-spacing: 0.28px;
    color: #F8F9FA;
    font-size: var(--text-14);
    padding: 8px 15px;
    font-weight: var(--fw-300);
    border-radius: 6px;
    background: linear-gradient(90deg, var(--blue-color) 0%, var(--dark-blue-color) 100%);
    border: none transparent;
    cursor: pointer;
    font-family: var(--font-barlow);
}
.o_section-map .o_map-filter .o_filter-left-content .o_field-submit-btn:hover{
    background: linear-gradient(90deg, var(--dark-blue-color) 0%, var(--blue-color) 100%);
}
.o_section-map .o_map-filter .o_btns-zoom{
    flex-direction: column;
    gap: 10px;
    display: flex;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 3;
}
.o_section-map .o_container {
    max-width: 1500px;
}
.o_section-map .o_map-filter select{
    width: 100%;
    border-radius: 4px;
    border-color: rgba(112, 112, 112, 0.5);
    font-size: var(--text-14);
    font-weight: var(--fw-300);
}
.o_section .select2-container--default .select2-selection--multiple .select2-selection__choice,
.o_section .select2-container--default .select2-selection--multiple .select2-selection__choice__display{
    background: #fff;
}
.o_section-map .o_map-filter .o_btns-zoom .o_btn-zoom{
    width: 26px;
    height: 26px;
    background-color: var(--blue-color);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F8F9FA;
    border: none transparent;
    font-size: var(--text-20);
    cursor: pointer;
    font-weight: var(--fw-300);
}
.o_section-map .o_marker-box{
    box-shadow: 0px 0px 10px #00000029;
    max-width: 143px;
    background-color: var(--white-color);
    color: var(--black-color);
}
.o_section-map .o_marker-box .o_marker-country{
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: var(--text-14);
    color: var(--black-color);
    font-weight: var(--fw-500);
    border-bottom: 1px solid var(--black-color);
}
.o_section-map .o_marker-box .o_marker-details,
.o_section-map .o_marker-box .o_marker-country{
    padding: 10px 20px;
}
.o_section-map .o_marker-box  ul{
    list-style: none;
    flex-direction: column;
    margin: 0;
    padding: 0;
    gap: 5px;
}

.o_section-map .o_marker-box  ul li span{
    color: var(--black-color);
    font-weight: var(--fw-400);
    font-size: var(--text-12);
}
.o_section-map .o_marker-box  ul li .o_marker-details-label{
    font-weight: var(--fw-600);
}
.o_section-projects .o_listing-projects .o_project-item{
    flex: 0 0 calc(33.33%);
    border-right: 1px solid rgba(112, 112, 112, 0.25);
}

.o_section-projects .o_listing-projects .o_project-item:last-child{
    border: none;
}
.o_section-projects .o_listing-projects .o_project-item .o_project-item-thumb{
    margin-bottom: 20px;
}
.o_section-projects .o_listing-projects .o_project-item .o_project-item-thumb img{
    height: 261px;
    width: 100%;
    object-fit: cover;
}
.o_section-projects .o_listing-projects .o_project-item h3 a{
    text-decoration: none;
    color: var(--blue-color);
}
.o_section-projects .o_listing-projects .o_project-item h3{
    font-size: var(--text-18);
    line-height: 23px;
    color: var(--blue-color);
    font-weight: var(--fw-600);
    padding-bottom: 7px;
    margin: 0;
}
.o_section-projects .o_listing-projects .o_project-item h3:hover a{
    color: var(--black-color);
}
.o_section-projects .o_listing-projects .o_project-item .o_project-item-content{
    padding: 25px;
    font-size: var(--text-16);
    line-height: 20px;
    font-weight: var(--fw-300);
}
.o_section-projects .o_listing-projects .o_project-item .o_project-item-thumb-cat{
    padding-bottom: 20px;
}
.o_section-projects .o_listing-projects .o_project-item .o_project-item-thumb-cat span{
    font-size: var(--text-14);
    font-weight: var(--fw-300);
    text-transform: uppercase;
    display: block;
    padding-left: 10px;
    border-left: 1px solid rgba(112, 112, 112, 0.25);
}
.o_section-projects .o_listing-projects .o_project-item  .o_project-item-thumb-tag{
    font-size: var(--text-18);
    line-height: 23px;
    font-weight: var(--fw-600);
    padding-bottom: 16px;
}
.o_section-projects .o_listing-projects{
    margin-bottom: 28px;
}
.o_section-home-fullbanner .o_fullbanner-text{
    color: var(--white-color);
    font-size: var(--text-25);
    line-height: 32px;
    max-width: 849px;
    background-color: rgba(0, 0, 0, 0.37);
    padding: 60px 50px;
    z-index: 2;
}
.o_section-home-fullbanner .o_fullbanner-text h1{
    margin: 0 0 10px;
    text-transform: uppercase;
    font-size: var(--text-50);
    line-height: 64px;
    font-weight: var(--fw-600);
}
.o_section-home-fullbanner .o_fullbanner-thumb,
.o_section .o_bannerPage-thumb{
    background-size: cover;
    background-repeat: no-repeat;
    background-position: bottom center;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
.o_section-home-fullbanner .o_fullbanner-content{
    padding-top: 540px;
    padding-bottom: 172px;
}
.o_section-home-fullbanner .o_fullbanner-content::after{
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: block;
    background: url('../../images/banner-shadow.png') no-repeat left top;
    background-size: cover;
    z-index: 1;
}
/********Page**********/
.o_main .o_breadcrumbs {
    padding-bottom: 0;
}
.o_breadcrumbs{
    position: absolute;
    left: 0;
    z-index: 1;
    top: 0;
    width: 100%;
}
.o_breadcrumbs .o_breadcrumbs-content{
    box-shadow: 0px 0px 20px #00000029;
    background-color: var(--white-color);
}
.o_breadcrumbs  .o_nav-breadcrumbs {
    margin: 0;
    list-style: none;
    padding: 0;
    align-items: center;
    padding: 0 25px;
    list-style: none;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs li ul{
    display: none;
    flex-direction: column;
    gap: 15px;
    padding: 15px 20px;
    box-shadow: 0px 0px 6px #00000029;
    list-style: none;
    position: absolute;
    top: 100%;
    background-color: var(--white-color);
    margin: 0;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs li:hover > ul{
    display: flex;
    width: auto;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li{
    padding: 20px 0;
    position: relative;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li > a,
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li > span{
    border-right: 1px solid #232323;
    display: inline-block;
    padding: 0 10px;
    font-size: var(--text-16);
    line-height: 19px;
    letter-spacing: -0.26px;
    color: var(--black-color);
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li:first-child > a,
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li:first-child > span{
    padding-left: 0;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li:last-child > a,
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs > li:last-child > span{
    padding-right: 0;
    border: none;
}
.o_section.o_section-bannerPage{
    height: 100vh;
    max-height: 511px;
    padding-top: 256px;
    
}
.o_section.o_section-bannerPage .container{
    overflow: hidden;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs li a{
    font-size: var(--text-16);
    line-height: 19px;
    color: var(--black-color);
    text-decoration: none;
    letter-spacing: -0.26px;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs ul li a{
    letter-spacing: 0;
    color: #535353;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs ul li a:hover{
    color: var(--black-color);
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs li.o_nav-breadcrumbs-hasChrildren > a{
    padding-right: 25px;
    position: relative;
}
.o_breadcrumbs .o_breadcrumbs-content .o_nav-breadcrumbs li.o_nav-breadcrumbs-hasChrildren > a::after{
    display: inline-block;
    position: absolute;
    right: 8px;
    top: 1px;
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    color: #2B2B2B;
    font-size: 12px;
}
.o_section-bannerPage .o_title-page{
    background: linear-gradient(90deg,rgba(0, 48, 151, 0.67) 0%, rgba(0, 32, 100, 0.67) 50%);
    height: 303px;
    display: flex;
    justify-content: center;
    max-width: 721px;
    padding: 70px;
    flex-direction: column;
}
.o_section-bannerPage .o_title-page h1{
    margin: 0;
    color: var(--white-color);
    font-size: var(--text-40);
    line-height: 51px;
    font-weight: var(--fw-400);
}
.o_section-bannerPage .o_title-page p{
    color: var(--white-color);
    font-size: var(--text-25);
    line-height: 32px;
}
.o_section-bannerPage {
    margin-bottom: 100px;
}
.o_section .o_resume-page .o_socials-btns{
    flex: 0 0 90px;
}
.o_section .o_resume-page .o_resume-text{
    flex: 0 0 calc(100% - 90px);
    font-weight: var(--fw-700);
    font-size: var(--text-23);
    line-height: 36px;
    padding-bottom: 50px;
    color: var(--blue-color);
}
.o_section .o_resume-page .o_resume-text .o_no-bluecolor{
    letter-spacing: 0.18px;
    font-size: var(--text-18);
    line-height: 26px;
    color: var(--text-color);
    font-weight: var(--fw-400)
}
.o_section .o_resume-page  h2,
.o_section .o_resume-page  h1{
    font-weight: var(--fw-600);
    font-size: var(--text-60);
    margin-bottom: 10px;
    margin-top: 0;
    color: var(--blue-color);
}
.o_section .o_resume-page .o_socials-btns ul{
    list-style: none;
    padding: 0;
    margin: 0;
    flex-direction: column;
    gap: 10px;
}
.o_section .o_resume-page .o_socials-btns ul li a{
    display: inline-block;
    width: 43px;
    height: 43px;
    text-decoration: none;
    background-size: contain;
    background-repeat: no-repeat;
}
.o_section .o_resume-page .o_socials-btns ul li.o_social-linkedin a{
    background-image: url('../../images/logo-page-linkedin.svg');
}
.o_section .o_resume-page .o_socials-btns ul li.o_social-youtube a{
    background-image: url('../../images/logo-page-youtube.svg');
}
.o_section .o_resume-page .o_socials-btns ul li.o_social-xtwitter a{
    background-image: url('../../images/logo-page-xtwitter.svg');
}
.o_section .o_resume-page .o_socials-btns ul li a:hover{
    opacity: 0.5;
}
.o_main .o_section.o_pb-large{
    padding-bottom: 150px;
}
.o_main .o_section.o_pb-small{
    padding-bottom: 50px;
}
.o_section .o_content-page p{
    font-weight: var(--fw-300);
    font-size: var(--text-18);
    line-height: 26px;
    margin-bottom: 30px;
}
.o_section .o_content-page p:last-child{
    margin-bottom: 0;
}
.o_section .o_content-page p strong{
    color: var(--black-color);
}
.o_section .o_item-member .o_item-member-thumb img{
    width: 100%;
    height: 251px;
    object-fit: cover;
}
.o_section .o_item-member h3{
    color: var(--blue-color);
    margin: 15px 0 15px;
    font-size: var(--text-18);
    line-height: 23px;
}
.o_section .o_item-member .o_item-member-social{
    display: flex;
    justify-content: flex-end;
    padding-top: 40px;
}
.o_section .o_item-member .o_item-member-social a{
    text-decoration: none;
    color: var(--text-color);
    font-size: var(--text-30);
}
.o_section .o_item-member:hover .o_item-member-social a{
    color: var(--blue-color);
}
.o_section .o_listing-members .o_item-member{
    flex: 0 0 25%;
}
.o_section .o_listing-members .o_item-member .o_item-member-content{
    padding: 30px 25px;
    height: 100%;
    border-right: 1px solid rgba(112, 112, 112, 0.25);
    border-bottom: 1px solid rgba(112, 112, 112, 0.25);
}
.o_section .o_listing-members .o_item-member:nth-child(4n) .o_item-member-content{
    border-right: none;
}
.o_section .o_listing-members .o_item-member .o_item-member-details{
    flex-direction: column;
}
.o_section .o_listing-members .o_item-member .o_item-member-description{
    font-weight: var(--fw-300);
    font-size: var(--text-14);
    line-height: 25px;
    
}
.o_section .o_listing-members .o_item-member .o_item-member-job{
    font-weight: var(--fw-600);
    font-size: var(--text-14);
    margin-bottom: 17px;
}
.o_section .o_resume-page .o_resume-text .o_subtitle-download {
    display: flex;
}

.o_section .o_resume-page .o_resume-text .o_subtitle-download span{
    color: var(--blue-color);
    font-weight: var(--fw-300);
    font-size: var(--text-14);
    letter-spacing: -0.42px;
    line-height: 17px;
}
.o_section .o_resume-page .o_resume-text .o_subtitle-download h2{
    letter-spacing: -0.4px;
    color: #2B2B2B;
    font-size: var(--text-40);
    line-height: 48px;
    font-weight: var(--fw-600);
    text-transform: none;
    flex: 0 0  calc(100% - 205px);
}
.o_section .o_resume-page .o_resume-text  h2.o_no-bluecolor{
    color: #535353;
    font-size: 38px;
    font-weight: var(--fw-600);
    line-height: 50px;
}
.o_section .o_resume-page .o_resume-text  h2.o_color-black{
    color: var(--black-color);
    font-size: 38px;
    line-height: 50px;
}
.o_section .o_resume-page .o_resume-text .o_subtitle-download .o_box-download{
    text-transform: uppercase;
    flex: 0 0 200px;
}
.o_section .o_resume-page .o_resume-text .o_subtitle-download  .o_box-download a{
    display: flex;
    gap: 10px;
    text-decoration: none;
    color: var(--text-color );
    font-size: var(--text-16);
    line-height: 19px;
    padding: 15px 20px;
    border: 1px solid rgba(241, 119, 0, 0.5);
    background-color: var(--white-color);
    justify-content: center;
    font-weight: var(--fw-400);

}
.o_section.o_section-nopb{
    padding-bottom: 0;
}
.o_section .o_grid-partners{
    gap: 30px;
}
.o_section .o_grid-partners .o_partner{
    flex: 0 0 calc(20% - 25px);
}
.o_section .o_grid-partners .o_partner a{
    background-color: var(--white-color);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0px 0px 30px #0000001A;
    border-radius: 7px;
    padding: 15px;
    height: 100%;
}
.o_main .o_section-map-service h2{
    color: var(--blue-color);
    padding: 30px 0;
    margin-top: 0;
}
.o_section .o_service-table .o_label-table{
    padding: 20px 28px;
    color: var(--white-color);
    font-size: var(--text-18);
    line-height: 26px;
    font-weight: var(--fw-500);
    background-color: var(--blue-color);
    margin-bottom: 60px;
}
.o_section .o_service-table table th,
.o_section .o_service-table table td{
    font-size: var(--text-20);
    line-height: 26px;
    color: var(--black-color);
    font-weight: var(--fw-500);
    text-align: left;
    padding: 10px 15px 10px 0;
}
.o_section .o_service-table table td{
    padding: 20px 15px 20px 0;
}
.o_section .o_service-table table td{
    font-size: var(--text-16);
    font-weight: var(--fw-400);
}
.o_section .o_service-table table tr th:first-child,
.o_section .o_service-table table tr td:first-child{
    padding-left: 15px;
}
.o_section .o_service-table table tr td,
.o_section .o_service-table table tr th{
    border-bottom: 1px solid rgba(112, 112, 112, 0.5);
}
.o_section .o_service-table table tbody tr:last-child td{
    border-bottom: none transparent;
}
.o_section .o_service-table table{
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    padding: 0;
}
.o_section .o_service-table table .o_col-place{
    width: 130px;
}
.o_section .o_nav-pages{
    padding-top: 35px;
}
.o_section .o_nav-pages ul{
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: space-between;
    gap: 30px;
    align-items: center;
}
.o_section .o_nav-pages ul li a{
    display: inline-flex;
    text-decoration: none;
    color: var(--black-color);
    align-items: center;
    gap: 10px;
    font-size: var(--text-20);
    line-height: 24px;
    font-weight: var(--fw-600);
}
.o_section .o_nav-pages ul li a:hover{
    color: var(--blue-color);
}
.o_section .o_pagination {
    padding-top: 30px;
}
.o_section .o_pagination ul {
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: end;
    gap: 17px;
}
.o_section .o_pagination ul li a,
.o_section .o_pagination ul li span{
    display: inline-flex;
    text-decoration: none;
    align-items: center;
    justify-content: center;
    background-color: var(--white-color);
    font-weight: var(--fw-300);
    font-size: var(--text-20);
    color: var(--text-color);
    border: 1px solid rgba(112, 112, 112, 0.25);
    padding: 5px;
    width: 51px;
    height: 45px;
    line-height: 24px;
    font-family: var(--font-barlow);
}
.o_section .o_pagination ul li a:hover,
.o_section .o_pagination li.o_link-active a,
.o_section .o_pagination li.o_link-active span{
    background-color: var(--orange-color);
    border-color: var(--orange-color);
    color: var(--white-color);
}
.o_section-bannerPage-nothumb{
    background-color: #0070AD;
    padding-top: 118px;
    padding-bottom: 30px;
    color: var(--white-color);
    margin-bottom: 50px;
}
.o_section-bannerPage-nothumb .o_section-bannerPage-logo{
    display: flex;
    width: 100%;
    height: 100%;
    top: -15px;
    left: 0;
    align-items: center;
    justify-content: center;
    position: absolute;
}
.o_section-bannerPage-nothumb h1{
    font-size: var(--text-45);
    line-height: 54px;
    letter-spacing: -0.72px;
    color: var(--field-color-btn);
    margin: 0;
    font-weight: var(--fw-600);
}
.o_section-bannerPage-nothumb  .o_container{
    z-index: 2;
}
.o_section-bannerPage-nothumb  .o_details-realisation{
    padding-top: 60px;
    padding-bottom: 30px;
}
.o_section-bannerPage-nothumb  .o_details-realisation p{
    letter-spacing: -0.32px;
    font-size: var(--text-20);
    line-height: 24px;
    font-weight: var(--fw-500);
}
.o_section-bannerPage-nothumb  .o_details-realisation  .o_realisation-country{
    text-transform: uppercase;
    font-weight: var(--fw-400);
}
.o_section-bannerPage-nothumb .o_realisation-download{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    padding: 10px;
}
.flash-success {
    background-color: #d4edda;      /* Vert clair */
    color: #155724;                 /* Vert foncé */
    border: 1px solid #c3e6cb;     /* Bordure vert clair */
    padding: 10px 15px;
    border-radius: 4px;
    margin-bottom: 15px;
    font-weight: 600;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.flash-error {
    background-color: #f8d7da;      /* Rouge clair */
    color: #721c24;                 /* Rouge foncé */
    border: 1px solid #f5c6cb;     /* Bordure rouge clair */
    padding: 10px 15px;
    border-radius: 4px;
    margin-bottom: 15px;
    font-weight: 600;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.o_section-bannerPage-nothumb .o_realisation-download span{
    display: block;
    letter-spacing: -0.29px;
    font-family: "Ubuntu", sans-serif;
    color: var(--white-color);
}
.o_section-bannerPage-nothumb .o_realisation-size{
    font-weight: var(--fw-300);
}
.o_section-bannerPage-nothumb .o_realisation-download::before{
    width: 50px;
    height: 50px;
    content: "";
    display: inline-block;
    background: url('../../images/icon-download.svg') no-repeat center center transparent;
    background-size: 20px 20px;
    border: 1px solid #fff;
    border-radius: 50%;
}
.o_section .o_bloc-page{
    padding-bottom: 30px;
}

.o_section .o_content-page img{
    width: 100%;
    height: auto;
    object-fit: cover;
}
.o_section .o_content-page figcaption{
    position: relative;
    left: 22px;
    bottom:50px;
    box-shadow: 0px 0px 15px #00000029;
    max-width: 50%;
    background: linear-gradient(95deg, rgba(255, 126, 0, 0.53) 0%, var(--orange-color) 100%);
    font-weight: var(--fw-500);
    display: block;
    color: var(--white-color);
    padding: 12px;
}
.o_section .o_content-page .o_alignfull figcaption{
    font-size: var(--text-20);
    line-height: 19px;
}
.o_section .o_content-page .o_class-three-thumbs,
.o_section .o_content-page .o_two-thumbs-withText{
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(4, 1fr);
    grid-column-gap: 25px;
    grid-row-gap: 12px;
    margin-bottom: 30px;
}
.o_section .o_content-page figure{
    margin: 0;
    position: relative;
}
.o_section .o_content-page .o_alignfull{
    margin-bottom: 30px;
}
.o_section .o_content-page  .o_col-grid:first-child { 
    grid-area: 1 / 1 / 3 / 7; 
}
.o_section .o_content-page  .o_col-grid:nth-child(2) { 
    grid-area: 3 / 1 / 5 / 7; 
}
.o_section .o_content-page .o_col-grid:last-child { 
    grid-area: 1 / 7 / 5 / 13; 
}
.o_section .o_form-search-container{
    padding: 23px 30px;
}
.o_section .o_content-page  figure img{
    height: 100%;
}

.o_gallery-grid  {
    display: grid;
    gap: 15px;
    padding: 10px;
}

.o_gallery-grid  img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    object-fit: cover;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.o_gallery-grid  img:hover {
    transform: scale(1.05);
}
.o_section .o_form-search-container form h3{
    color: var(--black-color);
    letter-spacing: 0.2px;
    font-weight: var(--fw-600);
    margin: 0;
}
.o_section .o_form-search-container form .o_reset-btn{
    background: url('../../images/btn-reset.svg') no-repeat transparent;
    border: none;
    background-size: contain;
    width: 17px;
    height: 17px;
    cursor: pointer;
    margin-left: 18px;
}
.o_section .o_form-search-container form .o_titeform-btn{
    margin-bottom: 17px;
}
.o_section .o_form-search-container form .o_fields-group{
    gap: 20px;
}
.o_section .o_form-search-container form .o_fields-group input,
.o_section .o_form-search-container form  .o_field-search input::placeholder,
.o_section .o_form-search-container form .select2-container--default .select2-selection--single .select2-selection__rendered,
.o_section .o_form-search-container form .o_fields-group select{
    width: 100%;
    font-size: var(--text-16);
    letter-spacing: 0.16px;
    font-weight: var(--fw-300);
    color: var(--field-color);
    font-family: var(--font-barlow);
}
.o_section .o_form-search-container form .o_columns-two-fields .o_field{
    flex: 0 0 calc(50% - 10px);
}
.o_section .o_form-search-container form  .o_field-search{
    position: relative;
    
}
.o_section .o_form-search-container form  .o_field-search::before{
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url('../../images/icon-search-normal.svg') no-repeat left center;
    background-size: contain;
    position: absolute;
    right: 20px;
    top: 10px;
}
.o_section .o_form-search-container form  .o_field-search input{
    padding: 11px 50px 11px 17px;
    border: 1px solid rgba(112, 112, 112, 0.5);
}
.o_section .o_form-search-container form  .o_field-search input::placeholder{
    opacity: 1;
}
.o_section .o_form-search-container form .select2-container--default .select2-selection--single{
    height: 42px;
    border-radius: 0;
    border: 1px solid rgba(112, 112, 112, 0.5);
}
.o_section .o_form-search-container form .select2-container--default .select2-selection--single .select2-selection__rendered{
    line-height: 39px;
    padding-left: 18px;
}
.o_section .o_form-search-container form .o_group-fields-btn{
    padding-top: 20px;
    justify-content: space-between;
    gap: 30px;
}
.o_section .o_form-search-container form .o_group-fields-btn .o_field{
    flex: 0 0 calc(33% - 16px);
}
.o_section .o_form-search-container form .o_group-fields-btn .o_fields-group {
    flex: 0 0 calc(100% - 195px);
}
form .select2-container--default .select2-selection--single .select2-selection__arrow b,
.o_section .iti__arrow,
.o_section form .country-select .selected-flag .arrow{
    background: url('../../images/icon-arrow-down.svg') no-repeat left center transparent;
    width: 11px;
    height: 7px;
    border: none;
}
form .select2-container--default .select2-selection--single .select2-selection__arrow b{  
    margin-left: -10px;
    margin-top: 4px;
}
form .select2-container--open .select2-selection--single .select2-selection__arrow b{
    transform: rotate(180deg);
}
.o_section .o_jobs h3{
    letter-spacing: 0.2px;
    color: var(--black-color);
    font-size: var(--text-20);
    line-height: 26px;
    font-weight: var(--fw-600);
    margin-top: 0;
}
.o_section .o_jobs .o_job-details span{
    padding: 0 13px;
    display: inline-block;
    font-size: var(--text-14);
    color: var(--black-color);
    border-left: 1px solid rgba(35, 35, 35, 0.5);
}
.o_section .o_jobs .o_job-details span:first-child{
    border: none;
    padding-left: 0;
}
.o_section .o_jobs .o_result-jobs .o_job{
    padding: 20px 25px;
    border-bottom: 1px solid rgba(112, 112, 112, 0.5);
    position: relative;
}
.o_section .o_list-jobs .o_job:last-child{
    border: none;
}
.o_section .o_list-jobs .o_job::before{
    content: "";
    height: 100%;
    width: 0;
    background-color: var(--blue-color);
    position: absolute;
    left: 0;
    top: 0;
    display: block;
}
.o_section .o_list-jobs .o_job:hover::before{
    width: 6px;
}
.o_section .o_jobs {
    padding-top: 30px;
}
.o_section .o_jobs .o_result-jobs{
    width: 506px;
    padding-right: 30px;
}
/* Appliquer cette règle à partir des écrans d'au moins 768px de large (tablette en mode paysage et plus grand) */
@media (min-width: 768px) {
    .o_section .o_jobs .o_info-job {
        flex: 0 0 calc(100% - 506px); /* Ceci définit la base à la largeur restante, mais empêche de grandir et de rétrécir */
    }
}
.o_section .o_jobs .o_title-btn{
    align-items: flex-start;
    padding: 20px 30px 0;
    justify-content: space-between;
}
.o_section .o_jobs .o_title-btn > div{
    flex: 0 0 calc(100% - 200px);
}
.o_section .o_jobs .o_job-info{
    margin-top: 50px;
    overflow: auto;
}
.o_section .o_jobs .o_tabs-box .o_tabs {
    margin: 0;
    padding: 0 20px;
    display: flex;
    list-style: none;
    gap: 30px;
}
.o_section .o_jobs .o_tabs-box .o_tabs li a{
    text-decoration: none;
    font-size: var(--text-16);
    line-height: 26px;
    color: var(--text-color);
    font-weight: var(--fw-300);
    display: inline-block;
    padding-bottom: 10px;
    position: relative;
}
.o_section .o_jobs .o_tabs-box .o_tabs li a::before{
    content: '';
    display: block;
    width: 100%;
    height: 7px;
    background-color: var(--blue-color);
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: 0;
}
.o_section .o_jobs .o_tabs-box .o_tabs li.o_active a::before{
    opacity: 1;
}
.o_section .o_jobs .o_tabs-box .o_tabs li.o_active a{
    color: var(--blue-color);
    font-weight: var(--fw-600);
}
.o_section .o_jobs .o_tabs-container {
    padding: 20px;
    border-top: 1px solid rgba(112, 112, 112, 0.5);
    font-size: var(--text-16);
    /*height: 680px;
    overflow: auto;*/
    color: var(--black-color);
    line-height: 26px;
}
.o_section .o_jobs .o_tabs-container .o_listing-files{
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 10px;
    flex-direction: column;
}
.o_section .o_jobs .o_tabs-container  .o_listing-files li{
    position: relative;
    gap: 11px;
    align-items: center;
    font-size: var(--text-16);
    line-height: 26px;
    color: var(--text-color);
    letter-spacing: 0.16px;
    font-style: italic;
    display: flex;
 }
 .o_section .o_jobs .o_tabs-container  .o_listing-files li::before{
    content: "";
    background-color: var(--bg-grey1);
    width: 31px;
    height: 31px;
    background: url('../../images/icon-download-grey.svg') no-repeat center center var(--bg-grey1);
    background-size: 12px 12px;
    border-radius: 50%;
    display: block;
 }
  .o_section .o_jobs .o_tabs-container h4{
    color: var(--black-color);
    font-size: var(--text-18);
    line-height: 26px;
    font-weight: var(--fw-600);
}

.o_section .o_jobs .o_tabs-container h4:first-child{
    margin-top: 0;
    margin-bottom: 16px;
}

.o_section .o_jobs .o_tabs-container p,
.o_section .o_jobs .o_tabs-container ul {
    margin-bottom: 30px;
}
.o_section .o_jobs .o_tabs-container ul{
    padding-left: 20px;
    margin-top: 0;
}
.o_section .o_nomb,
.o_section .o_jobs .o_tabs-container p.o_nomb{
    margin-bottom: 0;
}
.o_section .o_jobs .o_tabs-container .o_contract-job span{
    display: block;
}
.o_section .o_jobs .o_tabs-container .o_tabContent .o_job-group-info{
    display: flex;
    flex-direction: column;
    padding-bottom: 20px;
}
.o_section .o_jobs .o_tabs-container .o_tabContent .o_job-group-info:last-child{
    padding-bottom: 0;
}
.o_section .o_jobs .o_tabs-container .o_tabContent .o_job-info-label{
    font-size: var(--text-20);
    line-height: 26px;
    font-weight: var(--fw-600);
    color: var(--black-color);
}
.o_section .o_jobs .o_tabs-container .o_tabContent .o_job-info-value{
    font-size: var(--text-16);
    line-height: 20px;
    font-weight: var(--fw-300);
    color: var(--text-color);
}
.o_section .o_jobs .o_tabs-container .o_tabContent{
    min-height: 400px;
}
.o_section .o_listing-news + .o_pagination {
    padding-top: 0;
}
.o_section .o_map{
    min-height: 200px;
}
.o_container-small{
    max-width: 1160px;
    padding: 0 20px;
    margin: 0 auto;
}
.o_section .o_section-submitJob-content {
    padding: 40px 130px 55px;
    color: var(--black-color);
}
.o_section .o_section-submitJob-content h2,
.o_section .o_section-submitJob-content h1{
    margin-top: 0;
    font-weight: var(--fw-600);
    font-size: var(--text-25);
    line-height: 30px;
}
.o_section .o_section-submitJob-content h1{
    color: var(--blue-color);
    margin-bottom: 30px;
}
.o_section .o_section-submitJob-content h2{
    margin-bottom: 20px;
    margin-top: 0;
    
}
.o_section .o_section-submitJob-content form fieldset{
    padding: 0;
    margin: 0;
    border: none;
}
.o_section .o_section-submitJob-content form h3{
    font-weight: var(--fw-600);
    font-size: var(--text-20);
    line-height: 24px;
    margin-bottom: 15px;
}
.o_section form .o_small-text {
    font-weight: var(--fw-300);
    font-size: var(--text-16);
    line-height: 19px;
}
.o_section form  p,
.o_section form label{
    font-weight: var(--fw-600);
    font-size: var(--text-18);
    line-height: 26px;
    color: var(--text-color);
}
.o_section form label{
    color: var(--black-color);
    display: block;
    margin-bottom: 12px;
}
.o_section .o_section-submitJob-content form .o_field-groups{
    display: flex;
    gap: 28px;
    justify-content: space-between;
    flex-wrap: wrap;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field{
    flex: 0 0 calc(50% - 20px);
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input,
.o_section .o_section-submitJob-content form .o_field-groups .o_field select,
.o_section .o_section-submitJob-content form .select2-container--default .select2-selection--single .select2-selection__rendered{
    width: 100%;
    font-weight: var(--fw-500);
    font-size: var(--text-16);
    line-height: 26px;
    color: #2B2B2B;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="text"],
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="tel"],
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="email"]{
    border-radius: 4px;
    border: 1px solid rgb(112, 112, 112, 0.5);
    padding: 10px 15px;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field select{
    border-radius: 4px;
    background-color: var(--bg-grey1);
}
.o_section form .country-select .selected-flag .arrow {
    right: 15px;
}
.o_section .o_section-submitJob-content form .select2-container--default .select2-selection--single {
    height: 48px;
    border-radius: 4px;
    border: 1px solid rgba(112, 112, 112, 0.25);
}
.o_section .o_section-submitJob-content form .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 47px;
    padding-left: 15px;
    background-color: var(--bg-grey1);
    border-radius: 4px;
}
.o_section .o_section-submitJob-content form fieldset.o_group-file{
    margin-top: 50px;
}
.o_section .o_section-submitJob-content form .o_btns-group{
    display: flex;
    gap: 30px;
}
.o_section .o_section-submitJob-content form .o_btns-group button{
    border: none transparent;
    border-radius: 4px;
    font-weight: var(--fw-500);
    font-size: var(--text-18);
    line-height: 26px;
    text-align: center;
    color: var(--white-color);
    padding: 13px 25px;
}
.o_section .o_section-submitJob-content form  .o_choice{
    display: flex;
    align-items: center;
    gap: 30px;
}
.o_section .o_section-submitJob-content form .o_box-upload{
    border: 1px dashed var(--text-color);
    background-color: var(--grey-color);
    padding: 36px 30px;
    margin-bottom: 40px;
}
.o_section form .iti,
.o_section form  .country-select{
    width: 100%;
}
.o_section form  .country-select{
    position: relative;
}
.o_section .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: var(--bg-grey1);
}
.o_section .iti--separate-dial-code .iti__selected-dial-code{
    font-size: var(--text-16);
    line-height: 26px;
    font-weight: var(--fw-500);
    color: var(--black-color);
}
.o_section form .country-select input,
.o_section .o_section-submitJob-content form .o_field-groups .o_field .country-select input{
    padding-left: 50px;
    background-color: var(--bg-grey1);
}
.o_section .country-select.inside .selected-flag {
    padding-left: 15px;
    width: 55px;
}
.o_section .country-select.inside .flag-dropdown,
.o_section .country-select.inside .selected-flag{
    position: absolute;
    width: 100%;
    height: 100%;
}
.o_section form .o_field-radio{
    flex-direction: row;
    gap: 14px;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"],
.o_section form .o_field-radio label{
    width: auto;
    margin: 0;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"]{
    display: none;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"] + label{
    position: relative;
    cursor: pointer;
    padding-left: 35px;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"] + label::after,
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"] + label::before{
    content: "";
    display: block;
    position: absolute;
    left: 0;
    border-radius: 100%;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"] + label::before{
    width: 22px;
    height: 22px;
    border: 1px solid var(--text-color);
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"] + label::after{
    width: 16px;
    height: 16px;
    left: 3.5px;
    top: 3.7px;
    background-color: var(--blue-color);
    opacity: 0;
}
.o_section .o_section-submitJob-content form .o_field-groups .o_field input[type="radio"]:checked + label::after{
    opacity: 1;
}
.o_section .o_box-upload h3{
    font-weight: var(--fw-600);
    color: var(--black-color);
    font-size: var(--text-20);
    line-height: 24px;
}
.o_section .o_box-upload ul{
    list-style: none;
    margin: 0;
    padding: 0;
    color: var(--black-color);
}
.o_section .o_section-submitJob-content form  .o_field-instructions li span{
    font-size: var(--text-18);
    line-height: 22px;
}
.o_section .o_section-submitJob-content form  .o_field-instructions li span + span{
    font-weight: var(--fw-600);
}
.o_section .o_section-submitJob-content form .o_btns-file{
    padding-top: 40px;
    justify-content: space-between;
    gap: 30px;
}
.o_section .o_section-submitJob-content form .o_btns-file input{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    cursor: pointer;
}
.o_section .o_section-submitJob-content form .o_btns-file .o_field-file label{
    border: 1px solid rgba(0, 48, 151, 0.5);
    border-radius: 4px;
    display: inline-flex;
    padding: 13px 30px;
    color: var(--blue-color);
    background-color: var(--white-color);
    align-items: center;
    justify-content: center;
    font-size: var(--text-18);
    font-weight: var(--fw-500);
}
.o_section .o_section-submitJob-content form .o_btns-file .o_field-file:hover label{
    background-color: rgba(255, 255, 255, 0.5);
}
.o_section .o_section-submitJob-content form .o_btns-file .o_field-file label::before{
    content: '';
    width: 25px;
    height: 25px;
    display: block;
    background-repeat: no-repeat;
    background-position: left center;
    background-image: url('../../images/icon-copypaste.svg');
    background-size: contain;
    margin-right: 5px;
}
.o_section .o_section-submitJob-content form .o_btns-file .o_field-file2 label::before{
    background-image: url('../../images/icon-file-upload.svg');
}
.o_section .o_section-submitJob-content form  .o_field-list-uploads ul{
    display: flex;
    flex-direction: column;
    font-size: var(--text-20);
    line-height: 24px;
    gap: 12px;
}
.o_section .o_section-submitJob-content form  .o_field-list-uploads ul li{
    font-style: italic;
    display: flex;
    align-items: center;
    gap: 20px;
}
.o_section .o_section-submitJob-content form  .o_field-list-uploads ul li button{
    width: 24px;
    height: 24px;
    border: 1px solid var(--text-color);
    border-radius: 50%;
    background-color: #EEEEEE;
    color: var(--text-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.o_section .o_section-submitJob-content form  .o_field-list-uploads ul li button::before{
    content: "";
    display: block;
    width: 16px;
    height: 1px;
    background-color: var(--text-color);
}
.o_section .o_details-news .o_detail-cat{
    font-size: var(--text-20);
    line-height: 24px;
    font-weight: var(--fw-600);
    color: #FFAC5B;
}
.o_section .o_details-news .o_item-news-date{
    padding-top: 124px;
}
.o_section .o_details-news .o_item-news-date span{
    font-size: var(--text-18);
    line-height: 22px;
    text-transform: capitalize;
    color: var(--white-color);
    font-weight: var(--fw-600);
}
.o_section .o_details-news .o_item-news-date span::before{
    background-color: var(--white-color);
    width: 52px;
}
.o_section .o_content-page .o_title-grey{
    color: var(--text-color);
    font-weight: var(--fw-500);
    font-size: var(--text-40);
    line-height: 55px;
    margin-top: 0;
}
.o_section  .o_content-form-contact{
    justify-content: space-between;
    gap: 30px;
}
.o_section  .o_content-form-contact > div{
    flex: 0 0 calc(50% - 15px);
    max-width: 600px;
}
.o_section  .o_content-form-contact .o_box-form{
    box-shadow: 0px 0px 30px #0000001C;
    padding: 25px 40px;
    color: var(--black-color);
}
.o_section  .o_content-form-contact .o_box-form h3{
    margin-top: 0;
    font-size: var(--text-23);
    line-height: 28px;
}
.o_section  .o_content-form-contact .o_box-form label{
    display: block;
    font-size: var(--text-17);
    line-height: 20px;
    margin-bottom: 15px;
}
.o_section  .o_content-form-contact .o_box-form input,
.o_section  .o_content-form-contact .o_box-form textarea{
    width: 100%;
    border: 1px solid rgba(112, 112, 112, 0.5);
    border-radius: 4px;
    padding: 14px 15px;
    color: var(--black-color);
}
.o_section  .o_content-form-contact .o_box-form textarea{
    min-height: 130px;
}
.o_section  .o_content-form-contact .o_box-form .o_field{
    padding-bottom: 20px;
}
.o_section  .o_content-form-contact .o_office h3{
    color: #2B2B2B;
    font-size: var(--text-30);
    margin-top: 15px;
    font-weight: var(--fw-500);
}
.o_section  .o_content-form-contact .o_infos-contact p{
    color: var(--text-color);
    font-size: var(--text-20);
    margin-bottom: 10px;
    font-weight: var(--fw-300);
}
.o_section  .o_content-form-contact .o_infos-contact p strong{
    font-weight: var(--fw-500);
}
.o_section  .o_content-form-contact .o_infos-contact p a{
    color: var(--text-color);
    text-decoration: none;
}
.o_section  .o_content-form-contact .o_infos-contact p a:hover{
    color: var(--blue-color);
    text-decoration: underline;
}
.o_section  .o_content-form-contact .o_box-offices {
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
}
.o_section  .o_content-form-contact .o_box-form button{
    width: 100%;
    border-radius: 4px;
}
.o_section  .o_field .select2-container{
    width: 100% !important;
}
.o_section .o_filter-left .o_field .select2-container--default .select2-selection--single{
    height: 32px;
}
.o_section .o_filter-left form .select2-container--default .select2-selection--single .select2-selection__arrow b{
    margin-top: 0;
}
/********Footer**********/
.o_footer{
    background-color: var(--bg-grey1);
}
.o_footer a{
    text-decoration: none;
}
.o_footer .o_col-logo{
    overflow: hidden;
}
.o_footer .o_footer-bottom{
    background-color: var(--bg-grey);
    color: var(--black-color);
    padding: 14px 0;
}
.o_footer .o_footer-bottom p,
.o_footer .o_footer-other-links p,
.o_footer .o_footer-other-links ul li a{
    font-size: var(--text-14);
    line-height: 18px;
}
.o_footer .o_footer-bottom a{
    color: var(--black-color);
    text-decoration: none;
}
.o_footer .o_footer-bottom a:hover,
.o_footer .o_footer-top ul li a:hover{
    text-decoration: underline;
}
.o_footer .o_footer-other-links{
    padding: 21px 0;
    border-top: 1px solid rgba(112, 112, 112, 0.25);
    
}
.o_footer .o_footer-other-links > div,
.o_footer-top > .o_flex{
    justify-content: space-between;
    gap: 30px;
}
.o_footer ul{
    list-style: none;
    margin: 0;
    padding: 0;
}
.o_footer .o_footer-other-links ul{
    display: flex;
    gap: 15px;
}
.o_footer .o_footer-other-links ul li{
    border-right: 1px solid rgba(112, 112, 112, 0.25);
    padding-right: 15px;
    line-height: 18px;
}
.o_footer .o_footer-other-links ul li a{
    color: var(--text-color);
    display: inline-block;
}
.o_footer .o_footer-other-links ul li a:hover{
    color: var(--black-color);
}
.o_footer .o_footer-other-links ul li:last-child{
    padding: 0;
    border: none;
}
.o_footer .o_footer-top{
    padding: 18px 0;
    background-color: var(--bg-grey2);
}
.o_footer .o_footer-top .o_flex{
   justify-content: space-between;
   gap: 30px;
}
.o_footer .o_footer-top ul{
    list-style: none;
    display: flex;
    padding: 0;
    margin: 0;
    align-items: center;
}
.o_footer .o_footer-top ul li a{
    text-decoration: none;
    color: var(--white-color);
}
.o_footer .o_footer-top .o_list-links{
    gap: 25px;
}
.o_footer .o_footer-top .o_list-links li {
    padding-right: 25px;
    border-right: 1px solid #000;
}
.o_footer .o_footer-top .o_list-links li a{
    color: var(--grey-color);
    font-size: var(--text-20);
    line-height: 25px;
    font-weight: 600;
}
.o_footer .o_footer-top .o_list-lang{
    gap: 11px;
}
.o_footer .o_footer-top .o_list-lang li{
    padding-right: 10px;
    border-right: 1px solid var(--white-color);
}
.o_footer .o_footer-top .o_list-lang li:last-child{
    border: none;
    padding: 0;
}
.o_footer .o_footer-top .o_list-lang .o_active,
.o_footer .o_footer-top .o_list-lang li a:hover{
    font-weight: var(--fw-600);
    text-decoration: none;
}
.o_footer  .o_footer-links{
    padding: 30px 0;
    gap: 30px;
}
.o_footer  .o_footer-links .o_col-footer{
    flex: 0 0 auto;
    
}
.o_footer  .o_footer-links .o_col-footer-main-menu{
    border-right: 1px solid rgba(112, 112, 112, 0.25);
    border-left: 1px solid rgba(112, 112, 112, 0.25);
    padding: 0 30px;
    min-width: 200px;
}
.o_footer  .o_footer-links .o_col-footer:last-child{
    border: none;
}
.o_footer  .o_footer-links .o_links-socials{
    gap: 10px;
    margin: 0;
    margin-top: 46px;
    padding: 0;

}
.o_footer  .o_footer-links .o_links-socials a{
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--white-color);
    width: 29px;
    height: 29px;
    border-radius: 50px;
    background-repeat: no-repeat;
    background-size: 14px;
    background-color: var(--text-color);
    text-decoration: none;
    background-position: center center;
}
.o_footer  .o_footer-links .o_links-socials a:hover{
    background-color: var(--blue-color);
}

.o_footer  .o_footer-links .o_links-socials a.o_logo-youtube{
    background-image: url('../../images/logo-youtube.svg');
}
.o_footer  .o_footer-links .o_links-socials a.o_logo-xtwitter{
    background-image: url('../../images/logo-twitter.svg');
}
.o_footer  .o_footer-links .o_menu-footer{
    flex-direction: column;
}
.o_footer  .o_footer-links .o_menu-footer li a{
    text-decoration: none;
    display: inline-block;
    padding-bottom: 5px;
    font-size: var(--text-14);
    line-height: 20px;
    color: var(--black-color);
    position: relative;
    transition: all 3s ease-in-out;
}
.o_footer  .o_footer-links .o_menu-footer li a:hover{
    text-decoration: underline;
}
.o_footer  .o_footer-links .o_main-menu-footer{
    gap: 20px;
}
.o_footer .o_col-footer h4{
    font-size: var(--text-20);
    margin-top: 0;
    font-weight: var(--fw-400);
    color: var(--black-color);
}
.o_footer .o_menu-footer ul li a{
    color: var(--black-color);
}
.o_footer  .o_footer-links .o_main-menu-footer li a{
    font-size: var(--text-16);
    color: var(--text-color);
}
.o_footer  .o_footer-links .o_col-logo-network{
    padding-right: 50px;
}
@media (min-width: 1400px) {
    .o_footer  .o_footer-links .o_col-logo-network{
        padding-right: 80px;
    }
    .o_footer  .o_footer-links .o_col-footer-main-menu{
        min-width: 300px;
    }
}
@media (min-width: 992px) {
    .o_section .o_service-table .o_responsive-table{
        overflow-x: auto;
    }
}

@media (max-width: 1500px) {
    .o_container {
        max-width: 1300px;
    }
    .o_section .o_listing-news .o_item-news h3 {
        font-size: var(--text-20);
        line-height: 28px;
    }
}
@media (max-width: 1400px) {
    .o_container {
        max-width: 1200px;
    }
    .o_section-bannerPage-nothumb h1{
        font-size: var(--text-35);
        line-height: 40px;
    }
    .o_header .o_header-main {
        gap: 10px;
    }
    .o_header .o_main-menu > ul > li {
        padding: 23px 20px;
    }
    .o_header .o_main-menu > ul > li > a{
        font-size: var(--text-14);
    }
    .o_footer .o_footer-links .o_menu-footer {
        max-width: 350px;
    }
}
@media (max-width: 1300px) {
    .o_section-home-fullbanner .o_fullbanner-content {
        padding-top: 340px;
        padding-bottom: 172px;
    }
    .o_section-home-fullbanner .o_fullbanner-text h1 {
        font-size: var(--text-40);
        line-height: 54px;
    }
    .o_section h2,
    .o_section .o_resume-page .o_resume-text h2.o_no-bluecolor,
    .o_section .o_resume-page .o_resume-text  h2.o_color-black{
        font-size: var(--text-30);
        line-height: 40px;
    }
    .o_section .o_block-numbers-container .o_block-number {
        padding: 0 30px;
    }
    .o_section .o_block-numbers-container .o_block-number h3 {
        font-size: var(--text-25);
        line-height: 35px;
    }
    .o_section .o_block-numbers-container .o_block-number .o_block-number-value {
        font-size: var(--text-40);
        line-height: 53px;
    }
    .o_section .o_listing-news .o_item-news h3 {
        font-size: var(--text-20);
        line-height: 25px;
    }
    .o_section .o_resume-page .o_resume-text .o_no-bluecolor {
        font-size: var(--text-16);
        line-height: 23px
    }
    .o_section .o_listing-services .o_item-service .o_item-service-title h3{
        font-size: var(--text-18);
        line-height: 22px
    }
    .o_section.o_section-bannerPage {
        height: 100vh;
        max-height: 411px;
        padding-top: 256px;
    }
    .o_section-bannerPage .o_title-page{
        height: 203px;
        max-width: 600px;
        padding: 50px;
    }
    .o_container {
        max-width: 1100px;
    }
    .o_header .o_main-menu > ul > li > a{
        font-size: var(--text-14);
    }
    .o_header .o_header-main {
        gap: 15px;
    }
    .o_footer .o_footer-links .o_col-logo-network {
        padding-right: 20px;
    }
    .o_footer .o_footer-links .o_col-footer {
        flex: 0 0 auto;
        max-width: 300px;
    }
     .o_section-partners .o_bg-white {
        padding: 50px 0;
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb {
        flex: 0 0 300px;
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-content {
        font-size: var(--text-16);
        line-height: 25px;
        flex: 0 0 calc(100% - 300px);
    }
    .o_section-experts .o_slick-dots-experts-container div, 
    .o_slide-farAway .o_slick-dots-farAway-container div, 
    .o_slide-echo-container .o_slick-dots-echo-container div {
        padding: 20px 50px 20px;
        position: relative;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-excerpt{
        min-height: 100px;
        padding-bottom: 15px;
    }
    .o_section .o_block-numbers-container {
        padding: 60px 80px 30px;
    }
    .o_section .o_slide-echo .o_btn-more-container .o_btn-more-info{
        margin-top: 30px;
    }
    .o_footer .o_footer-links .o_menu-footer {
        max-width: 230px;
    }
    .o_section .o_resume-page h2, 
    .o_section .o_resume-page h1{
        font-size: var(--text-40);
        line-height: 55px;
    }
    .o_section .o_jobs h3 {
        font-size: var(--text-18);
        line-height: 24px;
    }
    .o_section .o_jobs .o_result-jobs {
        width: 406px;
    }
    /*.o_section .o_jobs .o_info-job {*/
    /*    flex: 0 0 calc(100% - 406px);*/
    /*}*/
    .o_section-bannerPage-nothumb,
    .o_section .o_details-news .o_item-news-date{
        padding-top: 88px;
    }
    .o_section-partners .o_list-partners {
        margin: 0;
    }
}
@media (max-width: 1199px) {

}
@media (min-width: 1025px) {
    .o_header .o_mobile-menu{
        display: none;
    }
    .o_section-partners .o_slick-dots-partners-container {
        display: none !important;
    }
}
@media (max-width: 1024px) {
    .o_section-partners .o_list-partners {
        padding-bottom: 150px;
    }
    header .o_main-menu{
        display: none;
    }
    .o_header .o_header-main {
        padding: 15px 0;
    }
    .o_header.o_header-nobg .o_header-main {
        padding: 0;
    }
    .o_header .o_header-top{
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .o_section.o_section-bannerPage {
        max-height: 311px;
        padding-top: 156px;
    }
    .o_section .o_listing-news .o_item-news {
        flex: 0 0 calc(50% - 8px);
    }
    .o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-text{
        width: 100%;
    }
    .o_section .o_slide-echo .o_btn-more-container .o_btn-more-info{
        margin-top: 0;
    }
    .o_section .o_slide-echo-container {
        padding-bottom: 50px;
    }
    .o_slide-echo-container .o_slick-dots-echo-container {
        margin-top: -100px;
    }
    .o_slide-echo-container .o_slick-dots-echo-container div {
        margin-left: 0;
    }
    .o_section .o_slide-echo .o_slide-echo-item-content .o_slide-echo-item-bg{
        height: 100%;
    }
    .o_section .o_slide-echo .o_slide-echo-item-content {
        padding-top: 100px;
        padding-bottom: 100px;
    }
    .o_section-home-fullbanner .o_fullbanner-content {
        padding-top: 200px;
        padding-bottom: 50px;
    }
    .o_section-home-fullbanner .o_fullbanner-text{
        padding: 20px;
        font-size: var(--text-20);
        line-height: 25px;
    }
    .o_section-home-fullbanner .o_fullbanner-text h1,
    .o_section-bannerPage .o_title-page h1{
        font-size: var(--text-30);
        line-height: 40px;
    }
    .o_main .o_breadcrumbs{
        display: none;
    }
    .o_section .o_listing-members .o_item-member{
        flex: 0 0 33.33%;
    }
    .o_section .o_listing-members .o_item-member:nth-child(3n) .o_item-member-content{
        border-right: none;
    }
    .o_section .o_listing-members .o_item-member:nth-child(4n) .o_item-member-content{
        border-right: 1px solid rgba(112, 112, 112, 0.25);
    }
    .o_section .o_section-submitJob-content {
        padding: 40px 70px 55px;
    }
    .o_header .o_header-contact-lang .o_header-lang{
        margin-right: 15px;
    }

}
/* Cache l'élément sur les écrans dont la largeur est inférieure ou égale à 768px (taille standard pour les tablettes/mobiles) */
@media (max-width: 768px) {
    /* Ciblage par les classes fournies dans la div */
    .o_info-job.list {
        display: none !important; /* Utilisation de !important pour s'assurer que le style est appliqué */
    }
}
@media (max-width: 991px) {
    .o_section .o_block-numbers-container {
        padding: 30px;
    }
    .o_section.o_pb-large,
    .o_main .o_section.o_pb-large,
    .o_main .o_section.o_pb-small{
        padding-bottom: 30px;
    }
    .o_section .o_service-table table {
        border: 0;
        table-layout: fixed;
    }
    
    .o_section .o_service-table table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }  
    .o_section .o_service-table table tr {
        border-bottom: 3px solid #ddd;
        display: block;
        margin-bottom: .625em;
    } 
    .o_section .o_service-table table td {
        border-bottom: 1px solid #ddd;
        display: block;
        font-size: .8em;
        text-align: right;
    }
    .o_section .o_service-table table td::before {
        /*
        * aria-label has no advantage, it won't be read inside a table
        content: attr(aria-label);
        */
        content: attr(data-label);
        float: left;
        font-weight: bold;
        text-transform: uppercase;
    }
    .o_section .o_service-table table td:last-child {
        border-bottom: 0;
    }
    .o_section .o_service-table table th, 
    .o_section .o_service-table table td{
        padding: 10px;
    }
    .o_section .o_service-table table .o_col-place {
        width: 100%;
    }
    .o_section .o_service-table table tr td{
        border-bottom: none;
    }
    .o_section .o_service-table table tr td:nth-child(odd){
        background-color:  rgba(112, 112, 112, 0.1);
    }
    .o_section .o_service-table table tr td:nth-child(even){
        background-color: #fff;
    }
    .o_main section {
        padding-bottom: 30px;
    }
    .o_section .o_listing-news .o_item-news h3 {
        font-size: var(--text-18);
        line-height: 24px;
    }
    .o_section .o_listing-news .o_item-news .o_item-news-excerpt {
        font-size: var(--text-16);
        line-height: 24px;
        padding: 15px 0 15px;
    }
    .o_footer .o_footer-links .o_col-footer {
        flex: 0 0 calc(50% - 15px);
        max-width: 600px;
    }
    .o_footer .o_footer-links .o_col-footer ul{
        max-width: 300px;
    }
    .o_footer .o_footer-links .o_col-footer-main-menu{
        border: none;
        padding: 0;
    }
    .o_footer .o_footer-other-links ul li a {
        font-size: var(--text-12);
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb {
        flex: 0 0 40%;
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-content {
        font-size: var(--text-16);
        line-height: 25px;
        flex: 0 0 60%;
        padding: 25px 25px 100px;
    }
    .o_section-experts .o_slick-dots-experts-container{
        margin-top: -110px;
    }
    .o_section-experts .o_slick-dots-experts-container div, 
    .o_slide-farAway .o_slick-dots-farAway-container div, 
    .o_slide-echo-container .o_slick-dots-echo-container div {
        padding: 15px 50px 15px;
        position: relative;
    }
    .o_section .o_block-numbers-container .o_block-number{
        width: 50%;
        gap: 15px;
        padding-bottom: 15px;
    }
    .o_section .o_listing-services .o_item-service {
        flex: 0 0 calc(50% - 15px);
    }
    .o_section .o_slide-echo .o_slide-echo-item-content {
        padding-top: 50px;
        padding-bottom: 100px;
    }
    .o_section .o_block-numbers-container .o_block-number:last-child:after{
        display: block;
    }
    .o_section-projects .o_listing-projects .o_project-item{
        flex: 0 0 50%;
    }
    .o_section-projects .o_listing-projects .o_project-item .o_project-item-content {
        padding: 20px;
    }
    .o_section-projects .o_listing-projects .o_project-item:last-child {
        border-right: 1px solid rgba(112, 112, 112, 0.25);
    }
    .o_section-map .o_map-filter .o_filter-left,
    .o_section-map .o_map-filter .o_filter-map{
        flex: 0 0 100%;
    }
    .o_section-map .o_map-filter {
        gap: 15px;
    }
    .o_section-map .o_map-filter .o_filter-left-content{
        padding: 20px;
    }
    .o_section-map .o_map-filter .o_filter-left .o_fields-group{
        display: flex;
        gap: 20px;
        flex-wrap: wrap;
        align-items: flex-end;
    }
    .o_section-map .o_map-filter .o_filter-left .o_fields-group .o_field{
        flex: 0 0 calc(33.33% - 20px);
        margin: 0;
    }
    .o_section-map .o_map-filter .o_filter-left-content h3{
        margin-bottom: 20px;
    }
    .o_section-map {
        padding-top: 30px;
        padding-bottom: 20px;
        margin-bottom: 0;
    }
    .o_section-bannerPage .o_title-page {
        max-width: 500px;
        padding: 20px;
    }
    .o_section .o_grid-partners {
        gap: 20px;
    }
    .o_section .o_grid-partners .o_partner {
        flex: 0 0 calc(33% - 15px);
    }
    .o_section .o_pagination ul li a, 
    .o_section .o_pagination ul li span{
        font-size: var(--text-16);
        line-height: 20px;
        width: 35px;
        height: 30px;
    }
    .o_section .o_form-search-container form .o_group-fields-btn .o_fields-group{
        flex: 0 0 100%;
    }
    .o_section .o_form-search-container {
        padding: 20px;
    }
    .o_section .o_form-search-container form .o_group-fields-btn .o_field {
        flex: 0 0 calc(50% - 8px);
    }
    .o_section .o_form-search-container form .o_fields-group {
        gap: 15px;
    }
    .o_section .o_form-search-container form .o_fields-group input, 
    .o_footer .o_footer-top .o_list-links li a,
    .o_section .o_form-search-container form .o_field-search input::placeholder,
     .o_section .o_form-search-container form .select2-container--default .select2-selection--single .select2-selection__rendered, 
     .o_section .o_form-search-container form .o_fields-group select{
        font-size: var(--text-14);
    }
    .o_section-bannerPage-nothumb,
    .o_section .o_details-news .o_item-news-date{
        padding-top: 68px;
    }
    .o_section .o_content-page .o_title-grey{
        margin-bottom: 0;
    }
    .o_section .o_content-form-contact .o_box-form{
        padding: 15px;
    }
    .o_footer .o_footer-links .o_links-socials{
        margin-top: 15px;
    }
    .o_section .o_resume-page .o_resume-text .o_subtitle-download{
        flex-direction: column;
        padding-bottom: 20px;
    }
    .o_section .o_resume-page .o_resume-text .o_subtitle-download .o_box-download{
        flex: 0 0 auto;
    }
    .o_section.o_section-bannerPage {
        padding-top: 138px;
    }
    .o_section .o_resume-page .o_resume-text .o_subtitle-download .o_box-download a{
        max-width: 230px;
    }
}
@media (max-width: 780px) {
    .o_section-bannerPage {
        margin-bottom: 80px;
    }
    .o_footer .o_footer-bottom {
        text-align: center;
    }
    .o_section-partners .o_bg-white {
        padding: 30px 0 30px;
    }
    .o_section h2,
    .o_section .o_content-page .o_title-grey,
    .o_section .o_resume-page .o_resume-text .o_subtitle-download h2,
    .o_section .o_block-numbers-container .o_block-number h3{
        font-size: var(--text-25);
        line-height: 35px;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-content h3,
    .o_section-experts .o_slide-experts .o_slide-item h3,
    .o_section-bannerPage-nothumb h1{
        font-size: var(--text-20);
        line-height: 25px;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-content {
        padding: 30px 30px 50px 0;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-excerpt{
        font-size: var(--text-18);
        line-height: 25px;
    }
    .o_section .o_block-numbers-container .o_block-number .o_block-number-value {
        font-size: var(--text-40);
        line-height: 53px;
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_expert-title{
        gap: 15px;
    }
    .o_section .o_pagination ul{
        gap: 10px;
        justify-content: center;
    }
    .o_section .o_listing-members .o_item-member{
        flex: 0 0 50%;
    }
    .o_section .o_content-page p,
    .o_section form label,
    .o_section .o_content-page .o_alignfull figcaption{
        font-size: var(--text-16);
        line-height: 20px;
    }
    .o_section .o_content-page .o_alignfull figcaption,
    .o_section .o_content-page figcaption{
        font-size: var(--text-14);
        line-height: 18px;
        width: 100%;
        max-width: calc(100% - 30px);
        left: 15px;
        padding: 10px;
    }
    .o_section .o_content-page .o_class-three-thumbs, 
    .o_section .o_content-page .o_two-thumbs-withText{
        display: flex;
        gap: 20px;
        flex-direction: column;
    }
    .o_section .o_listing-members .o_item-member:nth-child(3n) .o_item-member-content{
        border-right: 1px solid rgba(112, 112, 112, 0.25);
    }
    .o_section .o_listing-members .o_item-member:nth-child(2n) .o_item-member-content{
        border-right: none;
    }
    .o_section .o_section-submitJob-content {
        padding: 15px;
    }
    .o_section .o_jobs .o_result-jobs,
    .o_section .o_jobs .o_info-job{
        width: 100%;
        padding-right: 0;
    }
    /*.o_section .o_jobs .o_info-job {*/
    /*    display: none;*/
    /*}*/
    .o_section-bannerPage-nothumb,
    .o_section .o_details-news .o_item-news-date,
    .o_section-bannerPage-nothumb .o_details-realisation{
        padding-top: 30px;
    }
    .o_section .o_section-submitJob-content form fieldset.o_group-file{
        margin-top: 20px;
    }
    .o_section .o_section-submitJob-content form .o_btns-group {
        gap: 15px;
        justify-content: center;
    }
    .o_section .o_content-form-contact > div {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .o_main-home .o_section  h2{
        margin-top: 0;
    }
    .o_section-home-fullbanner .o_fullbanner-content {
        padding-top: 150px;
    }
    .o_header .o_btn-contact a{
        font-size: var(--text-12);
    }
    .o_header .o_mobile-menu a{
        font-size: var(--text-25);
    }
    .o_header .o_btn-contact{
        padding-right: 15px;
    }
    .o_header-contact-lang > div{
        gap: 15px;
    }
    
    .o_section-bannerPage .o_title-page {
        min-height: 150px;
    }
    .o_section .o_nav-pages ul{
        gap: 15px;
    }
    .o_section .o_nav-pages ul li a{
        font-size: var(--text-14);
    }
    .o_section-projects .o_listing-projects + .o_nav-pages{
        padding-top: 0;
    }
    .o_section-projects h2{
        margin-top: 0;
    }
    .o_section-partners .o_list-partners {
        padding-bottom: 20px;
    }
    .o_section .o_slick-dots-partners-container div {
        padding: 13px 40px 13px;
    }
}
@media (max-width: 539px) {
    .o_section .o_listing-news .o_item-news,
    .o_section .o_listing-members .o_item-member,
    .o_section .o_slide-farAway .o_slide-item-farAway-content, 
    .o_section .o_slide-farAway .o_slide-item-farAway-thumb,
    .o_footer .o_footer-links .o_col-footer,
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-thumb,
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-content,
    .o_section .o_listing-news .o_item-news,
    .o_section .o_listing-services .o_item-service,
    .o_section .o_resume-page .o_resume-text,
    .o_section .o_resume-page .o_socials-btns,
    .o_section .o_section-submitJob-content form .o_field-groups .o_field {
        flex: 0 0 100%;
    }
    .o_section  .o_resume-page{
        gap: 20px;
    }
    .o_section .o_resume-page .o_socials-btns ul {
        flex-direction: row;
        gap: 15px;
    }
    .o_section .o_listing-services .o_item-service .o_item-service-title{
        height: auto !important;
    }
    .o_section-experts .o_slide-experts .o_slide-item .o_slide-content{
        padding: 25px 25px 100px;
    }
    .o_section-experts .o_slick-dots-experts-container, 
    .o_slide-farAway .o_slick-dots-farAway-container, 
    .o_slide-echo-container .o_slick-dots-echo-container{
        margin-top: -100px;
    }
    .o_section .o_slick-dots-partners-container{
        margin-top: 30px;
    }
    .o_footer .o_footer-links .o_col-footer ul,
    .o_footer .o_footer-links .o_menu-footer{
        max-width: 100%;
    }
    
    .o_footer .o_footer-links .o_main-menu-footer {
        gap: 10px;
    }
    .o_footer .o_footer-top {
        padding: 15px 0;
    }
    .o_footer .o_footer-top .o_list-links {
        gap: 15px;
    }
    .o_footer .o_footer-top .o_list-links li {
        padding-right: 15px;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-thumb img{
        width: 100%;
        position: relative;
        height: auto;
    }
    .o_section .o_slide-farAway .o_slide-item-farAway-thumb{
        margin: 0 -20px;
        flex: calc(100% + 40px);
    }
    .o_section .o_block-numbers-container .o_block-number{
        width: 100%;
        gap: 10px;
        padding-bottom: 20px;
    }
    o_section .o_block-numbers-container .o_block-number:last-child{
        padding-bottom: 0;
    }
    .o_section .o_block-numbers-container .o_block-number::after{
        width: 60%;
        height: 1px;
        position: relative;
        right: auto;
        top: auto;
        bottom: 0;
        margin: 0 auto;
        display: block;
    }
    .o_section .o_listing-news {
        gap: 20px;
        padding-bottom: 30px;
    }
    .o_section .o_block-numbers-container .o_block-number:last-child:after{
        display: none;
    }
    .o_section-projects .o_listing-projects .o_project-item{
        flex: 0 0 100%;
        border-bottom: 1px solid rgba(112, 112, 112, 0.25);
        border-right: none;
    }
    .o_section-projects .o_listing-projects .o_project-item:last-child {
        border: none;
    }
    .o_section-map .o_map-filter .o_filter-left .o_fields-group .o_field{
        flex: 0 0 calc(50% - 11px);
        margin: 0;
    }
    .o_section-home-fullbanner .o_fullbanner-text h1,
    .o_section .o_resume-page h2, 
    .o_section .o_resume-page h1,
    .o_section .o_resume-page .o_resume-text  h2.o_color-black,
    .o_section-bannerPage .o_title-page h1,
    .o_section .o_resume-page .o_resume-text .o_subtitle-download h2{
        font-size: var(--text-25);
        line-height: 34px;
    }
    .o_section .o_content-page p {
        font-size: var(--text-16);
        line-height: 20px;
        margin-bottom: 25px;
    }
    .o_section .o_resume-page .o_resume-text {
        font-size: var(--text-18);
        line-height: 24px;
        padding-bottom: 20px;
    }
    .o_section .o_content-form-contact .o_office h3{
        font-size: var(--text-18);
        line-height: 24px;
    }
     .o_section-bannerPage .o_title-page {
        max-width: 500px;
        height: auto;
        min-height: 150px;
    }
    .o_section .o_content-page .o_alignfull,
    .o_section .o_content-page .o_class-three-thumbs, 
    .o_section .o_content-page .o_two-thumbs-withText{
        margin-bottom: 20px;
    }
    .o_section .o_pagination ul li a, 
    .o_section .o_pagination ul li span,
    .o_section .o_section-submitJob-content form .o_field-list-uploads ul li,
    .o_section .o_content-form-contact .o_infos-contact p{
        font-size: var(--text-14);
        line-height: 18px;
    }
    .o_section .o_listing-members .o_item-member:nth-child(2n) .o_item-member-content,
    .o_section .o_listing-members .o_item-member .o_item-member-content{
        border-right: none;
    }
    header .o_logo{
        max-width: 70px;
    }
    .o_section .o_item-member .o_item-member-thumb img{
        height: 200px;
    }
}