/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 04 2026 | 13:41:06 */
/* =========================================================
   EIGHT – Correctifs mise en page (novembre 2026)
   Feuille de style dédiée. Chaque bloc cible une classe
   « eight-… » ajoutée dans WPBakery (champ « Classe CSS
   supplémentaire » de la ligne / colonne / élément).
   ========================================================= */

/* 1. Hôtel d'application – formulaire « Écrivez votre message » : textes en blanc
   Classe : .eight-hotel-contact (ligne) */
.eight-hotel-contact .wpcf7 input:not([type="submit"]),
.eight-hotel-contact .wpcf7 textarea { color: #fff !important; }
.eight-hotel-contact .wpcf7 input::placeholder,
.eight-hotel-contact .wpcf7 textarea::placeholder { color: rgba(255,255,255,.85) !important; opacity: 1; }
.eight-hotel-contact .wpcf7 label { color: #fff !important; }
.eight-hotel-contact .wpcf7 input[type="submit"] { color: #fff !important; border-color: #fff !important; }

/* 2b. Cursus et formation – cartes des années : même hauteur, sous-titres alignés, 30px entre les cartes
   Classes : .eight-cursus-carte (ligne interne = carte), .eight-cursus-col-carte (colonne qui contient la carte) */
.vc_row.eight-cursus-carte { padding: 20px 15px !important; margin-left: 0 !important; margin-right: 0 !important; flex: 1 1 auto; }
.eight-cursus-carte h4 { line-height: 30px !important; margin-bottom: 5px !important; }
.eight-cursus-carte h4 + .wpb_text_column { margin-top: 20px !important; }
.eight-cursus-col-carte { display: flex; flex-direction: column; }
.eight-cursus-col-carte > .vc_column-inner { flex: 1 1 auto; display: flex; flex-direction: column; padding-left: 15px !important; padding-right: 15px !important; margin-bottom: 30px !important; }
.eight-cursus-col-carte > .vc_column-inner > .wpb_wrapper { flex: 1 1 auto; display: flex; flex-direction: column; }

/* 2c. Cursus et formation – textes longs (21px desktop, 17px mobile) et intro serif
   Classes : .eight-cursus-texte (bloc texte), .eight-cursus-intro (titre personnalisé) */
.eight-cursus-texte p { font-size: 21px !important; }
@media (max-width: 767px) {
  .vc_custom_heading.eight-cursus-intro { font-size: 22px !important; line-height: 1.5 !important; }
  .eight-cursus-texte p { font-size: 17px !important; line-height: 1.7 !important; }
}

/* 3. À propos – mobile & tablette : images pleine largeur, au-dessus du texte
   Classes : .eight-apropos-bloc (ligne), .eight-apropos-col-image / .eight-apropos-col-texte (colonnes) */
@media (max-width: 991px) {
  .vc_row.eight-apropos-bloc { display: flex !important; flex-direction: column; }
  .eight-apropos-col-image { order: -1; }
  .eight-apropos-bloc > .wpb_column > .vc_column-inner { padding-left: 15px !important; padding-right: 15px !important; }
  .wpb_column.eight-apropos-col-texte { padding-left: 0 !important; padding-right: 0 !important; }
  .eight-apropos-col-texte .wpb_text_column { margin-left: 0 !important; margin-right: 0 !important; }
  .eight-apropos-col-image .wpb_single_image,
  .eight-apropos-col-image .wpb_single_image .vc_figure,
  .eight-apropos-col-image .wpb_single_image .vc_single_image-wrapper { display: block !important; width: 100% !important; max-width: 100% !important; }
  .eight-apropos-col-image .wpb_single_image { margin: 0 0 30px 0 !important; }
  .eight-apropos-col-image .wpb_single_image img { display: block; width: 100% !important; height: auto !important; }
}

/* 3b. À propos – bloc noir « Opter pour EIGHT… » : espacement haut/bas et colonnes empilées sur tablette/mobile
   Classe : .eight-apropos-engagement (ligne) */
@media (max-width: 1199px) {
  .vc_row.eight-apropos-engagement { padding-top: 70px !important; padding-bottom: 70px !important; }
}
@media (max-width: 991px) {
  .vc_row.eight-apropos-engagement > .wpb_column { width: 100% !important; float: none !important; padding-bottom: 0 !important; }
  .vc_row.eight-apropos-engagement > .wpb_column:not(:last-child) { margin-bottom: 30px; }
  .eight-apropos-engagement .wpb_text_column { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 767px) {
  .vc_row.eight-apropos-engagement { padding-top: 50px !important; padding-bottom: 50px !important; }
}

/* 3c. À propos – tablette : blocs image/texte alignés sur la largeur des autres sections */
@media (min-width: 768px) and (max-width: 991px) {
  .eight-apropos-bloc > .wpb_column > .vc_column-inner { padding-left: calc(50% - 290px) !important; padding-right: calc(50% - 290px) !important; }
}
/* 3d. À propos – mobile : bloc d'intro aligné sur les marges des autres sections
   Classe : .eight-apropos-intro (ligne) */
@media (max-width: 767px) {
  .vc_row.eight-apropos-intro { margin-left: -40px !important; margin-right: -40px !important; }
}
/* 3e. À propos – mobile : texte « Formation en Hospitality Management » aligné à gauche (plus de justification)
   Classe : .eight-apropos-formation (ligne) */
@media (max-width: 767px) {
  .eight-apropos-formation .wpb_text_column p { text-align: left !important; }
}

/* 4. Conseil d'orientation stratégique – bloc « Composition du COS »
   Classes : .eight-cos-bloc (ligne), .eight-cos-col-image / .eight-cos-col-texte (colonnes) */
.eight-cos-col-image .wpb_single_image { margin: 0 !important; }
.eight-cos-col-image .wpb_single_image .vc_figure,
.eight-cos-col-image .wpb_single_image .vc_single_image-wrapper { display: block; width: 100%; }
.eight-cos-col-image .wpb_single_image img { display: block; width: 100% !important; height: auto; }
@media (min-width: 768px) {
  .eight-cos-col-image > .vc_column-inner,
  .eight-cos-col-image .wpb_wrapper,
  .eight-cos-col-image .wpb_single_image,
  .eight-cos-col-image .wpb_single_image .vc_figure,
  .eight-cos-col-image .wpb_single_image .vc_single_image-wrapper { height: 100%; }
  .eight-cos-col-image .wpb_single_image img { height: 100% !important; object-fit: cover; }
}
@media (max-width: 767px) {
  .eight-cos-bloc > .wpb_column > .vc_column-inner { padding-left: 15px !important; padding-right: 15px !important; }
  .eight-cos-col-texte > .vc_column-inner { padding-top: 30px !important; }
}

/* 5. Contact – icônes centrées avec leur texte (toutes tailles d'écran)
   Classe : .eight-contact-infos (ligne) */
.eight-contact-infos .wpb_single_image { text-align: center !important; }
.eight-contact-infos .wpb_single_image .vc_figure { display: inline-block; margin: 0 auto; }
.eight-contact-infos .wpb_text_column,
.eight-contact-infos .wpb_text_column .wpb_wrapper,
.eight-contact-infos .wpb_text_column p { text-align: center !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; }
@media (min-width: 992px) {
  .eight-contact-infos a[href^="mailto:"] { white-space: nowrap; }
}

/* 6. Programmes d'études – « Nos formations » : texte à gauche, aligné avec le texte et la photo du bloc précédent
   Classe : .eight-prog-formations (ligne) */
.eight-prog-formations .prog-label-center,
.eight-prog-formations .prog-center,
.eight-prog-formations .prog-formations-text { text-align: left !important; }
@media (min-width: 1025px) {
  .vc_row.eight-prog-formations { padding-left: 206px !important; padding-right: 25px !important; }
}

/* 7. Programmes d'études – mobile : titre « Compétences développées… » sur 2 lignes
   Classe : .eight-prog-competences (ligne) */
@media (max-width: 767px) {
  .eight-prog-competences h2.prog-label { font-size: 13px !important; letter-spacing: 2px !important; line-height: 1.6 !important; }
}

/* 8. Programmes d'études – desktop : marge à gauche de la photo « Nos métiers »
   Classes : .eight-prog-metiers (ligne), .eight-prog-metiers-image (colonne photo) */
@media (min-width: 768px) {
  .eight-prog-metiers-image > .vc_column-inner { padding-left: 30px !important; }
}

/* 9. Admission – icônes « Conditions d'admission » visibles sur tablette
   Classe : .eight-admission-condition (colonnes du bloc) */
@media (min-width: 768px) and (max-width: 991px) {
  .eight-admission-condition .vc_column-inner > .wpb_wrapper { flex-direction: column !important; align-items: flex-start !important; }
  .eight-admission-condition .wpb_single_image { flex: 0 0 auto !important; width: auto !important; margin-bottom: 15px !important; }
  .eight-admission-condition .wpb_single_image .vc_figure,
  .eight-admission-condition .wpb_single_image .vc_single_image-wrapper { width: auto !important; }
  .eight-admission-condition .wpb_single_image img { width: 50px !important; height: auto !important; max-width: none !important; }
}
/* 9. Admission – photo lounge : remplit sa colonne
   Classes : .eight-admission-lounge-col (colonne), .eight-admission-lounge-img (image) */
.eight-admission-lounge-col > .vc_column-inner,
.eight-admission-lounge-col > .vc_column-inner > .wpb_wrapper,
.eight-admission-lounge-img,
.eight-admission-lounge-img .vc_figure,
.eight-admission-lounge-img .vc_single_image-wrapper { display: block; height: 100%; width: 100%; margin: 0 !important; }
.eight-admission-lounge-img img { display: block; width: 100% !important; height: 100% !important; min-height: 540px; object-fit: cover; object-position: center; }
@media (max-width: 767px) {
  .eight-admission-lounge-img img { min-height: 0; height: 420px !important; }
}

/* 10. Actualités – mobile & tablette : texte contenu dans les cartes
   Classe : .eight-actualites-grille (ligne qui contient la grille) */
@media (max-width: 1024px) {
  .eight-actualites-grille .eg-heli-news-01-content { overflow: hidden !important; }
  .eight-actualites-grille .eg-heli-news-01-content [class*="eg-heli-news-01-element-16"] { display: -webkit-box !important; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden !important; }
  .eight-actualites-grille .eg-heli-news-01-content .eg-heli-news-01-element-19 { display: -webkit-box !important; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden !important; white-space: normal !important; }
}
