/* [project]/src/features/landing/styles/landing.css [app-client] (css) */
.indox-landing {
  background: var(--indox-bg);
  color: var(--indox-text);
  font-family: var(--indox-sans, "IBM Plex Sans"), sans-serif;
  min-height: 100vh;
  overflow-x: clip;
}

.indox-landing .bg-wrap {
  z-index: 0;
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.indox-landing .orb {
  filter: blur(110px);
  opacity: .6;
  border-radius: 50%;
  position: absolute;
}

.indox-landing .o1 {
  background: var(--indox-orb-1);
  width: 700px;
  height: 700px;
  animation: 24s ease-in-out infinite indox-da;
  top: -200px;
  left: -150px;
}

.indox-landing .o2 {
  background: var(--indox-orb-2);
  width: 500px;
  height: 500px;
  animation: 30s ease-in-out infinite indox-db;
  bottom: -100px;
  right: -100px;
}

@keyframes indox-da {
  0%, 100% {
    transform: translate(0);
  }

  50% {
    transform: translate(50px, 30px);
  }
}

@keyframes indox-db {
  0%, 100% {
    transform: translate(0);
  }

  50% {
    transform: translate(-40px, -30px);
  }
}

.indox-landing .bg-grid {
  z-index: 0;
  pointer-events: none;
  background-image: linear-gradient(var(--indox-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--indox-grid-line) 1px, transparent 1px);
  background-size: 52px 52px;
  position: fixed;
  inset: 0;
}

[data-theme="light"] .indox-landing .bg-grid {
  opacity: .3;
  filter: invert();
}

.indox-landing .particles {
  z-index: 1;
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.indox-landing .particle {
  background: var(--indox-particle);
  border-radius: 50%;
  animation: linear infinite indox-float;
  position: absolute;
}

@keyframes indox-float {
  0% {
    opacity: 0;
    transform: translateY(110vh)scale(.8);
  }

  10% {
    opacity: 1;
  }

  90% {
    opacity: .6;
  }

  100% {
    opacity: 0;
    transform: translateY(-10vh)scale(1.1);
  }
}

@keyframes indox-fadeUp {
  from {
    opacity: 0;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.indox-landing .fade-up {
  animation: .5s both indox-fadeUp;
}

.indox-landing .fade-up-d1 {
  animation: .5s .1s both indox-fadeUp;
}

.indox-landing .fade-up-d2 {
  animation: .5s .2s both indox-fadeUp;
}

.indox-landing .fade-up-d3 {
  animation: .5s .3s both indox-fadeUp;
}

.indox-landing .reveal {
  opacity: 1;
  transition: opacity .5s, transform .5s;
  transform: none;
}

.js-reveal .indox-landing .reveal {
  opacity: 0;
  transform: translateY(16px);
}

.js-reveal .indox-landing .reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

@keyframes indox-pop {
  from {
    opacity: 0;
    transform: scale(.5);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .indox-landing .fade-up, .indox-landing .fade-up-d1, .indox-landing .fade-up-d2, .indox-landing .fade-up-d3, .indox-landing .o1, .indox-landing .o2, .indox-landing .particle {
    animation: none;
  }

  .indox-landing .reveal, .js-reveal .indox-landing .reveal {
    opacity: 1;
    transition: none;
    transform: none;
  }
}

.indox-landing .feat-card-shimmer:after, .indox-landing .price-card-shimmer:after {
  content: "";
  background: linear-gradient(90deg, transparent, var(--indox-shimmer), transparent);
  height: 1px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.indox-landing .api-band-bg {
  background: var(--indox-api-band);
}

.indox-landing .api-band-bg:before {
  content: "";
  pointer-events: none;
  background: url("data:image/svg+xml,%3Csvg width='52' height='52' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgba(255,255,255,0.05)'/%3E%3C/svg%3E");
  position: absolute;
  inset: 0;
}

/*# sourceMappingURL=src_features_landing_styles_landing_0mxioda.css.map*/