/* Content is visible by default. Only the initialized observer arms a reveal. */
.reveal-heading { display: flex; flex-direction: column; }
.reveal-heading-line {
  position: relative;
  display: block;
  overflow: hidden;
  padding-block: 0.15em;
  margin-block: -0.15em;
}
.reveal-heading-content { display: block; }
.reveal-mask-definitions { position: absolute; width: 0; height: 0; pointer-events: none; }
.reveal-mask-letter { opacity: 1; }
.is-revealed:not(.reveal-ready) .reveal-letter-line {
  mask-image: none !important;
  -webkit-mask-image: none !important;
}

@media (prefers-reduced-motion: no-preference) {
  [data-image-reveal].reveal-ready:not(.is-revealed) {
    clip-path: inset(0 100% 0 0);
  }
  [data-image-reveal].reveal-ready.is-revealed {
    clip-path: inset(0 0 0 0);
    transition: clip-path 1200ms cubic-bezier(0.16, 1, 0.3, 1);
  }
  [data-image-reveal].reveal-ready.is-revealing { will-change: clip-path, transform; }
  .reveal-ready.is-revealed [data-reveal-item] {
    transition: opacity 800ms cubic-bezier(0.16, 1, 0.3, 1),
      transform 1000ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--reveal-delay, 0ms);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item] {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item="line"] {
    opacity: 1;
    transform: translate3d(0, 10px, 0);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item="label"] {
    transform: translate3d(0, 8px, 0);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item="panel"] {
    transform: translate3d(0, 24px, 0);
  }
  .reveal-ready.is-revealed [data-reveal-item] {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
  .reveal-ready.is-revealing [data-reveal-item] { will-change: opacity, transform; }
  .reveal-ready:not(.is-revealed) .reveal-mask-letter { opacity: 0; }
  .reveal-ready.is-revealed .reveal-mask-letter {
    opacity: 1;
    transition: opacity 600ms cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--reveal-delay, 0ms);
  }
}

@media (max-width: 767px) and (prefers-reduced-motion: no-preference) {
  [data-image-reveal].reveal-ready.is-revealed { transition-duration: 900ms; }
  .reveal-ready.is-revealed [data-reveal-item] {
    transition-duration: 500ms, 650ms;
    transition-delay: calc(var(--reveal-delay, 0ms) * 0.6);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item="line"] {
    transform: translate3d(0, 6px, 0);
  }
  .reveal-ready.is-revealed .reveal-mask-letter {
    transition-duration: 450ms;
    transition-delay: calc(var(--reveal-delay, 0ms) * 0.75);
  }
  .reveal-ready:not(.is-revealed) [data-reveal-item="panel"],
  .reveal-ready:not(.is-revealed) [data-reveal-item="text"] {
    transform: translate3d(0, 10px, 0);
  }
}

@media print, (prefers-reduced-motion: reduce) {
  [data-image-reveal] { clip-path: none !important; transition: none !important; }
  [data-reveal-item] { opacity: 1 !important; transform: none !important; transition: none !important; }
  .reveal-heading-line { overflow: visible; }
  .reveal-letter-line { mask-image: none !important; -webkit-mask-image: none !important; }
  .reveal-mask-letter { opacity: 1 !important; transition: none !important; }
}
