@media (prefers-reduced-motion: no-preference) {
  @supports (animation-timeline: view()) {
    [data-aos] {
      --aos-start: 0%;
      --aos-span: 40%;
      animation-name: aos-fade;
      animation-fill-mode: both;
      animation-timing-function: ease;
      animation-timeline: view();
      animation-range: cover var(--aos-start) cover calc(var(--aos-start) + var(--aos-span));
      will-change: transform, opacity, filter;
      overflow: hidden;
    }
    [data-aos^=flip] {
      backface-visibility: hidden;
    }
    @keyframes aos-fade {
      from {
        opacity: 0;
      }
      to {
        opacity: 1;
      }
    }
    [data-aos=fade] {
      animation-name: aos-fade;
    }
    @keyframes aos-fade-up {
      from {
        opacity: 0;
        transform: translate3d(0, 50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-up] {
      animation-name: aos-fade-up;
    }
    @keyframes aos-fade-down {
      from {
        opacity: 0;
        transform: translate3d(0, -50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-down] {
      animation-name: aos-fade-down;
    }
    @keyframes aos-fade-right {
      from {
        opacity: 0;
        transform: translate3d(-50px, 0, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-right] {
      animation-name: aos-fade-right;
    }
    @keyframes aos-fade-left {
      from {
        opacity: 0;
        transform: translate3d(50px, 0, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-left] {
      animation-name: aos-fade-left;
    }
    @keyframes aos-fade-up-right {
      from {
        opacity: 0;
        transform: translate3d(-50px, 50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-up-right] {
      animation-name: aos-fade-up-right;
    }
    @keyframes aos-fade-up-left {
      from {
        opacity: 0;
        transform: translate3d(50px, 50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-up-left] {
      animation-name: aos-fade-up-left;
    }
    @keyframes aos-fade-down-right {
      from {
        opacity: 0;
        transform: translate3d(-50px, -50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-down-right] {
      animation-name: aos-fade-down-right;
    }
    @keyframes aos-fade-down-left {
      from {
        opacity: 0;
        transform: translate3d(50px, -50px, 0);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=fade-down-left] {
      animation-name: aos-fade-down-left;
    }
    @keyframes aos-zoom-in {
      from {
        opacity: 0;
        transform: scale(0.9);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-in] {
      animation-name: aos-zoom-in;
    }
    @keyframes aos-zoom-in-up {
      from {
        opacity: 0;
        transform: translate3d(0, 50px, 0) scale(0.9);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-in-up] {
      animation-name: aos-zoom-in-up;
    }
    @keyframes aos-zoom-in-down {
      from {
        opacity: 0;
        transform: translate3d(0, -50px, 0) scale(0.9);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-in-down] {
      animation-name: aos-zoom-in-down;
    }
    @keyframes aos-zoom-in-right {
      from {
        opacity: 0;
        transform: translate3d(-50px, 0, 0) scale(0.9);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-in-right] {
      animation-name: aos-zoom-in-right;
    }
    @keyframes aos-zoom-in-left {
      from {
        opacity: 0;
        transform: translate3d(50px, 0, 0) scale(0.9);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-in-left] {
      animation-name: aos-zoom-in-left;
    }
    @keyframes aos-zoom-out {
      from {
        opacity: 0;
        transform: scale(1.1);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-out] {
      animation-name: aos-zoom-out;
    }
    @keyframes aos-zoom-out-up {
      from {
        opacity: 0;
        transform: translate3d(0, 50px, 0) scale(1.1);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-out-up] {
      animation-name: aos-zoom-out-up;
    }
    @keyframes aos-zoom-out-down {
      from {
        opacity: 0;
        transform: translate3d(0, -50px, 0) scale(1.1);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-out-down] {
      animation-name: aos-zoom-out-down;
    }
    @keyframes aos-zoom-out-right {
      from {
        opacity: 0;
        transform: translate3d(-50px, 0, 0) scale(1.1);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-out-right] {
      animation-name: aos-zoom-out-right;
    }
    @keyframes aos-zoom-out-left {
      from {
        opacity: 0;
        transform: translate3d(50px, 0, 0) scale(1.1);
      }
      to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=zoom-out-left] {
      animation-name: aos-zoom-out-left;
    }
    @keyframes aos-slide-up {
      from {
        transform: translate3d(0, 100%, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=slide-up] {
      animation-name: aos-slide-up;
    }
    @keyframes aos-slide-down {
      from {
        transform: translate3d(0, -100%, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=slide-down] {
      animation-name: aos-slide-down;
    }
    @keyframes aos-slide-right {
      from {
        transform: translate3d(-100%, 0, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=slide-right] {
      animation-name: aos-slide-right;
    }
    @keyframes aos-slide-left {
      from {
        transform: translate3d(100%, 0, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=slide-left] {
      animation-name: aos-slide-left;
    }
    @keyframes aos-flip-left {
      from {
        transform: perspective(2500px) rotateY(-100deg);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=flip-left] {
      animation-name: aos-flip-left;
    }
    @keyframes aos-flip-right {
      from {
        transform: perspective(2500px) rotateY(100deg);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=flip-right] {
      animation-name: aos-flip-right;
    }
    @keyframes aos-flip-up {
      from {
        transform: perspective(2500px) rotateX(-100deg);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=flip-up] {
      animation-name: aos-flip-up;
    }
    @keyframes aos-flip-down {
      from {
        transform: perspective(2500px) rotateX(100deg);
      }
      to {
        transform: translate3d(0, 0, 0);
      }
    }
    [data-aos=flip-down] {
      animation-name: aos-flip-down;
    }
    @keyframes aos-blur {
      from {
        filter: blur(50px);
      }
      to {
        filter: none;
      }
    }
    [data-aos=blur] {
      animation-name: aos-blur;
    }
    @keyframes aos-blur-up {
      from {
        filter: blur(50px);
        transform: translate3d(0, 50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-up] {
      animation-name: aos-blur-up;
    }
    @keyframes aos-blur-down {
      from {
        filter: blur(50px);
        transform: translate3d(0, -50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-down] {
      animation-name: aos-blur-down;
    }
    @keyframes aos-blur-right {
      from {
        filter: blur(50px);
        transform: translate3d(-50px, 0, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-right] {
      animation-name: aos-blur-right;
    }
    @keyframes aos-blur-left {
      from {
        filter: blur(50px);
        transform: translate3d(50px, 0, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-left] {
      animation-name: aos-blur-left;
    }
    @keyframes aos-blur-up-right {
      from {
        filter: blur(50px);
        transform: translate3d(-50px, 50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-up-right] {
      animation-name: aos-blur-up-right;
    }
    @keyframes aos-blur-up-left {
      from {
        filter: blur(50px);
        transform: translate3d(50px, 50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-up-left] {
      animation-name: aos-blur-up-left;
    }
    @keyframes aos-blur-down-right {
      from {
        filter: blur(50px);
        transform: translate3d(-50px, -50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-down-right] {
      animation-name: aos-blur-down-right;
    }
    @keyframes aos-blur-down-left {
      from {
        filter: blur(50px);
        transform: translate3d(50px, -50px, 0);
      }
      to {
        transform: translate3d(0, 0, 0);
        filter: none;
      }
    }
    [data-aos=blur-down-left] {
      animation-name: aos-blur-down-left;
    }
    [data-aos-easing=linear] {
      animation-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
    }
    [data-aos-easing=ease] {
      animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
    }
    [data-aos-easing=ease-in] {
      animation-timing-function: cubic-bezier(0.42, 0, 1, 1);
    }
    [data-aos-easing=ease-out] {
      animation-timing-function: cubic-bezier(0, 0, 0.58, 1);
    }
    [data-aos-easing=ease-in-out] {
      animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
    }
    [data-aos-easing=ease-in-back] {
      animation-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
    }
    [data-aos-easing=ease-out-back] {
      animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }
    [data-aos-easing=ease-in-out-back] {
      animation-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    }
    [data-aos-easing=ease-in-sine] {
      animation-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
    }
    [data-aos-easing=ease-out-sine] {
      animation-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
    }
    [data-aos-easing=ease-in-out-sine] {
      animation-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    [data-aos-easing=ease-in-quad] {
      animation-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
    }
    [data-aos-easing=ease-out-quad] {
      animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    [data-aos-easing=ease-in-out-quad] {
      animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    }
    [data-aos-easing=ease-in-cubic] {
      animation-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
    }
    [data-aos-easing=ease-out-cubic] {
      animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    [data-aos-easing=ease-in-out-cubic] {
      animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    }
    [data-aos-easing=ease-in-quart] {
      animation-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
    }
    [data-aos-easing=ease-out-quart] {
      animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }
    [data-aos-easing=ease-in-out-quart] {
      animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
    }
  }
}
