/* Section look (fond gris clair, centré) */
.zk-envslider{ background:#e9eff1; padding:48px 16px; }
.zk-envslider__inner{ max-width:1200px; margin:0 auto; text-align:center; }

/* Grand titre fixe */
.zk-envslider__title{
  margin:0 0 12px;
  color:#224955;
  font-weight:700;
  letter-spacing:-.02em;
  font-size:48px;
}

/* Viewport / track (slider) */
.zk-envslider__viewport{ overflow:hidden; margin-top:16px; }
.zk-envslider__track{
  display:flex;
  transition:transform .45s ease;
  will-change:transform;
}

/* Slide */
.zk-envslider__slide{
  flex:0 0 100%;
  padding:8px 12px 24px;
}
@media (min-width:768px){
  .zk-envslider__slide{ padding:8px 80px 24px; }
}

/* Lead row: icon + small title */
.zk-envslider__lead{ display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:8px; }
.zk-envslider__icon{ width:28px; height:28px; object-fit:contain; }
.zk-envslider__slide-title{ font-size:1.25rem; color:#214955; margin:0; font-weight:800; }

/* Subtitle + text */
.zk-envslider__subtitle{ font-size:1rem; color:#214955; font-weight:700; margin-bottom:20px; }
.zk-envslider__text{
  font-size:24px;
  line-height:1.5;
  max-width:730px; margin:0 auto;
  color: #000;
}

/* Dots */
.zk-envslider__dots{ display:flex; justify-content:center; align-items:center; gap:10px; }

.zk-envslider__dots button{
  /* reset */
  all: unset;                 /* neutralise padding/min-width/line-height etc. */
  -webkit-appearance: none;
  appearance: none;

  /* pastille parfaite */
  display: inline-block;
  width: 5px;
  height: 5px;
  aspect-ratio: 1 / 1;        /* garantit le cercle même si qqch ajoute du padding */
  border-radius: 50%;
  background: #c9d2d7;
  cursor: pointer;

  /* sécurité */
  padding: 0;
  margin: 0;
  border: 0;
  line-height: 0;
  box-shadow: none;
  vertical-align: middle;
}

.zk-envslider__dots button.is-active{ background:#224b54; }
.zk-envslider__dots button:focus{ outline: none; }
