/* Independent runtime states; original per-widget design rules live in assets/design. */
.kfl-popup-source{display:none!important}.kfl-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:99999;display:flex;align-items:center;justify-content:center;overflow:auto}.kfl-modal{position:relative;background:#fff;max-width:100vw;max-height:100vh;overflow:auto}.kfl-modal-close{position:absolute;right:8px;top:8px;z-index:10;border:0;background:transparent;padding:5px;color:#333;font-size:24px;cursor:pointer}.kfl-modal-close:hover{background:transparent;color:#000}.kfl-offcanvas-open{display:block!important;position:fixed!important;inset:0!important;z-index:99998!important;background:rgba(0,0,0,.3)!important}.kfl-offcanvas-open .bdt-offcanvas-bar{left:calc(-1 * var(--kfl-offcanvas-width));transform:none!important;height:100vh;overflow:auto;transition:left .3s ease-out}.kfl-offcanvas-open.bdt-open .bdt-offcanvas-bar{left:0!important}.kfl-form-message{margin-top:10px}.kfl-gallery-overlay .bdt-overlay{opacity:1}.kfl-lightbox{width:90vw;background:#111;color:#fff}.kfl-lightbox img{display:block;max-width:100%;max-height:90vh;margin:auto}.kfl-native-sticky{position:fixed!important;top:0!important;left:0;right:0;z-index:9990!important}.kfl-native-sticky-spacer{height:var(--kfl-header-height)}
.hfe-nav-menu li:hover>.sub-menu,.hfe-nav-menu li:focus-within>.sub-menu{display:block!important;visibility:visible!important;opacity:1!important}.hfe-nav-menu li>.sub-menu{position:absolute}.hfe-nav-menu>li{position:relative}.kfl-no-scroll{overflow:hidden}.kfl-slide-active{display:block!important}.kfl-slide-hidden{display:none!important}
@media(prefers-reduced-motion:reduce){.animated{animation:none!important}.elementor-invisible{visibility:visible!important}}
.slinky-menu .kfl-slinky-active{display:block!important;position:relative!important;left:0!important;transform:none!important}.slinky-menu.kfl-slinky-deep>ul>li:not(:has(>.kfl-slinky-active)){display:none}.slinky-menu.kfl-slinky-deep>ul>li>.next{display:none}.slinky-menu .kfl-slinky-active .back{display:block;min-height:40px}
.elementor-popup-modal .elementor-location-popup{display:block!important}
.hfe-nav-menu .kfl-menu-expanded>.sub-menu{display:block!important;opacity:1!important;visibility:visible!important}
.elementor-popup-modal .dialog-close-button{top:20px;right:20px;inset-inline-end:20px;padding:0;font-size:15px;line-height:1;color:#1f2124}.elementor-popup-modal .dialog-close-button i{font-size:inherit}

/* Background slides preserve the source's cover crop, stacking and slide direction. */
.kfl-background-slideshow{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;border-radius:inherit}
.kfl-background-slideshow .elementor-background-slideshow__slide{position:absolute;inset:0;width:100%;height:100%;visibility:hidden}
.kfl-background-slideshow .elementor-background-slideshow__slide__image{width:100%;height:100%;background-size:cover;background-position:center center;background-repeat:no-repeat}
.kfl-skip-link{position:fixed;top:8px;left:8px;z-index:100000;padding:12px 18px;background:#fff;color:#821618;transform:translateY(-200%);text-decoration:underline}
.kfl-skip-link:focus{transform:none;outline:2px solid #821618}
.kfl-popup-error{display:block;font-size:14px;margin-top:8px}
