section.bloques-faq {
  margin-block: 56px;
}

section.bloques-faq > div {
  padding-right: 24px;
  padding-left: 24px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1248px;
}

.faq-title {
  text-align: center;
}

.faq-container {
  max-width: 790px;
  margin: 0 auto;
  margin-top: 48px;
  display: flex;
  gap: 32px;
  flex-direction: column;
}

.faq-accordion-item {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.faq-accordion-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--gray-500, #98a0ab);
}

.faq-accordion-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: all 0.5s ease;
}

.faq-accordion-content-container {
  overflow: hidden;
}

.faq-accordion-content.open {
  grid-template-rows: 1fr;
}

.faq-accordion-heading button {
  transition: all 0.3s ease;
}

.faq-accordion-heading button.active {
  transform: rotate(180deg);
}

@media (max-width: 768px) {
  section.bloques-faq {
    margin-block: 24px;
  }
  section.bloques-faq > div {
    padding-right: 16px;
    padding-left: 16px;
  }

  .faq-accordion-heading {
    gap: 16px;
  }
}
