/* =====================================
   FFF PROGRAM TABS – module Divi Tabs
   Appliquer la classe : fff-program-tabs
   ===================================== */

.fff-program-tabs.et_pb_tabs{
  border:1px solid #e5e7eb;
  border-radius:4px;
  background:#ffffff;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
  overflow:hidden;
}

/* Barre d’onglets */
.fff-program-tabs .et_pb_tabs_controls{
  display:flex;
  flex-wrap:wrap;
  gap:.25rem;
  margin:0;
  padding:.75rem 1.25rem .4rem;
  list-style:none;
  background:#f3f4f6;
  border-bottom:1px solid #e5e7eb;
}

/* Onglet */
.fff-program-tabs .et_pb_tabs_controls li{
  position:relative;
  padding:.5rem 1.2rem;
  margin:0;
  font-size:.93rem;
  font-weight:600;
  color:#4b5563;
  border-radius:4px 4px 0 0;
  cursor:pointer;
  transition:
    background-color .18s ease,
    color .18s ease,
    box-shadow .18s ease;
}

/* Hover (non actif) */
.fff-program-tabs .et_pb_tabs_controls li:hover{
  background:#e5e7eb;
  color:#111827;
}

/* Onglet actif */
.fff-program-tabs .et_pb_tabs_controls li.et_pb_tab_active{
  background:#ffffff;
  color:#111827;
  box-shadow:0 -2px 0 #4267b2 inset;
}

/* Zone de contenu des onglets */
.fff-program-tabs .et_pb_all_tabs{
  padding:1.3rem 1.5rem 1.4rem;
  background:#ffffff;
}

.fff-program-tabs .et_pb_tab{
  padding:0;
}

/* Titres dans le contenu */
.fff-program-tabs .et_pb_tab h2,
.fff-program-tabs .et_pb_tab h3{
  margin:0 0 .5rem;
  font-size:1.1rem;
  font-weight:600;
  color:#111827;
}

/* Texte dans le contenu */
.fff-program-tabs .et_pb_tab p{
  margin:0 0 .5rem;
  font-size:.95rem;
  line-height:1.75;
  color:#4b5563;
  text-align:justify;
}

/* Listes à l’intérieur */
.fff-program-tabs .et_pb_tab ul{
  margin:.5rem 0 .5rem 1.1rem;
  padding:0;
}
.fff-program-tabs .et_pb_tab li{
  margin:0 0 .25rem;
}

/* Liens dans le contenu */
.fff-program-tabs .et_pb_tab a{
  color:#4267b2;
  text-decoration:none;
  border-bottom:1px solid rgba(66,103,178,.25);
}
.fff-program-tabs .et_pb_tab a:hover{
  border-bottom-color:#4267b2;
}

/* ===========================
   Responsive tablette
   =========================== */
@media (max-width:980px){
  .fff-program-tabs.et_pb_tabs{
    box-shadow:0 4px 14px rgba(15,23,42,.05);
  }

  .fff-program-tabs .et_pb_tabs_controls{
    padding:.6rem .9rem .35rem;
  }

  .fff-program-tabs .et_pb_tabs_controls li{
    padding:.45rem .85rem;
    font-size:.9rem;
  }

  .fff-program-tabs .et_pb_all_tabs{
    padding:1rem 1.1rem 1.15rem;
  }
}

/* ===========================
   Responsive téléphone
   =========================== */
@media (max-width:480px){
  /* Onglets en colonne, pleine largeur */
  .fff-program-tabs .et_pb_tabs_controls{
    flex-direction:column;
    gap:.2rem;
  }

  .fff-program-tabs .et_pb_tabs_controls li{
    width:100%;
    padding:.45rem .75rem;
    font-size:.9rem;
    border-radius:4px;
    box-shadow:none;
  }

  .fff-program-tabs .et_pb_tabs_controls li.et_pb_tab_active{
    box-shadow:0 0 0 1px #4267b2 inset;
  }

  .fff-program-tabs .et_pb_all_tabs{
    padding:.9rem .85rem 1rem;
  }

  .fff-program-tabs .et_pb_tab p{
    font-size:.9rem;
  }
}

/* Réduction des animations si demandé par l’utilisateur */
@media (prefers-reduced-motion:reduce){
  .fff-program-tabs *{
    transition:none !important;
  }
}
