/* TitanMC homepage hero — visual fidelity within a strict compositor budget. */

/* Film grain was a fixed fullscreen blend layer. It softened the artwork and
   forced a full-viewport composite without adding useful depth. */
html body .hero.hero .film-grain.film-grain,
html body .hero.hero .grain.grain,
html body .hero.hero .hero-blob.hero-blob {
  display: none !important;
  visibility: hidden !important;
}

html body .hero.hero .hero-particles.hero-particles {
  opacity: .72 !important;
  mix-blend-mode: normal !important;
  contain: strict !important;
}

html body .hero #heroParticles#heroParticles {
  opacity: .76 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  will-change: auto !important;
  contain: strict !important;
}

html body .hero.hero .hero-grid.hero-grid {
  opacity: .18 !important;
}

html body .hero.hero::after {
  opacity: .07 !important;
  mix-blend-mode: normal !important;
}

/* Near-opaque controls look the same with a painted surface and avoid sampling
   the animated canvas behind every badge on every frame. */
html body #navbar#navbar[data-titan-nav="shared"],
html body .hero #ipBox#ipBox,
html body .hero.hero .hero-btn-secondary.hero-btn-secondary,
html body .hero.hero .hero-badge.hero-badge {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body #navbar#navbar[data-titan-nav="shared"] {
  background: rgba(8, 8, 13, .985) !important;
}

html body .hero-subtitle #heroTypewriter#heroTypewriter {
  opacity: 1 !important;
  filter: none !important;
  transform: translate3d(0, 0, 0) !important;
  transition: opacity .18s ease, transform .28s cubic-bezier(.22, 1, .36, 1) !important;
  will-change: auto !important;
}

html body .hero-subtitle #heroTypewriter#heroTypewriter.is-switching {
  opacity: 0 !important;
  filter: none !important;
  transform: translate3d(0, 6px, 0) !important;
}

@media (max-width: 900px) {
  html body .hero.hero .hero-particles.hero-particles,
  html body .hero #heroParticles#heroParticles {
    opacity: .58 !important;
  }
}
