*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  font-family: 'Jura', sans-serif;
  font-size: 16px;
  line-height: 1.42857143;
  background-color: #222;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.header {
  text-align: center;

  h1 {
    font-weight: 400;
    margin-bottom: 0px;
    margin-top: 0px;
    animation: 2s ease 0s 1 normal none running anim;
    color: silver;
    padding: 0.5em;
  }

  .surname {
    background-color: #100f0f;
    color: silver;
  }
}

.nav {
  background-color: #333;
  justify-content: flex-end;
  list-style: none;
  display: flex;
  justify-items: end;
}

.nav a {
  text-decoration: none;
  color: #f2f2f2;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
}

.main {
  flex: 1 0 auto;
  display: flex;
  margin: 0;
  padding: 0;

  background-repeat: no-repeat;
  background-image: url(/images/EH_Home.jpeg);
  background-size: cover;
}

.main-subpage {
  flex: 1 0 auto;
  display: flex;
  margin: 0;
  padding: 0;
  background-color: silver;
  width: 100%;
}

#published {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: white;
  padding: 1em 2em;
  box-sizing: border-box;
  font-size: 1.2em;

  a {
    text-decoration: none;
    color: #a24606;
  }
}

#discography-header {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: silver;
  padding: 1em;
  font-size: 1.3em;
}

.media-subpage {
  background-color: #222;
}

.music-subpage {
  display: flex;
  section {
    width: 50vw;
  }
  .music-image {
    background-image: url(/images/_JCF7829bw_dt.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    width: 50vw;
    height: 100%;
  }
}

#quotes {
  width: 30vw;
}

#quotes p {
  font-size: 1.2em;
  font-weight: 400;
  margin-bottom: 0px;
  margin-top: 0px;
  animation: 2s ease 0s 1 normal none running anim;
  padding: 0.5em;
  font-style: oblique;
  color: white;
}
.by-line {
  color: silver;
  font-size: 0.8em;
}

.footer {
  background-color: #333;
  text-align: center;
  padding: 10px;
}

.video {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: row;
  flex: 1 0 auto;
  gap: 1em;
  margin: 1em 5em;
  background-color: #222;
}

.video-card {
  display: flex;
  width: 100%;
  height: 100%;
  flex: 1;
  height: 416px;
}

.music {
  display: flex;
  flex-wrap: wrap;
  flex: 1 0 auto;
  justify-content: center;
  background-color: #b51414;
}

.music.home {
  background-color: unset;
}
.music.works {
  background-color: unset;
}

.music-card .overlay-image {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 160px;
  height: 160px;
  z-index: 10;
}
.music-card {
  width: 25em;
  margin: 5em;
  text-align: right;
  position: relative;
}
.music-card .creator {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 2em;
}

.footer a.headline {
  text-decoration: none;
  color: white;
  font-weight: 800;
  align-content: flex-start;
  font-size: 1.5em;
  margin-left: 80px;
}
.music-card a {
  text-decoration: none;
  color: white;
  font-weight: 800;
  align-content: flex-end;
  font-size: 1.5em;
}
/* works */
.work-item {
  margin-bottom: 1em;

  span.instrumentation {
    display: block;
  }
}

#works {
  margin: 2em;
}

#works a {
  font-size: 1.2em;
  text-decoration: none;
  color: #a24606;
  transition: color 1s ease-in-out;
}
#music-contact {
  display: flex;
  justify-content: center;
  a {
    display: flex;
    justify-content: center;
    align-content: center;
  }
  img {
    width: 300px;
  }
}

/* end works */

/* mobile */
@media (max-width: 480px) {
  .main {
    background-image: url(/images/EH_mobile.jpg);
    min-height: 700px;
    justify-content: right;
  }

  .header {
    h1 {
      font-size: 2em;
    }
  }
  #quotes {
    width: 50vw;
  }
  #quotes p {
    font-size: 0.7em;
  }

  .music-card {
    width: 20em;
    margin: 1em;
    align-self: center;
  }

  .music-card .overlay-image {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 100px;
    height: 100px;
    z-index: 10;
  }

  .music-card .overlay-image {
    width: 100px;
    height: 100px;
  }

  .music {
    flex-direction: column;
  }

  .video {
    flex-direction: column;
    margin: 0;
  }

  .nav {
    background-color: #333;
    list-style: none;
    display: flex;
    justify-items: unset;
    justify-content: space-evenly;
  }

  .nav a {
    font-size: 0.5em;
    padding: 10px 10px;
  }
  .video {
    flex-direction: column;
    min-height: 1200px;
  }

  .music-subpage {
    flex-direction: column;
    section {
      width: 100%;
    }
    .music-image {
      display: none;
    }
  }
}

/* tablet */
@media (min-width: 481px) and (max-width: 1024px) {
  .main {
    background-image: url(/images/EH_Home.jpeg);
    min-height: 400px;
  }
  .header {
    h1 {
      font-size: 5em;
    }
  }
  #quotes {
    width: 50vw;
  }
  #quotes p {
    font-size: 1em;
  }

  .music-card {
    margin: 2em;
    width: 15em;
  }

  .music-card .overlay-image {
    width: 100px;
    height: 100px;
  }

  .video {
    flex-direction: column;
    min-height: 1200px;
  }

  .music-image {
    background-position-x: -500px;
  }
}
@media (min-width: 481px) and (max-width: 1024px) and (orientation: portrait) {
  .main {
    background-image: url(/images/EH_mobile.jpg);
    justify-content: right;
  }
  .video {
    flex-direction: column;
    min-height: 1200px;
  }
  .music {
    flex-direction: column;
  }
  .music-card {
    margin: 1em;
    width: 50vw;
    align-self: center;
  }

  .music-card .overlay-image {
    width: 100px;
    height: 100px;
  }
}

@media (min-width: 481px) and (max-width: 667px) {
  #quotes p {
    font-size: 0.7em;
  }
}

/* desktop */
@media (min-width: 1025px) {
  .music-card {
    margin: 1em;
    width: 30vw;
  }
  .main {
    background-image: url(/images/EH_Home.jpeg);
    min-height: 700px;
  }
  #quotes {
    width: 60vw;
  }
  #quotes p {
    font-size: 1.2em;
  }
  .header {
    h1 {
      font-size: 10em;
    }
  }

  .music-image {
    background-position-x: -300px;
  }
}
