/* ======================================================================
   AJOUTS au front du webmaster (chargé en dernier, après mobile.css)
   1. vidéo dans le héros (ordinateur)   2. bandeau d'atouts défilant
   3. agrandissement des photos des salles
   ====================================================================== */

/* ---------- 1. vidéo dans le héros : ordinateur uniquement, la photo reste sur mobile ---------- */
.h3-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%;
  opacity:0;transition:opacity .9s ease;pointer-events:none}
.hero3.has-video .h3-video{opacity:1}
.hero3 .vid-sound{position:absolute;z-index:6;right:24px;bottom:24px;display:flex;align-items:center;gap:8px;padding:9px 15px;
  border-radius:999px;border:1px solid rgba(120,180,255,.34);background:rgba(4,7,14,.72);color:#EAF1FB;
  font:inherit;font-size:13px;font-weight:600;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hero3 .vid-sound:hover{border-color:#66BAFF}
.hero3:not(.has-video) .vid-sound{display:none}
@media (max-width:640px){.h3-video,.hero3 .vid-sound{display:none!important}}

/* ---------- 2. bandeau d'atouts : défilement continu, fond de la carte « Offre partenaire IG » ---------- */
.h3-feats{position:relative;overflow:hidden;
  background:linear-gradient(180deg,var(--gold-bg,rgba(201,164,92,.08)),rgba(201,164,92,.02)),var(--c-card2,#162031)!important;
  border-block:1px solid var(--gold-line,rgba(214,180,110,.45))!important;box-shadow:0 26px 60px -44px rgba(201,164,92,.55)}
.h3-feats::before{content:"";position:absolute;z-index:2;left:0;right:0;top:0;height:1px;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,236,190,0),#FFF6DE,rgba(255,236,190,0));box-shadow:0 0 10px 1px rgba(255,220,150,.4)}
.h3-feats::after{content:"";position:absolute;z-index:0;left:50%;top:50%;width:min(900px,80%);height:240%;transform:translate(-50%,-50%);
  pointer-events:none;background:radial-gradient(closest-side,rgba(255,210,140,.22),transparent)}
.h3-feats-in{position:relative;z-index:1;display:block!important;width:100%!important;max-width:none!important;padding:0!important;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.h3-track{display:flex;width:max-content;animation:h3feat var(--feat-dur,40s) linear infinite;will-change:transform}
.h3-list{display:flex;flex:none}
.h3-feats .h3-feat{display:flex!important;align-items:center;gap:14px;flex:none!important;width:auto!important;max-width:none!important;
  padding:20px 44px!important;border:0!important;border-right:1px solid rgba(214,180,110,.22)!important;
  opacity:1!important;transform:none!important;filter:none!important}
.h3-feats .h3-feat > div{white-space:nowrap}
@keyframes h3feat{to{transform:translate3d(-50%,0,0)}}
@media (hover:hover){.h3-feats:hover .h3-track{animation-play-state:paused}}
@media (max-width:640px){.h3-feats .h3-feat{padding:16px 28px!important}}
@media (prefers-reduced-motion:reduce){
  .h3-track{animation:none;width:auto}
  .h3-list{flex-wrap:wrap;justify-content:center}
  .h3-list.clone,.h3-feat[data-clone]{display:none!important}
}

/* ---------- 3. photos des salles : agrandissement dans une fenêtre ---------- */
.rooms5 .salle.lb-zoom{cursor:zoom-in}
.lb-hint{position:absolute;z-index:3;top:12px;right:12px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;
  background:rgba(4,7,14,.6);border:1px solid rgba(255,255,255,.22);color:#fff;pointer-events:none;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:opacity .25s,transform .25s}
.lb-hint svg{width:16px;height:16px}
@media (hover:hover){.lb-hint{opacity:0;transform:scale(.9)}.rooms5 .salle:hover .lb-hint,.rooms5 .salle:focus-visible .lb-hint{opacity:1;transform:none}}
.rooms5 .salle:focus-visible{outline:2px solid #8CCBFF;outline-offset:3px}

.lb{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden}
.lb[open]{display:flex;align-items:center;justify-content:center}
.lb::backdrop{background:rgba(4,7,14,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.lb-fig{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:min(1400px,90vw);margin:0}
.lb-fig img{display:block;max-width:100%;max-height:calc(100dvh - 160px);object-fit:contain;border-radius:14px;
  box-shadow:0 30px 80px -30px #000;animation:lbIn .25s ease}
.lb-fig figcaption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:6px 14px;text-align:center}
.lb-fig b{font-family:Lora,Georgia,serif;font-size:22px;font-weight:500}
.lb-fig span{color:#AEBBCE}
.lb-fig em{font-style:normal;font-size:13px;color:#7F8FA6}
.lb-x,.lb-nav{position:fixed;z-index:2;display:grid;place-items:center;border-radius:50%;cursor:pointer;color:#fff;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);transition:background .2s,border-color .2s}
.lb-x{top:18px;right:18px;width:46px;height:46px;font-size:26px;line-height:1}
.lb-nav{top:50%;width:52px;height:52px;transform:translateY(-50%)}
.lb-nav svg{width:22px;height:22px}
.lb-prev{left:18px}
.lb-next{right:18px}
.lb-x:hover,.lb-nav:hover{background:rgba(46,155,255,.35);border-color:rgba(140,203,255,.6)}
.lb-x:focus-visible,.lb-nav:focus-visible{outline:2px solid #8CCBFF;outline-offset:2px}
@keyframes lbIn{from{opacity:0;transform:scale(.98)}}
html.lb-open{overflow:hidden}
@media (max-width:640px){
  .lb-fig{max-width:94vw}
  .lb-fig img{max-height:calc(100dvh - 210px);border-radius:10px}
  .lb-nav{top:auto;bottom:24px;transform:none}
  .lb-prev{left:calc(50% - 66px)}
  .lb-next{right:calc(50% - 66px)}
}
@media (prefers-reduced-motion:reduce){.lb-fig img{animation:none}}

/* ---------- 4. bloc « Programme sur candidature » : séparation par un fin filet, comme « Visite » / « Réservation de poste » ---------- */
.funded .fund-r{position:relative;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.funded .fund-r::before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:1px;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,180,120,0),rgba(255,180,120,.55),rgba(255,180,120,0))}
@media (max-width:900px){
  .funded .fund-r::before{left:20px;right:20px;top:0;bottom:auto;width:auto;height:1px;
    background:linear-gradient(90deg,rgba(255,180,120,0),rgba(255,180,120,.55),rgba(255,180,120,0))}
}

/* ---------- 5. badge « Recommandé » : droit, centré, le texte tient dans le cercle ---------- */
.seal{width:78px!important;height:78px!important;top:-26px!important;transform:none!important;animation:none!important;padding-bottom:2px!important}
.seal svg{width:22px!important;height:22px!important}
.seal small{font-size:7.5px!important;letter-spacing:.05em!important;line-height:1!important;white-space:nowrap;margin-top:2px!important;
  text-indent:.05em}                               /* compense l'espace laissé après la dernière lettre */
@media (max-width:640px){.trio.m-rail .seal{transform:scale(.85)!important}}

/* ---------- 6. « Venir au centre » : Visite et Réservation de poste, présentation sobre ---------- */
.come-ways{column-gap:28px!important;row-gap:12px!important}
.come .way{position:relative;padding:4px 0 4px 20px!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
.come .way::before{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;pointer-events:none;
  background:linear-gradient(180deg,rgba(214,180,110,0),rgba(214,180,110,.6),rgba(214,180,110,0))}
.come .way b{display:block!important;margin-bottom:4px;font-size:14.5px!important;font-weight:600;color:#F4EBDD}
.come .way b::after{content:none!important}
.come .way span{display:block;font-size:13.5px!important;line-height:1.5!important;color:#BDB3A2}
@media (max-width:640px){
  .come .way{padding:2px 0 2px 14px!important}
  .come .way b{font-size:14px!important;margin-bottom:2px}
  .come .way span{font-size:13px!important}
}

/* ---------- 7. badge : la ligne « Notre courtier partenaire » ne passe plus dessous ---------- */
.trio .offer.ig .tagline{padding-right:72px}

/* ---------- 8. une journée au centre : sans pictogrammes ni trait de liaison ---------- */
.day5::before{content:none!important;display:none!important}

/* ---------- 9. fenêtre de rendez-vous : le bandeau « appeler maintenant » reprend les marges du contenu ---------- */
.rdv-direct{margin:4px 20px 16px!important}
@media (min-width:900px){.rdv-direct{margin:4px 26px 16px!important}}
@media (max-width:640px){
  .day5 li{grid-template-columns:1fr!important;column-gap:0!important}
  .day5 li > *{grid-column:1!important}
}

/* ---------- 10. une journée au centre : de l'air entre la photo et l'heure ---------- */
@media (min-width:641px){.day5 li time{display:block;margin-top:16px}}

/* ---------- 11. liens vers les pages légales ---------- */
.foot-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin-top:22px;padding-top:18px;padding-bottom:22px;
  border-top:1px solid rgba(120,180,255,.12);font-size:13px;color:#8394AB}
.foot-legal a{color:#AEBBCE;text-decoration:none}
.foot-legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.rdv-legal a{color:inherit;text-decoration:underline;text-underline-offset:2px}

/* ---------- 12. carrousels mobiles (formations, suivi) : glissement fluide ----------
   Sur téléphone, le reflet animé (« glass ») et le flou d'arrière-plan des cartes étaient recalculés à chaque image
   pendant le glissement : défilement saccadé et reflet qui bouge avec le doigt. On les fige sur mobile seulement. */
@media (max-width:640px){
  .m-rail > .offer{animation:none!important;background-position:50% 0,0 0!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important}
}

/* ---------- 13. carrousels mobiles : un geste vertical fait défiler la page, jamais le carrousel ----------
   Le contenu des carrousels dépassait de quelques pixels en hauteur : le carrousel devenait défilable verticalement,
   les cartes glissaient et se faisaient couper pendant qu'on faisait défiler la page. */
@media (max-width:640px){
  .m-rail{overflow-y:hidden!important;padding-bottom:18px!important}
}
@media (max-width:640px){.trio .offer.ig .tagline{padding-right:60px}}

/* ---------- 14. inscription à une formation (paiement en ligne) ---------- */
dialog.rdv.insc{width:min(600px,100% - 32px)!important}
.insc-body{display:grid;gap:14px;padding:6px 26px 24px}
.insc-offers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.insc-offer{position:relative;cursor:pointer}
.insc-offer input,.insc-mods input{position:absolute;opacity:0;pointer-events:none}
.insc-offer span{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:12px;border:1px solid var(--line,rgba(120,180,255,.17));
  background:rgba(255,255,255,.03);transition:border-color .2s,background .2s,box-shadow .2s}
.insc-offer b{font-size:14.5px;font-weight:600;color:var(--ink,#F3F7FD)}
.insc-offer em{font-style:normal;font-size:17px;font-weight:700;color:#8CCBFF;font-variant-numeric:tabular-nums}
.insc-offer input:checked + span{border-color:#66BAFF;background:rgba(46,155,255,.14);box-shadow:inset 0 0 0 1px #66BAFF}
.insc-offer input:focus-visible + span,.insc-mods input:focus-visible + span{outline:2px solid #8CCBFF;outline-offset:2px}
.insc-mods{display:inline-flex;gap:6px;padding:4px;border-radius:12px;border:1px solid var(--line,rgba(120,180,255,.17));background:rgba(255,255,255,.03);width:max-content;max-width:100%}
.insc-mods label{position:relative;cursor:pointer}
.insc-mods span{display:block;padding:8px 16px;border-radius:9px;font-size:14px;font-weight:600;color:#AEBBCE;transition:background .2s,color .2s}
.insc-mods input:checked + span{background:rgba(46,155,255,.2);color:#fff}
.insc-cgv{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.5;color:#C3CEDD;cursor:pointer}
.insc-cgv input{flex:none;width:18px;height:18px;margin-top:1px;accent-color:#2E9BFF}
.insc-cgv a{color:#8CCBFF}
#insc-website{position:absolute;left:-9999px;width:1px}
.insc-pay{width:100%;justify-content:center;gap:.32em;padding:15px 20px;font-size:16px}
.insc-pay span{font-variant-numeric:tabular-nums}
.insc-secure{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:12.5px;line-height:1.5;color:#8394AB}
.insc-secure svg{flex:none;width:15px;height:15px;margin-top:1px;color:#66BAFF}
.insc-note{position:fixed;z-index:60;left:50%;bottom:24px;transform:translateX(-50%);max-width:min(560px,calc(100% - 32px));padding:14px 18px;border-radius:12px;
  background:rgba(11,19,34,.95);border:1px solid rgba(120,180,255,.3);color:#E2EBF7;font-size:14px;box-shadow:0 20px 50px -20px #000;transition:opacity .4s,transform .4s}
.insc-note.out{opacity:0;transform:translate(-50%,10px);pointer-events:none}
@media (max-width:640px){
  .insc-body{padding:4px 18px 20px}
  .insc-offers{grid-template-columns:1fr}
  .insc-offer span{flex-direction:row;align-items:baseline;justify-content:space-between}
  .insc-mods{width:100%}.insc-mods label{flex:1}.insc-mods span{text-align:center}
}
/* inscription gratuite (Offre partenaire IG) : carte récapitulative et confirmation dans la fenêtre */
.insc-free-card{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;
  border:1px solid rgba(214,180,110,.45);background:linear-gradient(180deg,rgba(214,180,110,.14),rgba(214,180,110,.04))}
.insc-free-card b{font-size:15.5px;font-weight:600;color:#F4EBDD}
.insc-free-card em{font-style:normal;font-size:18px;font-weight:700;color:#E6CC93}
.insc-done{display:grid;justify-items:center;gap:10px;padding:18px 26px 28px;text-align:center}
.insc-done[hidden],.insc-body[hidden]{display:none!important}
.insc-done-ring{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(46,155,255,.12);border:1px solid rgba(126,198,255,.4)}
.insc-done-ring svg{width:36px;height:36px;fill:none;stroke:#66BAFF;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.insc-done h3{margin:6px 0 0;font-size:22px;color:#F3F7FD}
.insc-done p{margin:0;max-width:44ch;font-size:15px;line-height:1.6;color:#C3CEDD}
.insc-done-act{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}
.insc-free-card.is-sub{border-color:rgba(102,186,255,.45);background:linear-gradient(180deg,rgba(46,155,255,.16),rgba(46,155,255,.04))}
.insc-free-card.is-sub em{color:#8CCBFF}
[data-show][hidden]{display:none!important}

/* ---------- 15. trois formations : bouton principal avec effet glass ----------
   reflet brillant sur la moitié haute (surface vitrée) + éclat de lumière qui traverse le bouton, décalé d'une carte à l'autre */
#se-former .offer .btn-gold{position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(180deg,rgba(100,182,255,.66) 0%,rgba(46,140,240,.56) 50%,rgba(28,98,200,.64) 100%);
  -webkit-backdrop-filter:blur(10px) saturate(1.6);backdrop-filter:blur(10px) saturate(1.6);
  border:1px solid rgba(190,226,255,.85);color:#fff;font-weight:700;text-shadow:0 1px 2px rgba(0,20,60,.35);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 0 18px rgba(140,200,255,.25),0 0 0 3px rgba(46,155,255,.16),0 10px 28px -10px rgba(46,155,255,.95)}
#se-former .offer .btn-gold::before{content:"";position:absolute;z-index:-1;left:1px;right:1px;top:1px;height:48%;pointer-events:none;
  border-radius:inherit;border-bottom-left-radius:50% 18%;border-bottom-right-radius:50% 18%;
  background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,.03))}
#se-former .offer .btn-gold::after{content:"";position:absolute;top:-40%;bottom:-40%;left:0;width:36%;pointer-events:none;
  background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,0) 18%,rgba(255,255,255,.45) 50%,rgba(255,255,255,0) 82%,transparent 100%);
  transform:translateX(-170%) skewX(-16deg)}
#se-former .offer .btn-gold:hover{background:linear-gradient(180deg,rgba(110,190,255,.78) 0%,rgba(46,140,240,.68) 50%,rgba(28,98,200,.76) 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),inset 0 0 22px rgba(140,200,255,.3),0 0 0 4px rgba(46,155,255,.22),0 14px 34px -10px rgba(46,155,255,1)}
@media (prefers-reduced-motion:no-preference){
  #se-former .offer .btn-gold::after{animation:btnglass 5s cubic-bezier(.45,.05,.25,1) infinite}
  #se-former .offer:nth-child(2) .btn-gold::after{animation-delay:-1.7s}
  #se-former .offer:nth-child(3) .btn-gold::after{animation-delay:-3.4s}
  #se-former .offer .btn-gold:hover::after{animation-duration:1.4s}
}
@keyframes btnglass{0%,58%{transform:translateX(-170%) skewX(-16deg)}100%{transform:translateX(380%) skewX(-16deg)}}

/* ---------- 16. fenêtres (rendez-vous, inscription) : toujours fixées à l'écran ----------
   La règle « body > * { position:relative } » annulait la position fixe des fenêtres ouvertes :
   elles se plaçaient en haut du document et la page remontait tout en haut à l'ouverture. */
dialog.rdv[open]{position:fixed!important;inset:0!important;margin:auto!important}

/* ---------- 17. mobile : sans bouton SOS ---------- */
@media (max-width:640px){.sos{display:none!important}}

/* ---------- 18. mobile : barre d'appel flottante en verre ---------- */
@media (max-width:900px){
  .sticky-cta{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));padding:8px;gap:8px;border-radius:20px;
    background:rgba(13,21,37,.72);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);
    border:1px solid rgba(120,180,255,.24);border-top-color:rgba(170,215,255,.34);
    box-shadow:0 20px 44px -18px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.06);
    transform:translateY(calc(100% + 30px));opacity:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .3s ease}
  .sticky-cta.on{transform:none;opacity:1}
  .sticky-cta .btn-gold{position:relative;overflow:hidden;isolation:isolate;gap:9px;min-height:50px;border-radius:14px;font-weight:700;color:#fff;
    background:linear-gradient(180deg,rgba(100,182,255,.66) 0%,rgba(46,140,240,.56) 50%,rgba(28,98,200,.64) 100%);
    border:1px solid rgba(190,226,255,.85);text-shadow:0 1px 2px rgba(0,20,60,.35);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 0 18px rgba(140,200,255,.25),0 8px 22px -10px rgba(46,155,255,.95)}
  .sticky-cta .btn-gold::before{content:"";flex:none;width:18px;height:18px;background:currentColor;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='3' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='5' width='17' height='15' rx='3' fill='none' stroke='black' stroke-width='1.9'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4' stroke='black' stroke-width='1.9' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center/contain}
  .sticky-cta .btn-gold::after{content:"";position:absolute;top:-40%;bottom:-40%;left:0;width:34%;pointer-events:none;
    background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,0) 18%,rgba(255,255,255,.4) 50%,rgba(255,255,255,0) 82%,transparent 100%);
    transform:translateX(-170%) skewX(-16deg)}
  .sticky-cta .sticky-call{width:50px;height:50px;border-radius:14px;color:#E6CC93;
    background:linear-gradient(180deg,rgba(214,180,110,.22),rgba(214,180,110,.06));border:1px solid rgba(214,180,110,.5)}
  .sticky-cta .sticky-call svg{width:21px;height:21px}
  body.has-sticky footer{padding-bottom:100px}
}
@media (max-width:900px) and (prefers-reduced-motion:no-preference){
  .sticky-cta.on .btn-gold::after{animation:btnglass 5.5s cubic-bezier(.45,.05,.25,1) 1s infinite}
}

/* ---------- 19. réseaux sociaux : pictogrammes dans l'en-tête et le pied de page ---------- */
.soc{display:flex;align-items:center;gap:8px}
.soc a{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#C9D6E8;border:1px solid rgba(120,180,255,.22);
  background:rgba(255,255,255,.03);transition:color .2s,border-color .2s,background .2s,transform .2s}
.soc a:hover{color:#fff;border-color:#66BAFF;background:rgba(46,155,255,.16);transform:translateY(-1px)}
.soc a:focus-visible{outline:2px solid #8CCBFF;outline-offset:2px}
.soc svg{width:16px;height:16px}
.soc-nav{margin:0 4px 0 8px}
@media (max-width:1359px){.soc-nav{display:none}}
.soc-foot{margin-top:16px}
.soc-foot a{width:40px;height:40px}
.soc-foot svg{width:18px;height:18px}

/* ---------- 20. étape 2 : Discord Pro, sur le modèle du bloc de l'étape 3, en bleu ---------- */
.fund-bronze{position:relative;overflow:hidden;border-radius:22px;border:1px solid rgba(102,186,255,.38);
  background:radial-gradient(70% 90% at 15% 20%,rgba(46,155,255,.20),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015)),var(--c-card2,#121b2c);
  box-shadow:0 30px 70px -45px rgba(46,155,255,.6)}
.fund-bronze::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#CFE8FF,transparent);z-index:2}
.fund-bronze .fund-l .tagline{color:#8CCBFF}
.fund-price{display:flex;align-items:baseline;gap:6px;margin:4px 0 12px}
.fund-price b{font-size:clamp(30px,3vw,40px);font-weight:700;letter-spacing:-.02em;color:#fff}
.fund-price span{font-size:15px;color:#AEBBCE}
.fund-bronze .fund-r{position:relative;border:0!important;background:transparent!important}
.fund-bronze .fund-r::before{content:"";position:absolute;left:0;top:28px;bottom:28px;width:1px;pointer-events:none;
  background:linear-gradient(180deg,rgba(102,186,255,0),rgba(102,186,255,.55),rgba(102,186,255,0))}
.fund-bronze .fund-step .n{display:grid;place-items:center;color:#66BAFF;border-color:rgba(102,186,255,.5);background:rgba(46,155,255,.12)}
.fund-bronze .fund-step .n svg{width:13px;height:13px}
.fund-ig{margin-top:16px;padding:12px 14px;border-radius:12px;border:1px solid rgba(214,180,110,.4);
  background:linear-gradient(180deg,rgba(214,180,110,.12),rgba(214,180,110,.03))}
.fund-ig-k{display:block;margin-bottom:4px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#E6CC93}
.fund-ig p{margin:0;font-size:14px;line-height:1.55;color:#D9CDB4}
@media (max-width:900px){
  .fund-bronze .fund-r::before{left:20px;right:20px;top:0;bottom:auto;width:auto;height:1px;
    background:linear-gradient(90deg,rgba(102,186,255,0),rgba(102,186,255,.55),rgba(102,186,255,0))}
}

/* ---------- 21. formations : prix « À partir de » ---------- */
.bigprice .from{display:block;margin-bottom:2px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8394AB}

/* ---------- 22. étape 3 : texte centré sur une image de fond ---------- */
.funded{isolation:isolate;background:#0B0E16 url(../media/initial-3.jpg) center/cover no-repeat!important}
.funded::before{z-index:-1!important;animation:none!important;
  background:linear-gradient(180deg,rgba(9,12,20,.9) 0%,rgba(9,12,20,.76) 45%,rgba(9,12,20,.92) 100%),radial-gradient(60% 70% at 50% 25%,rgba(232,119,46,.24),transparent 70%)!important}
.funded .sec-head{display:flex!important;justify-content:center;text-align:center}
.funded .sec-head > div{display:flex;flex-direction:column;align-items:center}
.funded .sec-head h2{margin-left:auto;margin-right:auto}
.funded h2::after{margin-left:auto!important;margin-right:auto!important}

/* ---------- 23. fenêtre d'inscription : pack et option Discord Pro ---------- */
.insc-offers{grid-template-columns:repeat(2,minmax(0,1fr))}
.insc-offer.is-pack span{border-color:rgba(214,180,110,.45);background:linear-gradient(180deg,rgba(214,180,110,.1),rgba(214,180,110,.02))}
.insc-offer.is-pack input:checked + span{border-color:#E6CC93;box-shadow:inset 0 0 0 1px #E6CC93;background:rgba(214,180,110,.14)}
.insc-offer.is-pack em{color:#E6CC93}
.insc-offer em s{margin-right:4px;font-size:13px;font-weight:500;color:#7F8FA6}
.insc-badge{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:999px;font-style:normal;font-size:11px;font-weight:700;color:#1A1306;background:linear-gradient(180deg,#EBD3A0,#C9A864);vertical-align:1px}
.insc-opt{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;cursor:pointer;
  border:1px solid rgba(102,186,255,.3);background:rgba(46,155,255,.06);transition:border-color .2s,background .2s}
.insc-opt:has(input:checked){border-color:#66BAFF;background:rgba(46,155,255,.13)}
.insc-opt input{position:absolute;opacity:0;pointer-events:none}
.insc-opt-box{flex:none;display:grid;place-items:center;width:20px;height:20px;margin-top:1px;border-radius:6px;border:1.5px solid rgba(140,200,255,.7)}
.insc-opt input:checked + .insc-opt-box{background:#2E9BFF;border-color:#2E9BFF}
.insc-opt input:checked + .insc-opt-box::after{content:"";width:10px;height:5px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
.insc-opt input:focus-visible + .insc-opt-box{outline:2px solid #8CCBFF;outline-offset:2px}
.insc-opt-txt b{display:block;font-size:14.5px;color:#F3F7FD}
.insc-opt-txt small{display:block;margin-top:2px;font-size:13px;line-height:1.45;color:#AEBBCE}
@media (max-width:640px){.insc-offers{grid-template-columns:1fr}}

/* ---------- 24. étape 3 en doré ---------- */
.funded{--em:#D6B46E;--em-bright:#F1DCA8;--em-deep:#A9853F;--em-line:rgba(214,180,110,.38);--em-bg:#120E07;
  border-block:1px solid rgba(214,180,110,.38)!important}
.funded::before{background:linear-gradient(180deg,rgba(9,12,20,.9) 0%,rgba(9,12,20,.76) 45%,rgba(9,12,20,.92) 100%),radial-gradient(60% 70% at 50% 25%,rgba(214,180,110,.24),transparent 70%)!important}
.funded .accent{color:#E6CC93!important}
.funded .btn-orange{background:linear-gradient(180deg,#EBD3A0,#C9A864)!important;color:#1A1306!important;border-color:rgba(240,215,160,.6)!important;box-shadow:0 10px 26px -10px rgba(214,180,110,.65)!important}
.funded .btn-orange:hover{background:linear-gradient(180deg,#F3E0B6,#D6B46E)!important}
.funded .fund{border-color:rgba(214,180,110,.42)!important;box-shadow:0 30px 70px -45px rgba(214,180,110,.55)!important}
.funded .fund-step .n{color:#E6CC93!important;border-color:rgba(214,180,110,.5)!important;background:rgba(214,180,110,.12)!important}
.funded .fund-r::before{background:linear-gradient(180deg,rgba(214,180,110,0),rgba(214,180,110,.6),rgba(214,180,110,0))!important}
@media (max-width:900px){.funded .fund-r::before{background:linear-gradient(90deg,rgba(214,180,110,0),rgba(214,180,110,.6),rgba(214,180,110,0))!important}}

/* ---------- parcours : 1 bleu, 2 bronze, 3 doré ---------- */
.path3::before{background:linear-gradient(90deg,#3E8FE6,#C98A4B 50%,#D6B46E)!important;background-size:200% 100%}
.path3 li:nth-child(2) .n{background:linear-gradient(160deg,#E3A970,#9C5A26)!important;color:#fff!important}
.path3 li.p-fund .n{background:linear-gradient(160deg,#F1DCA8,#B48A3E)!important;color:#1A1306!important}

/* ---------- 25. étape 2 en bronze, zone délimitée sur toute la largeur comme l'étape 3 ---------- */
#accompagnements{overflow-x:clip}
#accompagne{position:relative;isolation:isolate;margin:72px 0;padding:64px 0}
#accompagne::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(800px 420px at 85% 0%,rgba(205,127,50,.20),transparent 65%),radial-gradient(600px 380px at 0% 100%,rgba(205,127,50,.10),transparent 70%),linear-gradient(180deg,#150E09,#0E0A07);
  border-block:1px solid rgba(205,127,50,.38)}
#accompagne .step-head .k{color:#E0A86F}
#accompagne .step-head{border-color:rgba(205,127,50,.25)}
.fund-bronze{border-color:rgba(205,127,50,.48);
  background:radial-gradient(70% 90% at 15% 20%,rgba(205,127,50,.20),transparent 60%),linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015)),#17100B;
  box-shadow:0 30px 70px -45px rgba(205,127,50,.6)}
.fund-bronze::before{background:linear-gradient(90deg,transparent,#F2C9A0,transparent)}
.fund-bronze .fund-l .tagline{color:#E0A86F}
.fund-bronze .fund-step .n{color:#E3A970;border-color:rgba(205,127,50,.55);background:rgba(205,127,50,.14)}
.fund-bronze .fund-r::before{background:linear-gradient(180deg,rgba(205,127,50,0),rgba(205,127,50,.6),rgba(205,127,50,0))}
.fund-bronze .btn-gold{background:linear-gradient(180deg,#E8B07A,#B06A2E)!important;color:#1C0F05!important;border:1px solid rgba(245,200,155,.6)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 10px 26px -10px rgba(205,127,50,.7)!important}
.fund-bronze .btn-gold:hover{background:linear-gradient(180deg,#F0C08F,#C07838)!important}
@media (max-width:900px){.fund-bronze .fund-r::before{background:linear-gradient(90deg,rgba(205,127,50,0),rgba(205,127,50,.6),rgba(205,127,50,0))}}
@media (max-width:640px){#accompagne{margin:48px 0;padding:44px 0}}
/* encadré « Venir en salle » assorti à la zone bronze ; espace resserré avant l'étape 3 */
#accompagne .access{border-color:rgba(205,127,50,.32)!important;background:rgba(205,127,50,.06)!important}
#accompagne .access .ico{color:#E0A86F!important;border-color:rgba(205,127,50,.4)!important;background:rgba(205,127,50,.1)!important}
#accompagne .access a{color:#E8B07A!important}
#accompagne{margin-bottom:24px}

/* ---------- 26. étape 2 épurée : zone délimitée conservée, effets retirés ---------- */
#accompagne{padding:56px 0}
#accompagne::before{background:#120D09!important;border-block:1px solid rgba(205,127,50,.3)!important}
.fund-bronze{background:rgba(255,255,255,.015)!important;border-color:rgba(205,127,50,.3)!important;box-shadow:none!important}
.fund-bronze::before{display:none}
.fund-bronze .fund-r::before{opacity:.6}
.fund-bronze .fund-step{align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid rgba(205,127,50,.14)}
.fund-bronze .fund-step:nth-last-child(2){border-bottom:0}
.fund-bronze .fund-step .n{width:auto!important;height:auto!important;border:0!important;background:none!important;color:#D99A5B!important}
.fund-bronze .fund-step .n svg{width:15px;height:15px}
.fund-bronze .fund-step b{font-weight:500;color:#E9DFD4}
.fund-bronze .fund-ig{margin-top:6px;padding:14px 0 0;border:0;border-top:1px solid rgba(205,127,50,.18);border-radius:0;background:none}
.fund-bronze .fund-ig-k{color:#D99A5B}
.fund-bronze .fund-ig p{font-size:13.5px;color:#B5A797}
.fund-bronze .btn-gold{background:#B06C36!important;border:1px solid transparent!important;box-shadow:none!important;color:#fff!important}
.fund-bronze .btn-gold:hover{background:#C07A42!important}
#accompagne .access{margin-top:18px;padding:0!important;border:0!important;background:none!important}
#accompagne .access .ico{display:none!important}
#accompagne .access,#accompagne .access *{font-size:13.5px}
/* étape 2 : fond éclairci (teinte bronze chaude), bloc et textes plus lisibles */
#accompagne::before{background:linear-gradient(180deg,#36281D 0%,#2C2118 100%)!important;border-block:1px solid rgba(205,127,50,.42)!important}
.fund-bronze{background:rgba(255,236,215,.06)!important;border-color:rgba(205,127,50,.42)!important}
.fund-bronze .fund-l p{color:#D6CABE}
.fund-bronze .fund-step{border-bottom-color:rgba(205,127,50,.2)}
.fund-bronze .fund-step b{color:#F3EAE0}
.fund-bronze .fund-ig p{color:#CDBFB0}
#accompagne .access{color:#CDBFB0}
#accompagne .step-head h3{color:#F6EEE6}

/* ---------- 27. étape 2 : effet glace (comme les cartes de formation), teinte bronze ; collée à l'étape 3 ---------- */
#accompagne{margin-bottom:0!important}
#accompagnements{padding-bottom:0!important}
#accompagne::before{
  background:linear-gradient(180deg,rgba(255,226,196,.07) 0%,rgba(230,180,130,.03) 45%,rgba(20,14,10,.18) 100%),var(--c-bg,#0B1322)!important;
  border-top:1px solid rgba(255,214,175,.28)!important;border-bottom:0!important}
#accompagne::after{content:"";position:absolute;z-index:-1;top:0;left:50%;width:100vw;height:1px;transform:translateX(-50%);pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,230,205,.65),transparent)}
.fund-bronze{
  background:linear-gradient(118deg,rgba(255,255,255,0) 18%,rgba(255,255,255,.07) 23%,rgba(255,255,255,0) 30%),
             linear-gradient(180deg,rgba(255,228,200,.15) 0%,rgba(235,185,140,.06) 35%,rgba(40,24,14,.24) 100%)!important;
  background-size:260% 100%,100% 100%!important;animation:glass 9s ease-in-out infinite;
  -webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);
  border:1px solid rgba(255,222,190,.32)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),inset 1px 0 0 rgba(255,255,255,.16),inset -1px 0 0 rgba(255,255,255,.09),
             inset 0 -30px 50px -40px rgba(230,160,100,.3),0 40px 60px -40px rgba(0,0,0,.9)!important}
.fund-bronze::before{display:block;content:"";position:absolute;left:12%;right:12%;top:0;height:1px;z-index:2;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,0),#fff,rgba(255,255,255,0))}
.fund-bronze::after{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:70%;height:120%;transform:translate(-50%,-50%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(230,165,105,.28),rgba(0,0,0,0));filter:blur(10px)}
.fund-bronze .fund-l p{color:#D9D2CB}
.fund-bronze .fund-step b{color:#F2ECE6}
.fund-bronze .fund-ig p,#accompagne .access{color:#C9C0B6}
@media (max-width:640px){.fund-bronze{animation:none}}
@media (prefers-reduced-motion:reduce){.fund-bronze{animation:none}}
