/* ============ SLIDESHOW CUSTOM - MODELE KEN BURNS ============ */
#camera_wrap{
  position:relative; width:100%; height:480px; overflow:hidden; background:#111;
}
#camera_wrap .slide-item{
  position:absolute; inset:0; opacity:0; transition:opacity 1.1s ease-in-out; overflow:hidden;
}
#camera_wrap .slide-item.is-active{ opacity:1; z-index:2; }
#camera_wrap .slide-bg{
  position:absolute; inset:0; background-size:cover; background-position:center center;
  background-repeat:no-repeat; transform:scale(1); will-change:transform;
}
#camera_wrap .slide-item.is-active .slide-bg{ animation:kenBurns 9s ease-out forwards; }
@keyframes kenBurns{
  from{ transform:scale(1) translate(0,0); }
  to  { transform:scale(1.14) translate(-1.5%,-1%); }
}
#camera_wrap.is-paused .slide-item.is-active .slide-bg{ animation-play-state:paused; }
#camera_wrap .slide-item::before{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.30) 60%,rgba(0,0,0,.05) 100%);
}
@media (prefers-reduced-motion:reduce){
  #camera_wrap .slide-item.is-active .slide-bg{ animation:none; }
}

#camera_wrap .camera_caption{
  position:absolute; left:6%; top:50%; transform:translateY(-50%);
  max-width:620px; z-index:3; color:#fff; text-shadow:0 2px 6px rgba(0,0,0,.6);
}
#camera_wrap .camera_caption .txt1{ font-size:38px; line-height:1.15; font-weight:700; margin-bottom:14px; }
#camera_wrap .camera_caption .txt2{ font-size:19px; line-height:1.5; margin-bottom:6px; }
#camera_wrap .slide-item .camera_caption > *{
  opacity:0; transition:opacity .6s ease, transform .6s ease;
}
#camera_wrap .slide-item.is-active .camera_caption > *{ opacity:1; }
#camera_wrap .slide-item.is-active .camera_caption > *:nth-child(1){ transition-delay:.25s; }
#camera_wrap .slide-item.is-active .camera_caption > *:nth-child(2){ transition-delay:.40s; }
#camera_wrap .slide-item.is-active .camera_caption > *:nth-child(3){ transition-delay:.55s; }
#camera_wrap .slide-item.is-active .camera_caption > *:nth-child(4){ transition-delay:.70s; }

/* Flèches */
#camera_wrap .slider-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:48px; height:48px; border:0; border-radius:50%;
  background:rgba(0,0,0,.42); color:#fff; font-size:24px; line-height:48px;
  text-align:center; cursor:pointer; z-index:6; transition:background .25s ease; padding:0;
}
#camera_wrap .slider-arrow:hover,
#camera_wrap .slider-arrow:focus{ background:#fb0505; outline:none; }
#camera_wrap .slider-prev{ left:18px; }
#camera_wrap .slider-next{ right:18px; }

/* Points */
#camera_wrap .slider-dots{
  position:absolute; left:0; right:0; bottom:22px; text-align:center; z-index:6;
  margin:0; padding:0; list-style:none; font-size:0;
}
#camera_wrap .slider-dots li{ display:inline-block; margin:0 6px; }
#camera_wrap .slider-dots button{
  width:12px; height:12px; padding:0; border:2px solid #fff; border-radius:50%;
  background:transparent; cursor:pointer; transition:background .25s ease, transform .25s ease;
}
#camera_wrap .slider-dots button:hover{ background:rgba(255,255,255,.5); }
#camera_wrap .slider-dots li.is-active button{ background:#fb0505; border-color:#fb0505; transform:scale(1.25); }

/* Barre de progression */
#camera_wrap .slider-progress{
  position:absolute; left:0; bottom:0; height:3px; width:100%;
  background:rgba(255,255,255,.18); z-index:6;
}
#camera_wrap .slider-progress span{ display:block; height:100%; width:0; background:#fb0505; }
#camera_wrap.is-paused .slider-progress span{ animation-play-state:paused; }
@keyframes sliderProgressAnim{ from{ width:0; } to{ width:100%; } }

/* Responsive */
@media (max-width:991px){
  #camera_wrap{ height:400px; }
  #camera_wrap .camera_caption .txt1{ font-size:30px; }
  #camera_wrap .camera_caption .txt2{ font-size:17px; }
}
@media (max-width:767px){
  #camera_wrap{ height:330px; }
  #camera_wrap .camera_caption{ left:5%; right:5%; max-width:none; }
  #camera_wrap .camera_caption .txt1{ font-size:24px; }
  #camera_wrap .camera_caption .txt2{ font-size:15px; }
  #camera_wrap .slider-arrow{ width:38px; height:38px; line-height:38px; font-size:19px; }
  #camera_wrap .slider-prev{ left:8px; }
  #camera_wrap .slider-next{ right:8px; }
}
@media (prefers-reduced-motion:reduce){
  #camera_wrap .slide-item,
  #camera_wrap .slide-item .camera_caption > *{ transition:none; }
  #camera_wrap .slider-progress{ display:none; }
}
