/* Global body styling */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f4f4f4;
    padding-bottom: 60px; /* Marge pour éviter que le contenu soit masqué par le footer */
}

/* Header */
header {
    background-color: #0d47a1;
    color: white;
    text-align: center;
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

header .logo-img {
    height: 50px; /* Taille réduite du logo */
    margin-bottom: 10px; /* Espacement sous le logo */
}

header h1 {
    font-size: 36px;
    margin: 0;
}

header .subtitle {
    font-size: 18px;
    margin: 5px 0;
}

/* Informations du header (Domaine, Thématique, Module) */
.header-info {
    margin-top: 10px;
    font-size: 18px;
    line-height: 1.6;
}

/* Section de navigation pour les boutons */
.header-nav {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
}

/* Boutons de navigation */
.module-navigation a {
    color: white;
    background-color: #0d47c2;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    margin: 0 10px;
    transition: background-color 0.3s;
}

.module-navigation a:hover {
    background-color: #1565c0;
}

/* Styles pour le bouton retour à l'index */
.btn-back {
    background-color: #4CAF50;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    color: white;
    font-weight: bold;
}

.btn-back:hover {
    background-color: #45a049;
}

/* Footer */
footer {
    background-color: #0d47a1;
    color: white;
    text-align: center;
    padding: 10px 0;
    position: relative; /* Position normale */
    width: 100%;
    margin-top: 20px;
}

/* Style pour les sections encadrées */
.chapter-box {
    background-color: #ffffff; /* Fond blanc */
    border: 2px solid #0d47a1; /* Bordure bleue */
    border-radius: 8px; /* Coins arrondis */
    padding: 15px; /* Espacement intérieur */
    margin-bottom: 20px; /* Espacement entre les sections */
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); /* Ombre subtile autour de l'encadré */
}

.chapter-box h3 {
    color: #0d47a1; /* Couleur bleue pour les titres */
    font-size: 22px; /* Taille du titre */
    margin-bottom: 10px; /* Marge sous le titre */
}

.chapter-box p {
    font-size: 16px;
    line-height: 1.6;
    margin: 0; /* Supprimer la marge par défaut */
}

/* Formation details section */
.formation-details {
    margin: 20px;
    background-color: white;
    border-radius: 10px;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.1);
    padding: 5px;
}

/* Two-column layout for the content */
.content-section {
    display: flex;
    justify-content: space-between;
    gap: 20px; /* Espacement entre les colonnes */
}

.left-column, .center-column, .right-column {
    width: 32%; /* Ajuste pour un meilleur alignement */
}

/* Heading styles */
h3 {
    color: #0d47a1;
    font-size: 18px;
    margin-top: 5px;
    margin-bottom: 5px; /* Réduit l'espacement en dessous du titre */
}

h4 {
    color: #000000;
    font-size: 16px;
    margin-top: 0px;
    margin-bottom: 5px;
}

/* Paragraph styling */
p {
    font-size: 16px;
    line-height: 1.6;
}

/* List styling for associated modules */
ul {
    list-style-type: none;
    padding-left: 0;
}

ul li {
    margin: 5px 0;
}

.code-formation {
    display: flex; /* Utilisation de flexbox pour aligner les éléments */
    align-items: center;
}

.code-formation h3 {
    margin-right: 10px;
}

.code-formation span {
    font-size: 16px;
    font-weight: normal;
}

/* Responsive styling for smaller screens */
@media screen and (max-width: 768px) {
    .content-section {
        flex-direction: column; /* Passe les colonnes en une seule colonne */
    }

    .left-column, .right-column {
        width: 100%; /* Colonne pleine largeur */
        margin-bottom: 20px; /* Espacement entre les colonnes */
    }

    footer {
        position: relative; /* Plus de position fixe sur petits écrans */
    }

    body {
        padding-bottom: 80px; /* Marge plus grande si nécessaire */
    }

    header h1 {
        font-size: 20px;
    }
}
