/* Canonical first-screen motion. One static DOM and one state owner. */
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hero-first-frame{overflow:visible!important;}

/* Bare first-paint geometry: mass wrappers behave as normal inline content.
   Dot wrappers are permanent neutral boxes, exactly as in the accepted baseline. */
html.bz-hml-preboot body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece{
  display:inline!important;
  visibility:hidden!important;
  opacity:0!important;
}
html.bz-hml-preboot body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  display:inline-block!important;
  position:relative!important;
  visibility:hidden!important;
  opacity:0!important;
}

/* Only the active entrance creates transformable mass boxes. */
html.bz-hml-preparing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece,
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece{
  display:inline-block!important;
  position:relative!important;
  transform-origin:50% 74%!important;
}
html.bz-hml-preparing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece,
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  display:inline-block!important;
  position:relative!important;
  transform-origin:50% 58%!important;
}
html.bz-hml-preparing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece,
html.bz-hml-preparing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  visibility:hidden!important;
  opacity:0!important;
}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece{
  visibility:visible!important;
  opacity:0;
}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  visibility:visible!important;
}

/* After playback preserve the exact terminal animation geometry.
   No DOM unwrap and no inline-block→inline reflow at settle. */
html.bz-hml-settled body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece{
  display:inline-block!important;
  position:relative!important;
  visibility:visible!important;
  opacity:1!important;
  transform:translate3d(var(--bz-hml-final-x,0px),0,0)!important;
  filter:none!important;
  animation:none!important;
}
html.bz-hml-settled body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  display:inline-block!important;
  position:relative!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  animation:none!important;
}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece{will-change:transform,opacity!important;}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{will-change:transform,filter,opacity!important;}

/* Existing glyph owners keep paint/gradient. Only neutral outer boxes move.
   Text stays hidden during each delay and becomes fully opaque on its first moving frame; no grey compositor phase. */
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz1089-dot-1,
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz1050-brosit-dot{
  animation:none!important;
  opacity:1!important;
  filter:none!important;
}

html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--primary{
  animation:bz-hml-relay-primary var(--bz-hml-primary-duration,500ms) cubic-bezier(.08,.82,.16,1) var(--bz-hml-primary-delay,0ms) forwards!important;
}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--secondary{
  animation:bz-hml-relay-secondary var(--bz-hml-secondary-duration,480ms) cubic-bezier(.08,.82,.16,1) var(--bz-hml-secondary-delay,125ms) forwards!important;
}
html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--tertiary{
  animation:bz-hml-relay-tertiary var(--bz-hml-tertiary-duration,420ms) cubic-bezier(.08,.82,.16,1) var(--bz-hml-tertiary-delay,315ms) forwards!important;
}
@keyframes bz-hml-relay-primary{
  0%{opacity:1;transform:translate3d(calc(var(--bz-hml-final-x,0px) - 52vw),0,0) scaleX(1.085)}
  64%{transform:translate3d(calc(var(--bz-hml-final-x,0px) + 16px),0,0) scaleX(.985)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}
@keyframes bz-hml-relay-secondary{
  0%{opacity:1;transform:translate3d(calc(var(--bz-hml-final-x,0px) + 52vw),0,0) scaleX(1.075)}
  64%{transform:translate3d(-14px,0,0) scaleX(.987)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}
@keyframes bz-hml-relay-tertiary{
  0%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),120px,0) scaleX(1.05)}
  66%{transform:translate3d(var(--bz-hml-final-x,0px),-8px,0) scaleX(.99)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}

@keyframes bz-hml-cross-primary{
  0%{opacity:1;transform:translate3d(calc(var(--bz-hml-final-x,0px) - 46vw),0,0) scaleX(1.06)}
  72%{transform:translate3d(calc(var(--bz-hml-final-x,0px) + 10px),0,0) scaleX(.994)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}
@keyframes bz-hml-cross-secondary{
  0%{opacity:1;transform:translate3d(calc(var(--bz-hml-final-x,0px) + 46vw),0,0) scaleX(1.06)}
  72%{transform:translate3d(calc(var(--bz-hml-final-x,0px) - 10px),0,0) scaleX(.994)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}
@keyframes bz-hml-cross-tertiary{
  0%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),105px,0) scaleX(1.035)}
  78%{transform:translate3d(var(--bz-hml-final-x,0px),-5px,0) scaleX(.997)}
  100%{opacity:1;transform:translate3d(var(--bz-hml-final-x,0px),0,0)}
}
@media(max-width:760px){
  html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--primary{animation-name:bz-hml-cross-primary!important;animation-timing-function:cubic-bezier(.13,.78,.18,1)!important;}
  html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--secondary{animation-name:bz-hml-cross-secondary!important;animation-timing-function:cubic-bezier(.13,.78,.18,1)!important;}
  html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece--tertiary{animation-name:bz-hml-cross-tertiary!important;animation-timing-function:cubic-bezier(.13,.78,.18,1)!important;}
}

html.bz-hml-playing body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{
  animation:bz-hml-dot-brake var(--bz-hml-dot-duration,760ms) cubic-bezier(.18,.82,.18,1) var(--bz-hml-dot-delay,920ms) both!important;
}
@keyframes bz-hml-dot-brake{
  0%{opacity:0;transform:translate3d(160px,-4px,0) scale(.90);filter:drop-shadow(-10px 0 5px rgba(58,40,34,.38))}
  16%{opacity:1}
  74%{opacity:1;transform:translate3d(-14px,0,0) scale(1.026);filter:drop-shadow(4px 0 2px rgba(58,40,34,.28))}
  89%{transform:translate3d(3px,0,0) scale(.995);filter:none}
  100%{opacity:1;transform:translate3d(0,0,0);filter:none}
}

@media(prefers-reduced-motion:reduce){
  html.bz-hml-preboot body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-piece,
  html.bz-hml-preboot body #borzilov-lp#borzilov-lp #bz-hero .bz-hml-dot-piece{visibility:visible!important;opacity:1!important;}
}
