/* D09 / M09 FAQ: native Avada accordions, using the site's existing tokens. */
.cb-infos-faq {
    padding:112px max(16px,calc((100% - 1240px)/2))!important;
    background:var(--cb-soft)!important;
}
.cb-infos-faq > .fusion-builder-row {
    display:flex!important;
    flex-direction:column;
    gap:64px;
    width:100%!important;
    max-width:1240px!important;
    margin:0 auto!important;
}
.cb-infos-faq :is(.cb-infos-faq__heading,.cb-infos-faq__content),
.cb-infos-faq-preview {
    width:100%!important;
    min-width:0;
    margin:0!important;
}
.cb-infos-faq :is(.cb-infos-faq__heading,.cb-infos-faq__content) > .fusion-column-wrapper,
.cb-infos-faq-preview > .fusion-column-wrapper {
    margin:0!important;
    padding:0!important;
}
.cb-infos-faq .cb-home-eyebrow { min-height:15.5px; margin:0 0 8px!important; }
.cb-infos-faq .cb-home-title {
    margin:0!important;
    color:var(--cb-ink);
    font:400 79px/70.488px var(--cb-font-display)!important;
    letter-spacing:2.772px;
    text-transform:uppercase;
}
.cb-infos-faq .cb-home-title span { color:inherit; }
.cb-infos-faq__title-mobile { display:none; }
.cb-infos-faq-accordion.fusion-accordian {
    width:100%;
    margin:0!important;
    font-family:var(--cb-font-body);
    font-optical-sizing:none;
    --awb-toggle-active-accent-color:var(--cb-ink);
    --awb-toggle-hover-accent-color:var(--cb-ink);
}
.cb-infos-faq-accordion > .panel-group {
    display:flex;
    flex-direction:column;
    gap:24px;
    margin:0!important;
}
.cb-infos-faq-accordion .fusion-panel.cb-infos-faq__item {
    margin:0!important;
    /* Keep the card inset fixed while Avada animates only the answer height. */
    padding:0 0 24px!important;
    border:0!important;
    border-radius:18px!important;
    background:var(--cb-white)!important;
    box-shadow:inset 0 0 0 1px var(--cb-border)!important;
    cursor:pointer;
}
.cb-infos-faq-accordion .panel-heading { margin:0; padding:0; }
.cb-infos-faq-accordion .panel-heading .panel-title {
    margin:0!important;
    color:var(--cb-ink)!important;
    font:700 16px/23px var(--cb-font-body)!important;
    letter-spacing:0!important;
    text-transform:none!important;
}
.cb-infos-faq-accordion .panel-heading .panel-title > a {
    display:flex!important;
    flex-direction:row-reverse;
    align-items:center!important;
    justify-content:space-between;
    gap:16px;
    padding:24px 24px 0!important;
    border-radius:18px;
    color:var(--cb-ink)!important;
    background:transparent!important;
    font:inherit;
    text-decoration:none!important;
    transition:none;
}
.cb-infos-faq-accordion .panel-heading .panel-title > a:focus-visible {
    outline:2px solid var(--cb-red);
    outline-offset:3px;
}
.cb-infos-faq-accordion .panel-heading .fusion-toggle-heading {
    flex:1 1 0;
    min-width:0;
    width:auto;
    margin:0!important;
    font:inherit;
}
.cb-infos-faq-accordion .panel-heading .fusion-toggle-icon-wrapper {
    position:static;
    display:block;
    flex:0 0 auto;
    min-width:12px;
    height:29px;
    margin:0!important;
    color:var(--cb-red)!important;
    font:700 22px/29px var(--cb-font-body)!important;
    text-align:center;
}
.cb-infos-faq-accordion .fusion-toggle-icon-wrapper > i { display:none!important; }
.cb-infos-faq-accordion .fusion-toggle-icon-wrapper::before { content:"+"; }
.cb-infos-faq-accordion .active .fusion-toggle-icon-wrapper::before { content:"−"; }
.cb-infos-faq-accordion .panel-body.toggle-content {
    padding:14px 24px 0!important;
    color:var(--cb-muted);
    font:400 15px/22px var(--cb-font-body)!important;
    letter-spacing:0!important;
    text-transform:none;
}
.cb-infos-faq-accordion .panel-body.toggle-content > :first-child { margin-top:0; }
.cb-infos-faq-accordion .panel-body.toggle-content > :last-child { margin-bottom:0; }
.cb-infos-faq-accordion .panel-body.toggle-content p { margin:0 0 12px; }
.cb-infos-faq-accordion .panel-body.toggle-content a { color:var(--cb-ink); text-decoration:none; }
.cb-infos-faq-accordion .panel-body.toggle-content a:hover { color:var(--cb-red); text-decoration:none; }
@media (min-width:801px) and (max-width:1100px) {
    .cb-infos-faq .cb-home-title { font-size:64px!important; line-height:59px!important; letter-spacing:2.2px; }
}
@media (max-width:800px) {
    .cb-infos-faq { padding:64px 16px!important; }
    .cb-infos-faq .cb-home-eyebrow { margin-bottom:7px!important; }
    .cb-infos-faq .cb-home-title { font-size:44px!important; line-height:40px!important; letter-spacing:-1.54px; }
    .cb-infos-faq__title-desktop { display:none; }
    .cb-infos-faq__title-mobile { display:inline; }
}
