.kavim-boot-brand-stage{
  --kavim-boot-emblem-size:clamp(68px,21vw,88px);
  --kavim-boot-wordmark-width:clamp(158px,50vw,224px);
  position:relative;
  isolation:isolate;
  display:grid;
  place-items:center;
  width:min(330px,calc(100vw - 76px));
  height:122px;
  margin:auto;
  direction:ltr;
}

.kavim-boot-lightplate{
  position:absolute;
  z-index:1;
  width:100%;
  height:96px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:50%;
  background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(245,248,255,.91));
  box-shadow:0 20px 50px rgba(0,0,0,.24),0 0 36px rgba(255,159,26,.13),inset 0 1px 0 #fff;
  opacity:0;
  transform:scaleX(.27) scaleY(.84);
  transform-origin:center;
}

.kavim-boot-lockup{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:100%;
  min-width:0;
  direction:ltr;
  transform:translateZ(0);
}

.kavim-boot-emblem{
  flex:0 0 var(--kavim-boot-emblem-size);
  width:var(--kavim-boot-emblem-size);
  height:var(--kavim-boot-emblem-size);
  object-fit:contain;
  opacity:0;
  transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(-28px) scale(.3) rotate(-155deg);
  filter:drop-shadow(0 10px 16px rgba(9,24,61,.22));
  will-change:transform,opacity;
}

.kavim-boot-wordmark-mask{
  position:relative;
  display:block;
  flex:0 0 var(--kavim-boot-wordmark-width);
  width:var(--kavim-boot-wordmark-width);
  min-width:0;
  overflow:hidden;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  transform:translateX(-16px) scaleX(.92);
  transform-origin:left center;
  filter:blur(7px);
  will-change:clip-path,transform,opacity,filter;
}

.kavim-boot-wordmark-mask::after{
  content:"";
  position:absolute;
  z-index:3;
  top:12%;
  bottom:12%;
  left:0;
  width:3px;
  border-radius:99px;
  background:linear-gradient(180deg,transparent,#ff9f1a 28%,#fff 50%,#ff9f1a 72%,transparent);
  box-shadow:0 0 8px #fff,0 0 18px rgba(255,159,26,.94),0 0 34px rgba(255,159,26,.55);
  opacity:0;
  transform:translateX(0) scaleY(.35);
  pointer-events:none;
}

.kavim-boot-wordmark{
  display:block;
  width:100%;
  height:auto;
  filter:drop-shadow(0 8px 13px rgba(9,24,61,.14));
}

.kavim-boot-brand-stage .tgo-boot-logo-glow{
  position:absolute;
  z-index:0;
  width:118px;
  height:82px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,176,64,.44),rgba(255,159,26,.12) 48%,transparent 72%);
  opacity:0;
  filter:blur(16px);
  animation:none;
  pointer-events:none;
}

.kavim-boot-brand-stage .tgo-boot-orbit{
  position:absolute;
  z-index:2;
  top:50%;
  left:50%;
  right:auto;
  border:1px solid rgba(255,255,255,.26);
  border-radius:50%;
  opacity:0;
  animation:none;
  pointer-events:none;
}

.kavim-boot-brand-stage .orbit-one{
  width:118px;
  height:76px;
  transform:translate(-50%,-50%) rotate(-13deg) scale(.55);
}

.kavim-boot-brand-stage .orbit-two{
  width:92px;
  height:92px;
  transform:translate(-50%,-50%) rotate(18deg) scale(.5);
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-lightplate{
  animation:kavimBootPlateReveal 1.58s cubic-bezier(.2,.82,.2,1) both;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-emblem{
  animation:kavimBootEmblemReveal 1.58s cubic-bezier(.16,1,.3,1) both;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-wordmark-mask{
  animation:kavimBootWordmarkReveal .6s 1.4s cubic-bezier(.16,1,.3,1) both;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-wordmark-mask::after{
  animation:kavimBootEnergyTrace .56s 1.41s cubic-bezier(.2,.82,.2,1) both;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-lockup{
  animation:kavimBootLockupFloat 3.4s 2.05s ease-in-out infinite;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-brand-stage .tgo-boot-logo-glow{
  animation:kavimBootGlowReveal 1.9s ease both,kavimBootGlowPulse 2.6s 2.05s ease-in-out infinite;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-brand-stage .orbit-one{
  animation:kavimBootOrbitOne 1.32s .03s cubic-bezier(.2,.82,.2,1) both;
}

:where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-brand-stage .orbit-two{
  animation:kavimBootOrbitTwo 1.3s .07s cubic-bezier(.2,.82,.2,1) both;
}

@keyframes kavimBootEmblemReveal{
  0%{opacity:0;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(-28px) scale(.3) rotate(-155deg);filter:drop-shadow(0 0 0 rgba(255,159,26,0))}
  19%{opacity:1;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(2px) scale(1.13) rotate(13deg);filter:drop-shadow(0 12px 18px rgba(9,24,61,.25))}
  31%{opacity:1;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(0) scale(.97) rotate(-4deg)}
  43%{opacity:1;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(0) scale(1) rotate(0)}
  55%{opacity:1;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(0) scale(1.08) rotate(0);filter:drop-shadow(0 0 20px rgba(255,159,26,.68))}
  63%{opacity:1;transform:translateX(calc((var(--kavim-boot-wordmark-width) + 5px)/2)) translateY(0) scale(1) rotate(0);filter:drop-shadow(0 10px 16px rgba(9,24,61,.22))}
  100%{opacity:1;transform:translateX(0) scale(1) rotate(0)}
}

@keyframes kavimBootWordmarkReveal{
  0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translateX(-16px) scaleX(.92);filter:blur(7px)}
  12%{opacity:1}
  60%{filter:blur(1.5px)}
  100%{opacity:1;clip-path:inset(0 0 0 0);transform:translateX(0) scaleX(1);filter:blur(0)}
}

@keyframes kavimBootEnergyTrace{
  0%{opacity:0;transform:translateX(0) scaleY(.35)}
  16%{opacity:1;transform:translateX(2px) scaleY(1)}
  78%{opacity:.92;transform:translateX(calc(var(--kavim-boot-wordmark-width) - 8px)) scaleY(1)}
  100%{opacity:0;transform:translateX(var(--kavim-boot-wordmark-width)) scaleY(.28)}
}

@keyframes kavimBootPlateReveal{
  0%{opacity:0;transform:scaleX(.18) scaleY(.64);border-radius:50%}
  19%{opacity:1;transform:scaleX(.3) scaleY(1.08);border-radius:50%}
  38%{opacity:1;transform:scaleX(.28) scaleY(1);border-radius:50%}
  60%{opacity:1;transform:scaleX(.3) scaleY(1);border-radius:50%}
  100%{opacity:1;transform:scaleX(1) scaleY(1);border-radius:29px}
}

@keyframes kavimBootOrbitOne{
  0%{opacity:0;transform:translate(-50%,-50%) rotate(-24deg) scale(.5)}
  28%{opacity:.72;transform:translate(-50%,-50%) rotate(-7deg) scale(1)}
  68%{opacity:.34;transform:translate(-50%,-50%) rotate(18deg) scale(1.12)}
  100%{opacity:0;transform:translate(calc(-50% - 88px),-50%) rotate(46deg) scale(.84)}
}

@keyframes kavimBootOrbitTwo{
  0%{opacity:0;transform:translate(-50%,-50%) rotate(25deg) scale(.48)}
  32%{opacity:.7;transform:translate(-50%,-50%) rotate(4deg) scale(1)}
  70%{opacity:.3;transform:translate(-50%,-50%) rotate(-24deg) scale(1.1)}
  100%{opacity:0;transform:translate(calc(-50% - 88px),-50%) rotate(-52deg) scale(.78)}
}

@keyframes kavimBootGlowReveal{
  0%{opacity:0;transform:scale(.48)}
  36%{opacity:1;transform:scale(1)}
  100%{opacity:.7;transform:translateX(-86px) scale(1.18)}
}

@keyframes kavimBootGlowPulse{
  0%,100%{opacity:.58;transform:translateX(-86px) scale(1.06)}
  50%{opacity:.88;transform:translateX(-86px) scale(1.22)}
}

@keyframes kavimBootLockupFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-4px)}
}

@media(max-width:360px){
  .kavim-boot-brand-stage{
    --kavim-boot-emblem-size:64px;
    --kavim-boot-wordmark-width:148px;
    height:112px;
  }
  .kavim-boot-lightplate{height:88px;border-radius:25px}
}

.kavim-header-stack-image{
  display:block!important;
  width:clamp(82px,7vw,104px)!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 14px rgba(12,25,64,.12));
}

.kavim-full-logo{
  display:block;
  width:clamp(150px,18vw,228px)!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}

.kavim-qr-branded{
  position:relative;
  display:inline-grid!important;
  place-items:center;
  width:170px;
  height:170px;
  max-width:100%;
  margin-inline:auto;
  overflow:hidden;
  border-radius:12px;
  background:#fff;
}

.kavim-qr-branded>canvas,
.kavim-qr-branded>img:not(.kavim-qr-center){
  display:block;
  max-width:100%;
  height:auto;
}

.kavim-qr-branded .kavim-qr-center{
  position:absolute;
  z-index:4;
  inset:50% auto auto 50%;
  width:34px;
  height:34px;
  padding:4px;
  border:3px solid #fff;
  border-radius:10px;
  background:#fff;
  box-shadow:0 3px 10px rgba(10,24,58,.22);
  object-fit:contain;
  transform:translate(-50%,-50%);
  pointer-events:none;
}

@media(max-width:520px){
  .kavim-header-stack-image{width:clamp(68px,20vw,84px)!important}
  .kavim-full-logo{width:clamp(142px,45vw,190px)!important}
}

@media(prefers-reduced-motion:reduce){
  .kavim-boot-brand-stage *,
  :where(.tgo-boot-loader.is-visible,.boot-screen:not([hidden]),.boot-view:not([hidden])) .kavim-boot-brand-stage *{
    animation:none!important;
  }
  .kavim-boot-lightplate{
    opacity:1;
    transform:none;
    border-radius:29px;
  }
  .kavim-boot-emblem{
    opacity:1;
    transform:none;
  }
  .kavim-boot-wordmark-mask{
    opacity:1;
    clip-path:none;
    transform:none;
    filter:none;
  }
  .kavim-boot-brand-stage .tgo-boot-logo-glow,
  .kavim-boot-brand-stage .tgo-boot-orbit{
    display:none;
  }
}
