/* Vars */
:root {
    --color1: #13286d;
    --color2: rgb(90 178 249);
    --color3: rgb(244 203 8);
    --colorLiner: ;
    --colorLinear: linear-gradient(0deg, var(--color1), var(--color1));
    --shadow: 0px 12px 40px #00000030;
}

/*=========================================================================
FONTS
=========================================================================*/

@font-face {
    font-family: 'Vinci';
    src: url('../fonts/vinci-sans-regular.otf');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Vinci';
    src: url('../fonts/vinci-sans-bold.otf');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Vinci';
    src: url('../fonts/vinci-sans-italic.otf');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Vinci Rounded';
    src: url('../fonts/vinci-sans-rounded.otf');
    font-weight: normal;
    font-style: normal;
}


/*=========================================================================
GENERAL
=========================================================================*/

.body-wrapper {
    width: 100%;
}

section .main-title .title {
    margin: 0 0 40px 0;
}

.hide {
    display: none;
}

.padding-60 {
    padding: 60px 0;
}

.float-right {
    float: right;
}

.detail-content>ul li:before {
    color: #e20025;
}

ul {
    -webkit-padding-start: 0px !important;
    padding: 0 !important;
}

.container {
    position: relative;
}

.main-title .subtitle {
    color: #189fd6;
    font-weight: 500;
    margin-bottom: 3px;
    text-transform: none;
}

.bgBlueLight .main-title .subtitle {
    color: #213047;
}

.padding-top-30 {
    padding-top: 30px;
}

.padding-bottom-30 {
    padding-bottom: 30px;
}

.padding-top-60 {
    padding-top: 60px;
}

.padding-bottom-60 {
    padding-bottom: 60px;
}

.bg-centered {
    background-size: cover;
    background-position: center center;
}

.item h6 {
    font-family: 'Vinci';
    font-weight: 700;
    margin: 0;
    margin-bottom: 20px;
    text-transform: uppercase;
    color: #3a4d6a;
    font-size: 15px;
}

.banner-1 .text {
    text-transform: none;
}

.banner-1 p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6em;
    padding-top: 20px;
}

.main-title .title:before {
    position: absolute;
    top: 9px;
    left: 0;
    width: 5px;
    height: 21px;
    content: '';
    background-color: #e20025;
}

.main-title .p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6em;
}

.waiting-slick * {
    visibility: hidden;
}


.waiting-slick {
    background: url(../images/gif/loader.gif) center center no-repeat;
}

/*=========================================================================
COLORS
=========================================================================*/
.bgYellow {
    background-color: rgb(244 203 8) !important;
}

.colorBlue {
    /* color:#13286d !important; */
    color: rgb(90 178 249) !important;
}

.bgBlue {
    background-color: rgb(90 178 249) !important
}

.colorBlueMedium {
    color: var(--color2) !important;
}

.bgBlueMedium {
    background-color: var(--color1) !important;
}

.colorBlueLight {
    color: #189fd6 !important;
}

.bgBlueLight {
    background-color: #189fd6 !important;
}

.bgBlueTheme {
    background-color: var(--color1);
}

.colorRed {
    /* color: #fa3858 !important; */
    color: var(--color3) !important;
}

.bgRed {
    background-color: #e20025 !important;
}

.bgLight {
    background-color: #f7faff !important;
}

.colorWhite {
    color: #fff !important;
}

.detail-content.colorWhite p {
    color: #fff !important;
}

.bg-white {
    background-color: #FFFFFF;
}

/*=========================================================================
BG DESIGN
=========================================================================*/
.bgDesign {
    position: relative;
    background-image: url(../images/png/bg-line-angle-white.png);
    background-repeat: repeat-x;
    background-position-y: 93%;
    padding-top: 80px;
}

.bgDesign.padding-top-100 {
    padding-top: 130px;
}

.bgDesign.padding-bottom-100 {
    padding-bottom: 160px;
}

.bgDesign .before,
.bgDesign .after {
    position: absolute;
    left: 0;
    z-index: 10;
}

.bgDesign .before {
    width: 75%;
    height: 80px;
    top: 0px;
}

.bgDesign .after {
    width: 35%;
    height: 80px;
    bottom: 0px;
}

.bgDesign .before::before {
    position: absolute;
    top: 0;
    right: -80px;
    width: 80px;
    height: 80px;
}

.bgDesign .after::after {
    position: absolute;
    top: 0;
    right: -80px;
    width: 80px;
    height: 80px;
}

.bgBlueLight.bgDesign .before {
    background-color: #fff;
}

.bgBlueLight.bgDesign .after {
    background-color: #fff;
}

.bgBlueLight.bgDesign2 .before {
    background-color: var(--color1);
}

.bgBlueLight.bgDesign2 .after {
    background-color: var(--color1);
}

.bgBlueLight.bgDesign2 .before::before {
    content: url(../images/png/theme-angle-tl.png) !important;
}

.bgBlueLight.bgDesign .before::before {
    content: url(../images/png/white-angle-tl.png);
}

.bgBlueLight.bgDesign .after::after {
    content: url(../images/png/white-angle-bl.png);
}

section.accordion .miniBgDesign {
    position: relative;
    color: #fff;
    padding-bottom: 120px;
}

section.accordion .miniBgDesign h4.title {
    margin: 0;
    position: absolute;
    top: 7px;
    z-index: 10;
}

/* Exeptions */
#section-gouv.bgBlueLight.bgDesign .after {
    background-color: #f7faff;
}

#section-gouv.bgBlueLight.bgDesign .after::after {
    content: url(../images/png/light-angle-bl.png);
}

#page-single-nos-metiers .bgBlueLight.bgDesign .after {
    background-color: #fff;
}

#page-single-nos-metiers .bgBlueLight.bgDesign .after::after {
    content: url(../images/png/white-angle-bl.png);
}

#page-nos-competences .bgBlueLight.bgDesign .before {
    background: #f7faff;
}

#page-nos-competences .bgDesign {
    background-image: none;
    padding-bottom: 20px;
}

#page-nos-competences .miniBgDesign .before::before {
    content: url(../images/png/light-angle-tl-40.png);
    width: 40px;
    height: 40px;
    right: -40px;
    background-size: cover;
}

#page-nos-competences .bgBlueLight.bgDesign .after {
    background: #f7faff;
    display: none;
}

#page-nos-competences .miniBgDesign .after::after {
    content: url(../images/png/light-angle-bl.png);
}

#page-nos-competences .btn-view-more a {
    margin: 0px 20px;
}

.miniBgDesign .before {
    height: 40px;
}

/*=========================================================================
SCROLLBAR
=========================================================================*/
.pretty-scroll {
    padding-right: 15px !important;
}

.pretty-scroll::-webkit-scrollbar {
    width: 5px;
}

.pretty-scroll::-webkit-scrollbar-track {
    background-color: rgba(255, 255, 255, .1);
    border-radius: 9px;
}

.pretty-scroll::-webkit-scrollbar-thumb {
    background-color: #fff;
    border-radius: 9px;
}

.pretty-scroll-light {
    padding-right: 15px !important;
}

.pretty-scroll-light::-webkit-scrollbar {
    width: 5px;
}

.pretty-scroll-light::-webkit-scrollbar-track {
    background-color: rgba(0, 0, 0, .1);
    border-radius: 9px;
}

.pretty-scroll-light::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, .3);
    border-radius: 9px;
}

/*=========================================================================
LIGHTSLIDER
=========================================================================*/
#project-gallery li.big-slide a {
    width: 100%;
    height: 400px;
    display: block;
    background-size: cover;
    background-position: center center;
}

.lSSlideOuter .lSPager.lSGallery li.active,
.lSSlideOuter .lSPager.lSGallery li:hover {
    border-radius: 0px !important;
}

.lSSlideOuter .lSPager.lSGallery li {
    height: 75px;
    border-radius: 0px !important;
}

.lSPager li a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/*=========================================================================
SECTION - ACCORDION
=========================================================================*/
section.accordion {
    background: #eee;
}

section.accordion .title:before {
    position: absolute;
    top: 10px;
    left: 0;
    width: 5px;
    height: 24px;
    content: '';
    background-color: #e20025;
}

section.accordion .title {
    font-family: 'Vinci';
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4;
    position: relative;
    display: inline-block;
    margin: 0 0 40px 0;
    padding-left: 15px;
    text-transform: uppercase
}

@media screen and (max-width: 990px) {
    section.accordion .col-md-6 {
        margin-bottom: 70px;
    }

    section.accordion .col-md-6:last-child {
        margin-bottom: 0px;
    }
}

section.accordion .col-md-6 .title {
    font-size: 20px;
    margin-bottom: 40px;
}

section.accordion .col-md-6 .title:before {
    top: 4px;
    height: 20px;
}

section.accordion .voir-item {
    text-decoration: none;
    float: right;
    color: #e20025;
    border: 2px solid #e20025;
    border-bottom: none;
    padding: 3px 20px;
    position: absolute;
    bottom: 0;
    right: 0;
}

section.accordion .block-accordion .panel-group .panel .panel-body {
    padding: 15px 20px 25px 47px;
    position: relative;
}

section.accordion .voir-item:hover {
    background: #e20025;
    color: #fff;
}

section.accordion .btn-view-more {
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 50px;
}

section.accordion .col-md-6 .title-left {
    padding: 0;
}

section.accordion .col-md-6 .title-left:before {
    content: none;
}

@media screen and (min-width: 1025px) {

    .mini-accordion .slider-vertical-wrapper .slider-for-wrapper .slick-dotted.slick-slider,
    .mini-accordion .slick-slider .slick-list,
    .mini-accordion .slider-vertical-wrapper .slider-for-wrapper .slick-vertical .slick-slide,
    .mini-accordion .slider-vertical-rwapper .slider-for-wrapper .item-wrapper {
        /* height: 520px; */
        height: auto;
    }
}

/*=========================================================================
SECTION MINI-THUMBS
=========================================================================*/
section.mini-thumbs {
    background-color: #fff;
}

section.mini-thumbs .col-md-5 {
    padding-top: 10px;
}

section.mini-thumbs .heading-main {
    margin-bottom: 0;
}

section.mini-thumbs .recent-post-inner .wrapper-image:after {
    background-color: transparent;
}

section.mini-thumbs .list-block>.item {
    padding-right: 40px;
}

section.mini-thumbs .list-block>.item:first-child {
    margin-top: 0;
}

section.mini-thumbs .media-heading {
    text-transform: uppercase;
    font-weight: 800;
}

section.mini-thumbs .detail-content>ul li {
    margin-bottom: 10px;
}

@media screen and (max-width: 990px) {
    section.mini-thumbs .col-md-7 {
        margin-top: 40px;
    }
}

/*=========================================================================
SECTION MINI-ACCORDION
=========================================================================*/
section.mini-accordion {
    background-size: auto;
}

section.mini-accordion .slider-for-wrapper {
    background: #fff;
}

section.mini-accordion .slider-nav-wrapper .slick-list {
    height: auto !important;
}

section.mini-accordion .heading-main {
    margin-bottom: 0px;
}

section.mini-accordion .slider-vertical-wrapper .slider-for-wrapper .item-wrapper .overlay {
    background: #fff;
}

section.mini-accordion .slider-vertical-wrapper .slider-for-wrapper .item-wrapper .content-wrapper .description {
    color: inherit;
}

section.mini-accordion .block-icon-3 .wrapper-icons {
    color: inherit;
}

section.mini-accordion .block-icon-3:hover .wrapper-icons,
section.mini-accordion .block-icon-3.slick-current .wrapper-icons {
    color: #fff;
}

section.mini-accordion .slider-vertical-wrapper .slider-for-wrapper .item-wrapper .content-wrapper {
    height: 100%;
    width: 100%;
}

section.mini-accordion .slider-vertical-wrapper .slider-for-wrapper .item .item-wrapper .content-wrapper .description {
    overflow-y: auto;
    height: auto;
    width: 500px;
    font-size: 16px;
    margin: 0 auto;
}

@media screen and (max-width: 600px) {
    .slider-vertical-wrapper-aboutUs .slider-for-wrapper .slick-list .slick-track .item:nth-child(2) .item-wrapper .content-wrapper .description {
        margin-top: -120px;
        margin-left: -22px;
        margin-right: -15px;
    }
    .slider-vertical-wrapper-aboutUs .slider-for-wrapper .slick-list .slick-track .item:nth-child(3) .item-wrapper .content-wrapper .description {
        margin-top: -120px;
        margin-left: -15px;
        margin-right: -15px;
    }
    .slider-vertical-wrapper-aboutUs .slider-for-wrapper .slick-list .slick-track .item:nth-child(4) .item-wrapper .content-wrapper .description {
        margin-top: -120px;
        margin-left: -15px;
        margin-right: -15px;
    }
}

section .description h4 {
    text-transform: uppercase;
    color: #3a4d6a;
    font-weight: 800;
    font-size: 19px;
    margin-bottom: 20px;
}

section.mini-accordion .slider-vertical-wrapper .slick-dots li button:before {
    color: #fff;
    opacity: .7;
}

section.mini-accordion .slider-vertical-wrapper .slick-dots li.slick-active button:before {
    color: var(--color3);
    opacity: 1;
}

section.mini-accordion .block-icon-3 {
    background: #004388;
}

section.mini-accordion .block-icon-3:hover,
section.mini-accordion .block-icon-3.slick-current {
    background-color: #ffffff;
}

section.mini-accordion .icon-cell {
    color: #fff;
}

/*=========================================================================
SECTION MINI-SLIDES
=========================================================================*/
section.mini-slides {
    background-color: #fff;
}

section.mini-slides .slider-nav .slick-slide {
    max-height: 66px;
}

section.mini-slides .heading-main {
    margin-bottom: 0;
}

section.mini-slides .recent-post-inner .wrapper-image:after {
    background-color: transparent;
}

section.mini-slides .col-md-7 {
    padding-right: 40px;
}

section.mini-slides .list-block>.item:first-child {
    margin-top: 0;
}

section.mini-slides .media-heading {
    text-transform: uppercase;
    font-weight: 800;
}

section.mini-slides .detail-content>ul li {
    margin-bottom: 10px;
}

@media screen and (max-width: 990px) {
    section.mini-slides .col-md-5 {
        margin-top: 40px;
    }

    section.mini-slides .col-md-5 img {
        width: 100%;
    }

    section.mini-slides .slider-nav .slick-slide {
        max-height: 100px;
    }
}

/*=========================================================================
SECTION - PUSHES
=========================================================================*/

/*=========================================================================
SECTION - PUSHES-posts
=========================================================================*/
.pushes-posts .heading-main {
    margin-bottom: 0;
}

/*=========================================================================
SECTION ISOTOPES
=========================================================================*/
#page-nos-realisations .kindling {
    background: none;
    display: inline-block;
    width: 33.3333%;
    vertical-align: top;
    overflow: hidden;
    padding: 15px;
}

#page-nos-realisations #isotopeContainer {
    position: absolute !important;
    top: 0;
    left: 0;
}

#page-nos-realisations .gallery-image-nav {
    margin-bottom: 20px;
}

#loadMoreReal .block-image-gallery {
    font-size: 100px;
    color: rgba(255, 255, 255, .4);
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 100;
    transition: all .2s ease-in;
    background: #213047;
}

#loadMoreReal:hover .block-image-gallery {
    font-size: 140px;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
}

.block-image-gallery .bg-hover-3 {
    width: 100%;
    height: 100%;
    background: transparent;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: background .2s ease-in;
    -moz-transition: background .2s ease-in;
    -o-transition: background .2s ease-in;
    transition: background .2s ease-in;
}

.block-image-gallery:hover .bg-hover-3 {
    background: rgba(0, 0, 0, .6);
}

/*=========================================================================
HEADER
=========================================================================*/
.header-wrapper.transparent .header-topbar {
    padding: 25px 50px 0px;
    position: absolute;
    right: 0;
    z-index: 10;
    width: 100%;
}

.header-wrapper.transparent .header-topbar:before {
    content: none;
}

.header-wrapper.transparent .header-main.header-fixed {
    background: #fff;
    display: flex;
    padding-top: 20px;
    padding-bottom: 20px;
    align-items: center;
}

.header-wrapper.transparent .header-topbar.header-fixed {
    position: fixed !important;
    width: 100%;
    top: 0;
    padding: 5px 100px 0px;
}

.header-wrapper.transparent .header-main.header-fixed .container {
    width: 100%;
    display: flex;
}

.header-wrapper.transparent .header-main.header-fixed .main-menu {
    margin-top: 0px;
    width: 100%;
}

.header-wrapper.transparent .header-main.header-fixed .main-menu #menu-menu-principal,
.header-wrapper.transparent .header-main.header-fixed .main-menu #menu-menu-principal-all {
    justify-content: flex-end;
}

.hamburger-menu {
    position: static;
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
}

.hamburger-menu:hover {
    cursor: pointer;
}

@media screen and (max-width: 992px) {
    .header-main.header-fixed .container {
        height: 45px;
    }

    .header-wrapper.transparent .header-main.header-fixed {
        padding-bottom: 8px;
        padding-top: 8px;
    }
}

@media screen and (max-width: 844px) {
    .header-wrapper.transparent .header-topbar {
        padding: 12px 20px 0px;
    }
}

@media screen and (max-width: 360px) {
    .header-wrapper.transparent .header-topbar {
        display: none;
    }
}

.wpml-ls-legacy-dropdown {
    width: 100% !important;
}

#lang_sel,
.js-wpml-ls-item-toggle,
.wpml-ls-link {
    background-color: transparent !important;
    border: none !important;
    -webkit-transition: all .3s ease-in !important;
    -moz-transition: all .3s ease-in !important;
    transition: all .3s ease-in !important;
}

.js-wpml-ls-item-toggle:hover,
.wpml-ls-link:hover {
    background-color: #bdbdbd !important;
    opacity: 0.95;
}

/*=========================================================================
LOGOS
=========================================================================*/
.custom-logo {
    width: 130px;
    height: auto;
}

.logo-color {
    display: none;
}

.logo-header-fixed {
    display: none;
}

.header-fixed .logo-header-fixed {
    display: block;
}

.logo-mobile {
    display: none;
    margin-left: auto;
}

.logo-mobile img {
    width: 100px;
    height: auto;
}

@media screen and (max-width: 1300px) {
    .header-fixed .main-menu {
        flex-direction: column;
    }

    .logo-header-fixed {
        margin-bottom: 10px;
    }

    .logo-header-fixed .custom-logo {
        width: 200px;
    }
}

@media screen and (max-width: 1190px) {
    .custom-logo {
        width: 200px;
    }
}

@media screen and (max-width: 992px) {
    .logo-mobile.logo-white {
        display: block;
    }

    .header-fixed .logo-mobile.logo-color {
        display: block;
    }
}

/*=========================================================================
SELECTEUR LANGUE
=========================================================================*/
.complements-main-nav {
    display: flex;
    align-items: flex-start;
    position: relative;
}

#lang_sel_click {
    font-family: 'Vinci';
    text-transform: uppercase;
    width: 55px;
    height: 23px;
    padding-left: 25px;
    position: relative;
    margin-top: -5px;
    overflow: hidden;
}

#lang_sel_click li {
    width: 50px;
}

#lang_sel_click a.lang_sel_sel,
#lang_sel_click ul ul,
#lang_sel_click ul ul a:visited,
#lang_sel_click a:visited,
#lang_sel_click ul ul a,
#lang_sel_click a,
#lang_sel_click a.lang_sel_sel:hover {
    background: none !important;
    color: #fff;
    border: none;
    font-size: 12px !important;
    opacity: 1;
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    transition: all .3s ease-in;
}

#lang_sel_click>ul {
    position: absolute;
    top: -25px;
}

#lang_sel_click ul {
    visibility: visible !important;
}

/* .header-fixed  #lang_sel_click a.lang_sel_sel,
.header-fixed  #lang_sel_click ul ul,
.header-fixed  #lang_sel_click ul ul a:visited,
.header-fixed  #lang_sel_click a:visited,
.header-fixed  #lang_sel_click ul ul a,
.header-fixed  #lang_sel_click a,
.header-fixed  #lang_sel_click a.lang_sel_sel:hover
{ color: #333; font-size: 12px!important; }
#lang_sel_click ul {
    visibility: visible!important;
    position: absolute;
    top: 0;
    -webkit-transition: all .4s ease-in;
     -moz-transition: all .4s ease-in;
      transition: all .4s ease-in;
}
#lang_sel_click:hover>ul { visibility: visible!important; top: -24px; }
#lang_sel_click:hover a.lang_sel_sel { opacity: 0; } */

/*=========================================================================
NAV
=========================================================================*/
#menu-menu-principal,
#menu-menu-principal-anglais,
#menu-menu-principal-all {
    float: none;
    display: flex;
    flex-wrap: wrap;
}

.navbar-nav>li {
    float: none;
}

.menu-wrapper>li>a {
    line-height: 30px;
}

.menu-wrapper>li>a:hover:before {
    content: '';
}

.header-wrapper.transparent .menu-wrapper>li>a {
    color: #fff;
    font-family: 'Vinci';
    font-weight: 100;
    font-size: 16px;
}

.header-wrapper.transparent .header-fixed .menu-wrapper>li>a {
    color: var(--color1);
}

.socials-buttons {
    margin: 0;
    padding: 0;
}

.widget_social {
    margin-bottom: 0;
    margin-right: 15px;
}

.widget_social:last-child {
    margin-right: 0px;
}

.socials-buttons {
    list-style: none;
    display: flex;
    padding-top: 5px;
}

.widget_social a {
    width: 30px;
    height: 30px;
    background: rgba(255, 255, 255, .1);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
}

.header-fixed .widget_social a {
    background: rgba(0, 0, 0, .2);
}

.widget_social a:hover {
    cursor: pointer;
}

.widget_social .widget-facebook:hover {
    background: rgba(59, 89, 152, .7) !important;
}

.widget_social .widget-twitter:hover {
    background: rgba(29, 161, 242, .7) !important;
}

.widget_social .widget-google:hover {
    background: rgba(221, 67, 55, .7) !important;
}

.widget_social .widget-linkedin:hover {
    background: rgba(59, 89, 152, .7) !important;
}

.widget_social .widget-pinterest:hover {
    background: rgba(189, 8, 28, .7) !important;
}

.widget_social .widget-vimeo:hover {
    background: rgba(26, 183, 234, .7) !important;
}

.widget_social img {
    height: 13px;
}

.header-main.header-fixed .menu-wrapper>li>a,
.header-main.header-fixed .button-search {
    line-height: 30px;
}

.header-fixed .main-menu {
    justify-content: space-between;
}

.main-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 100px;
    padding: 0px 20px;
}

.header-main .main-menu,
.header-main .button-search {
    float: none;
}

.menu-wrapper>li>a {
    font-size: 14px;
    padding: 0 15px;
}

.header-wrapper.transparent .header-fixed .button-search .icons {
    color: #333;
}

.header-fixed .nav-svg {
    background: #189fd6;
    display: flex;
    align-items: center;
}

.header-fixed .nav-svg:hover {
    background: #e20025;
}

.banner-wrapper .banner-block-left {
    float: left;
}

@media screen and (max-width: 1250px) {
    .header-wrapper.transparent .menu-wrapper>li>a {
        font-size: 13px;
    }

    .header-main .container {
        width: 100%;
    }

    .menu-wrapper>li>a {
        padding: 0 10px;
    }
}

@media screen and (max-width: 1190px) {
    .header-wrapper.transparent .header-topbar {
        padding-top: 30px;
    }

    .menu-wrapper>li>a {
        font-size: 10px;
    }

    .topbar-list.pull-right {
        display: none;
    }

    .topbar-list.pull-left {
        float: none !important;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .main-menu {
        margin-top: 120px;
    }
}

@media screen and (max-width: 992px) {
    .header-main .container {
        height: 80px;
        display: flex;
        align-items: center;
        width: 100%;
    }

    .hamburger-menu {
        display: block;
    }

    .main-menu,
    .topbar-hidden,
    .topbar-list .item {
        display: none;
    }

    .body-wrapper.mobile-menu-open .wrapper-content {
        left: 300px;
        height: 100%;
    }

    .menu-mobile-wrapper {
        display: flex;
        flex-direction: column;
        position: absolute;
        z-index: 120;
        top: 0;
        left: 0;
        overflow: auto;
        width: 300px;
        height: 100%;
        margin: 0;
        padding: 0;
        -webkit-transition: all .5s ease;
        -moz-transition: all .5s ease;
        -o-transition: all .5s ease;
        transition: all .5s ease;
        -webkit-transform: translate(-100%, 0);
        -moz-transform: translate(-100%, 0);
        -ms-transform: translate(-100%, 0);
        -o-transform: translate(-100%, 0);
        transform: translate(-100%, 0);
        border-bottom: 1px solid rgba(255, 255, 255, .05);
        background-color: #3a4d6a;
    }

    /*    .mobile-language {
        margin-top: auto;
    }*/

    .menu-mobile-wrapper #lang_sel_click {
        overflow: visible;
        padding-left: 0;
        width: 100%;
        text-align: center;
        height: auto;
    }

    .menu-mobile-wrapper #lang_sel_click>ul {
        position: static;
        width: 100%;
    }

    .menu-mobile-wrapper #lang_sel_click>ul>li {
        display: flex;
        float: none;
        width: 100%;
    }

    .menu-mobile-wrapper #lang_sel_click>ul>li a {
        display: flex;
        height: 50px;
        justify-content: center;
        align-items: center;
        border-top: 1px solid #fff;
    }

    .menu-mobile-wrapper #lang_sel_click>ul>li>a.lang_sel_sel {
        width: 50%;
        border-right: 1px solid #fff;
        background: #fff !important;
        color: #3a4d6a;
        opacity: 1 !important
    }

    .menu-mobile-wrapper #lang_sel_click>ul>li>a:hover {
        background: #fff !important;
        color: #3a4d6a !important;
        cursor: default;
    }

    .menu-mobile-wrapper #lang_sel_click li {
        width: 100%;
        border: none;
    }

    .menu-mobile-wrapper #lang_sel_click ul ul {
        position: static;
        height: auto;
    }

    #lang_sel_click a.lang_sel_sel,
    #lang_sel_click ul ul,
    #lang_sel_click ul ul a:visited,
    #lang_sel_click a:visited,
    #lang_sel_click ul ul a,
    #lang_sel_click a,
    #lang_sel_click a.lang_sel_sel:hover {
        padding: 0;
    }
}

@media screen and (max-width: 900px) {
    .header-wrapper.transparent .header-topbar.header-fixed {
        padding: 5px 25px 0px;
    }
}

@media screen and (max-width: 844px) {}

@media screen and (max-width: 767px) {}

/*=========================================================================
SEARCHBAR
=========================================================================*/
.nav-search {
    right: 40px;
    top: 50px;
}

.searchbutton {
    color: #aaa;
}

.button-search {
    line-height: 30px;
}

/*=========================================================================
SECTION MAIN SLIDER - HOME
=========================================================================*/
#homeslider .slide-banner-1-item {
    position: static;
}

#homeslider .slide-banner-1-item:after {
    content: '';
    width: 100%;
    height: 30%;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* FF3.6-15 */

    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */

    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.65) 0%, rgba(0, 0, 0, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#a6000000', endColorstr='#00000000', GradientType=0);
    /* IE6-9 */
}

#homeslider .slide-banner-1-item {
    background-size: cover;
    background-position: center center;
}

#homeslider .slick-dots {
    bottom: 60px;
}

#homeslider.slick-dotted.slick-slider {
    margin-bottom: 0;
}

#homeslider .slick-dots li button {
    width: 15px;
    height: 15px;
}

#homeslider .slick-dots li.slick-active button:before {
    background: var(--color3);
}

#homeslider .slick-dots li button:before {
    width: 15px;
    height: 15px;
    content: '';
    display: block;
    background: #ffffff;
    opacity: 1;
    border-radius: 50%;
}

/*=========================================================================
SECTION - NOS ACTIVITES
=========================================================================*/
.nos-activites .banner-1 {
    background-image: none;
}

section.nos-activites {
    background: none;
}

section.nos-activites .block-1 .block-content .title {
    /* min-height: 50px; */
}

section.nos-activites .slick-arrow {
    display: none !important;
}

section.nos-activites .section-title {
    margin-top: 50px;
}

@media screen and (min-width: 768px) {
    .home section.nos-activites .section-title {
        margin-top: 220px;

    }
}

@media screen and (min-width: 1024px) {
    .home section.nos-activites .section-title {
        margin-top: 170px;
    }

    .home section.nos-activites .section-title.section-title-french {
        margin-top: 210px;
    }
}

section.nos-activites .block-1 .block-content {
    min-height: 223px;
    display: flex;
    flex-direction: column;
}

#section-social-news .btn-view-more,
section.nos-activites .btn-view-more {
    text-align: center;
    padding-top: 40px;
}

.block-1 .block-content .readmore {
    /* margin-top: auto; */
}

section#section-technique-spe.grey-background {
    background-color: gainsboro;
}

@media screen and (min-width: 1440px) {

    #section-social-news .btn-view-more,
    section.nos-activites .btn-view-more {
        padding-top: 0;
        padding-bottom: 40px;
    }

    #page-nos-domaines-activites .btn-view-more,
    section.nos-activites .btn-view-more {
        padding-top: 0;
        padding-bottom: 100px;
    }
}

@media screen and (min-width: 1600px) {}

/*=========================================================================
SECTION - NOS METIERS - Home
=========================================================================*/


#homeslider {
    background: #dddddd;
    overflow: hidden;
}


/*=========================================================================
SECTION - NOS METIERS - Home
=========================================================================*/
#home-section-metiers {
    display: flex;
    flex-direction: column;
    width: 100%;
}

#section-gouv .list-image-gallery,
#home-section-metiers .list-image-gallery {
    width: 125%;
    position: relative;
    -webkit-transition: height 0.5s ease-in;
    -moz-transition: height 0.5s ease-in;
    -ms-transition: height 0.5s ease-in;
    -o-transition: height 0.5s ease-in;
    transition: height 0.5s ease-in;
}

#section-gouv .list-image-gallery .item,
#home-section-metiers .list-image-gallery .item {
    width: 20%;
    position: absolute;
}

#section-gouv .list-image-gallery .item:nth-child(-n+5),
#home-section-metiers .list-image-gallery .item:nth-child(-n+5) {
    position: static;
}

#section-gouv .list-image-gallery .item:nth-child(5),
#home-section-metiers .list-image-gallery .item:nth-child(5) {
    z-index: 10;
}

#section-gouv .block-image-gallery .img-full,
#home-section-metiers .block-image-gallery .img-full {
    min-width: 100%;
}

#section-gouv.white .tablist li.link,
#home-section-metiers.white .tablist li.link {
    color: #fff;
    margin: 3px 7px 3px 7px;
}

#section-gouv.white .tablist li.link.active,
#home-section-metiers.white .tablist li.link.active {
    color: #213047;
}

.metiers-nav {
    position: absolute;
    bottom: 50px;
    width: 100%;
}

.metiers-nav .container {
    display: flex;
    justify-content: flex-end;
}

.metiers-nav .arrow-nav {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    background: rgba(255, 255, 255, .3);
    color: #fff;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 10px;
}

.metiers-nav .arrow-nav:hover {
    background: #fff;
    color: #189fd6;
    cursor: pointer;
}

@media screen and (max-width: 680px) {

    #section-gouv .list-image-gallery,
    #home-section-metiers .list-image-gallery {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
    }

    #section-gouv .list-image-gallery .item,
    #home-section-metiers .list-image-gallery .item {
        width: calc(100% / 3);
        position: static;
    }

    #section-gouv .metiers-nav,
    #home-section-metiers .metiers-nav {
        display: none;
    }
}

@media screen and (max-width: 420px) {

    #section-gouv .list-image-gallery .item,
    #home-section-metiers .list-image-gallery .item {
        width: 50%;
    }
}

/*=========================================================================
SECTION - NOS METIERS - Inner
=========================================================================*/
#section-metiers-inner .voir-plus-container {
    padding-top: 100px;
}

#section-metiers-inner #voir-plus {
    text-decoration: none;
    color: #e20025;
    border: 4px solid #e20025;
    border-bottom: none;
    padding: 3px 20px 7px;
    float: right;
}

#section-metiers-inner #voir-plus:hover {
    background: #e20025;
    color: #fff;
    cursor: pointer;
}

/*=========================================================================
SECTION - MAP AGENCES HOME
=========================================================================*/
section.map-agences {
    width: 100%;
}

.map-agences-content {
    width: 100%;
    display: flex;
    position: relative;
    flex-wrap: wrap;
}

section.map-agences #map {
    width: 50%;
}

.container-form-map {
    width: 50%;
    position: relative;
    background-size: cover;
}

section.map-agences .form-map {
    width: 400px;
    height: 550px;
    padding: 25px;
    display: flex;
    flex-direction: column;
}

.form-map #search-input {
    background: none;
    border: none;
    border-bottom: 1px solid #fff;
    padding-bottom: 5px;
    color: #fff;
}

.form-map #search-input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, .7);
    font-style: italic;
}

.form-map #search-input::-moz-placeholder {
    color: rgba(255, 255, 255, .3);
    font-style: italic;
}

.form-map #search-input::placeholder {
    color: rgba(255, 255, 255, .3);
    font-style: italic;
}

.map-actions {
    display: flex;
    justify-content: flex-end;
    margin: 25px 0px;
}

.form-map .btn {
    position: static;
    align-self: flex-end;
    border: none;
    color: #3a4d6a;
    background-color: #fff;
}

.form-map .btn:hover {
    color: #fff;
    background-color: #3a4d6a;
}

#btn-clear-map-filters {
    margin-left: 5px;
    padding: 0 15px;
    display: none;
}

.map-result {
    max-height: 370px;
    overflow-y: scroll;
    color: #fff;
    list-style: none;
    margin: 0;
    padding: 0;
}

.map-item-list {
    display: flex;
    margin: 25px 0px;
    opacity: .7;
    -webkit-transition: opacity .2s ease-in;
    -moz-transition: opacity .2s ease-in;
    -o-transition: opacity .2s ease-in;
    transition: opacity .2s ease-in;
}

.map-item-list:first-child {
    margin-top: 0px;
}

.map-item-list:hover,
.map-item-list.active {
    opacity: 1;
    cursor: pointer;
}

.icon-agence {
    line-height: 15px;
    font-size: 9px;
    text-align: center;
    margin-right: 15px;
}

.icon-agence:before {
    content: url(../images/gif/icon-map-mono.png);
    display: flex;
    flex-direction: column;
}

.map-item-list.active .icon-agence:before {
    content: url(../images/gif/icon-map.png);
}

.icon-agence p {
    line-height: 12px;
}

.infos-agence p {
    margin: 0;
    font-size: 15px;
    line-height: 1.6em;
}

.infos-agence .nom-agence {
    text-transform: uppercase;
    font-size: 16px;
}

.gm-style-mtc,
.gmnoprint,
.gm-style-cc,
img[src="https://maps.gstatic.com/mapfiles/api-3/images/google_white5_hdpi.png"] {
    display: none !important;
}

@media screen and (max-width: 800px) {

    section.map-agences #map,
    .container-form-map {
        width: 100%;
    }

    section.map-agences .form-map {
        width: 100%;
    }

    .map-result,
    section.map-agences .form-map {
        max-height: none;
        overflow-y: auto;
    }
}

.no-icons-accordion {
    height: 40px;
    width: 40px;
    display: block;
    padding: 70% 0;
}

/*=========================================================================
SECTION - RESEAUX SOCIAUX
=========================================================================*/
#section-social-news .slide-block h2 {
    display: none !important;
}

#section-social-news .block-info {
    font-size: 14px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

#section-social-news .block-info .block {
    display: flex;
}

#section-social-news .block-info .block:first-child {
    padding-bottom: 5px;
}

#section-social-news .block-info .block-date {
    justify-content: flex-start;
}

#section-social-news .block-info .block-date p {
    margin: 0;
}

#section-social-news .block-info .block-icon {
    justify-content: flex-end;
    margin-left: auto;
}

.multiple-fb .description {
    height: 120px;
    overflow: hidden;
}

.multiple-fb .title a {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.multiple-fb .title a span {
    margin-left: 10px;
}

.multiple-fb .title a img {
    height: 50px;
    width: 50px;
    border-radius: 50%;
}


/*=========================================================================
FOOTER
=========================================================================*/
footer {
    position: relative;
}

footer .title-widget {
    font-family: 'Vinci';
    font-size: 20px;
    font-weight: 100;
}

.map-footer-container {
    max-width: 345px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

footer .btn {
    background-color: var(--color2) !important;
    margin-left: 0;
    margin-right: 0;
    margin-top: 10px;
}

.map-footer-container .visu {
    display: block;
    width: 100%;
}

.before-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100px;
    margin-bottom: -50px;
    position: absolute;
    z-index: 10;
    padding-right: 25px;
    padding-left: 25px;
    color: #fff;
    top: -50px;
    left: 50%;
    margin-left: calc(-1170px / 2);
    background-color: var(--color2);
    box-shadow: var(--shadow);
}

.before-footer p {
    font-family: 'Vinci';
    font-size: 18px;
    margin: 0;
    text-transform: none;
}

.before-footer .btn.main-color {
    line-height: 45px;
    background-color: transparent;
    border: 2px solid #fff;
}

footer .btn.main-color {
    line-height: 45px;
}

.before-footer:before,
.before-footer:after {
    content: none;
}

.before-footer .btn.main-color:hover {
    background-color: #fff;
    color: #2581c4;
}

footer .btn.main-color:hover {
    background-color: #fff;
    color: #e20025;
}

footer .widget_social a {
    background: #3a4d6a;
}

.wrapper-footer.white {
    background-image: none;
}

#menu-plan-du-site,
#menu-plan-du-site-all,
#menu-sitemap {
    list-style: none;
    padding: 0;
    margin: 0;
    line-height: 1.9em;
}

#menu-plan-du-site .sub-menu,
#menu-plan-du-site-all .sub-menu,
#menu-sitemap .sub-menu {
    padding-left: 15px !important;
    list-style-type: none;
}

#menu-plan-du-site a,
#menu-plan-du-site-all a,
#menu-sitemap a {
    color: #fff;
    /* opacity: .6; */
    transition: opacity .2s ease-in;
    -webkit-transition: opacity .2s ease-in;
}

#menu-plan-du-site a:hover,
#menu-plan-du-site-all a:hover,
#menu-sitemap a:hover {
    opacity: 1;
}

.map-footer img {
    width: 100%;
    margin-bottom: 15px;
}

footer .links-websites {
    list-style: none;
}

footer .links-websites a {
    color: #fff;
    opacity: .6;
    font-size: bold;
}

footer .links-websites a:hover {
    opacity: 1;
    text-decoration: underline;
}

@media screen and (max-width: 1200px) {
    .before-footer {
        margin-left: calc(-970px / 2);
    }
}

@media screen and (max-width: 1091px) {
    .map-footer-container .btn.main-color {
        width: 100%;
        margin-bottom: 10px;
    }
}

@media screen and (max-width: 990px) {
    .before-footer {
        margin-left: calc(-750px / 2);
    }
}

@media screen and (max-width: 844px) {
    .map-footer-container {
        margin: auto;
    }
}

@media screen and (max-width: 800px) {
    .before-footer {
        width: 90%;
        position: static;
        margin: 0px auto 20px;
    }
}

@media screen and (max-width: 768px) {
    footer {
        text-align: center;
    }

    .item-footer {
        margin-bottom: 40px;
    }

    footer .socials-buttons {
        display: flex;
        justify-content: center;
    }
}

/*=========================================================================
INNER PAGES
=========================================================================*/
.banner-pages {
    background-image: none;
    position: relative;
    padding-bottom: 50px;
}

.banner-pages h1.title {
    line-height: 33px;
}

.banner-pages:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(4, 9, 33, .4);
    z-index: 1;
}

.banner-pages .banner-wrapper {
    border-bottom: none;
    position: relative;
}

.title-wrapper {
    position: relative;
    z-index: 2;
    width: 100%;
}

.breadcrumb-item {
    color: #fff;
}

.breadcrumb-item a,
.banner-pages .breadcrumb-item .breadcrumb-link {
    color: rgba(255, 255, 255, .5);
}

.breadcrumb-item a:hover {
    color: rgba(255, 255, 255, .8) !important;
}

.btn.white-color {
    color: #ffffff;
    background-color: transparent;
}

.btn.white-color:hover {
    color: #e20025;
    border-color: #ffffff;
    background-color: #ffffff;
}

section .container h6.titleInfo {
    padding: 0;
    font-size: 20px;
    margin-bottom: 40px;
}

#section-about {
    position: relative;
    margin-top: -45px;
    z-index: 10;
}

#section-about .container {
    background-color: #189fd6;
}

#section-about:before,
#section-sommaire:before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
}

#section-about h6.titleInfo,
#section-sommaire h6.titleInfo {
    margin-bottom: 15px;
    font-family: 'Vinci';
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    position: relative;
    margin: 0;
    margin-bottom: 10px;
    text-transform: uppercase;
}

#section-about h6.titleInfo:before {
    margin-right: 20px;
}

#section-about h6.titleInfo:after {
    margin-left: 20px;
}

#section-about .row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

section .container h6.titleInfo:before {
    content: none;
}

.image-info {
    width: 100%;
}

.text-about-header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
    padding: 20px 30px;
    ;
}

@media screen and (max-width: 768px) {
    #section-about {
        margin-top: 0;
    }
}

@media screen and (max-width: 690px) {
    .banner-pages .banner-btn {
        margin-top: 40px;
        float: none;
    }
}

/*=========================================================================
QUI SOMMES NOUS ?
=========================================================================*/

/*================ Sommaire ==================*/
#section-sommaire {
    position: relative;
}

#section-sommaire .container {
    transform: translateY(-45px);
    -webkit-transform: translateY(-45px);
    -moz-transform: translateY(-45px);
    -ms-transform: translateY(-45px);
    -o-transform: translateY(-45px);
    z-index: 10;
}

#section-sommaire .main-detail {
    padding-left: 90px;
}

#section-sommaire .detail-content {
    position: relative;
}

#section-sommaire .detail-content .title {
    margin-bottom: 10px;
    padding-left: 75px;
}

#section-sommaire .block-mot-auteur {
    color: #fff;
    position: relative;
    padding: 20px 30px;
    text-align: left;
    width: 100%;
    font-size: 16px;
}

#section-sommaire .block-mot-auteur:before,
#section-sommaire .block-mot-auteur:after {
    position: absolute;
    opacity: 0;
}

#section-sommaire .block-mot-auteur:before {
    content: url(../images/png/comma-word-top.png);
    top: 0;
    left: 0;
}

#section-sommaire .block-mot-auteur:after {
    content: url(../images/png/comma-word-bottom.png);
    bottom: 0;
    right: 0;
}

#section-sommaire .detail-content p {
    color: #fff;
    font-family: 'Vinci';
    font-size: 13px;
    text-align: justify;
}

#section-sommaire .detail-content p.author-word,
#section-sommaire .detail-content p.poste-author-word {
    margin: 0;
    text-align: right
}

#section-sommaire .detail-content p.author-word {
    text-transform: uppercase;
}

#section-sommaire .detail-content p.poste-author-word {
    line-height: 12px;
    color: #e20025;
    font-size: 12px;
    font-style: italic;
}

.mot-du-president {
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.mot-du-president .source {
    text-align: right;
    font-weight: lighter;
    font-style: italic;
    font-size: .9em;
}

.mot-du-president .author-word-pic {
    /*     position: absolute;
top: -60px; left: -60px; */

    width: 120px;
    height: 120px;
    border-radius: 100px;
    overflow: hidden;
    background-size: cover;
    border: 4px solid #fff;
}

.mot-du-president h4 {
    text-align: center;
    text-transform: uppercase;
    font-size: 1.5em;
}

.mot-du-president h4 span {
    font-size: .8em;
}

.mot-du-president .signature {
    text-align: right;
    opacity: .6;
    line-height: 1.5em;
    margin-top: 25px;
}

.video-about-us iframe {
    width: 100%;
    height: 310px;
}

.mot-du-president .footer-mot {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0 30px 20px;
}


/*================ Tableau index ==================*/
#section-index .main-title {
    text-align: center;
}

#section-index table {
    table-layout: fixed;
    width: 60%;
    margin: 0 auto;
    border-collapse: collapse;
    border: 3px solid;
    font-size: 12px;
    line-height: 12px;
}

#section-index thead th:nth-child(1) {
    width: 70%;
}

#section-index thead th:nth-child(2),
#section-index thead th:nth-child(3) {
    width: 15%;
}

#section-index tr:last-child {
    background-color: #dddddd;
    font-weight: bold;
}

#section-index th:first-child,
td:first-child {
    font-weight: bold;
}

#section-index th:first-child {
    border-top: none;
}

#section-index th,
td {
    padding: 10px;
    border: 1px solid;
}

@media screen and (max-width: 425px) {
    .mot-du-president .footer-mot {
        flex-direction: column;
    }

    #section-index thead th:nth-child(1) {
        width: 50%;
    }

    #section-index thead th:nth-child(2),
    #section-index thead th:nth-child(3) {
        width: 25%;
    }

    #section-index th,
    td {
        padding: 5px;
        text-align: center;
    }
}

.mot-du-president .footer-mot .btn {
    line-height: 45px;
    background-color: transparent;
    border: 2px solid #fff;
}

.mot-du-president .footer-mot .btn:hover {
    background-color: #fff;
    color: #2581c4;
}

/*================ About entreprise ==================*/
#section-about-company h4.title {
    display: block;
}

#section-about-company .container {
    border-bottom: 4px solid #189fd6;
    position: relative;
}

#section-about-company .buttonBottom {
    position: absolute;
    right: 0;
    bottom: -2px;
    background: #189fd6;
    border-color: #189fd6;
}

#section-about-company .buttonBottom:hover {
    background: #fff;
    color: #189fd6;
}

/*================ Gouvernance ==================*/
#section-gouv .main-title .title {
    margin: 0;
}

#popUp {
    width: 0%;
    min-height: 100%;
    background: rgba(0, 0, 0, .8);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 30;
    overflow: hidden;
}

.popUpContainer {
    position: relative;
    width: 60%;
    background: #fff;
    margin: auto;
    z-index: 11;
}

.popUpContent {
    padding: 50px 100px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    position: relative;
}

.popUpContent p {
    margin: 0;
}

.popUpContent .popPicture {
    width: 125px;
    height: 125px;
    overflow: hidden;
    border-radius: 125px;
    margin-bottom: 20px
}

.popUpContent .popPoste,
.popUpContent .popInfos {
    font-family: inherit;
    color: #aab7ca;
    font-weight: 400;
    font-style: italic;
    line-height: 17px;
}

.popUpContent .popDiplome {
    font-family: inherit;
    color: #189fd6;
    font-weight: 400;
    margin-top: 10px;
}

.popUpContent .popName {
    text-transform: uppercase;
    font-family: 'Vinci';
    font-size: 20px;
    font-weight: 700;
    margin: 5px 0px;
}

.popUpContent .popName:before {
    content: '';
    width: 4px;
    height: 14px;
    margin-right: 5px;
    background: #e20025;
    display: inline-block;
}

.popUpContent .popParcours {
    margin-top: 20px;
}

.popUpContainer .closePopUp {
    position: absolute;
    top: 0px;
    right: -25px;
    font-size: 25px;
    color: rgba(255, 255, 255, .5);
    -webkit-transition: color .4s ease;
    -moz-transition: color .4s ease;
    -o-transition: color .4s ease;
    transition: color .4s ease;
}

.popUpContainer .closePopUp:hover {
    color: #e20025;
    cursor: pointer;
}

.btn-gouv-member:hover {
    cursor: pointer;
}

@media screen and (max-width: 680px) {
    .popUpContainer {
        width: 86%;
    }

    .popUpContent {
        padding: 35px 25px;
    }

    .popUpContent .popParcours {
        max-height: none;
        overflow-y: none;
    }
}

/*================ Compteurs ==================*/
.fact {
    padding: 60px 0 35px;
}

.counters {
    display: flex;
    list-style: none;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
    margin: 0;
}

.counters::before,
.counters::after {
    content: none;
}

.white .count-number .icons {
    color: #aaa;
}

.icon-compteurs-container {
    height: 115px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 20px;
}

.icon_compteurs {
    width: 100px;
}

.count-number {
    text-align: center;
}

.count-number .more-than {
    font-family: 'Vinci';
    font-size: 16px;
    font-weight: 700;
    position: relative;
    z-index: 2;
    margin: 0;
    margin-bottom: 3px;
    text-transform: uppercase;
    opacity: .9;
}

.count-number .number {
    padding-left: 0;
    padding-top: 1rem;
}

.count-number .number:before {
    background-color: #fff;
}

.count-number .name {
    max-width: 220px;
    padding-left: 0;
    margin: auto;
    color: var(--color2);
}

@media screen and (max-width: 758px) {

    .widget_single-counter-2 {
        order: 1;
    }

    .widget_single-counter-3 {
        order: 3;
    }

    .widget_single-counter-4 {
        order: 4;
    }

    .text_icl-2 {
        order: 2;
    }

}


/*================ Espace presse ==================*/
section.accordion.presse {
    background: #fff;
}

/*=========================================================================
NOS ENGAGEMENTS & NOS COMPETENCES
=========================================================================*/
#section-securite-qualite .container,
#section-spe-associees .container {
    padding: 45px 0px;
}

/*=========================================================================
NOS REALISATIONS
=========================================================================*/
#page-nos-realisations .gallery-3col .tablist {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#page-nos-realisations .gallery-3col .tablist li.active .link {
    color: var(--color2);
}

#page-nos-realisations .gallery-3col .tablist li {
    margin: 0 10px 10px;
}

#page-nos-realisations .gallery-3col .tablist li .link:hover {
    color: var(--color1);
}

#page-nos-realisations .item-gallery {
    display: block;
    width: 100%;
    height: 100%;
}

#page-nos-realisations .gallery-3col .tablist li .link {
    font-family: 'Vinci';
    position: relative;
    padding-left: 10px;
    cursor: pointer;
    color: rgb(58, 77, 106);
    display: flex;
    align-items: flex-end;
    min-height: 30px;
    line-height: 10px;
}

#page-nos-realisations .gallery-3col .tablist li .link .activity-picto {
    height: 27px;
    margin-right: 5px;
}

#page-nos-realisations .gallery-3col .tablist li .link::before {
    position: absolute;
    bottom: -8px;
    left: 0px;
    width: 0px;
    height: 14px;
    content: "";
    transform: translateY(-50%);
    opacity: 0;
    background-color: var(--color2);
    transition: all 0.3s ease;
}

#page-nos-realisations .gallery-3col .tablist li.active .link::before {
    width: 3px;
    opacity: 1;
}

#page-nos-realisations .btn-action-realisations {
    width: 50px;
    height: 50px;
    border-radius: 50px;
    background: #eee;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px auto 0px;
    font-size: 20px;
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
}

#page-nos-realisations .btn-action-realisations:hover {
    background: #2581c4;
    color: #fff;
    cursor: pointer;
}

#page-nos-realisations .btn-action-realisations#load-less {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

#page-nos-realisations .block-image-gallery .img-full {
    width: 100%;
    min-height: 100%;
}

#lightbox {
    display: flex;
    flex-direction: column-reverse;
}

/*=========================================================================
DETAILS REALISATIONS
=========================================================================*/
#project-detail .title {
    margin: 0;
}

#project-detail .gallery-slider {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

#project-detail .slider-syncing-wrapper {
    margin-bottom: 50px;
}

#project-detail .title-project-detail {
    font-family: 'Vinci';
    font-size: 16px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 45px;
    text-transform: uppercase;
    color: #3a4d6a;
    position: relative;
}

#project-detail .title-project-detail::after {
    content: '';
    width: 40px;
    height: 4px;
    background-color: #e20025;
    position: absolute;
    left: 0;
    bottom: -13px;
}

#project-detail .partners-container {
    padding: 18px;
    min-height: 100%;
}

@media screen and (max-width: 990px) {
    .partners-container {
        margin-top: 40px;
    }
}

#section-chiffres-cles {
    position: relative;
}

#section-chiffres-cles .bgDesignImage {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    opacity: .1;
    z-index: 1;
}

#section-chiffres-cles .heading-main {
    position: absolute;
    top: -65px;
    margin: 0;
    z-index: 11;
}

#section-chiffres-cles .main-title .title {
    margin: 0;
}

#section-chiffres-cles .key-figures {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 70px 0px 0px !important;
}

#section-chiffres-cles .key-figure {
    width: 25%;
}

#section-chiffres-cles .key-figure .label {
    padding: 0px !important;
    font-size: 14px;
    text-transform: uppercase;
    white-space: normal;
}

#section-chiffres-cles .count-number {
    padding: 15px 0;
}

#section-chiffres-cles .count-number .number {
    color: #fff;
}

#section-chiffres-cles .count-number .number::before {
    content: none;
}

@media screen and (max-width: 790px) {
    #section-chiffres-cles .key-figure {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 620px) {
    #section-chiffres-cles .key-figure {
        width: 50%;
    }
}

@media screen and (max-width: 360px) {
    #section-chiffres-cles .key-figure {
        width: 100%;
    }
}

#section-in-press .block-info {
    display: flex;
}

#section-in-press .block-info .block:first-child {
    flex: .4;
}

#section-in-press .block-info .block:last-child {
    flex: .6;
}

#section-in-press .block-1 .block-image {
    background-color: #fff;
}

/*=========================================================================
PAGE METIERS
=========================================================================*/
#page-nos-competences .heading-main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

#page-nos-competences .list-image-gallery-metiers .item {
    width: 24.98%;
}

#page-nos-competences .buttonBottom-section {
    padding-bottom: 0px;
}

#page-nos-competences .buttonBottom-section .containerbuttonBottom {
    border-bottom: 4px solid #e20025;
    padding-bottom: 100px;
}

#page-nos-competences .metiers-nav {
    display: none;
}

#page-nos-competences .btn.buttonBottom {
    position: absolute;
    right: 0;
    bottom: -2px;
}

#page-nos-competences .block-image-gallery .content .link {
    font-size: 17px;
}

#page-nos-competences .block-image-gallery .content .title {
    font-size: 20px;
}

.nos-metiers-bg {
    height: 20px;
    background-color: white;
}

@media (min-width: 800px) {
    .nos-metiers-bg {
        height: 100px;
    }
}

/*=========================================================================
PAGE SINGLE METIER
=========================================================================*/
@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        transform: scale(0);
    }

    to {
        opacity: 1;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        transform: scale(1);
    }
}

@-moz-keyframes fadeIn {
    from {
        opacity: 0;
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        transform: scale(0);
    }

    to {
        opacity: 1;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        transform: scale(0);
    }

    to {
        opacity: 1;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        transform: scale(1);
    }
}

#page-single-nos-metiers h2.title {
    margin: 0;
}

#page-single-nos-metiers .content-team-member .heading-main {
    margin-bottom: 0px;
}

#page-single-nos-metiers .block-accordion #accordion-left .icons {
    background-color: #189fd6;
}

#page-single-nos-metiers .block-accordion #accordion-left .panel-title.collapsed .icons {
    color: #61728d;
    background-color: #f2f5fb;
}

#page-single-nos-metiers .block-accordion #accordion-left.panel-group .panel .panel-body {
    padding: 15px 20px 20px 47px;
    border: none;
    border-bottom: 2px solid #189fd6;
    border-left: 2px solid #189fd6;
}

.detail-contact-info .social-list {
    margin: 5px 0 0;
}

.mini-slides-reverse .main-title .title {
    margin: 0 0 20px 0;
}

.mini-slides-reverse.reverseBlue {
    padding: 0;
}

.mini-slides-reverse .item-temoignage h4.title {
    text-transform: uppercase;
    font-weight: 700;
    font-family: 'Vinci';
}

.mini-slides-reverse.reverseBlue h2.title,
.mini-slides-reverse.reverseBlue .text-temoignage {
    color: #fff;
}

.mini-slides-reverse .nav-temoignage {
    display: flex;
    list-style: none;
    width: 100%;
    margin-top: auto;
    margin-bottom: 0;
}

.mini-slides-reverse .thumb-mini-slide-reverse {
    width: 25%;
    height: 85px;
    margin: 5px;
    opacity: .5;
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
}

.mini-slides-reverse .thumb-mini-slide-reverse.selected {
    opacity: 1;
}

.mini-slides-reverse .thumb-mini-slide-reverse:hover {
    cursor: pointer;
}

.mini-slides-reverse .media-temoignage {
    position: relative;
}

.mini-slides-reverse img {
    width: 100%;
}

.mini-slides-reverse .row {
    background-color: #f1f1f1;
    display: flex;
    max-height: 620px;
    overflow: hidden;
}

.mini-slides-reverse .item-temoignage {
    margin-top: 15px;
}

.semi-container {
    padding: 40px 15px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.mini-slides-reverse .media-temoignage img {
    display: none;
}

.mini-slides-reverse .media-temoignage .selected {
    display: block;
    -webkit-animation: fadeIn .3s ease-in;
    -moz-animation: fadeIn .3s ease-in;
    animation: fadeIn .3s ease-in;
}

@media (min-width: 1200px) {
    .semi-container {
        width: calc(1170px / 2);
    }
}

@media (max-width: 992px) {
    .semi-container {
        width: 100%;
        padding: 40px 15px 5px;
    }

    .mini-slides-reverse .row {
        max-height: none;
    }

    .mini-slides-reverse .thumb-mini-slide-reverse {
        height: 100px;
    }
}

#accordion-heading-job-left,
#accordion-heading-job-right {
    text-transform: uppercase;
}

.mini-slides-reverse>.container>.row {
    display: flex;
    flex-wrap: wrap;
}

.mini-slides-reverse>.container>.row>div {
    display: flex;
    flex-direction: column;
    -webkit-transition: all .3s ease-in;
    -moz-transition: all .3s ease-in;
    -o-transition: all .3s ease-in;
    transition: all .3s ease-in;
}

#section-pushes-nos-realisations #gallery-image-grid li {
    margin: 10px 0px;
    list-style: none;
}

@media screen and (max-width: 990px) {
    .mini-slides-reverse>.row {
        flex-direction: column-reverse;
    }

    .mini-slides-reverse .media-temoignages-container {
        padding: 20px;
    }

    .semi-container {
        padding-top: 30px;
    }
}

/*=========================================================================
PAGE CONTACT
=========================================================================*/
#section-contact .item {
    padding: 5px;
}

#section-contact .container-item {
    padding: 30px 20px 20px;
}

#section-contact ul {
    list-style-type: none;
}

#section-contact .item {
    margin-bottom: 40px;
}

#section-contact .left .title {
    margin-bottom: 10px;
}

#section-contact .siege-social .fa {
    font-size: 19px;
    padding: 5px 15px 0px 0px;
}

#section-contact .info-siege-social {
    display: flex;
}

#section-contact .socials-buttons {
    margin-top: 10px;
}

#section-contact .widget_social a {
    background: #189fd6;
}

#section-contact .form-contact .wpcf7-form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#section-contact .form-contact .wpcf7-form>p {
    width: calc(50% - 5px);
    padding: 0px 10px;
    margin-bottom: 25px;
}

#section-contact .form-contact .wpcf7-form>p:nth-child(8) {
    width: 100%;
}

#section-contact .form-contact .wpcf7-form>p:nth-child(9) {
    display: flex;
    width: 100%;
    margin-bottom: 5px;
}

#section-contact .form-contact .wpcf7-form input,
#section-contact .form-contact .wpcf7-form select,
#section-contact .form-contact .wpcf7-form>p>label {
    width: 100%;
    height: 35px;
}

#section-contact .form-contact .wpcf7-form input[type="submit"] {
    width: auto;
}

#section-contact .form-contact .wpcf7-form-control-wrap {
    font-weight: normal;
}

#section-contact .form-contact .wpcf7-form textarea {
    width: calc(100% - 5px);
    padding-left: 10px;
    border: 1px solid #cfcfcf;
}

#section-contact div.wpcf7-response-output {
    margin: 0 auto;
}

#section-contact .form-contact .wpcf7-form-control-wrap input,
#section-contact .form-contact .wpcf7-form-control-wrap select {
    padding-left: 10px;
    border: 1px solid #cfcfcf;
}

#section-contact .form-contact .submit-container {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

#section-contact .btn.main-color {
    border-color: #e20025;
    background-color: transparent;
    color: #e20025;
    line-height: 35px;
    margin-left: 10px;
}

#section-contact .btn.main-color:hover {
    background: #e20025;
    color: #fff;
}

#section-contact .wpcf7-mail-sent-ok {
    color: #398f14;
}

div.wpcf7-validation-errors {
    border: 2px solid #e20025;
}

/*=========================================================================
PAGE RESULTATS RECHERCHE
=========================================================================*/
#page-search-results .site-main {
    padding-bottom: 100px;
}

#page-search-results .item {
    margin: 20px;
}

#page-search-results .text-2 {
    text-transform: uppercase;
}

#page-search-results .text-2 a {
    color: #fff;
}

#page-search-results .block-1.style-2 .block-content {
    padding: 60px 20px 55px 20px;
}

.pagination {
    display: flex;
    justify-content: center;
}

.pagination .nav-links span,
.pagination .nav-links a {
    font-family: 'Vinci';
    line-height: 32px;
    min-width: 32px;
    height: 32px;
    margin: 0 1px;
    padding: 0;
    text-align: center;
    text-transform: capitalize;
    color: #61728d;
    border: none;
    background-color: transparent;
    position: relative;
    float: left;
}

.nav-links .page-numbers:hover,
.pagination .nav-links .current {
    color: #ffffff;
    background-color: #e20025;
}

.nav-links .page-numbers.next:after,
.nav-links .page-numbers.prev:after {
    content: '';
    display: block;
    width: 0;
    height: 1px;
    background: red;
    -webkit-transition: all .2s ease-in;
    -moz-transition: all .2s ease-in;
    -o-transition: all .2s ease-in;
    transition: all .2s ease-in;
}

.nav-links .page-numbers.next:hover,
.nav-links .page-numbers.prev:hover {
    color: inherit;
    background-color: inherit;
}

.nav-links .page-numbers.next:hover:after,
.nav-links .page-numbers.prev:hover:after {
    width: 100%;
}

/*=========================================================================
PAGE 404
=========================================================================*/

@media screen and (max-width: 375px) {
    .before-footer.container {
        display: flex;
        flex-direction: column;
        height: auto;
        padding: 20px 0;
        margin-top: 20px;
    }

    .before-footer p {
        width: 50%;
        padding-bottom: 10px;
    }

    .before-footer .btn.main-color {
        width: 80%
    }
}

.retour,
.accueil {
    padding: 20px 0;
}

.retour a,
.accueil a {
    background-color: #E00022;
    padding: 5px 50px;
    color: white;
    cursor: pointer;
}

#cookie-notice {
    opacity: 0.8;
}

#cn-more-info.vinci-button-cookie {
    color: #FFFFFF;
    text-decoration: underline;
}

#cn-more-info.vinci-button-cookie:hover {
    opacity: 0.8;
}

#cookie-notice .cookie-notice-container #cn-accept-cookie.vinci-button-cookie {
    background-color: #777;
    color: #FFFFFF;
    padding: 4px 20px;
    text-decoration: none;
}

#cookie-notice .cookie-notice-container #cn-accept-cookie.vinci-button-cookie:hover {
    opacity: 0.8;
}

.cookie-notice-container {
    padding: 10px 13%;
}

/* Added */
.d-none {
    display: none;
}

/* **************************************** */
.clients {
    min-width: 300px;
    padding: 0rem 10rem;
    margin-bottom: calc(10rem - 1vh);
    margin-top: 0;
}

.clients .listClinet .slick-slide {
    margin: 0;
    padding: 0;
    width: 100%;

}

.clients .listClinet .slick-slide img {
    width: 50%;
    height: 100%;
    padding: 0;
    aspect-ratio: 1/0;
    align-items: center;
    align-self: center;
}

.clients .listClinet .slick-slide.slick-active {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    flex-wrap: nowrap;
    flex-direction: row;
    /* width: 20rem; */
}

.clients .slick-prev:before,
.slick-next:before {
    color: var(--color1);
    font-size: 2.6rem;
}