/* Reset général */
html, body {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Style général */
body {
    font-family: 'Arial', sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #fefbf3;
}

/* Header */
header {
    background: linear-gradient(45deg, #e3c6a9, #d5a582);
    color: #fff;
    text-align: center;
    padding: 1.5rem 0;
}

/* Barre de navigation */
.navbar {
    background-color: #333;
    padding: 0.5rem 1rem;
    display: flex;
    justify-content: center; /* Centre le contenu horizontalement */
    align-items: center; /* Centre le contenu verticalement */
}

/* Liste de navigation */
.nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center; /* Centre les liens horizontalement */
    gap: 1rem;
}

/* Liens */
.nav-list li a {
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
}

/* Adaptation pour les écrans plus petits */
@media (max-width: 768px) {
    .nav-list {
        flex-direction: column; /* Passe en colonne */
        align-items: center; /* Centre les liens horizontalement */
        gap: 0.5rem; /* Réduit l'espacement entre les liens */
    }

    .nav-list li a {
        font-size: 1rem; /* Taille légèrement augmentée pour mobile */
        padding: 0.5rem 0; /* Réduit l'espacement horizontal */
    }
}


/* Section générale */
.section {
    max-width: 1200px;
    margin: 2rem auto;
    padding: 1rem;
    text-align: left;
}

/* Section Biographie */
.biography-section {
    text-align: center; /* Texte centré */
    padding: 2rem 1rem;
    background-color: #fdf4e8; /* Fond légèrement coloré */
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre subtile */
    max-width: 900px; /* Limite la largeur */
    margin: 2rem auto; /* Centre la section */
}

.biography-section h2 {
    color: #d5a582; /* Couleur principale */
    margin-bottom: 1rem;
}

.biography-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem; /* Espacement entre l'image et le texte */
    text-align: justify; /* Texte justifié */
}

.biography-photo {
    width: 200px; /* Taille fixe de la photo */
    height: auto;
    border-radius: 50%; /* Photo ronde */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre autour de la photo */
}

.biography-content p {
    max-width: 700px; /* Limite la largeur des paragraphes */
    line-height: 1.6; /* Espacement entre les lignes */
    color: #333; /* Couleur du texte */
}


/* Video Gallery */
.video-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); /* Grille responsive */
    gap: 1.5rem; /* Espacement entre les vidéos */
    justify-content: center; /* Centre les vidéos */
    margin-top: 2rem;
}

/* Chaque vidéo */
.video-item {
    background-color: #fff; /* Fond blanc pour contraster avec le fond global */
    border: 1px solid #ccc; /* Bordure subtile */
    border-radius: 10px; /* Coins arrondis */
    padding: 1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre légère */
    text-align: center; /* Texte centré */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Animation au survol */
.video-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.2); /* Accentuation de l'ombre */
}

/* Les frames vidéo */
.video-frame iframe {
    width: 100%; /* Prend toute la largeur disponible */
    max-width: 300px; /* Limite à la largeur des frames SoundCloud */
    aspect-ratio: 16 / 9; /* Ratio standard des vidéos */
    border: none;
    margin-bottom: 0.5rem;
}

/* Texte sous les vidéos */
.video-item p {
    font-size: 0.9rem;
    color: #444;
    margin-top: 0.5rem;
}


/* SoundCloud Gallery */
.audio-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem; /* Espacement généreux entre les items */
    justify-content: center;
    margin-top: 2rem;
}

.audio-item {
    background-color: #fff; /* Fond blanc pour contraster avec le fond général */
    border: 1px solid #ccc; /* Bordure subtile */
    border-radius: 10px; /* Coins arrondis */
    padding: 1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre légère */
    text-align: center; /* Centrer le texte sous les frames */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* Animation au survol */
.audio-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.2);
}

/* Style des frames */
.audio-frame iframe {
    width: 100%;
    max-width: 300px; /* Aligné avec les vidéos */
    aspect-ratio: 16 / 9; /* Maintient le ratio 16:9 */
    border: none;
    margin-bottom: 0.5rem;
}

/* Lien SoundCloud */
.audio-item p a {
    color: #d5a582; /* Harmonisation des couleurs */
    text-decoration: none;
}

.audio-item p a:hover {
    text-decoration: underline;
}



/* Agenda */
.event-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.event-box {
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 1rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.event-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.2);
}

.event-header h3 {
    margin: 0;
    font-size: 1.2rem;
    color: #333;
}

.event-header p {
    margin: 0.5rem 0 0;
    font-size: 0.9rem;
    color: #666;
}

.event-details {
    margin-top: 1rem;
    font-size: 0.95rem;
}

.event-link {
    display: inline-block;
    margin-top: 0.5rem;
    padding: 0.5rem 1rem;
    background-color: #d5a582;
    color: #fff;
    text-decoration: none;
    border-radius: 5px;
    font-weight: bold;
    transition: background-color 0.2s ease;
}

.event-link:hover {
    background-color: #e3c6a9;
}

/* Section Contact */
.contact-section {
    background-color: #fdf4e8; /* Fond légèrement coloré */
    padding: 2rem 1rem;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Ombre subtile */
    max-width: 900px; /* Limite la largeur */
    margin: 2rem auto; /* Centre la section */
    text-align: center;
    overflow: hidden; /* Empêche les débordements */
}

.contact-section h2 {
    color: #d5a582; /* Couleur principale */
    margin-bottom: 1rem;
}

.contact-section p {
    color: #666;
    margin-bottom: 2rem;
    font-size: 1rem;
}

/* Formulaire */
form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    text-align: left; /* Alignement des labels et des champs */
}

.form-group {
    display: flex;
    flex-direction: column;
    width: 100%; /* Assure que les champs respectent la largeur du conteneur */
    max-width: 100%; /* Empêche les débordements */
}

.form-group label {
    display: block;
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #333;
}

.form-group input, 
.form-group textarea {
    width: 100%; /* S'assure que les champs occupent toute la largeur disponible */
    max-width: 100%; /* Empêche tout débordement */
    box-sizing: border-box; /* Inclut les paddings et bordures dans la largeur totale */
    padding: 0.75rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 1rem;
    font-family: 'Arial', sans-serif;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); /* Ombre subtile */
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-group input:focus, 
.form-group textarea:focus {
    border-color: #d5a582; /* Couleur principale au focus */
    box-shadow: 0 4px 6px rgba(213, 165, 130, 0.2);
    outline: none;
}

/* Bouton "Envoyer" avec le même style que les boutons Agenda */
.btn-submit {
    display: inline-block;
    padding: 0.5rem 1rem;
    background-color: #d5a582; /* Couleur principale */
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Ombre subtile */
}

.btn-submit:hover {
    background-color: #e3c6a9; /* Couleur au survol */
    transform: translateY(-2px); /* Légère élévation */
}

/* Responsiveness */
@media (max-width: 768px) {
    .contact-section {
        padding: 1.5rem 0.5rem; /* Réduction des marges et des espacements */
        max-width: 100%; /* Utilisation de toute la largeur */
    }

    .form-group input, 
    .form-group textarea {
        font-size: 0.9rem; /* Réduction de la taille de police */
        padding: 0.5rem; /* Réduction du padding */
    }

    .btn-submit {
        font-size: 0.9rem; /* Ajustement de la taille du bouton */
        padding: 0.4rem 0.8rem;
    }
}

@media (max-width: 480px) {
    .contact-section h2 {
        font-size: 1.5rem; /* Réduction de la taille des titres */
    }

    .contact-section p {
        font-size: 0.9rem; /* Réduction de la taille du texte */
    }

    .btn-submit {
        font-size: 0.8rem; /* Encore plus petit pour les très petits écrans */
        padding: 0.3rem 0.6rem;
    }
}


/* Footer */
#footer {
    text-align: center;
    background-color: #333; /* Fond sombre */
    color: #fff; /* Texte blanc */
    padding: 1rem 0;
    margin-top: 2rem; /* Espace avec le contenu précédent */
    font-size: 0.9rem;
    box-shadow: 0 -2px 6px rgba(0, 0, 0, 0.1); /* Ombre subtile vers le haut */
}

#footer p {
    margin: 0;
    font-weight: normal;
}


