.nk-slider{ position:relative; overflow:hidden; border-radius:14px; }
.nk-track{ display:flex; transition:transform .5s ease; }
.nk-slide{ flex:0 0 100%; min-height: clamp(320px, 50vw, 560px); position:relative; }
.nk-slide::before{
  content:""; position:absolute; inset:0; background-size:cover; background-position:center;
  filter: saturate(1.05) contrast(1.02);
}
.nk-slide__inner{
  position:relative; z-index:2; color:#fff;
  display:flex; flex-direction:column; gap:10px;
  align-items:flex-start; justify-content:center;
  padding: clamp(16px,5vw,48px);
  max-width: min(92vw, 1100px);
}
.nk-sub{ font-size:clamp(14px,2.5vw,18px); opacity:.95; margin:0; }
.nk-title{ font-size:clamp(28px,6vw,56px); line-height:1.05; margin:.1em 0 .2em; text-wrap:balance; }
.nk-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.nk-btn{ background:#6b3cff; color:#fff; text-decoration:none; padding:10px 16px; border-radius:999px; font-weight:700; }
.nk-free{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; }

/* Nav */
.nk-nav{ position:absolute; top:50%; transform:translateY(-50%); z-index:3;
  width:40px; height:40px; border-radius:999px; border:0; background:rgba(0,0,0,.45); color:#fff; font-size:22px; cursor:pointer;
}
.nk-prev{ left:10px; } .nk-next{ right:10px; }
.nk-dots{ position:absolute; z-index:3; bottom:10px; left:50%; transform:translateX(-50%); display:flex; gap:8px; }
.nk-dots button{ width:8px; height:8px; border-radius:999px; border:0; background:rgba(255,255,255,.55); }
.nk-dots button.is-active{ background:#fff; }

/* Efectos “Sorpréndeme” (ligeros) */
.fx-parallax::before{ background-attachment: fixed; }
.fx-blur::before{ filter: blur(0.2px) saturate(1.05) contrast(1.02); }
.fx-grain::before{ background-blend-mode: overlay; }
.fx-noise::before{ background-color: rgba(0,0,0,.05); }
.fx-vignette::before{ box-shadow: inset 0 0 180px rgba(0,0,0,.35); }
.fx-pan::before{ animation: pan 18s linear infinite; }
@keyframes pan{
  0%{ background-position: 0% 50%; } 50%{ background-position: 100% 50%; } 100%{ background-position: 0% 50%; }
}

/* Breakpoints: el JS setea data-bg-* a ::before */
@media (min-width: 740px){
  .nk-slide{ min-height: clamp(420px, 44vw, 620px); }
}
@media (min-width: 1024px){
  .nk-slide{ min-height: clamp(520px, 40vw, 680px); }
}


.nk-slider{position:relative;overflow:hidden;--pad:clamp(16px,4vw,32px)}
.nk-track{display:flex;transition:transform .5s ease}
.nk-slide-item{position:relative;min-width:100%;height:clamp(320px,50vw,540px);display:grid;place-items:center}
.nk-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nk-content{position:relative;z-index:2;max-width:min(1100px,92vw);padding:var(--pad);text-align:left;color:#141322}
.nk-sub{margin:0 0 6px;color:#ffffff;opacity:.9;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.nk-title{margin:0 0 10px;font-size:clamp(28px,5vw,56px);line-height:1.05;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.nk-html{color:#f4f6ff;max-width:720px;text-shadow:0 1px 2px rgba(0,0,0,.25)}
.nk-btn{display:inline-block;margin-top:10px;padding:10px 18px;border-radius:999px;background:#e85d55;color:#fff;font-weight:700;text-decoration:none}
.nk-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:999px;border:0;background:#2f2a51;color:#fff;font-size:22px;line-height:36px;opacity:.95;cursor:pointer}
.nk-prev{left:12px}.nk-next{right:12px}
.nk-dots{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:8px}
.nk-dots button{width:8px;height:8px;border-radius:999px;border:0;background:#fff8;cursor:pointer}
.nk-dots button.is-active{background:#fff}

/* efectos “Sorpréndeme” simples */
.fx-gradient .nk-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg, #14132288, transparent)}
.fx-grain::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23fff2'/%3E%3C/svg%3E");mix-blend-mode:overlay;opacity:.6}
.fx-dots .nk-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(#fff3 1px, transparent 1px);background-size:18px 18px}
