/* First-paint entrances, not an intro: no overlay, scroll lock or loading dependency.
   HouseHeadScript supplies hk-js (inner pages) or jdlo-home4-font (home) before paint. Without JS or with reduced motion,
   every element keeps its ordinary visible/static style. */
@keyframes jdlo-enter-line {
  from { opacity: 0; transform: translate3d(0, .7em, 0); clip-path: inset(0 0 100% 0); }
  to { opacity: 1; transform: none; clip-path: inset(-.12em -.04em); }
}
@keyframes jdlo-enter-copy {
  from { opacity: 0; transform: translate3d(0, 18px, 0); }
  to { opacity: 1; transform: none; }
}
@keyframes jdlo-enter-photo {
  from { clip-path: inset(9% 4% 9% 4%); }
  to { clip-path: inset(0); }
}
@keyframes jdlo-enter-image {
  from { transform: scale(1.08); }
  to { transform: scale(1); }
}
@media (prefers-reduced-motion: no-preference) {
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .h4-name > span,
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .open__name {
    animation: jdlo-enter-line .82s cubic-bezier(.31,.13,.11,1) both;
  }
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .h4-name > span:nth-of-type(2) { animation-delay: .06s; }
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .h4-line,
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .open__role {
    animation: jdlo-enter-copy .72s cubic-bezier(.31,.13,.11,1) .08s both;
  }
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) :is(.h4-ctas,.open__reach,.svc__reach,.contact-ways) {
    animation: jdlo-enter-copy .70s cubic-bezier(.31,.13,.11,1) .16s both;
  }
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .h4-photo,
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .open__portrait:not([data-v5-portrait-open]) {
    animation: jdlo-enter-photo .88s cubic-bezier(.31,.13,.11,1) both;
  }
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .h4-photo img,
  :is(.hk-js,.jdlo-home4-font) .jdlo-v5:not([data-v5-restored]) .open__portrait:not([data-v5-portrait-open]) img {
    animation: jdlo-enter-image .88s cubic-bezier(.31,.13,.11,1) both;
  }
  html[data-jdlo-loader="on"] .jdlo-v5:not([data-v5-entrance-ready]):not([data-v5-restored]) :is(.h4-name > span,.open__name,.h4-line,.open__role,.h4-ctas,.open__reach,.svc__reach,.contact-ways,.h4-photo,.h4-photo img,.open__portrait:not([data-v5-portrait-open]),.open__portrait:not([data-v5-portrait-open]) img) {
    animation-play-state: paused;
  }
}
