/* Kameleon Before/After Slider 1.8.2 */
.kba-item,
.kba-item *{box-sizing:border-box}
.kba-item{--kba-primary:#0f3a5f;--kba-accent:#17afa2;--kba-bg:#fff;--kba-muted:#637386;--kba-radius:22px;--kba-shadow:0 18px 55px rgba(15,58,95,.14);--kba-pos:50%;--kba-ratio:16 / 10;--kba-fit:cover;--kba-object-position:center center;--kba-before-object-position:center center;--kba-after-object-position:center center;--kba-before-x:0%;--kba-after-x:0%;--kba-before-y:0%;--kba-after-y:0%;--kba-before-zoom:1;--kba-after-zoom:1;--kba-before-render-zoom:1;--kba-after-render-zoom:1;--kba-title-size:clamp(24px,3.2vw,42px);--kba-text-size:clamp(16px,2vw,21px);--kba-label-size:13px;--kba-hint-size:14px;--kba-max-width:100%;max-width:var(--kba-max-width);color:var(--kba-primary)}
.kba-align-center{margin-left:auto;margin-right:auto}.kba-align-right{margin-left:auto}.kba-align-wide{width:100%;max-width:var(--kba-max-width)}
.kba-layout-card{padding:clamp(16px,3vw,32px);border-radius:calc(var(--kba-radius) + 12px);background:var(--kba-bg);box-shadow:var(--kba-shadow)}
.kba-layout-plain{padding:0;background:transparent;box-shadow:none}

.kba-theme-clean{--kba-primary:#17324d;--kba-accent:#20b6b0;--kba-bg:#fff;--kba-muted:#607084;--kba-radius:24px;--kba-shadow:0 18px 55px rgba(23,50,77,.12)}
.kba-theme-soft{--kba-primary:#2f3440;--kba-accent:#b8895b;--kba-bg:#fbf7f1;--kba-muted:#6d645b;--kba-radius:28px;--kba-shadow:0 18px 55px rgba(47,52,64,.13)}
.kba-theme-medical{--kba-primary:#123c4a;--kba-accent:#56c3d0;--kba-bg:#f8fcfd;--kba-muted:#5c7480;--kba-radius:20px;--kba-shadow:0 16px 48px rgba(18,60,74,.12)}
.kba-theme-craft{--kba-primary:#2d2a26;--kba-accent:#d77b31;--kba-bg:#fffaf4;--kba-muted:#6b625a;--kba-radius:18px;--kba-shadow:0 24px 75px rgba(45,42,38,.18)}
.kba-theme-dark{--kba-primary:#f5f7fb;--kba-accent:#58d7c8;--kba-bg:#101b2b;--kba-muted:#c0cad8;--kba-radius:24px;--kba-shadow:0 24px 75px rgba(0,0,0,.28)}
.kba-theme-minimal{--kba-primary:#1d1d1f;--kba-accent:#6e7781;--kba-bg:#fff;--kba-muted:#6e7781;--kba-radius:12px;--kba-shadow:none}
.kba-theme-wide{--kba-primary:#0f2b46;--kba-accent:#1ea7ff;--kba-bg:#fff;--kba-muted:#53606f;--kba-radius:18px;--kba-shadow:none}
.kba-theme-dark .kba-label{background:rgba(255,255,255,.88);color:#101b2b}
.kba-theme-dark .kba-handle,.kba-theme-dark .kba-handle::after{background:#f5f7fb;color:#101b2b}
.kba-theme-minimal .kba-label{background:rgba(29,29,31,.78)}
.kba-theme-wide .kba-stage{border-radius:var(--kba-radius)}
.kba-stage{position:relative;width:100%;aspect-ratio:var(--kba-ratio);overflow:hidden;border-radius:var(--kba-radius);background:#f4f6f7;isolation:isolate;touch-action:none}
.kba-image{display:block;width:100%;height:100%;object-fit:var(--kba-fit);object-position:var(--kba-object-position);user-select:none;-webkit-user-drag:none;pointer-events:none;transform-origin:center center}
.kba-image-after{position:absolute;z-index:1;inset:0;object-position:var(--kba-after-object-position,var(--kba-object-position));transform:translate3d(var(--kba-after-x,0%),var(--kba-after-y,0%),0) scale(var(--kba-after-render-zoom,var(--kba-after-zoom,1)))}
.kba-before-layer{position:absolute;z-index:2;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--kba-pos)) 0 0)}
.kba-image-before{position:absolute;inset:0;object-position:var(--kba-before-object-position,var(--kba-object-position));transform:translate3d(var(--kba-before-x,0%),var(--kba-before-y,0%),0) scale(var(--kba-before-render-zoom,var(--kba-before-zoom,1)))}
.kba-handle{position:absolute;z-index:4;top:0;bottom:0;left:var(--kba-pos);width:3px;transform:translateX(-50%);background:#fff;box-shadow:0 0 0 1px rgba(15,58,95,.12);pointer-events:none}
.kba-handle::after{content:"↔";position:absolute;top:50%;left:50%;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;transform:translate(-50%,-50%);border-radius:50%;background:#fff;color:var(--kba-primary);font-size:22px;font-weight:700;line-height:1;box-shadow:0 12px 34px rgba(15,58,95,.22)}
.kba-range{position:absolute;z-index:5;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}
.kba-stage:focus-within .kba-handle::after{outline:3px solid color-mix(in srgb,var(--kba-accent) 70%,#fff);outline-offset:4px}
.kba-label{position:absolute;z-index:3;top:14px;padding:7px 11px;border-radius:999px;background:rgba(15,58,95,.84);color:#fff;font-size:var(--kba-label-size);line-height:1;font-weight:700;pointer-events:none;max-width:calc(50% - 28px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kba-label-before{left:14px}.kba-label-after{right:14px}
.kba-hint{margin:14px 0 0;color:var(--kba-muted);font-size:var(--kba-hint-size);line-height:1.45}
.kba-source{margin:10px 0 0;color:var(--kba-muted);font-size:12px;line-height:1.45;opacity:.82}
.kba-caption{margin-top:clamp(18px,3vw,28px)}
.kba-title{margin:0;color:var(--kba-primary);font-size:var(--kba-title-size);line-height:1.12;letter-spacing:-.035em;font-weight:700}
.kba-text{margin:12px 0 0;color:var(--kba-muted);font-size:var(--kba-text-size);line-height:1.6}
.kba-missing{padding:12px 14px;border-left:4px solid #d63638;background:#fff5f5}
@supports not (clip-path:inset(0 0 0 0)){.kba-before-layer{right:auto;width:var(--kba-pos)}}
@media(max-width:767px){.kba-layout-card{padding:14px;border-radius:24px}.kba-stage{border-radius:18px}.kba-mobile-labels-hide .kba-label{display:none}.kba-handle{width:2px}.kba-handle::after{width:38px;height:38px;font-size:18px}.kba-caption{margin-top:18px}.kba-title{font-size:var(--kba-title-size)}.kba-text{font-size:var(--kba-text-size);line-height:1.55}}
