/* FAQ Page Specific Styles */

.faq-page-header {
    padding: clamp(48px, 8vw, 80px) 0;
    background-color: var(--color-soft);
    text-align: center;
}

.faq-page-header h1 {
    font-size: clamp(32px, 5vw, 48px);
    margin-bottom: 24px;
}

.faq-page-header .lead {
    max-width: 800px;
    margin-inline: auto;
}

.faq-page-container {
    max-width: 800px;
    margin-inline: auto;
    padding-bottom: 80px;
    padding-inline: var(--gutter);
}

.faq-category {
    margin-top: 60px;
}

.faq-category-title {
    margin-bottom: 24px;
    border-bottom: 2px solid var(--color-accent);
    padding-bottom: 8px;
    display: inline-block;
    font-size: 1.5rem;
}

.faq-category-footer {
    margin-top: 20px;
    font-size: 0.95rem;
    font-weight: 500;
}

.faq-category-link {
    color: var(--color-text);
    text-decoration: underline;
    text-decoration-color: var(--color-accent);
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    transition: opacity 0.2s;
}

.faq-category-link:hover {
    opacity: 0.7;
}

.faq-page-final-cta {
    padding-block: var(--section-space);
    text-align: center;
    background-color: var(--color-bg);
    border-top: 1px solid var(--color-border);
}

.faq-page-final-cta-inner {
    max-width: 800px;
    margin-inline: auto;
    padding-inline: var(--gutter);
}

.faq-page-final-cta h3 {
    margin-bottom: 16px;
}

.faq-page-final-cta-buttons {
    margin-top: 32px;
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}