/* A quiet vertical letter roll. No hinge, panel texture, or random characters. */
.departure-board .departure-visual,
.departure-board .departure-cell,
.departure-board .departure-glyph,
.floating-nav .departure-nav .departure-run,
.floating-nav .departure-nav .departure-cell,
.floating-nav .departure-nav .departure-glyph {
  padding: 0;
  margin: 0;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
}
.departure-board .departure-visual,
.floating-nav .departure-nav .departure-run { display: inline-block; white-space: pre; }
.departure-board .departure-cell,
.floating-nav .departure-nav .departure-cell {
  position: relative;
  display: inline-block;
  height: 1.22em;
  line-height: 1.22;
  overflow: hidden;
  vertical-align: bottom;
}
.departure-board .departure-glyph,
.floating-nav .departure-nav .departure-glyph {
  position: relative;
  display: block;
  height: 100%;
  line-height: inherit;
}
.departure-glyph::before {
  content: attr(data-letter);
  position: absolute;
  top: -110%;
  left: 0;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
}
.departure-board.is-rolling .departure-glyph {
  animation: departure-letter-roll .62s cubic-bezier(.22, .68, .18, 1) both;
  animation-delay: calc(var(--departure-order) * .023s);
}
.floating-nav .departure-nav.is-rolling .departure-glyph {
  animation: departure-letter-roll .44s cubic-bezier(.22, .68, .18, 1) both;
  animation-delay: calc(var(--departure-order) * .009s);
}
@keyframes departure-letter-roll {
  from { transform: translateY(0); }
  to { transform: translateY(110%); }
}
.departure-board .departure-accessible,
.floating-nav .departure-nav .departure-accessible {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (prefers-reduced-motion: reduce) {
  .departure-board .departure-glyph,
  .floating-nav .departure-nav .departure-glyph { animation: none !important; transform: none !important; }
}
