/* KlipKast 3D Coverflow Carousel V2 */
.showcase{
  position:relative;
  width:100%;
  max-width:none;
  margin:8px 0 0;
  padding:44px 0 76px;
  text-align:center;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(77,63,211,.17) 0%, rgba(27,52,110,.08) 34%, rgba(4,7,13,0) 68%);
}
.showcase-heading{max-width:820px;margin:0 auto 18px;padding:0 24px;text-align:center}
.showcase-kicker{display:block;margin-bottom:8px;color:#8f7dff;font-size:.8rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.showcase-heading h2{margin:0 0 9px;font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.025em;color:#f6f8ff}
.showcase-heading p{margin:0;color:#aeb8ca;font-size:1rem}

.kk-carousel{
  position:relative;
  width:100%;
  max-width:100%;
  height:560px;
  margin-left:0;
  perspective:1800px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.kk-carousel::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:40px;
  width:min(1180px,86vw);
  height:88px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(73,70,255,.18),rgba(0,0,0,.42) 48%,transparent 72%);
  filter:blur(12px);
  pointer-events:none;
}
.kk-carousel-stage{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
  perspective:1800px;
}
.kk-slide{
  position:absolute;
  top:42px;
  left:50%;
  width:min(780px,54vw);
  aspect-ratio:16/9;
  margin:0;
  padding:0;
  transform-origin:center center;
  border:1px solid rgba(194,205,229,.52);
  border-radius:13px;
  background:#080c14;
  box-shadow:0 28px 60px rgba(0,0,0,.62),0 0 0 1px rgba(255,255,255,.025);
  overflow:visible;
  cursor:pointer;
  transform-style:preserve-3d;
  backface-visibility:hidden;
  transition:transform .72s cubic-bezier(.22,.72,.18,1),opacity .56s ease,filter .56s ease,box-shadow .56s ease;
  will-change:transform,opacity;
  outline:none;
}
.kk-slide img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:12px;
  background:#090d15;
  pointer-events:none;
  user-select:none;
  -webkit-box-reflect:below 12px linear-gradient(to bottom,rgba(255,255,255,.22) 0%,rgba(255,255,255,.08) 25%,transparent 67%);
}
.kk-slide.is-active{box-shadow:0 36px 85px rgba(0,0,0,.7),0 0 36px rgba(100,83,255,.15),0 0 0 1px rgba(255,255,255,.05)}
.kk-slide:focus-visible{box-shadow:0 0 0 3px #8b75ff,0 36px 85px rgba(0,0,0,.7)}

.kk-carousel-arrow{
  position:absolute;
  top:47%;
  z-index:80;
  width:58px;
  height:58px;
  transform:translateY(-50%);
  border:2px solid rgba(255,255,255,.82);
  border-radius:50%;
  background:rgba(5,8,16,.72);
  color:#fff;
  font-size:31px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 0 0 5px rgba(113,84,255,.12),0 14px 35px rgba(0,0,0,.45);
  backdrop-filter:blur(10px);
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.kk-carousel-arrow:hover{transform:translateY(-50%) scale(1.08);background:rgba(103,76,224,.78);border-color:#c0b6ff}
.kk-prev{left:clamp(20px,3.4vw,68px)}
.kk-next{right:clamp(20px,3.4vw,68px)}

.kk-carousel-dots{display:flex;justify-content:center;align-items:center;gap:11px;min-height:22px;margin-top:-14px;position:relative;z-index:90}
.kk-dot{width:11px;height:11px;padding:0;border:0;border-radius:999px;background:#d5d9e2;opacity:.72;cursor:pointer;transition:all .24s ease}
.kk-dot.active{width:29px;background:#8467ff;opacity:1;box-shadow:0 0 17px rgba(132,103,255,.95)}
.kk-carousel-copy{position:relative;z-index:90;max-width:800px;min-height:105px;margin:18px auto 0;padding:0 24px;text-align:center;transition:opacity .2s ease,transform .2s ease}
.kk-carousel-copy.is-changing{opacity:.25;transform:translateY(5px)}
.kk-carousel-copy h3{margin:0 0 8px;font-size:clamp(1.7rem,2.6vw,2.25rem);font-weight:800;background:linear-gradient(90deg,#67adff 15%,#9e66ff 80%);-webkit-background-clip:text;background-clip:text;color:transparent}
.kk-carousel-copy p{max-width:760px;margin:0 auto;color:#b7c0d1;font-size:1.03rem;line-height:1.55}

@media(max-width:1100px){
  .kk-carousel{height:500px}
  .kk-slide{width:min(700px,61vw);top:48px}
}
@media(max-width:760px){
  .showcase{padding-top:34px}
  .kk-carousel{height:395px}
  .kk-slide{width:78vw;top:48px}
  .kk-carousel-arrow{width:44px;height:44px;font-size:23px;top:45%}
  .kk-prev{left:10px}.kk-next{right:10px}
  .kk-carousel-dots{margin-top:-8px}
}
@media(max-width:520px){
  .kk-carousel{height:320px}
  .kk-slide{width:82vw;top:45px;border-radius:9px}
  .kk-slide img{border-radius:8px;-webkit-box-reflect:below 7px linear-gradient(to bottom,rgba(255,255,255,.14),transparent 55%)}
  .kk-carousel-copy{min-height:135px}
}
@media(prefers-reduced-motion:reduce){.kk-slide,.kk-carousel-copy,.kk-dot{transition:none!important}}

/* V25 — stable carousel centering + initial fade-in */
.showcase{overflow:hidden!important}
.kk-carousel{width:100%!important;margin-left:0!important;left:auto!important;opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.kk-carousel.is-ready{opacity:1!important;transform:translateY(0)!important}.kk-carousel:not(.is-ready) .kk-slide{transition:none!important}.kk-carousel-stage{width:100%!important;left:0!important;right:0!important}.kk-slide{left:50%!important;margin-left:0!important}html,body{overflow-x:hidden!important}
@media(prefers-reduced-motion:reduce){.kk-carousel{opacity:1!important;transform:none!important;transition:none!important}}
