/* Inputs estilo minimal */
.input-minimal {
  width: 100%;
  border: none;
  border-bottom: 1px solid #ccc;
  padding: 10px 0;
  background: transparent;
  outline: none;
  transition: border-color 0.3s ease;
}

.input-minimal:focus {
  border-bottom: 1px solid #000;
}

/* Hero zoom */
.hero-contacto-img {
  animation: heroZoom 18s ease-in-out infinite alternate;
}

@keyframes heroZoom {
  from { transform: scale(1); }
  to { transform: scale(1.08); }
}

/* FAQ estilo limpio */
.faq-item {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 12px;
}

.faq-question {
  font-weight: 600;
  cursor: pointer;
  position: relative;
  padding-right: 30px;
  transition: color 0.3s ease;
}

.faq-question:hover {
  color: #DB7B0F;   
}

/* símbolo + */
.faq-question::after {
  content: "+";
  position: absolute;
  right: 0;
  transition: transform 0.3s ease;
}

/* respuesta animada */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: all 0.4s ease;
  opacity: 0;
  color: #666;
}

.faq-answer.faq-open {
  max-height: 200px;
  opacity: 1;
  margin-top: 8px;
}

/* cuando está abierto cambia el + */
.faq-item.activo .faq-question::after {
  content: "–";
}

