/* Kebun Bistro transparent logo transition: no splash background, only the brand mark. */
.kbn-page-loader{display:none}
.kbn-transitions-ready .kbn-page-loader{position:fixed;inset:0;z-index:2147482000;display:grid;place-items:center;overflow:hidden;background:transparent;pointer-events:none;-webkit-clip-path:circle(150vmax at 50% 50%);clip-path:circle(150vmax at 50% 50%);animation:kbn-loader-failsafe 0s linear 4.8s forwards;will-change:clip-path}
.kbn-page-loader.is-active{animation:none;-webkit-clip-path:circle(150vmax at 50% 50%);clip-path:circle(150vmax at 50% 50%)}
.kbn-page-loader.is-exiting{transition:-webkit-clip-path .76s cubic-bezier(.72,0,.18,1),clip-path .76s cubic-bezier(.72,0,.18,1);-webkit-clip-path:circle(0 at 50% 50%);clip-path:circle(0 at 50% 50%)}
.kbn-page-loader.is-hidden{display:none}
.kbn-page-loader__stage{position:relative;width:clamp(106px,10.5vw,170px);aspect-ratio:1;display:grid;place-items:center;isolation:isolate;animation:kbn-loader-breathe 1.95s ease-in-out .42s infinite;transform-origin:center;will-change:transform,filter}
.kbn-page-loader__stage:before,.kbn-page-loader__stage:after{content:"";position:absolute;inset:0;background-image:var(--kbn-loader-logo);background-repeat:no-repeat;background-position:center;background-size:contain;opacity:0;pointer-events:none;will-change:transform,clip-path,opacity,filter}
.kbn-page-loader__stage:before{z-index:-1;filter:grayscale(1) brightness(1.55) sepia(1) saturate(1.7) hue-rotate(105deg);mix-blend-mode:screen;animation:kbn-loader-glitch-a 2.25s steps(1,end) .62s infinite}
.kbn-page-loader__stage:after{z-index:1;filter:grayscale(1) brightness(1.45) sepia(1) saturate(2.1) hue-rotate(338deg);mix-blend-mode:screen;animation:kbn-loader-glitch-b 2.25s steps(1,end) .67s infinite}
.kbn-page-loader__logo{position:relative;z-index:0;width:100%;height:auto;display:block;filter:grayscale(1) brightness(0) invert(1) drop-shadow(0 7px 20px rgba(0,0,0,.26));opacity:0;animation:kbn-loader-logo-in .42s ease-out .05s forwards,kbn-loader-ink-jitter 2.25s steps(1,end) .55s infinite;transform-origin:center;will-change:transform,filter,opacity}
@keyframes kbn-loader-logo-in{from{opacity:0;transform:translateY(7px)}to{opacity:.98;transform:translateY(0)}}
@keyframes kbn-loader-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
@keyframes kbn-loader-ink-jitter{0%,76%,80%,88%,100%{transform:translate(0,0) skewX(0);filter:grayscale(1) brightness(0) invert(1) drop-shadow(0 7px 20px rgba(0,0,0,.26))}77%{transform:translate(-1px,0) skewX(-.35deg);filter:grayscale(1) brightness(0) invert(1) contrast(1.2) drop-shadow(2px 0 rgba(198,161,93,.22))}78%{transform:translate(1px,-.5px) skewX(.35deg);filter:grayscale(1) brightness(0) invert(1) contrast(.9) drop-shadow(-2px 0 rgba(52,117,106,.25))}79%{transform:translate(0,.5px) skewX(0)}}
@keyframes kbn-loader-glitch-a{0%,75%,81%,86%,100%{opacity:0;transform:translate(0,0);clip-path:inset(0 0 100% 0)}76%{opacity:.24;transform:translate(-5px,0);clip-path:inset(12% 0 67% 0)}77%{opacity:.34;transform:translate(4px,-1px);clip-path:inset(48% 0 31% 0)}78%{opacity:.18;transform:translate(-2px,1px);clip-path:inset(74% 0 8% 0)}79%,80%{opacity:0;transform:translate(0,0);clip-path:inset(0 0 100% 0)}82%{opacity:.2;transform:translate(3px,0);clip-path:inset(28% 0 57% 0)}83%{opacity:.12;transform:translate(-3px,0);clip-path:inset(61% 0 20% 0)}84%,85%{opacity:0;transform:translate(0,0)}}
@keyframes kbn-loader-glitch-b{0%,76%,82%,87%,100%{opacity:0;transform:translate(0,0);clip-path:inset(100% 0 0 0)}77%{opacity:.18;transform:translate(5px,1px);clip-path:inset(20% 0 62% 0)}78%{opacity:.26;transform:translate(-4px,0);clip-path:inset(54% 0 27% 0)}79%{opacity:.14;transform:translate(2px,-1px);clip-path:inset(80% 0 4% 0)}80%,81%{opacity:0;transform:translate(0,0)}83%{opacity:.16;transform:translate(-3px,0);clip-path:inset(35% 0 49% 0)}84%{opacity:.11;transform:translate(2px,0);clip-path:inset(68% 0 15% 0)}85%,86%{opacity:0;transform:translate(0,0)}}
@keyframes kbn-loader-failsafe{to{visibility:hidden;pointer-events:none}}
@media (max-width:640px){.kbn-page-loader__stage{width:clamp(88px,27vw,128px)}}
@media (max-width:390px){.kbn-page-loader__stage{width:86px}}
@media (prefers-reduced-motion:reduce){.kbn-page-loader__stage,.kbn-page-loader__logo,.kbn-page-loader__stage:before,.kbn-page-loader__stage:after{animation:none!important}.kbn-page-loader__logo{opacity:1;transform:none}.kbn-page-loader__stage:before,.kbn-page-loader__stage:after{display:none}.kbn-page-loader.is-exiting{transition-duration:.18s}}
