/* Original homepage timings, plus the requested custom logo sequence. */
[data-motion-key="hero-heading"],[data-motion-key="hero-intro"],[data-motion-key="manifesto"]{--enter-duration:1050ms}
[data-motion-key="service-digital"]{--enter-delay:500ms}
[data-motion-key="service-culture"]{--enter-delay:1000ms}
[data-motion-key="work-heading"]{--enter-delay:100ms}
.work-button-motion{width:fit-content;height:auto;margin:auto}
@media(prefers-reduced-motion:no-preference){
 .motion-enabled [data-enter]:not([data-enter-state="done"]){animation:motion-fadeIn var(--enter-duration,1200ms) var(--enter-delay,1ms) cubic-bezier(.445,.05,.55,.95) backwards 1 paused}
 .motion-enabled [data-enter="punch"]:not([data-enter-state="done"]){--motion-translate:0px 0px;animation:motion-fadeIn 420ms 1400ms cubic-bezier(.55,.055,.675,.19) backwards 1 paused,motion-punchIn 1400ms 1400ms linear backwards 1 paused}
 .motion-enabled [data-enter="logo-wave"]:not([data-enter-state="done"]){animation:levels-logo-reveal 850ms var(--logo-delay,0ms) cubic-bezier(.22,1,.36,1) both 1 paused}
 .motion-enabled [data-enter][data-enter-state="running"]{animation-play-state:running}
}
@keyframes motion-fadeIn {
  0% { opacity: 0; }
  100% { opacity: var(--comp-opacity, 1); }
}
@keyframes motion-punchIn {
  0.00009999999999999999% { translate: var(--motion-translate); scale: 0; animation-timing-function: cubic-bezier(0.95, 0.05, 0.795, 0.035); }
  30% { animation-timing-function: linear; scale: 0.3; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 1) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 1); }
  45% { animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); scale: 1.4; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * -0.4) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * -0.4); }
  62.64999999999999% { animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); scale: 0.8; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 0.2) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 0.2); }
  77.27% { animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); scale: 1.1; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * -0.1) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * -0.1); }
  86.23% { animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); scale: 0.94; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 0.06) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 0.06); }
  91.73% { animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); scale: 1.03; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * -0.03) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * -0.03); }
  95.11% { animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); scale: 0.98; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 0.02) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 0.02); }
  97.18% { animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); scale: 1.01; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * -0.01) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * -0.01); }
  98.45% { animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); scale: 0.99; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 0.01) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 0.01); }
  100% { animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); scale: 1; translate: calc(var(--motion-width, 100%) * 1.1 / 3 * 0 * 0) calc(var(--motion-height, 100%) * 1.1 / 3 * 0 * 0); }
}

/* Individual logo entrances retain each logo's original SVG color filter. */
@keyframes levels-logo-reveal {
  from { opacity:0; translate:var(--logo-from-x,-16px) 18px; scale:.965; }
  to { opacity:1; translate:0 0; scale:1; }
}
