/*==========================================================
    FAQ
==========================================================*/

.faq {
  position: relative;

  padding: 45px 0 70px;

  background:
    linear-gradient(135deg, rgba(3, 20, 55, 0.55), rgba(10, 63, 130, 0.45)),
    url("../img/hero/server-cloud1.webp");

  background-size: cover;

  background-position: 55% center;

  background-repeat: no-repeat;

  overflow: hidden;
}

/*==========================================================
    ENCABEZADO
==========================================================*/

.faq .section-header h2 {
  color: #ffffff;
}

.faq .section-header p {
  color: rgba(255, 255, 255, 0.88);
}

/*==========================================================
    CONTENEDOR
==========================================================*/

.faq .container {
  display: flex;

  flex-direction: column;

  gap: 10px;
}

/*==========================================================
    LISTA FAQ
==========================================================*/

.faq-list {
  max-width: 900px;

  width: 100%;

  margin: 20px auto 0;
}

/*==========================================================
    ITEM
==========================================================*/

.faq-item {
  background: rgba(255, 255, 255, 0.97);

  border: 1px solid rgba(255, 255, 255, 0.75);

  border-radius: 18px;

  margin-bottom: 12px;

  overflow: hidden;

  transition: var(--transition);

  box-shadow: 0 10px 30px rgba(0, 10, 30, 0.15);
}

.faq-item:hover {
  border-color: var(--secondary);

  transform: translateY(-2px);

  box-shadow: 0 15px 35px rgba(0, 10, 30, 0.22);
}

/*==========================================================
    PREGUNTA
==========================================================*/

.faq-question {
  width: 100%;

  border: none;

  background: transparent;

  padding: 18px 30px;

  display: flex;

  justify-content: space-between;

  align-items: center;

  cursor: pointer;

  font-size: 1.08rem;

  font-weight: 600;

  color: #0f172a;

  text-align: left;
}

/*==========================================================
    ICONO
==========================================================*/

.faq-question i {
  width: 38px;

  height: 38px;

  display: flex;

  justify-content: center;

  align-items: center;

  border-radius: 50%;

  background: #eff6ff;

  color: var(--primary);

  font-size: 0.9rem;

  transition: all 0.35s ease;

  flex-shrink: 0;

  margin-left: 20px;
}

/*==========================================================
    RESPUESTA
==========================================================*/

.faq-answer {
  max-height: 0;

  overflow: hidden;

  transition: max-height 0.35s ease;
}

.faq-answer p {
  padding: 0 30px 26px;

  color: #64748b;

  line-height: 1.8;
}

/*==========================================================
    FAQ ACTIVO
==========================================================*/

.faq-item.active .faq-answer {
  max-height: 250px;
}

.faq-item.active .faq-question i {
  background: var(--primary);

  color: #ffffff;

  transform: rotate(180deg);
}

.faq-question:hover i {
  background: var(--primary);

  color: #ffffff;
}

.faq-item.active {
  border-color: var(--secondary);

  box-shadow: 0 15px 35px rgba(37, 99, 235, 0.2);
}
