.text-rotate {
  display: inline-flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  position: relative;
  vertical-align: bottom;
}
.text-rotate-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
.text-rotate-word {
  display: inline-flex;
  white-space: nowrap;
}
.text-rotate-container {
  display: inline-flex;
  flex-wrap: nowrap;
  white-space: nowrap;
}
.text-rotate-char {
  display: inline-block;
  transform: translateY(70%);
  opacity: 0;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease;
  will-change: transform, opacity;
  white-space: nowrap;
}
.text-rotate-char.visible {
  transform: translateY(0);
  opacity: 1;
}
.text-rotate-space {
  white-space: pre;
}
