/* EC Secure Slider core styles (1.8.3) */
.ecss { position: relative; }
.ecss-viewport { position: relative; width: 100%; overflow: hidden; background: #000; border-radius: inherit; }
.ecss-aspect { display:block; width:100%; }
.ecss-figure { position:absolute; inset:0; margin:0; opacity:0; transition:opacity .5s ease; }
.ecss-figure.is-active { opacity:1; }
.ecss-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ecss-caption{
  position:absolute; left:0; right:0; bottom:0; padding:10px 14px;
  font-size:14px; line-height:1.3; color:#fff;
  background:linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,.0));
  text-shadow:0 1px 2px rgba(0,0,0,.4);
}

/* controls */
.ecss-prev,.ecss-next{
  position:absolute; top:50%; transform:translateY(-50%);
  width:40px; height:40px; border-radius:999px; border:0; background:#fff; color:#111;
  box-shadow:0 6px 18px rgba(0,0,0,.2); cursor:pointer; opacity:.9;
}
.ecss-prev:hover,.ecss-next:hover{opacity:1}
.ecss-prev{ left:12px; }
.ecss-next{ right:12px; }

.ecss-dots{ position:absolute; left:50%; transform:translateX(-50%); bottom:10px; display:flex; gap:8px; }
.ecss-dots button{
  width:28px; height:8px; border-radius:999px; border:0; background:#ddd; opacity:.9; cursor:pointer;
}
.ecss-dots button.is-active{ background:#bbb; }

/* helpers */
.ecss-shadow { box-shadow: 0 10px 30px rgba(0,0,0,.15); }
.ecss-rounded { border-radius: 16px; }