/* ============================================================
   Base Styles (Desktop)
   ============================================================ */
   #wpadminbar{
    opacity: 0;
   }
   #wpadminbar:hover{
    opacity: 1;
   }
:root{
  
  --main-color:#004D9D;
  --expertise:#8F86B9;
  --secteur:#669966;
  --blog:#FF9900;
  --heliatec:#2D87F7;
  --agence:#3499CC;
  --contact:#4600FF;
  --mekkatronix:#BA1A2F;

  --main-color-hover:#3478BC;
  --expertise-hover:#C2BDD9;
  --blog-hover:#FFC46B;
  --heliatec-hover:#83B9FB;
  --agence-hover:#90C8E4;
  --contact-hover:#B093FF;
  --secteur-hover:#C8DDC4;
  --mekkatronix-hover:#dd334a;

  --gris:#EDF1F4;

  --gradient:linear-gradient(to right, #E58564, #C89CE4);
  --gradient-hover:#E5CFEF;
}

.page-seres .page-header-mea:before{
  background-image: url(../img/hero-seres.svg);
  --background-overlay: '';
  background-size:auto 100%;
  background-position: bottom right;
  background-repeat: no-repeat;
}
.page-heliatec .page-header-mea:before{
  background-image: url(../img/hero-heliatec.svg);
  --background-overlay: '';
  background-size:auto 100%;
  background-position: bottom right;
  background-repeat: no-repeat;
}

body {
    font-size: 16px;
    font-family: 'NexaText', sans-serif!important;
    color:var(--main-color);
  }

  
  /* ===== Global Resets/Basic Styles ===== */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  h1, h2, h3, h4{
    font-family: 'NexaText', sans-serif!important;
    font-weight:800;
  }
  h5, h6{
    font-family: Arial, sans-serif!important;
    font-weight:bold;
  }
  h1{
    font-size:3.25em;
  }
  h2{
    font-size:2.25em;
  }
  h3{
    font-size:1.875em;
    line-height: 1;
    margin-bottom: 1em;
  }
  h4{
    font-size:1.5em;
  }
  h5{
    font-size:1em;
  }
  h6{
    font-size:.75em;
  }

  .typo-thin, .typo-thin p, .typo-thin h3{
    font-weight:bold!important;
  }
  .typo-seres, .typo-seres p, .typo-seres h3{
    font-family: 'NexaText', sans-serif!important;
  }
  #breadcrumbs{
    color:white;
  }
  /* ===== Header Layout ===== */
  .site-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 2rem;
    background-color: #ffffff;
    position: fixed;
    height:80px;
    top: 0;
    z-index: 99;
    width: 100%;
    max-width: 100vw;
    left: 0;
  }
  .site-header.groupe,
  .site-header.groupe .submenu{
    background:var(--main-color)
  }
  .site-header.secteurs,
  .site-header.secteurs .submenu{
    background:var(--secteur)
  }
  .site-header.expertises,
  .site-header.expertises .submenu{
    background:var(--expertise)
  }
  .site-header.agences,
  .site-header.agences .submenu{
    background:var(--agence)
  }

  .site-content{
    padding-top:80px;
  }
  
  /* Left side: Logo */
  .header-left {
    display: flex;
    align-items: flex-end;
  }
    .header-left p.header-slogan{
      font-size:12px;
      font-weight:200;
      color:var(--main-color);
      line-height:1.2;
      margin-left:30px;
    }
    .header-left p.header-slogan strong{
      font-weight:800;
    }
  
  .logo-wrapper {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #222; /* default text color */
  }
  
  .site-logo {
    max-height: 60px;
    margin-right: 0.5rem;
  }
  
  .sub-logo-text {
    font-size: 0.85rem;
    color: #777;
  }
  .site-header.active .header-left img,
  .site-header.active .header-right img{
    filter: brightness(0) invert(1);
  }
  .site-header.active .header-left p.header-slogan{
    color:white!important;
  }
  .site-header.active .info-menu > li {
      border-left: 1px solid #fff;
  }
  .site-header.active .info-menu > li a{
      color:white;
  }

  .header-right{
    display: flex;
    align-items: flex-end;
    flex-direction: column;
  }
  .header-right .header-navigation{
    margin-top:10px;
  }
  /* Submenu wrapper */
  .nav-menu{
    display: flex;
    align-items: baseline;
  }
  .nav-menu li{
    padding:0 10px;
  }
  .nav-menu > li, .nav-menu > li a:not(.btn-rejoindre){
    font-size:11px;
    color:black;
    text-transform: uppercase;
    font-weight: 600;
    cursor:pointer;
  }
  .nav-menu > li a:not(.btn-rejoindre){
    position: relative;
    color: inherit;
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  .nav-menu > li a:not(.btn-rejoindre)::after {
    content: "";
    position: absolute;
    bottom: -4px;
    left: 0;
    height: 2px;
    width: 0%;
    background: black;
    transition: width 0.3s ease;
  }
  .site-header.active .nav-menu > li a:not(.btn-rejoindre)::after {
    background: white;
  }
  
  .nav-menu > li a:hover,
  .nav-menu > li a.active {
    color: black!important;
  }
  .site-header.active .nav-menu > li a:not(.btn-rejoindre):hover,
  .site-header.active .nav-menu > li a:not(.btn-rejoindre).active {
    color: white!important;
  }
  
  .nav-menu > li a:not(.btn-rejoindre):hover::after,
  .nav-menu > li a:not(.btn-rejoindre).active::after {
    width: 100%;
  }
  .submenu {
    position: fixed;
    top: 80px;
    left: 0;
    width: 100%;
    background: #fff;
    display: none;
    z-index: 1000;
    padding: 40px;
  }

  .submenu-inner {
    display: flex;
    margin: 0 auto;
    gap: 40px;
  }

  .submenu-left {
    flex: 1;
    min-width: 200px;
    border-right:1px white solid;
  }

  .submenu-left h3{
    color:white;
  }

  .submenu-right {
    flex: 2;
  }
  .submenu-right ul{
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(7, auto); /* max 6 lignes */
    grid-auto-columns: minmax(0, 30%);
  }
  .submenu-right ul li{
    break-inside: avoid;
    margin-bottom: 30px;
    position: relative;
    padding-left:36px;
  }
   .submenu-right ul.expertises-grid{
      display: grid;
      grid-auto-flow: column;
      grid-template-rows: repeat(1, auto); /* max 6 lignes */
      grid-auto-columns: minmax(0, 30%);
   }
   .submenu-right ul.expertises-grid ul{
      display: block;
   }
   .submenu-right ul.expertises-grid li{
    margin-bottom:15px;
   }
   .expertises-grid {
  display: flex;
  gap: 2.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.expertises-col {
  flex: 1 1 0;
  min-width: 180px;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.menu-expertises-section {
  margin-bottom: 0;
}
.menu-expertises-title {
  color:white;
  font-weight: bold;
  font-size: 1.1em;
  margin-bottom: 1em;
  display: block;
}
.menu-expertises-section ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu-expertises-section li {
  margin: 0 0 0.3em 0;
}

/* NAV */
/* Hide mobile header/menu on desktop */
.mobile-header, .mobile-menu-panel { display: none; }


@media (max-width: 900px) {
  .expertises-grid {
    flex-direction: column;
    gap: 2rem;
  }
  .expertises-col {
    gap: 1.5rem;
  }
}
   ul li.tag-seres::before,
   ul li.tag-expertises-seres::before{
    position: absolute;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    top: -6px;
    left: 0;
    background-size: 100%;
    background: url(../img/pisto_coin_seres.svg) no-repeat;
    background-size: 100% 100%;
  }
   ul li.tag-heliatec::before,
   ul li.tag-secteurs::before,
   ul li.tag-expertises::before{
    position: absolute;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    top: -6px;
    left: 0;
    background-size: 100%;
    background: url(../img/pisto_coin_heliatec.svg) no-repeat;
    background-size: 100% 100%;
  }
  ul li.tag-seres.tag-heliatec::before,
  ul li.tag-seres.tag-secteurs::before{
    position: absolute;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    top: -6px;
    left: -3px;
    background-size: 100%;
    background: url(../img/picto_seres_heliatec.svg) no-repeat;
    background-size: 100% 100%;
  }
  .submenu-right ul li a{
    color:white;
  }

  .submenu-right ul li a:hover{
    text-decoration: underline;
  }


  /* Overlay */
  .submenu-overlay {
    position: fixed;
    top: 80px;
    left: 0;
    width: 100%;
    height: calc(100vh - 80px);
    background: rgba(0, 0, 0, 0.8);
    z-index: 999;
    display: none;
  }

  /* Active submenu */
  .submenu.active,
  .submenu-overlay.active {
    display: block;
  }
  
  /* ===== Right area: icons + button ===== */
  
  .info-menu {
    list-style: none;
    display: flex;
    align-items: center;
  }
  
  .info-menu > li {
    min-width:40px;
    text-align:center;
    display:flex;
    justify-content: center;
    align-items: center;
    border-left:1px solid #004D9D;
  }

  .info-menu > li.lang-switch:last-child {
    border-left: none; /* remove left border for the first item */
    border-right:1px solid #004D9D;
  }

  .lang-switch{ margin-left:0px; }
  .lang-switch a{
    color:var(--main-color);
    font-size:14px;
  }
  .lang-switch a.active{
    text-decoration:underline;
    font-weight:bold;
  }
  
  .info-menu a img {
    display: inline-block;
    vertical-align: middle;
  }
  
  /* Gradient button (NOUS REJOINDRE) */
  .btn-rejoindre {
    display: inline-block;
    text-decoration: none;
    font-weight: 700;
    color: #fff;
    font-size:13px;
    padding: 5px 12px;
    border-radius: 25px;
    background: linear-gradient(to right, #ff7e65, #b66dd6);
    transition: opacity 0.2s ease;
    text-transform: uppercase;
  }
  
  .btn-rejoindre:hover {
    opacity: 0.8;
  }
  .elementor-widget-breadcrumbs{
    margin:2em 3em;
  }
  .elementor-widget-breadcrumbs a{
    cursor:pointer;
    text-decoration: underline!important;
  }
  /* testimonials */
  .elementor-testimonial-wrapper{
    display: flex;
    flex-direction: row-reverse;
  }
  .elementor-testimonial-wrapper .elementor-testimonial-content,
  .elementor-testimonial-wrapper .elementor-testimonial-meta{
    width:50%!important;
  }
  .elementor-testimonial-wrapper .elementor-testimonial-meta-inner{
    display: flex!important;
    flex-direction: column!important;
    justify-content: center!important;
    align-items: center!important;
    max-width:80%;
    align-self: center;
    justify-self: center;
  }
  .elementor-testimonial-wrapper .elementor-testimonial-content{
    text-align:left!important;
    font-weight:800!important;
    font-size:1.375em!important;
  }

  /* button page secteur */
  .btn-agence{
    display: inline-block;
    background:#fff;
    border:1px  solid black;
    border-radius:13px;
    color:black;
    text-decoration: none;
    font-size:12px;
    padding:3px 10px;
    transition: all .5s;
    margin:0 1em 1em 0;
  }
  .btn-agence:hover{
    background:black;
    color:#fff;
  }
  .btn-read-more a, .form-container input[type=submit]{
    font-family: 'NexaText', sans-serif !important;
    font-weight: 800;
    border-radius:30px;
    font-size:1.25em;
    background:transparent;
    cursor:pointer;
    position:relative;
    text-align:left;
    padding-right:60px;
  }
  .btn-read-more.black a, .form-container input[type=submit]{
    border:1px solid black;
    color:black;
  }
  .btn-read-more a::before, .form-container input[type=submit]::before{
    content:'';
    display:block;
    width:30px;
    height:30px;
    background:url(../img/fleche.svg) center center no-repeat;
    position:absolute;
    right:10px;
    top:50%;
    transform: translateY(-50%);
    border:1px solid white;
    border-radius:50%;
  }
  .btn-read-more.black a::before, .form-container input[type=submit]::before{
    border:1px solid black;
    background:url(../img/fleche-black.svg) center center no-repeat;
  }
  .page-fille .btn-read-more.black:hover a{
    background:var(--secteur);
    border-color:var(--secteur);
    color:white;
  }
  .form-container input[type=submit]{
    display: inline-block;
    line-height: 1;
    padding: 12px 24px;
    fill: #fff;
    transition: all .3s;
  }
  .form-container input[type=submit]:hover{
    background:var(--contact-hover);
    border-color:var(--contact-hover);
    color:black;
  }
  .page-fille .btn-read-more.black:hover a::before, .form-container input[type=submit]:hover::before{
    border:1px solid white;
    background-color:white;
  }
  .btn-read-more.white a{
    border:1px solid white;
    color:white;
  }
  .btn-read-more.white:hover a{
    border:1px solid black;
    background:black;
  }

  .no-pad{
    padding: 0!important;
  }

  /* HOME PAGE */
  .homeslide-container{
    height:calc( 100vh - 77px )!important;
    top:77px!important;
  }
  .homeslide-container .homeslide, .homeslide-container .homeslide .swiper, .homeslide-container .homeslide .swiper .swiper-slide{
    height:100%!important;
  }
  .homeslide-container .homeslide .swiper .homeslide-content{
    margin: auto;
    margin-top:10%;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: fit-content;
    width: fit-content;
    max-width:650px!important;
  }
  .homeslide-container .homeslide, .homeslide-container .homeslide .swiper .homeslide-content h2,
  .homeslide-container .homeslide, .homeslide-container .homeslide .swiper .homeslide-content p{
    color:white!important;
  }
  .homeslide-container .homeslide .swiper .homeslide-content figure{
    display: flex;
    justify-content: center;
  }
  .homeslide-container .homeslide .swiper .homeslide-content h2{
    margin:40px 0!important;
    font-weight:800!important;
    font-size:55px!important;
  }
  .homeslide-container .homeslide .swiper .homeslide-content p{
    font-size:18px!important;
    font-family: Arial, Helvetica, sans-serif!important;
  }
  .homeslide-container .homeslide .swiper .homeslide-image::before{
    content:'';
    display:block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    position: absolute;
    background:url('../img/filtre-degrade-image.svg');
    background-repeat:repeat-x;
  }
  .homeslide-image{
    height:100%;
  }
  .home-first-container{
    margin-top: calc(100vh - 120px)!important;
  }

  .home .swiper-slide.expertise{
    height:500px;
    background-color:white;
    border:3px solid #fff;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }
  .home .swiper-slide.expertise:hover{
    background-color:#2D87F7;
    border:3px solid #2D87F7;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }
  .home .swiper-slide.expertise .mea-service-image img{
    height:190px;
    width:190px;
    object-fit: cover;
    border-radius: 100%;
    margin-top:55px;
  }
  .home .swiper-slide.expertise .mea-service-contenu h4{
    color:#2D87F7;
  }
  .home .swiper-slide.expertise .mea-service-contenu p{
    font-size: 13px;
    font-family:Arial, Helvetica, sans-serif;
    padding: 0 20px;
  }
  .home .swiper-slide.expertise .mea-service-contenu .elementor-widget-button{
    align-items: flex-end;
    justify-content: flex-end;
    display: flex;
    padding: 20px;
    margin-top:auto;
  }
  .home .swiper-slide.expertise .mea-service-contenu .elementor-widget-button .elementor-button{
    width:100%;
    background:#2D87F7;
    border:2px solid #2D87F7;
    color:white;
  }
  .home .swiper-slide.expertise .mea-service-contenu .elementor-widget-button .elementor-button:hover{
    width:100%;
    color:#2D87F7;
    background:white;
  }

  .home .swiper-slide.expertise.category-expertises-seres{
    height:500px;
    background-color:white;
    border:3px solid #fff;
    background-image:none;
  }
  .home .swiper-slide.expertise.category-expertises-seres:hover{
    background-color:#004D9D;
    border:3px solid #004D9D;
  }
  .home .swiper-slide.expertise.category-expertises-seres.category-mekkatronix:hover{
    background-color:var(--mekkatronix);
    border:3px solid var(--mekkatronix);
  }

  .home .swiper-slide.expertise.category-expertises-seres .elementor-widget-button .elementor-button{
    background:#004D9D;
    border:2px solid #004D9D;
    color:white;
  }
  .home .swiper-slide.expertise.category-expertises-seres .elementor-widget-button .elementor-button:hover{
    color:#004D9D;
    background:white;
  }
  .home .swiper-slide.expertise.category-expertises-seres.category-mekkatronix .elementor-widget-button .elementor-button{
    background:var(--mekkatronix);
    border:2px solid var(--mekkatronix);
    color:white;
  }
  .home .swiper-slide.expertise.category-expertises-seres.category-mekkatronix .elementor-widget-button .elementor-button:hover{
    color:var(--mekkatronix);
    background:white;
  }
  .home .swiper-slide.expertise.category-expertises-seres .mea-service-image img{
    height:190px;
    width:190px;
    object-fit: cover;
    border-radius:0;
    margin-top:55px;
    -webkit-mask-image: url('../img/picto_seres.svg');
    mask-image: url('../img/picto_seres.svg');
    -webkit-mask-size:  100% 100%;
    mask-size: 100% 100%;
  }
  .home .swiper-slide.expertise.category-expertises-seres .mea-service-contenu h4{
    color:#004D9D;
  }
  .home .swiper-slide.expertise.category-expertises-seres.category-mekkatronix .mea-service-contenu h4{
    color:var(--mekkatronix);
  }

  .home .swiper-slide.expertise .mea-service-contenu .elementor-element:not(.elementor-page-title),
  .home .swiper-slide.service .mea-service-contenu .elementor-element:not(.elementor-page-title){
    opacity:0;
    transition: all .5s;
  }
  .home .swiper-slide.expertise:hover .mea-service-contenu .elementor-element:not(.elementor-page-title),
  .home .swiper-slide.service:hover .mea-service-contenu .elementor-element:not(.elementor-page-title){
    opacity:1;
  }
  .home .swiper-slide.expertise:hover .mea-service-contenu,
  .home .swiper-slide.service:hover .mea-service-contenu{
    height: calc(100% - 100px);
  }

  .home .swiper-slide.service{
    height:430px;
    background-color:white;
    border:3px solid #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  }
  .home .swiper-slide.service:hover{
    background-color:white;
  }
  .home .swiper-slide.service .mea-service-image img{
    height:100%;
    width:100%;
    object-fit: cover;
    border-radius:0;
  }

  .home .swiper-slide.service .mea-service-contenu h4{
    color:#004D9D;
  }
  .home .swiper-slide.service.category-secteurs .mea-service-contenu h4{
    color:#2D87F7;
  }

  .home .swiper-slide.service .mea-service-contenu .elementor-widget-button .elementor-button{
    width:100%;
    background:#004D9D;
    border:2px solid #004D9D;
    color:white;
  }
  .home .swiper-slide.service .mea-service-contenu .elementor-widget-button .elementor-button:hover{
    width:100%;
    color:#004D9D;
    background:white;
  }
  .home .swiper-slide.service.category-secteurs .mea-service-contenu .elementor-widget-button .elementor-button{
    width:100%;
    background:#2D87F7;
    border:2px solid #2D87F7;
    color:white;
  }
  .home .swiper-slide.service.category-secteurs .mea-service-contenu .elementor-widget-button .elementor-button:hover{
    width:100%;
    color:#2D87F7;
    background:white;
  }
  .home .swiper-slide.service .mea-service-image::before{
    content:'';
    display:block;
    width:50px;
    height:40px;
    position:absolute;
    top: 0;
    z-index: 99;
    right: 0;
    left: auto;
    background:url(../img/pisto_coin_seres.svg) no-repeat;
  }
  .home .swiper-slide.service.category-secteurs .mea-service-image::before{
    background:url(../img/pisto_coin_heliatec.svg) no-repeat;
  }
  .home .swiper-slide.service.category-secteurs.category-secteur-seres .mea-service-image::before{
    width: 60px;
    height: 60px;
    top: 16px;
    background:url(../img/picto_seres_heliatec.svg) no-repeat;
    background-size:100%;
  }
  .home .swiper-slide.service .mea-service-contenu p{
    font-size: 14px;
    font-family:Arial, Helvetica, sans-serif;
    padding: 0 20px;
  }

  .home .swiper-slide.service .mea-service-contenu .elementor-widget-button{
    align-items: flex-end;
    justify-content: flex-end;
    display: flex;
    padding: 20px;
    margin-top:auto;
  }

  .home .collaborateur{
    width:280px!important;
    height:380px!important;
    border-radius:20px;
    overflow:hidden;
  }
  .home .service,
  .home .expertise{
    /*width:245px!important;
    height:420px!important;*/
    border-radius:20px;
    overflow:hidden;
  }
  .home .mea-collaborateur .collaborateur-extrait,
  .home .mea-collaborateur .collaborateur-titre,
  .home .mea-collaborateur .collaborateur-contenu{
    z-index:1;
    margin:0 auto;
    text-align:center;
    color:white;
  }
  .home .mea-collaborateur .collaborateur-extrait{
    font-size:1.15em;
    margin-top:2em;
  }
  .home .mea-collaborateur .collaborateur-contenu{
    font-size:0.85em;
    line-height:1;
  }
  .home .mea-collaborateur .collaborateur-lien a{
    display:flex;
    flex-direction: column;
  }
  .home .mea-collaborateur .collaborateur-image,
  .home .swiper-slide.service .mea-service-image,
  .home .swiper-slide.expertise .mea-service-image{
    position:absolute;
    display: block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    z-index:0;
    transition:all .5s;
  }
  .home .mea-collaborateur:hover .collaborateur-image,
  .home .swiper-slide.service:hover .mea-service-image,
  .home .swiper-slide.expertise:hover .mea-service-image{
    transform: scale(1.05);
  }
  .home .swiper-slide.service .mea-service-image .elementor-widget-image,
  .home .swiper-slide.expertise .mea-service-image .elementor-widget-image{
    width:100%;
    height:100%;
  }
  .home .collaborateur .collaborateur-image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.5;
  }
  .home .collaborateur:nth-child(odd) .collaborateur-image::after {
    background-color: var(--secteur);
  }
  
  /* Pour les éléments pairs */
  .home .collaborateur:nth-child(even) .collaborateur-image::after {
    background-color: var(--main-color);
  }
  .home .swiper-slide.service,
  .home .swiper-slide.expertise{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    cursor:pointer;
  }
  .home .swiper-slide.service .mea-service-contenu,
  .home .swiper-slide.expertise .mea-service-contenu{
    background:white;
    width:100%;
    position:absolute;
    height:320px;
    top:330px;
    left:0;
    z-index:1;
    transition: all .5s;
    display:flex;
    flex-direction: column;
  }
  .home .swiper-slide.service:hover .mea-service-contenu,
  .home .swiper-slide.expertise:hover .mea-service-contenu{
    top:100px;
  }
  .home .swiper-slide.service .mea-service-contenu h4,
  .home .swiper-slide.expertise .mea-service-contenu h4{
    padding:20px 0 25px 0;
    text-align:center;
  }

  .home .swiper-slide.service .mea-service-contenu p
  .home .swiper-slide.expertise .mea-service-contenu p{
    font-size:0.8em;
    padding:0 20px;
  }
  .home .swiper-slide.service .mea-service-contenu .elementor-widget-button
  .home .swiper-slide.expertise .mea-service-contenu .elementor-widget-button{
    margin-top: auto;
    margin-bottom: 40px;
    text-align: center;
  }
  .home .swiper-slide.service
  .home .swiper-slide.expertise {
    position: relative;
  }

  .home .loop-home-agences .swiper-slide{
    height:350px;
    transition: all .5s;
  }
  .home .loop-home-agences .swiper-slide .e-parent .e-con-inner{
    background: linear-gradient(to bottom, transparent 0%, transparent 40%, #3499CC 40%, #3499CC 100%);
    border-radius:25px;
  }
  .home .loop-home-agences .swiper-slide .e-parent .e-con-inner:hover{
    background: linear-gradient(to bottom, transparent 0%, transparent 40%, white 40%, white 100%);
  }
  .home .loop-home-agences .swiper-slide .elementor-widget-theme-post-featured-image img{
    width:245px;
    height:245px;
    border-radius:100%;
    object-fit: cover;
  }
  .home .loop-home-agences .swiper-slide .elementor-page-title{
    position: relative;
    display: flex;
    justify-content: center;
  }
  .home .loop-home-agences .swiper-slide .elementor-page-title h3{
    color:white;
    font-size:16px;
    position:relative;
    padding-top: 40px;
  }
  .home .loop-home-agences .swiper-slide:hover .elementor-page-title h3{
    color:#3499CC;
  }

  .home .loop-home-agences .swiper-slide .elementor-page-title::before{
    content:'';
    display:block;
    width:50px;
    height:50px;
    position:absolute;
    top:-15px;
  }
  .home .loop-home-agences .swiper-slide:hover .elementor-page-title::before{
    filter: invert(60%) sepia(99%) saturate(1520%) hue-rotate(170deg) brightness(84%) contrast(87%)
  }
  .home .loop-home-agences .swiper-slide .seres .elementor-page-title::before{
    background:url(../img/pisto_coin_seres.svg) center center no-repeat;
    background-size:contain;
    left: 50%;
    transform: translateX(-18px);
  }
  .home .loop-home-agences .swiper-slide .heliatec .elementor-page-title::before{
    background:url(../img/pisto_coin_heliatec.svg) center center no-repeat;
    background-size:contain;
    left: 50%;
    transform: translateX(-25px);
  }

  .home .loop-home-agences .swiper-slide .heliatec.seres .elementor-page-title::before{
    background:url(../img/picto_seres_heliatec.svg) center center no-repeat;
    background-size:contain;
    left: 50%;
    transform: translateX(-25px);
  }

  .home .loop-home-agences .swiper-slide .seres .elementor-widget-theme-post-featured-image img{
    -webkit-mask-image: url('../img/masque-images-agences-seres.svg');
    mask-image: url('../img/masque-images-agences-seres.svg');
    -webkit-mask-size: cover;
    mask-size: cover;
  }


  .page-fille .cta-temoignage .elementor-testimonial-image img{
    clip-path: url('../img/masque-image-seres.png');
    -webkit-clip-path: url('../img/masque-image-seres.png');
  }

  .elementor-testimonial-wrapper .elementor-testimonial-meta-inner .elementor-testimonial-name{
    font-weight:800;
    font-size:1.125em!important;
  }
  .elementor-testimonial-wrapper .elementor-testimonial-meta-inner .elementor-testimonial-job{
    margin-top:1em;
    font-size:0.875em;
    font-family: Arial, Helvetica, sans-serif;
    font-weight:bold;
  }
  .page-fille.page-qsn .container-quick-access{
    padding:10px 0;
  }
  .page-fille.page-qsn .btn-quick-access a{
    background:white;
    border:1px solid #004D9D;
    color:#004D9D;
    border-radius:25px;
    font-size:13px;
  }
  .page-fille.page-qsn .btn-quick-access a:hover{
    color:white;
    background:#004D9D;
  }
  .page-fille .elementor-widget-text-editor ul{
    padding-left:2em;
    list-style-type:"-";
  }
  .page-fille .elementor-widget-text-editor ul li{
    padding-left:1em;
  }
  .page-fille .elementor-widget-text-editor p, .page-fille .elementor-widget-text-editor ul li{
    font-family:Arial, Helvetica, sans-serif;
  }
  .page-fille .page-header-mea .elementor-widget-text-editor p{
    margin-bottom:45px;
  }
  .page-fille .cta-type img{
    width:33px;
    height:auto;
  }
  .page-fille .cta-type .elementor-widget-text-editor p{
    margin-bottom:0!important;
    font-size:1.5em;
  }
  .page-fille .elementor-widget-heading h2{
    margin:35px 0 30px 0;
  }
  .loop-expertise .swiper-slide p,
  .loop-case-studies .swiper-slide p{
    font-size:14px;
  }
  .page-fille .loop-expertise .swiper-slide{
    border-radius:16px;
    max-height:500px;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent, .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner{
    padding:0;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner > .e-child:nth-child(1){
    padding:40px 40px;
    width:66.666%;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner > .e-child:nth-child(2){
    padding:0;
    height:100%;
    width:33.333%;
    flex-direction: row;
    justify-content: flex-end;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner > .e-child:nth-child(2) img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:0 16px 16px 0;
  }

  .cta-gris{
    background-color:var(--gris)!important;
  }
  .page-fille .cta-contact{
    margin:4.5em 0!important;
  }
  .page-fille.page-qsn .cta-contact{
    margin:0!important;
    padding:4.5em 0!important;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(1){
    padding:0;
    height:100%;
    width:50%;
    flex-direction: row;
    justify-content: flex-end;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(1) img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:16px 0 0 16px;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(2){
    justify-content: space-between;
    color:white;
    padding:50px 40px;
    width:50%;
    border-radius:0 16px 16px 0;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(2) h3{
    font-size:1.5em;
  }
  .page-fille .cta-case-studies{
    padding:2.5em 0 6em 0!important;
    margin:0;
  }
  .page-fille .loop-case-studies{
    margin:2em 0 0 0!important;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent{
    padding:0;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(1){
    padding:0;
    /*height:100%;*/
    width:33.333%;
    flex-direction: row;
    justify-content: flex-end;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(1) img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:16px 0 0 16px;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(2){
    padding:30px 30px;
    width:66.666%;
    background:white;
    border-radius:0 16px 16px 0;
    display: flex;
    flex-direction: column;
    /*justify-content: space-between;*/
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(2) h3{
    margin-bottom:20px;
  }

  .page-fille .loop-pole-activite{
    margin:0 0 0 0!important;
  }
  .page-fille .loop-pole-activite .swiper-slide{
    position: relative;
    overflow: hidden;
    cursor: pointer;
    max-height: 500px;
    height: 500px;
  }
  .page-fille .loop-pole-activite .swiper-slide .e-con-inner{
    padding:0;
    border-radius: 20px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
    background:white!important;
  }
  .page-fille .loop-pole-activite .swiper-slide .e-parent{
    padding:5px;
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-page-title{
    padding:20px 40px;
    /*background:#3478BC;
    border-radius: 20px 20px 0 0;*/
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-page-title h3{
    color:black;
    font-size:24px;
    position:relative;
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-widget-image{
    padding:40px 40px 0 40px;
    text-align:left;
  }

  .page-fille .loop-pole-activite .swiper-slide .elementor-widget-image img{
    width:auto;
    height:auto;
    max-width:90px;
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-widget-theme-post-content{
    font-size:16px;
    font-family:Arial, Helvetica, sans-serif;
    border-radius: 0 0 20px 20px;
    padding:0 40px;
  }

  .page-fille .cta-faq .e-n-accordion-item{
    margin-bottom:2em!important;
    border:0;
    background:#EDF1F4;
    border-radius:15px;
  }
  .page-fille .cta-faq .e-n-accordion-item .e-n-accordion-item-title,
  .page-fille .cta-faq .e-n-accordion-item > div{
    border:none;
  }
  .page-fille .cta-faq .e-n-accordion-item .e-n-accordion-item-title{
    padding:1em 70px 1em 70px;
    font-size:1.15em;
    position:relative;
  }
  .page-fille .cta-faq .e-n-accordion-item .e-n-accordion-item-title::before{
    content:'';
    display:block;
    background:url(../img/picto-question@2x.png) center center no-repeat;
    background-size:contain;
    width:60px;
    height:43px;
    position:absolute;
    top:1.25em;
    left:0;
    padding-right:10px;
    border-right:1px solid var(--secteur);
  }
  .page-fille.page-agence .cta-faq .e-n-accordion-item .e-n-accordion-item-title::before{
    content:'';
    display:block;
    background:url(../img/picto-question-agence@2x.png) center center no-repeat;
    background-size:contain;
    width:60px;
    height:43px;
    position:absolute;
    top:0.5em;
    left:0;
    padding-right:10px;
    border-right:1px solid var(--agence);
  }
  .page-fille .cta-faq .e-n-accordion-item > div{
    padding:0 110px 1.5em 70px;
  }

  .page-fille .cta-faq .elementor-widget-heading h2,
  .page-fille .cta-more .elementor-widget-heading h2{
    margin:0;
    line-height:1.5em;
  }
  .page-fille .cta-more .elementor-widget-heading h2{
    color:white;
  }
  .page-fille .cta-more .elementor-divider-separator{
    border-color:white!important;
  }
  .page-fille .btn-secteur-plus{
    padding:0;
  }
  .page-fille .btn-secteur-plus .btn-read-more a{
    display:flex;
    padding:10px 60px 10px 0;
    margin:0 15px 15px 0;
    font-weight:500;
    border-right:1px white solid;
    border-radius:0;
  }

  .page-fille .no-margin{
    margin-top:0!important;
    margin-bottom:0!important;
  }
  .page-fille .pad{
    padding-top:4.5em!important;
    padding-bottom:4.5em!important;
  }
  .page-fille .bloc-mea-agences{
    background:#fff;
    border-radius:16px;
  }
  .page-fille .bloc-gradient,
  .home .bloc-gradient{
    background:var(--gradient);
  }
  .page-fille .cta-recrutement{
    border-radius:0 0 16px 16px;
  }
  .page-fille .collaborateur{
    width:280px!important;
    height:380px!important;
    border-radius:20px;
    overflow:hidden;
  }
  .page-fille .service,
  .page-fille .expertise{
    /*width:245px!important;
    height:420px!important;*/
    border-radius:20px;
    overflow:hidden;
  }
  .page-fille .mea-collaborateur .collaborateur-extrait,
  .page-fille .mea-collaborateur .collaborateur-titre,
  .page-fille .mea-collaborateur .collaborateur-contenu{
    z-index:1;
    margin:0 auto;
    text-align:center;
    color:white;
  }
  .page-fille .mea-collaborateur .collaborateur-extrait{
    font-size:2em;
    line-height:1;
    margin-top:2em;
    font-weight: 800;
  }
  .page-fille .mea-collaborateur .collaborateur-contenu{
    font-size:1em;
    line-height:1;
  }
  .page-fille .mea-collaborateur .collaborateur-lien a{
    display:flex;
    flex-direction: column;
  }
  .page-fille .mea-collaborateur .collaborateur-image,
  .page-fille .swiper-slide.service .mea-service-image,
  .page-fille .swiper-slide.expertise .mea-service-image{
    position:absolute;
    display: block;
    width:100%;
    height:100%;
    top:0;
    left:0;
    z-index:0;
    transition:all .5s;
  }
  .page-fille .mea-collaborateur:hover .collaborateur-image,
  .page-fille .swiper-slide.service:hover .mea-service-image,
  .page-fille .swiper-slide.expertise:hover .mea-service-image{
    transform: scale(1.05);
  }
  .page-fille .swiper-slide.service .mea-service-image .elementor-widget-image,
  .page-fille .swiper-slide.expertise .mea-service-image .elementor-widget-image{
    width:100%;
    height:100%;
  }
  .page-fille .collaborateur .collaborateur-image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0.5;
  }
  .page-fille .collaborateur:nth-child(odd) .collaborateur-image::after {
    background-color: var(--secteur);
  }
  
  /* Pour les éléments pairs */
  .page-fille .collaborateur:nth-child(even) .collaborateur-image::after {
    background-color: var(--main-color);
  }
  .page-fille .mea-collaborateur .collaborateur-image img,
  .page-fille .swiper-slide.service .mea-service-image img,
  .page-fille .swiper-slide.expertise .mea-service-image img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .page-fille .swiper-slide.service,
  .page-fille .swiper-slide.expertise{
    position:relative;
    overflow:hidden;
    border-radius:20px;
    cursor:pointer;
  }
  .page-fille .swiper-slide.service .mea-service-contenu,
  .page-fille .swiper-slide.expertise .mea-service-contenu{
    background:white;
    width:100%;
    position:absolute;
    height:320px;
    top:330px;
    left:0;
    z-index:1;
    transition: all .5s;
    display:flex;
    flex-direction: column;
  }
  .page-fille .swiper-slide.service:hover .mea-service-contenu,
  .page-fille .swiper-slide.expertise:hover .mea-service-contenu{
    top:100px;
  }
  .page-fille .swiper-slide.service .mea-service-contenu h4,
  .page-fille .swiper-slide.expertise .mea-service-contenu h4{
    padding:20px 0 0 0;
    text-align:center;
  }

  .page-fille .swiper-slide.service .mea-service-contenu p
  .page-fille .swiper-slide.expertise .mea-service-contenu p{
    font-size:0.8em;
    padding:0 20px;
  }
  .page-fille .swiper-slide.service .mea-service-contenu .elementor-widget-button
  .page-fille .swiper-slide.expertise .mea-service-contenu .elementor-widget-button{
    margin-top: auto;
    margin-bottom: 40px;
    text-align: center;
  }
  .page-fille .swiper-slide.service
  .page-fille .swiper-slide.expertise {
    position: relative;
  }
  
  /* Pour la catégorie "seres" */
  .page-fille .swiper-slide.service.category-services-seres::before
  .page-fille .swiper-slide.expertise.category-services-seres::before {
    content: url('../img/pisto_coin_seres.svg'); /* Chemin vers le SVG */
    position: absolute;
    top: 10px;    /* Ajustez selon vos besoins */
    right: 10px;  /* Ajustez selon vos besoins */
    width: 50px;  /* Facultatif, selon la taille souhaitée */
    height: auto; /* Facultatif */
    z-index:5;
  }
  
  /* Pour la catégorie "heliatec" */
  .page-fille .swiper-slide.service.category-services-heliatec::before
  .page-fille .swiper-slide.expertise.category-services-heliatec::before {
    content: url('../img/pisto_coin_heliatec.svg');
    position: absolute;
    top: 10px;
    right: 10px;
    width: 50px;
    height: auto;
    z-index:5;
  }
  .page-fille .swiper-slide.service.category-services-seres h4,
  .page-fille .swiper-slide.service.category-services-seres a
  .page-fille .swiper-slide.expertise.category-services-seres h4,
  .page-fille .swiper-slide.expertise.category-services-seres a{
    color:#004D9D!important;
  }
  .page-fille .swiper-slide.service.category-services-heliatec h4,
  .page-fille .swiper-slide.service.category-services-heliatec a
  .page-fille .swiper-slide.expertise.category-services-heliatec h4,
  .page-fille .swiper-slide.expertise.category-services-heliatec a{
    color:#2D87F7!important;
  }
  .page-fille .swiper-slide.service a
  .page-fille .swiper-slide.expertise a{
    background:none;
    border:none;
    font-weight:800;
    font-size:1.25em;
  }
  .page-fille.page-agence .container-agence .container-agence-picto{
    left: 50% !important;
    transform: translateX(-50%);
    width:37px;
    height:25px;
  }
  .page-fille.page-agence .container-agence .container-agence-btn{
    left: 50% !important;
    transform: translateX(-50%);
  }
  .page-fille.page-agence .container-agence .container-agence-btn a{
    background:none;
    border:none;
    color:var(--agence);
    font-size:1.5em;
    font-weight:800;
  }
  .page-fille.page-agence .container-agence .container-agence-fond{
    filter: brightness(0) invert(1);
  }
  .page-fille.page-agence .container-agence:hover .container-agence-picto{
    filter: brightness(0) invert(1);
  }
  .page-fille.page-agence .container-agence:hover .container-agence-fond{
    filter:none;
  }
  .page-fille.page-agence .container-agence:hover .container-agence-btn a{
    color:white;
  }
  /* ===
  Couleurs
  === */
  .color-main .page-header-mea{
    background-color:var(--main-color)!important;
  }
    .color-main .btn-read-more.black:hover a{
      background:var(--main-color);
      border-color:var(--main-color);
      color:white;
    }
    .color-main .loop-expertise .swiper-slide{
      background:var(--main-color-hover);
    }
    .color-main .cta-faq,
    .color-main .cta-more{
      background:var(--main-color);
    }
    .color-main .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--main-color);
    }
    .color-main .cta-case-studies{
      background:var(--main-color-hover);
    }

    .color-main .title-coloured h3{
      color:var(--main-color);
    }
  .color-secteur .page-header-mea{
    background-color:var(--secteur)!important;
  }
    .color-secteur .btn-read-more.black:hover a{
      background:var(--secteur);
      border-color:var(--secteur);
      color:white;
    }
    .color-secteur .loop-expertise .swiper-slide{
      background:var(--secteur-hover);
    }
    .color-secteur .cta-faq,
    .color-secteur .cta-more{
      background:var(--secteur);
    }
    .color-secteur .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--secteur);
    }
    .color-secteur .cta-case-studies{
      background:var(--secteur-hover);
    }
    .color-secteur .title-coloured h3{
      color:var(--secteur)!important;
    }
  .color-expertise .page-header-mea{
    background-color:var(--expertise)!important;
  }
    .color-expertise .btn-read-more.black:hover a{
      background:var(--expertise);
      border-color:var(--expertise);
      color:white;
    }
    .color-expertise .loop-expertise .swiper-slide{
      background:var(--expertise-hover);
    }
    .color-expertise .cta-faq,
    .color-expertise .cta-more{
      background:var(--expertise);
    }
    .color-expertise .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--expertise);
    }
    .color-expertise .cta-case-studies{
      background:var(--expertise-hover);
    }
    .color-expertise .title-coloured h3{
      color:var(--expertise);
    }
  
  .color-mekkatronix .page-header-mea{
    background-color:var(--mekkatronix)!important;
  }
    .color-mekkatronix .btn-read-more.black:hover a{
      background:var(--mekkatronix);
      border-color:var(--mekkatronix);
      color:white;
    }
    .color-mekkatronix .loop-expertise .swiper-slide{
      background:var(--mekkatronix-hover);
    }
    .color-mekkatronix .cta-faq,
    .color-mekkatronix .cta-more{
      background:var(--mekkatronix);
    }
    .color-mekkatronix .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--mekkatronix);
    }
    .color-mekkatronix .cta-case-studies{
      background:var(--mekkatronix-hover);
    }
    .color-mekkatronix .title-coloured h3{
      color:var(--mekkatronix);
    }
  .color-blog .page-header-mea{
    background-color:var(--blog)!important;
  }
    .color-blog .btn-read-more.black:hover a{
      background:var(--blog);
      border-color:var(--blog);
      color:white;
    }
    .color-blog .loop-expertise .swiper-slide{
      background:var(--blog-hover);
    }
    .color-blog .cta-faq,
    .color-blog .cta-more{
      background:var(--blog);
    }
    .color-blog .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--blog);
    }
    .color-blog .cta-case-studies{
      background:var(--blog-hover);
    }
    .color-blog .title-coloured h3{
      color:var(--blog);
    }
  .color-heliatec .page-header-mea{
    background-color:var(--heliatec)!important;
  }
    .color-heliatec .btn-read-more.black:hover a{
      background:var(--heliatec);
      border-color:var(--heliatec);
      color:white;
    }
    .color-heliatec .loop-expertise .swiper-slide{
      background:var(--heliatec-hover);
    }
    .color-heliatec .cta-faq,
    .color-heliatec .cta-more{
      background:var(--heliatec);
    }
    .color-heliatec .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--heliatec);
    }
    .color-heliatec .cta-case-studies{
      background:var(--heliatec-hover);
    }
    .color-heliatec .title-coloured h3{
      color:var(--heliatec);
    }
  .color-agence .page-header-mea{
    background-color:var(--agence)!important;
  }
    .color-agence .btn-read-more.black:hover a{
      background:var(--agence);
      border-color:var(--agence);
      color:white;
    }
    .color-agence .loop-expertise .swiper-slide{
      background:var(--agence-hover);
    }
    .color-agence .cta-faq,
    .color-agence .cta-more{
      background:var(--agence);
    }
    .color-agence .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--agence);
    }
    .color-agence .cta-case-studies{
      background:var(--agence-hover);
    }
    .color-agence .title-coloured h3{
      color:var(--agence);
    }
  .color-contact .page-header-mea{
    background-color:var(--contact)!important;
  }
    .color-contact .loop-expertise .swiper-slide{
      background:var(--contact-hover);
    }
    .color-contact .btn-read-more.black:hover a{
      background:var(--contact);
      border-color:var(--contact);
      color:white;
    }
    .color-contact .cta-faq,
    .color-contact .cta-more{
      background:var(--contact);
    }
    .color-contact .cta-contact .e-con-inner > .e-child:nth-child(2){
      background:var(--contact);
    }
    .color-contact .cta-case-studies{
      background:var(--contact-hover);
    }
    .color-contact .title-coloured h3{
      color:var(--contact);
    }

    .color-recrutement .page-header-mea{
      background:var(--gradient)!important;
    }
      .color-recrutement .loop-expertise .swiper-slide{
        background:#E5CFEF;
      }
      .color-recrutement .btn-read-more.black:hover a{
        background:var(--gradient);
        border-color:black;
        color:black;
      }
      .color-recrutement .cta-faq,
      .color-recrutement .cta-more{
        background:var(--gradient);
      }
      .color-recrutement .cta-contact .e-con-inner > .e-child:nth-child(2){
        background:var(--gradient);
      }
      .color-recrutement .cta-case-studies{
        background:var(--gradient);
      }
      .color-recrutement .title-coloured h3{
        color:black;
      }

    .page-contact .form-container{
      display:flex;
      flex-wrap:wrap;
      justify-content: space-between;
      align-items: center;
      gap:10px;
  }
  .page-contact .form-container .form-half{
      display:inline-flex;
      width:calc(50% - 10px);
      margin-bottom:35px;
      flex-direction: column;
  }
  .page-contact .form-container .form-full{
      display:inline-flex;
      width:100%;
      margin-bottom:35px;
  }
  .page-contact .form-container .form-half p, .page-contact .form-container .form-full p,
  .page-contact .form-container .form-half span, .page-contact .form-container .form-full span{
      width:100%;
      max-width:100%;
  }
  .page-contact .form-container input:not([type="submit"]),
  .box-login input:not([type="submit"]) {
      border-bottom:1px #848484 solid;
      width:100%;
      max-width:100%;
      padding:0 5px;
  }
  .page-contact .form-container textarea{
      border:1px #848484 solid;
      color:#848484;
      font-style:italic;
      font-size:14px;
      font-weight:200;
      width:100%;
      max-width:100%;
      padding:5px;
  }
  .page-contact .form-container input::placeholder, .page-contact .form-container textarea::placeholder{
      color:#848484;
      font-style:italic;
      font-size:14px;
      font-weight:200;
  }
  .page-contact .form-container select{
      border-bottom:1px #848484 solid;
      color:#848484;
      font-style:italic;
      width:100%;
      max-width:100%;
      font-size:14px;
      font-weight:200;
      padding:0 5px;
  }
  .page-contact .wpcf7-form-control-wrap{
      width:100%;
  }
  .page-contact #captcha_input_holder{
      display:flex;
      gap:15px;
      justify-content: space-between;
  }

  .page-contact .search-bar{
    width: 700px !important;
    max-width: 100% !important;
    height:60px;
    margin: 200px auto 0 auto !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
  }
  .page-contact .search-bar .e-search-input{
    padding:20px !important;
    max-height:60px;
    border-radius:15px 0 0 15px !important;
  }
  .page-contact .elementor-widget-search .e-search-form{
    max-height:60px;
    background:white!important;
    border:1px solid black !important;
    border-radius:15px !important;
  }
  .page-contact .elementor-widget-search .e-search-submit{
    margin:0!important;
    border-radius:0 15px 15px 0 !important;
  }
  /* Fix Contact Form 7 checkbox alignment and size */
.page-contact .wpcf7-form-control.wpcf7-checkbox label {
  display: flex !important;
  align-items: flex-start;
  gap: 8px;
  width: fit-content;
  max-width: 100%;
}

.page-contact .wpcf7-form-control.wpcf7-checkbox input[type="checkbox"] {
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  margin: 2px 8px 0 0;
  box-sizing: border-box;
  flex-shrink: 0;
}

.page-contact .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item-label {
  width: auto !important;
  max-width: 100%;
  font-size: 1em;
  line-height: 1.3;
  display: inline-block;
}
  .elementor-element .swiper~.elementor-swiper-button svg{
    fill: black !important;
    opacity: 1 !important;
    width: 16px !important;
    height: 28px !important;
  }
  .elementor-swiper-button-prev{
    padding: 10px 24px 10px 20px !important;
    border: 1px solid black !important;
    border-right:none!important;
    border-radius:15px 0 0 15px;
    top: 100%!important;
    margin-top: 65px!important;
    left:calc( 100% - 122px )!important;
  }
  .elementor-swiper-button-next{
    padding: 10px 20px 10px 24px !important;
    border: 1px solid black !important;
    border-left:none!important;
    border-radius:0 15px 15px 0;
    top: 100%!important;
    margin-top: 65px!important;
  }
  .elementor-element .swiper~.elementor-swiper-button:hover{
    background:black !important;
  }
  .elementor-element .swiper~.elementor-swiper-button:hover svg{
    fill:white!important;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise{
    height:500px;
    background-color:white;
    border:3px solid #fff;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise:hover{
    background-color:#2D87F7;
    border:3px solid #2D87F7;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise .mea-service-image img{
    height:190px;
    width:190px;
    border-radius: 100%;
    margin-top:55px;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise .mea-service-contenu h4{
    color:#2D87F7;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise .mea-service-contenu .elementor-element:not(.elementor-page-title),
  .page-full-heliatec.page-fille .swiper-slide.service .mea-service-contenu .elementor-element:not(.elementor-page-title){
    opacity:0;
    transition: all .5s;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise:hover .mea-service-contenu .elementor-element:not(.elementor-page-title),
  .page-full-heliatec.page-fille .swiper-slide.service:hover .mea-service-contenu .elementor-element:not(.elementor-page-title){
    opacity:1;
  }
  .page-full-heliatec.page-fille .swiper-slide.expertise:hover .mea-service-contenu,
  .page-full-heliatec.page-fille .swiper-slide.service:hover .mea-service-contenu{
    height:calc(100% - 100px);
  }

  .page-full-heliatec.page-fille .swiper-slide.expertise .mea-service-contenu .elementor-widget-button,
  .page-full-heliatec.page-fille .swiper-slide.service .mea-service-contenu .elementor-widget-button{
    margin-top:auto;
    padding-bottom:15px;
  }

  .page-full-heliatec.page-fille .pad-decal .e-con-inner,
  .pad-decal .e-con-inner{
    padding-left:calc((100% - 1100px) / 2)!important;
  }

  .page-full-heliatec.page-fille .mea-service-contenu p{
    padding:10px 20px!important;
    font-size:13px!important;
  }
  .page-full-heliatec.page-fille .mea-service-contenu .elementor-button{
    background:none!important;
    width:100%!important;
    color:#2D87F7!important;
    font-family: 'NexaText', sans-serif !important;
    font-weight: 800;
  }

  .page-full-heliatec.page-fille .swiper-slide.service{
    height:420px!important;
    width:245px!important;
    background-color:white;
    border:3px solid #fff;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }
  .page-full-heliatec.page-fille .swiper-slide.service .mea-service-image .elementor-widget-image{
    position:relative;
  }
  .page-full-heliatec.page-fille .swiper-slide.service .mea-service-image .elementor-widget-image::before{
    content:'';
    display:block;
    position:absolute;
    top:0;
    z-index: 99;
    height:420px!important;
    width:245px!important;
    background-image:url(../img/helice-heliatec.svg);
    background-position: 75px 0;
    background-repeat: no-repeat;
    background-size:75%;
  }

  .color-main .loop-expertise .swiper-slide,
  .color-main .loop-expertise .swiper-slide h3{
    color:white;
  }
  .color-main .loop-expertise .swiper-slide .btn-read-more.black a,
  .color-main .loop-expertise .swiper-slide .btn-read-more.black a::before{
    border-color:white;
    color:white;
  }

  .color-main .loop-expertise .swiper-slide .btn-read-more.black a::before{
    background: url(../img/fleche.svg) center center no-repeat;
  }

  .site-footer{
    padding:2em 0;
    width:100%;
    background-image:url(../img/image-fond-footer.png);
    background-repeat: no-repeat;
    background-size:cover;
    z-index:5;
    position: relative;
  }
  .site-footer::before{
    content:'';
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:rgba(0, 0, 0, 0.5);
  }
  .site-footer .container{
    display:flex;
    flex-direction: row;
    justify-content: space-between;
    width:1100px;
    margin:0 auto;
    z-index:6;
    position:relative
  }
  .site-footer .container .footer-logo{
    margin-right:80px;
  }
  .site-footer .container .footer-menu{
    display:flex;
    flex-direction: row;
    justify-content: space-between;
    flex-grow:1;
  }
  .site-footer .container .footer-menu .col-footer,
  .site-footer .container .footer-menu .col-footer ul{
    display:flex;
    flex-direction: column;
    max-width:150px;
  }
  .site-footer .container .footer-menu .col-footer ul{
    list-style-type: none;
    margin:0;
    padding:0
  }
  .site-footer .container .footer-menu .col-footer ul li{
    list-style-type: none;
    margin:5px 0;
    position:relative;
  }
  .site-footer .container .footer-menu .col-footer ul li.tag-seres,
  .site-footer .container .footer-menu .col-footer ul li.tag-heliatec,
  .site-footer .container .footer-menu .col-footer ul li.tag-secteurs,
  .site-footer .container .footer-menu .col-footer ul li.tag-expertises,
  .site-footer .container .footer-menu .col-footer ul li.tag-expertises-seres{

    padding-left:30px;
  }
  .site-footer .container .footer-menu .col-footer h3{
    font-size:20px!important;
    font-weight:600!important;
    color:white!important;
    margin-bottom:15px!important;
  }
  .site-footer .container .footer-menu .col-footer ul li a{
    color:white;
    font-size:14px;
  }

  .site-footer .container .footer-menu .col-footer ul li a:hover{
    text-decoration: underline;
  }
  .site-footer .container ul{
    display:inline-flex;
    margin-top:auto;
  }
  .site-footer .container ul a{
    padding:0 5px;
    color:white;
  }
  .site-footer .container ul a:hover{
    text-decoration:underline;
  }

.footer-slider {
  overflow: hidden;
  width: 100%;
  background: #fff;
  padding: 40px 0 80px 0;
  z-index:1;
}
.footer-slider-track {
  display: flex;
  gap: 40px;
  animation: footerSliderScroll 30s linear infinite;
  align-items: center;
}
.footer-slider-item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 160px;
}
@keyframes footerSliderScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
  /* ============================================================
     Responsive Adjustments (Desktop-First)
     ============================================================ */
  
  /* For screens 1280px wide or less (e.g., smaller desktops or large tablets) */
  @media (max-width: 1280px) {
    body {
      font-size: 17px;
    }
    
    .container {
      width: 95%;
      max-width: 1280px;
    }
  }
  @media (max-width: 1023px) {
    h1{
      font-size: 2.5em;
    }
    h2{
      font-size: 1.75em;
    }
    h3 {
        font-size: 1.5em;
    }
  .header-right, .header-left, .header-navigation { display: none !important; }
  .site-header{
    padding:0;
  }
  .mobile-header { display: flex; align-items: center; justify-content: space-between; padding: 12px 16px; background: transparent; width:100%; }
  .mobile-header-left { flex: 1; }
  .mobile-header-center { flex: 1; text-align: center; }
  .lang-switch{ margin-left:20px; }
  .lang-switch a{
    color:var(--main-color);
  }
  .lang-switch a.active{
    text-decoration:underline;
    font-weight:bold;
  }
  .mobile-header-right {
    border-radius: 30px;
    padding: 6px 18px 6px 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 2px solid var(--main-color);
    transition: background 0.3s, border 0.3s;
  }
  .mobile-logo { height: 38px; }
  .mobile-menu-label { color: var(--main-color); font-weight: bold; margin-right: 10px; }
  .mobile-burger { background: none; border: none; cursor: pointer; width: 32px; height: 32px; display: flex; flex-direction: column; justify-content: center; gap: 5px; }
  .mobile-burger span { display: block; height: 3px; background: #222; border-radius: 2px; }
  .mobile-burger span { width: 100%; }
  .mobile-menu-panel {
    display: block;
    position: fixed; top: 80px; left: 0; width: 100vw; height: 100vh;
    background: #fff; z-index: 9999;
    transform: translateX(-100%);
    transition: transform .35s cubic-bezier(.4,0,.2,1);
    overflow-y: auto;
  }
  .mobile-menu-panel.open { transform: translateX(0); }
  .mobile-menu-panel { margin: 0 0 0 0; }
  .mobile-menu-panel ul { list-style: none; padding: 0; margin: 0; }
  .mobile-menu-panel li { border-bottom: 1px solid #eee; }
  .mobile-menu-panel > nav > ul > li {
    border-bottom: none;
  }
  .mobile-menu-panel > nav > ul > li:nth-last-child(-n+2) {
    border-bottom: 1px solid #eee;
  }
  .mobile-submenu-panel li {
    position:relative;
    border-bottom: none !important;
    padding-left: 36px;
  }
  ul li.tag-seres::before, ul li.tag-expertises-seres::before{
    left:36px;
  }
  ul li.tag-seres.tag-heliatec::before, ul li.tag-seres.tag-secteurs::before,
  ul li.tag-heliatec::before, ul li.tag-secteurs::before, ul li.tag-expertises::before{
    left:32px;
  }
  
  .mobile-menu-panel h3{ padding: 5px 24px; color:white; }
  .mobile-menu-panel a { display: block; padding: 18px 24px; font-size: 1.1em; color: #222; text-decoration: none; }
  .mobile-menu-panel a.btn-rejoindre{ margin:18px; color:white;}
  .mobile-menu-panel > nav > ul > li > a:not(.btn-rejoindre) {
    font-size: 2em;
    font-weight: 800;
  }
  .mobile-has-submenu:after { content: '›'; float: right; }
  .mobile-submenu-panel {
    position: fixed; top: 0; left: 100vw; width: 100vw; height: 100vh;
    background: #fff; z-index: 10001;
    transition: left .35s cubic-bezier(.4,0,.2,1);
    padding:0;
    overflow-y: auto;
    box-shadow: -2px 0 8px #0001;
  }
  .mobile-submenu-panel.open { left: 0; }
  .mobile-submenu-panel a {
    color: #fff !important;
    padding: 5px 36px;
  }
  .mobile-back { background: none; border: none; font-size: 1.25em; margin: 0 0 0 16px; cursor: pointer; color: white; }
  .mobile-burger {
    position: relative;
    width: 32px;
    height: 32px;
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    z-index: 10001;
  }
  .mobile-burger span {
    display: block;
    height: 3px;
    width: 100%;
    background: #222;
    border-radius: 2px;
    transition: all 0.3s cubic-bezier(.4,0,.2,1);
    position: relative;
  }
  .mobile-burger.open span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .mobile-burger.open span:nth-child(2) {
    opacity: 0;
  }
  .mobile-burger.open span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .mobile-header.groupe,
  .mobile-submenu-panel.groupe { background: var(--main-color) !important; }
  .mobile-header.secteurs,
  .mobile-submenu-panel.secteurs { background: var(--secteur) !important; }
  .mobile-header.expertises,
  .mobile-submenu-panel.expertises { background: var(--expertise) !important; }
  .mobile-header.agences,
  .mobile-submenu-panel.agences { background: var(--agence) !important; }
  .mobile-logo {
    filter: none;
    transition: filter 0.3s;
  }
  .mobile-logo.logo-black {
    filter: brightness(0) invert(0); /* noir */
  }
  .mobile-logo.logo-white {
    filter: brightness(0) invert(1); /* blanc */
  }
  /* Menu principal ouvert : fond menu, bordure noire, barres noires */
  .mobile-header-right.menu-open {
    background: #fff;
    border: 2px solid #222;
  }
  .mobile-header-right.menu-open .mobile-menu-label,
  .mobile-header-right.menu-open .mobile-burger span {
    color: #222;
  }
  .mobile-header-right.menu-open .mobile-burger span {
    background: #222;
  }
  /* Sous-menu ouvert : fond menu, bordure blanche, barres blanches */
  .mobile-header-right.submenu-open {
    background: transparent;
    border: 2px solid #fff;
  }
  .mobile-header-right.submenu-open .mobile-menu-label,
  .mobile-header-right.submenu-open .mobile-burger span {
    color: #fff;
  }
  .mobile-header-right.submenu-open .mobile-burger span {
    background: #fff;
  }
  /* Fermé : tout bleu */
  .mobile-header-right,
  .mobile-header-right.closed {
    border: 2px solid var(--main-color);
  }
  .mobile-header-right .mobile-menu-label{
    color:var(--main-color);
  }
  .mobile-header-right .mobile-burger span {
    background: var(--main-color);
  }
  .mobile-header-right.closed .mobile-menu-label{
    color:var(--main-color);
  }
  .mobile-header-right.closed .mobile-burger span {
    background: var(--main-color);
  }
  .menu-expertises-title{ display: none;}
  /* Burger barres animées */
  .mobile-burger span {
    transition: background 0.3s, color 0.3s;
  }
  .site-footer .container .footer-logo{
    margin:0 0 2em 0;
  }
  .site-footer .container,
  .site-footer .container .footer-menu {
    flex-direction: column;
    max-width:100vw;
    justify-content:center;
    align-items:center;
  }

  .site-footer .container ul{
    flex-direction: column;
    justify-content:center;
    align-items:center;
  }

      .expertises-grid, .mobile-submenu-panel li.expertises-col {
        flex-direction: column;
        gap: 0;
        padding:0;
        padding-left:0;
    }
    .menu-expertises-section li{
      margin:0;
    }
  .homeslide-container .homeslide .swiper .homeslide-content,
  .homeslide-image{
    height:100%;
  }
  .homeslide-container .homeslide .swiper .homeslide-content h2{
    font-size:36px!important;
    line-height:1;
  }
  .homeslide-container .homeslide .swiper .homeslide-content p{
    font-size:14px!important;
  }
  .page-fille .loop-pole-activite .swiper-slide{
    max-height:none;
    height:auto;
    min-height: 500px;
  }
  .page-fille .loop-pole-activite .swiper-slide .e-con-inner {
      flex-wrap: nowrap;
  }
  .page-fille .cta-contact,
  .page-fille.page-qsn .cta-contact,
  .page-fille .cta-recrutement,
  .page-fille.page-qsn .cta-recrutement{
    padding: 20px !important;
  }
  .page-fille .cta-contact .e-con-inner{
    flex-direction:column!important;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(1){
    width:100%;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(1) img{
    border-radius:16px 16px 0 0;
    width:100%;
  }
  .page-fille .cta-contact .e-con-inner > .e-child:nth-child(2){
    border-radius:0 0 16px 16px;
    width:100%;
  }
  .elementor-swiper-button-prev,
  .elementor-swiper-button-next{
    top:97%!important;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner > .e-child:nth-child(1){
    padding:10px;
    width:100%;
  }
  .page-fille .loop-expertise .swiper-slide .e-parent .e-con-inner > .e-child:nth-child(2){
    display:none;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(1){
    display:none;
  }
  .page-fille .loop-case-studies .swiper-slide .e-parent .e-child:nth-child(2){
    padding:10px;
    width:100%;
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-widget-theme-post-content{
    font-size:14px;
  }
  .page-fille .loop-pole-activite .swiper-slide .elementor-page-title {
      padding: 5px 40px;
  }
  .page-agence .page-header-mea .elementor-widget-breadcrumbs{
    margin:0;
  }
  .page-agence .page-header-mea > .e-con-boxed{
    padding:0;
  }
  .page-fille .cta-recrutement .e-con-inner{
    flex-direction:column!important;
  }
  .page-fille .cta-recrutement h2,
  .page-fille .cta-recrutement p{
    padding:0 20px;
  }
  .page-fille .cta-recrutement .e-con-inner .elementor-widget-image img{
    border-radius:16px 16px 0 0;
  }
  .page-fille .cta-recrutement .e-con-inner .bloc-gradient{
    border-radius:0 0 16px 16px;
  }
  .footer-slider .container{
    padding: 20px 0 40px 0!important;
  }
  .footer-slider .container > div{
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
  }
  .page-fille.page-qsn .container-quick-access{
    padding:5px;
  }
  .page-fille.page-qsn .btn-quick-access a{
    background:white;
    border:1px solid #004D9D;
    color:#004D9D;
    border-radius:25px;
    font-size:11px;
    padding:5px 8px;
    margin:5px;
  }
  .page-fille.page-qsn .btn-quick-access a:hover{
    color:white;
    background:#004D9D;
  }
}
  /* For screens 1024px wide or less (e.g., tablets in landscape mode) */
  @media (max-width: 1024px) {
    body {
      font-size: 16px;
    }
    
    .container {
      width: 90%;
      max-width: 1024px;
    }
  }
  
  /* For screens 768px wide or less (e.g., tablets in portrait mode) */
  @media (max-width: 768px) {
    body {
      font-size: 15px;
    }
    
    .container {
      width: 90%;
      max-width: 768px;
    }
  }
  
  /* For screens 480px wide or less (e.g., mobile phones) */
  @media (max-width: 480px) {
    body {
      font-size: 14px;
    }
    
    .container {
      width: 95%;
      max-width: 480px;
    }
  }