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

  font-family: Arial, Helvetica, sans-serif;
}

body {
  background: rgb(255, 255, 255);
}

main {
  margin-left: 100px;
  margin-right: 100px;
}

li a {
  text-decoration: none;
  color: black;
}

h1 {
  margin-top: 15px;
  margin-bottom: 20px;

  font-size: 35px;
  letter-spacing: 1px;
}

h2 {
  margin-top: 13px;
  margin-bottom: 10px;
}

header {
  display: flex;

  position: sticky;
  top: 0;
  z-index: 1;
  background-color: rgb(222, 222, 222);
}

/* page-container, content-wrap and footer are used for setting the footer at the correct location. This implementation is based on this artcile: https://www.freecodecamp.org/news/how-to-keep-your-footer-where-it-belongs-59c6aa05c59c/ */
#page-container {
  position: relative;
  min-height: 100vh;
}

#content-wrap {
  padding-bottom: 2.9rem; /* Footer height */
}

#footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2.9rem; /* Footer height */
  background-color: rgb(222, 222, 222);

  font-size: 13px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#header-img {
  flex: 1;

  width: 100px;
  height: 50px;
}

#header-nav {
  flex: 5;
  flex-wrap: wrap;
}

#inside-ul {
  display: flex;
  margin-top: 0.4cm;
  justify-content: space-evenly;
  list-style: none;
}

#songs {
  display: flex;
  flex-direction: column;
  align-items: center;
}

table td:nth-child(3) {
  text-align: center;
}

tr:hover {
  background-color: rgba(255, 255, 0, 1);
}

.nav-link {
  font-size: 18px;
  letter-spacing: 1px;
}

.content {
  margin-left: 8px;
}

.pricing-options {
  margin-top: 5px;
  margin-left: 9px;
  margin-bottom: 5px;
}

@media (max-width: 540px) {
  main {
    margin: auto;
  }

  #content-wrap {
    padding-bottom: 3.5rem; /* Footer height */
  }

  #footer {
    height: 3.5rem; /* Footer height */
  }
}
