.list-species {
      list-style: none;
      padding: 0;
      margin: 0;
      max-width: 800px;
      margin-inline: auto;
  }
  
  .species {
      display: block !important;       /* ← force ligne entière */
      width: 100% !important;
      box-sizing: border-box;
      padding: 0.75em 1em;
      margin-bottom: 0.5em;
      border: 1px solid #ccc;
      border-radius: 6px;
      background-color: #f8f9fa;
      transition: background-color 0.2s ease;
  }
  
  .species:hover {
      background-color: #e6f0ff;
  }
  
  .species a {
      display: block !important;
      text-decoration: none;
      color: #222;
      font-weight: 500;
  }

  :root {
    --blue-main: #7f85ff;
}

* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    font-family: "Times New Roman", Times, serif;
}

section {
    margin: 60px 30px;
}

h1 {
    font-size: 30px;
}

h2 {
    font-size: 24px;
    margin-bottom: 20px;
}

h3 {
    font-size: 22px;
}
h4 {
    font-size: 30px;
    margin-bottom: 20px;
   
}

p,
a,
ul,
li,
label,
button {
    font-size: 20px;
}

p {
    text-align: justify;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    cursor: pointer;
}

/* Banner */
.banner {
    position: relative;
    width: 100%;
    height: auto;
}

.banner-image {
    width: 100%;
    height: 125px;
    object-fit: cover;
}

.banner-title {
    position: absolute;
    width: 95%;
    top: 35%;
    left: 2%;
    color: white;
    text-align: center;
}

footer {
    background-color: var(--blue-main);
    padding: 20px;
    margin-top: 20px;
}

footer p {
    text-align: center;
   
}
footer a {
    text-align: center;
    font-size: 15px;
}
@media (min-width: 700px) {
    section {
          margin: 60px 50px;
    }

    h1 {
          font-size: 45px;
    }

    h2 {
          font-size: 30px;
    }

    h3 {
          font-size: 26px;
    }

    p,
    a,
    ul,
    li,
    label,
    button {
          font-size: 24px;
    }

    .banner-image {
          height: 250px;
    }

    .banner-title {
          width: 80%;
          top: 40%;
          left: 10%;
    }
}

@media (min-width: 1000px) {
    section {
          margin: 60px 100px;
    }

    .banner-image {
          height: 300px;
    }

    .banner-title {
          top: 45%;
    }
}

@media (min-width: 2000px) {
    section {
          margin: 60px 200px;
    }
}

html, body {
    height: 100%;
    margin: 0;
}

body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
}
.blue-text {
    color: blue;
    font-weight: 500;
}
