/* ===== Scrollbar CSS ===== */
/* Firefox */
* {
  scrollbar-width: auto;
  scrollbar-color: #032288a1 #ffffff;
}

/* Chrome, Edge, and Safari */
*::-webkit-scrollbar {
  width: 3px;
}

*::-webkit-scrollbar-track {
  background: #ffffff00;
}

*::-webkit-scrollbar-thumb {
  background-color: #a6a6a6;
  border-radius: 10px;
  border: 2px solid #ffffff;
}

main section h2,
main section h3:not(.entreprise-banner h3) {
  color: var(--primary-theme-color-opacity06) !important;
}
.entreprise-banner #entreprise-title {
  color: white !important;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src:
    local('Montserrat'),
    url(../fonts/JTUSjIg1_i6t8kCHKm459WlhyyTh89Y.woff2) format('woff2');
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --ulbullet-theme-color: #008cff;
  --primary-theme-color: #0a3574;
  --primary-theme-footer-color: #0a3575;
  --primary-theme-color-opacity06: #0a3574;
  --primary-theme-color-network: #39619c;
  --primary-theme-color-network-opacity06: #39619c99;
  --primary-theme-button-color: #032388;
  --primary-theme-button-color-hover: #2e50c0;
  --primary-theme-button-color-opacity06: #03228899;
  --secondary-theme-color: #fff;
  --secondary-theme-color-opacity06: #ffffff99;
  --primary-theme-background-color-grey: #0323880f;
  --surface: #ffffff;
  --text-secondary: #475569;
  --border-light: #e5e7eb;
  --shadow-soft: 0 10px 25px rgba(0, 0, 0, 0.05);
  --shadow-hover: 0 15px 35px rgba(0, 0, 0, 0.08);
  --primary-theme-blue-opacited: #2563eb1a;
  --text-gray: rgb(81, 81, 81);
  --transition: all 0.3s ease;
  --background-color-grey: #f4f5f6;
  --trust-green: #00b67a;
  --text-muted: #617189;
  --font-main: 'Public Sans', sans-serif;
}

/**
* Section Body
**/
body {
  font-family: Montserrat, Arial, Helvetica, sans-serif;
  text-rendering: optimizeSpeed;
  text-align: left;
  padding: 0;
  margin: 0;
}

body.wrapper figcaption {
  background-color: transparent;
  text-transform: lowercase;
  text-align: center;
  font-size: smaller;
  color: #ee1b2e;
  padding: 3px;
  display: none;
}

body.wrapper.type-electricien figcaption {
  background-color: #ffce41;
}

body.wrapper.type-serrurier figcaption {
  background-color: #ee1b2e;
}

body.wrapper.type-plombier figcaption {
  background-color: #093574;
}

.btn-primary {
  display: inline-block;
  background: var(--primary-theme-color-opacity06);
  color: white;
  padding: 1rem 2rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  margin: 2rem 0 4rem;
  transition: background-color 0.3s ease;
  font-size: 1rem;
  border: none;
}

.btn-primary:hover {
  background: #003291;
}

.btn-secondary {
  display: inline-block;
  background: #fff;
  color: var(--primary-theme-color-opacity06);
  padding: 1rem 2rem;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  margin: 2rem 0 4rem;
  transition: background-color 0.3s ease;
  width: max-content;
  width: -moz-max-content;
  font-weight: bold;
  font-size: 1rem;
  border: none;
}

.btn-secondary:hover {
  background: #f0f0f0;
}

/**
* Section styles balises site
**/

h1,
h2,
h3 {
  line-height: normal;
}

h1 {
  letter-spacing: -0.14px;
  font-weight: 900;
}

h2 {
  letter-spacing: -0.11px;
  font-weight: 800;
}

h3 {
  letter-spacing: -0.09px;
  font-weight: 700;
}

p {
  /* font-size: 16px; */
  /* font-weight: 500; */
  color: #242424;
  line-height: 1.5;
}

a {
  text-decoration: none;
  color: #39619c;
  line-height: initial;
  padding: 0;
  margin: 0;
  font-weight: bold;
}

figure {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
  -ms-flex-flow: column;
  flex-flow: column;
  margin: auto;
  padding: 5px;
}

a,
li,
video,
button {
  cursor: pointer;
}

img.inverser-couleur,
svg.inverser-couleur {
  -webkit-filter: invert(1);
  filter: invert(1);
}

ul:not(.listes-navigation) {
  list-style: none;
  margin: 0;
}

ul:not(.listes-navigation):not(.ul-grande-ville):not(.ul-engagement):not(.no-list):not(.footer-domaines ul):not(.ets-service-section ul) li::before {
  content: '';
  color: var(--primary-theme-color-opacity06);
  font-weight: 700;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
  font-size: 30px;
  line-height: 1.88rem;
}

/**
* Section classes communes
**/

section.section-padding {
  padding: 2vw 2vw 0;
}

.hidden {
  display: none !important;
}
.is-transparent {
  opacity: 0;
}

/**
* Section Header et Navigateur
**/
header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
  -ms-flex-flow: column;
  flex-flow: column;
  z-index: 10;
  width: 100%;
  color: #fff;
}

/**
* Section Navigateur
**/

header section.sticky-nav {
  position: fixed;
  top: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  z-index: 10;
}

header section.sticky-nav nav.navigation {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  z-index: 7;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  width: -moz-available;
  width: -webkit-fill-available;
  width: fill-available;
  background-color: var(--primary-theme-color-opacity06);
  /* padding: 8px; */
  gap: 15px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

header section.sticky-nav nav.navigation div.menu {
  display: none;
}

header section.sticky-nav nav.navigation div.logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: unset;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 275px;
  height: 48px;
  margin: 10px 2vw;
  cursor: pointer;
  flex-direction: row;
  color: #fff;
}

p.logo {
  color: #fff;
}

header section.sticky-nav nav.navigation ul.liste-navigateur {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  width: 60%;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: center;
  /* gap: 3rem; */
  margin: 0;
}

header section.sticky-nav nav.navigation ul.liste-navigateur li {
  list-style-type: none;
}

header section.sticky-nav nav.navigation ul.liste-navigateur li a {
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
}

header section.sticky-nav nav.reseaux {
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  z-index: 6;
  background-color: var(--primary-theme-color-network-opacity06);
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  min-height: 34px;
}

header section.sticky-nav nav.reseaux ul.reseaux-conteneur {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  gap: 1rem;
  padding: 5px;
  margin: 0 2% 0 1%;
}

header section.sticky-nav nav.reseaux ul.reseaux-conteneur li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

header section.sticky-nav nav.reseaux a {
  height: 24px;
}

header section.sticky-nav nav.reseaux div.telephone {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  background-color: #fff;
  padding: 5px;
  border-radius: 10px;
  width: 144px;
  font-size: 1rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 144px;
  margin: 0 1rem;
}

header section.sticky-nav nav.reseaux div.telephone svg {
  enable-background: new 0 0 891.024 891.024;
}

header section.sticky-nav nav.reseaux div.telephone a {
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.5rem;
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: -0.03888889029622078px;
  text-align: left;
  font-weight: bold;
  min-height: 2rem;
}

header section.section-header {
  color: #fff;
  overflow: hidden;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-filter: opacity(1);
  filter: opacity(1);
}

header section.section-header:not(.header-entreprise) {
  background: url('../img/acc-compressed-grey.webp') center center/cover no-repeat;
}

.header-entreprise {
  background: url('../img/building-construction-worker-site-with-architect.webp') center center/cover no-repeat;
}

.section-villes h2 {
  text-align: center;
}

header section.section-header .slogan-accueil {
  padding: 9em 7rem 2em 7rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
  background-color: rgb(29 75 142 / 80%);
}

header section.section-header .slogan-accueil p {
  color: #fff;
}

header section.section-header .slogan-accueil .para-espace {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.8rem;
}

header section.section-header .slogan-accueil .mon-h1 {
  line-height: 4rem;
  font-weight: 900;
  font-size: 2.5rem;
  width: 90%;
  margin: 0;
}

header section.section-header .slogan-accueil a {
  background: #fff;
  border-radius: 10px;
  text-decoration: none;
  color: #0a3574;
  padding: 10px;
  max-width: 195px;
  margin-top: 30px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 24px;
  text-align: center;
}

header section.section-header div.svg-container {
  position: absolute;
  bottom: 0;
  right: 0;
}

header section.section-header div.svg-container svg.svg-mask {
  position: -webkit-sticky;
  position: sticky;
  left: 100%;
  top: 100%;
  width: 79vh;
}

header section.header-entreprise .slogan-accueil {
  background-color: rgb(29 75 142 / 80%);
}

nav.navigateur {
  display: flex;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  -webkit-box-pack: justify;
  width: 100%;
  height: 100%;
}

nav.navigateur {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
  -ms-flex-flow: column;
  flex-flow: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

/**
* Section Textes & Asides des texte présentation et cta
**/
section.groupement-texte,
section.groupement-texte aside {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0vw 2vw;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/*
  section.groupement-texte:first-of-type div.group-textes {
    width: 57vw;
  }*/
/*style temporaire le temps de la passation cache de l'ancien css au nouveau 11/fev/2026
   */
section.groupement-texte div.group-textes.temp-modif-css {
  width: 100% !important;
}
section.groupement-texte div.group-textes {
  width: 57vw;
}

section.groupement-texte .entete-article {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  margin: 0 0 2vw;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  width: -moz-available;
  /* WebKit-based browsers will ignore this. */
  width: -webkit-fill-available;
  /* Mozilla-based browsers will ignore this. */
  width: fill-available;
}

section.groupement-texte .entete-article img {
  width: 64px;
  height: 64px;
}

/**
* Section Aside des textes
**/
section.groupement-texte aside {
  width: 30vw;
}

section.groupement-texte aside a {
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  padding: 10px;
  margin-top: 30px;
  text-align: center;
  text-decoration: none;
  background-color: var(--primary-theme-color-opacity06);
  letter-spacing: -0.04444444179534912px;
}

section.groupement-texte aside div.aside-prestations {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  border: 2px solid rgba(151, 151, 151, 0.4);
  border-radius: 10px;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions a {
  border-radius: 10px;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions *.liens {
  background-color: #fff;
  text-align: left;
  color: #000;
  padding: 0;
  margin: 0;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  border: 1px solid #e1e4eb;
  border-radius: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention strong {
  padding: 5px;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix {
  color: #fff;
  padding: 0 8px;
  border-radius: 15px;
  margin: 13px;
  text-align: -webkit-center;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix.plombier {
  background-color: #0f559f;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix.serrurier {
  background-color: #ce1b2f;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix.electricien {
  background-color: #ffce41;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix.vitrier {
  background-color: #177102;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix.chauffagiste {
  background-color: #d74f06;
}

section.groupement-texte aside div.aside-prestations div.groupe-interventions div.une-intervention .prix span {
  font-size: 12px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

section.groupement-texte aside .group-actions-cta h2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  margin: 0;
}

section.groupement-texte aside div.group-actions-cta a {
  border-radius: 10px;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  gap: 4px;
  text-align: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  background: var(--primary-theme-color-opacity06);
}

section.groupement-texte aside .cta-infos-frais p {
  font-size: 16px;
  font-weight: 700;
  color: #222222;
}

.aside p {
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
}

.aside h2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  letter-spacing: -0.06666666269302368px;
}

/**
* Section Tableau prestations
**/
section.tableau-prestations,
section .table {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

section.tableau-prestations h1 {
  font-weight: 900;
  text-align: left;
  margin: 0;
}

section.tableau-prestations li {
  text-align: left;
  color: #868686;
  list-style: url(../img/elipse.svg);
}

section.tableau-prestations div,
section .table {
  display: contents;
  margin: 0;
}

section.tableau-prestations div table,
section .table table {
  width: 100%;
  -webkit-box-shadow: 0 13px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 13px 20px rgba(0, 0, 0, 0.1);
  border-radius: 15px;
  border-collapse: collapse;
  margin-bottom: 2rem;
}

section.tableau-prestations div table thead,
section .table table thead {
  background: #39619c;
  color: #fff;
}

section.tableau-prestations div table th,
section .table table th {
  text-align: left;
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
}

section.tableau-prestations div table td,
section .table table td {
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.03888889029622078px;
  color: #2a2a2a;
}

section.tableau-prestations div table th,
section .table table th,
section.tableau-prestations div table td,
section.corp-article .table table td {
  border-bottom: 1pt solid #e7e9ef;
  height: 30px;
  padding: 0.5rem 1rem;
}

/********** A CONTINUER ************/

.devissms,
.flex-col,
.section-artisans,
.section-artisans .artisans .rechercher-artisans .form-searchURL,
.section-artisans .artisans .rechercher-artisans .recherche-artisan-formulaire {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  flex: 0 0 auto;
}

.conteneur-article img {
  -o-object-fit: scale-down;
  object-fit: scale-down;
  aspect-ratio: 16/9;
  max-width: 100%;
  border-radius: 4px;
}

.navigateur {
  top: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  position: fixed;
  z-index: 11;
  width: 100%;
  height: 100%;
  background-color: var(--primary-theme-color);
}

.navigateur .navigateur-entete {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  padding: 10px 0;
}

.navigateur .navigateur-contenu,
.navigateur .navigateur-entete .menuLogo h1 {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  display: -webkit-box;
  display: -ms-flexbox;
}

.navigateur .navigateur-entete .menuLogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  min-width: 231px;
  margin-left: 1rem;
}

.navigateur .navigateur-entete .menuLogo h1 {
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  text-align: left;
}

.navigateur .navigateur-contenu {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 75vh;
  gap: 0;
  list-style: none;
  padding: 0;
  align-self: flex-start;
  width: 100%;
  margin-top: 0 !important;
}

.navigateur .navigateur-contenu li {
  text-align: left;
  color: white;
}

.navigateur .navigateur-contenu li a {
  text-decoration: none;
  font-weight: 500;
  color: white;
}

.navigateur .navigateur-contenu .navigation {
  text-align: center;
  background-color: var(--primary-theme-color-opacity06);
  color: #fff;
}

.navigateur button {
  border: none;
  color: #fff;
  font-size: 40px;
  font-weight: 700;
  cursor: pointer;
  background-color: #ffffff00;
  -webkit-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}

.villes-intervention {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  background: #fafafa;
  /* outline: #fafafa solid 5vw;
  margin: 5vw 0; */
  margin: 1rem 0;
}

/* .villes-intervention h2  {
  margin: 3rem 0 !important;
} */
.section-artisans .artisans-resultat div p,
.villes-intervention h1 {
  text-align: center;
}

.villes-intervention .bloc-zone-villes-intervention .listes-navigation {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0;
  gap: 1rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.villes-intervention .bloc-zone-villes-intervention ul li {
  list-style: none;
  background: #fff;
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  padding: 1vw 2vw;
  width: calc(53% - 10vw);
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 1vw;
  cursor: pointer;
}

.villes-intervention .bloc-zone-villes-intervention ul li a {
  text-decoration: none;
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 42px;
  letter-spacing: -0.1111110970377922px;
}

.cache {
  color: transparent;
  opacity: 0;
}

.section-services {
  padding: 0 3vw;
}

.services {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.un-service {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 5vw;
  background: #fff;
  -webkit-box-shadow: 0 13px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 13px 20px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  margin: 2vw 0;
  width: 10vw;
}

.un-service h2 {
  font-size: 18px;
  font-weight: 500;
  line-height: 24px;
  text-align: center;
  color: #868686;
}

.flex-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

.section-artisans {
  width: 100%;
  -webkit-box-pack: space-evenly;
  -webkit-justify-content: space-evenly;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flow-root {
  display: flow-root;
}

.section-artisans .artisans-resultat .item {
  margin: 1rem 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.trouver-artisan-item {
  background-color: #03228828;
  border: 1px solid var(--primary-theme-color-opacity06);
  border-radius: 6px;
}

.trouver-artisan-item p,
.trouver-artisan-item h3 {
  color: var(--primary-theme-color-opacity06);
  margin: 0.2rem 2rem 0.2rem 2rem;
}

.trouver-artisan-item p {
  font-weight: bold;
}

.trouver-artisan-item h3 {
  font-weight: 500;
  font-size: 1rem;
}

.artisans-resultat {
  display: flex;
  justify-content: center;
  gap: 1rem;
}

.section-artisans .artisans {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}

.section-artisans .artisans .artisans-expertise {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  font-weight: 900;
  letter-spacing: -0.1111110970377922px;
  flex: 2 1 0;
  padding: 0 7vw;
}

.section-artisans .artisans .recherche-artisans {
  flex: 1 1 0;
}

.section-artisans.trouver-artisan .rechercher-artisans {
  display: flex;
  justify-content: center;
  gap: 6rem;
  width: 60%;
  margin: auto;
}

.section-artisans.trouver-artisan .rechercher-artisans .form-searchURL,
.section-artisans.trouver-artisan .rechercher-artisans .recherche-artisan-formulaire {
  flex: 1;
}

aside .aside-prestations,
aside .group-actions-cta {
  flex-direction: column;
  -ms-flex-direction: column;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  padding: 2rem;
}

.section-artisans .artisans .artisans-expertise p {
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  color: #515151;
}

.section-artisans .artisans .rechercher-artisans {
  padding: 2rem;
  background: #fafafa;
  border-radius: 8px;
}

.section-artisans .artisans .rechercher-artisans .recherche-artisan-formulaire h2 {
  font-weight: 900;
  line-height: 41px;
  letter-spacing: -0.1111110970377922px;
  text-align: center;
}

.section-artisans .artisans .rechercher-artisans .recherche-artisan-formulaire p {
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: center;
  color: #515151;
}

.section-artisans .artisans .rechercher-artisans .form-searchURL button {
  padding: 1rem;
  background-color: var(--primary-theme-color-opacity06);
  color: #fff;
  border-radius: 10px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: center;
  margin: 2vw 2vw 1vw;
  border: none;
}

.section-artisans .artisans .rechercher-artisans .form-searchURL .flex-col .devisUneInfo .saisie-input {
  width: 100%;
  border: none;
  background-color: #fff;
  outline: 0;
}

.saisie-input.typeSearch {
  color: #1e2126;
}

.section-artisans .artisans .rechercher-artisans .form-searchURL ul li {
  list-style: none;
  width: 100%;
  border-radius: 10px;
  border: 1px solid #e1e4eb;
  background-color: #fff;
  text-align: center;
  padding: 5px;
  cursor: pointer;
}

.section-artisans .artisans .rechercher-artisans .form-searchURL button:disabled {
  background-color: gray;
}

.section-artisans .devisUneInfo small {
  position: absolute;
  top: 83px;
}

.devisInfo label,
.lblProbleme {
  font-size: 12px;
  line-height: 16px;
}

.sectionFaq {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  text-align: center;
}

.assurance,
.sectionFaq details summary {
  display: -webkit-box;
  display: -ms-flexbox;
}

.devis,
.sectionFaq details summary {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
}

.sectionFaq details {
  padding: 1.5rem 0;
  border-bottom: 1px solid #d6d8e3;
  list-style: outside;
}

.sectionFaq details[open] {
  background: #fafafa;
  border-radius: 8px 8px 0 0;
  padding: 2rem;
  text-align: left;
}

.sectionFaq details summary {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  color: #2c2c2c;
  font-weight: 800;
}

.sectionFaq .dernierDetails,
table .dernierTr {
  border-bottom: none;
}

.sectionFaq .faq {
  padding: 1rem;
  -webkit-box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  margin: 2rem 3rem;
}

.assurance {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.assurance img {
  width: calc(100% - 2rem);
  -o-object-fit: cover;
  object-fit: cover;
}

input[type='checkbox'] {
  position: relative;
  appearance: none;
  -webkit-appearance: none;
  height: 20px;
  width: 36px;
  border-radius: 1.5em;
  background-color: #e2e5e5;
  border-color: transparent;
  background-clip: padding-box;
  color: #919faf;
  vertical-align: middle;
  cursor: pointer;
}

.cursor-not-allowed {
  cursor: not-allowed !important;
  background: #80808026;
}

.devissms button[disabled] {
  background: #201e1e;
  -webkit-filter: contrast(0.5);
  filter: contrast(0.5);
}

.titreDevis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  font-weight: 900;
  text-align: center;
  margin: 0;
}

.titreDevis p {
  width: 67%;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.max-width {
  width: -webkit-fill-available !important;
  width: -moz-available !important;
  width: fill-available !important;
}

.aideDevis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-top: 40px;
  width: 33vw;
}

.section-video {
  padding: 4rem 2rem 4rem 0;
  width: 33vw;
}

.section-video .video-js {
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  background: #000;
  position: relative;
  padding: 0;
  font-size: 10px;
  overflow: hidden;
  cursor: pointer;
  width: -moz-available;
  width: -webkit-fill-available;
  width: fill-available;
  border-radius: 4px;
}

.formulaire {
  border-radius: 8px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
.formulaire-non-couverture {
  width: 33vw;
  margin: 1rem;
}

.formulaire .probleme {
  margin-top: 10px;
  border-radius: 10px;
  border: 1px solid #e1e4eb;
  padding: 1rem 1rem 2rem;
  width: calc(100% - 2rem);
}

.formulaire .error {
  border: 1px solid #f44336;
  outline: none;
}

.formulaire .valid {
  border: 1px solid #4caf50;
  outline: none;
}

.formulaire .error-txt {
  color: #f44336;
}

.formulaire .valid-txt {
  color: #4caf50;
}

.formulaire .group-actions-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0vw 2vw;
  flex-direction: column;
  -ms-flex-direction: column;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  padding: 2rem;
}

.formulaire .group-actions-cta h2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  margin: 0;
}

.formulaire div.group-actions-cta a {
  border-radius: 10px;
  font-weight: 700;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 4px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  background: var(--primary-theme-color-opacity06);
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  padding: 10px;
  margin-top: 30px;
  text-align: center;
  text-decoration: none;
  background-color: var(--primary-theme-color-opacity06);
  letter-spacing: -0.04444444179534912px;
}

.devis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  margin-top: 46px;
}

.devisInfo,
.devisUneInfo {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.devisInfo {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 2rem;
}

.devisInfo div {
  width: 100%;
}

.devisInfo div input {
  width: 100%;
  border: none;
  outline: 0;
  border-radius: 10px;
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

.devisInfo label {
  font-weight: 500;
  letter-spacing: 0;
  text-align: left;
  color: #2a2a2a;
}

.devisUneInfo {
  border-radius: 10px;
  border: 1px solid #e1e4eb;
  margin-bottom: 15px;
  margin-top: 8px;
}

.devisUneInfo svg {
  padding: 0.5rem;
  background-color: #fafafa;
  border-radius: 10px;
}

.devisRappel {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 2rem;
}

.devisRappel h2 {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
  color: #868686;
}

.textarea {
  margin-top: 20px;
  gap: 5px;
}

.lblProbleme {
  font-weight: 500;
  letter-spacing: 0;
  color: #2a2a2a;
}

.devisFichier {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  border: 1px solid var(--primary-theme-color-opacity06);
  border-radius: 10px;
  padding: 10px;
  margin-top: 25px;
  margin-bottom: 25px;
  position: relative;
}

.devisFichier span {
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
  letter-spacing: -0.03888889029622078px;
  color: #2a2a2a;
  position: absolute;
}

.devisFichier .suppFichier {
  position: relative;
}

.devisFichier .addFichier,
.devisFichier .suppFichier {
  margin-left: calc(100% - 20px);
}

#fichier {
  width: calc(100% - 20px);
  position: absolute;
}

form.formulaire .form-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.formulaireDevis button {
  padding: 16px 0;
  background: var(--primary-theme-color-opacity06);
  border-radius: 10px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: center;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.avertissement {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 1rem;
  margin: 1rem 0;
  color: #3a3d46;
  padding: 1rem;
}

.avertissement p {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-style: normal;
  margin: 0;
  color: #9b0000;
}

.devis-message {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  color: #3a3d46;
}

.avertissement .message-etoile {
  font-family: 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  color: #101112;
}

.devis-message.danger {
  background: #fff6f6;
  padding: 1rem;
  border-radius: 4px;
}

.devis-message.danger p {
  color: red !important;
  font-weight: 400;
}

.avertissement.danger {
  background-color: #ff00000d;
}
.avertissement.attention {
  background-color: #fff9f6;
}

.avertissement.success {
  background-color: #34ff010f;
}

.avertissement.success p {
  color: #029333 !important;
  font-weight: 400;
}

.simple-modal {
  --gutter: 14px;
  --modal-color: #800000;
  --soft-color: #fafafa;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  background-color: rgba(0, 0, 0, 0.92);
  padding-top: 2%;
}

.simple-modal__content {
  width: 95vw;
  height: 90vh;
  max-height: 700px;
  max-width: 600px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.simple-modal__content div.header {
  min-height: 60px;
  height: 60px;
  color: #fff;
  background-color: var(--modal-color);
  display: -ms-grid;
  display: grid;
  padding-left: var(--gutter);
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -ms-grid-columns: auto 60px;
  grid-template-columns: auto 60px;
}

.simple-modal__content div.header h4 {
  margin: 0;
  text-align: left;
}

.simple-modal__content div.header span {
  margin: -18px;
  height: 100%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 10px;
  opacity: 0.8;
  cursor: pointer;
  line-height: initial;
}

.simple-modal__content div.header span:hover {
  opacity: 1;
}

.simple-modal__content .modal-main {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  -webkit-flex: 1;
  flex: 1;
  text-align: left;
  overflow: auto;
  padding: var(--gutter);
  color: #000;
}

.simple-modal__content footer {
  height: auto;
  text-align: right;
  border-top: 1px solid #ccc;
  padding: var(--gutter);
  background-color: #fff;
  background-color: var(--soft-color);
}

.simple-modal__content footer button,
.simple-modal__content footer input {
  margin: 0;
}

.simple-modal__content footer button:not(:last-child),
.simple-modal__content footer input:not(:last-child) {
  margin-right: var(--gutter);
}

.container-modal {
  width: 100vw;
  height: 100vh;
  display: none;
  cursor: pointer;
  z-index: 99999;
  position: relative;
}

.image-tel {
  width: 40px;
}

.red-collink {
  color: #ffb9b9 !important;
  cursor: pointer;
  border: none !important;
  background: 0 0 !important;
}

.blue-collink {
  color: #b9cfff !important;
  cursor: pointer;
  border: none !important;
  background: 0 0 !important;
}

/**
* Section Avis
*/
.sectionAvis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 30px;
}

.sectionAvis h1 {
  font-size: 40px;
  font-weight: 900;
  line-height: 52px;
  letter-spacing: -0.1111110970377922px;
  text-align: center;
}

.lesAvis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.noteAvis {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.noteAvis p {
  margin: 0;
}

.block-quote {
  margin: 0;
  margin-bottom: 1rem;
}

.commentaire h2 {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
}

.commentaire {
  width: 27%;
  border-radius: 8px;
  background-color: #fafafa;
  padding: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/*
* Section services index
*/
.section-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

.section-container h1,
.section-container .titre-metiers {
  font-size: 2.5rem;
  font-weight: 900;
  line-height: 52px;
  letter-spacing: -0.1111110970377922px;
  text-align: center;
  color: black;
  max-width: 712px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.lesDomaines {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.unDomaine {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-width: 270px;
  background: #ffffff;
  -webkit-box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 20px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  padding: 2rem 0.2rem;
  width: 24%;
  margin-right: 0;
  position: relative;
  height: 18.5rem;
}

.cta-section #demande-devis-btn {
  margin-top: 0rem;
}

.unDomaine .item {
  position: absolute;
  bottom: 1rem;
}

.unDomaine span {
  font-size: 2rem;
  font-weight: 700;
  line-height: 36px;
  letter-spacing: -0.07999999821186066px;
  text-align: center;
}

.unDomaine img {
  width: 7rem;
  height: 7rem;
  -o-object-fit: contain;
  object-fit: contain;
}

.unDomaine p {
  text-align: center;
}

.item a,
.item a span {
  text-decoration: none;
  color: #ffffff;

  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: center;
}

.item-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--primary-theme-color-opacity06);
  padding: 0.5rem;
  border-radius: 10px;
  max-width: 175px;
}

/**
*Section Footer
**/

.section-1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  width: 85%;
  margin-top: 65px;
  padding: 20px;
}

footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  background: var(--primary-theme-color-opacity06);
  color: #ffffff;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 65px;
}

footer .section-1 div {
  width: 25%;
}

footer .section-1 .bloc-1 {
  width: 40%;
  padding: 0 10px;
}

footer .section-1 .bloc-1 p {
  color: white;
}

footer .section-1 .bloc-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 0 10px;
}

footer .section-1 .bloc-2.test {
  flex: 0 0 50%;
}

footer address a {
  text-decoration: none;
  color: #ffffff;
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
}

footer h2 {
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 26px;
  letter-spacing: -0.06666666269302368px;
  text-align: left;
}

footer p {
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
}

footer ul {
  margin: 0 0 5px;
  padding: 0;
}

footer ul.test {
  margin: 0 0 5px;
  padding: 0;
  flex-wrap: wrap;
  width: 100%;
  display: flex;
}

footer ul li {
  list-style: none;
  margin: 10px;
}

footer ul li a {
  text-decoration: none;
  color: #ffffff;

  font-size: 0.88rem;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: -0.04444444179534912px;
  text-align: left;
}

footer .bloc-3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

footer .section-2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 85%;
  -webkit-align-content: center;
  -ms-flex-line-pack: center;
  align-content: center;
  padding: 20px 0;
  border-top: 1px solid;
  margin-top: 20px;
}

footer .section-2 span {
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: -0.04444444179534912px;
}

footer .section-2 button {
  color: #ffb9b9 !important;
  cursor: pointer;
  border: none !important;
  background: none !important;
}

footer .piedSociaux ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

footer .social-icons {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}

.footer-pa-container footer {
  margin-top: 0px;
}

.disabled {
  pointer-events: none;
  cursor: not-allowed;
  background: #b1b7c68f !important;
  color: #0033917c !important;
}

#apropos .texte-entreprise {
  margin-right: 2rem;
}

.bold800 {
  font-weight: 750;
}

.telephoneMenu {
  position: fixed;
  top: 90vh;
  display: flex;
  flex-direction: row;
  background-color: white;
  padding: 0.5rem;
  border-radius: 10px;

  text-align: center;
}

.telephoneMenu a {
  text-decoration: none;
  color: #000;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
}

/* 
A SUPPRIMER APRES REGEN TOT
*/
#devisSection .formulaire {
  background: #fafafa;
  /* padding: 2rem; */
  border-radius: 8px;
  width: 28vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}
#devisSection button {
  padding: 16px 0;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.04444444179534912px;
  text-align: center;
  width: 100%;
  background: var(--primary-theme-button-color);
  border-radius: 10px;
  border: 1px solid var(--primary-theme-color-network);
}
#devisSection .aideDevis.speakable {
  padding-right: 1rem;
}
#devisSection .avertissement {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  background-color: #fff9f6;
  padding: 1rem;
  gap: 1rem;
  margin: 1rem 0;
}
#devisSection input[type='checkbox'] {
  position: relative;
  -webkit-appearance: none;
  height: 20px;
  width: 36px;
  border-radius: 1.5em;
  background-color: #e2e5e5;
  border-color: transparent;
  background-clip: padding-box;
  color: #919faf;
  vertical-align: middle;
  cursor: pointer;
}
#devisSection input[type='checkbox']:checked::before {
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
}
#devisSection input[type='checkbox']::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 50%;
  background-color: #fff;
  border-radius: 100%;
  border: 2px solid transparent;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  background-clip: padding-box;
  z-index: 2;
}
#devisSection input[type='checkbox']::after {
  position: absolute;
  left: 17%;
  top: 0;
  letter-spacing: 0.75em;
  content: '\2713';
  z-index: 1;
  margin: auto;
}
#devisSection input[type='checkbox']:checked {
  color: #fff;
  background-color: #1abc9c;
  border-color: transparent;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 20px 2rem;
  font-family: Arial, sans-serif;
  font-size: 14px;
  gap: 0;
}

.breadcrumb-item {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.breadcrumb-item:not(:last-child)::after {
  content: '>';
  margin: 0 10px;
  color: var(--text-secondary);
  font-weight: bold;
}

.breadcrumb-item a {
  color: var(--text-secondary);
  text-decoration: none;
  font-weight: 600;
}

.breadcrumb-item a:hover {
  text-decoration: underline;
}

.breadcrumb-item.current {
  color: var(--primary-theme-color-network);
  font-weight: bold;
  pointer-events: none;
  text-decoration: underline;
}

.ellipsis {
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  display: inline-block;
}

@media screen and (max-width: 899px) {
  #devisSection section.formulaire-devis .formulaire {
    width: initial !important;
    margin-left: 0 !important;
  }
  .breadcrumb {
    margin: 0px;
  }
  .breadcrumb-item:not(:last-child)::after {
    margin: 0 6px;
  }
  .sectionFaq .faq {
    margin: 0.5rem 0rem;
  }
}
@media screen and (max-width: 769px) {
  #devisSection .formulaire {
    margin-top: 3vw !important;
  }
}
@media screen and (max-width: 1024px) {
  #devisSection .aideDevis,
  .formulaire {
    width: 100% !important;
  }

  .breadcrumb-container-st {
    padding: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .temp-modif-css figure {
    width: 46vw;
    float: right;
    margin-left: 1rem;
  }

  .breadcrumb-container-st {
    padding-top: 5rem;
  }
}

/* --- STRUCTURE NAVIGATION --- */
.navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 80px;
  /* max-width: 1280px; */
  margin: 0 auto;
  padding: 0 1.5rem;
}

.liste-navigateur {
  display: flex;
  align-items: center;
  gap: 2rem;
  list-style: none;
  height: 100%;
}

/* --- GESTION DU NAV-ITEM & DROPDOWN --- */
.nav-item {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 500;
  transition: var(--transition);
}

.nav-item:hover {
  color: #ffffff;
}

/* Le menu déroulant */
.nav-item .dropdown {
  position: absolute;
  top: 100%;
  /* S'affiche juste en dessous du header */
  left: -20px;
  width: 260px;
  background: #ffffff;
  border-radius: 12px;
  padding: 0.5rem;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: var(--transition);
  border: 1px solid #f3f4f6;
  z-index: 1000;
}

.nav-item:hover .dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Les liens dans le menu */
.dropdown-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 8px;
  color: #374151;
  font-size: 0.95rem;
  text-decoration: none;
  transition: var(--transition);
}

.dropdown-link:hover {
  background: #f9fafb;
  /* color: var(--primary); */
}

/* --- ICONES --- */
.material-symbols-outlined {
  display: inline-block;
  /* Correction : on les affiche */
  font-size: 20px;
  vertical-align: middle;
  transition: transform 0.3s ease;
}

/* Rotation de la flèche au survol */
.nav-item:hover > .material-symbols-outlined {
  transform: rotate(180deg);
}

.dropdown-link span {
  color: #9ca3af;
}

.material-symbols-outlined {
  display: none;
}

.nav-item .dropdown a {
  color: var(--primary-theme-color-opacity06) !important;
}

.dropdown-link:hover span {
  /* color: var(--primary); */
}

/* Masquer le menu mobile par défaut sur desktop */
.menu {
  display: none;
}

#demande-devis-btn-header {
  margin: 0;
  text-align: center;
  font-size: 0.9rem;
}

.header-right {
  flex-shrink: 0;
  display: flex;
  gap: 20px;
  align-items: center;
  margin: 0 1rem;
}

.header-right small {
  color: #bfdbfe;
  font-weight: 700;
  display: block;
  white-space: nowrap;
}

.header-right a strong {
  font-weight: 600 !important;
}

@media (max-width: 1024px) {
  .liste-navigateur {
    display: none;
  }

  .menu {
    display: block;
    cursor: pointer;
  }
}

/* MENU MOBILE */
:root {
  --primary-ms: #0a3574;
  --primary-light-ms: #032388;
  --text-dark-ms: #1a1a1a;
  --text-gray-ms: #6b7280;
  --bg-light-ms: #f9fafb;
  --white-ms: #ffffff;
  --border-ms: #e5e7eb;
}

/* --- STRUCTURE DU MENU --- */
#mobile-menu-overlay-ms {
  position: fixed;
  inset: 0;
  background: rgba(17, 24, 39, 0.4);
  backdrop-filter: blur(4px);
  z-index: 9998; /* Un niveau sous le menu */
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

#mobile-menu-overlay-ms.active-ms {
  opacity: 1;
  pointer-events: auto;
}

#mobile-menu-ms {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 85%;
  max-width: 350px;
  background: var(--white-ms);
  z-index: 9999; /* Toujours au dessus */
  transform: translateX(-100%);
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column;
  box-shadow: 10px 0 15px -3px rgba(0, 0, 0, 0.1);
  font-family: 'Inter', sans-serif;
}

#mobile-menu-ms.active-ms {
  transform: translateX(0);
}

/* --- HEADER --- */
.menu-header-ms {
  background: var(--primary-ms);
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--white-ms);
}

.brand-ms {
  display: flex;
  align-items: center;
  gap: 10px;
}

.brand-icon-ms {
  background: var(--white-ms);
  color: var(--primary-ms);
  padding: 5px;
  border-radius: 8px;
  display: flex;
}

.brand-text-ms {
  font-weight: 800;
  text-transform: uppercase;
  line-height: 1.1;
  font-size: 16px;
}

.close-btn-ms {
  background: rgba(255, 255, 255, 0.1);
  border: none;
  color: white;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* --- NAVIGATION CORPS --- */
.menu-body-ms {
  flex: 1;
  overflow-y: auto;
  padding: 15px;
}

.nav-item-ms {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  text-decoration: none;
  color: var(--text-dark-ms);
  font-weight: 600;
  border-bottom: 1px solid var(--border-ms);
  border-radius: 8px;
  transition: background 0.2s;
}

.nav-item-ms:hover {
  background: var(--bg-light-ms);
}

/* --- ACCORDÉON --- */
.accordion-btn-ms {
  width: 100%;
  background: none;
  border: none;
  text-align: left;
  padding: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
}

.accordion-content-ms {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
  background: var(--white-ms);
}

.accordion-content-ms.open-ms {
  max-height: 1500px;
}

.services-list-ms {
  display: flex;
  flex-direction: column;
}

.sub-link-ms {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 20px;
  text-decoration: none;
  color: var(--text-gray-ms);
  font-size: 15px;
  border-left: 3px solid transparent;
}

.sub-link-ms:hover {
  background: var(--bg-light-ms);
  color: var(--primary-light-ms);
  border-left-color: var(--primary-light-ms);
}

.rotate-icon-ms {
  transition: transform 0.3s;
}

.rotate-icon-ms.open-ms {
  transform: rotate(180deg);
}

/* --- BOUTONS D'ACTION --- */
.menu-actions-ms {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 10px 20px 10px;
}

.btn-devis-ms {
  background: var(--primary-theme-color-opacity06);
  color: white;
  text-align: center;
  padding: 15px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 700;
  box-shadow: 0 4px 6px rgba(3, 35, 136, 0.15);
}

.btn-tel-ms {
  background: var(--bg-light-ms);
  color: var(--text-dark-ms);
  text-align: center;
  padding: 15px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid var(--border-ms);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}

/* Conteneur principal du bas */
.menu-footer-ms {
  margin-top: auto;
  padding: 20px 10px;
  text-align: center;
  font-size: 13px;
  color: #666;
  border-top: 1px solid var(--border-ms);
}

/* Style des liens */
.menu-footer-ms a {
  color: #666;
  text-decoration: none;
  transition: color 0.3s ease;
}

/* Hover effect */
.menu-footer-ms a:hover {
  color: var(--primary-color, #007bff);
}

/* Séparateur point milieu */
.separator-ms {
  margin: 0 8px;
  color: #ccc;
}
