    .faq-hero {
        text-align: center;
        padding: 4rem 1.5rem;
        background: var(--c-surface);
        border-bottom: 1px solid var(--c-border);
        box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        margin-bottom: 3rem;
    }
    .faq-title {
        font-size: 2.5rem;
        font-weight: 700;
        margin-bottom: 1rem;
        background: linear-gradient(135deg, var(--c-text) 0%, var(--c-primary) 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }
    .faq-search-wrap {
        max-width: 600px;
        margin: 2rem auto 0;
        position: relative;
    }
    .faq-search-input {
        width: 100%;
        padding: 1rem 1.5rem;
        border-radius: 50px;
        border: 2px solid var(--c-border);
        font-size: 1.1rem;
        transition: all 0.3s;
        box-shadow: var(--shadow-sm);
    }
    .faq-search-input:focus {
        outline: none;
        border-color: var(--c-primary);
        box-shadow: 0 0 0 4px rgba(37,99,235,0.1);
    }

    .faq-grid {
        max-width: 800px;
        margin: 0 auto 4rem;
        padding: 0 1.5rem;
    }

    .faq-item {
        background: var(--c-surface);
        border: 1px solid var(--c-border);
        border-radius: var(--radius-lg);
        margin-bottom: 1rem;
        overflow: hidden;
        transition: all 0.3s ease;
        box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    }
    .faq-item:hover {
        border-color: var(--c-primary);
        box-shadow: var(--shadow-md);
    }

    .faq-summary {
        padding: 1.25rem;
        cursor: pointer;
        font-weight: 700;
        font-size: 1.1rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        list-style: none;
    }
    .faq-summary::-webkit-details-marker { display: none; }
    .faq-summary::after {
        content: '+';
        font-size: 1.5rem;
        font-weight: 300;
        color: var(--c-primary);
        transition: transform 0.2s;
    }
    details[open] .faq-summary::after {
        transform: rotate(45deg);
    }
    details[open] .faq-summary {
        border-bottom: 1px solid var(--c-border);
        background: var(--c-bg);
    }

    .faq-content {
        padding: 1.5rem;
        line-height: 1.7;
        color: var(--c-text-muted);
        font-size: 1rem;
        animation: slideDown 0.3s ease-out;
    }

    @keyframes slideDown {
        from { opacity: 0; transform: translateY(-10px); }
        to { opacity: 1; transform: translateY(0); }
    }

    .no-results {
        text-align: center;
        padding: 3rem;
        display: none;
        color: var(--c-text-muted);
    }
