/* FOSIA Academy : corrections de mise en page au-dessus de Divi 5 et de Tutor LMS. */

/* En-tête : le logo (60 px) dépassait de sa rangée (50 px, overflow caché) et était coupé au défilement.
   La rangée prend maintenant la hauteur du logo, en haut de page comme une fois collée en haut de l'écran. */
.et-l--header .et_pb_row_1_tb_header { overflow: visible; align-items: center; min-height: 64px; padding-top: 8px !important; padding-bottom: 8px !important; }
.et-l--header .et_pb_row_1_tb_header > .et_pb_column { align-self: center; display: flex; align-items: center; }
.et-l--header .et_pb_image_0_tb_header { margin: 0 !important; }
.et-l--header .et_pb_image_0_tb_header img { height: 44px; width: auto; max-width: none; object-fit: contain; display: block; }
.et-l--header .et_pb_sticky .et_pb_row_1_tb_header { background-color: #fff !important; box-shadow: 0 6px 24px rgba(20, 20, 60, .12); }

/* Bouton de la barre du haut : une seule ligne, taille normale. */
.et-l--header .et_pb_button_0_tb_header { font-size: 16px !important; line-height: 1.2 !important; padding: 12px 22px !important; white-space: nowrap; }

/* Menu : même couleur pour tous les liens, la page en cours en bleu FOSIA. */
.et-l--header .et-menu > li > a { color: #141414 !important; }
.et-l--header .et-menu > li.current-menu-item > a,
.et-l--header .et-menu > li > a:hover { color: #233dff !important; }

/* Cartes de cours : prix au-dessus, bouton sur toute la largeur. */
.tutor-course-card { display: flex; flex-direction: column; height: 100%; }
.tutor-course-card .tutor-card-body { flex: 1; }
.tutor-course-card .tutor-card-footer > div { flex-direction: column; align-items: stretch !important; gap: 10px; }
.tutor-course-card .list-item-price { font-size: 17px; flex-wrap: wrap; gap: 4px 8px; }
.tutor-course-card .list-item-price del { font-size: 14px; opacity: .65; }
.tutor-course-card .tutor-card-footer .tutor-btn { width: 100%; justify-content: center; white-space: nowrap; min-height: 44px; }
.tutor-course-card .tutor-course-name a { color: #141414; }

/* Pas d'étoiles vides ni de « 0 inscrit » : on n'affiche que ce qui existe (classe posée par academy.js). */
.tutor-course-ratings.fa-empty, .tutor-meta > div.fa-empty { display: none !important; }

/* Page d'un cours : l'image du modèle de certificat venait de l'ancien site et n'existe plus ; on garde le texte seul. */
#tutor-certificate-showcase .tutor-cs-wrapper { display: none; }
#tutor-certificate-showcase { display: block; padding: 24px 28px; border: 1px solid #e4e7f5; border-radius: 8px; background: #f6f7ff; }

/* Téléphone et tablette : le bouton du menu (☰) à droite, en face du logo. */
@media (max-width: 980px) {
  .et-l--header .et_pb_row_1_tb_header { justify-content: space-between; }
  .et-l--header .et_pb_menu .et_pb_menu__wrap { justify-content: flex-end; }
  .et-l--header .et_pb_menu .et_mobile_nav_menu { margin-left: auto; }
  /* La 3e colonne (drapeaux de langue sur fosiarw.com) est vide ici : la colonne du menu prend sa place. */
  .et-l--header .et_pb_column_5_tb_header:empty, .et-l--header .et_pb_column_5_tb_header { display: none !important; }
  .et-l--header .et_pb_column_4_tb_header { flex: 1 1 auto; justify-content: flex-end; }
}

/* ---------- Parcours étudiant : questionnaire et plan ---------- */
.fa-parcours { max-width: 760px; margin: 40px auto 60px; padding: 0 20px; color: #141414; font-family: Georgia, serif; }
.fa-dashboard-parcours .fa-parcours { margin: 0; padding: 0; max-width: none; }
.fa-parcours h2 { font-size: 30px; line-height: 1.2; margin: 6px 0 14px; }
.fa-kicker { text-transform: uppercase; letter-spacing: .12em; font-size: 13px; font-weight: 700; color: #233dff; margin: 0; }
.fa-lead { font-size: 18px; }
.fa-small { font-size: 14px; color: #555b70; }
.fa-note { padding: 12px 16px; border-radius: 8px; background: #eef1ff; border: 1px solid #c9d0ff; }
.fa-note-warn { background: #fff4e5; border-color: #ffd59a; }
.fa-form fieldset { border: 0; padding: 0; margin: 26px 0 0; }
.fa-form legend { font-weight: 700; font-size: 18px; margin-bottom: 10px; }
.fa-options { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px; }
.fa-option { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border: 1.5px solid #dfe3f3; border-radius: 10px; cursor: pointer; background: #fff; transition: border-color .15s, background .15s; }
.fa-option:hover { border-color: #233dff; }
.fa-option:has(input:checked) { border-color: #233dff; background: #f2f4ff; }
.fa-option input { accent-color: #233dff; margin: 0; }
.fa-other { margin: 12px 0 0; }
.fa-other label { display: block; font-size: 14px; color: #555b70; margin-bottom: 6px; }
.fa-form input[type=text], .fa-form input[type=tel], .fa-form textarea { width: 100%; padding: 12px 14px; border: 1.5px solid #dfe3f3; border-radius: 10px; font: inherit; font-size: 16px; background: #fff; }
.fa-form input:focus, .fa-form textarea:focus { outline: 2px solid #233dff; outline-offset: 1px; border-color: #233dff; }
.fa-check { display: flex; gap: 10px; align-items: flex-start; margin-top: 10px; font-size: 15px; }
.fa-check input { margin-top: 4px; accent-color: #233dff; }
.fa-actions { margin: 22px 0 6px; display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.fa-btn { display: inline-block; background: #0000ff; color: #fff !important; font-weight: 700; padding: 13px 26px; border-radius: 5px; border: 0; font-size: 16px; cursor: pointer; text-decoration: none; }
.fa-btn:hover { background: #233dff; }
.fa-link { color: #233dff; text-decoration: underline; }
.fa-erase { color: #9b1c1c; }
.fa-project { margin: 26px 0; padding: 20px 22px; border-radius: 10px; background: #f6f7ff; border-left: 4px solid #233dff; }
.fa-project p { margin: 6px 0 0; }
.fa-steps { list-style: none; margin: 10px 0 20px; padding: 0; counter-reset: none; }
.fa-step { padding: 18px 20px; border: 1px solid #e4e7f5; border-radius: 10px; margin-bottom: 12px; background: #fff; }
.fa-step.is-next { border: 2px solid #233dff; box-shadow: 0 10px 30px rgba(35, 61, 255, .10); }
.fa-step.is-done { opacity: .7; }
.fa-step-head { display: flex; gap: 14px; align-items: flex-start; }
.fa-step-num { flex: 0 0 34px; height: 34px; border-radius: 50%; background: #eef1ff; color: #233dff; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.fa-step.is-next .fa-step-num { background: #233dff; color: #fff; }
.fa-step.is-done .fa-step-num { background: #e6f6ec; color: #17803d; }
.fa-step-title { font-weight: 700; font-size: 18px; color: #141414; text-decoration: none; }
.fa-step-title:hover { color: #233dff; }
.fa-step-meta { margin: 4px 0 0; font-size: 14px; color: #555b70; }
.fa-bar { height: 6px; border-radius: 3px; background: #eef1ff; margin: 14px 0 0 48px; overflow: hidden; }
.fa-bar span { display: block; height: 100%; background: #233dff; }
.fa-step .fa-actions { margin: 14px 0 0 48px; }
@media (max-width: 600px) {
  .fa-parcours h2 { font-size: 24px; }
  .fa-bar, .fa-step .fa-actions { margin-left: 0; }
}

/* ---------- Missions (sous la dernière leçon d'une section) ---------- */
.fa-mission { margin: 36px 0 8px; padding: 22px 24px; border-radius: 12px; border: 2px solid #233dff; background: #f6f7ff; font-family: Georgia, serif; color: #141414; }
.fa-mission.is-done { border-color: #17803d; background: #f1faf4; }
.fa-mission-text { font-size: 18px; line-height: 1.5; margin: 8px 0 14px; }
.fa-mission-done { color: #17803d; font-weight: 700; margin: 0 0 8px; }
.fa-mission-answer { margin: 0 0 8px; padding: 10px 14px; background: #fff; border-left: 3px solid #17803d; border-radius: 6px; }
.fa-field-label { display: block; font-size: 14px; color: #555b70; margin: 10px 0 6px; }
.fa-mission-form textarea, .fa-mission-form input[type=url] { width: 100%; padding: 12px 14px; border: 1.5px solid #dfe3f3; border-radius: 10px; font: inherit; font-size: 16px; background: #fff; }
.fa-btn-plain { background: none; border: 0; padding: 0; cursor: pointer; font: inherit; }
.fa-parcours *, .fa-mission * { box-sizing: border-box; }
.fa-btn { font-family: Georgia, "Times New Roman", serif; }

/* Format du cours (« Formation écrite » ou « Vidéos et textes ») au-dessus du titre des cartes. */
.tutor-course-card .fa-format { display: inline-block; margin: 0 0 8px; padding: 3px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; background: #eef1ff; color: #233dff; }
.tutor-course-card .fa-format.has-video { background: #fff2e6; color: #a34b00; }
