/*!****************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./assets/frontend/sass/app.scss ***!
  \****************************************************************************************************************************************************/
@charset "UTF-8";
/*
|
| FEATURES
|----------------
|
*/
/*
|
| UTILS
|----------------
|
*/
/*
|
| MIXINS
|----------------
|
*/
/*
    Name of the next breakpoint, or null for the last breakpoint.

    >> breakpoint-next(sm)
        md
    >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        md
    >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
        md
*/
/*
    Minimum breakpoint width. Null for the smallest (first) breakpoint.

    >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        576px
*/
/*
    Maximum breakpoint width. Null for the largest (last) breakpoint.
    The maximum value is calculated as the minimum of the next one less 0.02px to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.
    See https://www.w3.org/TR/mediaqueries-4/#mq-min-max
    Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.
    See https://bugs.webkit.org/show_bug.cgi?id=178261

    >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        767.98px
*/
/*
    Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.
    Useful for making responsive utilities.

    >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        ""  (Returns a blank string)

    >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        "-sm"
*/
/*
    Media of at least the minimum breakpoint width. No query for the smallest breakpoint.
    Makes the @content apply to the given breakpoint and wider.
*/
/*
    Media of at most the maximum breakpoint width. No query for the largest breakpoint.
    Makes the @content apply to the given breakpoint and narrower.
*/
/*
    Media that spans multiple breakpoint widths.
    Makes the @content apply between the min and max breakpoints
*/
/*
    Media between the breakpoint's minimum and maximum widths.
    No minimum for the smallest breakpoint, and no maximum for the largest one.
    Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.
*/
/*
|
| Titles
|-----------------------
|
*/
/*
|
| MAPS
|----------------
|
*/
/*
|-------------
| Breakpoints media queries creation 
|-------------
| - How to use: add lines to create more breakpoints
|
*/
/*
|-------------------------------
| Container classes creation
|-------------------------------
| Variables used to generate container classes
| - Generated classes: .container / .container-fluid
|
*/
/*
|-------------------------------
| Grid gutters creation
|-------------------------------
| Variables used to generate grid gutter classes
| - Generated classes: .g-{size}
| - Exemple: .g-md
|
*/
/*
|-------------------------------
| Margins & Paddings classes creation
|-------------------------------
| Variables used to generate padding & margin classes
| - Generated classes: .m{direction}-{size} & .p{direction}-{size}
| - Exemple: .mt-md & .pt-md
|
*/
/*
|-------------
| Color classes creation 
|-------------
| - How to use: add lines to create more "color classes" 
| - Generated classes: .bg-{color} & .c-{color}
| - Exemple: .bg-black & .c-black
|
*/
/*
|-------------------------------
| Font family classes creation
|-------------------------------
| How to use: add lines to create more "font family classes" 
| - Generated classes: .ff-{family}
| - Exemple: .ff-default
|
*/
/*
|----------------------------------------------
| Font size classes creation
|----------------------------------------------
| Variables used to generate font size classes (including responsive)
| - Generated classes: .fs-{name}
| - Exemple: .fs-md
|
| Syntax :
|   '{name}': (
|       'default': {size},
|       'screens': (
|           'xl': {size},
|           'lg': {size},
|           'md': {size},
|           'sm': {size},
|       )
|   )
|
*/
/*
|-------------------------------
| Font weight classes creation
|-------------------------------
| How to use: add lines to create more "font weight classes"
| - Generated classes: .fw-{weight}
| - Exemple: .fw-400
|
*/
/*
|-------------------------------
| Text align classes creation
|-------------------------------
| Variables used to generate text-align classes
| - Generated classes: .ta-{alignment}
| - Exemple: .ta-center
|
*/
/*
|-------------------------------
| Title sizes classes creation
|-------------------------------
| Variables used to generate title classes (including responsive)
| - Generated classes: .{class}
| - Exemple: .title-xl
|
*/
/*
|
| CORE
|----------------
|
*/
/*
|---------------------------------------------------------------
| Helpers
|---------------------------------------------------------------
| Define helper classes
|
|
*/
/*
|
| TEXT TRANSFORMS
|----------------
|
*/
/*
|---------------------------------------------------------------
| CLASS GENERATOR
|---------------------------------------------------------------
| Mixins calls to generate classes
|
|
*/
/*
|
| CONTAINERS
|----------------
|
*/
.container, .hero__single-image, .hero__single-container-title, .hero__single-container, .hero__about-container, .hero__filter-container, .hero__default-container, .hero__contact-container, .hero__home-container, .t6accordeons-container, .t6cards-container, .t6keys-container, .t6info-container, .t6share-container, .t6networks-container, .t6citation-container, .t6form-container, .t6video-container, .t6text-container, .video-container, .files-container, .tmc-container, .tc-container, .way-container, .omis-container, .ombf-container, .omslider-container, .omv-container, .offers-container, .om-container, .os-container, .oa-container, .newsletter-container, .luc8-container, .luc-container, .ln6-container, .ln8-container, .ln-container, .cit-container, .com-container, .cont-container, .cta8-container, .cta-container, .footer-container, .header-wrapper {
  width: calc(100% - 2 * var(--container-gutter, 15px));
  max-width: var(--container-width, none);
  margin-inline: auto;
}
.container--sm, .video-container, .ombf-container, .cont-container {
  --container-width: 73rem;
  padding-inline: var(--container-gutter);
}
.container--xs, .hero__single-image, .hero__single-container-title, .t6accordeons-container, .t6cards-container, .t6keys-container, .t6info-container, .t6share-container, .t6networks-container, .t6citation-container, .t6form-container, .t6video-container, .t6text-container, .omis-container {
  --container-width: 58rem;
  padding-inline: var(--container-gutter);
}
.container--fluid {
  --container-width: 100%;
  padding-inline: var(--container-gutter);
}

/*
|
| GRID
|----------------
|
*/
/*
|
| MARGINS & PADDINGS
|----------------
|
*/
/*
|
| BACKGROUND COLORS
|----------------
|
*/
.bg-black {
  background-color: #000;
}

.bg-black-40 {
  background-color: rgba(0, 0, 0, 0.4);
}

.bg-black-25 {
  background-color: rgba(0, 0, 0, 0.25);
}

.bg-dark-grey {
  background-color: #424242;
}

.bg-grey {
  background-color: #999;
}

.bg-grey-20 {
  background-color: rgba(153, 153, 153, 0.2);
}

.bg-light-grey {
  background-color: #dedede;
}

.bg-white {
  background-color: #fff;
}

.bg-white-10 {
  background-color: rgba(255, 255, 255, 0.1);
}

.bg-white-17 {
  background-color: rgba(255, 255, 255, 0.17);
}

.bg-white-20 {
  background-color: rgba(255, 255, 255, 0.2);
}

.bg-white-25 {
  background-color: rgba(255, 255, 255, 0.25);
}

.bg-white-50 {
  background-color: rgba(255, 255, 255, 0.5);
}

.bg-white-80 {
  background-color: rgba(255, 255, 255, 0.8);
}

.bg-very-light-grey {
  background-color: #f7f9fe;
}

.bg-blue-primary {
  background-color: #001ed2;
}

.bg-blue-second {
  background-color: #0529ff;
}

.bg-blue-third {
  background-color: #006ef0;
}

.bg-blue-light {
  background-color: #bfd1fe;
}

.bg-blue-light-secondary {
  background-color: #ecf4ff;
}

.bg-blue-dark {
  background-color: #0b2242;
}

.bg-blue-dark-50 {
  background-color: rgba(1, 12, 47, 0.5);
}

.bg-blue-dark-very {
  background-color: #010c2f;
}

.bg-blue-dark-secondary {
  background-color: #040553;
}

.bg-blue-20 {
  background-color: rgba(1, 12, 47, 0.2);
}

.bg-blue-50 {
  background-color: rgba(1, 12, 47, 0.5);
}

.bg-red {
  background-color: rgb(199, 8, 8);
}

/*
|
| TEXT ALIGNS
|----------------
|
*/
/*
|
| FONT FAMILIES
|----------------
|
*/
/*
|
| FONT SIZES
|----------------
|
*/
/*
|
| FONT WEIGHTS
|----------------
|
*/
.fw-100 {
  font-weight: 100;
}

.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

.fw-900 {
  font-weight: 900;
}

/*
|
| TITLES
|----------------
|
*/
.title-xs {
  font-size: 1rem;
}

.title-sm {
  font-size: 1.125rem;
}

.title-md {
  font-size: 1.5rem;
}

.title-lg {
  font-size: 1.875rem;
}

.title-xl {
  font-size: clamp(1.875rem, 3.4722222222vw + 0.5rem, 3.125rem);
  font-weight: 700;
  line-height: 1.2;
}

.title-xxl {
  font-size: clamp(2rem, 4.3055555556vw + 0.5rem, 3.875rem);
}

/*
|
| COLORS
|----------------
|
*/
.c-black {
  color: #000;
}

.c-black-40 {
  color: rgba(0, 0, 0, 0.4);
}

.c-black-25 {
  color: rgba(0, 0, 0, 0.25);
}

.c-dark-grey {
  color: #424242;
}

.c-grey {
  color: #999;
}

.c-grey-20 {
  color: rgba(153, 153, 153, 0.2);
}

.c-light-grey {
  color: #dedede;
}

.c-white {
  color: #fff;
}

.c-white-10 {
  color: rgba(255, 255, 255, 0.1);
}

.c-white-17 {
  color: rgba(255, 255, 255, 0.17);
}

.c-white-20 {
  color: rgba(255, 255, 255, 0.2);
}

.c-white-25 {
  color: rgba(255, 255, 255, 0.25);
}

.c-white-50 {
  color: rgba(255, 255, 255, 0.5);
}

.c-white-80 {
  color: rgba(255, 255, 255, 0.8);
}

.c-very-light-grey {
  color: #f7f9fe;
}

.c-blue-primary {
  color: #001ed2;
}

.c-blue-second {
  color: #0529ff;
}

.c-blue-third {
  color: #006ef0;
}

.c-blue-light {
  color: #bfd1fe;
}

.c-blue-light-secondary {
  color: #ecf4ff;
}

.c-blue-dark {
  color: #0b2242;
}

.c-blue-dark-50 {
  color: rgba(1, 12, 47, 0.5);
}

.c-blue-dark-very {
  color: #010c2f;
}

.c-blue-dark-secondary {
  color: #040553;
}

.c-blue-20 {
  color: rgba(1, 12, 47, 0.2);
}

.c-blue-50 {
  color: rgba(1, 12, 47, 0.5);
}

.c-red {
  color: rgb(199, 8, 8);
}

/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

:root {
  --radius-default: 1.5rem;
  --blur-default: 1.5rem;
  --header-height: 112px;
  --header-opacity: 0;
  --viewport-height: 100vh;
  --submenu-h: 0px;
  --side-margin: clamp(20px, 3.5vw, 70px);
  --container-gutter: 3rem;
  --gap-default: 0.5rem;
  --space-default: 1.5rem;
  --container-padding: 1.5rem;
  --space-gap: 5rem;
  --block-padding: 7.5rem;
  --padding-block-t6: 2.5rem;
  --padding-block: 4rem;
  --space-block-header: 1.5rem;
  --c-black: #000;
  --c-black-40: rgba(0, 0, 0, 0.4);
  --c-black-25: rgba(0, 0, 0, 0.25);
  --c-dark-grey: #424242;
  --c-grey: #999;
  --c-grey-20: rgba(153, 153, 153, 0.2);
  --c-light-grey: #dedede;
  --c-white: #fff;
  --c-white-10: rgba(255, 255, 255, 0.1);
  --c-white-17: rgba(255, 255, 255, 0.17);
  --c-white-20: rgba(255, 255, 255, 0.2);
  --c-white-25: rgba(255, 255, 255, 0.25);
  --c-white-50: rgba(255, 255, 255, 0.5);
  --c-white-80: rgba(255, 255, 255, 0.8);
  --c-very-light-grey: #f7f9fe;
  --c-blue-primary: #001ed2;
  --c-blue-second: #0529ff;
  --c-blue-third: #006ef0;
  --c-blue-light: #bfd1fe;
  --c-blue-light-secondary: #ecf4ff;
  --c-blue-dark: #0b2242;
  --c-blue-dark-50: rgba(1, 12, 47, 0.5);
  --c-blue-dark-very: #010c2f;
  --c-blue-dark-secondary: #040553;
  --c-blue-20: rgba(1, 12, 47, 0.2);
  --c-blue-50: rgba(1, 12, 47, 0.5);
  --c-red: rgb(199, 8, 8);
  --container-width: rem-calc(1312px);
}
@media (max-width: 47.98rem) {
  :root {
    --gap-content-section: 3rem;
    --padding-block: 2rem;
    --block-padding: 4rem;
    --container-gutter: 1.5rem;
  }
}

@font-face {
  font-family: "Poppins";
  src: url(../fonts/poppins/300.ttf) format("truetype");
  font-weight: 300;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Poppins";
  src: url(../fonts/poppins/400.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Poppins";
  src: url(../fonts/poppins/500.ttf) format("truetype");
  font-weight: 500;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Poppins";
  src: url(../fonts/poppins/600.ttf) format("truetype");
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Poppins";
  src: url(../fonts/poppins/700.ttf) format("truetype");
  font-weight: 700;
  font-style: normal;
  font-stretch: normal;
}
* {
  margin: 0;
  padding: 0;
}

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

html {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

hr {
  border: 0;
}

button,
input,
select,
textarea {
  border: 0;
  border-radius: 0;
  background-color: transparent;
  appearance: none;
  letter-spacing: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
}

a,
button,
select,
input,
textarea {
  color: inherit;
}

a,
button {
  cursor: pointer;
}

button {
  text-transform: inherit;
}

a {
  text-decoration: none;
}

ol li,
ul li {
  list-style-type: none;
}

ul {
  margin: 0;
  padding: 0;
}
ul li {
  list-style-type: none;
}

[hidden] {
  display: none !important;
}

html,
body {
  scroll-behavior: smooth;
}
@media (hover: hover) {
  html,
  body {
    overscroll-behavior: none;
  }
}

body {
  display: flex;
  min-height: 100dvh;
  flex-direction: column;
  font-family: Poppins, sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media (min-width: 64rem) {
  body::before {
    position: fixed;
    inset: 0;
    z-index: 998;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.5s ease;
  }
  body:has(.submenu:is([data-state=opening], [data-state=opened]))::before {
    opacity: 1;
  }
}

.wrapper {
  flex: 1 1 auto;
}

.quick-access {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}
.quick-access:not(:focus-within) {
  opacity: 0;
}
.quick-access-link:not(:focus-visible) {
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
}

.icon {
  display: inline-block;
  width: 1em;
  min-width: 1em;
  height: 1em;
  min-height: 1em;
  fill: none;
}
.icon [fill] {
  fill: currentColor;
}
.icon [stroke] {
  stroke: currentColor;
}

:is(.media-contain, .media-cover) {
  position: relative;
  overflow: hidden;
}
:is(.media-contain, .media-cover) :is(img, video, iframe) {
  display: block;
  position: absolute;
  inset: 0;
}
.media-contain :is(img, video) {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}
.media-contain iframe {
  margin: auto;
}
.media-cover :is(img, video, iframe) {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.screen-reader-text {
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
}

.cms p:not(:first-child),
.cms ul:not(:first-child),
.cms ol:not(:first-child),
.cms h1:not(:first-child),
.cms h2:not(:first-child),
.cms h3:not(:first-child),
.cms h4:not(:first-child),
.cms h5:not(:first-child),
.cms h6:not(:first-child),
.cms table:not(:first-child) {
  margin-top: 1em;
}
.cms img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
}
.cms ul:not([class]),
.cms ol:not([class]) {
  padding-left: 1.25em;
}
.cms ul:not([class]) li:not(:first-child),
.cms ol:not([class]) li:not(:first-child) {
  margin-top: 0.25em;
}
.cms ul:not([class]) li {
  list-style: disc;
}
.cms ul:not([class]) li ul li {
  list-style: circle;
}
.cms ol:not([class]) li {
  list-style: decimal;
}
.cms a:not([class]) {
  text-decoration: underline;
}
.cms table th,
.cms table td {
  padding-block: 0.25rem;
}
.cms table th:not(:last-child),
.cms table td:not(:last-child) {
  padding-right: 1rem;
}

.cms-intro {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  line-height: 1.7;
}
@media (max-width: 47.98rem) {
  .cms-intro {
    font-size: 1rem;
  }
}
.cms-intro p:not(:first-child),
.cms-intro ul:not(:first-child),
.cms-intro ol:not(:first-child),
.cms-intro h1:not(:first-child),
.cms-intro h2:not(:first-child),
.cms-intro h3:not(:first-child),
.cms-intro h4:not(:first-child),
.cms-intro h5:not(:first-child),
.cms-intro h6:not(:first-child),
.cms-intro table:not(:first-child) {
  margin-top: 1em;
}
.cms-intro strong {
  font-weight: 600;
}

strong {
  font-weight: 600;
}

.grid-12, .way-container {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--gap-default);
}
@media (max-width: 47.98rem) {
  .grid-12, .way-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}

.grid-2, .hero__about-container, .hero__home-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--gap-default);
}
@media (max-width: 47.98rem) {
  .grid-2, .hero__about-container, .hero__home-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}

.pointer-events-none {
  pointer-events: none;
}

.js-fadein,
.js-fadein-up {
  opacity: 0;
  transition: all 0.6s ease;
  will-change: transform, opacity;
}
.js-fadein:nth-child(1),
.js-fadein-up:nth-child(1) {
  transition-delay: 0.03s;
}
.js-fadein:nth-child(2),
.js-fadein-up:nth-child(2) {
  transition-delay: 0.06s;
}
.js-fadein:nth-child(3),
.js-fadein-up:nth-child(3) {
  transition-delay: 0.09s;
}
.js-fadein:nth-child(4),
.js-fadein-up:nth-child(4) {
  transition-delay: 0.12s;
}
.js-fadein:nth-child(5),
.js-fadein-up:nth-child(5) {
  transition-delay: 0.15s;
}
.js-fadein:nth-child(6),
.js-fadein-up:nth-child(6) {
  transition-delay: 0.18s;
}
.js-fadein:nth-child(7),
.js-fadein-up:nth-child(7) {
  transition-delay: 0.21s;
}
.js-fadein:nth-child(8),
.js-fadein-up:nth-child(8) {
  transition-delay: 0.24s;
}
.js-fadein:nth-child(9),
.js-fadein-up:nth-child(9) {
  transition-delay: 0.27s;
}
.js-fadein:nth-child(10),
.js-fadein-up:nth-child(10) {
  transition-delay: 0.3s;
}

.js-fadein-up {
  transform: translateY(20px);
}

.is-visible.js-fadein,
.is-visible.js-fadein-up {
  opacity: 1;
  transform: translateY(0);
}

.js-parallax-img {
  overflow: hidden;
}

.css__button-icon {
  overflow: hidden;
  cursor: pointer;
  position: relative;
  transition: all 0.4s cubic-bezier(0.22, 0.61, 0.35, 1);
}
.css__button-icon .icon-hover,
.css__button-icon .icon-default {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1px 0;
  color: inherit;
}
.css__button-icon .icon-hover {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: transform 0.5s, opacity 0.5s;
  transform: translateX(-100%) scale(0.8);
  opacity: 0;
}
.css__button-icon .icon-default {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: transform 0.5s, opacity 0.5s;
}

.css__button, .menu-link.style-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-radius: 100px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
}
@media (max-width: 47.98rem) {
  .css__button, .menu-link.style-primary {
    font-size: 1rem;
  }
}
.css__button--outline-white {
  backdrop-filter: blur(var(--blur-default));
  background-color: var(--c-white-17);
  border: 1px solid var(--c-white-20);
  color: var(--c-white);
}
.css__button--outline-blue-dark {
  backdrop-filter: blur(var(--blur-default));
  background-color: var(--c-white-17);
  border: 1px solid var(--c-blue-dark);
  color: var(--c-blue-dark);
}
.css__button--blue-primary, .menu-link.style-primary {
  background-color: var(--c-blue-primary);
  color: var(--c-white);
}
.css__button--blue-primary .css__button-icon, .menu-link.style-primary .css__button-icon {
  background-color: var(--c-blue-second);
}
.css__button-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  width: auto;
  aspect-ratio: 1/1;
  background-color: var(--c-blue-dark);
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
}
.css__button-icon img,
.css__button-icon svg {
  display: block;
  width: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  height: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 47.98rem) {
  .css__button-icon img,
  .css__button-icon svg {
    width: 1.5rem;
    height: 1.5rem;
  }
}
.css__button-text {
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  line-height: 2;
}
@media (max-width: 47.98rem) {
  .css__button-text {
    padding-right: 1.5rem;
  }
}
.css__button--icon {
  gap: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}
@media (max-width: 47.98rem) {
  .css__button--icon {
    gap: 1rem;
  }
}
.css__button--icon .css__button-text {
  padding-left: 0;
}

/* Hover global (icônes) */
.css__button:hover .icon-hover, .menu-link.style-primary:hover .icon-hover,
.css__button-group:hover .css__button .icon-hover,
.css__button-group:hover .menu-link.style-primary .icon-hover {
  transform: translateX(0%) scale(1);
  opacity: 1;
}
.css__button:hover .icon-default, .menu-link.style-primary:hover .icon-default,
.css__button-group:hover .css__button .icon-default,
.css__button-group:hover .menu-link.style-primary .icon-default {
  transform: translateX(100%) scale(1);
  opacity: 0;
}

/* Hover spécifique : outline-white */
.css__button--outline-white:hover,
.css__button-group:hover .css__button--outline-white {
  background-color: var(--c-white-25);
  color: var(--c-white);
}

/* Hover spécifique : outline-white */
.css__button--outline-blue-dark:hover,
.css__button-group:hover .css__button--outline-blue-dark {
  background-color: var(--c-blue-dark);
  color: var(--c-white);
}

/* Hover spécifique : blue-primary */
.css__button--blue-primary:hover, .menu-link.style-primary:hover,
.css__button-group:hover .css__button--blue-primary,
.css__button-group:hover .menu-link.style-primary {
  background-color: var(--c-blue-dark);
  color: var(--c-white);
}

.button__play {
  aspect-ratio: 1/1;
  width: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  background-color: var(--c-white);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100%;
}
.button__play svg {
  width: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  height: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}

@media (max-width: 47.98rem) {
  .is-force-mobile-blue {
    background-color: var(--c-white);
    border: 1px solid var(--c-blue-dark);
    color: var(--c-blue-dark);
  }
}

.css__link-icon {
  overflow: hidden;
  cursor: pointer;
  position: relative;
  transition: all 0.4s cubic-bezier(0.22, 0.61, 0.35, 1);
}
.css__link-icon .icon-hover,
.css__link-icon .icon-default {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1px 0;
  color: inherit;
}
.css__link-icon .icon-hover {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: transform 0.5s, opacity 0.5s;
  transform: translateX(-100%) scale(0.8);
  opacity: 0;
}
.css__link-icon .icon-default {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  transition: transform 0.5s, opacity 0.5s;
}

.css__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border-radius: 100px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
}
@media (max-width: 47.98rem) {
  .css__link {
    font-size: 0.875rem;
  }
}
.css__link--white {
  color: var(--c-white);
}
.css__link--white .css__link-icon {
  color: var(--c-white);
}
.css__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  width: auto;
  aspect-ratio: 1/1;
}
.css__link-icon img,
.css__link-icon svg {
  display: block;
  width: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  height: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.css__link-text {
  line-height: 2;
}
.css__link--icon {
  gap: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}
.css__link--icon .css__link-text {
  padding-left: 0;
}

/* Hover global (icônes) */
.css__link:hover .icon-hover,
.css__link-group:hover .css__link .icon-hover {
  transform: translateX(0%) scale(1);
  opacity: 1;
}
.css__link:hover .icon-default,
.css__link-group:hover .css__link .icon-default {
  transform: translateX(100%) scale(1);
  opacity: 0;
}

/* Hover spécifique : outline-white */
.css__link--outline-white:hover,
.css__link-group:hover .css__link--outline-white {
  color: var(--c-white);
}

/* Hover spécifique : outline-white */
.css__link--outline-blue-dark:hover,
.css__link-group:hover .css__link--outline-blue-dark {
  color: var(--c-white);
}

/* Hover spécifique : blue-primary */
.css__link--blue-primary:hover,
.css__link-group:hover .css__link--blue-primary {
  color: var(--c-white);
}

.input, .ginput_container_text input, .ginput_container_email input, .ginput_container_phone input, .ginput_container_select select, .ginput_container_textarea textarea, .select-filter {
  display: block;
  width: 100%;
  border: 1px solid;
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem) clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  background-color: transparent;
  color: var(--c-blue-dark-secondary);
  border: 1px solid var(--c-blue-light);
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 16px;
}
@media (max-width: 63.98rem) {
  .input, .ginput_container_text input, .ginput_container_email input, .ginput_container_phone input, .ginput_container_select select, .ginput_container_textarea textarea, .select-filter {
    padding: 0.75rem 1rem;
  }
}

.select-filter {
  padding: 0.75rem 2.5rem 0.75rem 1rem;
  border-radius: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  background-color: transparent;
  width: clamp(10.4166666667rem, 166.6666666667px + 55.5555555556 * (100vw - 1200px) / 400, 13.8888888889rem);
  color: var(--c-white);
  border: 1px solid var(--c-white);
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width=%2716%27 height=%2716%27 viewBox=%270 0 16 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M12.6667 5.33333L8 9.99999L3.33333 5.33333%27 stroke=%27white%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
}
@media (max-width: 63.98rem) {
  .select-filter {
    padding: 0.625rem 2.5rem 0.625rem 1rem;
  }
}
.select-filter--blue {
  background-color: transparent;
  color: var(--c-blue-dark-secondary);
  border: 1px solid var(--c-blue-light);
  background-image: url("data:image/svg+xml,%3Csvg width=%2716%27 height=%2716%27 viewBox=%270 0 16 16%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M12.6667 5.33333L8 9.99999L3.33333 5.33333%27 stroke=%27%23040553%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27/%3E%3C/svg%3E%0A");
}
.select-filter--blue option {
  color: var(--c-blue-dark-secondary);
}

.radio, .ginput_container_consent .gchoice, .ginput_container_radio .gchoice,
.checkbox,
.ginput_container_checkbox .gchoice {
  display: inline-flex;
  align-items: flex-start;
}
.radio-input, .ginput_container_consent input, .ginput_container_radio input,
.checkbox-input,
.ginput_container_checkbox input {
  display: flex;
  width: 1rem;
  height: 1rem;
  aspect-ratio: 1/1;
  border: 1px solid;
  margin-top: 0.25rem;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.radio-input::before, .ginput_container_consent input::before, .ginput_container_radio input::before,
.checkbox-input::before,
.ginput_container_checkbox input::before {
  display: block;
  content: "";
  color: transparent;
}
.radio-input:checked::before, .ginput_container_consent input:checked::before, .ginput_container_radio input:checked::before,
.checkbox-input:checked::before,
.ginput_container_checkbox input:checked::before {
  color: currentColor;
}
.radio-label, .ginput_container_consent label, .ginput_container_radio label,
.checkbox-label,
.ginput_container_checkbox label {
  padding-left: 0.5rem;
}

.radio-input, .ginput_container_consent input, .ginput_container_radio input {
  padding: 0.125rem;
  border-radius: 100%;
}
.radio-input::before, .ginput_container_consent input::before, .ginput_container_radio input::before {
  height: 100%;
  aspect-ratio: 1/1;
  border-radius: inherit;
  background-color: currentColor;
  scale: 0;
}
.radio-input:checked::before, .ginput_container_consent input:checked::before, .ginput_container_radio input:checked::before {
  scale: 1;
  transition: scale 0.2s ease;
}

.checkbox-input::before, .ginput_container_checkbox input::before {
  width: 0.375em;
  height: 0.625em;
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: currentColor;
  transform: rotate(45deg);
  transform-origin: 80% 50%;
}
.checkbox-input:checked::before, .ginput_container_checkbox input:checked::before {
  animation: checkmark 0.25s ease forwards;
}

.gform_wrapper a {
  color: var(--c-blue-primary);
  text-decoration: underline;
}
.gform_validation_errors {
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  padding-bottom: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.gform_submission_error {
  background-color: var(--c-red);
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem) clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  color: var(--c-white);
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  margin-bottom: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
}
.gform_fields {
  display: grid;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.gform_required_legend {
  color: var(--c-blue-dark-secondary);
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.32px;
  margin-bottom: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.gform_footer {
  display: flex;
  margin-top: 1.5rem;
  align-items: center;
  gap: 0.5rem;
}
.gform_footer [type=submit] {
  width: 100%;
}
.gform_link {
  text-decoration: underline;
}
.gform-loader {
  display: block;
  width: 1.5rem;
  aspect-ratio: 1/1;
  border: 2px solid rgba(0, 0, 0, 0.1);
  border-radius: 100%;
  border-top-color: #000;
  animation: spin 1s linear infinite;
}
@media (min-width: 64rem) {
  .gform_fields {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media (max-width: 63.98rem) {
  .gform_fields {
    grid-template-columns: 100%;
  }
}

.gfield {
  position: relative;
  border: none;
}
.gfield.gfield_visibility_hidden {
  display: none;
}
.gfield--type-honeypot {
  display: none;
}
.gfield.hidden_label {
  border: none;
}
.gfield.hidden_label .gfield_label {
  display: none;
}
.gfield_html {
  color: var(--c-blue-dark-secondary);
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.58;
}
.gfield_label {
  color: var(--c-blue-dark-secondary);
  display: block;
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.47;
  margin-bottom: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
}
.gfield--type-captcha .gfield_label {
  display: none;
}
.gfield_required {
  color: var(--c-blue-dark-secondary);
}
.gfield_validation_message {
  color: var(--c-red);
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.58;
  margin-top: clamp(0.15625rem, 2.5px + 0.8333333333 * (100vw - 1200px) / 400, 0.2083333333rem);
}
.gfield_radio, .gfield_checkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media (min-width: 64rem) {
  .gfield--width-full {
    grid-column: span 12;
  }
  .gfield--width-half {
    grid-column: span 6;
  }
  .gfield--width-third {
    grid-column: span 4;
  }
  .gfield--width-quarter {
    grid-column: span 3;
  }
}

.gfield_error .ginput_container_text input, .gfield_error .ginput_container_email input, .gfield_error .ginput_container_phone input, .gfield_error .ginput_container_select select, .gfield_error .ginput_container_textarea textarea {
  border-color: #f00;
}

.ginput_container_select {
  position: relative;
}
.ginput_container_select select {
  padding-right: 1.625rem;
}
.ginput_container_select::after {
  display: block;
  aspect-ratio: 1/1;
  width: 0.625rem;
  position: absolute;
  top: calc(50% - 0.5rem);
  right: 0.5rem;
  border-width: 0px 1px 1px 0;
  border-style: solid;
  content: "";
  pointer-events: none;
  transform: rotate(45deg);
}
.ginput_container_textarea textarea {
  height: calc(9em + 2px);
  min-height: calc(1.5em + 2px);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  resize: vertical;
}
.ginput_container_consent {
  display: flex;
  gap: 0.5rem;
  align-items: baseline;
}
.ginput_container_consent input {
  flex: none;
}
.ginput_container_consent label {
  padding: 0;
}
@keyframes checkmark {
  0% {
    clip-path: polygon(0 calc(100% - 2px), 0 calc(100% - 2px), 0 calc(100% - 2px), 0 100%, 0 100%, 0 100%);
  }
  30% {
    clip-path: polygon(0 calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), 100% 100%, 100% 100%, 0 100%);
  }
  100% {
    clip-path: polygon(0 calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes spin {
  to {
    rotate: 360deg;
  }
}
.form__css .input, .form__css .select-filter, .form__css .ginput_container_text input, .ginput_container_text .form__css input, .form__css .ginput_container_email input, .ginput_container_email .form__css input, .form__css .ginput_container_phone input, .ginput_container_phone .form__css input, .form__css .ginput_container_select select, .ginput_container_select .form__css select, .form__css .ginput_container_textarea textarea, .ginput_container_textarea .form__css textarea {
  display: block;
  width: 100%;
  border: 1px solid;
  border-radius: 0.5rem;
  padding: 0;
  background-color: transparent;
  color: var(--c-blue-dark-secondary);
  border: 0px;
  background: var(--c-white);
  padding: 1.875rem 1rem 0.5rem 1rem;
  box-shadow: 0 7px 29px 0 rgba(100, 100, 111, 0.09);
}
.form__css .gfield.gfield--type-email, .form__css .gfield.gfield--type-text {
  position: relative;
  border: none;
  border-radius: 8px;
}
.form__css .gfield.gfield--type-email .gfield_label, .form__css .gfield.gfield--type-text .gfield_label {
  color: var(--c-blue-dark-very);
  display: block;
  font-size: clamp(0.5729166667rem, 9.1666666667px + 3.0555555556 * (100vw - 1200px) / 400, 0.7638888889rem);
  left: 1rem;
  top: 0.5rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.57;
  position: absolute;
}
.form__css .gform_footer [type=submit] {
  width: auto;
}

.modal {
  display: flex;
  position: fixed;
  inset: 0;
  z-index: 1000;
  background-color: rgba(0, 0, 0, 0.9);
  padding: var(--side-margin);
  overflow: auto;
  transition: background-color 0.5s ease;
}
.modal-inner {
  padding: var(--side-margin);
  margin: auto;
  background-color: #FFF;
  color: #000;
  transition: opacity 0.5s ease, transform 0.5s ease;
}
[role=dialog] > .modal-inner {
  width: 100%;
  max-width: 54rem;
}

[role=alertdialog] > .modal-inner {
  width: fit-content;
}

.modal[inert] {
  background-color: rgba(0, 0, 0, 0);
}
.modal[inert] .modal-inner {
  opacity: 0;
  transform: translateY(var(--side-margin));
}

.link__social {
  display: inline-flex;
  flex-direction: row;
  position: relative;
  align-items: center;
  gap: 0.5rem;
  position: relative;
  cursor: pointer;
}
.link__social--dark .link__social-icon {
  background-color: var(--c-blue-dark-secondary);
  color: var(--c-white);
}
.link__social--dark .link__social-icon [fill^="#"] {
  fill: var(--c-white);
}
.link__social--dark .link__social-icon [stroke^="#"] {
  stroke: var(--c-white);
}
.link__social--dark .link__social-text {
  color: var(--c-blue-dark-secondary);
}
.link__social-text {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.47;
}
.link__social-icon {
  border-radius: 100%;
  width: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  padding: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
}
.link__social-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.list__social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.3rem;
}

.pagination {
  margin-top: 5rem;
  width: 100%;
  text-align: center;
  justify-content: center;
  display: flex;
  align-items: center;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .pagination {
    gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  }
}
@media (min-width: 48rem) {
  .pagination {
    margin-top: 7rem;
  }
}
.pagination-list {
  display: flex;
  align-items: center;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 47.98rem) {
  .pagination-list {
    gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  }
}
.pagination-arrow {
  aspect-ratio: 1/1;
  height: auto;
  width: 3rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--c-blue-dark);
  border-radius: 40rem;
  border: 1px solid var(--c-blue-light);
  transition: all 0.3s ease;
}
.pagination-arrow svg {
  width: 1.5rem;
  height: 1.5rem;
}
.pagination-arrow:disabled {
  opacity: 0.5;
  cursor: default;
  pointer-events: none;
}
.pagination-arrow:hover {
  color: var(--c-blue);
  border: 1px solid var(--c-blue-light);
  background-color: var(--c-blue-dark);
  color: var(--c-white);
}
.pagination-link {
  position: relative;
  color: var(--c-blue-dark);
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  padding: 0.7rem 1.2rem;
  display: block;
  font-weight: 500;
  aspect-ratio: 1/1;
  height: auto;
  border-radius: 40rem;
  transition: 0.2s ease;
  height: 3rem;
  border: 1px solid var(--c-white);
}
@media (max-width: 47.98rem) {
  .pagination-link {
    font-size: 1.0625rem;
  }
}
.pagination-link:hover {
  color: var(--c-blue-dark);
  background-color: var(--c-white);
  border: 1px solid var(--c-blue-light);
}
.pagination-link[aria-current=true] {
  color: var(--c-white);
  background-color: var(--c-blue-dark);
}
.pagination.--light .pagination-arrow {
  color: var(--c-white);
}
.pagination.--light .pagination-arrow:hover {
  background-color: var(--c-white);
  color: var(--c-blue-dark);
  border: 1px solid var(--c-blue-light);
}
.pagination.--light .pagination-link {
  color: var(--c-white);
}
.pagination.--light .pagination-link:hover {
  background-color: var(--c-white);
  color: var(--c-blue-dark);
  border: 1px solid var(--c-blue-light);
}
.pagination.--light .pagination-link[aria-current=true] {
  background-color: var(--c-white);
  color: var(--c-blue-dark);
}

.block-alert {
  background-color: var(--c-blue-primary);
  color: var(--c-white);
  border: 1px solid var(--c-white);
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-top: 1rem;
  border-radius: var(--radius-card);
}
.block-alert__container {
  color: var(--c-white);
  text-align: center;
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.block-alert__container__strong {
  font-weight: bold;
}
.block-alert__container__paragraph {
  margin: 0;
}

.title, .title__h6, .cms h6, .title__h5, .cms h5, .title__h4, .hero__contact-details-title-text, .cont-col-subtitle, .footer-title, .card-news__title, .card-case__title, .card-file-title, .card-offer-details-price-value, .cms h4, .title__h3, .way-list-item-title, .om-groupe-title, .os-content-item-title, .cit-content-citation, .card-offer-title, .cms h3, .title__h2, .single-case_study .related_posts-title,
.single-post .related_posts-title, .hero__contact-title, .files-title, .tmc-title, .tc-title, .way-content-title, .omis-title, .ombf-title, .omslider-title, .omv-title, .offers-title, .om-content-title, .os-title, .oa-title, .newsletter-title, .luc8-title, .luc-title, .ln6-title, .ln8-title, .ln-title, .com-title, .cont-header-title, .cta8-title, .cta-title, .cms h2, .title__h1, .hero__single-title, .hero__about-title, .hero__filter-title, .hero__default-title, .cms h1, .title__h0, .hero__home-title {
  font-family: "Poppins";
}
.title__h0, .hero__home-title {
  /* Title/64 */
  font-size: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -3.84px;
}
.title__h1, .hero__single-title, .hero__about-title, .hero__filter-title, .hero__default-title, .cms h1 {
  /* Title/64 */
  font-size: clamp(2.9166666667rem, 46.6666666667px + 15.5555555556 * (100vw - 1200px) / 400, 3.8888888889rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -3.84px;
}
@media (max-width: 47.98rem) {
  .title__h1, .hero__single-title, .hero__about-title, .hero__filter-title, .hero__default-title, .cms h1 {
    font-size: 3rem;
  }
}
.title__h2, .single-case_study .related_posts-title,
.single-post .related_posts-title, .hero__contact-title, .files-title, .tmc-title, .tc-title, .way-content-title, .omis-title, .ombf-title, .omslider-title, .omv-title, .offers-title, .om-content-title, .os-title, .oa-title, .newsletter-title, .luc8-title, .luc-title, .ln6-title, .ln8-title, .ln-title, .com-title, .cont-header-title, .cta8-title, .cta-title, .cms h2 {
  /* Title/48 */
  font-size: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.2; /* 116.667% */
  letter-spacing: -2.88px;
}
@media (max-width: 47.98rem) {
  .title__h2, .single-case_study .related_posts-title,
  .single-post .related_posts-title, .hero__contact-title, .files-title, .tmc-title, .tc-title, .way-content-title, .omis-title, .ombf-title, .omslider-title, .omv-title, .offers-title, .om-content-title, .os-title, .oa-title, .newsletter-title, .luc8-title, .luc-title, .ln6-title, .ln8-title, .ln-title, .com-title, .cont-header-title, .cta8-title, .cta-title, .cms h2 {
    font-size: 2.375rem;
  }
}
.title__h3, .way-list-item-title, .om-groupe-title, .os-content-item-title, .cit-content-citation, .card-offer-title, .cms h3 {
  /* Title/26 */
  font-size: clamp(1.3541666667rem, 21.6666666667px + 7.2222222222 * (100vw - 1200px) / 400, 1.8055555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.3; /* 130.769% */
  letter-spacing: -0.52px;
}
@media (max-width: 47.98rem) {
  .title__h3, .way-list-item-title, .om-groupe-title, .os-content-item-title, .cit-content-citation, .card-offer-title, .cms h3 {
    font-size: 1.5rem;
  }
}
.title__h4, .hero__contact-details-title-text, .cont-col-subtitle, .footer-title, .card-news__title, .card-case__title, .card-file-title, .card-offer-details-price-value, .cms h4 {
  /* Title/22 */
  font-size: clamp(1.1458333333rem, 18.3333333333px + 6.1111111111 * (100vw - 1200px) / 400, 1.5277777778rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.36; /* 136.364% */
  letter-spacing: -0.88px;
}
@media (max-width: 47.98rem) {
  .title__h4, .hero__contact-details-title-text, .cont-col-subtitle, .footer-title, .card-news__title, .card-case__title, .card-file-title, .card-offer-details-price-value, .cms h4 {
    font-size: 1.375rem;
  }
}
.title__h5, .cms h5 {
  /* Title/22 */
  font-size: clamp(1.0416666667rem, 16.6666666667px + 5.5555555556 * (100vw - 1200px) / 400, 1.3888888889rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.36; /* 136.364% */
  letter-spacing: -0.88px;
}
@media (max-width: 47.98rem) {
  .title__h5, .cms h5 {
    font-size: 1.25rem;
  }
}
.title__h6, .cms h6 {
  /* Title/22 */
  font-size: clamp(0.9375rem, 15px + 5 * (100vw - 1200px) / 400, 1.25rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.36; /* 136.364% */
  letter-spacing: -0.88px;
}
@media (max-width: 47.98rem) {
  .title__h6, .cms h6 {
    font-size: 1.125rem;
  }
}

.image-container {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.image-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.label-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  padding: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
  border-radius: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
}
.label-icon svg {
  width: 100%;
  height: 100%;
}
.label-icon--rounded {
  border-radius: 50%;
}
.label-icon--small {
  width: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  height: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}
.label-icon--white-20 {
  background-color: var(--c-white-20);
}
.label-icon--white-20 [fill^="#"] {
  fill: var(--c-white);
}
.label-icon--white-20 [stroke^="#"] {
  stroke: var(--c-white);
}
.label-icon--white {
  background-color: var(--c-white);
}
.label-icon--white [fill^="#"] {
  fill: var(--c-blue-primary);
}
.label-icon--white [stroke^="#"] {
  stroke: var(--c-blue-primary);
}
.label-icon--blue-light {
  background-color: var(--c-blue-light-secondary);
}
.label-icon--blue-light [fill^="#"] {
  fill: var(--c-blue-primary);
}
.label-icon--blue-light [stroke^="#"] {
  stroke: var(--c-blue-primary);
}
.label-icon--grey-light {
  background-color: var(--c-very-light-grey);
}
.label-icon--grey-light [fill^="#"] {
  fill: var(--c-blue-primary);
}
.label-icon--grey-light [stroke^="#"] {
  stroke: var(--c-blue-primary);
}

.label-date {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-weight: 500;
  color: var(--c-white);
  background-color: var(--c-blue-50);
  backdrop-filter: blur(clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem));
}

.label-pin {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(0.2604166667rem, 4.1666666667px + 1.3888888889 * (100vw - 1200px) / 400, 0.3472222222rem) 0;
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-weight: 500;
  color: var(--c-blue-third);
}
@media (max-width: 47.98rem) {
  .label-pin {
    font-size: 0.8125rem;
  }
}

.label-tags {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(0.2604166667rem, 4.1666666667px + 1.3888888889 * (100vw - 1200px) / 400, 0.3472222222rem) clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-weight: 500;
}
@media (max-width: 47.98rem) {
  .label-tags {
    font-size: 0.75rem;
  }
}
.label-tags:before {
  content: "";
  display: block;
  width: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  height: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  background-color: var(--c-blue-dark-secondary);
  border-radius: 100%;
}
.label-tags--blue {
  color: var(--c-white);
  background-color: var(--c-blue-third);
}
.label-tags--blue:before {
  background-color: var(--c-blue-light);
}

.list-tags {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
}

.label-pays {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  width: clamp(0.7291666667rem, 11.6666666667px + 3.8888888889 * (100vw - 1200px) / 400, 0.9722222222rem);
  height: clamp(0.7291666667rem, 11.6666666667px + 3.8888888889 * (100vw - 1200px) / 400, 0.9722222222rem);
  border-radius: 50%;
  overflow: hidden;
}
.label-pays img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.label-service {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(3.125rem, 50px + 16.6666666667 * (100vw - 1200px) / 400, 4.1666666667rem);
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem) clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-weight: 400;
  background-color: var(--c-white-10);
}
.label-service-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  height: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-white-10);
  border-radius: 100%;
}
.label-service-icon svg {
  width: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
  height: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}

.marquee {
  --gap-marquee: 1rem;
}
.marquee-wrapper {
  display: flex;
  align-items: center;
  gap: var(--gap-marquee);
}
.marquee-content {
  display: flex;
  align-items: center;
  gap: var(--gap-marquee);
}

.card-accordeon {
  display: flex;
  flex-direction: column;
  background-color: var(--c-white);
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  border-radius: 1rem;
}
@media (max-width: 47.98rem) {
  .card-accordeon {
    padding: 1rem;
  }
}
.card-accordeon summary {
  list-style: none;
  cursor: pointer;
}
.card-accordeon summary::-webkit-details-marker {
  display: none;
}
.card-accordeon-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}
.card-accordeon-header-inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.card-accordeon-arrow {
  margin-left: auto;
  border: 1px solid var(--c-blue-light);
  border-radius: 50%;
  width: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
  flex: none;
}
.card-accordeon-arrow svg {
  transform: rotate(180deg);
  width: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  height: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  transition: transform 0.3s ease;
}
[open] .card-accordeon-arrow svg {
  transform: rotate(0);
}
.card-accordeon-title-container {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.card-accordeon-title {
  color: var(--c-blue-dark-secondary);
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.52px;
}
.card-accordeon-subtitle {
  color: var(--c-blue-dark-secondary);
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
}
.card-accordeon-icon {
  width: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  height: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
.card-accordeon-content {
  margin-top: 2rem;
  opacity: 0.6;
  width: 90%;
}
.card-accordeon--small {
  padding-inline: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  padding-top: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  padding-bottom: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
}
.card-accordeon--small .card-accordeon-title {
  font-size: clamp(1.1458333333rem, 18.3333333333px + 6.1111111111 * (100vw - 1200px) / 400, 1.5277777778rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.36;
  letter-spacing: -0.88px;
}

.cardprofil {
  display: flex;
  flex-direction: row;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  width: fit-content;
  align-items: center;
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  transition: all 0.2s ease;
}
.cardprofil-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  width: clamp(5.3125rem, 85px + 28.3333333333 * (100vw - 1200px) / 400, 7.0833333333rem);
  height: clamp(5.3125rem, 85px + 28.3333333333 * (100vw - 1200px) / 400, 7.0833333333rem);
  border-radius: 100%;
  overflow: hidden;
}
.cardprofil-content {
  min-width: clamp(6.25rem, 100px + 33.3333333333 * (100vw - 1200px) / 400, 8.3333333333rem);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: var(--c-white);
}
.cardprofil-title {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.5;
}
.cardprofil-function {
  margin-bottom: clamp(0.2604166667rem, 4.1666666667px + 1.3888888889 * (100vw - 1200px) / 400, 0.3472222222rem);
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
}
.cardprofil-link {
  font-style: italic;
  text-decoration: underline;
  font-weight: 400;
  line-height: 24px; /* 150% */
  letter-spacing: -0.32px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  transition: all 0.3s ease;
}
.cardprofil:not([href="^#"]):hover {
  background-color: var(--c-white-10);
}
.cardprofil[href="#"] {
  pointer-events: none;
}

.card-simple {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--c-white);
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  gap: 1rem;
  border-radius: 2rem;
  transition: all 0.3s ease;
}
.card-simple-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  height: 100%;
}
.card-simple-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.card-simple-footer {
  width: 100%;
  display: flex;
}
.card-simple-title {
  font-size: clamp(1.1458333333rem, 18.3333333333px + 6.1111111111 * (100vw - 1200px) / 400, 1.5277777778rem);
  font-weight: 500;
  transition: all 0.3s ease;
}
.card-simple-text {
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  transition: all 0.3s ease;
}

.card-approach {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--c-white);
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  border-radius: 2rem;
}
.card-approach-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.card-approach-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.1041666667rem, 1.6666666667px + 0.5555555556 * (100vw - 1200px) / 400, 0.1388888889rem);
}
.card-approach-title {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  margin-bottom: clamp(0.2083333333rem, 3.3333333333px + 1.1111111111 * (100vw - 1200px) / 400, 0.2777777778rem);
  font-weight: 500;
}
@media (max-width: 47.98rem) {
  .card-approach-title {
    font-size: 1.0625rem;
  }
}
.card-approach-text {
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
}
@media (max-width: 47.98rem) {
  .card-approach-text {
    font-size: 0.9375rem;
  }
}
.card-approach-button {
  margin-top: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.card-approach[href^="#"] {
  pointer-events: none;
}

.card-comment {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--c-white);
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  gap: 1rem;
  border-radius: 2rem;
  transition: all 0.3s ease;
}
.card-comment-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  height: 100%;
}
.card-comment-footer {
  width: 100%;
  display: flex;
}
.card-comment-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.card-comment-title {
  font-size: clamp(1.1458333333rem, 18.3333333333px + 6.1111111111 * (100vw - 1200px) / 400, 1.5277777778rem);
  font-weight: 500;
  transition: all 0.3s ease;
}
@media (max-width: 47.98rem) {
  .card-comment-title {
    font-size: 1.375rem;
  }
}
.card-comment-text {
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  transition: all 0.3s ease;
}
@media (max-width: 47.98rem) {
  .card-comment-text {
    font-size: 1rem;
  }
}
.card-comment-text strong {
  font-weight: 500;
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
}
@media (max-width: 47.98rem) {
  .card-comment-text strong {
    font-size: 1.0625rem;
  }
}
.card-comment[href^="#"] {
  pointer-events: none;
}
.card-comment:hover {
  background-color: var(--c-blue-dark);
}
.card-comment:hover .card-comment-text,
.card-comment:hover .card-comment-title {
  color: var(--c-white);
}

.card-offer {
  display: flex;
  flex-direction: column;
  background-color: var(--c-white);
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  border-radius: 2rem;
  transition: all 0.3s ease;
}
.card-offer-header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  border-radius: 1.25rem;
  background-color: var(--c-blue-light-secondary);
  min-height: 16.875rem;
  color: var(--c-blue-dark-secondary);
}
@media (max-width: 47.98rem) {
  .card-offer-header {
    min-height: auto;
    padding: 1rem;
    gap: 2rem;
  }
}
.card-offer-name {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  padding-right: clamp(1.0416666667rem, 16.6666666667px + 5.5555555556 * (100vw - 1200px) / 400, 1.3888888889rem);
}
.card-offer-title {
  font-weight: 500;
  transition: all 0.3s ease;
}
.card-offer-description {
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  transition: all 0.3s ease;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.32px;
}
@media (max-width: 47.98rem) {
  .card-offer-description {
    font-size: 1rem;
  }
}
.card-offer-details {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: end;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  width: 100%;
}
.card-offer-details-price {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.card-offer-details-price-from {
  font-size: clamp(0.6770833333rem, 10.8333333333px + 3.6111111111 * (100vw - 1200px) / 400, 0.9027777778rem);
  line-height: 1.5;
}
@media (max-width: 47.98rem) {
  .card-offer-details-price-from {
    font-size: 0.875rem;
  }
}
.card-offer-details-button {
  display: flex;
  flex: none;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
}
.card-offer-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding-inline: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  padding-top: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-bottom: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
@media (max-width: 47.98rem) {
  .card-offer-content {
    padding-inline: 1rem;
  }
}
.card-offer-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.15px;
}
@media (max-width: 47.98rem) {
  .card-offer-item {
    font-size: 0.9375rem;
  }
}
.card-offer[href^="#"] {
  pointer-events: none;
}

.card-file {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding-inline: 2rem;
}
.card-file-inner {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  aspect-ratio: 1/1.5;
  background-color: var(--c-white);
  border-radius: 0.5rem;
  padding: 1rem;
  transition: 0.3s ease-in-out;
}
.card-file-inner:hover {
  background-color: var(--c-white);
}
.card-file-title {
  text-align: center;
  color: var(--c-blue-dark-secondary);
}

.card-member {
  width: clamp(9.1666666667rem, 146.6666666667px + 48.8888888889 * (100vw - 1200px) / 400, 12.2222222222rem);
  aspect-ratio: 2/1;
  height: auto;
  display: flex;
  border-radius: 0.5rem;
  backdrop-filter: blur(var(--blur-default));
  background-color: var(--c-white-80);
}
.card-member__link {
  display: block;
  overflow: hidden;
  transition-duration: 500ms;
  width: 100%;
  height: 100%;
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  transition: 0.3s ease-in-out;
}
.card-member__link:not([href="^#"]):hover {
  background-color: var(--c-white);
}
.card-member__link[href="#"] {
  pointer-events: none;
}
.card-member__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.card-member img {
  max-width: 100%;
}

.card-member__filter {
  overflow: hidden;
  border-radius: 1rem;
  background-color: var(--c-very-light-grey);
  padding: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem) clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  -webkit-backdrop-filter: blur(var(--blur-default));
  backdrop-filter: blur(var(--blur-default));
  display: grid;
  grid-template-columns: 1.18fr 1fr 1.39fr;
  gap: 2rem;
}
@media (max-width: 47.98rem) {
  .card-member__filter {
    grid-template-columns: repeat(1, 1fr);
    padding: 1rem 1rem;
    gap: 0.375rem;
  }
}
.card-member__filter-header {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 1rem;
  overflow: hidden;
  transition-duration: 500ms;
  border-radius: 0.5rem;
  transition: 0.3s ease-in-out;
}
@media (max-width: 47.98rem) {
  .card-member__filter-header {
    align-items: center;
    gap: 1.5rem;
  }
}
.card-member__filter-logo {
  display: flex;
  align-self: center;
  align-items: center;
  justify-content: center;
  aspect-ratio: 2/1;
  height: auto;
  width: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  background-color: var(--c-white);
  flex: none;
}
.card-member__filter-logo img {
  max-width: 100%;
}
.card-member__filter-title {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
@media (max-width: 47.98rem) {
  .card-member__filter-title {
    width: 100%;
  }
}
.card-member__filter-title-name {
  font-size: 1.0625rem;
  font-weight: 500;
  line-height: 1.47;
  color: var(--c-blue-dark-secondary);
}
.card-member__filter-title-type {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c-blue-dark-secondary);
}
.card-member__filter-localisation {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (max-width: 47.98rem) {
  .card-member__filter-localisation {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    border-top: 1px solid var(--c-blue-light);
    border-bottom: 1px solid var(--c-blue-light);
  }
}
.card-member__filter-sectors {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.card-member__filter-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.liste-term__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.liste-term__list-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.liste-term__list-item-name {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--c-blue-dark-secondary);
}
.liste-term__list-item-children {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-left: 0.75rem;
}
.liste-term__list-item-children-item {
  font-size: 0.6875rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c-blue-dark-secondary);
  opacity: 0.8;
}

.term-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1rem;
}

.term-name {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.25rem;
}
@media (max-width: 47.98rem) {
  .term-name {
    margin-bottom: 0px;
  }
}
.term-name-label {
  color: var(--c-blue-dark-secondary);
  font-size: 1.0625rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.5;
}

.term-sub-name {
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c-blue-dark-secondary);
}

.card-case {
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  overflow: hidden;
  height: 100%;
}
.card-case__link {
  position: relative;
  display: flex;
  flex-direction: column;
  transition: all 0.4s ease;
  height: 100%;
}
.card-case__link:hover .card-case__image img {
  transform: scale(1.05);
}
.card-case__tags {
  position: absolute;
  display: flex;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  top: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  left: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  z-index: 1;
}
.card-case__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: all 0.3s ease;
  justify-content: space-between;
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-blue-dark-very);
  flex: auto;
}
.card-case__title {
  color: var(--c-white);
  font-weight: 500;
}
.card-case__description {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--c-dark-80);
}
.card-case__image {
  width: 100%;
  aspect-ratio: 16/9;
  position: relative;
  overflow: hidden;
  background-color: var(--c-white);
}
.card-case__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.6s ease;
}
.card-case--blue .tags-item {
  color: var(--c-dark);
  background-color: var(--c-dark-10);
}
.card-case--blue .tags-date {
  color: var(--c-dark);
}
.card-case--blue .card-ressource__title {
  color: var(--c-dark);
}
.card-case--blue .card-ressource__description {
  color: var(--c-dark);
}
.card-case--blue::before {
  background-color: var(--c-blue);
}

.card-news {
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  overflow: hidden;
  height: 100%;
}
.card-news__link {
  position: relative;
  display: flex;
  flex-direction: column;
  transition: all 0.4s ease;
  height: 100%;
}
.card-news__link:hover .card-news__image img {
  transform: scale(1.05);
}
.card-news__label-date {
  position: absolute;
  z-index: 1;
  top: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  left: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.card-news__tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  z-index: 1;
}
.card-news__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: all 0.3s ease;
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  gap: clamp(1.09375rem, 17.5px + 5.8333333333 * (100vw - 1200px) / 400, 1.4583333333rem);
  background-color: var(--c-white);
  flex: auto;
}
@media (max-width: 63.98rem) {
  .card-news__content {
    padding: 1.5rem 1rem;
    gap: 1.3125rem;
  }
}
.card-news__title {
  color: var(--c-blue-dark-secondary);
  font-weight: 500;
}
.card-news__description {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--c-dark-80);
}
.card-news__image {
  background-color: var(--c-blue-light-secondary);
  width: 100%;
  aspect-ratio: 16/9;
  position: relative;
  overflow: hidden;
}
.card-news__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.6s ease;
}

.scroll__to {
  position: fixed;
  z-index: 100;
  bottom: 1.5rem;
  right: 1.5rem;
  transform: translateX(-50%);
  width: 3rem;
  padding: 0.125rem;
  aspect-ratio: 1/1;
  transition: all 0.4s ease;
  pointer-events: none;
  transform-origin: center;
  pointer-events: none;
  transform: translateY(200%);
}
.scroll__to.is-visible {
  pointer-events: all;
  transform: translateY(0%);
}
.scroll__to-icon {
  background-color: var(--c-blue-primary);
  border-radius: 50%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.scroll__to-icon:hover {
  background-color: var(--c-blue-second);
}
.scroll__to-icon svg {
  transform: rotate(-90deg);
  width: 1rem;
  height: 1rem;
}
.scroll__to-progress {
  position: absolute;
  inset: 0;
  z-index: 2;
}
.scroll__to-progress svg {
  width: 100%;
  height: 100%;
}
.scroll__to.has-progress .scroll__to-progress {
  opacity: 1;
}

.block-video {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 16/9;
}
.block-video .button__play {
  position: absolute;
  inset: 0;
  margin: auto;
  z-index: 3;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}
.block-video iframe {
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.block-video img {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}
.block-video:hover {
  cursor: pointer;
}
.block-video:hover img {
  transform: scale(1.05);
}
.block-video.is-playing .button__play,
.block-video.is-playing img {
  opacity: 0;
}

.controls-slider__prev, .controls-slider__next {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  display: flex;
  width: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  height: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  border: 1px solid var(--c-blue-dark-secondary);
  transition: all 0.3s ease;
}
.controls-slider__prev.swiper-button-disabled, .controls-slider__next.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.3;
}
.controls-slider__prev svg, .controls-slider__next svg {
  width: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  height: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.controls-slider__prev--white, .controls-slider__next--white {
  color: var(--c-white);
  border-color: var(--c-white);
}
.controls-slider__prev--white:hover, .controls-slider__next--white:hover {
  background-color: var(--c-white);
}
.controls-slider__prev--white:hover svg, .controls-slider__next--white:hover svg {
  color: var(--c-blue-dark-secondary);
}
.controls-slider__prev--light, .controls-slider__next--light {
  border-color: var(--c-blue-light);
}
.controls-slider__prev--light:hover, .controls-slider__next--light:hover {
  background-color: var(--c-blue-light);
}
.controls-slider__prev svg {
  transform: rotate(-90deg);
}
.controls-slider__next svg {
  transform: rotate(90deg);
}

.tabs__header {
  display: flex;
  border-radius: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  background-color: var(--c-blue-light-secondary);
  padding: 0.5rem;
  gap: 0.5rem;
  width: 100%;
}
.tabs__header-item {
  position: relative;
  flex: 1;
  border-radius: clamp(2.34375rem, 37.5px + 12.5 * (100vw - 1200px) / 400, 3.125rem);
  background-color: var(--c-white);
  padding: 1rem 0.75rem;
  text-align: center;
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  font-style: normal;
  font-weight: 400;
  flex: 1 0 0;
}
.tabs__header-item.js-nav-item {
  display: block;
  padding: 1rem 1.5rem;
  text-decoration: none;
  color: var(--c-blue-dark-secondary);
  background-color: transparent;
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  font-weight: 500;
  cursor: pointer;
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
}
.tabs__header-item.js-nav-item:hover {
  color: var(--color-text);
  background-color: var(--color-background-hover);
}
.tabs__header-item.js-nav-item.is-active {
  background-color: var(--c-blue-primary);
  color: var(--c-white);
}
.tabs__content-item.js-content-item {
  display: none;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
}
.tabs__content-item.js-content-item.is-active {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
@media (max-width: 768px) {
  .tabs__header {
    flex-direction: column;
    border-bottom: none;
    margin-bottom: 1rem;
  }
  .tabs__header-item {
    border-bottom: 1px solid var(--color-border);
  }
  .tabs__header-item a {
    padding: 0.75rem 1rem;
  }
  .tabs__header-item.is-active {
    border-bottom-color: var(--color-primary);
  }
}

.header {
  width: 100%;
  position: fixed;
  z-index: 999;
  opacity: 1;
  top: 0;
  pointer-events: auto;
}
@media (max-width: 47.98rem) {
  .header {
    padding: 0.5rem;
  }
}
@media (min-width: 64rem) {
  .header {
    top: 2rem;
    pointer-events: none;
    transition: top 0.2s ease 0.2s;
  }
  .header.is-scrolled {
    top: 0;
  }
}
.header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
@media (max-width: 47.98rem) {
  .header-wrapper {
    max-width: 100%;
    width: 100%;
  }
}
.header-lang {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  background-color: var(--c-black-25);
  backdrop-filter: blur(var(--blur-default));
}
@media (min-width: 64rem) {
  .header-lang {
    pointer-events: auto;
  }
}
@media (max-width: 47.98rem) {
  .header-lang {
    display: none;
  }
}
.header-logo {
  width: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  display: flex;
  align-items: center;
}
@media (max-width: 63.98rem) {
  .header-logo {
    width: 4rem;
  }
}
@media (min-width: 64rem) {
  .header-logo {
    pointer-events: auto;
  }
}
.header-logo-link {
  width: clamp(4.4270833333rem, 70.8333333333px + 23.6111111111 * (100vw - 1200px) / 400, 5.9027777778rem);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.header-logo svg {
  width: 100%;
  height: 100%;
}
.header-menu {
  display: flex;
  align-items: center;
  width: max-content;
}
.header-menu-logo {
  width: 3.125rem;
  height: 3.125rem;
  display: block;
}
.header-menu-logo svg {
  width: 100%;
  height: 100%;
}
@media (min-width: 64rem) {
  .header-menu {
    pointer-events: auto;
  }
}
@media (min-width: 64rem) {
  .header-menu .js-logo-menu,
  .header-menu .js-lang-menu {
    opacity: 0;
    visibility: hidden;
    width: 0;
  }
}
@media (max-width: 63.98rem) {
  .header-menu .js-lang-menu {
    margin-top: 2rem;
    width: max-content;
  }
}
@media (max-width: 63.98rem) {
  .header-menu .js-logo-menu {
    display: none;
  }
}

.menu {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 2;
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  border-radius: 50rem;
}
.menu-hover {
  position: absolute;
  inset: -1px;
  border-radius: 50rem;
  z-index: -1;
  background-color: var(--c-black-25);
  backdrop-filter: blur(var(--blur-default));
  transition: all 0.2s ease;
}
@media (max-width: 47.98rem) {
  .menu-hover {
    inset: 4px 2px;
  }
}
.menu-hover::before {
  content: "";
  position: absolute;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: radial-gradient(circle at center, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.4) 50%, transparent 100%);
  left: calc(var(--mouse-x, 50%) - 20px);
  top: calc(var(--mouse-y, 50%) - 20px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 2;
  filter: blur(2px);
}
.menu.is-hovered::before {
  opacity: 1;
}
@media (max-width: 63.98rem) {
  .menu.is-hovered .menu-hover {
    opacity: 0;
  }
}
.menu-wrapper {
  display: flex;
  align-items: center;
}
.menu-list {
  display: flex;
  align-items: center;
}
.menu-item {
  display: flex;
  position: relative;
}
@media (max-width: 47.98rem) {
  .menu-item {
    flex-direction: column;
  }
  .menu-item .css__button, .menu-item .menu-link.style-primary {
    align-self: flex-start;
  }
}
.menu-link {
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center;
  color: var(--c-white);
  position: relative;
  overflow: hidden;
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  line-height: 2;
  font-weight: 400;
  letter-spacing: clamp(-0.0166666667rem, -0.2666666667px + -0.0888888889 * (100vw - 1200px) / 400, -0.0222222222rem);
  padding: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem) clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  transition: all 0.3s;
}
@media (max-width: 47.98rem) {
  .menu-link {
    font-size: 1rem;
    padding: 0px;
  }
}
.menu-link:hover {
  color: var(--c-blue-light);
}
@media (min-width: 48rem) {
  .menu-link:is([aria-current=true]) {
    color: var(--c-light-grey);
  }
  .menu-link:is([aria-current=true]):before {
    transform: translateX(0%);
  }
}
@media (min-width: 48rem) {
  .menu-link:is([aria-expanded=true]) {
    background-color: var(--c-white);
    color: var(--c-blue-dark);
  }
  .menu-link:is([aria-expanded=true]):before {
    transform: translateX(0%);
  }
}
.menu-search {
  display: flex;
  border: 1px solid;
  align-items: center;
}
.menu-search-input {
  padding-inline: 0.25rem;
}
.menu-search-button {
  display: grid;
  width: 1.5rem;
  aspect-ratio: 1;
  place-items: center;
}
@media (min-width: 64rem) {
  .menu {
    position: relative;
  }
  .menu-toggle {
    display: none;
  }
  .menu-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .menu-list {
    align-items: center;
  }
  [aria-expanded=true] > .menu-arrow {
    rotate: 180deg;
  }
}
@media (max-width: 63.98rem) {
  .menu {
    padding: 0px;
  }
  .menu-toggle {
    display: flex;
    width: 3.5rem;
    aspect-ratio: 1/1;
    justify-content: center;
    align-items: center;
    font-size: 1.25rem;
    color: var(--c-white);
    background-color: var(--c-black-25);
    backdrop-filter: blur(var(--blur-default));
    border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  }
  .menu-toggle-icon {
    width: 1em;
    position: relative;
    margin-block: 0.3em;
    transform-origin: 0.5em 50%;
    transition: background-color 0.3s ease, transform 0.3s ease;
  }
  .menu-toggle-icon, .menu-toggle-icon::before, .menu-toggle-icon::after {
    display: block;
    height: 2px;
    border-radius: 2px;
    background-color: currentColor;
  }
  .menu-toggle-icon::before, .menu-toggle-icon::after {
    width: 1em;
    position: absolute;
    left: 0;
    content: "";
    transition: transform 0.3s ease;
  }
  .menu-toggle-icon::before {
    top: -0.3em;
  }
  .menu-toggle-icon::after {
    bottom: -0.3em;
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon {
    background-color: transparent;
    transform: rotate(180deg);
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon::before {
    transform: translateY(0.3em) rotate(-45deg);
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon::after {
    transform: translateY(-0.3em) rotate(45deg);
  }
  .menu-wrapper {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    padding-left: var(--side-margin);
    padding-right: var(--side-margin);
    padding-top: calc(var(--header-h) * 1.5);
    padding-bottom: 2.5rem;
    flex-direction: column;
    align-items: start;
    background-color: var(--c-black-25);
    backdrop-filter: blur(var(--blur-default));
    -webkit-backdrop-filter: blur(var(--blur-default));
    transition: opacity 0.5s ease;
  }
  .menu-wrapper[inert] {
    opacity: 0;
  }
  .menu-list {
    width: 100%;
    padding-left: 1rem;
    flex-direction: column;
    overflow: auto;
  }
}
@media (max-width: 63.98rem) and (max-width: 47.98rem) {
  .menu-list {
    padding-left: 0px;
    align-items: normal;
  }
}
@media (max-width: 63.98rem) {
  .menu-item:not(.language):not(:first-child) {
    padding-top: 0.75rem;
    border-top: 1px solid rgba(238, 238, 238, 0.1647058824);
    margin-top: 0.75rem;
  }
  .menu-arow {
    rotate: -90deg;
  }
}

.submenu {
  width: 100%;
  position: absolute;
  transition: opacity 0.5s ease;
}
.submenu[inert] {
  opacity: 0;
}
.submenu-text {
  margin-top: 1rem;
}
.submenu-content {
  padding: clamp(1.5625rem, 25px + 8.3333333333 * (100vw - 1200px) / 400, 2.0833333333rem);
}
.submenu-button {
  margin-top: 2rem;
}
.submenu-list {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.submenu-close {
  display: grid;
  width: 2rem;
  aspect-ratio: 1/1;
  position: absolute;
  place-items: center;
  font-size: 1.25rem;
}
@media (max-width: 47.98rem) {
  .submenu-link {
    color: var(--c-white);
  }
}
.submenu-item {
  transition: all 0.3s;
}
.submenu-item:hover {
  color: var(--c-blue-primary);
}
@media (min-width: 64rem) {
  .submenu {
    background-color: var(--c-white);
    border-radius: var(--radius-default);
    width: clamp(15.1041666667rem, 241.6666666667px + 80.5555555556 * (100vw - 1200px) / 400, 20.1388888889rem);
    top: calc(100% + 0.8rem);
    left: 50%;
    right: 0;
    z-index: -1;
    transform: translateX(-50%);
  }
  .submenu-close {
    bottom: 1rem;
    right: 0;
    opacity: 0;
    pointer-events: none;
  }
  .submenu-close:focus-visible {
    opacity: 1;
  }
}
@media (max-width: 63.98rem) {
  .submenu {
    height: 100%;
    top: 0;
    left: 0;
    z-index: 10;
    overflow: auto;
  }
  .submenu-wrapper {
    grid-template-columns: 100%;
  }
  .submenu-header {
    border-bottom: 1px solid #eee;
  }
  .submenu-close {
    top: 2rem;
    right: 0;
  }
}
@media (max-width: 47.98rem) {
  .submenu {
    position: relative;
  }
  .submenu-content {
    padding-inline: 0px;
    padding-bottom: 0px;
  }
  .submenu-close {
    display: none;
  }
  .submenu[inert] {
    opacity: 0;
    height: 0;
  }
  .submenu-list {
    grid-template-columns: 100%;
  }
}

.language {
  position: relative;
}
.language-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  padding-top: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  padding-bottom: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
}
.language-toggle[aria-expanded=true] {
  color: var(--c-blue-light);
  background-color: inherit;
}
.language-toggle .language-flag {
  width: 1rem;
  height: 1rem;
  border-radius: 2px;
  object-fit: cover;
}
.language-content {
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 47.98rem) {
  .language-content {
    padding-inline: 0px;
  }
}
.language-content .language-flag {
  width: 1rem;
  height: 1rem;
  border-radius: 2px;
  object-fit: cover;
  margin-right: 0.5rem;
}
.language-list {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.language-submenu {
  width: 100%;
  position: absolute;
  transition: opacity 0.5s ease;
}
.language-submenu[inert] {
  opacity: 0;
}
@media (min-width: 64rem) {
  .language-submenu {
    background-color: var(--c-white);
    border-radius: var(--radius-default);
    width: 100%;
    top: calc(100% + 0.8rem);
    left: 50%;
    right: 0;
    z-index: -1;
    transform: translateX(-50%);
  }
}
@media (max-width: 63.98rem) {
  .language-submenu {
    position: relative;
    height: auto;
    top: 0;
    left: 0;
    z-index: 10;
    overflow: auto;
  }
}
.language-item {
  transition: all 0.3s;
}
@media (max-width: 47.98rem) {
  .language-item {
    color: var(--c-white);
  }
}
.language-item:hover {
  color: var(--c-blue-primary);
}
.language-link {
  display: flex;
  align-items: center;
  text-decoration: none;
  gap: 0.5rem;
  color: inherit;
  transition: all 0.3s ease;
  font-weight: 500;
}
.language-link:hover {
  color: var(--c-blue-primary);
}
@media (max-width: 63.98rem) {
  .language {
    margin-top: auto;
  }
}

.shortcut-link {
  position: absolute;
  top: calc(var(--header-height) + 1rem);
  left: 1rem;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
}
.shortcut-link:focus-visible {
  opacity: 1;
}

[data-scroll=ongoing] .header.header--open .header-logo-full {
  opacity: 1;
}
[data-scroll=ongoing] .header.header--open .header-logo-inner {
  opacity: 0;
}

.footer {
  position: relative;
  z-index: 10;
  padding-top: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  padding-bottom: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  background: linear-gradient(180deg, #fafcfe 0%, #e6eefa 100%);
  display: flex;
  flex-direction: column;
  gap: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
}
.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .footer-top {
    flex-direction: column;
    gap: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  }
}
.footer-top-right img {
  width: 25rem;
  max-width: 100%;
  height: auto;
}
.footer-logo-link {
  display: flex;
  align-items: center;
  justify-content: start;
  flex-direction: row;
}
.footer-middle {
  padding-bottom: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  padding-top: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  border-top: 1px solid rgba(4, 5, 83, 0.1);
  border-bottom: 1px solid rgba(4, 5, 83, 0.1);
  display: grid;
  grid-template-columns: 4fr 15fr 3fr;
  gap: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
}
@media (max-width: 47.98rem) {
  .footer-middle {
    display: flex;
    flex-direction: column;
    gap: clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  }
}
.footer-middle-form {
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  border-radius: clamp(0.9895833333rem, 15.8333333333px + 5.2777777778 * (100vw - 1200px) / 400, 1.3194444444rem);
  border: 1px solid rgba(255, 255, 255, 0.1019607843);
  background: var(--c-white-50);
  backdrop-filter: blur(clamp(1.0416666667rem, 16.6666666667px + 5.5555555556 * (100vw - 1200px) / 400, 1.3888888889rem));
}
@media (max-width: 47.98rem) {
  .footer-middle-form {
    padding: 1rem;
  }
}
.footer-middle-form-title {
  display: flex;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  align-items: center;
  color: var(--c-blue-dark-very);
  margin-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-size: 1.0625rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.47;
}
.footer-middle-link {
  display: flex;
  flex-direction: column;
  justify-content: start;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .footer-middle-link {
    order: -1;
  }
}
.footer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-top-left {
  display: flex;
  align-items: center;
  justify-content: start;
  flex-direction: row;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.footer-top-left svg {
  width: 5rem;
}
@media (max-width: 47.98rem) {
  .footer-top-left {
    gap: 1rem;
  }
}
.footer-title {
  color: var(--c-blue-dark-secondary);
}
.footer-menu {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.footer-menu-title {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  color: var(--c-blue-dark-secondary);
  margin-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-weight: 500;
}
.footer-menu-link {
  font-size: clamp(0.7291666667rem, 11.6666666667px + 3.8888888889 * (100vw - 1200px) / 400, 0.9722222222rem);
  color: var(--c-blue-dark-secondary);
  font-weight: 500;
  transition: color 0.3s ease;
}
.footer-menu-link:hover {
  color: var(--c-blue-primary);
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .footer-bottom {
    flex-direction: column;
    gap: 1rem;
  }
}
.footer-bottom-copyright {
  display: flex;
  align-items: center;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-weight: 400;
  color: var(--c-blue-dark-secondary);
}
.footer-bottom-nav {
  display: flex;
  flex-direction: row;
  gap: clamp(0.15625rem, 2.5px + 0.8333333333 * (100vw - 1200px) / 400, 0.2083333333rem);
}
@media (max-width: 47.98rem) {
  .footer-bottom-nav {
    flex-direction: column;
    text-align: center;
  }
}
.footer-bottom-nav li {
  list-style: none;
}
.footer-bottom p {
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  color: var(--c-blue-dark-secondary);
  line-height: 1.2;
}
@media (max-width: 47.98rem) {
  .footer-bottom p {
    font-size: 0.875rem;
  }
}
.footer-bottom a {
  font-weight: 400;
  font-size: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  color: var(--c-blue-dark-secondary);
  transition: color 0.3s ease;
  padding: clamp(0.15625rem, 2.5px + 0.8333333333 * (100vw - 1200px) / 400, 0.2083333333rem) clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  transition: all 0.3s ease;
  line-height: 1.2;
}
@media (max-width: 47.98rem) {
  .footer-bottom a {
    font-size: 0.875rem;
  }
}
.footer-bottom a:hover {
  border-radius: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  background-color: var(--c-grey-20);
}

.page-content {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.cta {
  position: relative;
  background-color: var(--c-black);
  color: var(--c-white);
  padding-top: clamp(5.3125rem, 85px + 28.3333333333 * (100vw - 1200px) / 400, 7.0833333333rem);
  padding-bottom: clamp(20.8333333333rem, 333.3333333333px + 111.1111111111 * (100vw - 1200px) / 400, 27.7777777778rem);
  overflow: hidden;
}
.cta-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.4fr 0.8fr;
  gap: var(--gap-default);
  align-items: start;
}
@media (max-width: 47.98rem) {
  .cta-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.cta-header {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.cta-title {
  color: var(--c-white);
  margin: 0;
  width: 50%;
}
@media (max-width: 47.98rem) {
  .cta-title {
    width: 100%;
  }
}
.cta-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding-left: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
}
@media (max-width: 47.98rem) {
  .cta-content {
    padding-left: 0px;
  }
}
.cta-link {
  justify-self: start;
  align-self: start;
}
.cta-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0.8;
  background: linear-gradient(0deg, var(--c-blue-dark-50), var(--c-blue-dark));
}
.cta-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.cta8 {
  position: relative;
  padding-top: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  overflow: hidden;
  background-color: var(--c-very-light-grey);
}
.cta8-container {
  background-color: var(--c-blue-dark);
  color: var(--c-white);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  border-radius: 1rem;
}
.cta8-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.cta8-title {
  color: var(--c-white);
  margin: 0;
  width: 50rem;
  max-width: 100%;
  text-align: center;
}
.cta8-link {
  justify-self: center;
  align-self: center;
}

.cont {
  position: relative;
  background-color: var(--c-blue-dark);
  color: var(--c-white);
  padding-top: clamp(6.25rem, 100px + 33.3333333333 * (100vw - 1200px) / 400, 8.3333333333rem);
  padding-bottom: clamp(6.25rem, 100px + 33.3333333333 * (100vw - 1200px) / 400, 8.3333333333rem);
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .cont {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.cont-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .cont-container {
    display: flex;
    flex-direction: column;
    padding-inline: 0px;
    gap: 1rem;
  }
}
.cont-block {
  background-color: var(--c-white-10);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
@media (max-width: 47.98rem) {
  .cont-block {
    padding: 1.5rem;
  }
}
.cont-full {
  display: flex;
  flex-direction: column;
  gap: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  padding-top: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  width: 100%;
  grid-column: span 2/span 2;
  text-align: center;
}
@media (max-width: 47.98rem) {
  .cont-full {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}
.cont-header {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.cont-header-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.cont-header-title {
  color: var(--c-white);
  text-align: center;
}
.cont-header-text {
  color: var(--c-white);
  text-align: center;
}
.cont-profil {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cont-services {
  display: flex;
  flex-direction: row;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  background-color: var(--c-blue-dark);
  padding: clamp(1.5625rem, 25px + 8.3333333333 * (100vw - 1200px) / 400, 2.0833333333rem);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 47.98rem) {
  .cont-services {
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
  }
}
.cont-services-title {
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem) 0;
  font-weight: 500;
  line-height: 1.5;
  color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .cont-services-title {
    text-align: left;
    font-size: 1rem;
    padding: 0;
  }
}
.cont-services-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
  gap: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}
.cont-services-item {
  color: var(--c-white);
}
.cont-col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: start;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.cont-col-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  margin-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.cont-col-texte {
  color: var(--c-white);
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-weight: 400;
  line-height: 1.5;
}
.cont-col-subtitle {
  color: var(--c-white);
  font-weight: 500;
}
.cont-col-texte {
  width: 85%;
}

.com {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-very-light-grey);
}
@media (max-width: 47.98rem) {
  .com {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.com--bluelight {
  background-color: var(--c-blue-light-secondary);
}
.com-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
.com-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
  width: 50%;
  margin: 0 auto;
}
@media (max-width: 47.98rem) {
  .com-header {
    width: 100%;
  }
}
.com-title {
  color: var(--c-blue-dark-secondary);
  text-align: center;
}
.com-content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
@media (max-width: 47.98rem) {
  .com-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
}

.cit {
  position: relative;
  background-color: var(--c-black);
  color: var(--c-white);
  padding-top: clamp(18.75rem, 300px + 100 * (100vw - 1200px) / 400, 25rem);
  padding-bottom: clamp(4.0625rem, 65px + 21.6666666667 * (100vw - 1200px) / 400, 5.4166666667rem);
  overflow: hidden;
}
.cit-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.3fr 2fr;
  gap: var(--gap-default);
  align-items: end;
  justify-content: end;
}
@media (max-width: 47.98rem) {
  .cit-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.cit-content {
  display: flex;
  flex-direction: column;
}
.cit-content-citation {
  font-style: italic;
  margin-bottom: clamp(2.1875rem, 35px + 11.6666666667 * (100vw - 1200px) / 400, 2.9166666667rem);
}
.cit-content-author {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 47.98rem) {
  .cit-content-author {
    font-size: 1.0625rem;
  }
}
.cit-content-function {
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  line-height: 1.6;
  letter-spacing: -0.32px;
}
@media (max-width: 47.98rem) {
  .cit-content-function {
    font-size: 1rem;
  }
}
.cit-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.ln {
  background-color: var(--c-blue-dark);
  position: relative;
  padding-top: clamp(6.25rem, 100px + 33.3333333333 * (100vw - 1200px) / 400, 8.3333333333rem);
  padding-bottom: clamp(6.25rem, 100px + 33.3333333333 * (100vw - 1200px) / 400, 8.3333333333rem);
  background-image: url(../img/bgactu.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.ln::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, var(--c-blue-dark-50), var(--c-blue-dark));
  pointer-events: none;
  z-index: 1;
}
.ln-container {
  position: relative;
  z-index: 10;
}
.ln-header {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  padding-bottom: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
@media (max-width: 47.98rem) {
  .ln-header {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.ln-title {
  color: var(--c-white);
  margin: 0;
}
.ln-link {
  justify-self: end;
  align-self: end;
}
@media (max-width: 47.98rem) {
  .ln-link {
    justify-self: start;
    align-self: start;
  }
}
.ln-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  align-items: start;
}
@media (max-width: 47.98rem) {
  .ln-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.ln-content .card-news {
  width: 100%;
}

.ln8 {
  background-color: var(--c-blue-light-secondary);
  position: relative;
  padding-top: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
  padding-bottom: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
}
.ln8-container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
.ln8-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  align-items: center;
  width: 70%;
  margin: 0 auto;
}
.ln8-title {
  color: var(--c-blue-dark-secondary);
  margin: 0;
  text-align: center;
}
.ln8-link {
  justify-self: center;
  align-self: center;
}
.ln8-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}

.ln6 {
  background-color: var(--c-blue-light-secondary);
  position: relative;
  padding-top: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
  padding-bottom: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
}
.ln6-container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
@media (max-width: 47.98rem) {
  .ln6-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.ln6-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  margin: 0 auto;
}
.ln6-title {
  color: var(--c-blue-dark-secondary);
  margin: 0;
  text-align: center;
}
.ln6-link {
  justify-self: center;
  align-self: center;
}
.ln6-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}

.luc {
  background-color: var(--c-blue-light-secondary);
  position: relative;
  padding-top: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
  padding-bottom: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
}
.luc-container {
  position: relative;
  z-index: 1;
}
.luc-header {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  padding-bottom: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
@media (max-width: 47.98rem) {
  .luc-header {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.luc-title {
  color: var(--c-blue-dark-secondary);
  margin: 0;
}
.luc-link {
  justify-self: end;
  align-self: end;
}
@media (max-width: 47.98rem) {
  .luc-link {
    justify-self: start;
    align-self: start;
  }
}
.luc-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  align-items: start;
}
@media (max-width: 47.98rem) {
  .luc-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.luc-content .card-case {
  width: 100%;
}

.luc8 {
  background-color: var(--c-very-light-grey);
  position: relative;
  padding-top: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
  padding-bottom: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
}
.luc8-container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
.luc8-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  align-items: center;
  width: 50rem;
  max-width: 100%;
  margin: 0 auto;
}
.luc8-title {
  color: var(--c-blue-dark-secondary);
  margin: 0;
  text-align: center;
}
.luc8-link {
  justify-self: center;
  align-self: center;
}
.luc8-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (min-width: 64rem) {
  .luc8-content {
    grid-template-columns: repeat(3, 1fr);
  }
}

.newsletter {
  position: relative;
  background-color: var(--c-blue-dark);
  color: var(--c-white);
  padding-top: clamp(8.3333333333rem, 133.3333333333px + 44.4444444444 * (100vw - 1200px) / 400, 11.1111111111rem);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  overflow: hidden;
}
.newsletter-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.4fr 0.8fr;
  gap: var(--gap-default);
  align-items: end;
  padding: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 63.98rem) {
  .newsletter-container {
    grid-template-columns: 1fr;
    gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  }
}
.newsletter-header {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.newsletter-title {
  color: var(--c-white);
  margin: 0;
  width: 50%;
}
@media (max-width: 63.98rem) {
  .newsletter-title {
    width: 100%;
  }
}
.newsletter-content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding-left: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.47;
}
@media (max-width: 63.98rem) {
  .newsletter-content {
    font-size: 1.0625rem;
    padding-left: 0px;
  }
}
.newsletter-link {
  justify-self: start;
  align-self: start;
}
.newsletter-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0.8;
  background: linear-gradient(0deg, var(--c-blue-dark-50), var(--c-blue-dark));
}
.newsletter-image {
  position: absolute;
  inset: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  z-index: 0;
  overflow: hidden;
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  overflow: hidden;
}

.oa {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-blue-dark-secondary);
}
@media (max-width: 47.98rem) {
  .oa {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.oa-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
.oa-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
}
.oa-title {
  color: var(--c-white);
  text-align: center;
}
.oa-content {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
@media (max-width: 47.98rem) {
  .oa-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}

.os {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .os {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.os-container {
  display: grid;
  align-items: center;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 3.8125rem;
  column-gap: 1rem;
}
@media (max-width: 47.98rem) {
  .os-container {
    display: flex;
    flex-direction: column;
    row-gap: 2rem;
    column-gap: 1rem;
  }
}
.os-header {
  grid-column: 2 span/2 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
}
.os-title {
  color: var(--c-blue-dark-secondary);
  text-align: center;
}
.os-media {
  grid-column: 1 span/1 span;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  border-radius: 1rem;
  aspect-ratio: 1/1;
  background-color: var(--c-very-light-grey);
  padding: 3.875rem;
}
.os-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.os-content {
  grid-column: 1 span/1 span;
  display: flex;
  flex-direction: column;
  padding-left: 5.625rem;
  gap: 2rem;
  width: 75%;
}
@media (max-width: 47.98rem) {
  .os-content {
    padding-left: 0px;
    width: 100%;
  }
}
.os-content-item {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.os-content-item-title {
  color: var(--c-blue-dark-secondary);
}

.om {
  position: relative;
  background-color: var(--c-black);
  color: var(--c-white);
  padding-top: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  padding-bottom: clamp(5rem, 80px + 26.6666666667 * (100vw - 1200px) / 400, 6.6666666667rem);
  overflow: hidden;
}
.om::before {
  content: "";
  position: absolute;
  inset: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  background: var(--om-bg, none) center/cover no-repeat;
  opacity: 0.35;
  border-radius: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  z-index: 0;
  pointer-events: none;
}
.om-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: var(--space-default);
  align-items: start;
}
@media (max-width: 47.98rem) {
  .om-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.om-content-title {
  margin: 0;
  max-width: 18ch;
}
.om-groupe-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(0.6770833333rem, 10.8333333333px + 3.6111111111 * (100vw - 1200px) / 400, 0.9027777778rem);
  background: var(--c-white-10);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 1.5rem;
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  backdrop-filter: blur(var(--blur-default));
}
.om-groupe-title {
  color: var(--c-white);
  font-weight: 500;
}
.om-list {
  display: flex;
  flex-direction: column;
  gap: var(--gap-marquee);
  position: relative;
  z-index: 1;
  grid-column: 1/-1; /* la grille occupe toute la largeur */
  margin-top: clamp(10.4166666667rem, 166.6666666667px + 55.5555555556 * (100vw - 1200px) / 400, 13.8888888889rem);
}
.om-image {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.offers {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-blue-dark-secondary);
}
@media (max-width: 47.98rem) {
  .offers {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.offers-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
.offers-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
  width: 50%;
  margin: 0 auto;
}
@media (max-width: 47.98rem) {
  .offers-header {
    width: 100%;
  }
}
.offers-title {
  color: var(--c-white);
  text-align: center;
}
.offers-content {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media (max-width: 47.98rem) {
  .offers-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
}

.omv {
  position: relative;
  background-color: var(--c-very-light-grey);
  padding-top: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  overflow: hidden;
}
.omv-container {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  border-radius: 1rem;
  position: relative;
  z-index: 1;
  align-items: start;
  background-color: var(--c-blue-dark-secondary);
  padding: clamp(3.0208333333rem, 48.3333333333px + 16.1111111111 * (100vw - 1200px) / 400, 4.0277777778rem);
}
@media (max-width: 47.98rem) {
  .omv-container {
    display: flex;
    flex-direction: column;
  }
}
.omv-header {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  margin-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .omv-header {
    width: 100%;
    padding-left: 0px;
  }
}
.omv-title {
  color: var(--c-white);
}
.omv-content {
  color: var(--c-white);
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
  line-height: 1.5;
  display: flex;
  font-weight: 400;
  align-items: flex-start;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-right: clamp(3.0208333333rem, 48.3333333333px + 16.1111111111 * (100vw - 1200px) / 400, 4.0277777778rem);
}
@media (max-width: 47.98rem) {
  .omv-content {
    font-size: 1rem;
    padding-right: 0px;
  }
}
.omv-list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: clamp(0.6770833333rem, 10.8333333333px + 3.6111111111 * (100vw - 1200px) / 400, 0.9027777778rem);
  position: relative;
  z-index: 1;
  grid-column: 1/-1;
  margin-top: 4rem;
}
@media (max-width: 47.98rem) {
  .omv-list {
    padding-inline: 0px;
    margin-top: 4rem;
    grid-template-columns: repeat(2, 1fr);
  }
}
.omv-list .card-member {
  width: 100%;
}

.omslider {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-blue-dark-very);
  display: flex;
  flex-direction: column;
  gap: 4.5rem;
  width: 100%;
}
.omslider-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
.omslider-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
  width: 37.5rem;
  max-width: 100%;
  margin: 0 auto;
}
.omslider-title {
  color: var(--c-white);
  text-align: center;
}
.omslider-slider {
  width: 100%;
}
.omslider-slider .swiper-slide {
  width: auto;
}
.omslider-controls {
  display: flex;
  justify-content: center;
  gap: 2rem;
}

.ombf {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .ombf {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.ombf-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
@media (max-width: 47.98rem) {
  .ombf-container {
    padding-inline: 0px;
  }
}
.ombf-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: row;
  gap: clamp(5.2083333333rem, 83.3333333333px + 27.7777777778 * (100vw - 1200px) / 400, 6.9444444444rem);
  align-items: flex-end;
  justify-content: space-between;
}
@media (max-width: 47.98rem) {
  .ombf-header {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
  }
}
.ombf-header-details {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: flex-start;
}
.ombf-header-filter {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  flex: none;
}
@media (max-width: 47.98rem) {
  .ombf-header-filter {
    align-items: flex-start;
    justify-content: flex-start;
  }
}
.ombf-number-found {
  font-size: 1.0625rem;
  font-weight: 400;
  line-height: 1.47;
  color: var(--c-blue-dark-secondary);
}
.ombf-title {
  color: var(--c-blue-dark-secondary);
}
.ombf-content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ombf-form {
  background-color: var(--c-blue-dark);
  padding: 1rem 2rem;
  border-radius: 1rem;
  color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .ombf-form {
    display: none;
  }
}
.ombf-form-filter {
  display: grid;
  grid-template-columns: 1.18fr 1fr 1.39fr;
  gap: 2rem;
}
.ombf-form-filter .filter-label-icon svg {
  fill: var(--c-white);
}

label {
  cursor: pointer;
}

.filter-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}
.filter-label:has(input:checked) .filter-label-icon {
  transform: rotate(180deg);
}
.filter-label-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease-in-out;
}
.filter-label svg {
  width: 1rem;
  height: 1rem;
}

.grid-member-filter {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.omis {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-very-light-grey);
}
@media (max-width: 47.98rem) {
  .omis {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.omis-container {
  display: flex;
  flex-direction: column;
  row-gap: 3.8125rem;
}
@media (max-width: 47.98rem) {
  .omis-container {
    padding-inline: 0;
  }
}
.omis-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
}
.omis-title {
  color: var(--c-blue-dark-secondary);
  text-align: center;
}
.omis-content {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}

.way {
  background-color: var(--c-black);
  position: relative;
  padding-top: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-bottom: clamp(8.3333333333rem, 133.3333333333px + 44.4444444444 * (100vw - 1200px) / 400, 11.1111111111rem);
}
@media (max-width: 47.98rem) {
  .way {
    padding-bottom: 1rem;
  }
}
.way-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
}
.way-container {
  gap: 0;
  align-items: flex-start;
  position: relative;
  z-index: 1;
  padding-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.way-content {
  grid-column: 5 span/5 span;
  padding-right: clamp(0.5208333333rem, 8.3333333333px + 2.7777777778 * (100vw - 1200px) / 400, 0.6944444444rem);
}
@media (max-width: 47.98rem) {
  .way-content {
    padding-right: 0px;
  }
}
.way-content-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background-color: var(--c-white);
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  border-radius: 1.1875rem;
  backdrop-filter: blur(var(--blur-default));
}
.way-content-title {
  margin-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  color: var(--c-blue-dark-secondary);
}
.way-content-text {
  margin-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-right: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.way-list {
  grid-column: 7 span/7 span;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  padding-left: clamp(4.6875rem, 75px + 25 * (100vw - 1200px) / 400, 6.25rem);
}
@media (max-width: 47.98rem) {
  .way-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-left: 0px;
    margin-top: 6.25rem;
  }
}
.way-list-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background-color: var(--c-blue-50);
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  border-radius: 1.1875rem;
  backdrop-filter: blur(var(--blur-default));
  color: var(--c-white);
}
.way-list-item-icon {
  margin-bottom: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
.way-list-item-title {
  margin-bottom: clamp(0.2083333333rem, 3.3333333333px + 1.1111111111 * (100vw - 1200px) / 400, 0.2777777778rem);
  font-weight: 500;
}
.way-list-item-text {
  font-size: clamp(0.78125rem, 12.5px + 4.1666666667 * (100vw - 1200px) / 400, 1.0416666667rem);
}
@media (max-width: 47.98rem) {
  .way-list-item-text {
    font-size: 0.8125rem;
  }
}
.way-image {
  position: absolute;
  top: 0;
  bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  left: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  right: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  z-index: 0;
  overflow: hidden;
  border-radius: 2rem;
}

.tc {
  position: relative;
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  background-color: var(--c-very-light-grey);
}
@media (max-width: 47.98rem) {
  .tc {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
.tc-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: var(--space-default);
  align-items: start;
}
@media (max-width: 47.98rem) {
  .tc-container {
    display: flex;
    flex-direction: column;
  }
}
.tc-header {
  display: flex;
  align-items: start;
  flex-direction: column;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  width: 70%;
}
@media (max-width: 47.98rem) {
  .tc-header {
    width: 100%;
  }
}
.tc-title {
  color: var(--c-blue-dark-secondary);
}
.tc-content {
  color: var(--c-blue-dark-secondary);
  padding-right: clamp(4.1666666667rem, 66.6666666667px + 22.2222222222 * (100vw - 1200px) / 400, 5.5555555556rem);
}
@media (max-width: 47.98rem) {
  .tc-content {
    padding-right: 0;
  }
}
.tc-image {
  pointer-events: none;
  position: absolute;
  top: auto;
  bottom: -90%;
  width: 80%;
  aspect-ratio: 1/1;
  margin: auto;
}
.tc-image svg {
  width: 100%;
  height: 100%;
}
.tc-image.x-center {
  left: 0;
  right: 0;
}
.tc-image.x-left {
  left: -10%;
}

.tc ~ .omv {
  z-index: -1;
}

.tmc {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .tmc {
    padding-top: 3.875rem;
    padding-bottom: 3.875rem;
  }
}
.tmc-container {
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  row-gap: 3.8125rem;
  column-gap: 1rem;
}
@media (max-width: 47.98rem) {
  .tmc-container {
    display: flex;
    row-gap: 2rem;
    flex-direction: column;
  }
}
.tmc-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
}
.tmc-title {
  color: var(--c-blue-dark-secondary);
  text-align: center;
}
.tmc-media {
  grid-column: 13 span/13 span;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  border-radius: 1rem;
}
.tmc-content {
  grid-column: 11 span/11 span;
  padding-left: 3.8125rem;
}
@media (max-width: 47.98rem) {
  .tmc-content {
    padding-left: 0px;
  }
}

.files {
  padding-top: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-very-light-grey);
  display: flex;
  flex-direction: column;
  row-gap: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
.files-header {
  grid-column: 24 span/24 span;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
  width: 60%;
  margin: 0 auto;
}
.files-slider {
  width: 100%;
}
.files-title {
  color: var(--c-blue-dark-secondary);
  text-align: center;
}
.files-controls {
  display: flex;
  justify-content: center;
  gap: 2rem;
}

.video {
  padding-top: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  position: relative;
  z-index: 1;
  background-color: var(--c-very-light-grey);
  display: flex;
  flex-direction: column;
  row-gap: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
}
.video iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  border-radius: 1.25rem;
}

.grid-posts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media (max-width: 47.98rem) {
  .grid-posts {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}
@media (max-width: 63.98rem) {
  .grid-posts {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}

.section-posts {
  background-color: var(--c-blue-dark);
  padding-top: 4rem;
  padding-bottom: 4rem;
  position: relative;
}

.grid-case-study {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .grid-case-study {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}

.section-case-study {
  padding-top: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  background-color: var(--c-blue-light-secondary);
  position: relative;
}
@media (max-width: 47.98rem) {
  .section-case-study {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }
}

.t6text {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6text-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6text-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.52px;
  color: var(--c-blue-dark-secondary);
  margin-bottom: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.t6video {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6video-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6video iframe {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}

.t6form {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6form-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6form-header {
  text-align: center;
}
.t6form-content {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-white);
  border-radius: 1rem;
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
@media (max-width: 47.98rem) {
  .t6form-content {
    padding: 1.5rem;
  }
}
.t6form-title {
  text-align: center;
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
}
@media (max-width: 47.98rem) {
  .t6form-title {
    padding: 1.5rem;
  }
}
.t6form .gform_footer [type=submit] {
  width: max-content;
  margin: auto;
}

.t6citation {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6citation-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6citation-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-blue-dark);
  border-radius: 1rem;
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  color: var(--c-white);
}
@media (max-width: 47.98rem) {
  .t6citation-content {
    padding: 1.5rem;
  }
}
.t6citation-header {
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.t6citation-blockquote {
  display: flex;
  flex-direction: column;
  gap: clamp(0.625rem, 10px + 3.3333333333 * (100vw - 1200px) / 400, 0.8333333333rem);
  font-size: clamp(1.1458333333rem, 18.3333333333px + 6.1111111111 * (100vw - 1200px) / 400, 1.5277777778rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.36;
  letter-spacing: -0.88px;
}
@media (max-width: 47.98rem) {
  .t6citation-blockquote {
    font-size: 1.375rem;
  }
}
.t6citation-blockquote::before {
  content: "";
  background-image: url(../img/guillemet.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left center;
  width: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  height: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.t6citation-author {
  display: flex;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  justify-content: center;
}
.t6citation-details {
  display: flex;
  flex-direction: column;
}
.t6citation-name {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.47; /* 147.059% */
}
@media (max-width: 47.98rem) {
  .t6citation-name {
    font-size: 1.125rem;
  }
}
.t6citation-function {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.47; /* 147.059% */
}
@media (max-width: 47.98rem) {
  .t6citation-function {
    font-size: 1.0625rem;
  }
}
.t6citation-link {
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5; /* 150% */
  letter-spacing: -0.32px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  transition: all 0.3s ease;
}
@media (max-width: 47.98rem) {
  .t6citation-link {
    font-size: 1rem;
  }
}
.t6citation-link:hover {
  color: var(--c-blue-primary);
}
.t6citation-image {
  width: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
  height: clamp(3.75rem, 60px + 20 * (100vw - 1200px) / 400, 5rem);
  border-radius: 50%;
  overflow: hidden;
  position: relative;
}
.t6citation-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.t6citation .gform_footer [type=submit] {
  width: max-content;
  margin: auto;
}

.t6networks {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6networks-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6networks-content {
  display: flex;
  justify-content: center;
  flex-direction: column;
  background-color: var(--c-white);
  border-radius: 1rem;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
@media (max-width: 47.98rem) {
  .t6networks-content {
    padding: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  }
}
.t6networks-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
}
@media (max-width: 47.98rem) {
  .t6networks-title {
    font-size: 2rem;
  }
}
.t6networks-buttons {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}

.t6share {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.t6share-container {
  padding-inline: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
}
.t6share-line {
  opacity: 0.1;
  flex: 1;
  height: 1px;
  width: 100%;
  background-color: var(--c-blue-dark-secondary);
}
.t6share-buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.share-btn {
  background: var(--c-blue-dark-secondary, #007bff);
  color: white;
  border: none;
  border-radius: 0.5rem;
  padding: 0.75rem 1.5rem;
  font-size: 1rem;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.2s ease;
  text-decoration: none;
}
.share-btn:hover {
  background: var(--c-blue-dark-primary, #0056b3);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 123, 255, 0.25);
}
.share-btn svg {
  width: 1.125rem;
  height: 1.125rem;
}
.share-social {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5rem;
}
@media (max-width: 47.98rem) {
  .share-social {
    text-align: center;
  }
}

.js-share-links {
  display: none;
  opacity: 0;
  transform: translateY(-10px);
  transition: all 0.3s ease;
}
.js-share-links.is-active {
  display: block;
  animation: fadeInUp 0.3s ease forwards;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.share-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border: 1px solid #e0e0e0;
  border-radius: 0.375rem;
  text-decoration: none;
  color: #333;
  background: white;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.2s ease;
  cursor: pointer;
}
@media (max-width: 47.98rem) {
  .share-link {
    padding: 1rem 1.25rem;
  }
}
.share-link:hover {
  border-color: var(--c-blue-dark-secondary, #007bff);
  background-color: #f8f9ff;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 123, 255, 0.15);
}
.share-link svg {
  width: 0.875rem;
  height: 0.875rem;
}
@media (max-width: 47.98rem) {
  .share-link svg {
    width: 1.125rem;
    height: 1.125rem;
  }
}
.share-link--facebook:hover {
  border-color: #1877f2;
  background-color: #f0f7ff;
}
.share-link--x:hover {
  border-color: #000000;
  background-color: #f0f9ff;
}
.share-link--linkedin:hover {
  border-color: #0077b5;
  background-color: #f0f8ff;
}
.share-link--whatsapp:hover {
  border-color: #25d366;
  background-color: #f0fff4;
}
.share-link--email:hover {
  border-color: #ea4335;
  background-color: #fff5f5;
}
.share-link--copy {
  border: none;
  background: #f8f9fa;
}
.share-link--copy:hover {
  background: #e9ecef;
  border-color: transparent;
  transform: translateY(-1px);
}

.t6info {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6info-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6info-date-container {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
@media (max-width: 47.98rem) {
  .t6info-date-container {
    align-items: flex-start;
    flex-direction: column;
  }
}
.t6info-buttons {
  display: flex;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
}
@media (max-width: 47.98rem) {
  .t6info-buttons {
    flex-direction: column;
    align-items: flex-start;
  }
}
.t6info-localisation {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(0.4166666667rem, 6.6666666667px + 2.2222222222 * (100vw - 1200px) / 400, 0.5555555556rem);
  color: var(--c-blue-primary);
}
.t6info-localisation--nomap {
  pointer-events: none;
}
.t6info-content {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-white);
  border-radius: 1rem;
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
@media (max-width: 47.98rem) {
  .t6info-content {
    padding: 1.5rem;
  }
}
.t6info-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
}
.t6info .gform_footer [type=submit] {
  width: max-content;
  margin: auto;
}

.t6keys {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
.t6keys-content {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-white);
  border-radius: 1rem;
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}
.t6keys-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
}
.t6keys-keys {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
@media (max-width: 47.98rem) {
  .t6keys-keys {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}
@media (min-width: 48rem) {
  .t6keys-keys > * {
    flex: 1 1 calc(25% - clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem));
  }
}
.t6keys-key {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.t6keys-key-title {
  font-size: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: -2.88px;
  color: var(--c-blue-primary);
}
.t6keys-key-description {
  font-size: clamp(0.7291666667rem, 11.6666666667px + 3.8888888889 * (100vw - 1200px) / 400, 0.9722222222rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  color: var(--c-blue-dark);
}

.t6cards {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6cards-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6cards-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
  margin-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.t6cards-content {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  background-color: var(--c-white);
  border-radius: 1rem;
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
}

.t6accordeons {
  padding-top: var(--padding-block-t6);
  padding-bottom: var(--padding-block-t6);
}
@media (max-width: 47.98rem) {
  .t6accordeons-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.t6accordeons-title {
  font-size: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
  color: var(--c-blue-dark-secondary);
  margin-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}
.t6accordeons-list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
}

.hero__home {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: var(--header-height);
  padding-bottom: clamp(4.1666666667rem, 66.6666666667px + 22.2222222222 * (100vw - 1200px) / 400, 5.5555555556rem);
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
}
.hero__home-container {
  position: relative;
  z-index: 1;
  gap: var(--space-default);
}
.hero__home-title {
  color: var(--c-white);
  padding-right: clamp(2.6041666667rem, 41.6666666667px + 13.8888888889 * (100vw - 1200px) / 400, 3.4722222222rem);
}
.hero__home-description {
  color: var(--c-white);
}
.hero__home-buttons {
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: flex-end;
}
@media (max-width: 47.98rem) {
  .hero__home-buttons {
    align-items: flex-start;
    flex-direction: column;
    gap: 1rem;
  }
}
.hero__home-overlay {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  top: 0%;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 65.72%);
}
@media (max-width: 47.98rem) {
  .hero__home-overlay {
    background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0.374) 65.72%);
  }
}
.hero__home-image {
  position: absolute;
  z-index: 1;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero__home-video {
  position: fixed;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__contact {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: calc(var(--header-height) * 2);
  padding-bottom: clamp(5.8333333333rem, 93.3333333333px + 31.1111111111 * (100vw - 1200px) / 400, 7.7777777778rem);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
}
@media (max-width: 63.98rem) {
  .hero__contact {
    padding-top: calc(var(--header-height) * 1.5);
    padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  }
}
.hero__contact-container {
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: var(--gap-default);
  z-index: 1;
}
@media (max-width: 63.98rem) {
  .hero__contact-container {
    flex-direction: column;
    padding-right: 0;
    gap: 1.5rem;
  }
}
.hero__contact-header {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  width: 45%;
  padding-right: clamp(2.9166666667rem, 46.6666666667px + 15.5555555556 * (100vw - 1200px) / 400, 3.8888888889rem);
}
@media (max-width: 63.98rem) {
  .hero__contact-header {
    width: 100%;
    padding-right: 0;
  }
}
.hero__contact-content {
  color: var(--c-white);
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.47;
}
@media (max-width: 63.98rem) {
  .hero__contact-content {
    width: 100%;
    padding-right: 0;
  }
}
.hero__contact-details {
  padding: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem) clamp(2.0833333333rem, 33.3333333333px + 11.1111111111 * (100vw - 1200px) / 400, 2.7777777778rem);
  background-color: var(--c-white);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  width: max-content;
  max-width: 75%;
  display: flex;
  gap: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  flex-direction: column;
  box-sizing: border-box;
  align-items: flex-start;
  justify-content: flex-start;
}
@media (max-width: 63.98rem) {
  .hero__contact-details {
    padding: 1.5rem;
    max-width: 100%;
  }
}
.hero__contact-details-header {
  display: flex;
  flex-direction: column;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
}
.hero__contact-details-title {
  display: flex;
  flex-direction: row;
  gap: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  align-items: center;
}
.hero__contact-details-title-text {
  color: var(--c-blue-dark);
}
.hero__contact-details-content {
  opacity: 0.6;
  font-size: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: -0.32px;
}
.hero__contact-text {
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.47;
}
.hero__contact-forms {
  width: 55%;
}
@media (max-width: 63.98rem) {
  .hero__contact-forms {
    width: 100%;
  }
}
.hero__contact-forms-title {
  color: var(--c-blue-dark-secondary);
  font-size: 2rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: -0.64px;
}
.hero__contact-forms-tabs {
  padding: clamp(2.5rem, 40px + 13.3333333333 * (100vw - 1200px) / 400, 3.3333333333rem);
  background-color: var(--c-white);
  border-radius: clamp(0.8333333333rem, 13.3333333333px + 4.4444444444 * (100vw - 1200px) / 400, 1.1111111111rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.5rem;
}
@media (max-width: 63.98rem) {
  .hero__contact-forms-tabs {
    gap: 1.5rem;
    padding: clamp(1.25rem, 20px + 6.6666666667 * (100vw - 1200px) / 400, 1.6666666667rem);
  }
}
.hero__contact-forms-tabs__header {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.hero__contact-title {
  color: var(--c-white);
}
.hero__contact-image {
  pointer-events: none;
  position: absolute;
  top: auto;
  bottom: -4%;
  width: 80%;
  aspect-ratio: 1/1;
  margin: auto;
  left: -20%;
}
.hero__contact-image svg {
  width: 100%;
  height: 100%;
}
.hero__contact-image svg [fill^="#"] {
  fill: var(--c-white);
}
.hero__contact-image svg [stroke^="#"] {
  stroke: var(--c-white);
}

.hero__default {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: calc(var(--header-height) * 2);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .hero__default {
    padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  }
}
.hero__default-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1.2fr 0.8fr; /* titre à gauche, cartouche à droite */
  gap: var(--space-default);
}
@media (max-width: 47.98rem) {
  .hero__default-container {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }
}
.hero__default-title {
  color: var(--c-white);
}
.hero__default-buttons {
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: flex-end;
}
@media (max-width: 47.98rem) {
  .hero__default-buttons {
    justify-content: flex-start;
  }
}
.hero__default-overlay {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  top: 0%;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 65.72%);
}
@media (max-width: 47.98rem) {
  .hero__default-overlay {
    background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 85%);
  }
}
.hero__default-image {
  position: absolute;
  z-index: 1;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero__default-video {
  position: fixed;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 47.98rem) {
  .hero__default-video {
    position: absolute;
  }
}

.hero__filter {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: calc(var(--header-height) * 2);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
  overflow: hidden;
}
@media (max-width: 63.98rem) {
  .hero__filter {
    padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  }
}
.hero__filter-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-default);
}
@media (max-width: 63.98rem) {
  .hero__filter-container {
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem;
  }
}
.hero__filter-title {
  color: var(--c-white);
  margin-bottom: 1.5rem;
}
.hero__filter-description {
  color: var(--c-white);
  max-width: 18.75rem;
}
.hero__filter-buttons {
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: flex-end;
}
@media (max-width: 63.98rem) {
  .hero__filter-buttons {
    justify-content: flex-start;
  }
}
.hero__filter-form {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  flex-grow: 1;
}
.hero__filter-form select {
  width: 100%;
}
@media (max-width: 63.98rem) {
  .hero__filter-form {
    flex-direction: column;
  }
}
.hero__filter-overlay {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  top: 0%;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 65.72%);
}
@media (max-width: 63.98rem) {
  .hero__filter-overlay {
    background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 85%);
  }
}
.hero__filter-image {
  position: absolute;
  z-index: 1;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero__filter-video {
  position: fixed;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 63.98rem) {
  .hero__filter-video {
    position: absolute;
  }
}
.hero__filter .select-filter {
  background-color: var(--c-blue-dark-50);
}

.hero__about {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: calc(var(--header-height) * 2);
  padding-bottom: clamp(3.3333333333rem, 53.3333333333px + 17.7777777778 * (100vw - 1200px) / 400, 4.4444444444rem);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .hero__about {
    padding-bottom: clamp(1.6666666667rem, 26.6666666667px + 8.8888888889 * (100vw - 1200px) / 400, 2.2222222222rem);
  }
}
.hero__about-container {
  position: relative;
  z-index: 1;
  gap: var(--space-default);
}
.hero__about-title {
  color: var(--c-white);
}
.hero__about-overlay {
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  top: 0%;
  bottom: 0;
  pointer-events: none;
  background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 65.72%);
}
@media (max-width: 47.98rem) {
  .hero__about-overlay {
    background: linear-gradient(0deg, #030628 0%, rgba(3, 6, 40, 0) 85%);
  }
}
.hero__about-image {
  position: absolute;
  z-index: 1;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
.hero__about-video {
  position: fixed;
  top: 0;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 47.98rem) {
  .hero__about-video {
    position: absolute;
  }
}

.hero__single {
  position: relative;
  height: auto;
  background-color: var(--c-blue-dark);
  padding-top: calc(var(--header-height) * 1.5);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: var(--gap-default);
}
@media (max-width: 47.98rem) {
  .hero__single {
    padding-top: var(--header-height);
  }
}
.hero__single-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  gap: var(--space-default);
}
@media (max-width: 47.98rem) {
  .hero__single-container {
    display: flex;
    flex-direction: column;
  }
}
.hero__single-container-title {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-default);
  text-align: center;
}
@media (max-width: 47.98rem) {
  .hero__single-container-title {
    padding-inline: 0;
  }
}
.hero__single-back {
  display: flex;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .hero__single-back {
    align-self: flex-start;
    align-items: flex-start;
  }
}
.hero__single-cat {
  display: flex;
  justify-content: center;
  align-items: center;
}
.hero__single-title {
  color: var(--c-white);
}
.hero__single-description {
  color: var(--c-white);
  font-size: clamp(0.8854166667rem, 14.1666666667px + 4.7222222222 * (100vw - 1200px) / 400, 1.1805555556rem);
  font-style: normal;
  font-weight: 400;
  line-height: 1.47;
  padding-bottom: clamp(4.1666666667rem, 66.6666666667px + 22.2222222222 * (100vw - 1200px) / 400, 5.5555555556rem);
}
@media (max-width: 47.98rem) {
  .hero__single-description {
    font-size: 1.0625rem;
    padding-bottom: 2.5rem;
  }
}
.hero__single-container-image {
  position: relative;
}
.hero__single-container-image::after {
  content: "";
  position: absolute;
  z-index: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 50%;
  background-color: var(--c-very-light-grey);
}
.hero__single-image {
  position: relative;
  z-index: 2;
  padding-bottom: clamp(4.1666666667rem, 66.6666666667px + 22.2222222222 * (100vw - 1200px) / 400, 5.5555555556rem);
  padding-inline: 0px;
  aspect-ratio: 16/9;
  width: 100%;
  height: auto;
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .hero__single-image {
    padding-inline: 1rem;
    padding-bottom: 2rem;
  }
}

.error-page {
  display: flex;
  background-color: var(--c-blue-dark-very);
  color: var(--c-white);
  padding: calc(6rem + var(--header-height)) var(--side-margin) 6rem var(--side-margin);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.error-page-title {
  font-size: 4vw;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 1rem;
}
.error-page-link {
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}

#page-default {
  padding-top: calc(var(--header-height) + 2rem);
}

.ecoindex-grade {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.ecoindex-grade-item {
  display: flex;
  width: clamp(3rem, 5vw, 5rem);
  aspect-ratio: 1;
  padding: 0.75rem;
  border: 1px solid;
  border-radius: 0.5rem;
  justify-content: flex-end;
  align-items: flex-end;
  font-weight: 500;
  line-height: 1;
}
.ecoindex-grade-item:nth-child(1) {
  color: #4D9E30;
}
.ecoindex-grade-item:nth-child(1).ecoindex-grade-item--active {
  background-color: #4D9E30;
  color: white;
}
.ecoindex-grade-item:nth-child(2) {
  color: #50B84B;
}
.ecoindex-grade-item:nth-child(2).ecoindex-grade-item--active {
  background-color: #50B84B;
  color: white;
}
.ecoindex-grade-item:nth-child(3) {
  color: #CADB2A;
}
.ecoindex-grade-item:nth-child(3).ecoindex-grade-item--active {
  background-color: #CADB2A;
  color: white;
}
.ecoindex-grade-item:nth-child(4) {
  color: #F6EB13;
}
.ecoindex-grade-item:nth-child(4).ecoindex-grade-item--active {
  background-color: #F6EB13;
  color: white;
}
.ecoindex-grade-item:nth-child(5) {
  color: #FECD07;
}
.ecoindex-grade-item:nth-child(5).ecoindex-grade-item--active {
  background-color: #FECD07;
  color: white;
}
.ecoindex-grade-item:nth-child(6) {
  color: #FA9F47;
}
.ecoindex-grade-item:nth-child(6).ecoindex-grade-item--active {
  background-color: #FA9F47;
  color: white;
}
.ecoindex-grade-item:nth-child(7) {
  color: #EF3A3B;
}
.ecoindex-grade-item:nth-child(7).ecoindex-grade-item--active {
  background-color: #EF3A3B;
  color: white;
}

.single-case_study,
.single-post {
  background-color: var(--c-very-light-grey);
}
.single-case_study .related_posts,
.single-post .related_posts {
  padding-block: 7rem;
}
.single-case_study .related_posts-head,
.single-post .related_posts-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.single-case_study .related_posts-title,
.single-post .related_posts-title {
  color: var(--c-blue-dark-secondary);
}
.single-case_study .related_posts ul,
.single-post .related_posts ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding-top: 4.5rem;
}
@media (min-width: 64rem) {
  .single-case_study .related_posts ul,
  .single-post .related_posts ul {
    grid-template-columns: repeat(3, 1fr);
  }
}

/*# sourceMappingURL=app.css.map*/