@media (max-width: 767.98px) {
  html {
    font-size: calc(100vw / 18);
  }
}
@media (min-width: 768px) and (max-width: 1921.99px) {
  html {
    font-size: calc(100vw / 19.2);
  }
}
@media (min-width: 1922px) and (max-width: 4000px) {
  html {
    font-size: calc(100vw / 22.4);
  }
}
/* 手机 */
@media (max-width: 767.98px) {
  /* 统一上浮动效：手机 */
  @keyframes reveal-up {
    from {
      opacity: 0;
      translate: 0 2.13333333rem;
    }
    to {
      opacity: 1;
      translate: 0 0;
    }
  }
  .has-reveal-up .reveal:not(.is-revealed):not(.is-revealing) {
    opacity: 0;
    translate: 0 2.13333333rem;
  }
  .has-reveal-up .reveal.is-revealing {
    animation: reveal-up 0.72s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .has-reveal-up .reveal.is-revealed {
    opacity: 1;
    translate: none;
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .has-reveal-up .reveal {
    opacity: 1 !important;
    translate: none !important;
    animation: none !important;
  }
}
/* pc */
@media (min-width: 768px) {
  /* 统一上浮动效：PC */
  @keyframes reveal-up {
    from {
      opacity: 0;
      translate: 0 0.32rem;
    }
    to {
      opacity: 1;
      translate: 0 0;
    }
  }
  .has-reveal-up .reveal:not(.is-revealed):not(.is-revealing) {
    opacity: 0;
    translate: 0 0.32rem;
  }
  .has-reveal-up .reveal.is-revealing {
    animation: reveal-up 0.72s cubic-bezier(0.22, 1, 0.36, 1) both;
  }
  .has-reveal-up .reveal.is-revealed {
    opacity: 1;
    translate: none;
  }
}
@media (min-width: 768px) and (prefers-reduced-motion: reduce) {
  .has-reveal-up .reveal {
    opacity: 1 !important;
    translate: none !important;
    animation: none !important;
  }
}
