/*
 * LOT 10.19 — Carrousel mobile « Logiciels utilisés »
 * Périmètre strict : pages détaillées des programmes et formations logicielles.
 * La version ordinateur reste inchangée.
 */

.formation-main .formation-softwares .fb-software-carousel-dots {
  display: none;
}
@media (max-width: 767px) {
  .formation-main .formation-softwares {
    overflow: hidden !important;
  }

  .formation-main .formation-softwares .formation-logo-row {
    display: flex !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    touch-action: pan-x pan-y;
  }

  .formation-main .formation-softwares .formation-logo-row::-webkit-scrollbar {
    display: none;
  }

  .formation-main .formation-softwares .formation-logo-row > .software-public-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: clamp(190px, 52vw, 224px) !important;
    margin: 0 !important;
    scroll-snap-align: center !important;
    scroll-snap-stop: always !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
  }

  .formation-main .formation-softwares .software-public-card .software-public-media {
    position: relative !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 11px 11px 0 0 !important;
    box-sizing: border-box !important;
  }

  .formation-main .formation-softwares .software-public-card .software-public-media img,
  .formation-main .formation-softwares .software-public-card .software-public-media img.fb-contained-media {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  .formation-main .formation-softwares .software-public-title {
    flex: 0 0 42px !important;
    min-height: 42px !important;
    width: 100% !important;
    padding: 7px 10px !important;
    border-radius: 0 0 11px 11px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
  }

  .formation-main .formation-softwares .fb-software-carousel-dots {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 20px;
    margin: 14px 0 0;
  }

  .formation-main .formation-softwares .fb-software-carousel-dot {
    width: 9px;
    height: 9px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #c8d1e2;
    box-shadow: none;
    cursor: pointer;
  }

  .formation-main .formation-softwares .fb-software-carousel-dot.is-active {
    background: #082f7d;
    transform: scale(1.18);
  }
}

@media (max-width: 359px) {
  .formation-main .formation-softwares .formation-logo-row > .software-public-card {
    height: 184px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .formation-main .formation-softwares .formation-logo-row {
    scroll-behavior: auto !important;
  }
}
