/* All content is visible by default; JavaScript enhances elements below the fold. */
.motion-pending {
  opacity: 0;
  translate: 0 20px;
}
.motion-revealed {
  animation: section-arrive 640ms cubic-bezier(0.2, 0.7, 0.2, 1) both;
  animation-delay: var(--motion-delay, 0ms);
}
@keyframes section-arrive {
  from {
    opacity: 0;
    translate: 0 20px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}
.mini-bars i {
  transform-origin: center bottom;
}
.reading-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 50;
  height: 3px;
  background: var(--orange);
  transform-origin: left center;
  transform: scaleX(var(--reading-progress, 0));
  pointer-events: none;
}
.nav-links a.is-current {
  color: #bf3e07;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 7px;
}
.nav-download.is-current {
  box-shadow:
    0 0 0 2px var(--paper),
    0 0 0 3px var(--orange);
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .motion-tilt {
    transform: perspective(900px)
      translate3d(var(--shift-x, 0px), var(--shift-y, 0px), 0)
      rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg));
    transition: transform 550ms cubic-bezier(0.2, 0.7, 0.2, 1);
  }
  .motion-tracking {
    transition-duration: 140ms;
  }
}
@media (prefers-reduced-motion: reduce) {
  .motion-pending,
  .motion-revealed {
    opacity: 1;
    translate: none;
    animation: none;
  }
  .motion-tilt {
    transform: none;
  }
}
