#heroSolidHeading {
  position: relative;
}

#heroSolidHeading .title-one {
  font-size: clamp(78px, 5.3vw, 102px) !important;
  letter-spacing: -.04em;
}

#heroSolidHeading .title-two {
  letter-spacing: -.012em;
}

.solid-title-char {
  display: inline-block;
  opacity: 0;
  filter: blur(5px);
  transform: translate(var(--scatter-x), var(--scatter-y)) rotate(var(--scatter-r));
  transition:
    opacity .9s ease var(--char-delay),
    filter 1.15s ease var(--char-delay),
    transform 1.45s cubic-bezier(.16, .76, .2, 1) var(--char-delay);
  will-change: transform, opacity, filter;
}

.hero.awake .solid-title-char {
  opacity: 1;
  filter: blur(0);
  transform: translate(0, 0) rotate(0);
}

#heroSolidHeading.title-interactive .solid-title-char {
  transform: translate(0, 0);
  transition: transform .28s cubic-bezier(.2, .75, .2, 1);
}

#heroSolidHeading.title-interactive .solid-title-char.title-wave {
  animation: solid-title-wave .88s cubic-bezier(.2, .72, .2, 1) var(--wave-delay, 0ms) both;
}

@keyframes solid-title-wave {
  0% { transform: translateY(0) scale(1); }
  30% { transform: translateY(calc(var(--wave-height, 7px) * -1)) scale(1.012); }
  58% { transform: translateY(calc(var(--wave-height, 7px) * .32)) scale(.996); }
  78% { transform: translateY(calc(var(--wave-height, 7px) * -.12)); }
  100% { transform: translateY(0) scale(1); }
}

@media (max-width: 900px) {
  #heroSolidHeading .title-one { font-size: clamp(58px, 8vw, 72px) !important; }
}

@media (max-width: 560px), (prefers-reduced-motion: reduce) {
  #heroSolidHeading .title-one { font-size: 46px !important; }
  .solid-title-char {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none;
    animation: none !important;
  }
}
