/* ---- Category layout ---- */
.bvb-faq-accordion .faq-category-row {
    display: flex;
    flex-direction: column;
}
.bvb-faq-accordion .faq-category-col-title {
    min-width: 0;
    flex-shrink: 0;
}
.bvb-faq-accordion .faq-category-col-items {
    flex: 1 1 auto;
    min-width: 0;
}
.bvb-faq-accordion .faq-category-title {
    margin-top: 0;
    margin-bottom: 10px;
}

/* ---- Accordion item ---- */
.bvb-faq-accordion .faq-item {
    margin-bottom: 10px;
    border-radius: 4px;
    overflow: hidden;
}

/* ---- Trigger ---- */
.bvb-faq-accordion .faq-trigger {
    -webkit-appearance: none;
    appearance: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    padding: 15px;
    font-weight: bold;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    background: #f9f9f9;
    border: none;
    cursor: pointer;
    text-align: left;
    white-space: normal;
}
.bvb-faq-accordion .faq-item.is-open .faq-trigger {
    border-bottom: 1px solid #ddd;
}
.bvb-faq-accordion .faq-summary-text {
    flex: 1 1 0%;
    min-width: 0;
    overflow-wrap: break-word;
}

/* ---- Icon ---- */
.bvb-faq-accordion .faq-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 16px;
}
.bvb-faq-accordion .faq-summary-icon svg {
    width: 1em;
    height: 1em;
}
.bvb-faq-accordion .faq-summary-icon-state {
    display: inline-flex;
    align-items: center;
}
.bvb-faq-accordion .faq-summary-icon-expanded {
    display: none;
}
.bvb-faq-accordion .faq-item.is-open .faq-summary-icon-collapsed {
    display: none;
}
.bvb-faq-accordion .faq-item.is-open .faq-summary-icon-expanded {
    display: inline-flex;
}

/* ---- Content panel ---- */
.bvb-faq-accordion .faq-content {
    height: 0;
    overflow: hidden;
    /* transition is applied by JS so it doesn't run on page load */
}
.bvb-faq-accordion .faq-content-inner {
    padding: 15px;
}
