/* A 600 ms KoaHost signal, with no layout shift or first-visit loading screen. */
.kv-page-transition[hidden]{display:none!important}
.kv-page-transition{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;overflow:hidden;isolation:isolate;pointer-events:auto;background:#07121bf5;color:#eaf6ff;contain:strict;cursor:progress}
.kv-page-transition::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 46%,#56def215 0,transparent 52%),linear-gradient(120deg,transparent 29%,#56def205 30%,transparent 31%,transparent 68%,#56def205 69%,transparent 70%);z-index:-1}
.kv-transition-grid{position:absolute;inset:-80px;background-image:linear-gradient(#56def209 1px,transparent 1px),linear-gradient(90deg,#56def209 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at center,#000 5%,transparent 68%);z-index:-1}
.kv-transition-scan{position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(100deg,transparent 35%,#56def20b 48%,#56def226 50%,#56def20b 52%,transparent 65%);z-index:-1}
.kv-transition-core{display:flex;flex-direction:column;align-items:center;gap:23px;will-change:transform,opacity}
.kv-transition-orbit{position:relative;display:grid;place-items:center;width:164px;height:164px}
.kv-transition-orbit::before{content:"";position:absolute;inset:29px;border-radius:50%;background:radial-gradient(circle,#56def211,transparent 72%);box-shadow:0 0 65px #56def20c}
.kv-transition-ring{position:absolute;inset:0;border:1px solid #56def227;border-radius:50%}
.kv-transition-ring-outer::before{content:"";position:absolute;inset:-1px;border:2px solid transparent;border-top-color:#56def2;border-right-color:#56def259;border-radius:50%;filter:drop-shadow(0 0 6px #56def27a)}
.kv-transition-ring-outer::after{content:"";position:absolute;top:20px;right:20px;width:5px;height:5px;background:#d0fbff;border-radius:50%;box-shadow:0 0 12px #56def2}
.kv-transition-ring-inner{inset:13px;border-style:dashed;border-color:#56def24a;border-left-color:#f1ad6499;border-bottom-color:#f1ad6466}
.kv-transition-mark{position:relative;display:block;width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 0 16px #56def247)}
.kv-transition-cross{position:absolute;width:9px;height:9px;border-color:#56def2a6;border-style:solid;border-width:1px 0 0 1px}
.kv-transition-cross-a{top:-9px;left:-9px}
.kv-transition-cross-b{right:-9px;bottom:-9px;transform:rotate(180deg)}
.kv-transition-wordmark{font:700 24px/1.1 Manrope,Arial,sans-serif;letter-spacing:-1px;color:#eaf6ff}
.kv-transition-wordmark>span{font-weight:400;color:#9aafbf}
.kv-transition-wordmark>b{color:#56def2}
.kv-transition-track{height:2px;width:124px;background:#56def21c;overflow:hidden}
.kv-transition-track>span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#56def25c,#56def2 78%,#f1ad64);box-shadow:0 0 14px #56def299}
/* Explicit owner preference: keep this short transition active for every visitor. */
.kv-transition-active{animation:kv-transition-cover 600ms cubic-bezier(.2,.7,.2,1) both!important}
.kv-transition-active .kv-transition-core{animation:kv-transition-core 600ms cubic-bezier(.16,1,.3,1) both!important}
.kv-transition-active .kv-transition-grid{animation:kv-transition-grid 600ms ease-out both!important}
.kv-transition-active .kv-transition-scan{animation:kv-transition-scan 600ms ease-in-out both!important}
.kv-transition-active .kv-transition-ring-outer{animation:kv-transition-orbit 600ms cubic-bezier(.25,.65,.4,1) both!important}
.kv-transition-active .kv-transition-ring-inner{animation:kv-transition-orbit 600ms ease-out reverse both!important}
.kv-transition-active .kv-transition-track>span{animation:kv-transition-fill 600ms cubic-bezier(.2,.7,.35,1) both!important}
@keyframes kv-transition-cover{0%{opacity:0}22%,100%{opacity:1}}
@keyframes kv-transition-core{0%{opacity:0;transform:translateY(12px) scale(.9)}24%,78%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-7px) scale(1.025)}}
@keyframes kv-transition-grid{from{transform:translateY(20px)}to{transform:translateY(-12px)}}
@keyframes kv-transition-scan{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@keyframes kv-transition-orbit{from{transform:rotate(-100deg)}to{transform:rotate(220deg)}}
@keyframes kv-transition-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:480px){.kv-transition-orbit{width:142px;height:142px}.kv-transition-mark{width:64px;height:64px}.kv-transition-wordmark{font-size:22px}.kv-transition-core{gap:21px}}
