/* ANIMAÇÕES E EFEITOS */
@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.animate-shimmer {
  background: linear-gradient(90deg, #d4af37 0%, #fff2c8 20%, #d4af37 40%, #d4af37 100%);
  background-size: 200% auto;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: shimmer 4s linear infinite;
  display: inline-block;
}

/* REVEALS INICIAIS GSAP */
.reveal, .reveal-up, .reveal-left, .reveal-right { 
  opacity: 0; 
  will-change: transform, opacity;
  transform: translateZ(0);
}

.textura-fundo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  mix-blend-mode: lighten;
  z-index: 0;
}

.glow-dourado {
  position: absolute;
  background: radial-gradient(circle, rgba(212,175,55,0.15) 0%, rgba(212,175,55,0) 70%);
  border-radius: 50%;
  pointer-events: none;
  filter: blur(80px);
}

/* ==========================================
   OTIMIZAÇÃO EXTREMA PARA MOBILE
   ========================================== */
@media (max-width: 768px) {
  .mix-blend-overlay, .mix-blend-luminosity, .mix-blend-screen {
    mix-blend-mode: normal !important;
  }
  
  .glow-dourado {
    filter: blur(30px) !important;
  }

  .backdrop-blur-md, .backdrop-blur-sm, .backdrop-blur-none {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background-color: #0f1218 !important; /* Fundo sólido fallback */
  }
}

/* DIVISRIAS DE LUZ NAS SESSES */
.sec-reveal-container {
  border-top: none !important;
}
.sec-reveal-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.4), transparent);
  z-index: 50;
  pointer-events: none;
}
.sec-reveal-container::after {
  content: '';
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 20%;
  max-width: 300px;
  height: 2px;
  background: rgba(212, 175, 55, 0.8);
  filter: blur(3px);
  z-index: 50;
  pointer-events: none;
  border-radius: 50%;
}
html.lenis, html.lenis body {
  height: auto;
}
.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
.lenis.lenis-stopped {
  overflow: hidden;
}
.lenis.lenis-scrolling iframe {
  pointer-events: none;
}
