/* --- Réinitialisation et styles de base --- */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    background-color: #f9f9f9;
    color: #333;
	text-align: justify;
}


.container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

a {
    color: #1E5A9A; /* Bleu moyen pour les liens */
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* --- En-tête --- */
.main-header {
    background-color: #0D2C54; /* Bleu foncé principal */
    color: white;
    padding: 15px 0;
    border-bottom: 2px solid #ddd;
}

.main-header .container {
    display: flex;
    align-items: center;
}

.main-header .logo img {
    height: 40px;
}

.main-header .university-name {
    font-size: 1.5em;
    font-weight: 300;
    margin-left: 20px;
}

/* --- Carte de profil --- */
.profile-card {
    background-color: white;
    margin-top: 30px;
    padding: 25px;
    border: 1px solid #ddd;
    border-top: 5px solid #000080; /* Bordure bleu clair */
    display: grid;
    grid-template-columns: 200px 1fr 250px;
    gap: 25px;
    align-items: start;
}

.profile-picture img {
    width: 200px;
    height: 220px;
    border-radius: 50%; /* Image ronde */
    object-fit: cover;
}

.profile-info h1 {
    margin: 0 0 5px 0;
    font-size: 2.2em;
}

.profile-info .role {
    font-size: 1.1em;
    color: #666;
    margin-bottom: 20px;
}

.profile-info p {
    margin: 8px 0;
    line-height: 1.6;
}

.social-links {
    margin-top: 20px;
}

.social-links .icon-link {
    display: inline-block;
    margin-right: 20px;
    font-size: 1em;
    color: #0D2C54; /* Bleu foncé pour les icônes */
}

.social-links .icon-link i {
    margin-right: 8px;
}

.profile-affiliation {
    border-left: 1px solid #eee;
    padding-left: 25px;
    font-size: 0.9em;
}

.profile-affiliation p {
    margin-top: 0;
}

.profile-affiliation a {
    display: block;
    margin-bottom: 10px;
}

/* --- Onglets de navigation --- */
.tabs {
    margin-top: 25px;
    display: flex;
	border-bottom: 2px solid #ccc;
	font-size: 1.3em;
}

.tab-link {
    border: 2px solid #ccc;
    border-bottom: none;
    padding: 15px 30px;
    cursor: pointer;
    font-size: 1em;
    background-color: #f1f1f1;
    margin-right: 5px;
    transition: background-color 0.2s, color 0.2s;
}

.tab-link.active, .tab-link:hover {
    background-color: #1E5A9A; /* Bleu moyen pour l'onglet actif et au survol */
    color: white;
    border-color: #1E5A9A;
}

/* --- Section de contenu --- */
.content-section {
    background-color: white;
    padding: 30px;
    border: 1px solid #ccc;
    margin-top: -1px; /* Pour fusionner avec les onglets */
    line-height: 1.7;
    min-height: 200px;
	border-right: 1px solid #000080; /* Bordure bleu clair */
	border-top: 1px solid #000080; /* Bordure bleu clair */
}

.content-section h2 {
    margin-top: 0;
    font-size: 1.8em;
    font-weight: 600;
}

.download-button {
    display: inline-block;
    background-color: #0D2C54; /* Bleu foncé */
    color: white;
    padding: 12px 25px;
    margin-top: 15px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s;
}

.download-button:hover {
    background-color: #1E5A9A; /* Bleu moyen au survol */
    text-decoration: none;
}



/* --- Pied de Page (Footer) --- */
.main-footer {
   # background-color:  #002E63; /* Couleur de fond gris-vert clair */
    padding: 40px 0;
    margin-top: 50px;
    border-top: 5px solid #0D2C54; /* Ligne bleue foncée en haut */
    border-bottom: 5px solid #0D2C54; /* Ligne bleue foncée en bas */
    font-size: 0.9em;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* Grille à 4 colonnes égales */
    gap: 30px; /* Espace entre les colonnes */
}

.footer-column h4 {
    font-size: 1em;
    font-weight: bold;
    color: #333;
    margin-top: 0;
    margin-bottom: 15px;
}

.footer-column a {
    display: block; /* Chaque lien sur sa propre ligne */
    color: #0D2C54; /* Liens en bleu foncé */
    text-decoration: underline; /* Liens soulignés comme sur l'image */
    margin-bottom: 10px;
}

.footer-column a:hover {
    color: #1E5A9A; /* Couleur au survol */
}

.footer-column p {
    margin: 5px 0;
    color: #333;
}

/* Marge supplémentaire pour les titres qui ne sont pas en haut de la colonne */
.footer-column .extra-margin {
    margin-top: 25px;
}




/* --- Styles pour la liste des étudiants supervises (mis à jour) --- */

.section-subtitle {
    font-size: 1.5em;
    font-weight: 600;
    margin-top: 5px;
    margin-bottom: 3px;
    border-bottom: 2px solid #B0C4DE; /* Ligne de séparation bleu clair */
    padding-bottom: 2px;
}

#chaires {
    font-size: 1em;
    font-weight: 500;
    margin-top: 30px;
    margin-bottom: 15px;
    border-bottom: 2px solid #B0C4DE; /* Ligne de séparation bleu clair */
    padding-bottom: 10px;
}

.student-list {
    list-style-type: decimal;
    padding-left: 20px;
}

.student-list li {
    margin-bottom: 25px;
    padding-left: 15px;
}

.student-header {
    margin: 0;
}

.student-name {
    font-weight: bold;
    font-size: 1.1em;
    color: #0D2C54; /* Nom de l'étudiant en bleu foncé */
}

.inscription-date {
    font-size: 0.9em;
    color: #666; /* Date en gris et plus petite */
    margin-left: 5px; /* Espace entre le nom et la date */
    font-weight: bold; /* Met le texte en gras */
}

.thesis-title {
    font-style: italic; /* Titre de la thèse en italique */
    color: #444; /* Un peu plus sombre que les détails normaux */
    margin-top: 5px; /* Petit espace au-dessus du titre */
    margin-bottom: 0;
}

/* --- Styles pour la page CV --- */

.cv-section {
    margin-bottom: 40px;
}

/* Style pour le titre principal H3 */
.cv-section .cv-section__title {
    font-size: 1.8em;
    font-weight: 600;
    color: #333;
    margin-bottom: 25px;
}

/* NOUVEAU : Style pour les sous-titres H4 */
.cv-section .cv-section__subtitle {
    font-size: 1.4em;
    font-weight: 600;
    color: #444; /* Légèrement plus clair pour marquer la hiérarchie */
    margin-top: 30px; /* Espace au-dessus de chaque sous-titre */
    margin-bottom: 10px;
    padding-bottom: 2px;
    border-bottom: 1px solid #eee; /* Ligne de séparation discrète */
	color: #0D2C54; /* Changé pour le bleu foncé du thème */
}

.cv-section__list {
    list-style-type: disc;
    padding-left: 20px;
    margin: 0;
}

.cv-section__list li {
    margin-bottom: 12px;
    line-height: 1.6;
}



/* --- MEDIA QUERIES pour la RESPONSIVITÉ --- */

/* Pour les tablettes (et en dessous) - jusqu'à 992px */
@media (max-width: 992px) {
    .profile-card {
        /* Passe la grille de 3 colonnes à 1 seule colonne */
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .profile-picture {
        /* Centre l'image de profil */
        text-align: center;
    }
    
    .profile-picture img {
        margin: 0 auto; /* Assure le centrage de l'image */
    }

    .profile-affiliation {
        border-left: none; /* Supprime la bordure latérale */
        border-top: 1px solid #eee; /* Ajoute une bordure en haut comme séparateur */
        padding-left: 0;
        padding-top: 20px;
    }

    .footer-grid {
        /* Passe la grille du pied de page de 4 à 2 colonnes */
        grid-template-columns: repeat(2, 1fr);
    }
}


/* Pour les téléphones mobiles - jusqu'à 768px */
@media (max-width: 768px) {
    body {
        /* Réduit la taille de la police de base pour une meilleure lisibilité */
        font-size: 15px; 
    }

    .container {
        padding: 0 15px; /* Réduit le padding latéral */
    }

    .main-header .container {
        /* Empile le logo et le nom de l'université */
        flex-direction: column;
        gap: 15px;
    }

    .profile-info h1 {
        font-size: 1.8em; /* Réduit la taille du titre principal */
    }

    .tabs {
        /* Permet aux onglets de passer à la ligne */
        flex-wrap: wrap;
        justify-content: center; /* Centre les onglets */
        font-size: 1.1em;
    }

    .tab-link {
        padding: 10px 15px; /* Réduit la taille des onglets */
    }

    .footer-grid {
        /* Passe la grille du pied de page à 1 seule colonne */
        grid-template-columns: 1fr;
    }
}


 
  .titre-elegant {
  /* Style du texte */
  font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 2em;
  font-weight: 500;
  
  /* Style du dégradé */
  background: linear-gradient(45deg, #4A90E2, #003366);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  
  /* Alignement et espacement */
  text-align: left;
  margin-top: 0;  
  margin-bottom: 3px;
  margin-left: -20px;       /* Supprime la marge extérieure gauche */
  padding-left: 1;      /* Supprime la marge intérieure gauche */

  /* Soulignement rouge ajouté */
  border-bottom: 0.5px solid blue; /* Crée une ligne rouge fine en dessous */
  padding-bottom: 1px;          /* Ajoute un petit espace entre le texte et la ligne */
}

/* Juste pour la démonstration */
.texte-en-dessous {
    font-family: sans-serif;
    font-size: 1em;
}