@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/build/fonts/montserrat-latin-wght-normal.5f405284.woff2) format("woff2-variations"), url(/build/fonts/montserrat-latin-wght-normal.5f405284.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, 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-display: swap;
  font-weight: 100 900;
  src: url(/build/fonts/montserrat-latin-ext-wght-normal.c6124045.woff2) format("woff2-variations"), url(/build/fonts/montserrat-latin-ext-wght-normal.c6124045.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, a, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}

body {
  line-height: 1;
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: none;
}

a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

button, input, select, textarea {
  vertical-align: middle;
  box-sizing: border-box;
}

input, select {
  vertical-align: middle;
}

.action {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 5px 10px;
  width: fit-content;
  background: #000;
  color: #eeebe5;
  border: solid 1px #000;
  border-radius: 4px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 500;
  user-select: none;
}
.action.inline {
  display: inline-block;
}
.action.alt {
  background: #eeebe5;
  color: #000;
  border-color: #eeebe5;
}

.actions.barre {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
}
.actions.barre .droite {
  margin-left: auto;
}

@media (hover: hover) {
  .action {
    cursor: pointer;
    font-weight: 600;
  }
  .action:hover {
    text-decoration: none;
    background: #eeebe5;
    color: #000;
  }
  .action:hover.alt {
    background: #000;
    color: #eeebe5;
  }
}
#annonces {
  scroll-margin-top: 100px;
}

.filtres-annonces {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.filtres-annonces .chip {
  padding: 4px 11px;
  border: solid 1px #000;
  border-radius: 14px;
  background: transparent;
  color: #000;
  font-family: inherit;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  cursor: pointer;
  user-select: none;
}
.filtres-annonces .chip .n {
  opacity: 0.6;
  font-weight: 400;
}
.filtres-annonces .chip[aria-pressed=true] {
  background: #000;
  color: #eeebe5;
  font-weight: 600;
}
.filtres-annonces .chip[aria-pressed=true] .n {
  opacity: 0.7;
}

.note-annonces {
  width: 100%;
  padding: 10px 14px;
  background: rgba(0, 0, 0, 0.05);
  border-left: solid 2px #000;
  font-size: 13px;
  font-weight: 400;
}
.note-annonces strong {
  font-weight: 600;
}

.timeline-annonces {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  width: 100%;
}
.timeline-annonces.avec-rail {
  grid-template-columns: 1fr 120px;
}
.timeline-annonces .annee {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 22px 0 10px;
  scroll-margin-top: 100px;
}
.timeline-annonces .annee:first-child {
  padding-top: 4px;
}
.timeline-annonces .annee .libelle {
  font-size: 20px;
  font-weight: 600;
}
.timeline-annonces .annee .compte {
  font-size: 12px;
  font-weight: 300;
}
.timeline-annonces .annee .filet {
  flex: 1;
  height: 0.5px;
  background: rgba(0, 0, 0, 0.3);
}
.timeline-annonces .entree {
  position: relative;
  padding-left: 28px;
  border-left: solid 0.5px #000;
  scroll-margin-top: 100px;
}
.timeline-annonces .entree::before {
  content: "";
  position: absolute;
  top: 20px;
  left: -4.5px;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #000;
}
.timeline-annonces .entree:target {
  background: rgba(0, 0, 0, 0.04);
}
.timeline-annonces .entree.est-remplacee {
  background: rgba(255, 111, 0, 0.07);
}
.timeline-annonces .entree.est-remplacee .resume {
  text-decoration: line-through;
  text-decoration-thickness: 1px;
  opacity: 0.65;
}
.timeline-annonces .tete {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
  padding: 16px 0;
  border: none;
  background: transparent;
  color: #000;
  font-family: inherit;
  font-size: inherit;
  text-align: left;
  cursor: pointer;
}
.timeline-annonces .tete:hover .resume {
  text-decoration: underline;
}
.timeline-annonces .date {
  flex: 0 0 92px;
  padding-top: 1px;
  font-size: 13px;
  font-weight: 500;
}
.timeline-annonces .date small {
  display: block;
  font-size: 11px;
  font-weight: 300;
}
.timeline-annonces .corps {
  flex: 1;
  min-width: 0;
}
.timeline-annonces .badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
}
.timeline-annonces .resume {
  font-weight: 500;
  line-height: 1.45;
}
.timeline-annonces .chevron {
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  background: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23000%27 stroke-width=%271.5%27%3E%3Cpath d=%27M3.5 6l4.5 4.5L12.5 6%27/%3E%3C/svg%3E") center center no-repeat;
  transition: transform ease-in-out 0.1s;
}
.timeline-annonces .tete[aria-expanded=true] .chevron {
  transform: rotate(180deg);
}
.timeline-annonces .famille,
.timeline-annonces .avis {
  padding: 3px 9px;
  border: solid 1px #000;
  border-radius: 3px;
  font-size: 11px;
  line-height: 15px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.timeline-annonces .famille.ton-alerte {
  border-color: #FF6F00;
  background: #FFF8E1;
  color: #8a3d00;
}
.timeline-annonces .famille.ton-fin {
  border-color: #B71C1C;
  background: #FFEBEE;
  color: #B71C1C;
}
.timeline-annonces .famille.ton-sourd {
  border-color: rgba(0, 0, 0, 0.35);
  color: rgba(0, 0, 0, 0.55);
  font-weight: 500;
}
.timeline-annonces .avis {
  border-color: #01579B;
  background: #E1F5FE;
  color: #01579B;
}
.timeline-annonces .avis.annulation {
  border-color: #B71C1C;
  background: #FFEBEE;
  color: #B71C1C;
}
.timeline-annonces .detail {
  padding: 0 0 20px 108px;
  font-size: 13px;
}
.timeline-annonces .detail[hidden] {
  display: none;
}
.timeline-annonces .detail dl {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 8px 16px;
  margin: 0 0 14px;
}
.timeline-annonces .detail dt {
  font-weight: 300;
}
.timeline-annonces .detail dd {
  font-weight: 500;
  overflow-wrap: anywhere;
}
.timeline-annonces .detail .chaine {
  margin: 0 0 14px;
  padding: 10px 12px;
  background: #E1F5FE;
  border-left: solid 2px #01579B;
  font-weight: 400;
}
.timeline-annonces .detail .chaine a {
  font-weight: 600;
}
.timeline-annonces .detail .liens {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-weight: 500;
}
.timeline-annonces .rail {
  position: sticky;
  top: 100px;
  align-self: start;
}
.timeline-annonces .rail .titre {
  display: block;
  margin-bottom: 10px;
  font-size: 11px;
  font-weight: 300;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.timeline-annonces .rail ol {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.timeline-annonces .rail li[hidden] {
  display: none;
}
.timeline-annonces .rail a {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 5px 8px;
  border-radius: 3px;
  color: #000;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
}
.timeline-annonces .rail a:hover {
  background: rgba(0, 0, 0, 0.07);
}
.timeline-annonces .rail a .n {
  font-weight: 300;
}
.timeline-annonces .annee[hidden],
.timeline-annonces .entree[hidden] {
  display: none;
}

@media (max-width: 850px) {
  .timeline-annonces, .timeline-annonces.avec-rail {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .timeline-annonces .rail {
    position: static;
    order: -1;
  }
  .timeline-annonces .rail ol {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .timeline-annonces .tete {
    flex-wrap: wrap;
  }
  .timeline-annonces .date {
    flex-basis: 100%;
  }
  .timeline-annonces .detail {
    padding-left: 0;
  }
  .timeline-annonces .detail dl {
    grid-template-columns: 1fr;
    gap: 2px;
  }
  .timeline-annonces .detail dt {
    margin-top: 8px;
  }
}
.carte-etablissements {
  width: 100%;
  aspect-ratio: 16/10;
  min-height: 320px;
  background: #e6e2da;
  border: solid 0.5px #000;
  border-radius: 4px;
  overflow: hidden;
}

.marqueur-etablissement {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background: #06963B;
  border: solid 2px #eeebe5;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
}
.marqueur-etablissement.siege {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background: #000;
}
.marqueur-etablissement.ferme {
  background: #eeebe5;
  border-color: #000;
  box-shadow: none;
}

.grappe-etablissements {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 17px;
  background: #000;
  color: #eeebe5;
  border: solid 2px #eeebe5;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25);
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 600;
  user-select: none;
}

.carte-etablissements .leaflet-container {
  width: 100%;
  height: 100%;
  background: #e6e2da;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
}
.carte-etablissements .leaflet-popup-content-wrapper {
  background: #eeebe5;
  color: #000;
  border: solid 1px #000;
  border-radius: 4px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}
.carte-etablissements .leaflet-popup-content {
  margin: 10px 12px;
  line-height: 1.45;
}
.carte-etablissements .leaflet-popup-content .siret {
  display: block;
  font-weight: 600;
}
.carte-etablissements .leaflet-popup-content .adresse {
  display: block;
  font-weight: 400;
}
.carte-etablissements .leaflet-popup-content .mention {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: rgba(0, 0, 0, 0.6);
}
.carte-etablissements .leaflet-popup-tip {
  background: #eeebe5;
  border-right: solid 1px #000;
  border-bottom: solid 1px #000;
}
.carte-etablissements .leaflet-popup-close-button {
  color: rgba(0, 0, 0, 0.5);
}
.carte-etablissements .leaflet-control-zoom a {
  background: #eeebe5;
  color: #000;
  border-color: #000;
}
.carte-etablissements .leaflet-control-attribution {
  background: rgba(238, 235, 229, 0.85);
  font-size: 10px;
  font-weight: 400;
}
.carte-etablissements .leaflet-control-attribution a {
  color: rgba(0, 0, 0, 0.65);
}

.note-localisation {
  width: 100%;
  margin-bottom: 15px;
  padding: 10px 14px;
  background: rgba(0, 0, 0, 0.05);
  border-left: solid 2px #000;
  font-size: 13px;
  font-weight: 400;
}
.note-localisation strong {
  font-weight: 600;
}

.copyable {
  position: relative;
}

span.copyable {
  display: inline-block;
}

@media (hover: hover) {
  .copyable:hover {
    cursor: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAaCAYAAABctMd+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALdSURBVHgBlVa7jhoxFLWHAUKWbHaLzabYSGyRKE2KhIZQ8Q2RqGnyDzQU8CdIlDRp6KHjD1AkFEhEsxIS78fMAM65xh6ZWViGK135XjM+Pj62r2HstHHycrlsofVd59QKITi7xDCgJ87YbrfrdzqdT+l0OoohETVxKHBBzUsO1mK73f5tNBpfkL+G2y9NIJenlirUHEeNgPUEm83mX61W+4b8DZxWYe2H781WbP+gSbGQVigUWLVapfBDqVT65bruj2Kx+Hs4HDqVSmVjrPJQijDMc7mcwAQHK0D8/u7uLqn2gfty0CDOOYOOzLIsRrG5PNOazSZrtVp+DnD5LcZ8RDojz+fzTr1e38rjRgcgLHjQ9LexWOyr53ljdI3gS/jG0uz1h0F7fHyU/aZTX9AATHKQx9j+5Egw/4SA+VnNg6a/tW37O+LP8HcPDw8JAj97+MMyZ+oyXV1d8cFgIDW1WUC/oPV6PRbSaLAwYnYR8xOMfXBsKlssFkxNwu1z4BcwZ7hMB0s/YB72+B0zXCT/IqZSKQl3VvOwhtMi70g0GuX9fl/CnWQePCGn3GAuLyTFijk7qvml8iyXyycw3yHcYUOF3lQCFyZbbAqbz+dsNBrJnaecyoLJMpPJsHa7zbLZ7E+kM/w+gRxuIpHw4vH49v7+XnS7XcncH0Wa6UmCEgXz6+trpoCJ5hx9s8lkskbszmYzuuq+LH0kKQrwhFGdkK5ZU5/JnAauVqsn9E1pApzvEb6d3tzcLMbjsavUkA8s0aWCQ6/JWyyPKMUBYL6NHJpS3fZb4gFwB76IRCJTTEbllphvVJWVmtNGiNvbW89xnBU2hyeTSYdYk4OVvNbEHrLx9XpNfYJ+g74e+pZoFwBfA9RVskkN9VqJIZXKOAuUTG0oSFIRbDLXMYC30NdD7MA9zdgcRxoSUETJ8wqe0K7K57NYuSYTCZI5ZvoiWEZrmbn6U6T/LOmX7CjYfx7GI5ISialTAAAAAElFTkSuQmCC), copy;
    outline: dashed 1px #000;
    outline-offset: 5px;
    border-radius: 1px;
  }
  .banner-entreprise .copyable:hover, .tendence .copyable:hover {
    outline-color: #eeebe5;
  }
  .copyable:active {
    animation: fadeIn 1s ease-in-out;
  }
}
@media (hover: none) {
  .copyable {
    padding-right: 24px;
  }
  .copyable:after {
    content: "";
    position: absolute;
    top: calc(50% - 8px);
    right: 0px;
    height: 16px;
    width: 16px;
    background: center no-repeat url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNSAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuNTU1NDIgMy42NjY2OUgxLjg4ODQzVjE0Ljk5OTdIMTAuNTU1NFYxMy4zMzM3SDExLjU1NTRWMTUuOTk5N0gwLjg4ODQyOFYyLjY2NjY5SDMuNTU1NDJWMy42NjY2OVoiIGZpbGw9ImJsYWNrIi8+CjxwYXRoIGQ9Ik0xMC4xNjY0IDAuNVY0LjA1NTY2SDEzLjcyMjFWMTIuODMzSDQuMDU1MVYwLjVIMTAuMTY2NFpNMTMuMDE1MSAzLjA1NTY2SDExLjE2NjRWMS4yMDcwM0wxMy4wMTUxIDMuMDU1NjZaIiBzdHJva2U9ImJsYWNrIi8+CjxsaW5lIHgxPSI2LjUiIHkxPSI5LjUiIHgyPSI5LjUiIHkyPSI5LjUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8bGluZSB4MT0iNi41IiB5MT0iNy41IiB4Mj0iMTEuNSIgeTI9IjcuNSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CjxsaW5lIHgxPSI2LjUiIHkxPSI1LjUiIHgyPSIxMS41IiB5Mj0iNS41IiBzdHJva2U9ImJsYWNrIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+Cg==);
    background-size: contain;
    opacity: 0.35;
  }
  .banner-entreprise .copyable:after, .tendence .copyable:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNSAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuNTU1NDIgMy42NjY2OUgxLjg4ODQzVjE0Ljk5OTdIMTAuNTU1NFYxMy4zMzM3SDExLjU1NTRWMTUuOTk5N0gwLjg4ODQyOFYyLjY2NjY5SDMuNTU1NDJWMy42NjY2OVoiIGZpbGw9IiNFRUVCRTUiLz4KPHBhdGggZD0iTTEwLjE2NjQgMC41VjQuMDU1NjZIMTMuNzIyMVYxMi44MzNINC4wNTUxVjAuNUgxMC4xNjY0Wk0xMy4wMTUxIDMuMDU1NjZIMTEuMTY2NFYxLjIwNzAzTDEzLjAxNTEgMy4wNTU2NloiIHN0cm9rZT0iI0VFRUJFNSIvPgo8bGluZSB4MT0iNi41IiB5MT0iOS41IiB4Mj0iOS41IiB5Mj0iOS41IiBzdHJva2U9IiNFRUVCRTUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8bGluZSB4MT0iNi41IiB5MT0iNy41IiB4Mj0iMTEuNSIgeTI9IjcuNSIgc3Ryb2tlPSIjRUVFQkU1IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPGxpbmUgeDE9IjYuNSIgeTE9IjUuNSIgeDI9IjExLjUiIHkyPSI1LjUiIHN0cm9rZT0iI0VFRUJFNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPgo=);
  }
}
.etat {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  padding: 5px 10px 5px 5px;
  width: fit-content;
  background: #000;
  color: #eeebe5;
  border-radius: 20px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 500;
  user-select: none;
}
.etat:before {
  content: "";
  width: 16px;
  height: 16px;
  background: url(/build/images/etat-ko.7101344f.svg) center center no-repeat;
  background-size: contain;
}
.etat.ouvert:before {
  background-image: url(/build/images/etat-ok.3bae84b1.svg);
}
.banner-entreprise .etat {
  background: #eeebe5;
  color: #000;
}
.banner-entreprise .etat:before {
  content: "";
  background: url(/build/images/etat-ko-alt.52c22de7.svg) center center no-repeat;
}
.banner-entreprise .etat.ouvert:before {
  background-image: url(/build/images/etat-ok-alt.ddd32c51.svg);
}

.form.bottom {
  margin-top: auto;
}
.form .fields {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.form .fields .field {
  display: flex;
  flex-direction: column;
}
.form .fields .field input,
.form .fields .field select,
.form .fields .field textarea {
  padding: 5px 7px;
  background: transparent;
  border: solid 2px #000;
  border-radius: 3px;
}
.form .fields .field.options {
  gap: 10px;
}
.form .fields .field.options .option input {
  display: none;
}
.form .fields .field.options .option span {
  position: relative;
  display: block;
  border: solid 1px #000;
  border-radius: 3px;
  padding: 5px 10px 5px 30px;
  cursor: pointer;
}
.form .fields .field.options .option span::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 10px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: solid 1px #000;
}
.form .fields .field.options .option input:checked + span {
  font-weight: 600;
}
.form .fields .field.options .option input:checked + span::before {
  background: #000;
}
.form .fields .field.options .option input[type=checkbox] + span {
  padding-left: 34px;
}
.form .fields .field.options .option input[type=checkbox] + span::before {
  top: 8px;
  width: 14px;
  height: 14px;
  border-radius: 3px;
  background: transparent;
}
.form .fields .field.options .option input[type=checkbox] + span::after {
  content: "";
  position: absolute;
  display: none;
  left: 15px;
  top: 10px;
  width: 4px;
  height: 8px;
  border: solid #eeebe5;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.form .fields .field.options .option input[type=checkbox]:checked + span::before {
  background: #000;
}
.form .fields .field.options .option input[type=checkbox]:checked + span::after {
  display: block;
}
.form .fields .field.options.colonnes {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.form .fields .field.options.colonnes > label:not(.option) {
  grid-column: 1/-1;
}
@media (max-width: 600px) {
  .form .fields .field.options.colonnes {
    grid-template-columns: 1fr;
  }
}
.form .fields .interrupteur {
  position: relative;
  display: inline-block;
  align-self: flex-start;
  padding-left: 42px;
  line-height: 20px;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
}
.form .fields .interrupteur input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.form .fields .interrupteur span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 20px;
  border-radius: 10px;
  background: #000;
}
.form .fields .interrupteur span::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background: #eeebe5;
  transition: all ease-in-out 0.1s;
}
.form .fields .interrupteur input:checked + span::after {
  left: 15px;
  background: #06963B;
}
.form .fields .interrupteur input:focus-visible + span::before {
  outline: solid 2px #06963B;
  outline-offset: 2px;
}
.form .fields .help-text,
.form .fields .aide {
  margin: 0;
  font-size: 12px;
  line-height: 1.4em;
  opacity: 0.75;
}
.form .fields .help-text a,
.form .fields .aide a {
  text-decoration: underline;
}
.form .fields .bloc {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.form .fields .bloc + .bloc {
  margin-top: 10px;
  padding-top: 20px;
  border-top: solid 1px rgba(0, 0, 0, 0.15);
}
.form .fields .button {
  margin-top: 15px;
}
.form .fields .button .action {
  width: 100%;
}

.important-message {
  position: relative;
  display: flex;
  flex-direction: column;
  height: fit-content;
  width: 100%;
  max-height: 300px;
  overflow-y: auto;
  font-size: 14px;
  text-align: left;
  padding: 10px;
  border-radius: 5px;
  gap: 10px;
  color: #eeebe5;
  background: #000;
}
.important-message.error {
  color: #FFEBEE !important;
  background: #B71C1C !important;
}
.important-message.warning {
  color: #FFF8E1 !important;
  background: #FF6F00 !important;
}
.important-message.confirmation {
  color: #E8F5E9 !important;
  background: #388E3C !important;
}
.important-message.information {
  color: #E1F5FE !important;
  background: #01579B !important;
}
.important-message .title {
  font-size: 14px;
  font-weight: 400;
  color: inherit;
}
.important-message .title:first-of-type,
.important-message .detail:first-of-type {
  margin-top: 0 !important;
}
.important-message .title:last-of-type,
.important-message .detail:last-of-type {
  margin-bottom: 0 !important;
}

#dirigeants {
  scroll-margin-top: 100px;
}

ul.liste-dirigeants {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 600px;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 10px;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.35) transparent;
}
ul.liste-dirigeants::-webkit-scrollbar {
  width: 6px;
}
ul.liste-dirigeants::-webkit-scrollbar-track {
  background: transparent;
}
ul.liste-dirigeants::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 3px;
}
ul.liste-dirigeants li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
  padding: 15px 0;
  border-top: solid 0.5px #000;
}
ul.liste-dirigeants .jeton {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 18px;
  background: #000;
  color: #eeebe5;
  font-size: 12px;
  font-weight: 600;
  user-select: none;
}
ul.liste-dirigeants .jeton.morale {
  border-radius: 4px;
  background: #000 url(/build/images/personne-morale.ae5df7ec.svg) center center no-repeat;
  background-size: 16px 16px;
}
ul.liste-dirigeants .qui {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
ul.liste-dirigeants .nom {
  font-weight: 600;
}
ul.liste-dirigeants .role {
  font-size: 12px;
  font-weight: 300;
}
ul.liste-dirigeants .siren {
  font-weight: 400;
  color: inherit;
  text-underline-offset: 3px;
}

ul.liste-etablissements {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-height: 600px;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 10px;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.35) transparent;
}
ul.liste-etablissements::-webkit-scrollbar {
  width: 6px;
}
ul.liste-etablissements::-webkit-scrollbar-track {
  background: transparent;
}
ul.liste-etablissements::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.35);
  border-radius: 3px;
}
ul.liste-etablissements li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  padding: 15px 0;
  border-top: solid 0.5px #000;
}
ul.liste-etablissements li.etat-ferme {
  display: none;
}
ul.liste-etablissements.fermes-affiches li.etat-ferme {
  display: flex;
}
ul.liste-etablissements .puce {
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  margin-top: 6px;
  border-radius: 4px;
  background: #eeebe5;
  box-shadow: inset 0 0 0 1px #000;
}
ul.liste-etablissements .puce.ouvert {
  background: #06963B;
  box-shadow: none;
}
ul.liste-etablissements .corps {
  display: flex;
  flex-direction: column;
  gap: 3px;
  flex: 1;
  min-width: 0;
}
ul.liste-etablissements .entete {
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
ul.liste-etablissements .siret {
  font-weight: 600;
  white-space: nowrap;
}
ul.liste-etablissements .marqueur {
  padding: 1px 7px;
  border: solid 1px #000;
  border-radius: 10px;
  font-size: 10px;
  line-height: 14px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  user-select: none;
}
ul.liste-etablissements .marqueur.ferme {
  border-color: rgba(0, 0, 0, 0.4);
  color: rgba(0, 0, 0, 0.55);
  font-weight: 500;
}
ul.liste-etablissements .enseigne {
  font-weight: 400;
  font-style: italic;
}
ul.liste-etablissements .adresse {
  font-weight: 400;
}
ul.liste-etablissements .activite {
  font-size: 12px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.6);
}

.compte-etablissements {
  width: 100%;
  font-weight: 400;
}
.compte-etablissements strong {
  font-weight: 600;
}
.compte-etablissements .fermes {
  color: rgba(0, 0, 0, 0.55);
}

.pagination {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}
.pagination .pages {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 5px;
}
.pagination .page {
  display: inline-block;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 18px;
  border-radius: 12px;
  padding: 3px 6px;
  width: fit-content;
  background: #000;
  color: #eeebe5;
  border: solid 1px #000;
  font-size: 12px;
  line-height: 14px;
  font-weight: 500;
  user-select: none;
}
.pagination .page.alt {
  background: #eeebe5;
  color: #000;
  border-color: #eeebe5;
}

@media (hover: hover) {
  .page {
    cursor: pointer;
    font-weight: 600;
  }
  .page:hover {
    text-decoration: none;
    background: #eeebe5;
    color: #000;
  }
  .page:hover.alt {
    background: #000;
    color: #eeebe5;
  }
}
.backdrop {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.backdrop.ouvert {
  display: block;
  z-index: 9999;
}
.backdrop .popup {
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: absolute;
  color: #000;
  background-color: #eeebe5;
  border: solid 2px #000;
  border-radius: 5px;
  padding: 20px;
  top: 25%;
  width: 400px;
  left: calc(50% - 200px);
}
.backdrop .popup.large {
  width: 800px;
  left: calc(50% - 400px);
}
.backdrop .popup.haute {
  top: 5%;
  max-height: 90%;
  overflow-y: auto;
}
@media (max-width: 840px) {
  .backdrop .popup, .backdrop .popup.large {
    width: auto;
    left: 16px;
    right: 16px;
  }
}
.backdrop .popup.ferme {
  display: none;
}

.segmented {
  display: inline-flex;
  flex-direction: row;
  padding: 2px;
  border: solid 1px #000;
  border-radius: 4px;
}
.segmented .segment {
  padding: 4px 12px;
  border: none;
  border-radius: 2px;
  background: transparent;
  color: #000;
  font-family: "Montserrat", sans-serif;
  font-size: 13px;
  line-height: 18px;
  font-weight: 500;
  user-select: none;
}
.segmented .segment[aria-pressed=true] {
  background: #000;
  color: #eeebe5;
  font-weight: 600;
}

@media (hover: hover) {
  .segmented .segment {
    cursor: pointer;
  }
}
table.table-list {
  width: 100%;
}
table.table-list thead {
  font-weight: 300;
  user-select: none;
}
table.table-list thead tr th,
table.table-list thead tr td {
  padding: 0 20px 10px 0;
}
table.table-list thead tr th:last-child,
table.table-list thead tr td:last-child {
  padding-right: 0;
}
table.table-list tbody {
  font-weight: 500;
}
table.table-list tbody tr {
  border-top: solid 0.5px #000;
}
table.table-list tbody tr th,
table.table-list tbody tr td {
  padding: 20px 20px 20px 0;
  vertical-align: middle;
}
table.table-list tbody tr th:last-child,
table.table-list tbody tr td:last-child {
  padding-right: 0;
}
table.table-list tbody tr th .date,
table.table-list tbody tr td .date {
  font-size: 12px;
  font-weight: 300;
}
table.table-list td.actions {
  white-space: nowrap;
  text-align: right;
}
table.table-list th.nowrap,
table.table-list td.nowrap {
  white-space: nowrap;
}

@media (max-width: 850px) {
  table.table-list {
    display: block;
    width: 100%;
    outline: none;
  }
  table.table-list > thead, table.table-list > tfoot {
    display: none;
  }
  table.table-list > tbody {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  table.table-list > tbody > tr {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 15px 0;
  }
  table.table-list > tbody > tr > th, table.table-list > tbody > tr > td {
    display: block;
    padding: 0;
    border: none;
    border-radius: 0;
    text-align: left !important;
    width: auto !important;
    white-space: normal;
    background: transparent;
  }
  table.table-list > tbody > tr > th[data-title]:before, table.table-list > tbody > tr > td[data-title]:before {
    content: attr(data-title);
    display: block;
    margin-bottom: 10px;
    font-weight: 300;
  }
  table.table-list > tbody > tr > th:first-child, table.table-list > tbody > tr > th:last-child, table.table-list > tbody > tr > td:first-child, table.table-list > tbody > tr > td:last-child {
    padding: 0;
  }
  table.table-list td.actions,
  table.table-list th.nowrap,
  table.table-list td.nowrap {
    white-space: normal;
    text-align: left;
  }
}
.tendences {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 20px;
}
.tendences .tendence {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  background: #000;
  color: #eeebe5;
  padding: 20px;
  border-radius: 10px;
  gap: 20px;
  width: 270px;
}
.tendences .tendence h3 {
  font-weight: 400;
  font-size: 14px;
  user-select: none;
}
.tendences .tendence p {
  font-weight: 600;
  font-size: 20px;
  white-space: nowrap;
}
.tendences .tendence:after {
  content: "";
  position: absolute;
  top: calc(50% - 10px);
  right: 20px;
  width: 24px;
  height: 24px;
  display: block;
  background: transparent center center no-repeat;
  background-size: contain;
}
.tendences .tendence.up:after {
  background-image: url(/build/images/tendence-up.06a399a7.svg);
}
.tendences .tendence.down:after {
  background-image: url(/build/images/tendence-down.2837684a.svg);
}

@media (max-width: 850px) {
  .tendences {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .tendences .tendence {
    width: auto;
    padding: 15px;
  }
  .tendences .tendence h3 {
    font-size: 12px;
    padding-right: 20px;
  }
  .tendences .tendence p {
    font-size: 14px;
  }
  .tendences .tendence:after {
    top: 20px;
    right: 15px;
    width: 18px;
    height: 18px;
  }
}
html {
  display: flex;
  flex-direction: row;
  justify-content: stretch;
  min-height: 100%;
  width: 100%;
}

body {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 100%;
  width: 100%;
  margin-top: 80px;
  background-color: #eeebe5;
  color: #000;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  line-height: 1.4em;
}
body h1 {
  font-size: 42px;
  line-height: 1.4em;
  font-weight: 700;
}
body h2 {
  font-size: 20px;
  line-height: 1.4em;
  font-weight: 600;
}
body a {
  color: #000;
}
body .wrapper {
  width: 1200px;
  margin: 0 auto;
}

@media (hover: hover) {
  body a:hover {
    text-decoration: underline;
  }
}
@media (max-width: 1250px) {
  body .wrapper {
    width: 100%;
    margin: 0;
    padding: 0 20px;
  }
}
@media (max-width: 850px) {
  body {
    margin-top: 60px;
  }
  body h1 {
    font-size: 28px;
  }
  body h2 {
    font-size: 18px;
  }
}
header {
  background: #eeebe5;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  right: 0;
  height: 80px;
}
header .wrapper {
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
header .logo {
  display: block;
  user-select: none;
}
header .logo.small {
  display: none;
}
header .lien-accueil {
  flex: 1;
}
header .search {
  flex: 1;
}
header .menu {
  flex: 1;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: center;
  gap: 30px;
  user-select: none;
}
header .menu > a,
header .menu .menu-titre {
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  white-space: nowrap;
}
header .menu-groupe {
  position: relative;
}
header .menu-groupe .menu-titre {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: none;
  font-family: "Montserrat", sans-serif;
  color: #000;
  cursor: pointer;
}
header .menu-groupe .menu-titre:after {
  content: "";
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  transition: all ease-in-out 0.1s;
}
header .menu-groupe .sous-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 300px;
  margin-top: 12px;
  padding: 8px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
header .menu-groupe .sous-menu:before {
  content: "";
  position: absolute;
  top: -12px;
  left: 0;
  right: 0;
  height: 12px;
}
header .menu-groupe .sous-menu a {
  display: block;
  padding: 10px 12px;
  border-radius: 6px;
  transition: all ease-in-out 0.1s;
}
header .menu-groupe .sous-menu a strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
}
header .menu-groupe .sous-menu a span {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  opacity: 0.65;
}
header .menu-groupe .sous-menu a:hover, header .menu-groupe .sous-menu a:focus-visible {
  background: #eeebe5;
}
header .menu-groupe .sous-menu .tout {
  margin-top: 4px;
  padding-top: 4px;
  border-top: 1px solid #eeebe5;
}
header .menu-groupe .sous-menu .tout a {
  font-size: 13px;
  font-weight: 500;
}
header .menu-groupe:hover .sous-menu,
header .menu-groupe .menu-titre[aria-expanded=true] + .sous-menu {
  display: block;
}
header .menu-groupe:hover .menu-titre:after,
header .menu-groupe .menu-titre[aria-expanded=true]:after {
  transform: rotate(-135deg);
  margin-top: 3px;
}
header .menu-groupe.menu-compte:focus-within .sous-menu {
  display: block;
}
header .menu-groupe.menu-compte:focus-within .menu-titre:after {
  transform: rotate(-135deg);
  margin-top: 3px;
}
header .menu-groupe.menu-compte .sous-menu {
  left: auto;
  right: 0;
  transform: none;
  min-width: 200px;
}
header .menu-groupe.menu-compte .sous-menu a {
  font-size: 14px;
  font-weight: 500;
}
header .menu-opener {
  position: relative;
  display: none;
  width: 40px;
  height: 40px;
  margin: 0 -10px;
}
header .menu-opener:before, header .menu-opener:after {
  content: "";
  position: absolute;
  left: 10px;
  display: block;
  height: 2px;
  background: #000;
  transition: all ease-in-out 0.1s;
}
header .menu-opener:before {
  width: 20px;
  top: 15px;
}
header .menu-opener:after {
  width: 20px;
  bottom: 15px;
}
header .menu-opener.opened:before {
  transform: rotate(45deg);
  width: 20px;
  top: 19px;
}
header .menu-opener.opened:after {
  transform: rotate(-45deg);
  width: 20px;
  bottom: 19px;
}

@media (max-width: 850px) {
  header {
    height: 60px;
  }
  header.opened {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    height: auto;
    background: #eeebe5;
  }
  header.opened .wrapper {
    padding: 10px 20px;
    align-items: flex-start;
  }
  header.opened .wrapper .logo {
    display: block;
    margin-top: 5px;
  }
  header.opened .wrapper .logo.small {
    display: none;
  }
  header.opened .wrapper .search {
    display: none;
  }
  header .logo {
    display: none;
  }
  header .logo.small {
    display: block;
  }
  header .menu-opener {
    display: block;
  }
  header .lien-accueil {
    flex: auto;
  }
  header .search {
    flex: auto;
  }
  header .menu {
    flex: auto;
    display: none;
    transition: all ease-in-out 0.1s;
  }
  header .menu.opened {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 80px 0 40px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    margin: 0;
    overflow-y: auto;
  }
  header .menu.opened .menu-groupe {
    text-align: center;
  }
  header .menu.opened .menu-groupe .menu-titre {
    margin: 0 auto;
    padding: 10px 15px;
    font-size: 22px;
    line-height: 1.4em;
    cursor: default;
  }
  header .menu.opened .menu-groupe .menu-titre:after {
    display: none;
  }
  header .menu.opened .menu-groupe a.menu-titre {
    display: block;
    cursor: pointer;
  }
  header .menu.opened .menu-groupe .sous-menu {
    display: block;
    position: static;
    transform: none;
    min-width: 0;
    margin: 0;
    padding: 0;
    background: none;
    box-shadow: none;
  }
  header .menu.opened .menu-groupe .sous-menu:before {
    display: none;
  }
  header .menu.opened .menu-groupe .sous-menu a:not(.button) {
    padding: 4px 15px;
    font-size: 15px;
  }
  header .menu.opened .menu-groupe .sous-menu a:not(.button) strong {
    font-size: 15px;
    font-weight: 500;
  }
  header .menu.opened .menu-groupe .sous-menu a:not(.button) span {
    display: none;
  }
  header .menu.opened .menu-groupe .sous-menu .tout {
    margin: 0;
    padding: 0;
    border: 0;
  }
  header .menu.opened a {
    text-align: center;
  }
  header .menu.opened a:not(.button) {
    padding: 10px 15px;
    font-size: 22px;
    line-height: 1.4em;
  }
  header .menu.opened a.button {
    margin: 20px 0 0 0;
  }
}
.about .wrapper {
  max-width: 800px;
  padding: 40px 0;
}
.about .wrapper h2:not(:first-of-type) {
  margin-top: 40px;
}
.about .wrapper h2 {
  margin-bottom: 15px;
}
.about .wrapper h3:not(:first-of-type) {
  margin-top: 30px;
}
.about .wrapper h3 {
  margin-bottom: 10px;
}
.about .wrapper h4:not(:first-of-type) {
  margin-top: 20px;
}
.about .wrapper h4 {
  margin-bottom: 5px;
}
.about .wrapper p,
.about .wrapper ul {
  margin: 5px 0;
}
.about .wrapper ul {
  margin-left: 20px;
}

@media (max-width: 1250px) {
  .about .wrapper {
    padding: 20px;
  }
}
.banner {
  background: #000;
  color: #eeebe5;
  padding: 100px 0;
}
.banner .wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 25px;
}

@media (max-width: 850px) {
  .banner {
    padding: 40px 0;
  }
  .banner .wrapper {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }
}
.banner-entreprise {
  background: #000;
  color: #eeebe5;
  padding: 100px 0;
}
.banner-entreprise .wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
}
.banner-entreprise .identity {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  width: 30%;
}
.banner-entreprise .identity h1 {
  font-size: 32px;
  font-weight: 600;
  text-align: center;
}
.banner-entreprise .identity h2 {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
  font-size: 20px;
  font-weight: 400;
  color: #eeebe5 !important;
}
.banner-entreprise .identity .diffusion-partielle {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 500;
  user-select: none;
}
.banner-entreprise .identity .diffusion-partielle:before {
  content: "";
  width: 20px;
  height: 20px;
  background: transparent url(/build/images/attention-alt.4ff51cff.svg) center center no-repeat;
  background-size: contain;
}
.banner-entreprise .banner-entreprise .identity .diffusion-partielle:before {
  background-image: url(/build/images/attention.e5a9f502.svg);
}
.banner-entreprise ul.key-informations {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 14px;
  gap: 5px;
  list-style: none;
  width: 35%;
}
.banner-entreprise ul.key-informations li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 5px;
}
.banner-entreprise ul.key-informations li:before {
  content: "";
  width: 24px;
  min-width: 24px;
  height: 24px;
  background: transparent center center no-repeat;
}
.banner-entreprise ul.key-informations li.adresse:before {
  background-image: url(/build/images/info-adresse.338c2e4e.svg);
}
.banner-entreprise ul.key-informations li.activite:before {
  background-image: url(/build/images/info-activite.79d31e55.svg);
}
.banner-entreprise ul.key-informations li.date:before {
  background-image: url(/build/images/info-date.d58805ee.svg);
}
.banner-entreprise ul.key-informations li.dirigeants:before {
  background-image: url(/build/images/info-dirigeants.7b1ddb9d.svg);
}
.banner-entreprise ul.key-informations li.dirigeants .voir-plus {
  color: inherit;
  white-space: nowrap;
  text-underline-offset: 3px;
}
.banner-entreprise .status {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 20px;
  width: 35%;
}
.banner-entreprise dl.sync {
  position: relative;
  font-size: 10px;
  letter-spacing: 1px;
  gap: 0;
  display: grid;
  grid-template-columns: 35px calc(100% - 35px - 5px);
  gap: 5px;
  line-height: 1em;
  padding-left: 50px;
}
.banner-entreprise dl.sync:before {
  content: "";
  position: absolute;
  left: 0;
  height: 40px;
  width: 38px;
  background: url(/build/images/sync.e308b90b.svg) center center no-repeat;
}
.banner-entreprise dl.sync dt {
  user-select: none;
}
.banner-entreprise dl.sync dd {
  text-align: center;
}
.banner-entreprise .suivi {
  position: relative;
  padding-left: 40px;
  color: #eeebe5;
  text-decoration: none;
  user-select: none;
}
.banner-entreprise .suivi:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #eeebe5;
  width: 32px;
  height: 20px;
  border-radius: 10px;
}
.banner-entreprise .suivi:after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background: #000;
}
.banner-entreprise .suivi.off {
  cursor: pointer !important;
}
.banner-entreprise .suivi.on:after {
  left: 15px;
  background: #06963B;
}

@media (max-width: 850px) {
  .banner-entreprise {
    padding: 30px 0;
  }
  .banner-entreprise .wrapper {
    flex-direction: column;
    align-items: center;
    gap: 60px;
  }
  .banner-entreprise ul.key-informations {
    order: 2;
    width: 100%;
  }
  .banner-entreprise .identity {
    order: 1;
    width: 100%;
    max-width: 100%;
  }
  .banner-entreprise .identity h2 {
    width: 100%;
    justify-content: space-between;
  }
  .banner-entreprise .status {
    order: 3;
    width: auto;
    flex-direction: row;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    gap: 40px;
  }
}
.banner-hero {
  padding: 100px 0;
}
.banner-hero .wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
  gap: 40px;
}
.banner-hero .wrapper .text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 25px;
}
@media (max-width: 850px) {
  .banner-hero {
    padding: 40px 0;
  }
  .banner-hero .wrapper figure {
    display: none;
  }
}
.company .wrapper {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  padding: 75px 0;
  gap: 75px;
  flex-wrap: wrap;
}
.company .wrapper .legal-informations,
.company .wrapper .activity,
.company .wrapper .finances,
.company .wrapper .directors,
.company .wrapper .etablissements,
.company .wrapper .annonces {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
  width: 100%;
}
.company .wrapper .legal-informations,
.company .wrapper .activity,
.company .wrapper .directors,
.company .wrapper .etablissements {
  width: calc(50% - 75px);
}
.company .wrapper .legal-informations dl dt,
.company .wrapper .activity dl dt {
  font-weight: 300;
  user-select: none;
}
.company .wrapper .legal-informations dl dd,
.company .wrapper .activity dl dd {
  font-weight: 500;
}
.company .wrapper .legal-informations dl {
  display: grid;
  grid-template-columns: 140px calc(100% - 140px - 10px);
  gap: 10px;
}
.company .wrapper .activity dl {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.company .wrapper .activity dl dt:not(:first-of-type) {
  margin-top: 20px;
}
.company .wrapper .activity dl dd ul {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-left: 20px;
}
.company .wrapper .finances .detail {
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 50px;
}
.company .wrapper .finances .detail .chart {
  width: 50%;
}
.company .wrapper .finances .detail .chart .chart-render {
  width: 100%;
  height: 250px;
}
.company .wrapper .finances .detail .tendences {
  width: 50%;
}
.company .wrapper .etablissements h2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 20px;
}
.company .wrapper .etablissements .toggle {
  position: relative;
  padding-left: 40px;
  color: #000;
  text-decoration: none;
  user-select: none;
  font-size: 14px;
  line-height: 20px;
  font-weight: normal;
}
.company .wrapper .etablissements .toggle:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: #000;
  width: 32px;
  height: 20px;
  border-radius: 10px;
}
.company .wrapper .etablissements .toggle:after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 14px;
  height: 14px;
  border-radius: 7px;
  background: #eeebe5;
}
.company .wrapper .etablissements .toggle.off {
  cursor: pointer !important;
}
.company .wrapper .etablissements .toggle.on:after {
  left: 15px;
  background: #06963B;
}
.company .wrapper .etablissements .outils {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.company .wrapper .etablissements .vue-etablissement {
  width: 100%;
}
.company .wrapper .etablissements .vue-etablissement[hidden] {
  display: none;
}

@media (max-width: 1250px) {
  .company .wrapper {
    padding: 75px 25px;
  }
}
@media (max-width: 850px) {
  .company .wrapper {
    padding: 30px 20px;
    gap: 40px;
  }
  .company .wrapper .legal-informations h2,
  .company .wrapper .activity h2,
  .company .wrapper .finances h2,
  .company .wrapper .directors h2,
  .company .wrapper .etablissements h2,
  .company .wrapper .annonces h2 {
    position: sticky;
    top: 60px;
    z-index: 999;
    width: 100%;
    padding-bottom: 10px;
    background: #eeebe5;
  }
  .company .wrapper .directors,
  .company .wrapper .etablissements {
    width: 100%;
  }
  .company .wrapper .legal-informations,
  .company .wrapper .activity {
    width: 100%;
  }
  .company .wrapper .legal-informations dl,
  .company .wrapper .activity dl {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
  .company .wrapper .legal-informations dl dt:not(:first-of-type),
  .company .wrapper .activity dl dt:not(:first-of-type) {
    margin-top: 20px;
  }
  .company .wrapper .finances .detail {
    flex-direction: column;
    gap: 40px;
  }
  .company .wrapper .finances .detail .chart {
    width: 100%;
  }
  .company .wrapper .finances .detail .tendences {
    width: 100%;
  }
}
.compte {
  height: 100%;
  align-items: stretch;
  margin-bottom: 30px;
}
.compte .wrapper {
  width: 100%;
  max-width: 1600px;
  padding: 0 40px;
  height: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
  gap: 30px;
  flex: 1;
}
.compte aside {
  display: flex;
  flex-direction: column;
  justify-items: flex-start;
  gap: 30px;
  width: 210px;
  flex-shrink: 0;
  background: #000;
  color: #eeebe5;
  padding: 20px;
  border-radius: 5px;
}
.compte aside nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.compte aside nav.secondary {
  margin-top: auto;
  font-weight: 600;
}
.compte aside nav a {
  color: #eeebe5;
}
.compte aside .ajout-liste {
  display: flex;
  flex-direction: row;
  justify-items: center;
  gap: 10px;
}
.compte aside .ajout-liste input {
  border: none;
  background: transparent;
  color: #eeebe5;
  font-size: 14px;
  width: 100%;
}
.compte aside .ajout-liste input::placeholder {
  color: #eeebe5;
  opacity: 0.5;
}
.compte article {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-items: flex-start;
  gap: 15px;
}

@media (max-width: 1250px) {
  .compte .wrapper {
    padding: 0 20px;
  }
}
@media (max-width: 850px) {
  .compte .wrapper {
    flex-direction: column;
  }
  .compte aside {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
  }
  .compte aside nav.primary, .compte aside nav.secondary {
    margin-top: 0;
  }
}
.compte .aide-page {
  font-size: 13px;
  opacity: 0.75;
}
.compte .erreur-appel {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  opacity: 0.75;
  white-space: normal;
}
.compte .pagination .page.active {
  font-weight: 700;
  text-decoration: underline;
}
.compte dl.appel-webhook {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 8px 20px;
  margin: 0;
}
.compte dl.appel-webhook dt {
  font-weight: 600;
}
.compte dl.appel-webhook dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}
.compte pre.code {
  overflow-x: auto;
  max-height: 600px;
  padding: 15px 20px;
  border-radius: 6px;
  background: #000;
  color: #eeebe5;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  line-height: 1.5em;
}
@media (max-width: 850px) {
  .compte dl.appel-webhook {
    grid-template-columns: 1fr;
    gap: 2px;
  }
  .compte dl.appel-webhook dd {
    margin-bottom: 8px;
  }
}

.compte-connexion {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.compte-connexion .wrapper {
  width: auto;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.compte-connexion .modes {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 60px;
  border: solid 2px #000;
  border-radius: 10px;
  padding: 20px;
}
.compte-connexion .modes .mode {
  min-width: 300px;
  max-width: 300px;
  height: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 15px;
  position: relative;
}
.compte-connexion .modes .mode:not(:first-child)::before {
  content: "";
  position: absolute;
  left: -30px;
  top: 0;
  bottom: 0;
  border-left: solid 2px #000;
}
.compte-connexion .modes .mode h2 {
  text-align: center;
}
.compte-connexion .verification {
  min-width: 300px;
  max-width: 300px;
  display: flex;
  flex-direction: column;
  gap: 15px;
  position: relative;
  border: solid 2px #000;
  border-radius: 10px;
  padding: 20px;
}
.compte-connexion .verification h2 {
  text-align: center;
}

@media (max-width: 850px) {
  .compte-connexion .wrapper {
    width: 100%;
    padding: 40px;
  }
  .compte-connexion .modes {
    flex-direction: column;
    width: 100%;
    border: none;
    padding: 0;
    gap: 80px;
  }
  .compte-connexion .modes .mode {
    max-width: 100%;
    min-width: 100%;
  }
  .compte-connexion .modes .mode:not(:first-child)::before {
    left: 0;
    right: 0;
    top: -40px;
    bottom: auto;
    border-left: none;
    border-top: solid 2px #000;
  }
}
.docs .wrapper {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 60px;
  padding: 40px 0;
}
.docs .sommaire {
  position: sticky;
  top: 20px;
  align-self: start;
  max-height: calc(100vh - 40px);
  overflow-y: auto;
}
.docs .sommaire h3 {
  margin: 20px 0 8px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  opacity: 0.6;
}
.docs .sommaire h3:first-child {
  margin-top: 0;
}
.docs .sommaire li a {
  display: block;
  padding: 4px 0;
  text-decoration: none;
  transition: all ease-in-out 0.1s;
}
.docs .sommaire li a:hover {
  text-decoration: underline;
}
.docs .contenu {
  min-width: 0;
}
.docs .contenu h2.partie {
  margin: 60px 0 10px;
  padding-bottom: 10px;
  border-bottom: 2px solid #000;
}
.docs .contenu h3 {
  margin: 40px 0 10px;
  scroll-margin-top: 100px;
}
.docs .contenu h4 {
  margin: 20px 0 5px;
}
.docs .contenu p,
.docs .contenu ul,
.docs .contenu ol,
.docs .contenu dl,
.docs .contenu pre,
.docs .contenu table {
  margin: 10px 0;
}
.docs .contenu ul,
.docs .contenu ol {
  margin-left: 20px;
}
.docs .contenu ul {
  list-style: disc;
}
.docs .contenu ol {
  list-style: decimal;
}
.docs .contenu ul.colonnes {
  columns: 2;
}
.docs .contenu .chapo {
  font-size: 16px;
}
.docs .contenu .encart {
  margin: 15px 0;
  padding: 15px 20px;
  border-left: 4px solid #01579B;
  background: #E1F5FE;
}
.docs .contenu .encart strong {
  display: block;
  margin-bottom: 5px;
}
.docs .contenu .encart.avertissement {
  border-color: #FF6F00;
  background: #FFF8E1;
}
.docs .contenu .faq dt {
  margin-top: 15px;
  font-weight: bold;
}
.docs .contenu .faq dd {
  margin: 5px 0 0;
}
.docs .contenu code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  padding: 1px 4px;
  border-radius: 3px;
  background: rgba(0, 0, 0, 0.06);
}
.docs .contenu pre {
  overflow-x: auto;
  padding: 15px 20px;
  border-radius: 6px;
  background: #000;
  color: #eeebe5;
  line-height: 1.5em;
}
.docs .contenu pre code {
  padding: 0;
  background: none;
  white-space: pre;
}
.docs .contenu .table-list {
  width: 100%;
}
.docs .contenu .table-list code {
  overflow-wrap: anywhere;
}

@media (max-width: 1250px) {
  .docs .wrapper {
    gap: 40px;
    padding: 20px;
  }
}
@media (max-width: 850px) {
  .docs .wrapper {
    grid-template-columns: minmax(0, 1fr);
  }
  .docs .sommaire {
    position: static;
    max-height: none;
  }
  .docs .contenu ul.colonnes {
    columns: 1;
  }
}
.formulaire .wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  max-width: 800px;
  padding: 40px 0;
  gap: 40px;
}

@media (max-width: 1250px) {
  .formulaire .wrapper {
    padding: 20px;
  }
}
.home {
  display: flex;
  flex-direction: column;
  align-items: center;
  align-self: center;
  justify-self: center;
  gap: 100px;
  margin: auto 0;
  padding: 50px 0;
}
.home h1 {
  text-align: center;
  user-select: none;
}
.home .key-datas {
  display: flex;
  flex-direction: column;
  align-items: center;
  user-select: none;
  gap: 25px;
}
.home .key-datas h2 {
  font-weight: 400;
  text-align: center;
}
.home .key-datas h2 strong {
  font-weight: 700;
}
.home .key-datas p {
  position: relative;
}
.home .key-datas p:before, .home .key-datas p:after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  background: #000;
  height: 1px;
  width: 250px;
}
.home .key-datas p:before {
  left: -270px;
}
.home .key-datas p:after {
  right: -270px;
}
.home .key-datas ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  list-style: none;
  gap: 40px;
  flex-wrap: wrap;
}
@media (max-width: 1250px) {
  .home .tendences {
    max-width: 600px;
  }
}
@media (max-width: 850px) {
  .home {
    gap: 60px;
    padding: 20px;
  }
  .home .key-datas p:before, .home .key-datas p:after {
    width: 90px;
  }
  .home .key-datas p:before {
    left: -110px;
  }
  .home .key-datas p:after {
    right: -110px;
  }
  .home .key-datas ul li {
    gap: 20px;
  }
  .home .key-datas ul li img {
    height: 18px;
    width: auto;
  }
}
.legals .wrapper {
  max-width: 800px;
  padding: 40px 0;
}
.legals .wrapper h2:not(:first-of-type) {
  margin-top: 40px;
}
.legals .wrapper h2 {
  margin-bottom: 15px;
}
.legals .wrapper h3:not(:first-of-type) {
  margin-top: 30px;
}
.legals .wrapper h3 {
  margin-bottom: 10px;
}
.legals .wrapper h4:not(:first-of-type) {
  margin-top: 20px;
}
.legals .wrapper h4 {
  margin-bottom: 5px;
}
.legals .wrapper p,
.legals .wrapper ul {
  margin: 5px 0;
}
.legals .wrapper ul {
  margin-left: 20px;
}

@media (max-width: 1250px) {
  .legals .wrapper {
    padding: 20px;
  }
}
.plans .wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 80px;
  margin-bottom: 80px;
}
.plans .wrapper ul.options {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-around;
  gap: 80px;
  list-style: none;
}
.plans .wrapper ul.options > li {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 20px;
  width: 300px;
  padding: 20px;
  border-radius: 10px;
  background: #000;
  color: #eeebe5;
  border: solid 2px #000;
}
.plans .wrapper ul.options > li.gratuit {
  background: #eeebe5;
  color: #000;
}
.plans .wrapper ul.options > li .action {
  align-self: center;
  margin: 20px 0;
}
.plans .wrapper ul.options > li .title {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.plans .wrapper ul.options > li .title .prix {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
}
.plans .wrapper ul.options > li .title .prix strong {
  font-size: 24px;
}
.plans .wrapper ul.options > li .title .prix span {
  font-weight: 300;
}
.plans .wrapper ul.options > li dl {
  display: grid;
  grid-template-columns: 60% 40%;
  gap: 5px;
}
.plans .wrapper ul.options > li dl dt {
  text-align: left;
  font-weight: 300;
  font-size: 14px;
}
.plans .wrapper ul.options > li dl dd {
  text-align: right;
}

@media (max-width: 850px) {
  .plans .wrapper {
    margin-bottom: 20px;
    padding: 0;
  }
  .plans .wrapper ul.options {
    overflow-x: auto;
    width: 100%;
    gap: 20px;
    padding: 0 20px;
  }
  .plans .wrapper ul.options > li {
    min-width: 300px;
    gap: 10px;
  }
}
.search {
  position: relative;
  z-index: 999;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border: solid 2px #000;
  border-radius: 10px;
  flex-direction: row;
  width: 500px;
}
.search:before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  margin: 0 12px;
  display: block;
  background: url(/build/images/search.9da1fa11.svg) center center no-repeat;
  background-size: contain;
}
.search input[type=search] {
  position: relative;
  background: transparent;
  border: none;
  color: #000;
  font-size: 16px;
  padding: 12px 12px 12px 40px;
  font-weight: 500;
  letter-spacing: 0.5px;
  width: 100%;
}
.search input[type=search]:focus {
  outline: none;
}
.search input[type=search]::placeholder {
  font-size: 14px;
  letter-spacing: 0;
}
.search.suggestion-open {
  border-radius: 10px 10px 0 0;
}
.search ul.suggestions {
  position: absolute;
  z-index: 999;
  top: 40px;
  left: -2px;
  right: -2px;
  padding: 5px;
  display: flex;
  flex-direction: column;
  list-style: none;
  background: #000;
  border-radius: 0 0 8px 8px;
  gap: 5px;
}
.search ul.suggestions:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: -2px;
  left: -2px;
  right: -2px;
  border: solid 2px #eeebe5;
  border-top: none;
  opacity: 0.5;
}
.search ul.suggestions li {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: flex-start;
  background: rgba(238, 235, 229, 0.15);
  color: #eeebe5;
  border-radius: 5px;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 400;
  cursor: pointer;
}
.search ul.suggestions li b,
.search ul.suggestions li strong {
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.search ul.suggestions li i {
  margin-left: auto;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.search ul.suggestions li.active {
  background: rgba(238, 235, 229, 0.35);
}

@media (hover: hover) {
  .search ul.suggestions li {
    transition: all ease-in-out 0.1s;
  }
  .search ul.suggestions li:hover {
    background: rgba(238, 235, 229, 0.25);
  }
}
@media (max-width: 1250px) {
  .search {
    width: 40%;
  }
  .home .search {
    width: 100%;
  }
}
@media (max-width: 850px) {
  .search {
    width: 80%;
  }
  .home .search {
    width: 100%;
  }
  .search:before {
    margin: 0 5px;
    width: 16px;
    height: 16px;
    background-size: contain;
  }
  .search ul.suggestions {
    top: 28px;
  }
  .search ul.suggestions li {
    flex-wrap: wrap;
    gap: 0;
    padding: 5px;
  }
  .search ul.suggestions li b {
    width: 100%;
    order: 1;
  }
  .search ul.suggestions li span {
    width: 35px;
    order: 3;
    text-align: right;
    line-height: 1.4em;
  }
  .search ul.suggestions li i {
    width: calc(100% - 35px - 20px);
    order: 2;
    text-align: left;
    margin: 0 10px 0 0;
    line-height: 1.4em;
  }
  .search input[type=search] {
    padding: 5px 5px 5px 26px;
  }
}
.services-hero {
  background: #000;
  color: #eeebe5;
  padding: 90px 0 100px;
}
.services-hero .wrapper {
  max-width: 820px;
  text-align: center;
}
.services-hero .surtitre {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid rgba(238, 235, 229, 0.25);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.services-hero h1 {
  margin: 24px 0 18px;
  font-size: 48px;
  line-height: 1.1em;
}
.services-hero .accroche {
  font-size: 17px;
  line-height: 1.65em;
  opacity: 0.8;
}
.services-hero .appels {
  justify-content: center;
  margin-top: 36px;
}
.services-hero .lien {
  color: #eeebe5;
}

.services-hero .appels,
.services-appel .appels {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 28px;
}
.services-hero .action,
.services-appel .action {
  padding: 12px 20px;
  font-size: 15px;
  line-height: 18px;
  border-radius: 6px;
}
.services-hero .lien,
.services-appel .lien {
  font-weight: 600;
}

.services {
  padding: 90px 0;
}
.services .entete {
  max-width: 640px;
  margin-bottom: 44px;
}
.services .entete h2 {
  margin: 10px 0 12px;
  font-size: 30px;
  line-height: 1.25em;
}
.services .entete p:not(.surtitre) {
  font-size: 16px;
  line-height: 1.6em;
  color: rgba(0, 0, 0, 0.62);
}
.services .surtitre {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.62);
}
.services .grille {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.services .service {
  display: flex;
  flex-direction: column;
  padding: 28px 24px 24px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  transition: all ease-in-out 0.1s;
  scroll-margin-top: 110px;
}
.services .service:hover {
  border-color: rgba(0, 0, 0, 0.2);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}
.services .service:target {
  border-color: #000;
  box-shadow: 0 0 0 1px #000;
}
.services .service .icone {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 20px;
  border-radius: 10px;
  background: #eeebe5;
}
.services .service .public {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(0, 0, 0, 0.62);
}
.services .service h3 {
  margin: 6px 0 10px;
  font-size: 18px;
  line-height: 1.3em;
}
.services .service > p:not(.public):not(.liens) {
  line-height: 1.6em;
  color: rgba(0, 0, 0, 0.62);
}
.services .service .points {
  margin: 18px 0 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  list-style: none;
}
.services .service .points li {
  position: relative;
  padding-left: 22px;
  line-height: 1.5em;
}
.services .service .points li + li {
  margin-top: 8px;
}
.services .service .points li:before {
  content: "";
  position: absolute;
  left: 3px;
  top: 4px;
  width: 5px;
  height: 9px;
  border-right: 2px solid #06963B;
  border-bottom: 2px solid #06963B;
  transform: rotate(45deg);
}
.services .service .liens {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
.services .service .liens a {
  font-weight: 600;
}
.services.developpeurs {
  background: #fff;
}
.services.developpeurs .service {
  background: #fbfaf8;
}
.services .colonnes {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: 32px;
  align-items: start;
}
.services .pile {
  display: grid;
  gap: 20px;
}
.services .code {
  position: sticky;
  top: 110px;
  margin: 0;
  overflow: hidden;
  background: #111;
  color: #e8e6e1;
  border-radius: 12px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
}
.services .code figcaption {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 12px;
  color: rgba(232, 230, 225, 0.6);
}
.services .code .pastilles {
  display: flex;
  gap: 6px;
}
.services .code .pastilles i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
}
.services .code pre {
  margin: 0;
  padding: 24px;
  overflow-x: auto;
  font-size: 13px;
  line-height: 1.7em;
}
.services .code code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.services-appel {
  padding: 0 0 90px;
  background: #fff;
}
.services-appel .wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  padding: 44px 48px;
  background: #000;
  color: #eeebe5;
  border-radius: 16px;
}
.services-appel h2 {
  margin-bottom: 8px;
  font-size: 26px;
}
.services-appel p {
  max-width: 560px;
  line-height: 1.6em;
  opacity: 0.75;
}
.services-appel .appels {
  flex-shrink: 0;
}
.services-appel .lien {
  color: #eeebe5;
}

@media (max-width: 1250px) {
  .services .wrapper {
    padding: 0 20px;
  }
  .services .grille {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .services-hero .wrapper {
    padding: 0 20px;
  }
  .services-appel {
    padding: 0 20px 90px;
  }
}
@media (max-width: 850px) {
  .services-hero {
    padding: 56px 0 64px;
  }
  .services-hero h1 {
    font-size: 34px;
  }
  .services-hero .accroche {
    font-size: 15px;
  }
  .services {
    padding: 56px 0;
  }
  .services .entete h2 {
    font-size: 24px;
  }
  .services .grille,
  .services .colonnes {
    grid-template-columns: minmax(0, 1fr);
  }
  .services .service {
    scroll-margin-top: 80px;
  }
  .services .code {
    position: static;
  }
  .services .code pre {
    padding: 18px;
    font-size: 12px;
  }
  .services-appel {
    padding: 0 20px 56px;
  }
  .services-appel .wrapper {
    flex-direction: column;
    align-items: flex-start;
    padding: 32px 24px;
  }
}
main {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  height: 100%;
  width: 100%;
}

footer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 40px;
  background: #000;
  color: #eeebe5;
  padding: 30px 0 15px 0;
}
footer a {
  color: #eeebe5;
}
footer .wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
footer .logo {
  display: flex;
  user-select: none;
  flex-direction: column;
  justify-content: flex-start;
  gap: 10px;
}
footer .logo .slogan {
  font-size: 12px;
  line-height: 1.2em;
  font-weight: 500;
}
footer .menu {
  user-select: none;
}
footer .menu ul {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 60px;
}
footer .menu ul li a {
  font-size: 14px;
  font-weight: 500;
}
footer .menu ul li ul {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0;
}
footer .menu ul li ul li a {
  font-size: 12px;
  font-weight: 400;
}
footer .mentions {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 20px;
  font-size: 10px;
  font-weight: 400;
  user-select: none;
}

@media (max-width: 850px) {
  footer .wrapper {
    flex-direction: column;
    gap: 30px;
  }
  footer .menu ul {
    flex-direction: column;
    gap: 30px;
  }
  footer .mentions {
    gap: 7px;
  }
}
