/* FAQ à onglets (porté du composant React « faq-tabs ») : en-tête centré avec halo,
   onglets à remplissage glissant, questions en cartes qui s'ouvrent au « + ». */
.fo-section{position:relative;overflow:hidden}
.fo-tete{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;align-items:center}
.fo-tete .eyebrow{justify-content:center;margin-bottom:22px;background:linear-gradient(90deg,var(--gold),var(--gold-light));-webkit-background-clip:text;background-clip:text;color:transparent}
.fo-tete .eyebrow .section-number,.fo-tete .eyebrow .short-line{color:var(--gold);-webkit-text-fill-color:var(--gold)}
.fo-tete h2{margin-bottom:22px}
.fo-tete .audience-intro{max-width:560px;margin:0 auto 34px;text-align:center}
.fo-halo{position:absolute;left:50%;top:-360px;width:620px;height:520px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(198,162,80,.16),rgba(198,162,80,.05) 60%,transparent);filter:blur(48px);pointer-events:none;z-index:0}
.fo-onglets{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}
.fo-onglet{position:relative;overflow:hidden;white-space:nowrap;border:1px solid var(--line);border-radius:8px;padding:9px 16px;background:transparent;font:500 12px/1 var(--sans);letter-spacing:.3px;color:var(--muted);cursor:pointer;transition:color .5s,border-color .5s}
.fo-onglet:hover{color:var(--ivory)}
.fo-onglet>span{position:relative;z-index:1}
.fo-onglet .fo-fond{position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:translateY(100%);transition:transform .5s cubic-bezier(.36,0,.66,-.56)}
.fo-onglet[aria-selected=true]{border-color:var(--gold);color:var(--ink)}
.fo-onglet[aria-selected=true] .fo-fond{transform:translateY(0)}
.fo-onglet:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.fo-liste{position:relative;z-index:1;max-width:760px;margin:44px auto 0}
.fo-panneau{display:grid;gap:14px;transition:opacity .35s cubic-bezier(.36,0,.66,-.56),transform .35s cubic-bezier(.36,0,.66,-.56)}
.fo-panneau[hidden]{display:none}
.fo-panneau.sort{opacity:0;transform:translateY(20px)}
.fo-panneau.entre{animation:fo-entre .5s cubic-bezier(.34,1.3,.64,1) both}
@keyframes fo-entre{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
.fo-item{border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);transition:background .3s,border-color .3s}
.fo-item.ouvert{background:rgba(255,255,255,.055);border-color:rgba(196,173,124,.32)}
.fo-q{display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;background:none;border:0;text-align:left;cursor:pointer;font:500 16px/1.45 var(--sans);color:var(--muted);transition:color .3s}
.fo-q:hover,.fo-item.ouvert .fo-q{color:var(--ivory)}
.fo-q:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;border-radius:14px}
.fo-q .icon{flex:0 0 auto;width:20px;height:20px;color:var(--muted);transition:transform .2s,color .3s}
.fo-item.ouvert .fo-q .icon{transform:rotate(45deg);color:var(--ivory)}
.fo-r{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease-in-out,padding-bottom .3s ease-in-out;padding:0 20px}
.fo-r>div{overflow:hidden;min-height:0}
.fo-r p{color:#a6aebb;font-size:14px;line-height:1.85;margin:0}
.fo-item.ouvert .fo-r{grid-template-rows:1fr;padding-bottom:16px}
.fo-section .scope-note{margin-top:40px;text-align:center}
@media(max-width:640px){.fo-onglets{gap:8px}.fo-onglet{padding:8px 12px;font-size:11px}.fo-liste{margin-top:30px}.fo-panneau{gap:10px}.fo-q{font-size:14px;padding:15px 16px;gap:14px}.fo-r{padding-inline:16px}.fo-r p{font-size:13px}.fo-halo{width:420px;height:380px;top:-280px}}
@media(prefers-reduced-motion:reduce){.fo-onglet .fo-fond,.fo-panneau,.fo-r,.fo-q .icon{transition:none}.fo-panneau.entre{animation:none}}

/* Onglets non ouverts : un bord lumineux qui tourne et scintille, pour qu'on voie qu'ils se cliquent (14/11). */
@property --fo-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
.fo-onglet{isolation:isolate}
.fo-onglet>span{z-index:2}
.fo-onglet::before{content:'';position:absolute;inset:0;border-radius:7px;padding:1px;z-index:1;pointer-events:none;
  background:conic-gradient(from var(--fo-angle),transparent 0 46%,rgba(220,192,130,.6) 66%,#fff6dc 76%,rgba(220,192,130,.6) 86%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:fo-tour 3.2s linear infinite;opacity:1;transition:opacity .4s}
.fo-onglet{border-color:rgba(198,162,80,.26);animation:fo-lueur 2.6s ease-in-out infinite}
.fo-onglet:nth-child(2){animation-delay:-.9s}.fo-onglet:nth-child(2)::before{animation-delay:-1.1s}
.fo-onglet:nth-child(3){animation-delay:-1.8s}.fo-onglet:nth-child(3)::before{animation-delay:-2.2s}
.fo-onglet[aria-selected=true]{animation:none;box-shadow:0 6px 22px rgba(198,162,80,.28)}
.fo-onglet[aria-selected=true]::before{opacity:0;animation:none}
@keyframes fo-tour{to{--fo-angle:360deg}}
@keyframes fo-lueur{0%,100%{box-shadow:0 0 0 0 rgba(198,162,80,0),0 0 10px rgba(198,162,80,.12)}50%{box-shadow:0 0 0 1px rgba(220,192,130,.34),0 0 26px rgba(198,162,80,.42)}}
@media(prefers-reduced-motion:reduce){.fo-onglet,.fo-onglet::before{animation:none}.fo-onglet:not([aria-selected=true]){box-shadow:0 0 0 1px rgba(220,192,130,.28),0 0 18px rgba(198,162,80,.26)}.fo-onglet::before{background:conic-gradient(rgba(220,192,130,.45) 0 100%)}}
