/* =============================================
   KWP Gallery Slider v9 – CSS
   ============================================= */
:root {
  --kwp-height-desktop: 300px;
  --kwp-height-mobile: 200px;
  --kwp-gap: 30px;
  --kwp-arrow-size: 44px;
  --kwp-arrow-offset: 16px;
}

.kwp-slider-wrap .wp-block-gallery,
.kwp-static.wp-block-gallery {
  margin: 0 !important;
  padding: 0 !important;
}

.kwp-slider-wrap { position: relative; margin-bottom:40px; }

.kwp-slider-active {
  position: relative;
  overflow: hidden !important;
  height: var(--kwp-height-desktop);
  width: 100%;
}

.kwp-track {
  display: flex;
  position: absolute;
  top: 0; left: 0;
  height: 100%;
}
.kwp-track.kwp-anim {
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.kwp-track > .kwp-slide {
  flex-shrink: 0;
  height: 100%;
  overflow: hidden;
}
.kwp-track > .kwp-slide img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  aspect-ratio: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.kwp-static {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow: hidden !important;
  height: var(--kwp-height-desktop);
  width: 100%;
}
.kwp-static > .kwp-slide { flex-shrink: 0; height: 100%; overflow: hidden; }
.kwp-static > .kwp-slide img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  aspect-ratio: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.kwp-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background: rgba(255,255,255,0.9);
  border: none;
  border-radius: 50%;
  width: var(--kwp-arrow-size);
  height: var(--kwp-arrow-size);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, box-shadow 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  padding: 10px;
}
.kwp-btn:hover { background: #fff; box-shadow: 0 4px 12px rgba(0,0,0,0.25); }
.kwp-btn svg { width: 20px; height: 20px; fill: currentColor; color: #333; }
.kwp-btn-prev { left: calc(-1 * (var(--kwp-arrow-size) / 2 + var(--kwp-arrow-offset))); }
.kwp-btn-prev svg { transform: rotate(180deg); }
.kwp-btn-next { right: calc(-1 * (var(--kwp-arrow-size) / 2 + var(--kwp-arrow-offset))); }

@media (max-width: 768px) {
  .kwp-slider-active { height: var(--kwp-height-mobile); }
  .kwp-btn { width: 36px; height: 36px; padding: 8px; }
  .kwp-btn-prev { left: 8px; }
  .kwp-btn-next { right: 8px; }
  .kwp-static { flex-direction: column !important; height: auto !important; }
  .kwp-static > .kwp-slide { width: 100% !important; height: var(--kwp-height-mobile); margin: 0 0 8px 0 !important; }
}
