/* Additions on top of their stylesheet (jc.css): entrances without GSAP, our dialog body, a few RH-only bits. */
.word-mask .word.pre-in { transform: translateY(110%); transition: transform .9s cubic-bezier(.22, 1, .36, 1); }
.word-mask .word.pre-in.is-in { transform: none; }
.pre-in:not(.word) { opacity: 0; transform: translateY(24px); transition: opacity .9s cubic-bezier(.22, 1, .36, 1), transform .9s cubic-bezier(.22, 1, .36, 1); }
.pre-in:not(.word).is-in { opacity: 1; transform: none; }
.dlg-body { display: flex; flex-direction: column; gap: 18px; }
.contents { display: contents; }
.pm-mark canvas { display: block; }
.fan .card:nth-child(n) { --fr: 0deg; }
.justify-between { justify-content: space-between; }
