.page-cas-michelin{
  background-color: #012d70;
  color: #fff;
  & picture{
    & img{
      max-height: 100%;
      height: 100%;
    }
  }
  & .title{
    color: #00f0d4;
    text-transform: uppercase;
    font-size: 1.6rem;
    font-weight: 500;
  }
  & .topPageCas{
    & .text{
      & p{
        width: 650px;
      }
    }
  }
  & .text {
    & p{
      width: 900px;
      max-width: 100%;
    }
  }
  & .casDetails{
    position: relative;
    margin-top: -5rem;
  }
  .fancybox__content {
      clip-path: none;
  }
}
.content_center{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 100%;
}
.michelinIntro{
  position: relative;
  z-index: 1;
  padding: 0;
  & picture{
    width: 100%;
    height: 800px;
    display: block;
    opacity: 0;
    visibility: hidden;
    & img{
      height: 100%;
      width: 100%;
      object-fit: cover;
      object-position: center right;
      -o-object-fit: cover;
      -o-object-position: center right;
      vertical-align: middle;
    }
  }
  &:before{
    content: '';
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 60%;
    bottom: 0;
    left: 0;
    background: linear-gradient(0deg, rgb(1, 45, 112) 0%, rgba(1, 45, 112, 0) 100%);
  }
}

.projetPulse{
    & .container{
        display: grid;
        grid-template-columns: 300px 1fr;
        width: 1200px;
        max-width: 100%;
        margin: 0 auto;
        position: relative;
    }
}
.pulseVisual{
    position: absolute;
    width: calc(300px + 10%);
    left: -10%;
    top: -15%;
    opacity: 0;
    & picture{
      display: block;
    }
    &:before{
      content: '';
      width: 200px;
      height: 200px;
      max-width: 40%;
      border-radius: 50%;
      background-color: #2384ff;
      position: absolute;
      left: -10%;
      top: -10%;
      filter: blur(70px);
      z-index: 1;
    }
    &:after{
      content: '';
      width: 200px;
      height: 200px;
      max-width: 40%;
      border-radius: 50%;
      background-color: #2384ff;
      position: absolute;
      right: 0;
      bottom: 0;
      filter: blur(70px);
      z-index: 1;
    }
}
.pulsePlay{
    position: absolute;
    left: calc(50% - 2rem);
    bottom: 30%;
    background-color: transparent;
    outline: none;
    border: none;
    width: 4rem;
    height: 4rem;
    cursor: pointer;
    opacity: 0;
    transform: scale(.7);
    z-index: 2;
    & svg{
        fill: #45dd89;
        transition: transform 0.3s ease;
        & .plain{
            fill: #fff;
        }
    }
    &:hover{
        & svg{
          transform: scale(1.1);
        }
    }
}
.pulseTitle{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: clamp(1.1rem, 1.3vw, 1.4rem);
    text-transform: uppercase;
    position: absolute;
    width: 100%;
    bottom: 10%;
    left: 0;
    z-index: 2;
    & div{
      opacity: 0;
      transform: scale(.8);
    }
    & p{
        text-align: center;
    }
    & .innovate{
        font-size: clamp(1.8rem, 3vw, 2.6rem);
        font-weight: bold;
        font-family: 'Michelin', sans-serif;
        font-style: italic;
    }
    & .impulse{
        & strong{
            font-weight: bold;
            font-family: 'Michelin', sans-serif;
            font-style: italic;
        }
    }
}
.pulseContent{
    position: relative;
    grid-area: 1 / 2 / 2 / 3;
    z-index: 1;
    & .text{
      & p{
        width: auto;
      }
    }
    & ul{
        list-style: disc;
        padding-left: 1.6rem;
    }
    & li{
        margin: .4rem 0;
    }
}

.projetButterflyVisual{
    padding: 0 2rem;
}
.biobutterflyVisual-lite{
    display: none;
}
.projetButterfly{
     & .container{
        width: 1200px;
        max-width: 100%;
        margin: 0 auto;
        padding: 4rem 0;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 4rem;
     }
     & .text{
      & p{
        width: auto;
      }
    }
}
.projetButterfly_video{
    width: 300px;
    min-width: 300px;
    height: 300px;
    position: relative;
    cursor: pointer;
    & picture{
        width: 100%;
        height: 100%;
        display: block;
        & img{
          transition: transform 1s ease;
        }
    }
    &:hover{
        & picture{
            & img{
              transform: rotate(180deg);
            }
        }
        & .butterflyPlay{
            & img{
              transform: scale(.9);
            }
        }
    }
}
.butterflyPlay{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    transform: scale(.7);
    & img{
      transition: transform .3s ease;
    }
}

.projetDCAPPVisual{
    padding: 0;
    position: relative;
    overflow: hidden;
    &:before{
      content: '';
      width: 100%;
      height: 60%;
      position: absolute;
      bottom: 0;
      left: 0;
      background: linear-gradient(0deg, rgb(1, 45, 112) 0%, rgba(1, 45, 112, 0) 100%);
      z-index: 1;
    }
}
.dcappVisual{
  position: relative;
  width: 100%;
  height: 100%;
  & picture{
    width: 100%;
    height: 100%;
    display: block;
  }
  & img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    -o-object-fit: cover;
    -o-object-position: center;
    vertical-align: middle;
  }
}
.dcappVisual_title{
  position: absolute;
  z-index: 2;
  width: auto;
  top: 40%;
  right: 20%;
  font-size: clamp(1.6rem, 3.5vw, 2.6rem);
  font-weight: bold;
  font-family: 'Arial Black', sans-serif;
  letter-spacing: .2rem;
}
.shapeCyber{
  fill: none;
  stroke: #fee300;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 5px;
  position: absolute;
  width: 130px;
  height: 170px;
  left: -90px;
  top: -90px;
}
.logo-dcapp{
  width: 300px;
  position: absolute;
  left: 10%;
  top: 50%;
  z-index: 2;
}

.projetDCAPP{
    position: relative;
    z-index: 2;
    margin-top: -10rem;
    & .container{
        width: 1200px;
        max-width: 100%;
        margin: 0 auto;
        padding: 4rem 0 4rem 0;
    }
    &:after{
        content: '';
        width: 100%;
        height: 100vh;
        position: absolute;
        bottom: -50vh;
        left: 0;
        border-radius: 50%;
        background-color: #01abcc;
        filter: blur(200px);
        z-index: 0;
    }
}

.mockupCyber{
    display: flex;
    justify-content: center;
    width: 900px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.cyberPictos{
    width: 1400px;
    max-width: 100%;
    margin: 0 auto 3rem auto;
    position: relative;
    z-index: 1;
}

.swiperCyber{
    &:not(.swiper-initialized){
        overflow: visible;
        & .swiper-wrapper{
            justify-content: center;
            display: flex;
            gap: 0 2rem;
        }
        & .swiper-slide{
            width: calc(100% / 6 - 2rem);
        }
    }
}
.swiperCyber_item{
    width: 150px;
    height: 150px;    
    position: relative;
    & picture{
        user-select: none;
        display: block;
        height: 100%;
        width: 100%;
    }
}
.swiperCyber_item_top, .swiperCyber_item_bottom{
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.preFooter{
  z-index: 2;
}
footer{
  z-index: 3;
}

/* SWIPER */

.swiper:not(.swiper-initialized) .tranding-slider-control {
    display: none;
  }
  .swiper.swiper-initialized {
    padding-bottom: 3rem;
  }
  .swiper.swiper-initialized.few-slides {
    padding-bottom: 0;
  }
  .swiper.swiper-initialized.few-slides .swiper-wrapper {
    justify-content: center;
  }
  .swiper.swiper-initialized.few-slides .tranding-slider-control {
    display: none;
  }

  .tranding-slider-control {
    position: absolute;
    bottom: 0;
    height: 3rem;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .tranding-slider-control.dark .swiper-button-next svg, .tranding-slider-control.dark .swiper-button-prev svg {
    stroke: #fff;
  }
  .tranding-slider-control.dark .swiper-pagination-bullet {
    border-color: #fff;
  }
  .tranding-slider-control.dark .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #fff;
  }

  .swiper-button-next, .swiper-button-prev {
    position: initial;
    width: 1.5rem;
    height: 1.2rem;
    margin-top: 0;
    margin: 0 0.5rem;
  }
  .swiper-button-next svg, .swiper-button-prev svg {
    width: 1.5rem;
    height: 1.2rem;
    stroke-width: 2px;
    fill: none;
    stroke: #FFFFFF;
    stroke-linecap: round;
    stroke-linejoin: round;
  }
  .swiper-button-next:after, .swiper-button-prev:after {
    content: none;
  }

  .swiper-pagination {
    position: initial;
    display: flex;
    align-items: center;
  }
  .swiper-pagination:not(.swiper-pagination-bullets-dynamic) {
    width: auto !important;
  }
  .swiper-pagination.swiper-pagination-bullets-dynamic {
    display: block;
    transform: translateX(0) !important;
    width: 120px !important;
  }

  .swiper-pagination-bullet {
    width: 1rem;
    height: 1rem;
    opacity: 1;
    background-color: transparent;
    border: 1px solid #FFFFFF;
    transform: scale(0.8);
    transition: background-color 0.2s cubic-bezier(0, 0.07, 0.57, 0.99), transform 0.4s cubic-bezier(0, 0.07, 0.57, 0.99);
  }
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #FFFFFF;
    transform: scale(1);
  }


  @media screen and (max-width: 1500px) {
    .michelinIntro {
        & picture {
            height: 700px;
        }
    }
    .pulseVisual {
        left: -5%;
        width: calc(300px + 5%);
        top: -10%;
    }
  }

  @media screen and (max-width: 1400px) {
    .michelinIntro {
        & picture {
            height: 650px;
        }
    }
    .projetPulse {
        & .container {
            width: 1000px;
        }
    }
    .pulseVisual {
        left: -10%;
        width: calc(300px + 10%);
    }

    .projetButterflyVisual {
        padding: 0;
    }
    .projetButterfly {
        & .container {
            padding: 1rem 0 4rem 0;
        }
    }
    .projetButterflyVisual{
      margin-top: 3rem;
    }
    .projetButterfly_video {
        width: 200px;
        min-width: 200px;
        height: 200px;
    }

    .dcappVisual_title {
        right: 10%;
        font-size: clamp(1.5rem, 3vw, 2.2rem);
    }
    .shapeCyber {
        width: 100px;
        height: 120px;
        left: -70px;
        top: -60px;
    }
    .logo-dcapp {
        width: 240px;
    }
    .projetDCAPP{
        margin-top: -5rem;
    }
    .mockupCyber{
      width: 800px;
    }
    .swiperCyber_item {
        width: 120px;
        height: 120px;
    }
  }

   @media screen and (max-width: 1200px) {
    .michelinIntro {
        & picture {
            height: 600px;
        }
    }
    .pulseVisual {
        left: 0;
        width: 300px;
        top: auto;
    }
    .logo-dcapp {
        width: 200px;
    }

    .mockupCyber{
      width: 700px;
    }
  }
  @media screen and (max-width: 1023px) {
    .michelinIntro {
        & picture {
            height: 500px;
        }
    }
    .projetPulse {
      & .container {
          display: flex;
          flex-direction: column;
          width: 700px;
      }
    }
    .pulseVisual {
        position: relative;
        width: 500px;
        max-width: 100%;
        &:before {
            left: -40px;
            top: calc(50% - 100px);
        }
        &:after {
            right: -40px;
            top: calc(50% - 100px);
        }
    }

    .projetButterfly{
      position: relative;
        & .container {
            padding: 3rem 0 4rem 0;
        }
    }
    .projetButterfly_video{
      position: absolute;
      width: 100px;
      height: 100px;
      min-width: 100px;
      top: -70px;
      right: calc(50% - 50px);
      z-index: 2;
      background: #012d70;
      border-radius: 50%;
      opacity: 0;
    }


    .logo-dcapp {
        width: 180px;
    }

    .mockupCyber{
      width: 650px;
    }

    .swiperCyber{
      width: 400px;
      max-width: 100%;
      margin: 0 auto;
      & .swiper-slide{
        display: flex;
        justify-content: center;
        align-items: center;
      }
    }
    .swiperCyber_item {
        width: 200px;
        height: 200px;
    }
  }

  @media screen and (max-width:767px){
    .michelinIntro {
        & picture {
            height: 400px;
        }
    }
    .projetButterflyVisual{
      padding: 0 1rem;
    }
    .biobutterflyVisual-desktop{
        display: none;
    }
    .biobutterflyVisual-lite{
        display: block;
    }
    .projetButterfly_video {
        width: 70px;
        height: 70px;
        min-width: 70px;
        top: -45px;
        right: calc(50% - 35px);
    }
    .projetDCAPP {
        margin-top: 0;
    }
    .dcappVisual {
        & > picture {
            height: 360px;
        }
    }

    .dcappVisual_title {
        top: auto;
        bottom: 0;
        right: 10%;
        font-size: clamp(1.4rem, 2.5vw, 1.8rem);
        letter-spacing: .1rem;
    }
    .shapeCyber {
        width: 70px;
        height: 80px;
        left: -50px;
        top: -40px;
    }
    .logo-dcapp {
        left: 5%;
        top: 10%;
    }

    .mockupCyber{
      width: 600px;
    }
  }

@media screen and (max-width: 540px) {
    .fancybox__slide{
      justify-content: center;
    }
    .content_center, .pulseContent, .projetButterfly_content {
        padding: 0 1rem;
    }

    .projetDCAPP {
        & .container {
            padding: 3rem 0 2rem 0;
        }
    }
    .mockupCyber{
      width: 450px;
    }
    
}

@media screen and (max-width:420px){
  .content_center {
      align-items: flex-start;
      text-align: left;
  }
  .mockupCyber{
      width: 360px;
    }
}
@media screen and (max-width:390px){
  .swiperCyber_item {
      width: 150px;
      height: 150px;
  }
}

  