.faqs-block{
    background:#f7f7f7;
    border-radius:0.5rem;
    padding:1.5rem 2rem;
}

.faq-block-header .block-toggle{
    background:transparent;
    border:none;
    cursor:pointer;
    padding:0;
    display:block;
    width:100%;
}

.faq-block-header h2{
    font-size:26px;
    display:flex;
    align-items:center;
    gap:0.75rem;
    margin:0;
    line-height:1.3;
    text-align:left;
}

.faq-block-header svg{ display:block; }

.faq-block-header .toggle-icon{
    margin-left:auto;
}

.faq-block-header .toggle-icon svg{
    width:24px;
    transition: transform .1s ease-out;
    transform: rotate(0);
    transform-origin: center center;
}

.flex-faqs-block.isOpen .faq-block-header .toggle-icon svg{
    transform: rotate(90deg);
    transform-origin:center center;
}

.faqs-block-content-inner{ padding-top:1.5rem; }

.faqs-block .faq-item{
    padding:1.25rem 0;
}

.faqs-block .faq-item + .faq-item{
    border-top:1px solid #ddd;
}

.faq-item summary {
    cursor:pointer;
    overflow:hidden;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:2rem;
}

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

.faq-item summary .toggle-icon{ width:22px; display:flex; align-items:center; flex:none; }

.faq-item summary .toggle-icon svg{
    transition: transform .3s ease-out;
    transform: rotate(0);
    transform-origin: center center;
}

.faq-item summary.isOpen .toggle-icon svg{
    transform: rotate(45deg);
    transform-origin:center center;
}

.faq-item .faq-answer {
  overflow:hidden;
  height:0;
  padding:0 2rem 0 0;
  font-size:15px;
}

.faq-item .faq-answer div{ padding-top:1rem; }

.faqs-block .faq-item .faq-answer p, 
.faqs-block .faq-item .faq-answer ul,
.faqs-block .faq-item .faq-answer ol{
    margin-bottom:1rem;
    padding-bottom:0;
}

.faqs-block .faq-item .faq-answer div > *:last-child{
    margin-bottom:0; padding-bottom:0;
}

@media screen and (max-width:640px){
    .faq-block-header h2{
        font-size:1.4rem;
    }
}
