
.faq-accordion {
    border-top: 1px solid var(--color-border);
    --bs-accordion-border-width: 0;
}

    .faq-accordion .faq-item .faq-header {
        border-bottom: 1px solid var(--color-border);
        position: relative;
    }

    .faq-accordion .faq-item .faq-content {
        border: 0;
        padding: 21px 0 32px;
    }

    .faq-accordion .faq-item .faq-header .faq-button {
        padding: 13px 0 10px 0;
        color: var(--color-heading);
        font-size: 16px;
        font-weight: 600;
        width: 100%;
        cursor: pointer;
        background-color: transparent;
        border: 0;
        margin: 0;
        text-align: left;
        outline: none;
        box-shadow: none;
    }

        .faq-accordion .faq-item .faq-header .faq-button .faq-active::before {
            content: "";
            display: block;
            height: 3px;
            width: 0;
            background: var(--color-body-text);
            position: absolute;
            top: -1px;
            left: 0;
            transition: all 1s;
        }

        .faq-accordion .faq-item .faq-header .faq-button:not(.collapsed) .faq-active::before {
            width: 200px;
        }
