
/* V157 - slider villes : rendu robuste + adaptation aux images */
body.discover-premium-city .city-slider{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:var(--city-slider-ratio, 12 / 5)!important;
  overflow:hidden!important;
  margin:0 0 .65rem!important;
  border-radius:26px!important;
  border:1px solid rgba(93,137,177,.35)!important;
  background:#071321!important;
  box-shadow:0 24px 58px rgba(0,0,0,.28)!important;
}
body.discover-premium-city .city-slider:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 58%,rgba(3,12,22,.68) 100%);
}
body.discover-premium-city .city-slider-viewport,
body.discover-premium-city .city-slider-track,
body.discover-premium-city .city-slider-slide{
  width:100%!important;
  height:100%!important;
}
body.discover-premium-city .city-slider-viewport{
  position:relative!important;
  overflow:hidden!important;
}
body.discover-premium-city .city-slider-track{
  display:flex!important;
  transition:transform .5s cubic-bezier(.22,.61,.36,1)!important;
  will-change:transform;
}
body.discover-premium-city .city-slider-slide{
  position:relative!important;
  flex:0 0 100%!important;
  margin:0!important;
  overflow:hidden!important;
  background:#071321!important;
}
body.discover-premium-city .city-slider-slide .city-photo{
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  border-radius:0!important;
}
body.discover-premium-city .city-slider-caption{
  position:absolute!important;
  left:1.1rem!important;
  right:5rem!important;
  bottom:1rem!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  gap:.18rem!important;
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.7)!important;
  pointer-events:none;
}
body.discover-premium-city .city-slider-control{
  position:absolute!important;
  z-index:5!important;
  top:50%!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:999px!important;
  background:rgba(5,14,25,.68)!important;
  color:#fff!important;
  font-size:1.25rem!important;
  line-height:1!important;
  cursor:pointer!important;
  transform:translateY(-50%)!important;
}
body.discover-premium-city .city-slider-control:hover{
  background:rgba(45,212,191,.88)!important;
  border-color:#2dd4bf!important;
}
body.discover-premium-city .city-slider-prev{left:.8rem!important}
body.discover-premium-city .city-slider-next{right:.8rem!important}
body.discover-premium-city .city-slider-dots{
  position:absolute!important;
  z-index:5!important;
  right:1rem!important;
  bottom:1rem!important;
  display:flex!important;
  align-items:center!important;
  gap:.34rem!important;
}
body.discover-premium-city .city-slider-dot{
  width:8px!important;
  height:8px!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.5)!important;
}
body.discover-premium-city .city-slider-dot.is-active{
  width:24px!important;
  background:#2dd4bf!important;
}
body.discover-premium-city .city-slider-counter{
  position:absolute!important;
  z-index:5!important;
  top:.85rem!important;
  right:.9rem!important;
  padding:.28rem .48rem!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:999px!important;
  background:rgba(5,14,25,.62)!important;
  color:#fff!important;
  font-size:.68rem!important;
  font-weight:800!important;
}
@media(max-width:760px){
  body.discover-premium-city .city-slider{
    aspect-ratio:4 / 3!important;
    border-radius:18px!important;
  }
  body.discover-premium-city .city-slider-control{width:38px!important;height:38px!important}
}
@media(prefers-reduced-motion:reduce){
  body.discover-premium-city .city-slider-track{transition:none!important}
}
