/* ============================================
   FIXES Y OPTIMIZACIONES FINALES
   Galpoven 2026
   ============================================ */

/* Ocultar badge de reCAPTCHA (molesto en móvil) */
.grecaptcha-badge {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Asegurar que el video se cargue correctamente */
.hero__video-background {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
}

.hero__video-background video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Asegurar que el overlay y contenido estén por encima del video */
.hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.hero__content {
  position: relative;
  z-index: 3;
}

/* Optimización de iconos Font Awesome */
.fa, .fas, .far, .fal, .fab {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Prevenir parpadeo de iconos */
i[class*="fa-"] {
  opacity: 1;
  visibility: visible;
}

/* Optimización de rendimiento */
.hero__video-background video {
  will-change: auto;
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* Cursor personalizado eliminado - se usa cursor nativo del sistema (Requirements: 4.1) */
/* Los elementos .cursor-dot y .cursor-trail han sido eliminados del HTML */

/* Honeypot field - oculto para usuarios, visible para bots */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

/* Restaurar cursor normal del sistema */
body,
a,
button,
input,
textarea,
select {
  cursor: auto !important;
}

a:hover,
button:hover {
  cursor: pointer !important;
}

.cursor-dot,
.cursor-trail {
  display: none !important;
}

/* ============================================
   FAQ COLLAPSE/EXPAND FUNCTIONALITY
   ============================================ */

/* FAQ items start collapsed by default */
.faq-item__answer {
  max-height: 0 !important;
  overflow: hidden;
  transition: max-height 0.3s ease-out, padding 0.3s ease-out, margin 0.3s ease-out;
  padding: 0 1.5rem;
  margin-top: 0 !important;
}

/* FAQ question styling */
.faq-item__question {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  user-select: none;
  transition: color 0.2s ease;
}

.faq-item__question:hover {
  color: var(--color-gold, #d4af37);
}

/* Chevron icon transition */
.faq-item__question .fa-chevron-down {
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

/* Active (expanded) state */
.faq-item.active .faq-item__answer {
  max-height: 500px !important;
  padding: 1rem 1.5rem 1.5rem;
  margin-top: 1rem !important;
}

.faq-item.active .faq-item__question .fa-chevron-down {
  transform: rotate(180deg);
}

