* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Merriweather', sans-serif;
    font-size: 20px;
    background-color: black;
    color: #B0B0B0;
    display: flex;
    align-items: center;
    height: 100vh;
    margin: 0;
    flex-direction: column;
}

a {
    color: white;
    transition: color 0.5s ease;
    text-decoration: none;
}

a:visited {
    color: white;
}

a:hover {
    color: red;
}

h1 {
    font-family: 'Oswald', sans-serif;
    font-size: 40px;
    margin-bottom: 30px;
    color: white;
    text-transform: uppercase; /* Mise en majuscules */
}

h2 {
    font-family: 'Oswald', sans-serif;
    font-size: 28px;
    font-weight: 10;
    margin-bottom: 10px;
    color: red;
    text-transform: uppercase; /* Mise en majuscules */
}

h3 {
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    font-weight: 10;
    margin-bottom: 10px;
    color: red;
    text-transform: uppercase; /* Mise en majuscules */
}

p {
    line-height: 1.5;
    margin-bottom: 24px;
}

strong {
    color: white;
}

form {
    display: flex;
    flex-direction: column;
}

label {
    font-size: 16px;
    margin-bottom: 8px;
    text-align: left;
    color: white;
}

input[type="password"] {
    padding: 10px;
    margin-bottom: 20px;
    border: 1px solid #555;
    border-radius: 5px;
    background-color: black;
    color: white;
}

input[type="password"]:focus {
    outline: none;
    border-color: white;
}

button {
    font-family: 'Oswald', sans-serif;
    text-transform: uppercase;
    padding: 10px;
    background-color: black;
    border-radius: 5px;
    border: 1px solid red; 
    color: red;
    font-size: 20px;
    cursor: pointer;
}

button:hover {
    background-color: red;
    color: black;
}

footer {
    padding: 0px 0;
    text-align: center;
}

footer .social-buttons {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}

footer p {
    font-size: 14px;
    margin-top: 20px;
}

.login-wrapper {
    display: flex;
    justify-content: center; /* Centrer horizontalement */
    align-items: center; /* Centrer verticalement */
    height: 100vh; /* Utiliser toute la hauteur de la fenêtre */
    width: 100%; /* Utilisation de pourcentage */
    max-width: 300px; /* Largeur maximale pour limiter l'agrandissement */
}

.login-container {
    background-color: black;
    padding: 30px;
    border-radius: 5px;
    border: 1px dotted #555; 
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
    width: 100%; /* Utilisation de pourcentage */
    text-align: center;
}

.error-message {
    color: red;
    margin-bottom: 20px;
}

.container {
    text-align: center;
    width: 100%;
    max-width: 1200px;
    box-sizing: border-box;
    position: relative;
}

.container-album {
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    align-items: center;
    width: 70%;
}

.image {
    width: 40%;
    height: auto;
}

.iframe {
    width: 55%;
}

.social-buttons-container {
    margin-top: 40px;
    margin-bottom: 40px;
    display: flex;
    justify-content: center;
}

.social-button {
    margin: 0 10px;
    background-color: transparent;
    border: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
}

.social-button i {
    font-size: 30px;
    color: white;
    transition: color 0.5s ease;
}

.social-button:hover i {
    color: red;
}

.logo-container img {
    width: 85%;
}

.new-album-container p {
    margin-top: 30px;
}

.new-album-cover {
    width: 70%;
    max-width: 350px;
    box-shadow:0px 0px 20px 0 #fff;
}

.press-quotes-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin-top: 40px;
}

.press-quote {
    flex: 1 1 calc(50% - 20px); /* Deux par ligne avec un petit espace entre */
    padding: 15px;
    border: 1px dashed red;
    border-radius: 10px;
    color: white;
    font-style: italic;
    box-sizing: border-box;
    max-width: 500px;
}

.press-quote .quote {
    font-size: 20x;
    margin-bottom: 8px;
}

.press-quote .source {
    font-size: 18px;
    text-align: right;
    font-style: normal;
    color: #B0B0B0;
    margin-bottom: 0px;
}

.footer-logo-container img {
    width: 100px;
    margin-bottom: 10px;
}

.band-photo-container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
    overflow: hidden;
}

.band-photo {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    border-radius: 10px;
    margin-bottom: 20px;
}

.band-photo-credits {
    font-size: 16px;
    font-style: italic;
    margin-top: -15px;
    margin-bottom: 0px;
}

.separator {
    width: 100%;
    height: auto;
    margin: 20px 0;
    display: block;
}

.hook {
    font-size: 24px;
    font-style: italic;
    margin-bottom: 30px;
}

.bio p {
    line-height: 1.4;
    margin-bottom: 10px;
}

/* Conteneur des onglets */
.tabs {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-bottom: 20px;
}

.tabs button {
    border: 1px solid red;
    padding: 5px 20px;
    cursor: pointer;
    transition: all 0.5s ease;
}

.tabs button.selected {
    background-color: red;
    color: black;
}

.tabs button:hover {
    background-color: red;
    color: white;
}

.bio-text {
    display: none;
}

.bio-text.active {
    display: block;
}

.video iframe {
    width: 100%;
    max-width: 800px;
    height: 450px;
    border: none;
    margin: 20px auto;
}

/* Centrer le conteneur du tableau */
.dates {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* Style du tableau */
.dates-table {
    border-collapse: collapse; /* Supprime les espaces entre les bordures */
    width: 80%; /* Adapte la largeur du tableau, ajustez si nécessaire */
    margin: 0 auto; /* Centre le tableau horizontalement */
}

/* Style des lignes du tableau */
.dates-table tbody tr {
    border-bottom: 1px dotted #555; /* Ligne pointillée en bas de chaque ligne */
}

/* Style des cellules du tableau */
.dates-table td {
    padding: 10px 15px;
    text-align: left;
}

.not-announced {
    color: red;
}

.album-container {
    text-align: center;
}

.album {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px; /* Espace entre la cover et le lecteur */
    flex-wrap: wrap; /* Permet de passer à la ligne si l'espace est insuffisant */
    margin: 20px 0;
}

.album-cover {
    width: 100%; /* Largeur par défaut pour mobile */
    max-width: 350px; /* Limite la taille maximale sur les écrans larges */
    border-radius: 10px;
}

iframe {
    width: 100%; /* Largeur par défaut pour mobile */
    max-width: 500px; /* Limite la taille maximale sur les écrans larges */
    height: 360px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
}


/* Styles pour les petits écrans (mobiles) */
@media (max-width: 768px) {
    body {
        font-size: 18px;
        padding: 10px;
    }

    h1 {
        font-size: 28px;
    }

    h2, h3 {
        font-size: 18px;
    }

    .login-container {
        padding: 20px;
        border-radius: 10px;
    }

    input[type="password"], button {
        font-size: 16px;
        padding: 8px;
    }

    .album {
        flex-wrap: nowrap; /* Garder sur une seule ligne si la largeur le permet */
        flex-direction: column; /* Par défaut : les éléments sont empilés */
    }
}

/* Styles pour très petits écrans (ex. < 480px) */
@media (max-width: 480px) {
    h1 {
        font-size: 24px;
    }

    input[type="password"], button {
        font-size: 14px;
        padding: 6px;
    }
}