/* ════════════════════════════════════════════════════════════════════
   formations.css — page /formations (à charger après pages.css)
   ════════════════════════════════════════════════════════════════════ */

.fm-intro{padding:2rem var(--pg-pad) 5rem}
.fm-intro-in{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:3rem 6rem;align-items:start;padding-top:3rem;border-top:1px solid rgba(126,202,195,.14)}
.fm-quote{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(1.7rem,3.2vw,3rem);line-height:1.18;letter-spacing:-.015em;color:#fff;max-width:24ch}
.fm-notes{display:flex;flex-direction:column;gap:1.1rem;max-width:46ch}
.fm-notes p{font-size:1rem;font-weight:300;line-height:1.75;color:var(--gray-soft)}
.fm-notes strong{font-weight:500;color:#fff}
.fm-btn{align-self:flex-start;margin-top:.8rem;display:inline-block;background:var(--teal);color:var(--marine-deep);padding:1.1rem 2.2rem;font-family:'DM Mono',monospace;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;font-weight:500;transition:background .25s,transform .25s}
.fm-btn:hover{background:#fff;transform:translateY(-2px)}

/* LISTE DES FORMATIONS : titres typographiques, filets fins, niveau en 4 segments */
.fm-list{padding:0 var(--pg-pad) 6rem}
.fm-list-in{max-width:1600px;margin:0 auto;list-style:none;border-bottom:1px solid rgba(126,202,195,.14)}
.fm-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:1.6rem 5rem;padding:2.6rem 0;border-top:1px solid rgba(126,202,195,.14);transition:background .35s}
.fm-ttl{font-family:'Playfair Display',serif;font-weight:900;font-size:clamp(2rem,4.4vw,3.8rem);line-height:1;letter-spacing:-.025em;color:#fff;transition:transform .45s cubic-bezier(.2,.7,.2,1),color .3s}
.fm-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;margin-top:1.1rem;font-family:'DM Mono',monospace;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.fm-sep{color:var(--gray-mid)}
.fm-lvl{display:inline-flex;gap:3px;margin-right:.35rem}
.fm-lvl i{display:block;width:18px;height:3px;background:rgba(126,202,195,.22)}
.fm-lvl i.on{background:var(--gold)}
.fm-desc{font-size:1.02rem;font-weight:300;line-height:1.75;color:var(--gray-soft);max-width:56ch}
.fm-tags{margin-top:1.1rem;font-size:.84rem;color:var(--gray-mid);letter-spacing:.02em;line-height:1.8}
@media(hover:hover){
  .fm-row:hover{background:linear-gradient(90deg,rgba(126,202,195,.05),transparent 70%)}
  .fm-row:hover .fm-ttl{transform:translateX(10px)}
}

/* AVIS : un avis en grand, deux plus discrets */
.fm-avis{padding:0 var(--pg-pad) 6rem}
.fm-avis-in{max-width:1600px;margin:0 auto;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;gap:3rem 6rem}
.fm-rev p{font-weight:300;line-height:1.7;color:var(--gray-soft);font-size:1.02rem}
.fm-rev footer{margin-top:1rem;font-family:'DM Mono',monospace;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.fm-rev footer span{color:var(--gray-mid)}
.fm-rev--lead{grid-row:1 / span 2}
.fm-rev--lead p{font-family:'Playfair Display',serif;font-weight:700;font-size:clamp(1.4rem,2.5vw,2.2rem);line-height:1.3;letter-spacing:-.01em;color:#fff}
.fm-rev:not(.fm-rev--lead){padding-top:1.6rem;border-top:1px solid rgba(126,202,195,.14)}

/* Bloc d'appel : phrase plus longue que sur les galeries */
.pg-cta-big--wide{max-width:26ch;font-size:clamp(1.9rem,3.8vw,3.3rem);line-height:1.1}

@media(max-width:900px){
  .fm-intro-in,.fm-row,.fm-avis-in{grid-template-columns:1fr}
  .fm-intro{padding-bottom:3rem}
  .fm-list,.fm-avis{padding-bottom:4rem}
  .fm-row{padding:2rem 0;gap:1.1rem}
  .fm-avis-in{gap:2.2rem}
  .fm-rev--lead{grid-row:auto}
}
@media(prefers-reduced-motion:reduce){.fm-row,.fm-ttl{transition:none}.fm-row:hover .fm-ttl{transform:none}}
