html.nahui-booting *,
html.nahui-booting *::before,
html.nahui-booting *::after {
  transition: none !important;
  animation-play-state: paused !important;
}

html.nahui-booting body {
  background: #120C08;
}

html.nahui-booting [data-nahui-reveal] {
  opacity: 0;
}

html:not(.nahui-booting) [data-nahui-reveal].nh-soft-reveal-ready {
  opacity: 0;
}

* { box-sizing: border-box; }
body { margin: 0; padding: 0; background-color: #0a0a0a; color: #ffffff; font-family: 'Outfit', sans-serif; overflow-x: hidden; }
/* Estilos para /gym4 */

html, body {
    overflow-x: hidden;
    width: 100%;
    max-width: 100vw;
}

@keyframes nh-soft-fade-up {
  0% {
    opacity: 0;
    transform: translate3d(0px, 22px, 0px);
  }

  100% {
    opacity: 1;
    transform: translate3d(0px, 0px, 0px);
  }
}

@keyframes nh-soft-fade-down {
  0% {
    opacity: 0;
    transform: translate3d(0px, -18px, 0px);
  }

  100% {
    opacity: 1;
    transform: translate3d(0px, 0px, 0px);
  }
}

@keyframes nh-soft-fade-left {
  0% {
    opacity: 0;
    transform: translate3d(26px, 8px, 0px);
  }

  100% {
    opacity: 1;
    transform: translate3d(0px, 0px, 0px);
  }
}

@keyframes nh-soft-fade-right {
  0% {
    opacity: 0;
    transform: translate3d(-26px, 8px, 0px);
  }

  100% {
    opacity: 1;
    transform: translate3d(0px, 0px, 0px);
  }
}

@keyframes nh-soft-zoom-in {
  0% {
    opacity: 0;
    transform: scale(0.97) translate3d(0px, 12px, 0px);
  }

  100% {
    opacity: 1;
    transform: scale(1) translate3d(0px, 0px, 0px);
  }
}

@keyframes nh-soft-flip {
  0% {
    opacity: 0;
    transform: perspective(900px) rotateX(4deg) translate3d(0px, 18px, 0px) scale(0.985);
  }

  100% {
    opacity: 1;
    transform: perspective(900px) rotateX(0deg) translate3d(0px, 0px, 0px) scale(1);
  }
}

@keyframes nh-eternal-float-soft {
  0% {
    transform: translate3d(0px, 0px, 0px) rotate(-0.6deg);
  }

  50% {
    transform: translate3d(0px, -9px, 0px) rotate(0.6deg);
  }

  100% {
    transform: translate3d(0px, 0px, 0px) rotate(-0.6deg);
  }
}

.js-reveal-active .nh-soft-reveal-ready {
  opacity: 0;
}

.nh-soft-reveal-visible[data-nahui-reveal="fade-up"] {
  animation: nh-soft-fade-up 620ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-soft-reveal-visible[data-nahui-reveal="fade-down"] {
  animation: nh-soft-fade-down 620ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-soft-reveal-visible[data-nahui-reveal="fade-left"] {
  animation: nh-soft-fade-left 660ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-soft-reveal-visible[data-nahui-reveal="fade-right"] {
  animation: nh-soft-fade-right 660ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-soft-reveal-visible[data-nahui-reveal="zoom-in"] {
  animation: nh-soft-zoom-in 680ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-soft-reveal-visible[data-nahui-reveal="soft-flip"] {
  animation: nh-soft-flip 700ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.nh-float-soft {
  animation: nh-eternal-float-soft 7s ease-in-out infinite;
}

@media (max-width: 767px) {
  .nh-soft-reveal-visible[data-nahui-reveal="fade-up"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-down"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-left"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-right"],
  .nh-soft-reveal-visible[data-nahui-reveal="zoom-in"],
  .nh-soft-reveal-visible[data-nahui-reveal="soft-flip"] {
    animation-duration: 520ms;
  }

  .nh-float-soft {
    animation-duration: 8.5s;
  }
}

@media (prefers-reduced-motion: reduce) {
  .js-reveal-active .nh-soft-reveal-ready {
    opacity: 1;
    transform: none;
  }

  .nh-soft-reveal-visible[data-nahui-reveal="fade-up"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-down"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-left"],
  .nh-soft-reveal-visible[data-nahui-reveal="fade-right"],
  .nh-soft-reveal-visible[data-nahui-reveal="zoom-in"],
  .nh-soft-reveal-visible[data-nahui-reveal="soft-flip"],
  .nh-float-soft {
    animation: none;
  }
}