/* 1.1.1: explicit scoped controls. Theme button rules must not create empty floating boxes. */
.kbp-page [data-kbp-gallery]{display:block;position:relative;width:100%;max-width:580px;margin:0 auto;font-family:Arial,sans-serif}
.kbp-page [data-kbp-gallery] .kbp-gallery-main{display:block!important;position:relative!important;isolation:isolate;width:100%;aspect-ratio:1;margin:0;padding:0;border:0;background:#fff;overflow:hidden;border-radius:8px}
.kbp-page [data-kbp-gallery] .kbp-gallery-main>.kbp-gallery-open{display:block!important;position:static!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;min-width:0!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important;transform:none!important;appearance:none;overflow:hidden;color:#173b63;cursor:zoom-in}
.kbp-page [data-kbp-gallery] .kbp-main-image{display:block!important;position:static!important;inset:auto!important;margin:0!important;padding:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:none!important;object-fit:contain!important;object-position:center;transform:none!important;opacity:1;filter:none;pointer-events:auto}
.kbp-page [data-kbp-gallery] button::before,.kbp-page [data-kbp-gallery] button::after,.kbp-lightbox-v111 button::before,.kbp-lightbox-v111 button::after,.kbp-dimension-zoom::before,.kbp-dimension-zoom::after{content:none!important;display:none!important}
.kbp-page [data-kbp-gallery] .kbp-gallery-main>button.kbp-gallery-zoom,.kbp-page button.kbp-dimension-zoom{display:flex!important;position:absolute!important;inset:auto 12px 12px auto!important;z-index:3!important;align-items:center!important;justify-content:center!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;border:1px solid #dce5ee!important;border-radius:50%!important;background:rgba(255,255,255,.96)!important;color:#173b63!important;box-shadow:0 2px 8px #142c4614!important;transform:none!important;appearance:none;cursor:pointer;pointer-events:auto!important;line-height:1!important}
.kbp-page [data-kbp-gallery] .kbp-gallery-zoom svg,.kbp-page .kbp-dimension-zoom svg{display:block!important;width:21px!important;height:21px!important;min-width:21px!important;fill:none!important;stroke:currentColor!important;opacity:1!important}
.kbp-page [data-kbp-gallery] .kbp-thumbs{display:flex!important;position:relative!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:10px!important;overflow-x:auto;max-width:100%;width:100%;margin:0!important;padding:10px 2px 4px!important;scrollbar-width:thin;align-items:center;scroll-snap-type:x proximity}
.kbp-page [data-kbp-gallery] button.kbp-thumb{display:flex!important;align-items:center;justify-content:center;position:relative!important;inset:auto!important;flex:0 0 68px!important;width:68px!important;min-width:68px!important;max-width:68px!important;height:68px!important;min-height:68px!important;max-height:68px!important;margin:0!important;padding:4px!important;box-shadow:none!important;border:1px solid #e1e7ee!important;border-radius:5px!important;background:#fff!important;transform:none!important;opacity:1!important;cursor:pointer;appearance:none;pointer-events:auto!important;scroll-snap-align:start}
.kbp-page [data-kbp-gallery] button.kbp-thumb.is-active{border:2px solid #173b63!important;padding:3px!important}
.kbp-page [data-kbp-gallery] .kbp-thumb img{display:block!important;position:static!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;margin:0!important;padding:0!important;transform:none!important;pointer-events:none!important}
.kbp-page [data-kbp-gallery] .kbp-gallery-static{cursor:default!important}
.kbp-page [data-kbp-gallery]:not([data-kbp-ready="1"]) .kbp-gallery-zoom{visibility:hidden!important}
.kbp-page .kbp-gallery-status{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important;padding:0!important}
.kbp-page [data-kbp-gallery] button:focus-visible,.kbp-page .kbp-dimension-image img:focus-visible,.kbp-page .kbp-dimension-zoom:focus-visible{outline:2px solid #236bb4!important;outline-offset:2px!important}
.kbp-page [data-kbp-gallery] .kbp-image-dialog:not([open]){display:none!important}
/* Only image-specific restrictions, never blanket page selection / keyboard / zoom blocking. */
.kbp-page [data-kbp-gallery][data-kbp-guard="1"] img,.kbp-page .kbp-dimension-image[data-kbp-guard="1"] img,.kbp-lightbox-v111[data-kbp-guard="1"] img{-webkit-user-drag:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.kbp-page .kbp-dimension-image,.kbp-page .kbp-dimension-image .elementor-widget-container{position:relative}
.kbp-page .kbp-dimension-image[data-kbp-dimension-ready="1"] img{cursor:zoom-in}
/* Viewer is mounted to body on demand. It cannot reserve space under the thumbnails. */
dialog.kbp-lightbox-v111{box-sizing:border-box!important;position:fixed!important;inset:0!important;margin:auto!important;width:min(96vw,1120px)!important;max-width:96vw!important;height:min(94vh,920px)!important;height:min(94dvh,920px)!important;max-height:96vh!important;max-height:96dvh!important;padding:0!important;border:0!important;border-radius:10px!important;background:#fff!important;color:#173b63!important;box-shadow:0 15px 80px #0006!important;overflow:hidden!important;font:14px/1.5 Arial,sans-serif!important;transform:none!important}
dialog.kbp-lightbox-v111:not([open]){display:none!important}
dialog.kbp-lightbox-v111[open]{display:grid!important;grid-template-rows:56px minmax(0,1fr) 34px!important}
dialog.kbp-lightbox-v111::backdrop{background:rgba(12,25,40,.84)}
dialog.kbp-lightbox-v111.kbp-lightbox-fallback{z-index:2147483647!important;box-shadow:0 0 0 200vmax #0c1928db!important}
.kbp-lightbox-v111 *{box-sizing:border-box}
.kbp-lightbox-v111 .kbp-lightbox-toolbar{display:flex!important;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid #edf1f6;z-index:2;background:#fff}
.kbp-lightbox-v111 .kbp-lightbox-count{margin-right:auto;min-width:42px;color:#526174;font-size:13px}
.kbp-lightbox-v111 .kbp-lightbox-scale{width:40px;flex:0 0 40px;text-align:center;font-size:12px}
.kbp-lightbox-v111 button{appearance:none!important;position:static!important;inset:auto!important;display:inline-flex!important;justify-content:center!important;align-items:center!important;flex:0 0 auto!important;width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;border:1px solid #e4ebf2!important;border-radius:6px!important;margin:0!important;padding:0!important;background:#fff!important;color:#173b63!important;box-shadow:none!important;cursor:pointer!important;font:16px/1 Arial,sans-serif!important;transform:none!important}
.kbp-lightbox-v111 button:disabled{opacity:.45!important;cursor:default!important}
.kbp-lightbox-v111 button svg{width:20px!important;height:20px!important;stroke:currentColor!important;fill:none!important;pointer-events:none}
.kbp-lightbox-v111 button:focus-visible{outline:2px solid #2370b9!important;outline-offset:1px!important}
.kbp-lightbox-v111 .kbp-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden;background:#fff;touch-action:none;overscroll-behavior:contain;cursor:default}
.kbp-lightbox-v111 .kbp-lightbox-stage.kbp-is-zoomed{cursor:grab}
.kbp-lightbox-v111 img.kbp-lightbox-image{display:block!important;position:static!important;inset:auto!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;object-fit:contain!important;transform-origin:center center;border:0!important;border-radius:0!important;transition:none!important;box-shadow:none!important;will-change:transform}
.kbp-lightbox-v111 button.kbp-lightbox-prev,.kbp-lightbox-v111 button.kbp-lightbox-next{position:absolute!important;top:calc(50% - 20px)!important;z-index:2!important;background:#fffffff2!important}
.kbp-lightbox-v111 button.kbp-lightbox-prev{left:8px!important;right:auto!important}.kbp-lightbox-v111 button.kbp-lightbox-next{right:8px!important;left:auto!important}
.kbp-lightbox-v111 [hidden]{display:none!important}
.kbp-lightbox-v111 .kbp-lightbox-help{padding:6px 10px;text-align:center;color:#64748b;font-size:11px;background:#fff;z-index:2;overflow:hidden}
.kbp-lightbox-v111 .kbp-lightbox-error{position:absolute;inset:40% 10% auto;text-align:center;color:#913737;background:#fff;padding:18px;border:1px solid #edd}
@media(max-width:767px){
 .kbp-page [data-kbp-gallery]{max-width:350px}
 .kbp-page [data-kbp-gallery] button.kbp-thumb{flex-basis:58px!important;width:58px!important;min-width:58px!important;max-width:58px!important;height:58px!important;min-height:58px!important;max-height:58px!important}
 .kbp-page [data-kbp-gallery] .kbp-thumbs{gap:8px!important}
 dialog.kbp-lightbox-v111{width:100vw!important;max-width:100vw!important;height:100vh!important;height:100dvh!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important}
 .kbp-lightbox-v111 .kbp-lightbox-toolbar{padding-top:max(6px,env(safe-area-inset-top));gap:4px}
 .kbp-lightbox-v111 .kbp-lightbox-help{font-size:10px;padding-bottom:env(safe-area-inset-bottom);line-height:1.25}
}

.kbp-lightbox-v111 .kbp-lightbox-loading {position:absolute;inset:calc(50% - 20px) auto auto 50%;transform:translateX(-50%);padding:10px 16px;background:#ffffffed;border-radius:6px;color:#526174;font-size:13px;pointer-events:none;}
