/************************
*
* PLAN DES SCSS
*
01 => CONFIG
02 => LAYOUT
03 => PAGES
04 => COMPOSANTS
*
*
*************************/
/* Box sizing rules */
@import "../../editor-style.css";
*, *::before, *::after {
  box-sizing: border-box;
}
/* Remove default padding */
ul[class], ol[class] {
  padding: 0;
}
p:not(:only-child) {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
html {
  scroll-behavior: smooth;
}
h1 ~ p, h2 ~ p, h3 ~ p, h4 ~ p {
  margin-top: 1rem;
}
/* Remove default margin */
body, h1, h2, h3, h4, p, ul[class], ol[class], li, figure, figcaption, blockquote, dl, dd {
  margin: 0;
}
/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  max-width: 100vw;
}
body #wrapper-content {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background-color: #fff;
  max-width: 100%;
  position: relative;
}
body #wrapper-content #content {
  flex-grow: 1;
}
/* Remove list styles on ul, ol elements with a class attribute */
ul[class], ol[class] {
  list-style: none;
}
/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}
/* Make images easier to work with */
img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}
a {
  text-decoration: none;
}
/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}
/* Inherit fonts for inputs and buttons */
input, button, textarea, select {
  font: inherit;
}
/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
h1, h2, h3, h4, h5, h6 {
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}
/*
@use "sass:math";
*/
/**
*
* Espacement
*
****************/
/**
    *
    * Padding
    *
    ****************/
.px_1 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
@media screen and (max-width: 768px) {
  .px_1 {
    padding-left: calc($spacer, 2) * 1;
    padding-right: calc($spacer, 2) * 1;
  }
}
.pl_1 {
  padding-left: 1.5rem;
}
@media screen and (max-width: 768px) {
  .pl_1 {
    padding-left: calc($spacer, 2) * 1;
  }
}
.pr_1 {
  padding-right: 1.5rem;
}
@media screen and (max-width: 768px) {
  .pr_1 {
    padding-right: calc($spacer, 2) * 1;
  }
}
.py_1 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 768px) {
  .py_1 {
    padding-top: calc($spacer, 2) * 1;
    padding-bottom: calc($spacer, 2) * 1;
  }
}
.pt_1 {
  padding-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .pt_1 {
    padding-top: calc($spacer, 2) * 1;
  }
}
.pb_1 {
  padding-bottom: 1.5rem;
}
@media screen and (max-width: 768px) {
  .pb_1 {
    padding-bottom: calc($spacer, 2) * 1;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_1 {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
@media screen and (max-width: 768px) {
  .mx_1 {
    margin-left: calc($spacer, 2) * 1;
    margin-right: calc($spacer, 2) * 1;
  }
}
.ml_1 {
  margin-left: 1.5rem;
}
@media screen and (max-width: 768px) {
  .ml_1 {
    margin-left: calc($spacer, 2) * 1;
  }
}
.mr_1 {
  margin-right: 1.5rem;
}
@media screen and (max-width: 768px) {
  .mr_1 {
    margin-right: calc($spacer, 2) * 1;
  }
}
.my_1 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 768px) {
  .my_1 {
    margin-top: calc($spacer, 2) * 1;
    margin-bottom: calc($spacer, 2) * 1;
  }
}
.mt_1 {
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .mt_1 {
    margin-top: calc($spacer, 2) * 1;
  }
}
.mb_1 {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 768px) {
  .mb_1 {
    margin-bottom: calc($spacer, 2) * 1;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_2 {
  padding-left: 3rem;
  padding-right: 3rem;
}
@media screen and (max-width: 768px) {
  .px_2 {
    padding-left: calc($spacer, 2) * 2;
    padding-right: calc($spacer, 2) * 2;
  }
}
.pl_2 {
  padding-left: 3rem;
}
@media screen and (max-width: 768px) {
  .pl_2 {
    padding-left: calc($spacer, 2) * 2;
  }
}
.pr_2 {
  padding-right: 3rem;
}
@media screen and (max-width: 768px) {
  .pr_2 {
    padding-right: calc($spacer, 2) * 2;
  }
}
.py_2 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .py_2 {
    padding-top: calc($spacer, 2) * 2;
    padding-bottom: calc($spacer, 2) * 2;
  }
}
.pt_2 {
  padding-top: 3rem;
}
@media screen and (max-width: 768px) {
  .pt_2 {
    padding-top: calc($spacer, 2) * 2;
  }
}
.pb_2 {
  padding-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .pb_2 {
    padding-bottom: calc($spacer, 2) * 2;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_2 {
  margin-left: 3rem;
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .mx_2 {
    margin-left: calc($spacer, 2) * 2;
    margin-right: calc($spacer, 2) * 2;
  }
}
.ml_2 {
  margin-left: 3rem;
}
@media screen and (max-width: 768px) {
  .ml_2 {
    margin-left: calc($spacer, 2) * 2;
  }
}
.mr_2 {
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  .mr_2 {
    margin-right: calc($spacer, 2) * 2;
  }
}
.my_2 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .my_2 {
    margin-top: calc($spacer, 2) * 2;
    margin-bottom: calc($spacer, 2) * 2;
  }
}
.mt_2 {
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .mt_2 {
    margin-top: calc($spacer, 2) * 2;
  }
}
.mb_2 {
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .mb_2 {
    margin-bottom: calc($spacer, 2) * 2;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_3 {
  padding-left: 4.5rem;
  padding-right: 4.5rem;
}
@media screen and (max-width: 768px) {
  .px_3 {
    padding-left: calc($spacer, 2) * 3;
    padding-right: calc($spacer, 2) * 3;
  }
}
.pl_3 {
  padding-left: 4.5rem;
}
@media screen and (max-width: 768px) {
  .pl_3 {
    padding-left: calc($spacer, 2) * 3;
  }
}
.pr_3 {
  padding-right: 4.5rem;
}
@media screen and (max-width: 768px) {
  .pr_3 {
    padding-right: calc($spacer, 2) * 3;
  }
}
.py_3 {
  padding-top: 4.5rem;
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .py_3 {
    padding-top: calc($spacer, 2) * 3;
    padding-bottom: calc($spacer, 2) * 3;
  }
}
.pt_3 {
  padding-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .pt_3 {
    padding-top: calc($spacer, 2) * 3;
  }
}
.pb_3 {
  padding-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .pb_3 {
    padding-bottom: calc($spacer, 2) * 3;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_3 {
  margin-left: 4.5rem;
  margin-right: 4.5rem;
}
@media screen and (max-width: 768px) {
  .mx_3 {
    margin-left: calc($spacer, 2) * 3;
    margin-right: calc($spacer, 2) * 3;
  }
}
.ml_3 {
  margin-left: 4.5rem;
}
@media screen and (max-width: 768px) {
  .ml_3 {
    margin-left: calc($spacer, 2) * 3;
  }
}
.mr_3 {
  margin-right: 4.5rem;
}
@media screen and (max-width: 768px) {
  .mr_3 {
    margin-right: calc($spacer, 2) * 3;
  }
}
.my_3 {
  margin-top: 4.5rem;
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .my_3 {
    margin-top: calc($spacer, 2) * 3;
    margin-bottom: calc($spacer, 2) * 3;
  }
}
.mt_3 {
  margin-top: 4.5rem;
}
@media screen and (max-width: 768px) {
  .mt_3 {
    margin-top: calc($spacer, 2) * 3;
  }
}
.mb_3 {
  margin-bottom: 4.5rem;
}
@media screen and (max-width: 768px) {
  .mb_3 {
    margin-bottom: calc($spacer, 2) * 3;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_4 {
  padding-left: 6rem;
  padding-right: 6rem;
}
@media screen and (max-width: 768px) {
  .px_4 {
    padding-left: calc($spacer, 2) * 4;
    padding-right: calc($spacer, 2) * 4;
  }
}
.pl_4 {
  padding-left: 6rem;
}
@media screen and (max-width: 768px) {
  .pl_4 {
    padding-left: calc($spacer, 2) * 4;
  }
}
.pr_4 {
  padding-right: 6rem;
}
@media screen and (max-width: 768px) {
  .pr_4 {
    padding-right: calc($spacer, 2) * 4;
  }
}
.py_4 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .py_4 {
    padding-top: calc($spacer, 2) * 4;
    padding-bottom: calc($spacer, 2) * 4;
  }
}
.pt_4 {
  padding-top: 6rem;
}
@media screen and (max-width: 768px) {
  .pt_4 {
    padding-top: calc($spacer, 2) * 4;
  }
}
.pb_4 {
  padding-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .pb_4 {
    padding-bottom: calc($spacer, 2) * 4;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_4 {
  margin-left: 6rem;
  margin-right: 6rem;
}
@media screen and (max-width: 768px) {
  .mx_4 {
    margin-left: calc($spacer, 2) * 4;
    margin-right: calc($spacer, 2) * 4;
  }
}
.ml_4 {
  margin-left: 6rem;
}
@media screen and (max-width: 768px) {
  .ml_4 {
    margin-left: calc($spacer, 2) * 4;
  }
}
.mr_4 {
  margin-right: 6rem;
}
@media screen and (max-width: 768px) {
  .mr_4 {
    margin-right: calc($spacer, 2) * 4;
  }
}
.my_4 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .my_4 {
    margin-top: calc($spacer, 2) * 4;
    margin-bottom: calc($spacer, 2) * 4;
  }
}
.mt_4 {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .mt_4 {
    margin-top: calc($spacer, 2) * 4;
  }
}
.mb_4 {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .mb_4 {
    margin-bottom: calc($spacer, 2) * 4;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_5 {
  padding-left: 7.5rem;
  padding-right: 7.5rem;
}
@media screen and (max-width: 768px) {
  .px_5 {
    padding-left: calc($spacer, 2) * 5;
    padding-right: calc($spacer, 2) * 5;
  }
}
.pl_5 {
  padding-left: 7.5rem;
}
@media screen and (max-width: 768px) {
  .pl_5 {
    padding-left: calc($spacer, 2) * 5;
  }
}
.pr_5 {
  padding-right: 7.5rem;
}
@media screen and (max-width: 768px) {
  .pr_5 {
    padding-right: calc($spacer, 2) * 5;
  }
}
.py_5 {
  padding-top: 7.5rem;
  padding-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .py_5 {
    padding-top: calc($spacer, 2) * 5;
    padding-bottom: calc($spacer, 2) * 5;
  }
}
.pt_5 {
  padding-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .pt_5 {
    padding-top: calc($spacer, 2) * 5;
  }
}
.pb_5 {
  padding-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .pb_5 {
    padding-bottom: calc($spacer, 2) * 5;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_5 {
  margin-left: 7.5rem;
  margin-right: 7.5rem;
}
@media screen and (max-width: 768px) {
  .mx_5 {
    margin-left: calc($spacer, 2) * 5;
    margin-right: calc($spacer, 2) * 5;
  }
}
.ml_5 {
  margin-left: 7.5rem;
}
@media screen and (max-width: 768px) {
  .ml_5 {
    margin-left: calc($spacer, 2) * 5;
  }
}
.mr_5 {
  margin-right: 7.5rem;
}
@media screen and (max-width: 768px) {
  .mr_5 {
    margin-right: calc($spacer, 2) * 5;
  }
}
.my_5 {
  margin-top: 7.5rem;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .my_5 {
    margin-top: calc($spacer, 2) * 5;
    margin-bottom: calc($spacer, 2) * 5;
  }
}
.mt_5 {
  margin-top: 7.5rem;
}
@media screen and (max-width: 768px) {
  .mt_5 {
    margin-top: calc($spacer, 2) * 5;
  }
}
.mb_5 {
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .mb_5 {
    margin-bottom: calc($spacer, 2) * 5;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_6 {
  padding-left: 9rem;
  padding-right: 9rem;
}
@media screen and (max-width: 768px) {
  .px_6 {
    padding-left: calc($spacer, 2) * 6;
    padding-right: calc($spacer, 2) * 6;
  }
}
.pl_6 {
  padding-left: 9rem;
}
@media screen and (max-width: 768px) {
  .pl_6 {
    padding-left: calc($spacer, 2) * 6;
  }
}
.pr_6 {
  padding-right: 9rem;
}
@media screen and (max-width: 768px) {
  .pr_6 {
    padding-right: calc($spacer, 2) * 6;
  }
}
.py_6 {
  padding-top: 9rem;
  padding-bottom: 9rem;
}
@media screen and (max-width: 768px) {
  .py_6 {
    padding-top: calc($spacer, 2) * 6;
    padding-bottom: calc($spacer, 2) * 6;
  }
}
.pt_6 {
  padding-top: 9rem;
}
@media screen and (max-width: 768px) {
  .pt_6 {
    padding-top: calc($spacer, 2) * 6;
  }
}
.pb_6 {
  padding-bottom: 9rem;
}
@media screen and (max-width: 768px) {
  .pb_6 {
    padding-bottom: calc($spacer, 2) * 6;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_6 {
  margin-left: 9rem;
  margin-right: 9rem;
}
@media screen and (max-width: 768px) {
  .mx_6 {
    margin-left: calc($spacer, 2) * 6;
    margin-right: calc($spacer, 2) * 6;
  }
}
.ml_6 {
  margin-left: 9rem;
}
@media screen and (max-width: 768px) {
  .ml_6 {
    margin-left: calc($spacer, 2) * 6;
  }
}
.mr_6 {
  margin-right: 9rem;
}
@media screen and (max-width: 768px) {
  .mr_6 {
    margin-right: calc($spacer, 2) * 6;
  }
}
.my_6 {
  margin-top: 9rem;
  margin-bottom: 9rem;
}
@media screen and (max-width: 768px) {
  .my_6 {
    margin-top: calc($spacer, 2) * 6;
    margin-bottom: calc($spacer, 2) * 6;
  }
}
.mt_6 {
  margin-top: 9rem;
}
@media screen and (max-width: 768px) {
  .mt_6 {
    margin-top: calc($spacer, 2) * 6;
  }
}
.mb_6 {
  margin-bottom: 9rem;
}
@media screen and (max-width: 768px) {
  .mb_6 {
    margin-bottom: calc($spacer, 2) * 6;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_7 {
  padding-left: 10.5rem;
  padding-right: 10.5rem;
}
@media screen and (max-width: 768px) {
  .px_7 {
    padding-left: calc($spacer, 2) * 7;
    padding-right: calc($spacer, 2) * 7;
  }
}
.pl_7 {
  padding-left: 10.5rem;
}
@media screen and (max-width: 768px) {
  .pl_7 {
    padding-left: calc($spacer, 2) * 7;
  }
}
.pr_7 {
  padding-right: 10.5rem;
}
@media screen and (max-width: 768px) {
  .pr_7 {
    padding-right: calc($spacer, 2) * 7;
  }
}
.py_7 {
  padding-top: 10.5rem;
  padding-bottom: 10.5rem;
}
@media screen and (max-width: 768px) {
  .py_7 {
    padding-top: calc($spacer, 2) * 7;
    padding-bottom: calc($spacer, 2) * 7;
  }
}
.pt_7 {
  padding-top: 10.5rem;
}
@media screen and (max-width: 768px) {
  .pt_7 {
    padding-top: calc($spacer, 2) * 7;
  }
}
.pb_7 {
  padding-bottom: 10.5rem;
}
@media screen and (max-width: 768px) {
  .pb_7 {
    padding-bottom: calc($spacer, 2) * 7;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_7 {
  margin-left: 10.5rem;
  margin-right: 10.5rem;
}
@media screen and (max-width: 768px) {
  .mx_7 {
    margin-left: calc($spacer, 2) * 7;
    margin-right: calc($spacer, 2) * 7;
  }
}
.ml_7 {
  margin-left: 10.5rem;
}
@media screen and (max-width: 768px) {
  .ml_7 {
    margin-left: calc($spacer, 2) * 7;
  }
}
.mr_7 {
  margin-right: 10.5rem;
}
@media screen and (max-width: 768px) {
  .mr_7 {
    margin-right: calc($spacer, 2) * 7;
  }
}
.my_7 {
  margin-top: 10.5rem;
  margin-bottom: 10.5rem;
}
@media screen and (max-width: 768px) {
  .my_7 {
    margin-top: calc($spacer, 2) * 7;
    margin-bottom: calc($spacer, 2) * 7;
  }
}
.mt_7 {
  margin-top: 10.5rem;
}
@media screen and (max-width: 768px) {
  .mt_7 {
    margin-top: calc($spacer, 2) * 7;
  }
}
.mb_7 {
  margin-bottom: 10.5rem;
}
@media screen and (max-width: 768px) {
  .mb_7 {
    margin-bottom: calc($spacer, 2) * 7;
  }
}
/**
    *
    * Padding
    *
    ****************/
.px_8 {
  padding-left: 12rem;
  padding-right: 12rem;
}
@media screen and (max-width: 768px) {
  .px_8 {
    padding-left: calc($spacer, 2) * 8;
    padding-right: calc($spacer, 2) * 8;
  }
}
.pl_8 {
  padding-left: 12rem;
}
@media screen and (max-width: 768px) {
  .pl_8 {
    padding-left: calc($spacer, 2) * 8;
  }
}
.pr_8 {
  padding-right: 12rem;
}
@media screen and (max-width: 768px) {
  .pr_8 {
    padding-right: calc($spacer, 2) * 8;
  }
}
.py_8 {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .py_8 {
    padding-top: calc($spacer, 2) * 8;
    padding-bottom: calc($spacer, 2) * 8;
  }
}
.pt_8 {
  padding-top: 12rem;
}
@media screen and (max-width: 768px) {
  .pt_8 {
    padding-top: calc($spacer, 2) * 8;
  }
}
.pb_8 {
  padding-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .pb_8 {
    padding-bottom: calc($spacer, 2) * 8;
  }
}
/**
    *
    * Margin
    *
    ****************/
.mx_8 {
  margin-left: 12rem;
  margin-right: 12rem;
}
@media screen and (max-width: 768px) {
  .mx_8 {
    margin-left: calc($spacer, 2) * 8;
    margin-right: calc($spacer, 2) * 8;
  }
}
.ml_8 {
  margin-left: 12rem;
}
@media screen and (max-width: 768px) {
  .ml_8 {
    margin-left: calc($spacer, 2) * 8;
  }
}
.mr_8 {
  margin-right: 12rem;
}
@media screen and (max-width: 768px) {
  .mr_8 {
    margin-right: calc($spacer, 2) * 8;
  }
}
.my_8 {
  margin-top: 12rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .my_8 {
    margin-top: calc($spacer, 2) * 8;
    margin-bottom: calc($spacer, 2) * 8;
  }
}
.mt_8 {
  margin-top: 12rem;
}
@media screen and (max-width: 768px) {
  .mt_8 {
    margin-top: calc($spacer, 2) * 8;
  }
}
.mb_8 {
  margin-bottom: 12rem;
}
@media screen and (max-width: 768px) {
  .mb_8 {
    margin-bottom: calc($spacer, 2) * 8;
  }
}
/**
 *
 * CLASS POUR MODIFIER LA TAILLE
 *
****************/
.width_40 {
  width: 40% !important;
}
@media screen and (max-width: 960px) {
  .width_40 {
    width: 100% !important;
  }
}
.widthcenter_40 {
  width: 40%;
}
.width_50 {
  width: 50% !important;
}
@media screen and (max-width: 960px) {
  .width_50 {
    width: 100% !important;
  }
}
.widthcenter_50 {
  width: 50%;
}
.width_60 {
  width: 60% !important;
}
@media screen and (max-width: 960px) {
  .width_60 {
    width: 100% !important;
  }
}
.widthcenter_60 {
  width: 60%;
}
.width_70 {
  width: 70% !important;
}
@media screen and (max-width: 960px) {
  .width_70 {
    width: 100% !important;
  }
}
.widthcenter_70 {
  width: 70%;
}
.width_80 {
  width: 80% !important;
}
@media screen and (max-width: 960px) {
  .width_80 {
    width: 100% !important;
  }
}
.widthcenter_80 {
  width: 80%;
}
.width_90 {
  width: 90% !important;
}
@media screen and (max-width: 960px) {
  .width_90 {
    width: 100% !important;
  }
}
.widthcenter_90 {
  width: 90%;
}
[class*="widthcenter_"] {
  margin-left: auto !important;
  margin-right: auto !important;
}
@media screen and (max-width: 960px) {
  [class*="widthcenter_"] {
    width: 100% !important;
  }
}
@media screen and (max-width: 960px) {
  [class*="width_"] {
    width: 100% !important;
  }
}
/**
*
* Text alignement
*
****************/
.text-center {
  text-align: center;
}
.text-center img {
  margin-left: auto;
  margin-right: auto;
}
.text-right {
  text-align: right;
}
.text-right img {
  margin-left: auto;
  margin-right: 0;
}
/**
*
* Align in row
*
****************/
.align-items-center > .m1_row {
  align-items: center;
}
/**
*
* Default blanc
*
****************/
.couleur_blanc {
  color: white;
}
/**
*
* background color
*
****************/
.bg_primary {
  background-color: #3b414c;
}
.bg_noir {
  background-color: #35302d;
}
.bg_grisC {
  background-color: #f1f1f1;
}
.bg_blanc {
  background-color: #ffffff;
}
.bg_vertdeau {
  background-color: #00a29e;
}
.bg_vertdeau-peps {
  background-color: #0ec2b9;
}
.bg_bleuF {
  background-color: #02415d;
}
.bg_bleu {
  background-color: #0071ae;
}
.bg_beigeF {
  background-color: #7a6e66;
}
.bg_beige {
  background-color: #BEB8B5;
}
/**
*
* Colonne
*
****************/
.col2 p, .col3 p {
  margin: 0 !important;
}
.col2 ul, .col3 ul {
  margin-top: 0 !important;
}
@media screen and (min-width: 960px) {
  .col2 {
    columns: 2;
    column-gap: 25px;
    column-fill: balance;
  }
  .col3 {
    columns: 3;
    column-gap: 25px;
    column-fill: balance;
  }
}
#g-footer {
  background-color: #3b414c;
  border: 0px;
  padding: 2rem 0rem;
}
body {
  font-family: "Montserrat", sans-serif, sans-serif;
  font-size: 16px;
  font-weight: 400;
}
body #content a:not([class]) {
  transition: color 300ms ease;
  color: c("noir");
}
body #content a:not([class]):hover {
  color: c("blanc");
}
.py_aucun {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}
.text_right {
  text-align: right;
}
.medium-number {
  font-weight: 900;
  font-size: 1.5rem;
}
@media screen and (min-width: 960px) {
  .medium-number {
    font-size: calc(map-get($map: $font_sizes, $key: $size) * 1.15);
  }
}
@media screen and (min-width: 1200px) {
  .medium-number {
    font-size: calc(map-get($map: $font_sizes, $key: $size) * 1.25);
  }
}
.couleur_blanc {
  color: white;
}
.img_radius {
  border-radius: 3rem 0px 3rem 0px;
  overflow: hidden;
}
.liste_puce ul {
  list-style: none;
}
.liste_puce ul li {
  padding-left: 15px;
  position: relative;
}
.liste_puce ul li:before {
  content: "";
  position: absolute;
  display: block;
  height: 6px;
  width: 6px;
  border-radius: 50%;
  top: 10px;
  left: 0%;
  background-color: #00a29e;
}
/*---------------------- HERO ----------------------*/
#totop {
  width: 50px;
  height: 50px;
  background-color: #00a29e;
  border-radius: 50%;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999;
  cursor: pointer;
  transform: scale(1);
  transition: all 0.3s ease-in-out;
  box-shadow: 1px 1px 3px rgba(53, 48, 45, 0.5);
  opacity: 0.5;
}
#totop:hover {
  background-color: #02415d;
  transform: scale(1.2);
  transition: all 0.3s ease-in-out;
  opacity: 1;
}
#totop i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%) rotate(180deg);
  width: 20px;
  height: 20px;
}
#totop i::before, #totop i::after {
  content: "";
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
#totop i::before {
  background-image: url("../icons/dropdown-blanc.svg");
  -svg-mixer-fill: #ffffff;
  opacity: 0;
  transition: opacity 300ms;
}
#totop i::after {
  background-image: url("../icons/dropdown-blanc.svg");
  -svg-mixer-fill: #ffffff;
  opacity: 1;
  transition: opacity 300ms;
}
#totop i:hover::after {
  opacity: 0;
}
#totop i:hover::before {
  opacity: 1;
}
.btn_primary {
  background-color: #00a29e;
  color: white;
  padding: 0.6rem 1rem;
  border: 1px solid #00a29e;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  transition: background-color 0.3s ease-in-out;
  margin-left: 60px;
}
.btn_primary::before {
  content: "";
  width: 60px;
  height: calc(100% + 2px);
  border: 1px solid #00a29e;
  background: url("../img/before-btn.svg") no-repeat center / 34px;
  display: block;
  position: absolute;
  background-color: #fff;
  left: -60px;
  top: -1px;
  transition: left 600ms ease, opacity 600ms ease;
}
.btn_primary::after {
  content: "";
  width: 30px;
  height: 12px;
  display: block;
  background: url("../img/arrow-btn.svg") no-repeat center / contain;
  display: inline-block;
  margin-left: 16px;
}
.btn_primary:hover {
  background-color: #006f6c;
}
.btn_primary:hover::before {
  left: calc(100%);
  opacity: 0;
}
.btn_plein_blanc {
  background-color: #fff;
  color: #00a29e;
  padding: 0.6rem 1rem;
  border: 1px solid #fff;
  position: relative;
  display: inline-block;
  text-transform: uppercase;
  transition: background-color 0.3s ease-in-out;
  margin-left: 60px;
  transition: all 0.3s ease-in-out;
}
.btn_plein_blanc::before {
  content: "";
  width: 60px;
  height: calc(100% + 2px);
  border: 1px solid #fff;
  background: url("../img/before-btn-blanc.svg") no-repeat center / 34px;
  display: block;
  position: absolute;
  left: -60px;
  top: -1px;
  transition: left 600ms ease, opacity 600ms ease;
}
.btn_plein_blanc::after {
  content: "";
  width: 30px;
  height: 12px;
  display: block;
  background-image: url("../icons/arrow-btn.svg");
  -svg-mixer-fill: #00a29e;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  display: inline-block;
  margin-left: 16px;
}
.btn_plein_blanc:hover {
  background-color: #006f6c;
  color: #ffffff;
}
.btn_plein_blanc:hover::before {
  left: calc(100%);
  opacity: 0;
}
fieldset {
  width: 100%;
  border-color: rgba(255, 255, 255, 0.25);
  border-style: solid;
  border-width: 1px;
  border-radius: 15px;
  margin-bottom: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
fieldset legend {
  text-transform: uppercase;
  font-weight: 700;
  font-family: "Montserrat", sans-serif;
  padding-left: 8px;
  padding-right: 8px;
  color: #ffffff;
}
fieldset textarea {
  width: 100%;
  border-radius: 0;
  outline: none;
  border-top: 2px solid #ffffff;
  border-left: 0px solid #ffffff;
  border-right: 0px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  padding: 8px 16px;
  height: 140px;
  background-color: transparent;
  color: #ffffff;
}
fieldset .form_label {
  font-weight: bold;
  display: block;
  color: #ffffff;
}
fieldset .label_alerte {
  color: #ffffff;
}
fieldset input {
  border-radius: 0;
  outline: none;
  background-color: transparent;
  border-top: 0px solid #ffffff;
  border-left: 0px solid #ffffff;
  border-right: 0px solid #ffffff;
  border-bottom: 2px solid #ffffff;
  padding: 8px 16px;
  color: #ffffff;
}
fieldset select {
  border-radius: 0;
  outline: none;
  border: 1px solid rgba(255, 255, 255, 0.35);
  padding: 8px 16px;
  width: 100%;
}
fieldset .wpcf7-text {
  width: 100%;
}
fieldset ::placeholder {
  color: #ffffff;
}
fieldset [class*="col-"]:not(:last-child):not(:only-child) {
  margin-bottom: 2.9rem;
  display: inline-block;
}
fieldset .wpcf7-form-control-wrap.civilite .wpcf7-list-item {
  margin-right: 1rem !important;
}
fieldset .wpcf7-form-control-wrap.civilite .wpcf7-list-item > label .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  color: #ffffff;
}
fieldset .wpcf7-form-control-wrap.civilite .wpcf7-list-item > label .wpcf7-list-item-label::before {
  content: "";
  border: 1px solid #ffffff;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  margin-right: 8px;
  display: block;
}
fieldset .wpcf7-form-control-wrap.civilite .wpcf7-list-item > label input[type="radio"] {
  display: none;
}
fieldset .wpcf7-form-control-wrap.civilite .wpcf7-list-item > label input[type="radio"]:checked ~ .wpcf7-list-item-label::before {
  border: 2px solid white;
  box-shadow: 0 0 0 1px white;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-checkbox {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  -webkit-column-gap: 10px;
  -moz-column-gap: 10px;
  column-gap: 10px;
  display: block;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-checkbox .wpcf7-list-item {
  display: block;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-list-item > label .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  color: #ffffff;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-list-item > label .wpcf7-list-item-label::before {
  content: "";
  border: 1px solid #ffffff;
  width: 13px;
  height: 13px;
  margin-right: 8px;
  display: block;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-list-item > label input[type="checkbox"] {
  display: none;
}
fieldset .wpcf7-form-control-wrap.besoin .wpcf7-list-item > label input[type="checkbox"]:checked ~ .wpcf7-list-item-label::before {
  border: 2px solid white;
  box-shadow: 0 0 0 1px white;
}
.wpcf7-list-item {
  color: #ffffff !important;
  margin: 0rem !important;
}
.acceptance {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
  color: #ffffff;
}
.acceptanceBloc {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
}
.acceptanceBloc .acceptance_txt {
  color: #ffffff;
}
.acceptanceBloc .wpcf7-acceptance {
  color: #ffffff !important;
  position: relative;
}
.acceptanceBloc .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"]:checked:before {
  border: 2px solid white;
  box-shadow: 0 0 0 1px white;
}
.acceptanceBloc .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"]::before {
  content: "";
  border: 1px solid #ffffff;
  width: 13px;
  height: 13px;
  margin-right: 8px;
  display: block;
}
.acceptanceBloc .wpcf7-acceptance .wpcf7-list-item input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
}
.wpcf7 {
  padding-bottom: 4rem;
}
@media screen and (max-width: 540px) {
  .wpcf7 {
    padding-top: 4rem;
  }
  .wpcf7 .text-right {
    text-align: center;
  }
}
.wpcf7 .row {
  margin-left: -10px;
  margin-right: -10px;
}
.wpcf7 .row [class*="col-"] {
  padding-left: 10px;
  padding-right: 10px;
}
.wrapper-btn-submit {
  position: relative;
  font-size: 16px;
  text-align: center;
  position: relative;
  z-index: 1;
  cursor: pointer;
  width: 280px;
}
.wrapper-btn-submit:before {
  content: "";
  position: absolute;
  background-color: #0071ae;
  display: inline-block;
  border-radius: 25px;
  top: 4px;
  left: 4px;
  right: 4px;
  bottom: 4px;
  z-index: -1;
  transition: background-color 300ms ease;
}
.wrapper-btn-submit:after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  height: 15px;
  width: 10px;
  background-position: 50% 50%;
  background-size: 10px;
  top: 50%;
  right: 24px;
  transform: translateY(-50%) rotate(0deg);
  transition: all 0.3s ease-in-out;
}
.wrapper-btn-submit:hover:after {
  transform: translateY(-50%) rotate(90deg);
  transition: all 0.3s ease-in-out;
}
.wrapper-btn-submit input {
  color: #ffffff;
  padding: 0.625rem 4rem;
  font-weight: 400;
  background-color: transparent;
  border: none;
  outline: none;
}
.wrapper-btn-submit .ajax-loader {
  position: absolute;
}
.wpcf7-not-valid-tip {
  font-size: 12px;
  padding-top: 8px;
}
.form_submit {
  position: relative;
}
.form_submit .popit {
  position: absolute;
  background-color: white;
  bottom: 0;
  transform: translateY(calc(100% + 20px)) translateX(calc(-50% - 0px));
  left: 50%;
  width: 100%;
  color: #000;
  padding: 1rem;
  border-radius: 5px;
  box-shadow: 0px -4px 24px #00000020;
  font-size: 14px;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease;
}
.form_submit .popit::before {
  content: "";
  position: absolute;
  display: inline-block;
  height: 0;
  width: 0;
  border-right: 6px solid transparent;
  border-bottom: 8px solid #fff;
  border-left: 6px solid transparent;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
}
.wpcf7-acceptance .wpcf7-list-item {
  margin-left: 0;
  font-size: 14px;
  line-height: 1.2;
}
.wpcf7-acceptance .wpcf7-list-item label {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
}
.wpcf7-acceptance .wpcf7-list-item label input[type="checkbox"] {
  height: 20px !important;
  border-radius: 50% !important;
  flex: 0 1 20px;
  margin: 5px 10px;
}
.wpcf7-acceptance .wpcf7-list-item label > span {
  flex: 1 1;
  padding-left: 10px;
}
@media screen and (max-width: 768px) {
  .wpcf7-acceptance .wpcf7-list-item label {
    justify-content: center;
    margin-bottom: 1rem;
  }
  .wpcf7-acceptance .wpcf7-list-item label > span {
    padding-left: 0;
  }
}
/**
*
*
*------------------------------------------------------------------------------------------ PLAN DU SITE */
.wsp-container {
  margin-bottom: 0rem !important;
}
.wsp-pages-title, .wsp-posts-title, .wsp-emplois-title {
  font-size: 1.5rem;
  position: relative;
  padding: 24px 0px 24px 40px;
  line-height: 1.3;
  color: #00a29e;
  margin-top: 2rem;
}
@media screen and (min-width: 960px) {
  .wsp-pages-title, .wsp-posts-title, .wsp-emplois-title {
    font-size: calc(map-get($map: $font_sizes, $key: $size) * 1.15);
  }
}
@media screen and (min-width: 1200px) {
  .wsp-pages-title, .wsp-posts-title, .wsp-emplois-title {
    font-size: calc(map-get($map: $font_sizes, $key: $size) * 1.25);
  }
}
.wsp-pages-title:before, .wsp-posts-title:before, .wsp-emplois-title:before {
  content: "";
  height: 30px;
  width: 30px;
  background-color: #00a29e;
  position: absolute;
  display: block;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
}
.wsp-container {
  border-bottom: 1px solid #00a29e;
  padding-bottom: 30px;
  margin-bottom: 30px;
}
.wsp-pages-list .page_item_has_children > a, .wsp-posts-list .page_item_has_children > a, .wsp-emplois-list .page_item_has_children > a {
  font-weight: 600;
}
.wsp-pages-list a, .wsp-posts-list a, .wsp-emplois-list a {
  color: #3b414c;
  transition: all 0.3s ease-in-out;
}
.wsp-pages-list a:hover, .wsp-posts-list a:hover, .wsp-emplois-list a:hover {
  color: #00a29e !important;
  transition: all 0.3s ease-in-out;
}
/***************************************	MEDIA
****************************************/
/* Large desktops and laptops */
@media (min-width: 1200px) {
  .wsp-pages-list, .wsp-emplois-list {
    -moz-column-count: 3;
    -webkit-column-count: 3;
    -o-column-count: 3;
    column-count: 3;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
  .wsp-posts-list > li {
    width: 100%;
  }
  .wsp-posts-list > li strong {
    margin-bottom: 1rem;
    display: block;
  }
  .wsp-posts-list > li > .wsp-posts-list, .wsp-posts-list > li .wsp-emplois-list {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
}
/* Landscape tablets and medium desktops */
@media (min-width: 992px) and (max-width: 1199px) {
  .wsp-pages-list, .wsp-emplois-list {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
  .wsp-posts-list > li, .wsp-emplois-list > li {
    width: 100%;
  }
  .wsp-posts-list > li strong, .wsp-emplois-list > li strong {
    margin-bottom: 1rem;
    display: block;
  }
  .wsp-posts-list > li > .wsp-posts-list, .wsp-emplois-list > li > .wsp-posts-list {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
}
/* Portrait tablets and small desktops */
@media (min-width: 768px) and (max-width: 991px) {
  .wsp-pages-list, .wsp-emplois-list {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
  .wsp-posts-list > li, .wsp-emplois-list > li {
    width: 100%;
  }
  .wsp-posts-list > li strong, .wsp-emplois-list > li strong {
    margin-bottom: 1rem;
    display: block;
  }
  .wsp-posts-list > li > .wsp-posts-list, .wsp-emplois-list > li > .wsp-posts-list {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    -o-column-count: 2;
    column-count: 2;
    -moz-column-gap: 20px;
    -webkit-column-gap: 20px;
    -o-column-gap: 20px;
    column-gap: 20px;
  }
}
/* Landscape phones and portrait tablets */
/* Portrait phones and smaller */
