/* Topic pages use the same type, spacing, and accent as the guest FAQ. */
.faq-topic-questions { padding: 8px 28px; }
.faq-topic-questions li.faq-category:last-child { border-bottom: 0; }
.faq-topic-questions li.faq-category > a { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 0; font-size: 16px; }
.faq-topic-arrow { flex: 0 0 auto; color: #ff5055; font-size: 20px; }
.faq-topic-categories { margin-top: 48px; }
.faq-topic-categories h2 { margin: 0 0 20px; color: #222; font-size: 23px; font-weight: 600; line-height: 1.4; }
.faq-topic-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.faq-topic-category { display: flex; align-items: center; gap: 12px; padding: 20px; border: 1px solid #e8e8e8; border-radius: 12px; color: #222; font-size: 15px; font-weight: 600; }
.faq-topic-category:visited { color: #222; }
.faq-topic-category > i { display: inline-flex; flex: 0 0 40px; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; background: #fff0f1; color: #ff5055; font-size: 20px; }
.faq-topic-category:hover, .faq-topic-category:focus { border-color: #ff5055; color: #222; text-decoration: none; }
.faq-topic-category[aria-current="page"] { border-color: #ff5055; background: #fff5f5; }
@media (max-width: 900px) {
    .faq-topic-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .faq-topic-questions { padding: 4px 20px; }
    .faq-topic-questions li.faq-category > a { gap: 16px; padding: 18px 0; font-size: 15px; }
    .faq-topic-categories { margin-top: 32px; }
    .faq-topic-categories h2 { font-size: 21px; }
    .faq-topic-category-grid { gap: 12px; }
    .faq-topic-category { gap: 10px; padding: 16px; }
}
@media (max-width: 420px) {
    .faq-topic-category { flex-direction: column; align-items: flex-start; }
}
