/* FAQ PAGE-SPECIFIC STYLES */
.faq-title {
  text-align: center;
  margin-bottom: var(--space-12);
}
.faq-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  margin-bottom: var(--space-16);
}
.faq-item {
  padding: 0;
  box-shadow: var(--shadow-md);
  transition: box-shadow var(--transition-base);
}
.faq-question {
  margin: 0;
}
.faq-toggle {
  appearance: none;
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  font-size: var(--font-size-lg);
  font-weight: 600;
  color: var(--color-primary);
  cursor: pointer;
  padding: var(--space-2) var(--space-6) var(--space-2) var(--space-0);
  transition: color var(--transition-base);
  outline: none;
}
.faq-toggle:focus-visible {
  outline: 2px solid var(--color-primary);
}
.faq-toggle[aria-expanded="true"] {
  color: var(--color-primary-hover);
}
.faq-answer {
  padding: var(--space-0) var(--space-6) var(--space-6) var(--space-0);
  font-size: var(--font-size-base);
}
.faq-link {
  text-decoration: underline;
  color: var(--color-primary);
}
.faq-link:hover,
.faq-link:focus {
  color: var(--color-primary-hover);
}
.faq-steps {
  padding-left: var(--space-6);
  margin-bottom: var(--space-4);
}
.faq-cta {
  background: var(--color-surface);
  box-shadow: var(--shadow-sm);
  padding: var(--space-8) var(--space-6);
  border-radius: var(--radius-lg);
  text-align: center;
  margin-bottom: var(--space-24);
}
.faq-cta h2 {
  margin-bottom: var(--space-2);
}
@media (max-width: 768px) {
  .faq-title {
    font-size: var(--font-size-xl);
  }
  .faq-list {
    gap: var(--space-4);
  }
  .faq-answer,
  .faq-toggle {
    padding-right: var(--space-2);
  }
  .faq-cta {
    padding: var(--space-6) var(--space-2);
  }
}
@media (max-width: 480px) {
  .faq-title {
    font-size: var(--font-size-lg);
  }
  .faq-cta {
    padding: var(--space-4) var(--space-1);
  }
}
