body {
  --border-thickness: 2px;
}

main {
  display: grid;
  grid-template-columns: 5fr 9fr 1fr;
  height: 85vh;
}

section#band {
  border: var(--border-thickness) solid black;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 1rem;

  #band-photo {
    width: max(15ch, 30%);
    aspect-ratio: 1;
    background: linear-gradient(pink, yellow);
  }

  #genres {
    display: flex;
    gap: 4px;
    max-width: 20ch;
    flex-wrap: wrap;
    justify-content: center;

    a {
      text-decoration: none;
      padding: 4px;
      border: var(--border-thickness) solid lightblue;
      border-radius: 3px;
    }
  }

  #links {
    display: flex;
    align-items: center;
  }
}

#artist-nav {
  display: flex;
  writing-mode: sideways-rl;

  div {
    padding: 1ch;
    margin-bottom: 1px;
    margin-left: calc(-1 * var(--border-thickness));
    border-radius: 0 4px 4px 0;
  }

  * > a {
    text-decoration: none;
  }

  #members-nav {
    border: var(--border-thickness) solid red;
    border-left: 0;
  }

  #releases-nav {
    border: var(--border-thickness) solid green;
    border-left: 0;
  }

  #shows-nav {
    border: var(--border-thickness) solid blue;
    border-left: 0;
  }
}

@media (max-width: 600px) {
  main {
    display: flex;
    flex-direction: column;
    height: unset;
    padding: 1rem;
  }

  section#band {
    align-items: start;
    gap: 1rem;
    padding: 1rem;

    #genres {
      justify-content: start;
    }
    
    p {
      max-width: 35ch;
    }
  }

  #artist-nav {
    display: flex;
    justify-content: space-between;
    writing-mode: unset;
    border: var(--border-thickness) solid black;
    border-top: 0;

    div {
      padding: 1ch;
      margin-bottom: 0;
    }

    * > a {
      text-decoration: none;
    }

    #members-nav {
      border: 0;
    }

    #releases-nav {
      border: 0;
    }

    #shows-nav {
      border: 0;
    }
  }
}