/* ==========================================================================
   VARIABLES ET TOKENS
   Doit rester en tete de feuille : toute regle qui suit peut y faire appel.
   ========================================================================== */

:root {
  /* Couleurs */
  --color-primary: #111;
  --color-primary-blue: #252e3b;
  --color-blue-accent: #2484ec;
  --color-secondary: #555;
  --color-primary-white: #fff;
  --color-primary-green: #87e09a;
  --color-primary-grey: #eaeaea;

  /* Typographie */
  --font-main: "Poppins", sans-serif;
  --font-size-base: 16px;
  --font-size-lg: 1.25rem;
  --font-size-sm: 0.875rem;

  /* Espacements */
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 2rem;
  --space-lg: 4rem;

  /* Largeurs */
  --width-third: 33%;
  --width-half: 50%;
  --width-full: 100%;
  --width-md: 1200px;

  /* Breakpoints (pour reference : non utilisables dans @media) */
  --bp-sm: 480px;
  --bp-md: 768px;
  --bp-lg: 1200px;
  --bp-xl: 1440px;

  /* Hauteurs */
  --header-height: 70px;
  --topbar-height: 40px;
}

#wpadminbar,
footer.entry-footer {
  display: none;
}
@font-face {
  font-family: "Poppins";
  src: url("fonts/Poppins-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("fonts/Poppins-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("fonts/Poppins-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("fonts/Poppins-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  width: 100%;
  box-sizing: border-box;
}

*,
:before,
:after {
  box-sizing: inherit;
}

body {
  margin: 0;
  background: #fff;
  font-family: var(--font-main);
  font-size: 13px;
  line-height: 22px;
  width: 100%;
  box-sizing: border-box;
  /* `clip` et non `hidden` : `hidden` cree un conteneur de defilement qui
     neutralise `position: sticky` chez les descendants (cf. .sticky-col). */
  overflow-x: clip;
}

/* Les elements de formulaire n'heritent pas de la police : sans ceci,
   ils resteraient sur la police par defaut du navigateur. */
button,
input,
select,
textarea {
  font-family: inherit;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}
ol {
  list-style: decimal;
}
ul.center {
  padding-right: 40px;
  list-style: none !important;
}
li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}
dt {
  font-weight: 700;
}
dd {
  margin: 0 1.5em 1.5em;
}
img {
  height: auto;
  max-width: 100%;
}
figure {
  margin: 1em 0;
}
html[lang="en"] .link-fr,
html[lang="es"] .link-fr,
html[lang="it"] .link-fr,
html[lang="de"] .link-fr,
html[lang="fr-FR"] .link-en,
html[lang="es"] .link-en,
html[lang="it"] .link-en,
html[lang="de"] .link-en,
html[lang="fr-FR"] .link-es,
html[lang="en"] .link-es,
html[lang="it"] .link-es,
html[lang="de"] .link-es,
html[lang="fr-FR"] .link-it,
html[lang="en"] .link-it,
html[lang="es"] .link-it,
html[lang="de"] .link-it,
html[lang="fr-FR"] .link-de,
html[lang="en"] .link-de,
html[lang="es"] .link-de,
html[lang="it"] .link-de {
  display: none !important;
}

html[lang="en"] .cd-currency {
  float: left;
  margin-right: 5px;
}

.page-template-page-focus-2018 .entete-page {
  padding-top: 40px !important;
}

.dd-selected {
  margin-top: 0px !important;
}
.bloc-currency-switcher .bloc-destination p,
.bloc-devise p {
  margin-top: 0 !important;
  margin-bottom: 0px !important;
  letter-spacing: 1px;
  font-size: 14px !important;
  color: black !important;
}
.dd-options li:before,
.country-list li:before {
  display: none !important;
}
.country-list {
  width: 350px !important;
}
.country-select {
  width: 100% !important;
}
.country-select.inside input,
.country-select.inside input[type="text"] {
  min-height: 73px;
  border-radius: 16px !important;
  border: 2px solid #000 !important;
}
.country-select .selected-flag {
  margin-left: 20px;
  height: 70px;
}

select.currency-switcher {
  width: 100% !important;
  background: #fff !important;
  border: none !important;
  height: 63px;
  border-radius: 30px !important;
  border: 2px solid #88e09a !important;
  padding: 5px 40px !important;
  margin-top: 0px !important;
}

.badge-nouveaux-tarifs {
  position: absolute;
  top: -40px;
  left: 50px;
}

.price-undefined {
  color: #fff !important;
  font-size: 40px;
  font-weight: 400;
  line-height: 40px;
}

.wp-image-49303.icone-true {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  padding: 5px;
  background-color: #52b474;
}
.wp-image-49303.icone-false {
  width: 20px;
  height: 20px;
}

@media (max-width: 445px) {
  .page-template-page-2018 .site-content,
  .error404 .site-content {
    top: 100px;
  }
}
@media (max-width: 1050px) {
  .badge-prix {
    top: auto !important;
    position: relative !important;
    left: calc(50% - 75px) !important;
    margin-bottom: -50px !important;
  }
}
/* Blocage du defilement quand le menu mobile est ouvert. */
body.no-scroll {
  overflow: hidden;
}

/* La regle inverse `body:not(.no-scroll) { overflow: auto }` a ete retiree :
   `overflow: auto` faisait du body un conteneur de defilement et cassait
   `position: sticky`, en plus d'ecraser l'`overflow-x: clip` ci-dessus.
   La valeur par defaut (`visible`) donne le comportement attendu. */

.show-background {
  display: block;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-10px);
  }
}

@media (min-width: 1100px) {
  .colonne1 {
    width: 25%;
    float: left;
  }
  .colonne2 {
    width: 75%;
    float: left;
  }
  .unecolonne {
    column-count: 1;
  }
  .troiscolonnes {
    column-count: 3;
  }
  .quatrecolonnes {
    column-count: 4;
  }
  .cinqcolonnes {
    column-count: 5;
  }
}
@media (max-width: 1099px) {
  .vide {
    display: none;
  }
  .descriptif-item {
    display: block;
  }
}

.site-main {
  background-color: #fff;
}

.disable #do {
  opacity: 0.5;
  cursor: not-allowed;
  transition: opacity 0.3s ease;
}
table.country-pricing-list::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 20px;
  width: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.07), transparent);
  pointer-events: none;
  z-index: 99;
}
table {
  margin: 0;
  width: 100%;
}
/* currency switcher */

a.dd-selected label {
  margin-bottom: 0;
}
.dd-desc {
  line-height: 1em !important;
}
.dd-option {
  border-bottom: 0.5px solid rgb(255 255 255) !important;
}
.dd-selected-image {
  margin-top: initial;
  transform: translateY(10px);
}
ul.dd-options.dd-click-off-close {
  margin-top: 0 !important;
}
.dd-options,
.country-list {
  padding-right: 0px !important;
}

select.currency-switcher,
.dd-select {
  appearance: none;
  border-radius: 20px !important;
  border: solid 2px #000 !important;
  position: relative;
  cursor: pointer;
  background: #ffffff !important;
  padding: 2px 10px !important;
  min-height: 71px;
}
.elementor-widget-container .dd-options {
  padding-left: 0 !important;
}

#pricing-table-container table tbody tr:nth-child(n + 11) {
  display: none;
}
.country-pricing-list tbody tr:nth-child(10)::after {
  content: "";
  display: block;
  height: 8px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.1), transparent);
}

.currency-switcher-form .dd-container .dd-options {
  max-height: 50px;
  overflow: hidden;
  transition: max-height 1s ease-in-out;
  visibility: hidden;
  opacity: 0;
}

.currency-switcher-form .dd-container.open-switcher .dd-options {
  max-height: 500px;
  visibility: visible;
  opacity: 1;
}

/* button " voir plus " */

#seemore {
  bottom: 20px;
  left: 50%;
  z-index: 999;
  padding: 10px 20px;
  font-size: 16px;
  cursor: pointer;
}

/* Tableau sms internationnaux */

table.country-pricing-list {
  /* `relative` sert d'ancrage au ::after en position absolue. */
  position: relative;
  border-collapse: collapse;
  text-align: center;
  width: 100%;
  border-color: #a7a7a7;
}
table.country-list td {
  padding: 12px;
  text-align: center;
  border-color: #fff;
}
table.country-pricing-list tbody tr {
  border-top: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
  height: 50px;
}
table.country-pricing-list tbody th {
  text-align: left;
}

table.country-pricing-list th.th-abo-title {
  border-radius: 50px 50px 0 0;
  padding: 20px 30px;
  color: #fff;
}
table.country-pricing-list th.th-abo-title div span.sub-title-abo {
  display: block;
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 3px;
  font-size: 16px;
  line-height: 1;
}
table.country-pricing-list th.th-abo-title div h3.title-abo {
  font-weight: 600 !important;
  font-size: 24px !important;
}

table.country-pricing-list th.th-abo-title div .cd-value {
  display: block;
  font-size: 52px;
  line-height: 1;
}

table.country-pricing-list th.th-abo-title div .cd-duration {
  font-size: 14px;
  font-weight: 300;
  text-transform: uppercase;
}

table.country-pricing-list th.th-abo-title:nth-child(2) {
  background: #060f31;
}
table.country-pricing-list th.th-abo-title:nth-child(3) {
  background: #2480e8;
}

table.country-pricing-list th.th-abo-title:nth-child(2) div .cd-value,
table.country-pricing-list th.th-abo-title:nth-child(3) div .cd-value,
table.country-pricing-list th.th-abo-title:nth-child(2) div h3.title-abo,
table.country-pricing-list th.th-abo-title:nth-child(3) div h3.title-abo {
  color: #fff;
}
table.country-pricing-list th.th-abo-title:nth-child(4) {
  background: #adc4ef;
  color: #060f31;
}
table.country-pricing-list th.th-abo-title:nth-child(5) {
  background: #e7ebfc;
  color: #060f31;
}
.sticky-col {
  position: sticky;
  left: 0;
  z-index: 1;
  padding-right: 10px;
  background-color: white;
  margin-left: -25px;
  padding-left: 0px;
  min-width: 140px;
}
td.sticky-col::after {
  content: "";
  border-right: 2px solid #f4f4f4;
  top: 0;
  right: 0;
  height: 100%;
  width: 10px;
  position: absolute;
}
.pt-country-selector {
  border-radius: 30px !important;
  border: 3px solid #000 !important;
}

/* ============================================
   SÉLECTEUR DE LANGUE (WEGLOT)
   ============================================ */
.select-weglot {
  display: flex;
  align-items: center;
  gap: 2px;
  justify-content: flex-start;
  flex-wrap: nowrap;
}
.select-weglot svg {
  width: 14px;
  height: 14px;
}
.header .select_weglot {
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
  width: auto;
  font-size: 14px;
  font-weight: bold;
  background-color: transparent;
}

.header .select_weglot span,
.header .select_weglot li a {
  font-size: 14px;
  font-weight: bold;
  color: var(--color-primary-white);
}

.header .select_weglot .country-selector.weglot-dropdown ul {
  position: absolute;
  top: calc(100% + 9px);
  right: calc((14rem + 3.6rem * 2) / -2);
  background-color: var(--color-primary-white);
  border: 1px solid var(--color-primary-white);
  border-radius: 0.8rem;
  box-shadow: 0.8rem 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.16);
  padding: var(--space-sm);
  width: fit-content;
  z-index: 120;
  display: none;
}

.header
  .select_weglot.select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  ul {
  top: auto;
}
.header .select_weglot .country-selector.weglot-dropdown {
  background-color: var(--color-primary-blue);
  color: var(--color-primary-white);
}
.header
  .select_weglot.select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown {
  background-color: var(--color-primary-white);
}
/* slecteur langues mobiles*/
.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  ul {
  bottom: calc(2rem + 0.2rem);
  background-color: var(--color-primary-white);
}
.header .country-selector.weglot-dropdown input:checked ~ ul,
.header .select_weglot.open .country-selector.weglot-dropdown {
  display: block;
}

.header .select_weglot.select_weglot.select_weglot_responsive span,
.header .select_weglot.select_weglot.select_weglot_responsive li a {
  color: var(--color-primary-blue);
}

.header .select_weglot .wgcurrent {
  display: flex;
  align-items: center;
  background: none;
  border: none;
  color: var(--color-primary-blue);
  cursor: pointer;
}

.header .select_weglot .wgcurrent::after {
  content: "";
  display: inline-block;
  transform: rotate(0deg);
  transition: transform 0.2s ease;
  margin-left: auto;
  top: auto;
}

.header .select_weglot .country-selector.weglot-dropdown .wgcurrent:after {
  filter: invert(1);
}

.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  .wgcurrent:after {
  filter: invert(0);
}

.header
  .select_weglot
  .country-selector.weglot-dropdown
  input:checked
  ~ .wgcurrent:after,
.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  input:checked
  ~ .wgcurrent:after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.header .select_weglot ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.header .select_weglot ul li {
  font-size: 1.4rem;
  line-height: 1.4rem;
}

.header .select_weglot ul li a {
  display: flex;
  gap: 5px;
  text-decoration: none;
  color: var(--color-primary-blue);
  transition: color 0.2s ease;
}
.header .select_weglot ul li a:hover {
  color: var(--color-blue-accent);
}
/* suppression du drapeau dans liste déroulante */
.header .select_weglot ul li a::before {
  display: none;
}
.header .weglot-flags.flag-3.fr > span:before {
  display: none;
}

/* On cache le selecteur welgot mobile */
.header .header__nav-list .select_weglot.select_weglot_responsive {
  display: none;
}

/* ============================================
   RESPONSIVE - MOBILE (max-width: 1100px)
   ============================================ */

@media (max-width: 1100px) {
  /* TOP BAR */
  .header .header__topbar .select_weglot {
    display: none;
  }

  #contact_mobile {
    display: block;
  }

  #contact {
    display: none;
  }

  /* weglot selecteur responsif phone */
  /* On cache le selecteur welgot mobile */
  .header .header__nav-list .select_weglot.select_weglot_responsive {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 10px;
  }
  .header
    .select_weglot.select_weglot_responsive
    .country-selector.weglot-dropdown
    span {
    padding: 0;
    padding-right: 60px;
  }
}

/* ============================================
   RESPONSIVE - DESKTOP (max-width: 688px)
   ============================================ */

@media (max-width: 672px) {
  .header__nav-item.header__nav-item.welgot-here {
    display: block !important;
  }
}

/* ==========================================================================
   HEADER ET NAVIGATION
   Regles restaurees et placees en fin de feuille : a specificite egale,
   elles l'emportent sur tout ce qui precede.
   ========================================================================== */

/* Entree de menu masquee cote CSS, faute de pouvoir la retirer du menu WordPress. */
#menu-item-40091 {
  display: none;
}

.main-navigation {
  clear: both;
  display: block;
  float: left;
  width: 100%;
}

.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.main-navigation ul ul {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}

.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
  left: 100%;
}

.main-navigation ul ul a {
  width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}

.main-navigation li {
  float: left;
  position: relative;
}

.main-navigation a {
  display: block;
  text-decoration: none;
}

.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.sub-menu li#menu-item-47778 a::before {
  background-position: -215px -575px;
}

.sub-menu li#menu-item-50250 a::before {
  background-position: -180px -575px;
}

.sub-menu ul {
  margin: 0 !important;
  padding: 0 !important;
}

.sub-menu a {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.header-toolbar-contact:hover .othernumbers {
  opacity: 1 !important;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

.header-toolbar-contact img {
  vertical-align: middle;
  text-align: center;
  display: inline-block;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background-color: #70e59e;
  margin-right: 3px;
  padding: 5px;
  margin-top: -2px;
  margin-left: -5px;
}

.header-toolbar-contact {
  /* `float` est neutralise par `position: absolute`, conserve tel quel. */
  float: left;
  text-align: left;
  padding: 0 5px;
  width: 400px;
  z-index: 200000000;
  position: absolute;
  margin-top: -40px;
}

#wnb-bar {
  top: 0 !important;
  border-bottom: 0px !important;
  z-index: 5 !important;
  padding: 10px 20px 10px;
  color: white !important;
  font-size: 16px !important;
  line-height: 20px;
  box-shadow: none !important;
  margin: 0 auto;
  background: #252e3b !important;
  text-align: center;
  height: auto;
  min-height: 33px;
  left: 0px;
}

#wnb-bar a {
  margin-left: 10px;
  text-decoration: none;
}

#wnb-bar a .wnb-bar-button {
  font-size: 16px !important;
  padding: 5px 15px;
  background-color: #e7d9ef;
  text-shadow: none;
  color: #12363a;
  border-radius: 20px !important;
  display: inline-block;
  margin-left: 5px;
  font-weight: bold;
  line-height: 14px;
  white-space: nowrap;
  vertical-align: baseline;
}

#wnb-bar a span:before {
  display: none;
}

.header-toolbar-contact a.number-principal {
  border-radius: 30px;
  background-color: #2c6cc9;
  margin-top: 5px;
  line-height: 27px;
  margin-right: 10px;
  color: #fff;
  text-decoration: none;
  padding: 7px 17px;
  font-size: 13px;
  line-height: 22px;
}

.content-header {
  height: 100%;
}

.header-logo {
  z-index: 15000000;
  position: relative;
  width: 170px;
}

.header-logo a {
  transition: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  position: relative;
  cursor: pointer;
}

.header-logo a svg {
  width: 160px;
  height: auto;
  margin-top: 17px;
}

.list-menu a {
  text-decoration: none !important;
}

.sous-menu li a span.icone {
  margin-right: 12px;
  margin-top: 0px;
  float: left;
}

#menu-usescase .sous-menu li a span.icone {
  margin-bottom: 70px;
}

#menu-produits .colonne2 li {
  height: 100px !important;
  display: inline-block;
  padding-bottom: 20px !important;
}

.sous-menu li a span.icone svg {
  width: 23px;
  height: 23px;
}

.sous-menu li a p {
  margin: 0 !important;
}

.sous-menu li a {
  color: #000 !important;
  min-height: 20px;
  text-transform: none !important;
  font-size: 14px !important;
  letter-spacing: 0;
  padding: 0 !important;
  display: inline-block;
  width: 100%;
  cursor: pointer;
}

#menu-plugins .sous-menu li a {
  display: inline-flex;
}

.item-principal {
  font-weight: 600;
}

.DropDown {
  animation-duration: 0.3s;
  animation-timing-function: ease-in-out;
  display: none;
  opacity: 0;
  transform: translateY(-10px);
}

.DropDown.show {
  display: block;
  animation-name: fadeIn;
  opacity: 1;
  transform: translateY(0);
}

.DropDown.hide {
  animation-name: fadeOut;
  opacity: 0;
  transform: translateY(-10px);
  display: none;
}

.Background {
  position: absolute;
  top: 75px;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #3333334d;
  display: none;
  z-index: 0;
}

#menu-connecter,
#menu-connecter p,
#menu-contact,
#menu-contact p {
  margin-right: 0 !important;
}

#menu-connecter p::after,
#menu-contact p::after {
  display: none !important;
}

#menu-connecter a {
  background-color: #252e3b !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  min-width: 85px;
  border: medium none;
  height: 40px !important;
  line-height: 40px !important;
  border-radius: 12px;
  display: inline-block;
  padding: 0px 20px;
  text-decoration: none;
}

#menu-contact a {
  background-color: #2484ec !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  min-width: 85px;
  border: medium none;
  height: 40px !important;
  line-height: 40px !important;
  border-radius: 12px;
  display: inline-block;
  padding: 0px 20px;
  text-decoration: none;
}

.header__topbar {
  background-color: var(--color-primary-blue);
  color: white;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: var(--font-size-sm);
  padding: 0 var(--space-md);
  z-index: 99;
}

.header__topbar-article {
  text-align: center;
  margin: 0 auto;
  color: white;
  font-size: 14px;
}

.header__topbar-article p {
  overflow: hidden;
  padding: 0;
  margin: 0;
  margin-right: -167px;
}

.header__topbar a.wnb-bar-button {
  font-size: 16px !important;
  padding: 5px 15px;
  background-color: #e7d9ef;
  color: #12363a;
  border-radius: 20px !important;
  display: inline-block;
  font-weight: bold;
  line-height: 14px;
  white-space: nowrap;
  text-decoration: none;
}

.header__topbar aside {
  z-index: 100;
}

.header button {
  margin-top: initial !important;
  padding: 0 !important;
  align-self: center;
  z-index: 99;
}

.header .dropdown-trigger:after {
  display: none;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }

  .main-navigation ul {
    display: block;
  }
}

@media (min-width: 1100px) {
  /* Bouton de fermeture du menu : masque en desktop */
  .bt-close {
    display: none;
  }

  #wnb-bar {
    width: 100%;
    position: fixed !important;
  }

  #wnb-bar:after {
    height: 110px;
    width: 500vw;
    left: -50vw;
  }

  .main-navigation-ul .menu-item {
    position: inherit !important;
    display: flex;
  }

  #principal-menu {
    margin: 0 !important;
    float: right;
    width: calc(100% - 180px);
    display: flex;
    justify-content: right;
    height: 100%;
  }

  .sous-menu {
    background-color: #fff !important;
    left: 0;
    padding: 5px 45px !important;
    position: absolute !important;
    top: 75px !important;
    min-height: 50px;
    margin-left: 0;
    border-bottom-left-radius: 50px;
    border-bottom-right-radius: 50px;
    width: 100%;
    z-index: 1000;
  }

  .sous-menu ul {
    margin: 0;
    padding: 0 0 20px;
  }

  .sous-menu li {
    list-style: outside none none;
    margin: 0;
    float: none !important;
    height: 40px !important;
  }

  #menu-item-expertise1 a {
    display: flex;
  }

  #menu-usescase .sous-menu li {
    display: block;
    height: 100px !important;
  }

  .sous-menu li a .descriptif-item {
    display: block;
    width: 100%;
  }

  #menu-produits .colonne2 span.icone {
    margin-bottom: 60px;
  }
}

@media (max-width: 1100px) {
  /* Affichage du burger + bouton */
  .header__wrapper_burger {
    display: flex;
  }

  .header__topbar {
    min-height: 37px;
    padding: var(--space-xs) var(--space-md);
  }

  .header__topbar-article p {
    margin-right: 0;
  }

  .header__nav-list-wrapper {
    height: 100vh;
    background-color: var(--color-primary-white);
    padding: var(--space-md);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    overflow: hidden;
    transition:
      max-height 1s cubic-bezier(0.25, 0.8, 0.25, 1),
      opacity 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
      visibility 0s ease;
  }

  .header__nav-list-second-wrapper {
    overflow: initial;
    height: auto;
  }

  .header__nav-list-wrapper.is-open {
    opacity: 1;
    visibility: visible;
    max-height: 500vh;
    overflow-y: auto;
    height: calc(100vh - 100%);
  }

  .header__nav-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: auto;
    gap: var(--space-sm);
  }

  .header__nav-item {
    padding-left: 0;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  .nav-item-wrapper {
    width: 100%;
  }

  .header__submenu-wrapper.header__submenu-inner {
    width: 100%;
  }

  .nav-item-wrapper::after {
    content: "";
    width: 12px;
    height: 12px;
    border-bottom: 2px solid;
    border-right: 2px solid;
    transform: rotate(-45deg);
    transform-origin: center;
    transition: transform 0.3s ease-in-out;
    margin-left: auto;
    margin-right: 5px;
  }

  .nav-item-wrapper.nav-simple-link::after {
    display: none;
  }

  .header__nav-item.is-open > .nav-item-wrapper::after {
    transform: rotate(45deg);
    color: var(--color-blue-accent);
  }

  .header__submenu {
    padding: 0;
    position: initial;
  }

  .header__submenu.show {
    max-height: 800px;
    border-radius: 0px;
  }

  .header__submenu-inner {
    margin-bottom: 15px;
    padding: initial;
  }

  .submenu--grid-col-5,
  .submenu--grid-col-4,
  .submenu--grid-col-3 {
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-auto-flow: row;
    row-gap: 0.25rem;
  }

  .submenu--grid-col {
    grid-auto-flow: row;
    row-gap: 0.25rem;
  }

  .header__submenu.submenu--flex {
    flex-wrap: wrap;
    gap: 0;
  }

  .header__nav.is-open {
    display: flex;
  }

  .nav-link--underline::after {
    display: none;
  }

  .header .dropdown-trigger:after {
    position: initial;
  }

  .header__nav-item.is-open .header__nav-link {
    color: var(--color-blue-accent);
    opacity: 1;
  }

  .header__nav-item:hover .header__nav-link {
    opacity: 0.5;
  }

  .header .header__background {
    position: absolute;
    left: 0;
    top: auto;
    width: 100%;
    height: 100vh;
    background-color: #3333334d;
    display: none;
    z-index: 2;
  }

  .header__main {
    height: 60px;
  }
}

@media (max-width: 1099px) {
  #icone-close {
    opacity: 0;
    display: none;
  }

  #wnb-bar {
    height: 150px;
    position: fixed !important;
    width: 100%;
  }

  #wnb-bar:after {
    height: 190px;
    width: 100vw;
    left: 0vw;
  }

  .Background {
    display: none !important;
  }

  .main-navigation-ul .menu-item {
    width: 100%;
    padding: 10px 0;
  }

  #principal-menu {
    margin: 30px 0 !important;
    padding: 0 !important;
  }

  .sous-menu {
    padding: 0 10px;
  }

  .sous-menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
  }

  .sous-menu ul a {
    padding-left: 10px !important;
  }

  #menu-produits .colonne2 span.icone {
    margin-bottom: 20px;
  }

  #menu-contact,
  #menu-connecter {
    margin-top: 10px;
  }

  .dropdown-trigger {
    position: relative;
    cursor: pointer;
  }

  .dropdown-trigger:after {
    content: "";
    background-image: url("https://www.smsmode.com/img/fleche.svg");
    position: absolute;
    right: 0;
    top: 0;
    width: 12px;
    height: 17px;
  }

  .dropdown-trigger.show:after {
    transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
  }

  .dropdown-trigger.hide:after {
    transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
  }
}

@media (max-width: 768px) {
  .menu-menu-principal-refonte-2018-container li a {
    color: #000 !important;
  }
}

@media (max-width: 672px) {
  .header__topbar {
    padding: var(--space-xs) var(--space-sm);
    gap: 5px;
  }

  .header__main {
    height: 60px;
    padding: 0 var(--space-sm);
  }

  .header__nav-list-wrapper {
    padding: var(--space-md) var(--space-sm);
  }

  .nav-item-wrapper::after {
    margin-right: 4px;
  }
}

@media (max-width: 527px) {
  .header__nav-list-wrapper.is-open {
    height: calc(100vh - 122px);
  }
}

@media (max-width: 360px) {
  .header .header__logo svg {
    width: 120px;
  }

  .header__wrapper_burger #contact {
    display: none;
  }
}

@media (pointer: coarse) {
  .header a:focus {
    opacity: 1 !important;
    outline: none;
  }
}

/* ============================================
   IMPORTS ET VARIABLES CSS
   ============================================ */

/* ============================================
   HEADER PRINCIPAL
   ============================================ */

.header {
  background-color: var(--color-primary-white);
  font-family: var(--font-main);
  font-size: 16px;
  width: var(--width-full);
  text-decoration: none;
  color: var(--color-primary-blue);
  top: 0;
  z-index: 100;
  position: sticky;
  transition: top 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================
   TOPBAR
   ============================================ */

.header__topbar {
  background-color: var(--color-primary-blue);
  color: white;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: var(--font-size-sm);
  padding: 0 var(--space-md);
  z-index: 99;
}

.header__topbar-article {
  text-align: center;
  margin: 0 auto;
  color: white;
  font-size: 14px;
}

.header__topbar-article p {
  overflow: hidden;
  padding: 0;
  margin: 0;
  margin-right: -167px;
}

.header__topbar a.wnb-bar-button {
  font-size: 16px !important;
  padding: 5px 15px;
  background-color: #e7d9ef;
  color: #12363a;
  border-radius: 20px !important;
  display: inline-block;
  font-weight: bold;
  line-height: 14px;
  white-space: nowrap;
  text-decoration: none;
}
.header__topbar aside {
  z-index: 100;
}

/* ============================================
   HEADER MAIN
   ============================================ */

.header__main {
  height: 70px;
  padding: 0 var(--space-md);
  border-bottom: 1px solid #eee;
  transition: height 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================
   LOGO
   ============================================ */

.header__logo {
  display: flex;
  align-items: center;
}
.header .header__logo svg {
  width: 140px;
  transition: width 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* ============================================
   NAVIGATION PRINCIPALE
   ============================================ */

.header__nav {
  display: flex;
  justify-content: space-between;
  flex-wrap: nowrap;
  height: 100%;
}

.header__nav-list {
  display: flex;
  align-items: center;
  height: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 20px;
}
.header__nav-list-wrapper {
  overflow: hidden;
}
.header__nav-list-second-wrapper {
  height: 100%;
  overflow: hidden;
}
.nav-item-wrapper {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}

.header__nav-item {
  height: 100%;
  display: flex;
  align-items: center;
  transition: var(--color-blue-accent) ease-in-out 0.3s;
}

/* ============================================
   LIENS DE NAVIGATION
   ============================================ */

.header__nav-link {
  text-decoration: none;
  color: var(--color-primary-blue);
  font-weight: 600;
  display: inline-block;
  transition: opacity 0.3s ease-in-out;
  margin: 0;
}

.nav-item-wrapper a:hover {
  opacity: unset;
}

.header__nav-item:hover div a {
  color: var(--color-accent);
}

/* Ligne d'hover sous le menu */
.nav-link--underline {
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}

.nav-link--underline::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px;
  width: 0;
  background-color: var(--color-blue-accent);
  transition: width 0.2s ease;
  image-rendering: auto;
}

.header__nav-item:hover .nav-link--underline::after {
  width: 100%;
}

/* ============================================
   BOUTONS DE NAVIGATION
   ============================================ */

.header__nav-link-btn {
  color: var(--color-primary-white);
  font-size: 16px;
  font-weight: 600;
  border: medium none;
  border-radius: 12px;
  display: inline-block;
  padding: 8px 16px;
  text-decoration: none;
}

#contact.header__nav-link-btn {
  background-color: var(--color-blue-accent);
}

#contact_mobile.header__nav-link-btn {
  background-color: var(--color-blue-accent);
}

#header_contact_mobile {
  background-color: var(--color-blue-accent);
}

#connexion.header__nav-link-btn {
  background-color: var(--color-primary-blue);
}

#contact_mobile {
  display: none;
}

/* ============================================
   SOUS-MENUS (DROPDOWNS)
   ============================================ */

.header__submenu {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background-color: #fff;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.7s cubic-bezier(0.25, 0.8, 0.25, 1);
  z-index: 100;
  border-bottom-left-radius: 40px;
  border-bottom-right-radius: 40px;
  pointer-events: none;
  font-size: var(--font-size-base);
}

.header__submenu.show {
  max-height: 800px;
  pointer-events: auto;
}

.header__submenu-inner {
  padding: 2rem;
  opacity: 0;
  transform: translateY(10px);
  transition:
    opacity 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
    transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  transition-delay: 0s;
}

.header__submenu.show .header__submenu-inner {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.3s;
}

.header__submenu.hide .header__submenu-inner {
  opacity: 0;
  transform: translateY(10px);
  transition-delay: 0s;
}

/* ============================================
   ÉLÉMENTS DU SOUS-MENU
   ============================================ */

.header__submenu-title {
  background-color: var(--color-primary-grey);
  padding: 5px 15px;
  border-radius: 20px;
  margin-bottom: 15px;
  display: inline-block;
  margin-top: 20px;
  margin-left: 0px;
  color: var(--color-primary);
  font-size: 13px;
  line-height: 22px;
  text-transform: uppercase;
}

.header__submenu-list {
  list-style: none;
  margin: 0;
  padding: 0;
  text-decoration: none;
}

.header__submenu-list a {
  text-decoration: none;
  color: var(--color-primary-blue);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: nowrap;
}

.header__submenu-link svg {
  min-width: 30px;
  width: 30px;
}

a.header__submenu-link.submenu-service {
  align-items: baseline;
  gap: 0;
}

.header__submenu-label {
  font-weight: 700;
  font-size: 16px;
}

.submenu-service-description {
  padding-left: 45px;
  font-size: 14px;
  margin-top: -5px;
}

/* ============================================
   LAYOUTS DU SOUS-MENU
   ============================================ */

.header__submenu-wrapper {
  min-width: 25%;
}

.submenu--flex {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: 15px;
}

.submenu--flex-icon {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: nowrap;
  gap: 15px;
  margin-bottom: 5px;
}

.submenu--flex-col {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-self: flex-start;
  gap: 5px;
}

.submenu--grid-col {
  display: grid;
  grid-auto-flow: column;
  column-gap: 2rem;
  row-gap: 1rem;
}

.submenu--grid-col-3 {
  display: grid;
  grid-template-columns: repeat(3, auto);
  grid-template-rows: repeat(2, auto);
  grid-auto-flow: column;
  column-gap: 2rem;
  row-gap: 1rem;
}

.submenu--grid-col-4 {
  display: grid;
  grid-template-columns: repeat(4, auto);
  grid-template-rows: repeat(2, auto);
  grid-auto-flow: column;
  column-gap: 2rem;
  row-gap: 1rem;
}

.submenu--grid-col-5 {
  display: grid;
  grid-template-columns: repeat(4, auto);
  grid-template-rows: repeat(2, auto);
  grid-auto-flow: column;
  column-gap: 2rem;
  row-gap: 1rem;
}

.submenu--list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.submenu--grid-2col-auto {
  display: grid;
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  gap: 1.5rem;
}

/* ============================================
   INTERACTIONS DU SOUS-MENU
   ============================================ */

.dropdown-trigger:hover .header__submenu {
  opacity: 1;
  visibility: visible;
}

.header__nav-item:has(> a:hover) .header__submenu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.header__nav-item--has-submenu:hover .DropDown {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* ============================================
   LABELS ET BADGES
   ============================================ */

.submenu__label-populaire::after {
  content: "★ Populaire";
  background-color: var(--color-blue-accent);
  border-radius: 15px;
  padding: 1px 10px;
  color: var(--color-primary-white);
  font-size: 12px;
  text-transform: uppercase;
  margin-left: 5px;
}

/* ============================================
   MENU BURGER
   ============================================ */
.header__wrapper_burger {
  display: none;
  flex-wrap: nowrap;
  flex-direction: row;
  gap: 20px;
  justify-content: end;
  align-items: center;
  height: 100%;
}

.header__burger {
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: none;
  border: none;
  cursor: pointer;
}

.header__burger-line {
  width: 24px;
  height: 2px;
  background-color: var(--color-primary);
  transition: transform 0.3s ease;
  transform-origin: center;
}

/* Animation du burger ouvert */
.header__burger.is-open .header__burger-line:nth-child(1) {
  transform: rotate(45deg) translate(3px, 6px);
}

.header__burger.is-open .header__burger-line:nth-child(2) {
  opacity: 0;
}

.header__burger.is-open .header__burger-line:nth-child(3) {
  transform: rotate(-45deg) translate(3px, -5px);
}

/* ============================================
   BACKGROUND ET OVERLAYS
   ============================================ */

.header__background {
  display: none;
  height: 100vh;
  position: absolute;
  width: 100%;
  background: #0000002e;
  z-index: 2;
}

.show-background {
  display: block;
}

.no-scroll {
  overflow-y: hidden;
}

/* ============================================
   SÉLECTEUR DE LANGUE (WEGLOT)
   ============================================ */
.select-weglot {
  display: flex;
  align-items: center;
  gap: 2px;
  justify-content: flex-start;
  flex-wrap: nowrap;
}
.select-weglot svg {
  width: 14px;
  height: 14px;
}
.header .select_weglot {
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
  width: auto;
  font-size: 14px;
  font-weight: bold;
  background-color: transparent;
}

.header .select_weglot span,
.header .select_weglot li a {
  font-size: 14px;
  font-weight: bold;
  color: var(--color-primary-white);
}

.header .select_weglot .country-selector.weglot-dropdown ul {
  position: absolute;
  top: calc(100% + 9px);
  right: calc((14rem + 3.6rem * 2) / -2);
  background-color: var(--color-primary-white);
  border: 1px solid var(--color-primary-white);
  border-radius: 0.8rem;
  box-shadow: 0.8rem 0.8rem 2.4rem 0 rgba(0, 0, 0, 0.16);
  padding: var(--space-sm);
  width: fit-content;
  z-index: 120;
  display: none;
}

.header
  .select_weglot.select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  ul {
  top: auto;
}
.header .select_weglot .country-selector.weglot-dropdown {
  background-color: var(--color-primary-blue);
  color: var(--color-primary-white);
}
.header
  .select_weglot.select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown {
  background-color: var(--color-primary-white);
}
/* slecteur langues mobiles*/
.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  ul {
  bottom: calc(2rem + 0.2rem);
  background-color: var(--color-primary-white);
}
.header .country-selector.weglot-dropdown input:checked ~ ul,
.header .select_weglot.open .country-selector.weglot-dropdown {
  display: block;
}

.header .select_weglot.select_weglot.select_weglot_responsive span,
.header .select_weglot.select_weglot.select_weglot_responsive li a {
  color: var(--color-primary-blue);
}

.header .select_weglot .wgcurrent {
  display: flex;
  align-items: center;
  background: none;
  border: none;
  color: var(--color-primary-blue);
  cursor: pointer;
}

.header .select_weglot .wgcurrent::after {
  content: "";
  display: inline-block;
  transform: rotate(0deg);
  transition: transform 0.2s ease;
  margin-left: auto;
  top: auto;
}

.header .select_weglot .country-selector.weglot-dropdown .wgcurrent:after {
  filter: invert(1);
}

.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  .wgcurrent:after {
  filter: invert(0);
}

.header
  .select_weglot
  .country-selector.weglot-dropdown
  input:checked
  ~ .wgcurrent:after,
.header
  .select_weglot.select_weglot_responsive
  .country-selector.weglot-dropdown
  input:checked
  ~ .wgcurrent:after {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.header .select_weglot ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.header .select_weglot ul li {
  font-size: 1.4rem;
  line-height: 1.4rem;
}

.header .select_weglot ul li a {
  display: flex;
  gap: 5px;
  text-decoration: none;
  color: var(--color-primary-blue);
  transition: color 0.2s ease;
}
.header .select_weglot ul li a:hover {
  color: var(--color-blue-accent);
}
/* suppression du drapeau dans liste déroulante */
.header .select_weglot ul li a::before {
  display: none;
}
.header .weglot-flags.flag-3.fr > span:before {
  display: none;
}

/* On cache le selecteur welgot mobile */
.header .header__nav-list .select_weglot.select_weglot_responsive {
  display: none;
}

/* ============================================
   STYLES PROVISOIRES ET CORRECTIONS
   ============================================ */

.header .header-toolbar-contact .mk-header-tagline {
  margin-top: 0 !important;
}

.header button {
  margin-top: initial !important;
  padding: 0 !important;
  align-self: center;
  z-index: 99;
}

.header .dropdown-trigger:after {
  display: none;
}

/* ============================================
   RESPONSIVE - MOBILE (max-width: 1100px)
   ============================================ */

@media (max-width: 1100px) {
  /* TOP BAR */
  .header__topbar {
    min-height: 37px;
    padding: var(--space-xs) var(--space-md);
  }
  .header__topbar-article p {
    margin-right: 0;
  }
  .header .header__topbar .select_weglot {
    display: none;
  }
  /* Navigation mobile */
  .header__nav-list-wrapper {
    height: 100vh;
    background-color: var(--color-primary-white);
    padding: var(--space-md);
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    max-height: 0;
    overflow: hidden;
    transition:
      max-height 1s cubic-bezier(0.25, 0.8, 0.25, 1),
      opacity 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
      visibility 0s ease;
  }
  .header__nav-list-second-wrapper {
    overflow: initial;
    height: auto;
  }
  .header__nav-list-wrapper.is-open {
    opacity: 1;
    visibility: visible;
    max-height: 500vh;
    overflow-y: auto;
    height: calc(100vh - 100%);
  }

  .header__nav-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: auto;
    gap: var(--space-sm);
  }

  .header__nav-item {
    padding-left: 0;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  #contact_mobile {
    display: block;
  }

  #contact {
    display: none;
  }
  .nav-item-wrapper {
    width: 100%;
  }
  .header__submenu-wrapper.header__submenu-inner {
    width: 100%;
  }
  /* Flèches pour les sous-menus */
  .nav-item-wrapper::after {
    content: "";
    width: 12px;
    height: 12px;
    border-bottom: 2px solid;
    border-right: 2px solid;
    transform: rotate(-45deg);
    transform-origin: center;
    transition: transform 0.3s ease-in-out;
    margin-left: auto;
    margin-right: 5px;
  }

  .nav-item-wrapper.nav-simple-link::after {
    display: none;
  }

  .header__nav-item.is-open > .nav-item-wrapper::after {
    transform: rotate(45deg);
    color: var(--color-blue-accent);
  }

  /* Sous-menus mobile */
  .header__submenu {
    padding: 0;
    position: initial;
  }

  .header__submenu.show {
    max-height: 800px;
    border-radius: 0px;
  }

  .header__submenu-inner {
    margin-bottom: 15px;
    padding: initial;
  }

  /* Grilles adaptatives */
  .submenu--grid-col-5,
  .submenu--grid-col-4,
  .submenu--grid-col-3 {
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-auto-flow: row;
    row-gap: 0.25rem;
  }

  .submenu--grid-col {
    grid-auto-flow: row;
    row-gap: 0.25rem;
  }

  .header__submenu.submenu--flex {
    flex-wrap: wrap;
    gap: 0;
  }

  /* Affichage du burger + bouton */
  .header__wrapper_burger {
    display: flex;
  }

  .header__nav.is-open {
    display: flex;
  }

  /* Suppression des éléments desktop */
  .nav-link--underline::after {
    display: none;
  }

  .header .dropdown-trigger:after {
    position: initial;
  }

  /* États des liens mobiles */
  .header__nav-item.is-open .header__nav-link {
    color: var(--color-blue-accent);
    opacity: 1;
  }

  .header__nav-item:hover .header__nav-link {
    opacity: 0.5;
  }

  /* Background mobile */
  .header .header__background {
    position: absolute;
    left: 0;
    top: auto;
    width: 100%;
    height: 100vh;
    background-color: #3333334d;
    display: none;
    z-index: 2;
  }
  .header__main {
    height: 60px;
  }
  /* weglot selecteur responsif phone */
  /* On cache le selecteur welgot mobile */
  .header .header__nav-list .select_weglot.select_weglot_responsive {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 10px;
  }
  .header
    .select_weglot.select_weglot_responsive
    .country-selector.weglot-dropdown
    span {
    padding: 0;
    padding-right: 60px;
  }
}

/* ============================================
   RESPONSIVE - DESKTOP (max-width: 688px)
   ============================================ */

@media (max-width: 672px) {
  .header__nav-item.header__nav-item.welgot-here {
    display: block !important;
  }
  /* .country-selector.weglot-dropdown {
    width: 106px!important;
} */
  .header__topbar {
    padding: var(--space-xs) var(--space-sm);
    gap: 5px;
  }
  .header__main {
    height: 60px;
    padding: 0 var(--space-sm);
  }
  .header__nav-list-wrapper {
    padding: var(--space-md) var(--space-sm);
  }
  .nav-item-wrapper::after {
    margin-right: 4px;
  }
}

@media (max-width: 527px) {
  .header__nav-list-wrapper.is-open {
    height: calc(100vh - 122px);
  }
}

@media (max-width: 360px) {
  .header .header__logo svg {
    width: 120px;
  }
  .header__wrapper_burger #contact {
    display: none;
  }
}

/* ============================================
   RESPONSIVE - DESACTIVATION DU FOCUS SUR LES ECRANS TACTILS
   ============================================ */

@media (pointer: coarse) {
  .header a:focus {
    opacity: 1 !important;
    outline: none;
  }
}
