body.pc .beon-halloween-intro .beon-halloween-hall,
body.pc .beon-halloween-intro .beon-halloween-ween,
body.pc .beon-halloween-intro .beon-halloween-shell,
body.pc .beon-halloween-intro .beon-halloween-disc,
body.pc .beon-halloween-intro .beon-halloween-fallback img.beon-halloween-jelly { opacity: 0; }
body.pc .beon-halloween-intro .beon-halloween-shell-motion,
body.pc .beon-halloween-intro .beon-halloween-ring { animation-play-state: paused; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-hall,
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-ween { animation: beon-intro-haunt 1.25s linear both; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-shell { animation: beon-intro-reveal .65s ease-out .75s both; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-disc { animation: beon-intro-booking .55s ease-out 1.5s both; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-shell-motion { animation: beon-halloween-shell-float 7s ease-in-out .75s infinite; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-ring { animation: beon-halloween-ring-turn 24s linear 1.5s infinite; }
/* Keep blur fixed on decorative layers; blend the sharp glyphs with opacity. */
body.pc .beon-halloween-intro .beon-halloween-title-ink { display: block; opacity: 0; will-change: opacity; }
body.pc .beon-halloween-intro .beon-halloween-title-haze,
body.pc .beon-halloween-intro .beon-halloween-title-mist { position: absolute; inset: 0; opacity: 0; pointer-events: none; will-change: opacity; }
body.pc .beon-halloween-intro .beon-halloween-title-haze { filter: blur(5px); text-shadow: 5px 0 12px rgba(109, 29, 100, .25), -5px 0 14px rgba(58, 51, 113, .18); }
body.pc .beon-halloween-intro .beon-halloween-title-mist { filter: blur(1.2px); }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-title-ink { animation: beon-intro-title-ink 1.25s linear both; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-title-haze { animation: beon-intro-title-haze 1.25s linear both; }
body.pc .beon-halloween-intro.is-headline-started .beon-halloween-title-mist { animation: beon-intro-title-mist 1.25s linear both; }
@keyframes beon-intro-haunt {
  0% { opacity: 0; transform: translate(-4px, 10px) skewX(-3deg); }
  28% { opacity: .65; transform: translate(3px, 5px) skewX(1deg); }
  42% { opacity: .5; transform: translate(-2px, 3px) skewX(0deg); }
  60%, 100% { opacity: 1; transform: translate(0px, 0px) skewX(0deg); }
}
@keyframes beon-intro-title-ink {
  0% { opacity: 0; }
  28% { opacity: .03; }
  42% { opacity: .15; }
  60% { opacity: .62; }
  76% { opacity: .9; }
  88% { opacity: .98; }
  100% { opacity: 1; }
}
@keyframes beon-intro-title-haze {
  0%, 28% { opacity: .8; }
  42% { opacity: .65; }
  60% { opacity: .38; }
  76% { opacity: .12; }
  88%, 100% { opacity: 0; }
}
@keyframes beon-intro-title-mist {
  0% { opacity: .2; }
  28% { opacity: .35; }
  42% { opacity: .6; }
  60% { opacity: .45; }
  76% { opacity: .16; }
  88% { opacity: .035; }
  100% { opacity: 0; }
}
@keyframes beon-intro-reveal {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes beon-intro-booking {
  from { opacity: 0; translate: 0 12px; scale: .85; }
  to { opacity: 1; translate: 0 0; scale: 1; }
}
body.pc .beon-halloween-intro.is-intro-fallback.is-intro-started img.beon-halloween-jelly {
  animation: beon-intro-jelly 6.4s cubic-bezier(.4, 0, .6, 1) var(--beon-entry-delay) both,
    beon-intro-fallback-float 13s ease-in-out calc(var(--beon-entry-delay) + 6.4s) infinite;
}
body.pc .beon-halloween-intro .beon-halloween-jelly-right { --beon-entry-delay: var(--beon-jelly-start, .8s); --beon-float: -15px; }
body.pc .beon-halloween-intro .beon-halloween-jelly-middle { --beon-entry-delay: calc(var(--beon-jelly-start, .8s) + var(--beon-jelly-stagger, 2.4s)); --beon-float: -22px; }
body.pc .beon-halloween-intro .beon-halloween-jelly-left { --beon-entry-delay: calc(var(--beon-jelly-start, .8s) + var(--beon-jelly-stagger, 2.4s) * 2); --beon-float: -18px; }
@keyframes beon-intro-jelly {
  from { opacity: 0; transform: translate(-85%, var(--beon-start-y, 70vh)) rotate(-2deg); }
  to { opacity: .7; transform: translate(0, 0) rotate(0); }
}
@keyframes beon-intro-fallback-float {
  0%, 100% { transform: translateY(0) rotate(0); }
  35% { transform: translateY(var(--beon-float)) rotate(2deg); }
  70% { transform: translateY(calc(var(--beon-float) * -.6)) rotate(-1deg); }
}
@media (prefers-reduced-motion: reduce) {
  body.pc .beon-halloween-intro .beon-halloween-title-ink { opacity: 1; animation: none !important; }
  body.pc .beon-halloween-intro .beon-halloween-title-haze,
  body.pc .beon-halloween-intro .beon-halloween-title-mist { display: none; animation: none !important; }

  body.pc .beon-halloween-intro .beon-halloween-hall,
  body.pc .beon-halloween-intro .beon-halloween-ween,
  body.pc .beon-halloween-intro .beon-halloween-shell,
  body.pc .beon-halloween-intro .beon-halloween-disc { opacity: 1; animation: none !important; transform: none; translate: none; scale: none; }
  body.pc .beon-halloween-intro .beon-halloween-fallback img.beon-halloween-jelly { opacity: .7; animation: none !important; transform: none; }
  body.pc .beon-halloween-intro .beon-halloween-shell-motion,
  body.pc .beon-halloween-intro .beon-halloween-ring { animation: none !important; }
}
