@import url('https://fonts.googleapis.com/css2?family=Prompt:ital,wght@0,300;0,400;0,500;0,700;1,400;1,600;1,700&display=swap');
html, body, ol, pre, form, fieldset, blockquote, th, td {
  margin: 0;
  padding: 0; }

div, ul, li, h1, h2, h3, h4, h5, h6, input, textarea, p {
  margin: 0;
  padding: 0; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

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

fieldset, img {
  border: 0; }

ol, ul {
  list-style: none; }

.clear {
  clear: both; }

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/* 

  How to use:
  
  container :
  @include container();
  
  media query :
  @include breakpoint(laptop) {
    background: #79b8a3;
  }
  
  row :
  @include row(
    $mobile: 100% | 12,
    $phablet: 50% | 6,
    $tablet: 33.33% | 4,
    $laptop: 25% | 3,
    $desktop: 12.5% | 2,
    $desktopXL: 8.33% | 1,
  );

  gutter :
  @include gutter(
    $mobile: 10px | 1%,
    $phablet: 20px | 2%,
    $tablet: 30px | 3%,
    $laptop: 40px | 4%,
    $desktop: 50px | 5%,
    $desktopXL: 60px | 6%,
  );
  @include gutterVertical(
    $mobile: 10px,
    $phablet: 20px,
    $tablet: 30px,
    $laptop: 40px,
    $desktop: 50px,
    $desktopXL: 60px,
  );

  column :
  @include col(
    $mobile: 100% | 12,
    $phablet: 50% | 6,
    $tablet: 33.33% | 4,
    $laptop: 25% | 3,
    $desktopXL: 12.5% | 2,
    $desktop: 8.33% | 1,
  )

  offset :
  @include offset(
    $mobile: 100% | 12,
    $phablet: 50% | 6,
    $tablet: 33.33% | 4,
    $laptop: 25% | 3,
    $desktopXL: 12.5% | 2,
    $desktop: 8.33% | 1,
  )


  column with fixed width :
  @include row(nowrap);
  
  .children:nth-child(1) {
     @include col(150px);
  } 

 */
/* breakpoints */
/* container */
/* grid */
/* sprites */
body {
  margin: 0;
  padding: 0; }
  body.-openLayer {
    overflow: hidden; }

/*******************GLOBAL******************/
.page__histoire {
  min-height: 100vh; }

.page__layer__cursor {
  position: absolute;
  left: -1000px;
  top: -1000px;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out;
  display: none; }
  @media screen and (min-width: 768px) {
    .page__layer__cursor {
      display: block; } }
  .page__layer__cursor img {
    display: none; }
    @media screen and (min-width: 768px) {
      .page__layer__cursor img {
        position: absolute;
        width: 420px;
        height: auto;
        top: 50%;
        left: 50%;
        -webkit-transform: translateX(-50%) translateY(-50%);
                transform: translateX(-50%) translateY(-50%);
        display: block; } }
    @media screen and (min-width: 1400px) {
      .page__layer__cursor img {
        width: 640px; } }
  .page__layer__cursor .page__layer__cursor__svg {
    display: none;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    pointer-events: none; }
    .page__layer__cursor .page__layer__cursor__svg span {
      font-family: 'Prompt', sans-serif;
      font-weight: 700;
      font-size: 18px;
      color: #1B1B1B;
      letter-spacing: 1px;
      position: absolute;
      left: 12px;
      top: 50%;
      -webkit-transform: translateY(-70%);
              transform: translateY(-70%); }
  .page__layer__cursor .page__layer__cursor__circle {
    display: none;
    position: absolute;
    width: 26px;
    height: 26px;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%);
    border: 1px solid #1B1B1B;
    border-radius: 100%;
    pointer-events: none;
    z-index: 1; }
    .page__layer__cursor .page__layer__cursor__circle::before {
      position: absolute;
      content: '';
      width: 10px;
      height: 10px;
      top: 50%;
      left: 50%;
      -webkit-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      background: #1B1B1B;
      border-radius: 100%; }

.page__background__timeline {
  position: absolute;
  max-width: 140px;
  width: 150px;
  height: 100vh;
  top: 0;
  right: 0;
  text-align: right;
  z-index: 1;
  margin: 0 0 0 auto;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out;
  transition: opacity 0.2s ease-in-out; }
  .page__background__timeline.-fixedTimeline {
    position: fixed;
    top: 0;
    right: 0;
    opacity: 1; }
  @media screen and (min-width: 768px) {
    .page__background__timeline {
      position: fixed;
      top: 0;
      right: 0;
      width: 190px;
      max-width: 100%;
      visibility: visible !important;
      opacity: 1 !important;
      -webkit-transform: none !important;
              transform: none !important; } }
  .page__background__timeline img {
    position: relative;
    width: auto;
    height: 100vh;
    display: block;
    float: right; }

@-webkit-keyframes moveDown {
  0% {
    margin-top: 0;
    opacity: 0; }
  20% {
    margin-top: 0;
    opacity: 1; }
  90% {
    margin-top: 30px;
    opacity: 0; }
  100% {
    margin-top: 0;
    opacity: 0; } }

@keyframes moveDown {
  0% {
    margin-top: 0;
    opacity: 0; }
  20% {
    margin-top: 0;
    opacity: 1; }
  90% {
    margin-top: 30px;
    opacity: 0; }
  100% {
    margin-top: 0;
    opacity: 0; } }

/**************************
VIDEO
**************************/
.valeurs__video {
  background: #000000;
  margin-bottom: 40px; }
  @media screen and (min-width: 768px) {
    .valeurs__video {
      margin-bottom: 0; } }
  .valeurs__video .video-desktop {
    display: none; }
    @media screen and (min-width: 768px) {
      .valeurs__video .video-desktop {
        display: block; } }
  @media screen and (min-width: 768px) {
    .valeurs__video .video-mobile {
      display: none; } }
  .valeurs__video video {
    width: 100%;
    height: auto;
    display: block; }

/**************************
QUOTE
**************************/
.valeurs__quote {
  background: #f2f2f5;
  margin-bottom: 40px;
  overflow: hidden; }
  @media screen and (min-width: 768px) {
    .valeurs__quote {
      padding: 84px 0;
      margin-bottom: 88px;
      border-top: 6px solid #74ecf7; } }
  @media screen and (min-width: 768px) {
    .valeurs__quote .valeurs__quote__container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      width: 60%; } }
  .valeurs__quote .valeurs__quote__img {
    position: relative;
    width: 100%;
    background: #FFFFFF;
    padding-bottom: 11px;
    z-index: 0; }
    @media screen and (min-width: 768px) {
      .valeurs__quote .valeurs__quote__img {
        width: 46px;
        margin-right: 24px;
        background: transparent; } }
    .valeurs__quote .valeurs__quote__img::before {
      position: absolute;
      content: "";
      width: 100vw;
      height: 100%;
      top: 0;
      left: 0;
      background: #FFFFFF;
      margin-left: -16px;
      z-index: -1; }
      @media screen and (min-width: 768px) {
        .valeurs__quote .valeurs__quote__img::before {
          content: none; } }
  .valeurs__quote .valeurs__quote__content {
    position: relative;
    padding: 48px 0; }
    @media screen and (min-width: 768px) {
      .valeurs__quote .valeurs__quote__content {
        width: calc(100% - 70px);
        padding: 0; } }
    .valeurs__quote .valeurs__quote__content::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 6px;
      background: #74ecf7;
      top: 0;
      left: 0; }
      @media screen and (min-width: 768px) {
        .valeurs__quote .valeurs__quote__content::before {
          content: none; } }
  .valeurs__quote .valeurs__quote__text {
    font-family: 'Prompt', sans-serif;
    font-weight: 600;
    font-size: 26px;
    line-height: 34px;
    color: #1B1B1B;
    margin-bottom: 16px; }
    @media screen and (min-width: ) {
      .valeurs__quote .valeurs__quote__text {
        font-size: 36px;
        line-height: 44px; } }
  .valeurs__quote .valeurs__quote__name {
    font-family: 'Prompt', sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #6d6c6c;
    margin-bottom: 0; }
  .valeurs__quote .valeurs__quote__job {
    font-family: 'Prompt', sans-serif;
    font-style: italic;
    font-weight: 400;
    font-size: 16px;
    color: #6d6c6c;
    margin-bottom: 0; }

/**************************
FULL IMG + TEXT
**************************/
.valeurs__fullimgtext {
  margin-bottom: 48px; }
  .valeurs__fullimgtext .js-anim {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 0;
    -webkit-transition: all 0.7s cubic-bezier(0.32, 0.47, 0.45, 1);
    transition: all 0.7s cubic-bezier(0.32, 0.47, 0.45, 1); }
  @media screen and (min-width: 768px) {
    .valeurs__fullimgtext.-leftMargin .valeurs__fullimgtext__content {
      margin-left: 8.33%; } }
  .valeurs__fullimgtext.-elementVisible .js-anim {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
  @media screen and (min-width: 768px) {
    .valeurs__fullimgtext {
      margin-bottom: 88px; } }
  .valeurs__fullimgtext img {
    width: 100%;
    height: auto;
    display: block; }
  .valeurs__fullimgtext .valeurs__fullimgtext__content {
    position: relative;
    padding: 20px 8px 8px 8px;
    margin-top: -30px;
    background: #FFFFFF; }
    @media screen and (min-width: 992px) {
      .valeurs__fullimgtext .valeurs__fullimgtext__content {
        width: 67%;
        padding: 40px 100px 48px 100px;
        margin-top: -200px; } }
    .valeurs__fullimgtext .valeurs__fullimgtext__content::before {
      position: absolute;
      content: "";
      width: calc(100% - 8px);
      height: 3px;
      top: -3px;
      right: 0;
      background: #74ecf7; }
      @media screen and (min-width: 992px) {
        .valeurs__fullimgtext .valeurs__fullimgtext__content::before {
          width: calc(100% - 16px);
          height: 8px;
          top: auto;
          bottom: -8px; } }
    .valeurs__fullimgtext .valeurs__fullimgtext__content::after {
      position: absolute;
      content: "";
      width: 3px;
      height: 50px;
      top: -3px;
      right: -3px;
      background: #74ecf7; }
      @media screen and (min-width: 992px) {
        .valeurs__fullimgtext .valeurs__fullimgtext__content::after {
          width: 8px;
          height: calc(100% - 16px);
          top: auto;
          right: -8px;
          bottom: -8px; } }
    .valeurs__fullimgtext .valeurs__fullimgtext__content h2 {
      font-family: 'Prompt', sans-serif;
      font-weight: 700;
      font-size: 32px;
      line-height: 39px;
      color: #1B1B1B;
      text-transform: uppercase;
      margin-bottom: 7px; }
      @media screen and (min-width: 992px) {
        .valeurs__fullimgtext .valeurs__fullimgtext__content h2 {
          font-size: 62px;
          line-height: 84px;
          text-align: center;
          margin-bottom: 32px; } }
    .valeurs__fullimgtext .valeurs__fullimgtext__content p {
      font-family: 'Prompt', sans-serif;
      font-weight: 400;
      font-size: 16px;
      line-height: 24px;
      color: #1B1B1B; }

/**************************
TEXT + IMG
**************************/
.valeurs__textimg {
  margin-bottom: 48px;
  overflow: hidden; }
  .valeurs__textimg .js-anim {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 0;
    -webkit-transition: all 0.7s cubic-bezier(0.32, 0.47, 0.45, 1);
    transition: all 0.7s cubic-bezier(0.32, 0.47, 0.45, 1); }
  .valeurs__textimg.-elementVisible .js-anim {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1; }
  @media screen and (min-width: 768px) {
    .valeurs__textimg {
      margin-bottom: 88px; } }
  .valeurs__textimg .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .valeurs__textimg h2 {
    font-family: 'Prompt', sans-serif;
    font-weight: 700;
    font-size: 32px;
    line-height: 39px;
    color: #1B1B1B;
    text-transform: uppercase;
    margin-bottom: 24px; }
    @media screen and (min-width: 992px) {
      .valeurs__textimg h2 {
        font-size: 62px;
        line-height: 84px; } }
  .valeurs__textimg p {
    font-family: 'Prompt', sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #1B1B1B; }
  .valeurs__textimg img {
    width: 100%;
    max-width: 1000px;
    height: auto;
    display: block; }
  .valeurs__textimg .valeurs__textimg__left {
    margin-bottom: 24px; }
    @media screen and (min-width: 992px) {
      .valeurs__textimg .valeurs__textimg__left {
        width: calc(40% - 4%);
        margin-right: 4%;
        margin-bottom: 0; } }
  .valeurs__textimg .valeurs__textimg__right {
    width: 100%; }
    @media screen and (min-width: 992px) {
      .valeurs__textimg .valeurs__textimg__right {
        width: calc(60% - 4%);
        margin-left: 4%; } }
  .valeurs__textimg.-full img {
    width: 100vw;
    margin-left: -16px; }
    @media screen and (min-width: 768px) {
      .valeurs__textimg.-full img {
        margin-left: -40px; } }
    @media screen and (min-width: 992px) {
      .valeurs__textimg.-full img {
        width: calc(100% + (50vw - 89%));
        margin-left: 0; } }
  .valeurs__textimg.-reverse .valeurs__textimg__left {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 0; }
  .valeurs__textimg.-reverse .valeurs__textimg__right {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 24px; }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-half img {
      width: calc(100% + (50vw - 117%)); } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-half .valeurs__textimg__left {
      width: 50%;
      padding-left: 8%;
      margin-right: 0; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-half .valeurs__textimg__right {
      width: 50%;
      padding-left: 8%;
      margin-left: 0; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-reverse.-full .valeurs__textimg__left {
      margin-left: 4%;
      margin-right: 0; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-reverse.-full .valeurs__textimg__right {
      margin-left: 0;
      margin-right: 4%; }
      .valeurs__textimg.-reverse.-full .valeurs__textimg__right img {
        float: right;
        width: calc(100% + (50vw - 86%));
        margin-left: 0; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-reverse.-full.-half .valeurs__textimg__left {
      margin-left: 0;
      padding-left: 0;
      padding-right: 8%; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-reverse.-full.-half .valeurs__textimg__right {
      padding-right: 8%;
      margin-right: 0; }
      .valeurs__textimg.-reverse.-full.-half .valeurs__textimg__right img {
        width: calc(100% + (50vw - 122%)); } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-small .container {
      width: 84%; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-small .valeurs__textimg__left {
      width: 50%;
      padding: 0 4.5%;
      margin-right: 0; } }
  @media screen and (min-width: 992px) {
    .valeurs__textimg.-small .valeurs__textimg__right {
      width: 50%;
      margin-left: 0; } }
  .valeurs__textimg.-small .valeurs__textimg__right img {
    width: 87%;
    margin: 0 auto; }
    @media screen and (min-width: 992px) {
      .valeurs__textimg.-small .valeurs__textimg__right img {
        width: 91%; } }