/* colors & borders */
.wp-block-yoast-faq-block {
    border-top:1px solid #eee;
}
.wp-block-yoast-faq-block .schema-faq-question {
    border-bottom:1px solid #eee;
}
.wp-block-yoast-faq-block .schema-faq-question:hover,
.wp-block-yoast-faq-block .fcp-opened .schema-faq-question {
    background-color:#fafafa;
}
.wp-block-yoast-faq-block .schema-faq-answer,
.wp-block-yoast-faq-block .fcp-opened .schema-faq-answer {
    border-bottom:1px solid #eee;
}

/* layout */
.wp-block-yoast-faq-block .schema-faq-question {
    display:block;
    padding:10px;
    position:relative;
}
.wp-block-yoast-faq-block.fcp-faq .schema-faq-question {
    cursor:pointer;
}
.wp-block-yoast-faq-block .schema-faq-answer {
    margin:0;
    padding:12px 10px;
}

/* bullet before a question */
.wp-block-yoast-faq-block .schema-faq-question:before {
    /* position gap */
    margin-top:-2px;
}
.wp-block-yoast-faq-block .schema-faq-question,
.wp-block-yoast-faq-block .schema-faq-answer {
    padding-left:34px;
}
.wp-block-yoast-faq-block .schema-faq-question:before {
    content:'';
    display:block;
    border:2px solid #dedede;
    border-width:0px 2px 2px 0px;
    width:9px;
    height:9px;
    box-sizing:border-box;
    position:absolute;
    left:14px;
}
.wp-block-yoast-faq-block.fcp-faq .schema-faq-question:before {
    top:16px;
    transform:rotate(-45deg);
    transition:all 0.3s 0.3s ease;
}
.wp-block-yoast-faq-block .schema-faq-question:before,
.wp-block-yoast-faq-block.fcp-faq .fcp-opened .schema-faq-question:before {
    top:14px;
    transform:rotate(45deg);
}

/* transition */
.wp-block-yoast-faq-block.fcp-faq .schema-faq-answer {
    max-height:0;
    overflow:hidden;
    border-bottom-width:0;
    padding-top:0;
    padding-bottom:0;
    transition:padding-bottom 0.3s ease-in, max-height 0.4s ease-in, padding-top 0.1s 0.4s ease-out, border-bottom-width 0s 0.5s linear;
}
.wp-block-yoast-faq-block .fcp-opened .schema-faq-answer {
    max-height:9999px;
    border-bottom-width:1px;
    padding-top:12px;
    padding-bottom:20px;
    transition:padding-top 0.2s ease-in, max-height 0.3s 0.2s linear, padding-bottom 0.4s 0.2s ease;
}
