.container {
  text-align: center;

  h1,
  h2,
  h3 {
    font-family: Lato-Black;
    margin: 0;
    z-index: 10;
    position: relative;
  }

  .subtitle {
    font-size: 34px;
    line-height: 42px;

    sup {
      font-size: 16px;
    }
  }

  .presentation {
    font-size: 20px;
    line-height: 27px;
    z-index: 10;
    position: relative;
    color: var(--color-primary);
    padding: 0 40px 20px;
  }

  @media (max-width: 1290px) {
    .subtitle {
      font-size: 28px;
      line-height: 33px;
    }
  }

  @media (max-width: 1190px) {
    .subtitle {
      font-size: 22px;
      line-height: 28px;

      sup {
        font-size: 11px;
      }
    }

    .presentation {
      font-size: 16px;
      line-height: 20px;
    }
  }

  @media (max-width: 935px) {
    .subtitle {
      font-size: 20px;
      line-height: 25px;
      max-width: 90%;
      display: inline-block;
    }

    .presentation {
      font-size: 14px;
      width: 600px;
      margin: 0 auto;
      max-width: 100%;
      padding: 0 25px 20px;
    }
  }

  @media (max-width: 580px) {
    .subtitle {
      font-size: 17px;
      line-height: 22px;
    }
  }
}

/*COVER*/

.cover {
  position: relative;
  max-width: 1380px;
  margin: 45px auto;
  color: var(--color-primary);

  .icon_engaged {
    position: absolute;
    width: 320px;
    top: 0;
    left: 30px;
  }

  h1 {
    font-size: 65px;
    line-height: 70px;
    padding: 25px 0 30px;
  }

  .number {
    position: absolute;
    bottom: 0;
    .icon {
      display: inline-block;
      vertical-align: middle;
      margin: 0 20px 0 0;
      position: relative;
      left: -100px;
      transition: all 1s;
      opacity: 0;
    }

    div {
      display: inline-block;
      vertical-align: middle;
      font-size: 35px;
      line-height: 43px;
      color: #1381c3;

      strong {
        display: block;
        font-family: Lato-Black;
      }
    }
  }

  @media (max-width: 1290px) {
    h1 {
      font-size: 58px;
      line-height: 60px;
    }

    .number {
      div {
        font-size: 30px;
        line-height: 38px;
      }
    }
  }

  @media (max-width: 1190px) {
    margin: 45px auto 20px;

    .icon_engaged {
      width: 250px;
      top: -20px;
      left: 20px;
    }

    h1 {
      font-size: 48px;
      line-height: 52px;
      padding: 0 0 25px;
    }

    .number {
      .icon {
        margin: 0 14px 0 0;
      }

      div {
        font-size: 25px;
        line-height: 30px;
      }
    }
  }

  @media (max-width: 935px) {
    margin: 35px auto 10px;

    .icon_engaged {
      width: 200px;
      top: -10px;
    }

    h1 {
      font-size: 34px;
      line-height: 37px;
    }

    .number {
      position: relative;
      margin: 20px 0 25px;
      text-align: center;
      right: -15px;
      .icon {
        display: inline-block;
      }
      div {
        font-size: 22px;
        line-height: 27px;
        text-align: left;
      }
    }
  }

  @media (max-width: 580px) {
    .icon_engaged {
      width: 85px;
      top: -25px;
      left: 8px;
    }

    h1 {
      font-size: 30px;
      line-height: 35px;
    }

    .number {
      right: -15px;
      div {
        font-size: 18px;
        line-height: 23px;
        width: 60%;
      }

      .icon {
        width: 90px;
        margin: 0 10px 0 0;
      }
    }
  }
}

.cover_page {
  text-align: left;
  margin: 0;
  .img {
    height: 500px;
    width: 458px;
    display: inline-block;
    vertical-align: top;
    background-size: 458px auto;
  }

  .content {
    display: inline-block;
    vertical-align: top;
    padding: 0 0 0 80px;
    width: 870px;

    h1 {
      padding: 0 0 30px;
    }

    .presentation {
      padding: 0;
    }

    .breadcrumb {
      padding: 30px 0 20px;
    }

    .liste_lien_ancre {
      text-align: left;
      font-size: 20px;
      font-family: Lato-Bold;
      padding: 30px 0 0;
      width: 150%;

      .lien_ancre {
        margin: 0 25px 0 0;
      }
    }
  }

  @media (max-width: 1400px) {
    .img {
      width: 33%;
      background-position: center;
    }

    .content {
      padding: 0 0 0 4%;
      width: 60%;
    }
  }

  @media (max-width: 1290px) {
    .img {
      height: 420px;
      background-size: 430px auto;
    }
    .content {
      width: 63%;

      .liste_lien_ancre {
        width: auto;
        padding: 10px 0 0;
        font-size: 18px;

        .lien_ancre {
          padding: 10px 0 0;
        }
      }
    }
  }

  @media (max-width: 935px) {
    .img {
      width: 100%;
      height: 300px;
      background-size: 935px auto;
      background-position: top -200px center;
    }

    .content {
      width: auto;
      padding: 0 30px;

      .breadcrumb {
        padding: 12px 35px 20px 25px;
        position: absolute;
        color: white;
        top: 0;
        background-image: url("img/shadow3-361d5c00e2f71376effe6194ec129552.webp");
        background-repeat: no-repeat;
        background-size: 100% auto;
        left: 0;

        a {
          color: white;
        }
      }

      h1 {
        padding: 20px 0;
      }

      .presentation {
        padding: 0;
        width: auto;
      }

      .liste_lien_ancre {
        text-align: center;
        font-size: 17px;
        padding: 0;
        display: none;

        .lien_ancre {
          margin: 0 7px;
        }
      }
    }
  }

  @media (max-width: 580px) {
    .img {
      background-size: 580px auto;
      background-position: top -90px center;
      height: 250px;
    }

    .content {
      padding: 0 25px;
    }
  }

  @media (max-width: 470px) {
    .img {
      background-size: 100% auto;
      height: 220px;
    }
  }
}

/*PART PUSH*/

.part_push {
  padding: 30px 0;
  h2 {
    font-size: 45px;
    line-height: 48px;
    padding: 0 0 20px;
  }

  .block {
    width: 615px;
    display: inline-block;
    vertical-align: top;
    text-align: left;
    padding: 20px 0;
    max-width: 44.5%;

    .subtitle {
      .icon,
      div {
        display: inline-block;
        vertical-align: middle;
      }

      div {
        padding: 0 0 0 15px;
      }
    }

    .ban_article {
      &.midwidth {
        width: auto;
        margin: 15px 0 0;

        .contenu_ban_article {
          margin: 30px;
          padding: 25px 30px;
          height: 215px;

          .description {
            font-family: Lato-Regular;
            padding: 0 0 30px;
          }

          .cta {
            position: absolute;
            bottom: 30px;
          }
        }

        .link_popin {
          position: absolute;
          color: var(--blue-500);
          bottom: -60px;
          left: -30px;
        }
      }
    }
  }

  .block_1 {
    margin: 0 4% 0 0;

    .ban_article {
      &.midwidth {
        .contenu_ban_article {
          .description {
            position: relative;
            top: 10px;
          }
        }
      }
    }
  }

  @media (max-width: 1290px) {
    h2 {
      font-size: 40px;
      line-height: 45px;
      width: 90%;
      margin: 0 auto;
    }

    .block {
      .ban_article {
        &.midwidth {
          .contenu_ban_article {
            height: 230px;
          }
        }
      }
    }

    .block_1 {
      .ban_article {
        &.midwidth {
          .contenu_ban_article {
            .description {
              position: static;
            }
          }
        }
      }
    }
  }

  @media (max-width: 1190px) {
    h2 {
      font-size: 35px;
      line-height: 42px;
    }

    .block {
      .ban_article {
        &.midwidth {
          background-size: auto 105%;
        }
      }
    }
  }

  @media (max-width: 1030px) {
    .block {
      max-width: 100%;
      padding: 10px 0;

      .ban_article {
        &.midwidth {
          background-size: 620px auto;
          .contenu_ban_article {
            height: auto;
            margin: 25px;
            padding: 20px 25px;

            .description {
              padding: 0 0 20px;

              p {
                padding: 0;
              }
            }

            .cta {
              position: static;
              margin: 0;
            }
          }

          .link_popin {
            bottom: -55px;
            left: -25px;
          }
        }
      }
    }

    .block_1 {
      margin: 0;
    }
  }

  @media (max-width: 935px) {
    h2 {
      font-size: 28px;
      line-height: 33px;
    }
  }

  @media (max-width: 730px) {
    .block {
      margin: 0 30px;
      width: auto;

      .icon {
        height: 45px;
      }
    }
  }

  @media (max-width: 580px) {
    .block {
      .subtitle {
        display: block;

        div {
          text-align: left;
          padding: 0 0 0 50px;
        }

        .icon {
          position: absolute;
          right: -10px;
        }
      }
    }

    .block_1 {
      margin-bottom: 10px;
    }

    h2 {
      font-size: 22px;
      line-height: 27px;
    }
  }

  @media (max-width: 400px) {
    .block {
      .subtitle {
        .icon {
          right: -30px;
        }
      }
    }
  }
}

/*PART WEBSERIE*/

.part_webserie {
  padding: 25px 0 50px;

  .subtitle {
    padding: 0 0 15px;
  }

  .block {
    max-width: 100%;
    height: 200px;
    background-image: url("img/img_webserie_catherine-532846f352bec8145613ce6a09611af4.webp");
    display: inline-block;
    vertical-align: top;
    margin: 15px 0.9% 30px;
    text-align: left;
    width: 300px;
    background-position: center;
    background-size: 300px auto;

    .content {
      -webkit-backdrop-filter: blur(50px);
      backdrop-filter: blur(50px);
      margin: 20px;
      padding: 15px 20px;
      display: inline-block;
      color: white;

      p {
        padding: 0;
      }

      h3 {
        color: white;
        font-size: 18px;
        line-height: 22px;
        padding: 0 0 15px;
      }

      .ico_play {
        display: inline-block;
        vertical-align: middle;
      }

      .customer {
        display: inline-block;
        vertical-align: middle;
        line-height: 21px;
        padding: 0 0 0 10px;
      }
    }
  }

  .webserie_mob {
    width: 1295px;
    margin: 0 auto;
    padding: 0 0 20px;
    max-width: 94%;
  }

  .webserie_mob .swiper-wrapper {
    padding: 0 0 10px;
  }

  .presentation {
    a {
      font-family: Lato-Black;
      color: var(--blue-500);
      padding: 5px 0 0;
      display: block;

      .arrow {
        width: 18px;
        margin: 0 0 0 5px;
      }
    }
  }

  @media (max-width: 1190px) {
    .block {
      height: 177px;
      background-size: auto 100%;
      .content {
        padding: 15px;
        margin: 15px;
        h3 {
          font-size: 16px;
          line-height: 20px;
        }

        .ico_play {
          width: 30px;
        }
      }
    }
  }

  @media (max-width: 1100px) {
    .webserie_mob {
      display: block;
      padding: 0 0 20px 3%;
      max-width: 100%;
    }

    .webserie_desk {
      display: none;
    }

    .swiper-wrapper {
      height: 240px;
    }

    .block {
      max-width: 100%;
      width: 100%;
      background-size: 100% auto;
      background-position: top center;
      height: 200px;
    }
  }

  @media (max-width: 935px) {
    .block {
      background-size: 375px auto;
    }
  }

  @media (max-width: 730px) {
    padding: 25px 0 20px;

    .webserie_mob {
      padding: 0 0 20px 20px;
    }

    .block {
      background-size: 100% auto;
    }
  }

  @media (max-width: 440px) {
    .block {
      background-size: 315px auto;

      .content {
        h3 {
          font-size: 15px;
          line-height: 19px;
        }
        .customer {
          line-height: 18px;
          padding: 0 0 0 5px;
        }
      }
    }
  }
}

/*PART CARROUSEL*/

.part_carousel {
  padding: 60px 0 0;
  color: var(--color-primary);
  .menu {
    display: inline-block;
    vertical-align: top;
    width: 350px;
    text-align: left;

    a {
      color: var(--color-primary);
    }
  }

  .swiper-carrousel {
    display: none;
  }

  .item_menu_carrousel {
    padding: 0 0 10px;
    cursor: pointer;

    img {
      display: inline-block;
      vertical-align: middle;
      width: 180px;
    }

    .content {
      display: inline-block;
      vertical-align: middle;
      width: 150px;
      line-height: 19px;
      font-family: Lato-Bold;
      padding: 0 0 0 20px;

      .arrow {
        display: none;
      }
    }
  }

  #link_popin_projet {
    text-decoration: underline;
    cursor: pointer;
  }

  .item_menu_carrousel_select {
    color: #1381c3;
  }

  .content_carrousel {
    display: inline-block;
    vertical-align: top;
    width: 940px;
    padding: 0 0 0 40px;
    .slide_carrousel {
      text-align: left;
      display: none;

      a {
        color: var(--color-primary);
      }

      .img {
        width: 100%;
        height: 345px;
        background-position: center;
        margin: 0 0 42px;
        position: relative;

        .copyright {
          position: absolute;
          color: white;
          font-family: Lato-Black;
          font-size: 12px;
          bottom: 3px;
          right: 10px;
        }
      }

      h2 {
        font-size: 30px;
        line-height: 35px;
        padding: 0 0 30px;
      }

      .number {
        background-color: #e7f2f8;
        text-align: center;
        padding: 25px 0 35px;
        width: 22.3%;
        display: inline-block;
        vertical-align: top;
        margin: 0 1% 0 0;
        line-height: 22px;
        height: 195px;

        p {
          padding: 15px 0 0;
          height: 80px;
        }
      }

      .number_large {
        width: 30.5%;
      }

      .number_large_2 {
        width: 35%;
      }

      .number_last {
        margin-right: 0;
      }
    }

    .slide_carrousel_1 {
      display: block;
    }
  }

  @media (max-width: 1440px) {
    .menu {
      width: 27%;
    }
    .content_carrousel {
      width: 65%;
      padding: 0 0 0 1%;
    }
  }

  @media (max-width: 1260px) {
    padding: 50px 0 0;
    .menu {
      width: 33%;
    }

    .item_menu_carrousel {
      img {
        width: 150px;
      }
    }

    .content_carrousel {
      width: 60%;
      padding: 0 0 0 1%;

      .slide_carrousel {
        .img {
          margin: 0 0 25px;
        }

        h2 {
          font-size: 25px;
          line-height: 30px;
          padding: 0 0 20px;
        }

        p {
          padding: 0 0 5px;
        }

        .number {
          width: 47.9%;
          line-height: 21px;
          margin: 0 2% 15px 0;
        }

        .number_2 {
          margin-right: 0;
        }
      }
    }
  }

  @media (max-width: 935px) {
    .menu {
      width: 32%;
    }

    .item_menu_carrousel {
      img {
        width: 100px;
      }

      .content {
        padding: 0 0 0 10px;
        width: 120px;
      }
    }
  }

  @media (max-width: 730px) {
    padding: 10px 0 0;
    .menu {
      width: 100%;
    }

    .item_menu_carrousel {
      width: auto;
      height: auto;
      display: block;
      margin: 25px 30px 0;
      max-width: 100%;
      padding: 1px 0;
      background-position: top -30px right;
      color: white;
      background-size: 100% auto;

      .content {
        margin: 20px;
        width: 180px;
        -webkit-backdrop-filter: blur(50px);
        backdrop-filter: blur(50px);
        background-color: rgba(0, 0, 0, 0.15);
        padding: 15px 20px;

        .text {
          font-size: 17px;
          line-height: 21px;
          font-family: Lato-Black;
          height: 60px;
        }

        .arrow {
          width: 37px;
          margin: 10px 0 0;
          display: block;
        }
      }

      img {
        display: none;
      }
    }

    .content_carrousel {
      .slide_carrousel {
        position: fixed;
        background-color: white;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 100000;
        overflow-y: scroll;
        display: none;

        .img {
          height: 280px;
          margin: 28px 0 25px;
        }

        .content {
          padding: 0 25px 25px;
        }

        .number {
          line-height: 19px;
          padding: 20px 0;
          height: 160px;
          margin-top: 13px;
          margin-bottom: 0;

          p {
            padding: 10px 0 0;
          }
        }

        .btn_close {
          background-image: url("img/bt_close_popin-d0ffdb77ea4efa852a80d50e1c1eee83.webp");
          cursor: pointer;
          position: absolute;
          width: 18px;
          height: 18px;
          top: 5px;
          right: 5px;
          background-repeat: no-repeat;
          z-index: 1000;
          background-size: 100%;
        }
      }
    }
  }

  @media (max-width: 580px) {
    .item_menu_carrousel {
      margin: 20px 25px 0;
      background-position: center top;
      background-size: 114% auto;
      .content {
        width: 160px;
        margin: 15px;
        padding: 10px 15px;

        .text {
          font-size: 15px;
          line-height: 20px;
          padding-top: 10px;
        }

        .arrow {
          width: 30px;
        }
      }
    }

    .item_menu_carrousel_2,
    .item_menu_carrousel_7 {
      .content {
        .text {
          padding-top: 0;
        }
      }
    }

    .content_carrousel {
      .slide_carrousel {
        .img {
          height: 210px;
          background-size: 580px auto;
          margin: 28px 0 20px;

          .copyright {
            font-size: 11px;
          }
        }

        h2 {
          font-size: 20px;
          line-height: 27px;
          padding: 0 0 15px;
        }

        .number {
          height: auto;
          width: 100%;
          text-align: left;
          padding: 15px;
          margin-right: 0;

          img {
            display: inline-block;
            vertical-align: middle;
            width: 40px;
          }

          .icon_pt {
            width: 28px;
            margin: 0 6px;
          }

          p {
            padding: 0 0 0 15px;
            width: 80%;
            display: inline-block;
            vertical-align: middle;
            height: auto;
          }

          br {
            display: none;
          }
        }
      }
    }
  }
}

/*BAN PARTNER*/

.ban_partner {
  border: solid 1px #1381c2;
  width: 1294px;
  text-align: center;
  padding: 30px 0;
  margin: 30px auto;
  color: var(--color-primary);

  img {
    display: inline-block;
    vertical-align: middle;
  }

  p {
    padding: 0;
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    padding: 0 0 0 55px;
    width: 74%;
  }

  @media (max-width: 1440px) {
    width: 92%;
  }

  @media (max-width: 1260px) {
    width: 93%;
    padding: 25px 0;

    img {
      width: 150px;
    }

    p {
      padding: 0 0 0 30px;
      width: 76%;
    }
  }

  @media (max-width: 935px) {
    width: auto;
    margin: 25px 30px 10px;
    img {
      width: 110px;
    }

    p {
      padding: 0 0 0 25px;
      width: 71%;
    }
  }

  @media (max-width: 580px) {
    margin: 0 25px 10px;
    padding: 20px;

    p {
      padding: 15px 0 0;
      width: auto;
      text-align: center;
    }
  }
}
