/* Formulaire « Trouver mon courtier » : champs stylisés, étiquettes Obligatoire/Facultatif,
   liste déroulante et calendrier sur mesure, envoi animé et confirmation dessinée.
   Thème par DA via les variables --fx-*. */
.fx{
  --fx-fond:var(--fond);--fx-surface:#fff;--fx-ligne:color-mix(in srgb,var(--encre) 16%,transparent);
  --fx-texte:var(--encre);--fx-doux:color-mix(in srgb,var(--encre) 66%,transparent);
  --fx-accent:var(--vert);--fx-accent-encre:var(--vert-encre,#0f5a47);--fx-erreur:#b3261e;
  --fx-r:1rem;--fx-h:3.5rem;
  position:relative;display:grid;gap:1.75rem;color:var(--fx-texte)
}
.fx-rangee{display:grid;gap:1.25rem 1rem;grid-template-columns:1fr 1fr}
.fx-rangee--3{grid-template-columns:1.2fr 1fr}
@media (max-width:700px){.fx-rangee,.fx-rangee--3{grid-template-columns:1fr}}
.fx fieldset{border:0;margin:0;padding:0;min-width:0}
.fx-champ{display:grid;gap:.55rem;min-width:0}
.fx-lab{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem .6rem;font-weight:600;font-size:.98rem;padding:0;color:var(--fx-texte)}
.tag{display:inline-flex;align-items:center;height:1.35rem;padding:0 .55rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em;background:color-mix(in srgb,var(--fx-texte) 7%,transparent);color:var(--fx-doux)}
.tag--req{background:color-mix(in srgb,var(--fx-accent) 18%,transparent);color:var(--fx-accent-encre)}
.fx-aide{font-size:.85rem;color:var(--fx-doux);line-height:1.45}
.fx-err{font-size:.85rem;color:var(--fx-erreur);font-weight:500;display:flex;gap:.4rem;align-items:flex-start;min-height:0}
.fx-err:empty{display:none}
.fx-err::before{content:"";flex:none;width:1rem;height:1rem;margin-top:.1rem;border-radius:50%;background:var(--fx-erreur);-webkit-mask:radial-gradient(circle at 50% 72%,#000 .09rem,transparent .1rem),linear-gradient(#000,#000) 50% 28%/.14rem .42rem no-repeat;mask:radial-gradient(circle at 50% 72%,#000 .09rem,transparent .1rem),linear-gradient(#000,#000) 50% 28%/.14rem .42rem no-repeat;opacity:.9}

/* Boîte de saisie */
.fx-boite{position:relative;display:flex;align-items:center;min-height:var(--fx-h);border-radius:var(--fx-r);background:var(--fx-surface);box-shadow:inset 0 0 0 1px var(--fx-ligne);transition:box-shadow .35s cubic-bezier(.16,1,.3,1),background .35s}
.fx-boite:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fx-texte) 34%,transparent)}
.fx-boite:focus-within{box-shadow:inset 0 0 0 2px var(--fx-accent),0 0 0 5px color-mix(in srgb,var(--fx-accent) 16%,transparent)}
.fx-boite input,.fx-boite textarea{flex:1;min-width:0;height:100%;min-height:var(--fx-h);border:0;background:none;outline:none;padding:0 1.1rem;font-size:1rem;color:var(--fx-texte)}
.fx-boite textarea{padding:1rem 1.1rem;min-height:7.5rem;resize:vertical;line-height:1.5}
.fx-boite input::placeholder,.fx-boite textarea::placeholder{color:color-mix(in srgb,var(--fx-texte) 50%,transparent)}
.fx-boite .fx-ic{flex:none;margin-left:1rem;color:var(--fx-doux);font-size:1.2rem}
.fx-boite .fx-ic + input{padding-left:.7rem}
.fx-suf{flex:none;padding-right:1.1rem;color:var(--fx-doux);font-weight:600}
.fx-compteur{position:absolute;right:1rem;bottom:.6rem;font-size:.75rem;color:var(--fx-doux)}
.fx-champ.est-erreur .fx-boite{box-shadow:inset 0 0 0 2px var(--fx-erreur)}
.fx-champ.est-ok .fx-boite::after{content:"";position:absolute;right:1rem;top:50%;width:1.1rem;height:1.1rem;margin-top:-.55rem;border-radius:50%;background:var(--fx-accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8'/%3E%3C/svg%3E");opacity:0;animation:fx-pop .45s cubic-bezier(.16,1,.3,1) forwards}
.fx-champ.est-ok .fx-boite::before{content:"";position:absolute;right:1.33rem;top:50%;width:.42rem;height:.24rem;margin-top:-.2rem;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);z-index:1;opacity:0;animation:fx-pop .45s .1s cubic-bezier(.16,1,.3,1) forwards}
@keyframes fx-pop{from{opacity:0;transform:scale(.4) rotate(-45deg)}to{opacity:1}}
.fx-champ.est-ok .fx-boite::before{animation-name:fx-pop2}
@keyframes fx-pop2{from{opacity:0;transform:rotate(-45deg) scale(.4)}to{opacity:1;transform:rotate(-45deg)}}

/* Cartes-radio (type de projet) */
.fx-cartes{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.6rem}
.fx-carte{position:relative;cursor:pointer}
.fx-carte input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.fx-carte span.fx-carte__corps{display:grid;gap:.55rem;align-content:start;min-height:6.2rem;padding:1rem 1rem .95rem;border-radius:var(--fx-r) calc(var(--fx-r)*2.2) var(--fx-r) var(--fx-r);background:var(--fx-surface);box-shadow:inset 0 0 0 1px var(--fx-ligne);font-weight:600;font-size:.92rem;line-height:1.25;transition:box-shadow .35s cubic-bezier(.16,1,.3,1),background .35s,transform .35s cubic-bezier(.16,1,.3,1),color .35s}
.fx-carte i{font-size:1.55rem;color:var(--fx-doux);transition:color .35s,transform .5s cubic-bezier(.16,1,.3,1)}
.fx-carte__coche{position:absolute;right:.7rem;top:.7rem;width:1.25rem;height:1.25rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--fx-ligne);transition:all .35s cubic-bezier(.16,1,.3,1)}
.fx-carte__coche::after{content:"";position:absolute;left:.4rem;top:.3rem;width:.35rem;height:.6rem;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg) scale(0);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
@media (hover:hover){.fx-carte:hover span.fx-carte__corps{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fx-texte) 34%,transparent);transform:translateY(-2px)}.fx-carte:hover i{transform:translateY(-2px)}}
.fx-carte input:checked ~ span.fx-carte__corps{box-shadow:inset 0 0 0 2px var(--fx-accent);background:color-mix(in srgb,var(--fx-accent) 7%,var(--fx-surface))}
.fx-carte input:checked ~ span.fx-carte__corps i{color:var(--fx-accent-encre)}
.fx-carte input:checked ~ .fx-carte__coche{background:var(--fx-accent);box-shadow:none}
.fx-carte input:checked ~ .fx-carte__coche::after{transform:rotate(45deg) scale(1)}
.fx-carte input:focus-visible ~ span.fx-carte__corps{outline:2px solid var(--fx-accent);outline-offset:3px}
.est-erreur .fx-carte span.fx-carte__corps{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fx-erreur) 55%,transparent)}

/* Segments (radio en piste) */
.fx-segments{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:.3rem;border-radius:999px;background:color-mix(in srgb,var(--fx-texte) 6%,var(--fx-surface));box-shadow:inset 0 0 0 1px var(--fx-ligne);isolation:isolate;max-width:100%}
.fx-segments label{position:relative;display:grid;place-items:center;min-height:2.75rem;padding:0 1.15rem;border-radius:999px;font-weight:600;font-size:.92rem;cursor:pointer;white-space:nowrap;transition:color .4s}
.fx-segments input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.fx-segments label:has(input:checked){color:var(--fx-fond-inverse,#fff)}
.fx-segments label:has(input:focus-visible){outline:2px solid var(--fx-accent);outline-offset:2px}
.fx-pouce{position:absolute;z-index:-1;top:.3rem;bottom:.3rem;left:0;border-radius:999px;background:var(--fx-texte);transition:transform .55s cubic-bezier(.34,1.3,.64,1),width .55s cubic-bezier(.34,1.3,.64,1)}
@media (max-width:520px){.fx-segments{display:grid;grid-auto-flow:row;border-radius:1.2rem;width:100%}.fx-segments label{border-radius:.9rem}.fx-pouce{display:none}.fx-segments label:has(input:checked){background:var(--fx-texte)}}

/* Pastilles (cases multiples) */
.fx-pastilles{display:flex;flex-wrap:wrap;gap:.5rem}
.fx-pastille{position:relative}
.fx-pastille input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.fx-pastille span{display:inline-flex;align-items:center;gap:.45rem;min-height:2.6rem;padding:0 1rem;border-radius:999px;background:var(--fx-surface);box-shadow:inset 0 0 0 1px var(--fx-ligne);font-weight:500;font-size:.9rem;transition:all .35s cubic-bezier(.16,1,.3,1)}
.fx-pastille span i{font-size:1.05rem;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
@media (hover:hover){.fx-pastille:hover span{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fx-texte) 34%,transparent)}}
.fx-pastille input:checked + span{background:var(--fx-texte);color:var(--fx-fond-inverse,#fff);box-shadow:none}
.fx-pastille input:checked + span i{transform:rotate(-8deg) scale(1.12)}
.fx-pastille input:focus-visible + span{outline:2px solid var(--fx-accent);outline-offset:2px}

/* Case à cocher et consentements */
.fx-case{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:start;cursor:pointer;font-size:.92rem;line-height:1.5}
.fx-case input{appearance:none;-webkit-appearance:none;margin:.1rem 0 0;width:1.4rem;height:1.4rem;border-radius:.45rem;background:var(--fx-surface);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--fx-texte) 36%,transparent);display:grid;place-items:center;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1)}
.fx-case input::after{content:"";width:.38rem;height:.7rem;margin-top:-.15rem;border-right:2.2px solid #fff;border-bottom:2.2px solid #fff;transform:rotate(45deg) scale(0);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.fx-case input:checked{background:var(--fx-accent-encre);box-shadow:none}
.fx-case input:checked::after{transform:rotate(45deg) scale(1)}
.fx-case .tag{margin-left:.35rem;vertical-align:1px}
.fx-case a{text-decoration:underline;text-underline-offset:2px}
.est-erreur .fx-case input{box-shadow:inset 0 0 0 2px var(--fx-erreur)}
.fx-note{display:flex;gap:.75rem;align-items:flex-start;padding:1rem 1.1rem;border-radius:var(--fx-r);background:color-mix(in srgb,var(--fx-texte) 5%,transparent);font-size:.86rem;line-height:1.5;color:var(--fx-doux)}
.fx-note i{font-size:1.3rem;color:var(--fx-accent-encre);flex:none}

/* Liste déroulante personnalisée */
.fx-liste{position:relative}
.fx-liste__bouton{display:flex;align-items:center;gap:.8rem;width:100%;min-height:var(--fx-h);padding:.45rem 1rem .45rem .5rem;border-radius:var(--fx-r);background:var(--fx-surface);box-shadow:inset 0 0 0 1px var(--fx-ligne);text-align:left;transition:box-shadow .35s cubic-bezier(.16,1,.3,1)}
.fx-liste__bouton:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fx-texte) 34%,transparent)}
.fx-liste__bouton[aria-expanded=true],.fx-liste__bouton:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--fx-accent),0 0 0 5px color-mix(in srgb,var(--fx-accent) 16%,transparent)}
.fx-liste__val{flex:1;min-width:0;display:grid;line-height:1.25}
.fx-liste__val b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fx-liste__val small{font-size:.8rem;color:var(--fx-doux);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fx-liste__chev{flex:none;font-size:1.1rem;color:var(--fx-doux);transition:transform .45s cubic-bezier(.16,1,.3,1)}
.fx-liste__bouton[aria-expanded=true] .fx-liste__chev{transform:rotate(180deg)}
.fx-av{flex:none;width:2.6rem;height:2.6rem;border-radius:50%;overflow:hidden;background:color-mix(in srgb,var(--fx-accent) 18%,var(--fx-surface));display:grid;place-items:center;color:var(--fx-accent-encre)}
.fx-av img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.fx-av i{font-size:1.3rem}
.fx-liste__pop{position:absolute;z-index:30;left:0;right:0;top:calc(100% + .5rem);max-height:21rem;overflow:auto;overscroll-behavior:contain;margin:0;padding:.45rem;list-style:none;border-radius:calc(var(--fx-r) + .25rem);background:var(--fx-surface);box-shadow:0 0 0 1px var(--fx-ligne),0 24px 60px -18px color-mix(in srgb,var(--fx-texte) 35%,transparent);opacity:0;transform:translateY(-6px) scale(.985);transform-origin:50% 0;pointer-events:none;visibility:hidden;transition:opacity .3s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1),visibility 0s .4s}
.fx-liste.ouvert .fx-liste__pop{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition-delay:0s}
.fx-liste__pop li{display:flex;align-items:center;gap:.8rem;padding:.45rem .6rem;border-radius:.75rem;cursor:pointer;transition:background .2s}
.fx-liste__pop li .fx-av{width:2.3rem;height:2.3rem}
.fx-liste__pop li[aria-selected=true]{background:color-mix(in srgb,var(--fx-accent) 12%,transparent)}
.fx-liste__pop li.actif{background:color-mix(in srgb,var(--fx-texte) 7%,transparent)}
.fx-liste__pop li[aria-selected=true]::after{content:"";margin-left:auto;width:.4rem;height:.72rem;border-right:2px solid var(--fx-accent-encre);border-bottom:2px solid var(--fx-accent-encre);transform:rotate(45deg) translate(-2px,-2px)}
.fx-liste__pop .fx-liste__groupe{padding:.7rem .6rem .3rem;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--fx-doux);cursor:default}

/* Calendrier */
.fx-date{position:relative}
.fx-date__bouton{flex:none;display:grid;place-items:center;width:2.6rem;height:2.6rem;margin-right:.45rem;border-radius:.7rem;color:var(--fx-doux);transition:background .25s,color .25s}
.fx-date__bouton:hover{background:color-mix(in srgb,var(--fx-texte) 7%,transparent);color:var(--fx-texte)}
.fx-cal{position:absolute;z-index:30;top:calc(100% + .5rem);left:0;width:min(22rem,calc(100vw - 2rem));padding:1rem;border-radius:calc(var(--fx-r) + .35rem);background:var(--fx-surface);box-shadow:0 0 0 1px var(--fx-ligne),0 30px 70px -20px color-mix(in srgb,var(--fx-texte) 38%,transparent);opacity:0;transform:translateY(-6px) scale(.985);transform-origin:20% 0;visibility:hidden;pointer-events:none;transition:opacity .3s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1),visibility 0s .4s}
.fx-cal.ouvert{opacity:1;transform:none;visibility:visible;pointer-events:auto;transition-delay:0s}
.fx-cal__tete{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}
.fx-cal__mois{font-weight:700;text-transform:capitalize}
.fx-cal__nav{display:grid;place-items:center;width:2.3rem;height:2.3rem;border-radius:50%;transition:background .25s}
.fx-cal__nav:hover{background:color-mix(in srgb,var(--fx-texte) 8%,transparent)}
.fx-cal__grille{display:grid;grid-template-columns:repeat(7,1fr);gap:.15rem;text-align:center}
.fx-cal__js{font-size:.72rem;font-weight:600;color:var(--fx-doux);padding:.3rem 0;text-transform:uppercase}
.fx-cal__j{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;font-size:.9rem;font-variant-numeric:tabular-nums;transition:background .2s,color .2s,transform .3s cubic-bezier(.34,1.56,.64,1)}
.fx-cal__j:hover:not(:disabled){background:color-mix(in srgb,var(--fx-accent) 16%,transparent)}
.fx-cal__j:disabled{opacity:.3;cursor:not-allowed}
.fx-cal__j.auj{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--fx-texte) 30%,transparent)}
.fx-cal__j[aria-pressed=true]{background:var(--fx-texte);color:var(--fx-fond-inverse,#fff);transform:scale(1.04)}
.fx-cal__j:focus-visible{outline:2px solid var(--fx-accent);outline-offset:1px}
.fx-cal__pied{display:flex;justify-content:space-between;margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--fx-ligne);font-size:.85rem}
.fx-cal__pied button{font-weight:600;color:var(--fx-accent-encre)}

/* Condition */
[data-si][hidden]{display:none!important}
.fx-apparait{animation:fx-apparait .6s cubic-bezier(.16,1,.3,1)}
@keyframes fx-apparait{from{opacity:0;transform:translateY(-8px)}}

/* Résumé d'erreurs */
.fx-resume{padding:1rem 1.2rem;border-radius:var(--fx-r);background:color-mix(in srgb,var(--fx-erreur) 8%,transparent);color:var(--fx-erreur);font-size:.9rem;font-weight:500}
.fx-resume[hidden]{display:none}

/* Envoi */
.fx-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
.fx-envoyer{--p:0;min-width:15rem;justify-content:space-between}
.fx-envoyer .fx-barre{position:absolute;left:0;bottom:0;height:100%;width:100%;z-index:-1;background:var(--b-survol);transform-origin:0 50%;transform:scaleX(var(--p));transition:transform .4s linear}
.fx-envoyer.envoi::before{transform:translate3d(0,101%,0)!important}
.fx-envoyer.envoi .rond i{animation:fx-tourne .9s linear infinite}
@keyframes fx-tourne{to{transform:rotate(360deg)}}
.fx-envoyer[disabled]{cursor:progress}
.fx-mention{font-size:.82rem;color:var(--fx-doux);max-width:32ch}

/* Confirmation */
.fx-merci{display:grid;justify-items:start;gap:1.2rem;padding:clamp(1.5rem,4vw,3rem) 0}
.fx-merci[hidden]{display:none}
.fx-merci__ico{width:clamp(5.2rem,8vw,6.5rem);height:auto;overflow:visible}
.fx-merci__ico .fond{fill:color-mix(in srgb,var(--fx-accent) 16%,transparent);transform-origin:48px 48px;transform:scale(.6);opacity:0;transition:transform .9s cubic-bezier(.34,1.4,.64,1),opacity .6s}
.fx-merci__ico.rempli .fond{transform:none;opacity:1}
.fx-merci__ico .anneau{fill:none;stroke:var(--fx-accent);stroke-width:2.5;stroke-linecap:round}
.fx-merci__ico .maison{fill:none;stroke:var(--fx-texte);stroke-width:4;stroke-linejoin:round;stroke-linecap:round}
.fx-merci__ico .coche{fill:none;stroke:var(--fx-accent-encre);stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round}
.fx-merci__ico.rempli{animation:merci-pop .7s cubic-bezier(.34,1.56,.64,1)}
@keyframes merci-pop{40%{transform:scale(1.06)}}
.fx-merci h3{font-family:var(--titre);font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.08;letter-spacing:-.01em}
.fx-merci p{max-width:46ch;line-height:1.55;color:var(--fx-doux)}
.fx-recap{display:flex;flex-wrap:wrap;gap:.5rem}
.fx-recap span{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:999px;background:color-mix(in srgb,var(--fx-accent) 12%,transparent);font-size:.86rem;font-weight:500}
.fx-recap span i{color:var(--fx-accent-encre)}
.fx.est-envoye .fx-corps{display:none}

/* ===== Formulaire par étapes (v2) : rythme vertical régulier, cartes compactes ===== */
.fx{gap:1.6rem}
.fx-corps{display:grid;gap:1.4rem;min-width:0}
.fx-scene{position:relative;transition:height .5s cubic-bezier(.16,1,.3,1)}
.fx-etape{display:grid;gap:1.35rem;min-width:0}
.fx-etape[hidden]{display:none}
.fx-etape__titre{font-family:var(--titre);font-weight:400;font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.1;letter-spacing:-.02em;outline:none}
.fx-champ{gap:.5rem}
.fx-rangee{gap:1.35rem 1rem}
.fx-aide{margin-top:-.1rem}
.fx-champ>.fx-err:empty,.fx-champ>.fx-aide:empty{display:none}

/* Progression : pastilles reliées par un trait qui se remplit */
.fx-pas{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:0}
.fx-pas li{display:flex;align-items:center;gap:.55rem;font-size:.86rem;font-weight:600;color:var(--fx-doux);white-space:nowrap;transition:color .4s}
.fx-pas li:not(:last-child){flex:1}
.fx-pas li:not(:last-child)::after{content:"";flex:1;min-width:1rem;height:2px;margin:0 .8rem;border-radius:2px;background:linear-gradient(90deg,var(--fx-accent) 50%,var(--fx-ligne) 50%) 100% 0/200% 100% no-repeat;transition:background-position .7s cubic-bezier(.16,1,.3,1)}
.fx-pas li.fait:not(:last-child)::after{background-position:0 0}
.fx-pas__rond{position:relative;display:grid;place-items:center;flex:none;width:2rem;height:2rem;border-radius:50%;background:var(--fx-surface);box-shadow:inset 0 0 0 1.5px var(--fx-ligne);font-size:.82rem;transition:background .45s cubic-bezier(.16,1,.3,1),box-shadow .45s,color .45s}
.fx-pas__rond i{position:absolute;font-size:1.05rem;opacity:0;transform:scale(.4);transition:opacity .3s,transform .45s cubic-bezier(.34,1.56,.64,1)}
.fx-pas__rond span{transition:opacity .3s}
.fx-pas li[aria-current]{color:var(--fx-texte)}
.fx-pas li[aria-current] .fx-pas__rond{background:var(--fx-texte);color:var(--fx-fond-inverse,#fff);box-shadow:none}
.fx-pas li.fait{color:var(--fx-texte);cursor:pointer}
.fx-pas li.fait .fx-pas__rond{background:var(--fx-accent);box-shadow:none;color:#fff}
.fx-pas li.fait .fx-pas__rond span{opacity:0}
.fx-pas li.fait .fx-pas__rond i{opacity:1;transform:none}
.fx-pas__barre{display:none}
@media (max-width:600px){.fx-pas li:not([aria-current]) .fx-pas__lib{display:none}}

/* Cartes de projet compactes (une ligne) */
.fx-cartes{grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));gap:.5rem}
.fx-carte span.fx-carte__corps{display:flex;align-items:center;gap:.7rem;min-height:3.4rem;padding:.65rem 2.6rem .65rem .9rem;border-radius:.9rem 1.6rem 1.6rem .9rem;font-size:.9rem;line-height:1.2}
.fx-carte i{font-size:1.3rem;flex:none}
.fx-carte__coche{top:50%;right:.85rem;margin-top:-.625rem}
@media (hover:hover){.fx-carte:hover span.fx-carte__corps{transform:none}}

/* Rappel des choix (étape 3) */
.fx-rappel{display:flex;flex-wrap:wrap;gap:.45rem}
.fx-rappel:empty{display:none}
.fx-rappel__puce{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .5rem .4rem .8rem;border-radius:999px;background:color-mix(in srgb,var(--fx-accent) 12%,transparent);font-size:.84rem;font-weight:600;transition:background .35s}
.fx-rappel__puce i{color:var(--fx-accent-encre)}
.fx-rappel__mod{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--fx-surface);font-size:.8rem;transition:transform .4s cubic-bezier(.16,1,.3,1)}
@media (hover:hover){.fx-rappel__puce:hover{background:color-mix(in srgb,var(--fx-accent) 22%,transparent)}.fx-rappel__puce:hover .fx-rappel__mod{transform:rotate(-12deg)}}

.fx-boite textarea{min-height:5.5rem}
.fx-consentements{display:grid;gap:.85rem;padding-top:.3rem}
.fx-note{padding:.75rem .9rem;font-size:.8rem;align-items:center}
.fx-note i{font-size:1.15rem}

/* Actions */
.fx-actions{gap:.75rem;padding-top:.2rem}
.fx-actions [hidden]{display:none}
.fx-retour{gap:.5rem;min-height:3.25rem}
.fx-compte{margin-left:auto;font-size:.82rem;font-weight:600;color:var(--fx-doux)}
.fx-envoyer{min-width:0}
.fx.est-envoye .fx-pas{display:none}
@media (max-width:520px){.fx-compte{display:none}.fx-actions{flex-wrap:nowrap}.fx-actions .btn{flex:1;justify-content:space-between;min-width:0}.fx-actions .fx-retour{flex:0 0 3.25rem;padding:0;justify-content:center}.fx-retour__txt{display:none}}
