/* GÉNÉRÉ par tools/compat.py — ne pas modifier à la main. */
.e-con.faqp { padding: 64px 0 110px; }
.e-con.faqp__list { max-width: 920px; display: flex; flex-direction: column; gap: 12px; }
.e-con.faqp__item { background: #fff; border: 1px solid var(--hy-line); border-left: 4px solid var(--faq-cat, var(--hy-line)); border-radius: 16px; transition: border-color .2s ease, box-shadow .2s ease; }
.e-con.faqp__item[open] { border-color: var(--hy-line); border-left-color: var(--faq-cat, var(--hy-blue)); box-shadow: 0 18px 40px -24px rgba(0,80,152,.25); }
.e-con.faqp__summary { list-style: none; cursor: pointer; position: relative; display: flex; align-items: flex-start; gap: 16px; padding: 20px 64px 20px 26px; }
.e-con.faqp__summary::-webkit-details-marker { display: none; }
.e-con.faqp__summary::after { content: ""; position: absolute; right: 22px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border-radius: 50%; background-color: var(--hy-paper-2); background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23005098' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14M5 12h14'/></svg>"); background-repeat: no-repeat; background-position: center; transition: all .25s ease; }
.faqp__item[open] .e-con.faqp__summary::after { background-color: var(--faq-cat, var(--hy-blue)); transform: translateY(-50%) rotate(135deg); background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M12 5v14M5 12h14'/></svg>"); }
.e-con.faqp__summary::after { top: 24px; transform: none; }
.faqp__item[open] .e-con.faqp__summary::after { transform: rotate(135deg); }
.e-con.faqp__body { padding: 0 26px 24px 26px; color: var(--hy-muted); font-size: 15px; line-height: 1.65; }
.e-con.faqp__help { margin-top: 56px; max-width: 920px; display: flex; align-items: center; justify-content: space-between; gap: 28px; flex-wrap: wrap; background: var(--hy-blue); color: #fff; border-radius: var(--radius-card, 26px); padding: 36px 44px; }
@media (max-width: 680px) {
  .e-con.faqp__summary { font-size: 15.5px; padding: 20px 56px 20px 20px; }
}
@media (max-width: 680px) {
  .e-con.faqp__body { padding: 0 20px 22px 20px; }
}
@media (max-width: 680px) {
  .e-con.faqp__help { padding: 28px 26px; }
}
