.faq-container {
  max-width: 800px;
  margin: 2rem auto;
  font-family: sans-serif;
}
.faq-container h1 {
  margin-bottom: 1rem;
  font-size: 2rem;
}

/* Individual item */
.faq-item {
  border: 1px solid #ddd;
  border-radius: .25rem;
  margin-bottom: .5rem;
  overflow: hidden;
}

/* Question bar */
.faq-question {
  background: #f9f9f9;
  padding: .75rem 1rem;
  cursor: pointer;
  position: relative;
}
.faq-question:hover {
  background: #f1f1f1;
}

/* Arrow via pseudo-element */
.faq-question::after {
  content: "\f063";            /* FontAwesome arrow-down */
  font-family: "FontAwesome";
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  transition: transform .3s ease;
  color: #007acc;              /* your brand accent */
}

/* Answer panel */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s ease;
  padding: 0 1rem;
}
.faq-answer p {
  margin: 1rem 0;
  line-height: 1.5;
}

/* Active state */
.faq-item.active .faq-answer {
  max-height: 500px;           /* ample for most answers */
}
.faq-item.active .faq-question::after {
  transform: translateY(-50%) rotate(180deg);
}

/* Light teal tint on open */
.faq-item.active .faq-question {
  background-color: rgba(0, 169, 165, 0.1) !important;
}

.faq-button {
    display: inline-block;
    padding: 10px 20px;
    margin-top: 10px;
    font-size: 16px;
    text-decoration: none;
    background-color: #007BFF;
    color: white;
    border-radius: 5px;
    transition: background-color 0.3s ease;
  }
  .faq-button:hover {
    background-color: #0056b3;
    color: blue !important;
  }