.mageworx-faq {
    margin-top: 2rem;
}

.mageworx-faq .mageworx-faq__header {
    margin: 0 0 2rem;
}

.mageworx-faq .mageworx-faq__title {
    margin: 0 0 .8rem;
    color: #1f1f1f;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.25;
}

.mageworx-faq .mageworx-faq__intro {
    margin: 0 0 2rem 0;
    max-width: 72rem;
    color: #4a5568;
    font-size: 1.4rem;
    line-height: 1.7;

}

.mageworx-faq .mageworx-faq__block-header {
    margin: 0 0 1.6rem;
}

.mageworx-faq .mageworx-faq__block-title {
    margin: 0 0 .6rem;
    color: #1f1f1f;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.35;
}

.mageworx-faq .mageworx-faq__block-description {
    margin: 0;
    color: #4a5568;
    font-size: 1.4rem;
    line-height: 1.7;
}

.mageworx-faq .mageworx-faq__item {
    border: 1px solid #e5e5e5;
    border-radius: 4px;
    overflow: hidden;
}

.mageworx-faq .mageworx-faq__item + .mageworx-faq__item {
    margin-top: 1rem;
}

.mageworx-faq .mageworx-faq__question {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 1.4rem 4rem 1.4rem 1.6rem;
    border: 0;
    border-radius: 0;
    background: #f3f5f7;
    color: #1f1f1f;
    text-align: left;
    cursor: pointer;
    transition: background-color .2s ease;
}

.mageworx-faq .mageworx-faq__question:hover,
.mageworx-faq .mageworx-faq__question:focus {
    background: #eaf2f8;
}

.mageworx-faq .mageworx-faq__question-text {
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.35;
}

.mageworx-faq .mageworx-faq__question-hint {
    display: block;
    margin-top: .4rem;
    color: #6b7280;
    font-size: 1.2rem;
    font-weight: 400;
}

.mageworx-faq .mageworx-faq__question:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.6rem;
    width: .8rem;
    height: .8rem;
    border-right: 2px solid #4a5568;
    border-bottom: 2px solid #4a5568;
    transform: translateY(-65%) rotate(45deg);
    transition: transform .2s ease;
}

.mageworx-faq .mageworx-faq__item.active .mageworx-faq__question:after,
.mageworx-faq .mageworx-faq__question[aria-expanded="true"]:after {
    transform: translateY(-35%) rotate(-135deg);
}

.mageworx-faq .mageworx-faq__answers {
    padding: 1.4rem 1.6rem;
    background: #fafbfc;
    color: #616161;
    font-size: 1.4rem;
    line-height: 1.6;
}

.mageworx-faq .mageworx-faq__answer {
    margin: 0;
}

.mageworx-faq .mageworx-faq__answer + .mageworx-faq__answer {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #ededed;
}

.mageworx-faq .mageworx-faq__spoiler {
    margin-top: 1rem;
}

.mageworx-faq .mageworx-faq__spoiler-summary {
    margin: 0;
    padding: 0;
    color: #1979c3;
    font-size: 1.3rem;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
}

.mageworx-faq .mageworx-faq__spoiler-summary::-webkit-details-marker {
    display: none;
}

.mageworx-faq .mageworx-faq__spoiler-close-label {
    display: none;
}

.mageworx-faq .mageworx-faq__spoiler[open] .mageworx-faq__spoiler-open-label {
    display: none;
}

.mageworx-faq .mageworx-faq__spoiler[open] .mageworx-faq__spoiler-close-label {
    display: inline;
}

.mageworx-faq .mageworx-faq__answers-list--extra {
    margin-top: 1rem;
}

/* Anchor highlight animation */
@keyframes mageworx-faq-highlight {
    0%   { box-shadow: 0 0 0 3px rgba(25, 121, 195, .5); }
    100% { box-shadow: 0 0 0 3px rgba(25, 121, 195, 0); }
}

.mageworx-faq .mageworx-faq__item--highlighted {
    animation: mageworx-faq-highlight 2s ease-out;
}
