/* F2i FAQ — accordion design (couleurs F2i) */
.f2i-faq {
    --f2i-bleu:       #1e6dd8;
    --f2i-bleu-nuit:  #0e3366;
    --f2i-jaune:      #ffd000;
    --f2i-gris:       #f4f7fc;
    --f2i-border:     #e1e6ee;
    max-width: 860px;
    margin: 40px auto;
    font-family: inherit;
    color: #222;
}

.f2i-faq__titre {
    font-size: 28px;
    font-weight: 800;
    color: var(--f2i-bleu-nuit);
    margin: 0 0 24px;
    text-align: center;
}

.f2i-faq__liste {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.f2i-faq__item {
    background: #fff;
    border: 1px solid var(--f2i-border);
    border-radius: 10px;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease;
}

.f2i-faq__item[open] {
    border-color: var(--f2i-bleu);
    box-shadow: 0 4px 14px rgba(30, 109, 216, .08);
}

.f2i-faq__question {
    list-style: none;
    cursor: pointer;
    padding: 18px 24px 18px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 17px;
    font-weight: 700;
    color: var(--f2i-bleu-nuit);
    background: #fff;
    transition: background .15s ease;
}

.f2i-faq__question::-webkit-details-marker { display: none; }
.f2i-faq__question:hover { background: var(--f2i-gris); }

.f2i-faq__num {
    flex: 0 0 32px;
    height: 32px;
    background: #3e91cd;
    color: #fff;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 800;
    font-family: -apple-system, sans-serif;
}

.f2i-faq__q-text {
    flex: 1;
    line-height: 1.4;
}

.f2i-faq__icon {
    flex: 0 0 28px;
    height: 28px;
    background: #efe464;
    color: var(--f2i-bleu-nuit);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    transition: transform .2s ease;
}

.f2i-faq__item[open] .f2i-faq__icon { transform: rotate(45deg); }

.f2i-faq__reponse {
    padding: 4px 24px 22px 64px;
    font-size: 15px;
    line-height: 1.65;
    color: #333;
    border-top: 1px solid var(--f2i-border);
    background: #fafbfd;
    padding-top: 18px;
}

.f2i-faq__reponse strong { color: var(--f2i-bleu-nuit); }
.f2i-faq__reponse a {
    color: var(--f2i-bleu);
    text-decoration: underline;
    text-decoration-thickness: 1.5px;
    text-underline-offset: 3px;
}
.f2i-faq__reponse a:hover { color: var(--f2i-bleu-nuit); }

/* Lien "voir toutes les questions" */
.f2i-faq__voir-plus {
    margin: 22px 0 0;
    text-align: center;
}
.f2i-faq__voir-plus a {
    display: inline-block;
    padding: 12px 28px;
    background: var(--f2i-bleu-nuit);
    color: #fff;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;
    transition: background .15s ease;
}
.f2i-faq__voir-plus a:hover { background: var(--f2i-bleu); }

/* Responsive */
@media (max-width: 600px) {
    .f2i-faq { margin: 24px 12px; }
    .f2i-faq__titre { font-size: 22px; }
    .f2i-faq__question { padding: 14px 16px 14px 14px; font-size: 15px; gap: 10px; }
    .f2i-faq__reponse { padding-left: 14px; padding-right: 16px; font-size: 14px; }
    .f2i-faq__num { flex: 0 0 28px; height: 28px; font-size: 13px; }
}
