/* FAQ */
.cpx-faq__item {
    border-radius: 0px;

    background-color: #faf4ff;
    margin-bottom: 5px;
}

.cpx-faq__item+.cpx-faq__item {
    /* border-top: 1px solid #582977; */
}

.cpx-faq__item__question {
    position: relative;
    padding: 1.2em 0em;
    padding-left: 3em;
    cursor: pointer;
    font-weight: 500;
    font-size: 17px;
    line-height: 1.3;
    list-style: none;
    color: #582977;
    transition: color 0.3s ease;
}

.cpx-faq__item__question:hover {
    color: #582977;
}

.cpx-faq__item__question::-webkit-details-marker {
    display: none;
}

.cpx-faq__item__question::before,
.cpx-faq__item__question::after {
    content: '';
    position: absolute;
    background-color: #582977;
    transition: all 0.3s ease;
}

.cpx-faq__item__question::before {
    left: 17px;
    top: 47%;
    width: 16px;
    height: 2px;
    transform: translateY(-50%);
}

.cpx-faq__item__question::after {
    left: calc(17px + 7px);
    top: calc(47% - 8px);
    width: 2px;
    height: 16px;
    transform-origin: center;
}

.cpx-faq__item[open] .cpx-faq__item__question::before,
.cpx-faq__item[open] .cpx-faq__item__question::after {
    transform: rotate(90deg);
}

.cpx-faq__item[open] .cpx-faq__item__question::before {
    opacity: 0;
}

.cpx-faq__item[open] .cpx-faq__item__question {
    color: #582977;
}

.cpx-faq__item__answer {
    padding: 0 1em 1em;
    line-height: 1.6;
    border-radius: 0px;
    padding: 20px;
    padding-left: 37px;
    margin-bottom: 1em;
    color: #582977;
}

.cpx-faq__item__answer p:first-child {
    margin-top: 0;
}

.cpx-faq__item__answer p:last-child {
    margin-bottom: 0;
}

.cpx-faq__tag-title {
    color: #582977;
}

@media screen and (min-width: 1024px) {
    .cpx-faq-section__inner {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: center;
        gap: 0px 50px;

        .cpx-faq-section__widget {
            flex-grow: 0;
            flex-shrink: 1;
            width: 50%;
        }
    }
}