/* Fontes self-hostées (sous-ensembles latin, woff2) */
@font-face {
  font-family: "Mango Grotesque Vf";
  src: url("/fonts/mango-grotesque-vf.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
/* lot B5 (04/09/2026) — Atomic Marker : la fonte complète pèse 393 Ko (des tracés « marqueur » dessinés à la main)
   pour quelques mots à l'écran. On ne sert que le SOUS-ENSEMBLE des caractères réellement rendus (224 Ko).
   Le fichier complet reste dans www/fonts/ : c'est la SOURCE du sous-ensemble, il n'est plus téléchargé par le navigateur.
   ⚠️ Un mot ajouté dans cette fonte avec un caractère inédit s'affichera dans la police de repli (visible tout de suite) :
   régénérer alors le sous-ensemble — voir tools/fonts/subset-atomic-marker.md.
   (Mesuré le 04/09 : déclarer la fonte complète en second recours, même bornée par un unicode-range complémentaire
   strict, fait télécharger les DEUX fichiers par Chrome — d'où une seule face ici.) */
@font-face {
  font-family: "Set Sail Studios Atomic Marker";
  src: url("/fonts/atomic-marker-subset.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Generalsans Variable";
  src: url("/fonts/generalsans-variable.woff2") format("woff2");
  font-weight: 200 700;
  font-style: normal;
  font-display: swap;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
}

body {
  margin: 0;
}

footer,
header,
main,
nav,
section {
  display: block;
}

video {
  vertical-align: baseline;
  display: inline-block;
}

[hidden] {
  display: none;
}

a {
  background-color: #0000;
}

a:active,
a:hover {
  outline: 0;
}

h1 {
  margin: 0.67em 0;
  font-size: 2em;
}

small {
  font-size: 80%;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

code {
  font-family: monospace;
  font-size: 1em;
}

th {
  padding: 0;
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  color: #333;
  background-color: #fff;
  min-height: 100%;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}

img {
  vertical-align: middle;
  max-width: 100%;
  display: inline-block;
}

html.is-touch * {
  background-attachment: scroll !important;
}

.ui-inline-block {
  max-width: 100%;
  display: inline-block;
}

.ui-button {
  color: #fff;
  line-height: inherit;
  cursor: pointer;
  background-color: #3898ec;
  border: 0;
  border-radius: 0;
  padding: 9px 15px;
  text-decoration: none;
  display: inline-block;
}

h1,
h2,
h3 {
  margin-bottom: 10px;
  font-weight: bold;
}

h1 {
  margin-top: 20px;
  font-size: 38px;
  line-height: 44px;
}

h2 {
  margin-top: 20px;
  font-size: 32px;
  line-height: 36px;
}

h3 {
  margin-top: 20px;
  font-size: 24px;
  line-height: 30px;
}

p {
  margin-top: 0;
  margin-bottom: 10px;
}

ul {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}

.ui-list-unstyled {
  padding-left: 0;
  list-style: none;
}

.ui-container {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
}

.ui-container:before,
.ui-container:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.ui-container:after {
  clear: both;
}

@media screen and (max-width: 991px) {
  .ui-container {
    max-width: 728px;
  }
}

@media screen and (max-width: 479px) {
  .ui-container {
    max-width: none;
  }
}

.ui-bg-video {
  color: #fff;
  height: 500px;
  position: relative;
  overflow: hidden;
}

.ui-bg-video > video {
  object-fit: cover;
  z-index: -100;
  background-position: 50%;
  background-size: cover;
  width: 100%;
  height: 100%;
  margin: auto;
  position: absolute;
  inset: -100%;
}

.ui-bg-video > video::-webkit-media-controls-start-playback-button {
  -webkit-appearance: none;
  display: none !important;
}

.ui-slider {
  text-align: center;
  clear: both;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  background: #ddd;
  height: 300px;
  position: relative;
}

.ui-slider-mask {
  z-index: 1;
  white-space: nowrap;
  height: 100%;
  display: block;
  position: relative;
  left: 0;
  right: 0;
  overflow: hidden;
}

.ui-slide {
  vertical-align: top;
  white-space: normal;
  text-align: left;
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
}

.ui-slider-dots {
  z-index: 2;
  text-align: center;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  height: 40px;
  margin: auto;
  padding-top: 10px;
  position: absolute;
  inset: auto 0 0;
}

.ui-slider-dots.ui-round > div {
  border-radius: 100%;
}

.ui-slider-dot {
  cursor: pointer;
  background-color: #fff6;
  width: 1em;
  height: 1em;
  margin: 0 3px 0.5em;
  transition:
    background-color 0.1s,
    color 0.1s;
  display: inline-block;
  position: relative;
}

.ui-slider-dot.is-active {
  background-color: #fff;
}

.ui-slider-dot:focus {
  outline: none;
  box-shadow: 0 0 0 2px #fff;
}

.ui-slider-dot:focus.is-active {
  box-shadow: none;
}

.ui-slider-prev,
.ui-slider-next {
  cursor: pointer;
  color: #fff;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  -webkit-user-select: none;
  user-select: none;
  width: 80px;
  margin: auto;
  font-size: 40px;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.ui-slider-prev [class^="w-icon-"],
.ui-slider-next [class^="w-icon-"],
.ui-slider-prev [class*=" w-icon-"],
.ui-slider-next [class*=" w-icon-"] {
  position: absolute;
}

.ui-slider-prev:focus,
.ui-slider-next:focus {
  outline: 0;
}

.ui-slider-prev {
  z-index: 3;
  right: auto;
}

.ui-slider-next {
  z-index: 4;
  left: auto;
}

.ui-nav {
  z-index: 1000;
  background: #ddd;
  position: relative;
}

.ui-nav:before,
.ui-nav:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}

.ui-nav:after {
  clear: both;
}

.ui-nav-brand {
  float: left;
  color: #333;
  text-decoration: none;
  position: relative;
}

.ui-nav-link {
  vertical-align: top;
  color: #222;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}

.ui-nav-link.is-active {
  color: var(--font--colors--title-light); /* lot A10 : ex-#0082f3 hors palette */
}

.ui-nav-menu {
  float: right;
  position: relative;
}

.is-menu-open {
  text-align: center;
  background: #c8c8c8;
  min-width: 200px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: visible;
  display: block !important;
}

.ui-nav-overlay {
  width: 100%;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: hidden;
}

.ui-nav-overlay .is-menu-open {
  top: 0;
}

.ui-nav-button {
  float: right;
  cursor: pointer;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  -webkit-user-select: none;
  user-select: none;
  padding: 18px;
  font-size: 24px;
  display: none;
  position: relative;
}

.ui-nav-button:focus {
  outline: 0;
}

.ui-nav-button.is-open {
  color: #fff;
  background-color: #c8c8c8;
}

@media screen and (max-width: 991px) {
  .ui-nav .ui-nav-menu {
    display: none;
  }

  .ui-nav .ui-nav-button {
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .ui-nav-brand {
    padding-left: 10px;
  }
}

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

:root {
  --core--colors--neutral--neutral-100: #1b0907;
  --main-font: "Mango Grotesque Vf", Arial, sans-serif;
  --font--colors--paragraph-light: var(--core--colors--neutral--barrés-rouge);
  --_font-sizes---paragraphs--default: 2rem;
  --line-height--large: 1.5em;
  --font-weights--default: 400;
  --letter-spacing--regular: 0em;
  --font--colors--title-light: var(--core--colors--system--barres-jaune);
  --_font-sizes---displays--display-10: 3.75rem;
  --line-height--small: 1.115em;
  --font-weights--medium: 500;
  --_font-sizes---displays--display-8: 3rem;
  --line-height--regular: 1.25em;
  --_font-sizes---displays--display-7: 2.25rem;
  --_font-sizes---displays--display-6: 1.875rem;
  --_font-sizes---displays--display-4: 1.25rem;
  --_font-sizes---displays--display-3: 1.125rem;
  --font-size--displays--display-1\<deleted\|variable-daab8809-8d08-418b-ef26-70092a14add1\>: 14px;
  --core--colors--neutral--neutral-700: #e2e2e2;
  --core--colors--neutral--neutral-200: #1b0907;
  --_font-sizes---displays--display-5: 1.5rem;
  --letter-spacing--small: 0.02em;
  --main-spacers--5x-extra-small: 4px;
  --main-spacers--2x-extra-small: 16px;
  --core--colors--neutral--neutral-300: #2a2a2a;
  --padding--border-radius--br-pill: 300px;
  --font-size--base-font-mb\<deleted\|variable-1ea4a63b-37be-1a0d-5aa0-2392034848fc\>: 16px;
  --main-spacers--3x-extra-small: 12px;
  --main-spacers--regular: 32px;
  --core--colors--neutral--neutral-800: white;
  --main-spacers--4x-extra-small: 8px;
  --main-spacers--small: 24px;
  --_font-sizes---paragraphs--small: 0.875rem;
  --font-size--base-font\<deleted\|variable-99553338-2119-1f78-d9c1-ef171ab9c672\>: 18px;
  --core--colors--system--red-100: #fff5f6;
  --core--colors--system--barrés-bg: #1b0907;
  --core--colors--neutral--neutral-600: silver;
  --_font-sizes---displays--display-9: 3.375rem;
  --font--colors--title-neutral: var(--core--colors--neutral--barrés-rouge);
  --_section-paddings---padding-small: 80px;
  --padding--border-radius--br-size-4: 24px;
  --padding--border-radius--br-size-3: 16px;
  --main-spacers--2x-extra-large: 64px;
  --main-spacers--large: 48px;
  --main-spacers--medium: 40px;
  --main-spacers--4x-extra-large: 80px;
  --_font-sizes---paragraphs--large: 2rem;
  --padding--border-radius--br-size-2: 8px;
  --font--colors--alt-marker:
    "Set Sail Studios Atomic Marker", Arial, sans-serif;
  --font-size--displays--display-7\<deleted\|variable-601b1903-ac41-04b5-3935-2246584c74f9\>: 36px;
  --font-size--displays-tablet--display-8\<deleted\|variable-5263ef9f-b214-4c2d-06df-4d479f33029d\>: 36px;
  --font-size--displays-tablet--display-7\<deleted\|variable-42952305-bfce-67ac-867d-17c4b7aaf507\>: 30px;
  --font-size--displays-mbl--display-8\<deleted\|variable-e5d2f47e-f4c0-c53b-fc62-cacf8440f4bb\>: 32px;
  --font-size--displays-mbl--display-7\<deleted\|variable-ac45dbea-c0c0-1c88-8479-b2c52a133ef0\>: 28px;
  --font-size--displays-mbp--display-8\<deleted\|variable-61bb5d91-4a07-4053-cf76-cd3b6a256e84\>: 28px;
  --font-size--displays-mbp--display-7\<deleted\|variable-fb3d521c-a8f2-d0c9-ba5a-5477af76ed74\>: 26px;
  --_font-sizes---displays--display-2: 1rem;
  --_font-sizes---displays--display-1: 0.875rem;
  --core--colors--primary--100\<deleted\|variable-9167c9fe-1f03-512a-b15f-72ec1051d247\>: var(
    --core--colors--neutral--neutral-800
  );
  --_section-paddings---padding-default: 100px;
  --container-size--large: 1400px;
  --main-spacers--extra-small: 20px;
  --_section-paddings---hero-padding-top: 48px;
  --_section-paddings---padding-medium: 140px;
  --main-spacers--3x-extra-large: 72px;
  --container-size--default: 1296px;
  --font-size--displays--display-5\<deleted\|variable-ade22db9-cdd1-4d16-1ba8-1f195ace5f39\>: 24px;
  --font-size--displays-tablet--display-5\<deleted\|variable-ead8d46a-770d-4327-2e90-a5e851225d84\>: 24px;
  --font-size--displays-mbl--display-4\<deleted\|variable-a4944c24-c86c-1498-302d-48458f13b74f\>: 20px;
  --font-size--displays-mbp--display-4\<deleted\|variable-55f90fcf-1c26-6a71-5459-e51a1eddc068\>: 20px;
  --font-size--displays-mbp--display-3\<deleted\|variable-c4b8a2be-84d0-64e6-4883-8ef0fe8256b3\>: 18px;
  --font-size--displays--display-2\<deleted\|variable-77c5b98a-98b5-463b-5d1a-349563a4548d\>: 16px;
  --main-spacers--5x-extra-large: 100px;
  --font-size--displays--display-4\<deleted\|variable-338c2dd5-c3d3-2fde-c21c-ca0390374d1d\>: 20px;
  --font-size--displays--display-10\<deleted\|variable-e150e16d-7d3b-58bb-45c0-5c93e48a4999\>: 72px;
  --font-size--displays-tablet--display-10\<deleted\|variable-098f5a5e-6474-5410-b346-0d37bb2818e0\>: 56px;
  --font-size--displays-mbl--display-9\<deleted\|variable-f174a7cd-3f0e-1956-9c0a-611732905049\>: 36px;
  --letter-spacing--none: 0px;
  --padding--border-radius--br-size-5: 32px;
  --padding--border-radius--br-size-7: 48px;
  --core--colors--system--blue-100: #e3efff;
  --core--colors--system--barres-jaune: #fb0;
  --core--colors--neutral--barrés-rouge: #ee3800;
}

.ui-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.ui-block {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media screen and (max-width: 991px) {
  .ui-block {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .ui-block {
    max-width: none;
  }
}

body {
  background-color: var(--core--colors--neutral--neutral-100);
  font-family: var(--main-font);
  color: var(--font--colors--paragraph-light);
  font-size: var(--_font-sizes---paragraphs--default);
  line-height: var(--line-height--large);
  font-weight: var(--font-weights--default);
  letter-spacing: var(--letter-spacing--regular);
}

h1 {
  color: var(--font--colors--title-light);
  font-size: var(--_font-sizes---displays--display-10);
  line-height: var(--line-height--small);
  font-weight: var(--font-weights--medium);
  letter-spacing: var(--letter-spacing--regular);
  margin-top: 0;
  margin-bottom: 0;
}

h2 {
  color: var(--font--colors--title-light);
  font-size: var(--_font-sizes---displays--display-8);
  line-height: var(--line-height--regular);
  font-weight: var(--font-weights--medium);
  letter-spacing: var(--letter-spacing--regular);
  margin-top: 0;
  margin-bottom: 0;
}

h3 {
  color: var(--font--colors--title-light);
  font-size: var(--_font-sizes---displays--display-7);
  line-height: var(--line-height--regular);
  font-weight: var(--font-weights--medium);
  letter-spacing: var(--letter-spacing--regular);
  margin-top: 0;
  margin-bottom: 0;
}

p {
  filter: drop-shadow(0 2px 1px #0000007d);
  margin-bottom: 0;
}

a {
  color: var(--font--colors--title-light);
  text-decoration: underline;
  transition: color 0.3s;
}

a:hover {
  color: var(--font--colors--paragraph-light);
}

ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 40px;
}

img {
  width: 100px;
  max-width: 100%;
  height: 100%;
  display: inline-block;
}

.display-5 {
  font-size: var(--_font-sizes---displays--display-5);
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--regular);
}

.display-5.medium {
  filter: drop-shadow(0 2px 5px #000000b3);
  font-size: var(--line-height--large);
  font-weight: var(--font-weights--medium);
  letter-spacing: var(--letter-spacing--small);
  text-transform: uppercase;
}

.primary-button {
  padding: var(--main-spacers--3x-extra-small) var(--main-spacers--regular);
  border: 1px solid var(--core--colors--neutral--neutral-800);
  border-radius: var(--padding--border-radius--br-pill);
  background-color: var(--core--colors--neutral--neutral-800);
  color: var(--core--colors--neutral--neutral-100);
  font-size: var(--_font-sizes---paragraphs--default);
  line-height: var(--line-height--regular);
  font-weight: var(--font-weights--medium);
  text-align: center;
  letter-spacing: var(--letter-spacing--regular);
  transform-style: preserve-3d;
  text-decoration: none;
  transition: transform 0.3s;
}

.primary-button:hover {
  color: var(--core--colors--neutral--neutral-100);
  transform: scale3d(1.04, 1.04, 1.01);
}

.primary-button.small {
  padding-right: var(--main-spacers--small);
  padding-left: var(--main-spacers--small);
  font-size: var(--_font-sizes---paragraphs--small);
}

.primary-button.square {
  min-width: 48px;
  max-width: 48px;
  min-height: 48px;
  max-height: 48px;
  font-size: var(
    --font-size--base-font\<deleted\|variable-99553338-2119-1f78-d9c1-ef171ab9c672\>
  );
  justify-content: center;
  align-items: center;
  padding: 4px;
  line-height: 1em;
  display: flex;
}

.primary-button.square.small {
  min-width: 40px;
  max-width: 40px;
  min-height: 40px;
  max-height: 40px;
  font-size: var(
    --font-size--base-font-mb\<deleted\|variable-1ea4a63b-37be-1a0d-5aa0-2392034848fc\>
  );
}

.primary-button.bg-move {
  z-index: 1;
  box-shadow: inset 0 0 0 1px var(--core--colors--neutral--neutral-800);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  color: var(--core--colors--neutral--neutral-800);
  background-color: #0000;
  border-style: none;
  border-width: 0;
  position: relative;
  overflow: hidden;
}

.primary-button.bg-move:hover {
  transform: none;
}

.display-10 {
  font-size: var(--_font-sizes---displays--display-10);
  line-height: var(--line-height--small);
  letter-spacing: var(--letter-spacing--regular);
}

.display-10.medium {
  font-weight: var(--font-weights--medium);
}

.hamburger-menu-line {
  background-color: #fff;
  border-radius: 24px;
  width: 20px;
  height: 2px;
}

.text-paragraph {
  color: var(--core--colors--neutral--neutral-600);
}

.hamburger-menu {
  z-index: 3;
  grid-row-gap: 0px;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  cursor: pointer;
  width: 80px;
  height: 80px;
  transform-style: preserve-3d;
  background-color: #ffffff1a;
  border-radius: 50%;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: transform 0.3s;
  position: relative;
  overflow: hidden;
}

.hamburger-menu:hover {
  transform: scale3d(1.04, 1.04, 1.01);
}

.hamburger-menu.is-open {
  background-color: #ffffff1a;
}

.inner-container._320px {
  max-width: 320px;
}

.inner-container.center {
  margin-left: auto;
  margin-right: auto;
}

.inner-container._680px {
  max-width: 680px;
}

.inner-container._680px.center {
  position: relative;
}

.inner-container._400px {
  max-width: 400px;
}

.inner-container._454px {
  max-width: 600px;
}

.inner-container._620px {
  max-width: 620px;
}

.inner-container._180px {
  max-width: 180px;
}

.inner-container._650px {
  max-width: 650px;
}

.inner-container._420px {
  max-width: 420px;
}

.inner-container._440px {
  max-width: 440px;
}

.inner-container._340px {
  max-width: 340px;
}

.card {
  border: 1px solid var(--core--colors--neutral--neutral-200);
  border-radius: var(--padding--border-radius--br-size-4);
  background-color: var(--core--colors--neutral--neutral-200);
}

.card.faqs-card {
  padding: var(--main-spacers--4x-extra-large)
    var(--main-spacers--2x-extra-large);
  grid-column-gap: var(--main-spacers--large);
  grid-row-gap: var(--main-spacers--large);
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.secondary-button {
  padding: var(--main-spacers--3x-extra-small) var(--main-spacers--regular);
  border: 1px solid var(--core--colors--neutral--neutral-800);
  border-radius: var(--padding--border-radius--br-pill);
  color: var(--core--colors--neutral--neutral-800);
  font-size: var(--_font-sizes---paragraphs--default);
  line-height: var(--line-height--regular);
  font-weight: var(--font-weights--medium);
  text-align: center;
  letter-spacing: var(--letter-spacing--regular);
  transform-style: preserve-3d;
  background-color: #0000;
  text-decoration: none;
  transition: transform 0.3s;
}

.secondary-button:hover {
  color: var(--font--colors--title-light);
  transform: scale3d(1.04, 1.04, 1.01);
}

.secondary-button.small {
  padding-right: var(--main-spacers--small);
  padding-left: var(--main-spacers--small);
  font-size: var(--_font-sizes---paragraphs--small);
  margin-top: 40px;
}

.secondary-button.square {
  min-width: 48px;
  max-width: 48px;
  min-height: 48px;
  max-height: 48px;
  font-size: var(
    --font-size--base-font\<deleted\|variable-99553338-2119-1f78-d9c1-ef171ab9c672\>
  );
  justify-content: center;
  align-items: center;
  padding: 4px;
  line-height: 1em;
  display: flex;
}

.secondary-button.square.small {
  min-width: 40px;
  max-width: 40px;
  min-height: 40px;
  max-height: 40px;
  font-size: var(
    --font-size--base-font-mb\<deleted\|variable-1ea4a63b-37be-1a0d-5aa0-2392034848fc\>
  );
}

.secondary-button.bg-move {
  z-index: 1;
  box-shadow: inset 0 0 0 1px var(--core--colors--neutral--neutral-800);
  border-style: none;
  border-width: 0;
  position: relative;
  overflow: hidden;
}

.secondary-button.bg-move:hover {
  transform: none;
}

.display-8 {
  width: 500px; /* lot A3 : gardé à 500 px en desktop (identique) ; sous 992 px → largeur fluide, voir le bloc lot A3 en fin de fichier */
  font-family: var(--font--colors--alt-marker);
  font-size: var(--_font-sizes---displays--display-8);
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--regular);
  padding-right: 0;
}

.display-8.medium {
  color: var(--font--colors--paragraph-light);
  font-weight: var(--font-weights--medium);
}

.mg-top-small {
  margin-top: var(--main-spacers--small);
}

.hamburger-menu-flex {
  grid-row-gap: 6px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  display: flex;
}

.text-center {
  text-align: center;
  position: relative;
}

.grid-1-column {
  grid-row-gap: 24px;
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.grid-1-column.gap-row-none {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}

.grid-1-column.gap-row-medium {
  grid-column-gap: var(--main-spacers--medium);
  grid-row-gap: var(--main-spacers--medium);
}

.display-4 {
  font-size: var(--_font-sizes---displays--display-4);
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--regular);
}

.display-4.medium {
  font-size: var(--_font-sizes---displays--display-7);
  font-weight: 500;
}

.display-4.text-neutral-light {
  width: 120%;
  max-width: 120%;
  color: var(--font--colors--title-neutral);
  font-size: var(--_font-sizes---displays--display-7);
  font-weight: var(--font-weights--medium);
  text-transform: uppercase;
}

.link-icon-right {
  z-index: 1;
  font-family:
    Line Rounded Icon Font Brix,
    sans-serif;
  display: inline-block;
  position: relative;
}

.section {
  padding-top: var(--_section-paddings---padding-default);
  padding-bottom: var(--_section-paddings---padding-default);
}

.section.hero-v1 {
  max-width: var(--container-size--large);
  margin-top: var(--main-spacers--extra-small);
  border-radius: var(--padding--border-radius--br-size-4);
  background-image: none;
  background-position: 0 0;
  background-size: auto;
  margin-left: auto;
  margin-right: auto;
  padding-top: 200px;
  padding-bottom: 55px;
}

.section.small {
  padding-top: var(--_section-paddings---padding-small);
  padding-bottom: var(--_section-paddings---padding-small);
  margin-top: 0;
}

.section.top {
  overflow: hidden;
}

.section.medium {
  padding-top: var(--_section-paddings---padding-medium);
  padding-bottom: var(--_section-paddings---padding-medium);
}

.container-default {
  width: 100%;
  max-width: var(--container-size--default);
  padding-right: var(--main-spacers--small);
  padding-left: var(--main-spacers--small);
  margin-left: auto;
  margin-right: auto;
}

.buttons-row {
  grid-column-gap: var(--main-spacers--2x-extra-small);
  grid-row-gap: var(--main-spacers--4x-extra-small);
  flex-flow: wrap;
  justify-content: center;
  align-items: center;
  display: flex;
}

.buttons-row.wrap {
  grid-row-gap: 16px;
  flex-flow: wrap;
}

.buttons-row.left {
  justify-content: flex-start;
}

.width-100 {
  width: 500%;
  max-width: 800%;
}

.width-100.logo-footer {
  margin-top: -40px;
  padding-top: 0;
  padding-bottom: 0;
}

.badge {
  padding: 10px var(--main-spacers--2x-extra-small);
  grid-column-gap: 8px;
  grid-row-gap: 8px;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--title-light);
  line-height: var(--line-height--regular);
  font-weight: var(--font-weights--medium);
  text-align: center;
  background-color: #ffffff1a;
  border-radius: 14px;
  justify-content: center;
  align-items: center;
  display: flex;
  box-shadow: 0 1px 3px #19213d1a;
}

.badge.link {
  transform-style: preserve-3d;
  transition:
    transform 0.3s,
    color 0.3s;
}

.badge.link:hover {
  transform: scale3d(1.04, 1.04, 1.01);
}

.header {
  z-index: 9999;
  padding-top: var(--main-spacers--regular);
  padding-bottom: var(--main-spacers--regular);
  background-color: #0000;
}

.header-logo {
  z-index: 3;
  width: 100%;
  max-width: 110px;
  transform-style: preserve-3d;
  transition: transform 0.3s;
}

.header-logo:hover {
  transform: scale3d(1.04, 1.04, 1.01);
}

.header-content {
  grid-column-gap: var(--main-spacers--small);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.header-content.gap-column-40px {
  grid-column-gap: 40px;
}

.nav-menu {
  background-color: #0000;
}

.list-nav-menu {
  grid-column-gap: 24px;
  align-items: center;
  margin-bottom: 0;
  padding-left: 0;
  list-style-type: none;
  display: flex;
}

.link-nav-item {
  line-height: 1.25em;
}

.link-nav-item.show-on-mbl {
  display: none;
}

.nav-link {
  color: var(--font--colors--title-light);
  line-height: var(--line-height--regular);
  padding: 0;
  text-decoration: none;
  transition: color 0.3s;
}

.nav-link:hover {
  color: var(--font--colors--title-light);
}

.nav-link.is-active {
  transition: color 0.3s;
}

.header-right-side {
  align-items: center;
  display: flex;
}

.footer-main-section {
  z-index: 1;
  grid-column-gap: var(--main-spacers--extra-small);
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.1fr;
  grid-auto-columns: 1fr;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  position: relative;
  overflow: hidden;
}

.footer-main-section.v2 {
  padding-top: var(--main-spacers--4x-extra-large);
  padding-bottom: var(--main-spacers--4x-extra-large);
  grid-column-gap: var(--main-spacers--2x-extra-large);
  grid-row-gap: var(--main-spacers--2x-extra-large);
  grid-template-columns: 1fr 1.3fr;
  margin-bottom: -57px;
}

.footer-logo {
  width: 100%;
  max-width: 300px;
  transform-style: preserve-3d;
  transition-property: transform;
}

.footer-logo:hover {
  transform: scale3d(1.04, 1.04, 1.01);
}

.footer-logo.v2 {
  max-width: 70px;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-hidden.flex-don-t-shrink-or-grow {
  flex: none;
}

.slider-mask {
  height: 100%;
}

.slider-mask._1120px {
  max-width: 1120px;
  overflow: hidden; /* lot A1 : le masque clippe (Webflow laissait visible → pan latéral + bande de la diapo suivante) */
}

.link {
  grid-column-gap: 6px;
  grid-row-gap: 6px;
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--regular);
  text-decoration: none;
  display: flex;
}

.link.mid {
  font-weight: 500;
}

.link.neutral {
  color: var(--font--colors--paragraph-light);
}

.link.neutral:hover {
  color: var(--font--colors--title-light);
}

.link.hover-opacity-60 {
  color: var(--font--colors--title-light);
  transition-property: opacity;
  transition-duration: 0.3s;
}

.link.hover-opacity-60:hover {
  opacity: 0.6;
}

.mid {
  font-weight: 500;
}

.footer-bottom-content {
  max-width: 1252px;
  padding-top: var(--main-spacers--medium);
  grid-column-gap: var(--main-spacers--extra-small);
  grid-row-gap: var(--main-spacers--extra-small);
  justify-content: space-between;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
}

.footer-bottom-content.v2 {
  padding-bottom: var(--main-spacers--medium);
  border-top: 1px solid var(--core--colors--neutral--neutral-300);
}

.text-titles {
  color: var(--font--colors--title-light);
}

.blend-title {
  font-family: var(--font--colors--alt-marker);
  color: #fb0;
}

.mg-top-5x-extra-small {
  margin-top: var(--main-spacers--5x-extra-small);
}

.title-neutral {
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--title-light);
}

.footer-v2-contact-links-wrapper {
  grid-column-gap: var(--main-spacers--2x-extra-large);
  grid-row-gap: var(--main-spacers--2x-extra-large);
  flex-flow: column;
  display: flex;
}

.mg-top-2x-extra-small {
  margin-top: var(--main-spacers--2x-extra-small);
}

.footer-contact-link {
  flex-flow: column;
  align-items: flex-start;
  margin-top: -73px;
  padding-top: 0;
  display: flex;
}

.header-wrapper---absolute {
  z-index: 999;
  margin-top: var(--main-spacers--3x-extra-small);
  position: absolute;
  inset: 0% 0% auto;
}

.hero-v1-content {
  grid-row-gap: var(--main-spacers--4x-extra-large);
  flex-flow: column;
  max-width: 500px;
  display: flex;
}

.logo-strip-v1-wrapper {
  grid-column-gap: var(--main-spacers--small);
  grid-row-gap: var(--main-spacers--small);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.logo-strip-v1 {
  grid-column-gap: 40px;
  grid-row-gap: var(--main-spacers--medium);
  grid-template-rows: auto auto;
  grid-template-columns: auto auto auto auto auto auto;
  place-items: center;
  min-width: auto;
  max-width: 100%;
  min-height: 200px;
}

.section-divider-wrapper {
  grid-column-gap: 90px;
  grid-row-gap: 90px;
  color: var(--core--colors--neutral--neutral-700);
  font-size: var(--_font-sizes---displays--display-2);
  line-height: var(--line-height--regular);
  text-transform: uppercase;
  justify-content: flex-start;
  align-items: center;
  font-weight: 600;
  display: flex;
}

.section-divider {
  background-color: var(--core--colors--neutral--neutral-300);
  width: 100%;
  height: 1px;
}

.title-left---content-right {
  grid-column-gap: var(--main-spacers--2x-extra-small);
  grid-row-gap: var(--main-spacers--2x-extra-small);
  flex-flow: wrap;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

/* lot A2 : la colonne du titre « Ce qu'on produit » mesure la largeur réelle du titre (720 px, comme avant à 1440) ; sous ~1150 px le paragraphe passe à la ligne au lieu de chevaucher. Desktop seulement : en tablette/mobile les colonnes sont déjà à 100 % */
@media screen and (min-width: 992px) {
  .title-left---content-right > .inner-container._400px {
    max-width: 720px;
  }
}

.mg-top-large {
  margin-top: var(--main-spacers--large);
}

.flex-start {
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.flex-start.gap-2x-extra-small {
  grid-column-gap: var(--main-spacers--2x-extra-small);
  grid-row-gap: var(--main-spacers--2x-extra-small);
}

.flex-start.gap-3x-extra-small {
  grid-column-gap: var(--main-spacers--3x-extra-small);
  grid-row-gap: var(--main-spacers--3x-extra-small);
}

.flex-start.gap-3x-extra-small.wrap {
  flex-flow: wrap;
}

.accordion-paragraph-wrapper {
  overflow: hidden;
}

.accordion-paragraph {
  padding-top: var(--main-spacers--2x-extra-small);
  color: var(--font--colors--paragraph-light);
}

.accordion-paragraph._620px {
  max-width: 620px;
  color: var(--core--colors--neutral--neutral-800);
}

.accordion-paragraph._620px:where(.is-last) {
  color: var(--core--colors--neutral--neutral-800);
}

.image {
  width: 120%;
}

.image.portfolio-image {
  opacity: 0.7;
  object-fit: cover;
  border-radius: 20px;
  height: 100%;
}

.image.about_sectiontopleft {
  border-radius: 20px;
  width: 75%;
}

.cta-v1-section {
  z-index: 1;
  max-width: var(--container-size--large);
  margin: 41px auto var(--_section-paddings---padding-default);
  padding-top: var(--_section-paddings---padding-small);
  padding-bottom: var(--_section-paddings---padding-small);
  border-radius: var(--padding--border-radius--br-size-4);
  background-color: var(--font--colors--title-light);
  justify-content: flex-start;
  display: flex;
  position: relative;
  overflow: hidden;
}

.cta-v1-content-grid {
  flex-direction: column;
  gap: 40px;
  display: flex;
}

.cta-v1-stats-wrapper {
  grid-column-gap: var(--main-spacers--3x-extra-large);
  grid-row-gap: var(--main-spacers--small);
  flex-flow: wrap;
  grid-column: 1 / -1;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.slider-wrapper {
  background-color: #0000;
  height: 100%;
}

.slider-wrapper.pd-bottom {
  padding-bottom: 96px;
}

.slide-nav {
  transform: none; /* lot B7 : ce scale(0.5) ramenait les points de pagination à 22 px (cible tactile) */
}

.slider-arrow {
  border: 1px solid var(--core--colors--neutral--neutral-800);
  min-width: 48px;
  max-width: 48px;
  min-height: 48px;
  max-height: 48px;
  color: var(--font--colors--title-light);
  font-size: var(--_font-sizes---paragraphs--default);
  text-align: center;
  transform-style: preserve-3d;
  background-color: #0000;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  line-height: 1em;
  transition:
    color 0.3s,
    background-color 0.3s,
    transform 0.3s;
  display: flex;
}

.slider-arrow:hover {
  background-color: var(--core--colors--neutral--neutral-800);
  color: var(--core--colors--neutral--neutral-100);
  transform: scale3d(0.96, 0.96, 1.001);
}

.slider-arrow.bottom-left {
  inset: auto auto 0% 0%;
}

.slider-arrow.bottom-right {
  inset: auto 0% 0% auto;
}

.testimonial-v1-wrapper {
  border-radius: var(--padding--border-radius--br-size-4);
  flex-flow: column;
  min-height: 546px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.testimonial-v1-bg-image {
  opacity: 0.5;
  object-fit: cover;
  width: 110%;
  max-width: 110%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.testimonial-v1-content {
  box-sizing: border-box;
  height: 100%;
  max-height: 500px;
  padding: var(--main-spacers--2x-extra-large);
  grid-column-gap: var(--main-spacers--large);
  grid-row-gap: var(--main-spacers--large);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  display: flex;
  position: relative;
}

.mg-right-small {
  margin-right: var(--main-spacers--small);
}

.mg-top-3x-extra-small {
  margin-top: var(--main-spacers--3x-extra-small);
}

.image-wrapper {
  overflow: hidden;
}

.image-wrapper.about-section-v2---top-left {
  border-radius: var(--padding--border-radius--br-size-3);
  max-width: 352px;
}

.image-wrapper.about-section-v2---top-right {
  border-radius: var(--padding--border-radius--br-size-3);
  max-width: 280px;
  margin-top: 80px;
}

.image-wrapper.about-section-v2---bottom-left {
  border-radius: var(--padding--border-radius--br-size-3);
  max-width: 400px;
  margin-top: 32px;
  margin-left: 10%;
}

.image-wrapper.about-section-v2---bottom-right-left {
  border-radius: var(--padding--border-radius--br-size-3);
  max-width: 460px;
}

.image-wrapper.portfolio-v1-image-wrapper {
  border-radius: var(--padding--border-radius--br-size-4);
  flex: 1;
  position: relative;
  overflow: visible;
}

.image-wrapper.portfolio-v1-image-wrapper.low_portfolio {
  box-sizing: border-box;
  flex: 0 0 500px;
  overflow: hidden;
}

.faqs-grid-v1 {
  grid-column-gap: var(--main-spacers--2x-extra-large);
  grid-row-gap: var(--main-spacers--5x-extra-large);
  grid-template-rows: auto;
  grid-template-columns: 1.2fr 1fr;
}

.accordion-wrapper {
  padding: var(--main-spacers--regular) 0px;
  border-bottom: 1px solid var(--core--colors--neutral--neutral-300);
  font-size: var(--_font-sizes---displays--display-5);
  cursor: pointer;
  transition: transform 0.3s;
}

.accordion-wrapper:where(.is-last) {
  border-bottom-style: none;
  padding-bottom: 0;
}

.accordion-wrapper:hover {
  transform: translate(6px);
}

.accordion-top {
  grid-column-gap: var(--main-spacers--2x-extra-small);
  grid-row-gap: var(--main-spacers--2x-extra-small);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.accordion-button-wrapper {
  justify-content: center;
  align-items: center;
  min-width: 16px;
  max-width: 16px;
  min-height: 16px;
  max-height: 16px;
  display: flex;
  position: relative;
}

.accordion-line {
  background-color: var(--core--colors--neutral--neutral-800);
  width: 100%;
  height: 1px;
}

.accordion-line.vertical {
  position: absolute;
  transform: rotate(90deg);
}

.about-section-v2---top-images {
  margin-bottom: var(--main-spacers--small);
  grid-column-gap: var(--main-spacers--small);
  grid-row-gap: var(--main-spacers--small);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.about-section-v2---bottom-images {
  margin-top: var(--main-spacers--regular);
  grid-column-gap: var(--main-spacers--small);
  grid-row-gap: var(--main-spacers--small);
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.flex-center {
  justify-content: center;
  align-items: center;
  display: flex;
}

.bg-image-absolute {
  z-index: -1;
  opacity: 0.7;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.hidden {
  display: none;
}

.portfolio-grid-top {
  grid-column-gap: var(--main-spacers--small);
  grid-row-gap: var(--main-spacers--small);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1.4fr;
}

.square-icon {
  border-radius: var(--main-spacers--3x-extra-small);
  min-width: 48px;
  max-width: 48px;
  min-height: 48px;
  max-height: 48px;
  overflow: hidden;
}

.portfolio-v1-wrapper {
  flex-flow: column;
  height: 100%;
  text-decoration: none;
  display: flex;
  position: relative;
}

.portfolio-grid-bottom {
  grid-column-gap: var(--main-spacers--small);
  grid-row-gap: var(--main-spacers--small);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
}

.portfolio-v1-content {
  grid-column-gap: var(--main-spacers--3x-extra-small);
  grid-row-gap: var(--main-spacers--3x-extra-small);
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.divider-text {
  font-size: var(--_font-sizes---displays--display-6);
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--none);
  text-transform: uppercase;
  font-weight: 400;
}

.blend-overlay {
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--paragraph-light);
  mix-blend-mode: normal;
}

.pd-sides-small {
  padding-right: var(--main-spacers--small);
  padding-left: var(--main-spacers--small);
}

.pd-sides-small.hero-section {
  box-sizing: border-box;
  margin-top: -18px;
  padding-bottom: 0;
}

.scroll-section-title {
  font-family: var(--font--colors--alt-marker);
  position: static;
}

.scroll-section-paragraph {
  margin-top: var(--main-spacers--2x-extra-small);
}

.scroll-section-paragraph.mg-top-3x-extra-small {
  margin-top: var(--main-spacers--3x-extra-small);
  color: var(--core--colors--neutral--neutral-800);
  text-align: center;
}

.button-text {
  mix-blend-mode: difference;
}

.button-bg {
  z-index: -1;
  border-radius: var(--padding--border-radius--br-pill);
  background-color: var(--core--colors--neutral--neutral-800);
  position: absolute;
  inset: 0;
}

.button-bg.left {
  left: -100%;
  right: 100%;
}

.button-bg.right {
  left: 100%;
  right: -100%;
}

.button-bg-move-container {
  z-index: 1;
  border-radius: var(--padding--border-radius--br-pill);
  transform-style: preserve-3d;
  transition: transform 0.3s;
  display: flex;
  position: relative;
  overflow: hidden;
}

.button-bg-move-container:hover {
  transform: scale3d(1.02, 1.02, 1.01);
}

.arrow-right-line {
  z-index: -1;
  border-radius: var(--padding--border-radius--br-pill);
  background-color: var(--core--colors--neutral--neutral-800);
  transform-origin: 0%;
  height: 2px;
  min-height: 2px;
  max-height: 2px;
  margin-top: auto;
  margin-bottom: auto;
  position: absolute;
  inset: 0;
}

.background-video {
  opacity: 0.15;
  background-color: #0000;
  border-radius: 20px;
  width: auto;
  height: auto;
  margin-bottom: 0;
  position: absolute;
  inset: -5% 0% 0%;
}

.process-step-v1-2 {
  flex: none;
  margin-top: 12px;
}

.mg-top-3x-extra-small-2 {
  margin-top: 12px;
}

.display-11 {
  font-family: var(--font--colors--alt-marker);
  letter-spacing: -0.03em;
  font-size: 1.875rem;
  line-height: 1.25em;
}

.process-v1-wrapper-2 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  border-bottom: 1px solid #2a2a2a;
  justify-content: space-between;
  align-items: flex-start;
  padding-top: 48px;
  padding-bottom: 48px;
  display: flex;
}

.process-v1-wrapper-2.first {
  padding-top: 24px;
}

.process-v1-wrapper-2.last {
  border-bottom-style: none;
  padding-bottom: 24px;
}

.text-titles-2 {
  color: #fff;
}

.container-default-2 {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  max-width: 1296px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 24px;
  padding-right: 24px;
  display: block;
}

.bg-image-card-content-2 {
  z-index: 1;
  grid-column-gap: 48px;
  grid-row-gap: 48px;
  flex-flow: column;
  justify-content: space-between;
  height: 100%;
  padding: 64px;
  display: flex;
  position: relative;
}

.bg-image-card-content-2.min-height-550px {
  grid-column-gap: 46px;
  grid-row-gap: 46px;
  min-height: 550px;
}

.process-grid-v1-2 {
  grid-column-gap: 64px;
  grid-row-gap: 64px;
  grid-template-rows: auto;
  grid-template-columns: 1.3fr 1fr;
  place-items: stretch stretch;
}

.section-2 {
  padding-top: 180px;
  padding-bottom: 180px;
}

.bg-image-card-wrapper-2 {
  z-index: 1;
  border-radius: 24px;
  width: 100%;
  height: 75%;
  margin-top: 107px;
  text-decoration: none;
  position: relative;
  overflow: hidden;
}

.paragraph {
  color: var(--core--colors--neutral--neutral-800);
  font-size: var(--_font-sizes---paragraphs--large);
  line-height: var(--line-height--small);
  font-weight: var(--font-weights--default);
  position: relative;
}

.paragraph-2 {
  filter: none;
  color: var(--core--colors--system--barrés-bg);
}

.paragraph-3 {
  color: var(--core--colors--neutral--neutral-800);
  font-size: var(--_font-sizes---displays--display-5);
  line-height: 32px;
  font-weight: var(--font-weights--default);
  letter-spacing: var(--letter-spacing--small);
}

.paragraph-4,
.paragraph-5 {
  color: var(--core--colors--neutral--neutral-800);
  font-size: var(--_font-sizes---displays--display-5);
  line-height: 32px;
  letter-spacing: var(--letter-spacing--small);
}

.paragraph-6 {
  color: var(--font--colors--title-light);
  line-height: var(--line-height--regular);
  letter-spacing: var(--letter-spacing--small);
}

.div-block-3 {
  height: 100%;
  position: relative;
}

.text-block {
  color: var(--font--colors--paragraph-light);
}

.image-3 {
  width: 30px;
}

.image-4 {
  filter: hue-rotate(16deg);
  width: 35px;
}

.image-5 {
  width: 30px;
}

.heading-2 {
  color: var(--font--colors--paragraph-light);
  position: relative;
}

.image-6 {
  width: 160px;
  max-width: 150%;
}

.image-7,
.image-8 {
  filter: saturate(0%) brightness(200%);
  object-fit: contain; /* lot A6 : le webp GSK était étiré dans une boîte 100×56 */
}

.image-9 {
  filter: grayscale() brightness(200%);
  width: 170px;
  max-width: 150%;
}

.image-10 {
  filter: invert() brightness(200%);
  width: 110px;
  max-width: 120%;
  color: var(--core--colors--system--blue-100);
}

.image-11 {
  filter: saturate(0%) invert() brightness(200%);
  width: 130px;
  max-width: 120%;
}

.image-12 {
  filter: contrast(200%) invert() saturate(0%);
  width: 110px;
  max-width: 120%;
}

.image-13 {
  filter: saturate(0%) brightness(200%);
  width: 130px;
  max-width: 120%;
}

.image-14 {
  width: 120px;
  max-width: 120%;
}

.logo-cta-big {
  object-fit: contain;
  flex-shrink: 0;
  width: 100%;
  max-width: 700px;
  height: auto;
  display: block;
}

.logo-cta-big.smartphone {
  display: none;
}

.cta-top-row {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
  width: 100%;
  display: flex;
}

.heading-3 {
  width: auto;
  max-width: 100%; /* lot A2 : plus de 900px/180% qui coupait à 767 et chevauchait le paragraphe à 992-1150 */
  color: var(--font--colors--paragraph-light);
}

.lb-social-row {
  grid-column-gap: 18px;
  grid-row-gap: 18px;
  align-items: center;
  margin-top: 20px;
  display: flex;
}

.lb-social-link {
  display: inline-flex;
}

.lb-social-ico {
  width: 28px;
  height: 28px;
}

.div-block-4 {
  margin-top: 20px;
}

.podcast-grid {
  grid-column-gap: 56px;
  grid-row-gap: 32px;
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.podcast-card {
  grid-row-gap: 16px;
  color: #f5efe6;
  text-align: left;
  flex-direction: column;
  max-width: 340px;
  display: flex;
}

.podcast-cover {
  border-radius: 16px;
  width: 100%;
}

.marker {
  z-index: 10;
  pointer-events: none;
  z-index: 10;
  pointer-events: none;
  max-width: 160px;
  height: auto;
  position: absolute;
}

.marker.is-portfolio {
  margin-top: 64px;
  margin-right: -33px;
  top: -10px;
  right: 6%;
  transform: rotate(18deg);
}

.marker-4 {
  z-index: 10;
  pointer-events: none;
  max-width: 160px;
  height: auto;
  position: absolute;
}

.marker-4.is-portfolio {
  z-index: -10;
  margin-top: -78px;
  margin-right: 549px;
  top: -10px;
  right: 6%;
  transform: rotate(18deg);
}

.text-span {
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--title-light);
}

.text-span-2 {
  font-family: var(--main-font);
}

.marker-6 {
  z-index: 10;
  pointer-events: none;
  max-width: 160px;
  height: auto;
  position: absolute;
}

.marker-6.is-portfolio {
  margin-top: -78px;
  margin-right: 549px;
  padding-left: 14px;
  top: -32px;
  right: 3%;
  transform: rotate(-18deg);
}

.marker-7 {
  z-index: 10;
  pointer-events: none;
  max-width: 160px;
  height: auto;
  position: absolute;
}

.marker-7.is-portfolio {
  margin-top: -78px;
  margin-right: 549px;
  padding-left: 33px;
  top: 146px;
  right: -85%;
  transform: rotate(18deg);
}

.text-span-3 {
  font-family: var(--main-font);
}

.text-span-4 {
  color: var(--font--colors--title-light);
}

.text-span-5 {
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--title-light);
}

.paragraph-7 {
  color: var(--core--colors--neutral--neutral-800);
  padding-top: 13px;
}

.image-15 {
  width: 500px;
  max-width: 200%;
}

.paragraph-8 {
  color: var(--core--colors--neutral--neutral-800);
}

.text-span-6 {
  font-family: var(--font--colors--alt-marker);
  color: var(--font--colors--paragraph-light);
}

.paragraph-9 {
  color: var(--core--colors--neutral--neutral-800);
}

.text-span-7 {
  color: var(--font--colors--title-light);
}

.paragraphe-service {
  color: var(--font--colors--title-light);
  font-size: var(--_font-sizes---displays--display-7);
}

.paragraph-12,
.paragraph-13,
.paragraph-14,
.paragraph-15 {
  font-size: var(--_font-sizes---displays--display-7);
  font-weight: var(--font-weights--medium);
}

@media screen and (min-width: 1440px) {
  .cta-v1-content-grid {
    grid-template-rows: auto auto;
  }

  .pd-sides-small.hero-section {
    padding-bottom: 167px;
  }
}

@media screen and (min-width: 1920px) {
  .section.hero-v1 {
    background-image: none;
    background-position: 0 0;
  }

  .header-wrapper---absolute.pd-sides-small {
    background-image: none;
  }

  .pd-sides-small.hero-section {
    background-image: none;
    margin-top: -18px;
  }

  .background-video {
    opacity: 0.14;
    mix-blend-mode: normal;
    width: 100%;
    height: 100%;
    margin-top: 0;
    position: absolute;
    inset: 0%;
  }
}

@media screen and (max-width: 991px) {
  body {
    --_font-sizes---paragraphs--default: 2rem;
    --_font-sizes---displays--display-10: 3.375rem;
    --_font-sizes---displays--display-8: 2.75rem;
    --_font-sizes---displays--display-7: 2rem;
    --_font-sizes---displays--display-6: 1.75rem;
    --_font-sizes---displays--display-4: 1.25rem;
    --_font-sizes---displays--display-3: 1.125rem;
    --_font-sizes---displays--display-5: 1.5rem;
    --_font-sizes---paragraphs--small: 0.875rem;
    --_font-sizes---displays--display-9: 3rem;
    --_font-sizes---paragraphs--large: 2rem;
    --_font-sizes---displays--display-2: 1rem;
    --_font-sizes---displays--display-1: 0.875rem;
    --_section-paddings---padding-small: 80px;
    --_section-paddings---padding-default: 120px;
    --_section-paddings---hero-padding-top: 48px;
    --_section-paddings---padding-medium: 100px;
  }

  .hamburger-menu-line {
    width: 18px;
    box-shadow:
      0 0.5px 1.5px #0013584d,
      0 2px 5px #0013581a;
  }

  .hamburger-menu {
    width: 48px;
    height: 48px;
    transition: transform 0.3s;
  }

  .hamburger-menu:hover {
    transform: scale3d(1.04, 1.04, 1.01);
  }

  .hamburger-menu.is-open {
    background-color: #ffffff1a;
  }

  .inner-container._100-tablet {
    max-width: 100%;
  }

  .card.faqs-card {
    padding: var(--main-spacers--2x-extra-large) var(--main-spacers--regular);
  }

  .section.hero-v1 {
    padding-top: var(--_section-paddings---padding-default);
    padding-bottom: var(--_section-paddings---padding-default);
    background-image:
      linear-gradient(#00000080, #00000080), url("/img/hero-bg.avif");
    background-position:
      0 0,
      65%;
    margin-top: 0;
  }

  .container-default {
    max-width: var(--container-size--default);
  }

  .nav-menu {
    padding: var(--main-spacers--regular) var(--main-spacers--small);
    border-radius: var(--padding--border-radius--br-size-4);
    background-color: #ffffff1a;
  }

  .list-nav-menu {
    grid-row-gap: 16px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .link-nav-item {
    width: 100%;
    display: flex;
  }

  .nav-link {
    margin-left: 0;
    margin-right: 0;
  }

  .header-right-side {
    grid-column-gap: 20px;
  }

  .footer-main-section {
    grid-template-columns: 1fr;
  }

  .footer-main-section.v2 {
    padding-top: var(--main-spacers--2x-extra-large);
    padding-bottom: var(--main-spacers--2x-extra-large);
    grid-column-gap: var(--main-spacers--large);
    grid-row-gap: var(--main-spacers--large);
    grid-template-columns: 1fr;
  }

  .footer-bottom-content {
    text-align: center;
    flex-flow: column;
    justify-content: center;
  }

  .footer-v2-contact-links-wrapper {
    grid-column-gap: var(--main-spacers--large);
    grid-row-gap: var(--main-spacers--large);
  }

  .header-wrapper---absolute {
    margin-top: 0;
    position: static;
    top: auto;
    left: auto;
    right: auto;
  }

  .hero-v1-content {
    grid-row-gap: var(--main-spacers--2x-extra-large);
  }

  .logo-strip-v1-wrapper {
    text-align: center;
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .logo-strip-v1 {
    grid-template-columns: auto auto auto;
  }

  .section-divider-wrapper {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--regular);
  }

  .cta-v1-content-grid {
    grid-row-gap: 280px;
  }

  .cta-v1-stats-wrapper {
    grid-column-gap: var(--main-spacers--large);
  }

  .testimonial-v1-wrapper {
    min-height: 450px;
  }

  .testimonial-v1-content {
    padding: var(--main-spacers--large) var(--main-spacers--regular);
  }

  .image-wrapper.about-section-v2---top-left {
    width: 40%;
  }

  .image-wrapper.about-section-v2---top-right {
    width: 35%;
    margin-top: 64px;
  }

  .image-wrapper.about-section-v2---bottom-left {
    width: 45%;
    margin-left: 5%;
  }

  .image-wrapper.about-section-v2---bottom-right-left {
    width: 40%;
  }

  .faqs-grid-v1 {
    grid-column-gap: var(--main-spacers--large);
    grid-row-gap: var(--main-spacers--large);
    grid-template-columns: 1fr;
  }

  .portfolio-v1-content {
    grid-column-gap: var(--main-spacers--2x-extra-small);
    grid-row-gap: var(--main-spacers--2x-extra-small);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .process-v1-wrapper-2.first {
    padding-top: 0;
  }

  .process-v1-wrapper-2.last {
    padding-bottom: 0;
  }

  .container-default-2 {
    max-width: 1296px;
  }

  .bg-image-card-content-2 {
    padding-left: 32px;
    padding-right: 32px;
  }

  .process-grid-v1-2 {
    grid-column-gap: 48px;
    grid-row-gap: 48px;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_font-sizes---paragraphs--default: 1rem;
    --_font-sizes---displays--display-10: 2.5rem;
    --_font-sizes---displays--display-8: 2rem;
    --_font-sizes---displays--display-7: 1.75rem;
    --_font-sizes---displays--display-6: 1.5rem;
    --_font-sizes---displays--display-4: 1.25rem;
    --_font-sizes---displays--display-3: 1.125rem;
    --_font-sizes---displays--display-5: 1.35rem;
    --_font-sizes---paragraphs--small: 0.875rem;
    --_font-sizes---displays--display-9: 2.25rem;
    --_font-sizes---paragraphs--large: 1.125rem;
    --_font-sizes---displays--display-2: 1rem;
    --_font-sizes---displays--display-1: 0.875rem;
    --_section-paddings---padding-small: 64px;
    --_section-paddings---padding-default: 80px;
    --_section-paddings---hero-padding-top: 40px;
    --_section-paddings---padding-medium: 72px;
  }

  ul {
    padding-left: 32px;
  }

  .primary-button {
    padding: var(--main-spacers--4x-extra-small) var(--main-spacers--small);
  }

  .primary-button.square {
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
    font-size: var(
      --font-size--base-font-mb\<deleted\|variable-1ea4a63b-37be-1a0d-5aa0-2392034848fc\>
    );
  }

  .inner-container._454px {
    max-width: 100%;
  }

  .card {
    border-radius: var(--padding--border-radius--br-size-3);
  }

  .card.faqs-card {
    padding: var(--main-spacers--large) var(--main-spacers--small);
    grid-column-gap: var(--main-spacers--medium);
    grid-row-gap: var(--main-spacers--medium);
  }

  .secondary-button {
    padding: var(--main-spacers--4x-extra-small) var(--main-spacers--small);
  }

  .secondary-button.square {
    font-size: var(
      --font-size--base-font-mb\<deleted\|variable-1ea4a63b-37be-1a0d-5aa0-2392034848fc\>
    );
  }

  .hidden-on-mobile-landscape {
    display: none;
  }

  .mg-top-small {
    margin-top: var(--main-spacers--2x-extra-small);
  }

  .grid-1-column {
    grid-row-gap: 20px;
  }

  .grid-1-column.gap-row-medium {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--regular);
  }

  .section.hero-v1 {
    border-radius: var(--padding--border-radius--br-size-3);
  }

  .container-default {
    padding-right: var(--main-spacers--extra-small);
    padding-left: var(--main-spacers--extra-small);
  }

  .buttons-row {
    grid-column-gap: var(--main-spacers--3x-extra-small);
  }

  .buttons-row.wrap {
    grid-row-gap: 12px;
  }

  .header {
    padding-top: var(--main-spacers--small);
    padding-bottom: var(--main-spacers--small);
  }

  .nav-menu {
    padding-left: 20px;
    padding-right: 20px;
  }

  .link-nav-item.show-on-mbl {
    display: flex;
  }

  .footer-main-section {
    border-radius: 20px;
  }

  .footer-logo {
    max-width: 240px;
  }

  .footer-v2-contact-links-wrapper {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--regular);
  }

  .mg-top-2x-extra-small {
    margin-top: var(--main-spacers--3x-extra-small);
  }

  .hero-v1-content {
    grid-row-gap: var(--main-spacers--2x-extra-small);
  }

  .logo-strip-v1,
  .section-divider-wrapper {
    grid-column-gap: var(--main-spacers--small);
    grid-row-gap: var(--main-spacers--small);
  }

  .title-left---content-right {
    grid-column-gap: var(--main-spacers--3x-extra-small);
    grid-row-gap: var(--main-spacers--3x-extra-small);
  }

  .mg-top-large {
    margin-top: var(--main-spacers--medium);
  }

  .image.portfolio-image {
    max-height: 340px;
  }

  .cta-v1-section {
    border-radius: var(--padding--border-radius--br-size-3);
  }

  .cta-v1-content-grid {
    grid-row-gap: 80px;
    grid-template-columns: auto;
  }

  .cta-v1-stats-wrapper {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--extra-small);
  }

  .slider-wrapper.pd-bottom {
    padding-bottom: 80px;
  }

  .slider-arrow {
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
  }

  .testimonial-v1-wrapper {
    border-radius: var(--padding--border-radius--br-size-3);
    min-height: 400px;
  }

  .testimonial-v1-content {
    padding: var(--main-spacers--medium) var(--main-spacers--small);
    grid-column-gap: var(--main-spacers--medium);
    grid-row-gap: var(--main-spacers--medium);
  }

  .image-wrapper.about-section-v2---top-left {
    border-radius: var(--padding--border-radius--br-size-2);
    width: 50%;
  }

  .image-wrapper.about-section-v2---top-right {
    border-radius: var(--padding--border-radius--br-size-2);
    width: 45%;
  }

  .image-wrapper.about-section-v2---bottom-left {
    border-radius: var(--padding--border-radius--br-size-2);
    width: 50%;
  }

  .image-wrapper.about-section-v2---bottom-right-left {
    border-radius: var(--padding--border-radius--br-size-2);
  }

  .image-wrapper.portfolio-v1-image-wrapper {
    border-radius: var(--padding--border-radius--br-size-3);
  }

  .portfolio-grid-top,
  .portfolio-grid-top.sibling-item {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--regular);
    grid-template-columns: 1fr;
  }

  .square-icon {
    border-radius: var(--main-spacers--4x-extra-small);
    min-width: 40px;
    max-width: 40px;
    min-height: 40px;
    max-height: 40px;
  }

  .portfolio-grid-bottom,
  .portfolio-grid-bottom.sibling-item {
    grid-column-gap: var(--main-spacers--regular);
    grid-row-gap: var(--main-spacers--regular);
    grid-template-columns: 1fr;
  }

  .portfolio-v1-content {
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
  }

  .pd-sides-small {
    padding-right: var(--main-spacers--2x-extra-small);
    padding-left: var(--main-spacers--2x-extra-small);
  }

  .scroll-section-paragraph {
    margin-top: var(--main-spacers--3x-extra-small);
  }

  .process-step-v1-2 {
    margin-top: 2px;
  }

  .process-v1-wrapper-2 {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .container-default-2 {
    padding-left: 20px;
    padding-right: 20px;
  }

  .bg-image-card-content-2.min-height-550px {
    min-height: 400px;
    padding: 48px 24px;
  }

  .bg-image-card-wrapper-2 {
    border-radius: 16px;
  }
}

@media screen and (max-width: 479px) {
  body {
    --_font-sizes---paragraphs--default: 1rem;
    --_font-sizes---displays--display-10: 2rem;
    --_font-sizes---displays--display-8: 1.58rem;
    --_font-sizes---displays--display-7: 1.5rem;
    --_font-sizes---displays--display-6: 1.375rem;
    --_font-sizes---displays--display-4: 1.25rem;
    --_font-sizes---displays--display-3: 1.125rem;
    --_font-sizes---displays--display-5: 1.25rem;
    --_font-sizes---paragraphs--small: 0.875rem;
    --_font-sizes---displays--display-9: 1.8rem;
    --_font-sizes---paragraphs--large: 1.125rem;
    --_font-sizes---displays--display-2: 1rem;
    --_font-sizes---displays--display-1: 0.875rem;
    --_section-paddings---padding-small: 64px;
    --_section-paddings---padding-default: 80px;
    --_section-paddings---hero-padding-top: 40px;
    --_section-paddings---padding-medium: 72px;
  }

  ul {
    padding-left: 24px;
  }

  .primary-button {
    background-color: var(--font--colors--paragraph-light);
    color: var(--font--colors--title-light);
  }

  .primary-button.is-podcast {
    background-color: var(--core--colors--neutral--neutral-800);
    color: var(--core--colors--system--barrés-bg);
    font-size: var(--_font-sizes---displays--display-7);
    -webkit-text-stroke-color: var(--core--colors--system--barrés-bg);
  }

  .display-10.medium,
  .text-paragraph.mid {
    font-size: var(--_font-sizes---displays--display-10);
  }

  .inner-container._320px._100-tablet {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .inner-container._400px {
    max-width: 100%;
  }

  .inner-container._420px._100-tablet {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .inner-container._420px._100-mbp {
    max-width: 100%;
  }

  .display-8.medium {
    max-width: 70%;
    font-size: var(--_font-sizes---displays--display-10);
  }

  .display-4.text-neutral-light {
    width: 100%;
    max-width: 100%;
    font-size: var(--_font-sizes---displays--display-10);
  }

  .section.hero-v1 {
    background-image: none;
    background-position: 0 0;
    background-size: auto;
  }

  .section.small {
    padding-top: var(--main-spacers--medium);
    margin-top: 100px;
  }

  .buttons-row {
    width: 100%;
  }

  .badge {
    padding: var(--main-spacers--4x-extra-small)
      var(--main-spacers--3x-extra-small);
    font-size: var(--_font-sizes---displays--display-7);
  }

  .nav-menu {
    background-color: #fff6f4;
    max-width: 200%;
    padding-left: 16px;
    padding-right: 16px;
    position: absolute;
  }

  .link-nav-item {
    font-size: var(--line-height--large);
  }

  .nav-link {
    color: var(--core--colors--system--barrés-bg);
    -webkit-text-stroke-color: var(--core--colors--system--barrés-bg);
  }

  .footer-main-section.v2 {
    padding-top: var(--main-spacers--large);
    padding-bottom: var(--main-spacers--large);
    grid-column-gap: var(--main-spacers--medium);
    grid-row-gap: var(--main-spacers--medium);
  }

  .text-titles.blend-overlay {
    font-size: var(--_font-sizes---displays--display-10);
  }

  .mg-top-5x-extra-small {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .title-neutral {
    font-size: var(--_font-sizes---displays--display-10);
  }

  .mg-top-2x-extra-small {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .footer-contact-link {
    margin-top: -9px;
  }

  .header-wrapper---absolute.pd-sides-small {
    position: relative;
  }

  .logo-strip-v1 {
    grid-row-gap: var(--main-spacers--extra-small);
    grid-template-columns: auto auto;
  }

  .flex-start.gap-2x-extra-small.wrap-mbp {
    flex-flow: wrap;
  }

  .accordion-paragraph._620px {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .image.portfolio-image {
    max-height: 100%;
  }

  .cta-v1-stats-wrapper {
    grid-row-gap: var(--main-spacers--2x-extra-small);
  }

  .testimonial-v1-wrapper {
    min-height: 350px;
  }

  .mg-top-3x-extra-small {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .image-wrapper.about-section-v2---top-left {
    width: 90%;
  }

  .image-wrapper.about-section-v2---top-right {
    width: 80%;
    margin-top: 0;
    margin-left: auto;
  }

  .image-wrapper.about-section-v2---bottom-left {
    width: 90%;
    margin-top: 0;
    margin-left: auto;
  }

  .image-wrapper.about-section-v2---bottom-right-left {
    width: 80%;
    margin-right: auto;
  }

  .accordion-wrapper {
    width: auto;
    max-width: 60%;
  }

  .about-section-v2---top-images {
    flex-flow: column;
    align-items: flex-start;
  }

  .about-section-v2---bottom-images {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-end;
  }

  .blend-overlay,
  .blend-overlay.is-process {
    font-size: var(--_font-sizes---displays--display-10);
  }

  .scroll-section-title {
    font-size: var(--_font-sizes---displays--display-9);
  }

  .scroll-section-paragraph.mg-top-3x-extra-small {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .button-text,
  .button-bg-move-container {
    font-size: var(--_font-sizes---displays--display-8);
  }

  .background-video {
    height: 100%;
  }

  .container-default-2 {
    margin-top: -240px;
  }

  .bg-image-card-content-2.min-height-550px {
    min-height: 350px;
  }

  .paragraph,
  .paragraph-3,
  .paragraph-4,
  .paragraph-5 {
    font-size: var(--_font-sizes---displays--display-7);
  }

  .paragraph-6 {
    font-size: var(--_font-sizes---displays--display-6);
  }

  .heading-2 {
    font-size: 48px;
  }

  .logo-cta-big {
    display: none;
  }

  .logo-cta-big.smartphone {
    display: block;
  }

  .heading-3 {
    max-width: 100%;
    font-size: var(--_font-sizes---displays--display-10);
  }

  .marker.is-portfolio {
    width: 40px;
    margin-top: 79px;
    padding-left: 0;
  }

  .marker-4.is-portfolio {
    width: 40px;
    margin-top: -57px;
    margin-right: 294px;
  }

  .text-span {
    max-width: 50%;
    font-size: var(--_font-sizes---displays--display-9);
  }

  .marker-6.is-portfolio {
    width: 60px;
    margin-top: -47px;
    margin-right: 282px;
  }

  .marker-7.is-portfolio {
    width: 60px;
    margin-top: -97px;
    margin-right: 310px;
    padding-left: 28px;
  }

  .paragraph-10 {
    max-width: 60%;
    font-size: var(--_font-sizes---displays--display-8);
  }

  .div-block-5 {
    max-width: 80%;
  }

  .paragraph-11 {
    font-size: var(--_font-sizes---displays--display-8);
  }

  .heading-4,
  .heading-5,
  .heading-6 {
    font-size: var(--_font-sizes---displays--display-10);
  }
}

#grid-_7ccd706e-55ae-10a3-5cec-d633a9b4b9ef-a9b4b9ec {
  align-self: start;
}

#grid-e3b867fa-e5be-7a08-a9d2-704dc3ffed0f-a1dc731c,
#grid-_2ba042fc-dd81-bfec-7d6a-cf47c6f9740e-a1dc731c,
#grid-_99b5f32e-159c-d226-7ed8-006dcc9f469b-a1dc731c {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#grid-eba84094-bf79-b89f-9f02-ca08c9c5317f-a1dc731c {
  grid-area: span 1 / span 2 / span 1 / span 2;
}

#grid-c394248b-8eee-9e0a-8629-1f48e70f8edd-a1dc731c {
  grid-area: span 2 / span 1 / span 2 / span 1;
}

#grid-_7bbfd0de-26d2-4a1b-4fb3-c82192b50095-a1dc731c {
  align-self: start;
}

@media screen and (max-width: 991px) {
  #grid-c394248b-8eee-9e0a-8629-1f48e70f8edd-a1dc731c {
    order: 9999;
  }
}

@media screen and (max-width: 767px) {
  #grid-eba84094-bf79-b89f-9f02-ca08c9c5317f-a1dc731c {
    grid-column: span 1 / span 1;
  }
}

.is-link-open {
  display: block;
  position: relative;
}

/* Éléments révélés au scroll : le runtime Webflow laissait filter: blur(0px) après l'animation, ce qui crée un
   contexte d'empilement (les sections passent devant la vidéo de fond). On fixe ce comportement en CSS, JS ou pas. */
[data-reveal] {
  isolation: isolate;
}
/* Ancres : défilement doux (le runtime Webflow le faisait en JS) */
html {
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* ==== lot A (04/09/2026) — corrections responsive sous 480 px ==== */
@media screen and (max-width: 479px) {
  .text-paragraph.mid {
    line-height: 1.15em; /* A9 : 32 px de corps sur 24 px d'interligne = lignes qui se chevauchaient */
  }
  .portfolio-v1-content {
    flex-flow: column; /* A9 : le badge « asset commercial » étranglait la colonne de texte à ~110 px */
    align-items: flex-start;
  }
}

/* lot A5 : cartes portfolio sans vidéo publique = pas de lien (ex-href="#" qui renvoyait en haut de page) */
.portfolio-v1-wrapper.is-static {
  cursor: default;
}

/* ==== lot A8 (04/09/2026) — pictos décoratifs : jamais sur les glyphes des titres ==== */
/* desktop : clap au-dessus/à gauche du titre « Du dépôt ANSM… », objectif décalé à gauche, pilules poussées à droite */
.marker-4.is-portfolio {
  right: auto;
  left: -110px;
  top: -60px;
  margin: 0;
}
.marker-6.is-portfolio {
  margin-right: 585px;
}
.marker-7.is-portfolio {
  right: -92%;
}
@media screen and (max-width: 991px) {
  .marker-4.is-portfolio {
    width: 80px;
    left: -20px;
    top: -115px;
  }
}
@media screen and (max-width: 767px) {
  .marker-7.is-portfolio {
    top: 100px;
  }
}
@media screen and (max-width: 479px) {
  .marker-4.is-portfolio {
    width: 40px;
    left: -10px;
    top: -60px;
    margin: 0;
  }
  .marker-6.is-portfolio {
    margin-top: -60px;
  }
  .marker-7.is-portfolio {
    top: 20px;
  }
}

/* ==== lot A3 (04/09/2026) — footer en une colonne : le calage -73px (grille 2 colonnes) faisait passer « PARIS » sous le titre entre 767 et 991 ==== */
@media screen and (max-width: 991px) {
  .footer-contact-link {
    margin-top: 0;
  }
}
@media screen and (max-width: 479px) {
  .footer-contact-link {
    margin-top: -9px;
  }
}

@media screen and (max-width: 991px) {
  .display-8 {
    width: auto; /* lot A3 : les 500 px fixes créaient une grille FAQ de 550 px sous 480 (pan latéral) */
    max-width: 100%;
  }
}

/* ==== lot B2 (04/09/2026) — section jaune : le texte orange sur fond jaune mesurait 2,38:1 (8 nœuds en échec Lighthouse).
   La charte prévoit exactement ce cas : --text-on-accent-yellow = la base marron. ==== */
.cta-v1-section .blend-overlay,
.cta-v1-section .text-block,
.cta-v1-section .paragraph-2,
.cta-v1-section .display-10,
.cta-v1-section .display-4,
.cta-v1-section .link {
  color: var(--core--colors--neutral--neutral-100);
}
.cta-v1-section .text-block {
  font-size: var(--_font-sizes---displays--display-4); /* e-mail : 16 px à côté d'icônes de 30-35 px */
}

/* ==== lot B1 (04/09/2026) — le poster porte le fond du hero : la vidéo n'est plus chargée sous 768 px
   ni en mouvement réduit (elle pesait 3,2 Mo pour un rendu à 15 % d'opacité). Même image, même opacité. ==== */
.background-video {
  background-position: 50%;
  background-size: cover;
}
.bg-video-pause {
  z-index: 2;
  cursor: pointer;
  color: var(--core--colors--neutral--neutral-800);
  background-color: #1b0907cc;
  border: 1px solid var(--core--colors--neutral--neutral-800);
  min-width: 44px;
  min-height: 44px;
  font-family: var(--font-family, "Generalsans Variable", Arial, sans-serif);
  font-size: 14px;
  line-height: 1;
  position: absolute;
  right: 12px;
  bottom: 12px;
  display: none; /* affiché par site.js seulement quand la vidéo joue réellement */
  align-items: center;
  justify-content: center;
}
.bg-video-pause:focus-visible {
  outline: 2px solid var(--font--colors--title-light);
  outline-offset: 2px;
}

/* ==== lot B7 (04/09/2026) — accessibilité : focus visible partout, cibles tactiles ≥ 44 px ==== */
/* Le lien d'évitement est masqué tant qu'il n'a pas le focus clavier. On ne le sort PAS de l'écran
   par un décalage négatif : un tel décalage dépend du plus proche ancêtre positionné, donc un simple
   `position: relative` ajouté plus tard suffirait à le faire réapparaître en plein milieu de la page.
   On le réduit à un point invisible, technique insensible au contexte de positionnement. */
.skip-link {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}
.skip-link:focus {
  clip: auto;
  clip-path: none;
  z-index: 10000;
  color: var(--core--colors--neutral--neutral-100);
  background-color: var(--font--colors--title-light);
  width: auto;
  height: auto;
  padding: 12px 20px;
  font-family: var(--font-family, "Generalsans Variable", Arial, sans-serif);
  font-weight: 600;
  position: fixed;
  top: 8px;
  left: 8px;
  overflow: visible;
}
.ui-slider-prev:focus-visible,
.ui-slider-next:focus-visible,
.ui-nav-button:focus-visible,
.accordion-top:focus-visible,
.ui-slider-dot:focus-visible {
  outline: 2px solid var(--font--colors--title-light);
  outline-offset: 3px;
}
.ui-slider-dot:focus,
.ui-slider-dot:focus.is-active {
}
/* les points de pagination faisaient 8x8 : cible de 44 px avec une pastille visible de 16 px */
.ui-slider-dot {
  box-sizing: content-box;
  width: 16px;
  height: 16px;
  padding: 14px;
  margin: -14px -6px;
}
.primary-button,
.secondary-button,
.link.mid,
.footer-contact-link .link {
  min-height: 44px;
}
.primary-button,
.secondary-button {
  align-items: center;
  display: inline-flex;
}
.lb-social-row a,
.footer-social-row a {
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
}

/* lot B7 (suite) — cibles tactiles : les points de pagination ne sont plus réduits de moitié,
   les icônes sociales et les liens de nav atteignent 44 px dans les deux dimensions. */
.ui-slider-dots {
  height: 56px;
  padding-top: 0;
}
.ui-slider-dot {
  width: 14px;
  height: 14px;
  padding: 15px;
  margin: 0;
}
.ui-nav-link {
  align-items: center;
  min-height: 44px;
  display: inline-flex;
}
.lb-social-row a,
.footer-social-row a,
.social-row a,
a.ui-inline-block:has(> img[src*="platform-"]) {
  min-width: 44px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  display: inline-flex;
}
.hamburger-menu-line,
.hamburger-menu-line.top,
.hamburger-menu-line.middle,
.hamburger-menu-line.bottom {
}
/* lot B7 (fin) — les deux dernières cibles sous 44 px */
.slider-arrow {
  min-width: 44px;
  max-width: 44px;
  min-height: 44px;
  max-height: 44px;
}
.accordion-top {
  align-items: center;
  min-height: 44px;
  display: flex;
}

/* lot B7 — copie du texte réservée aux lecteurs d'écran (titres découpés lettre par lettre pour le survol) */
.sr-only {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}
