accordion-disclosure {
    display: block;
    width: 100%;
    border-top: 1px solid #E5EAEB;
    padding: 20px 0;
    cursor: pointer;
}

.faq-title {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px;
}

.faq-title .faq-icon .plus {
    display: block;
}

.faq-title .faq-icon .minus {
    display: none;
}

.faq-title .faq-icon svg {
    width: 30px;
    height: 30px;
}

/* 核心：用 JS 控制高度 */
.faq-content {
    height: var(--height, 0px);
    overflow: hidden;
    transition: height 0.3s ease;
    cursor: auto;
}

.faq-content>* {
    padding-top: 40px;
}

@media(max-width:1024px) and (min-width:768px) {
    accordion-disclosure .faq-content>* {
        padding-top: 40px;
    }

    .custom-faq .accordion-disclosure-group {
        width: 100%;
    }
}

@media(max-width:767px) {
    accordion-disclosure .faq-content>* {
        padding: 0 16px;
        padding-top: 25px;
    }

    .faq-title {
        padding: 0 12px;
    }

    accordion-disclosure {
        padding: 15px 0;
    }
}