@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,200;1,300&display=swap');

body, html {
  height: 100%;
  margin:0;
  scroll-behavior: smooth;
}

.header{
  background-image: linear-gradient(rgba(150, 109, 105, 0.9), rgba(255, 255, 255, 0.5)), url("../images/banner2.jpg");
  height: auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  z-index: 2;
}

.title{
  font-family: 'Josefin Sans', sans-serif;
  font-style: italic;
  font-size: 100px;
  text-align: center;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px;
}

.section{
  font-family: 'Josefin Sans', sans-serif;
  font-size: 40px;
  text-align: center;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  margin-top: 40px;
  width: 50%;
}

.nav{
  padding: 40px;
  margin-right: 0;
  display: flex;
  justify-content: flex-end;
}

.nav1{
  display: block;
  background-color: white;
  padding: 15px;
  position: fixed;
  top: 0;
  z-index: auto;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}

nav a{
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bolder;
  color: black;
  font-size: 30px;
  font-family: 'Josefin Sans', sans-serif;
  text-decoration: none;
  padding: 20px;
  width:100%;
  text-align: center;
  transition: .25s ease;
}

a{
  text-decoration: underline;
  font-weight: bolder;
  color: black;
  font-size: 1.5em;
  font-family: 'Josefin Sans', sans-serif;
  padding: 20px;
  width:100%;
  text-align: center;
  transition: .25s ease;
}

a:hover{
  color: red;
  transition: .25s ease;
}

.active{
  color: red;
}

nav a:hover{
  color: red;
  transition: .25s ease;
}

.container{
  font-family: 'Josefin Sans', sans-serif;
  padding: 20px;
  border: 2px solid black;
  text-align: center;
  margin: 0 auto;
  margin-top: 20px;
  margin-bottom: 20px;
  width: 60%;
  font-weight: bolder;
}

hr{
  border: 0;
  height: 2px;
  background: black;
}

.headings{
  border-bottom: 5px solid red;
  font-family: 'Josefin Sans', sans-serif;
  font-size: 60px;
  text-align: center;
  display: flex;
  justify-content: center;
  margin: 0 auto;
  margin-top: 40px;
  width: 50%;
}

.container p, ul{
  font-family: 'Josefin Sans', sans-serif;
  font-size: 30px;
}

i{
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bolder;
  color: black;
  font-size: 50px;
  font-family: 'Josefin Sans', sans-serif;
  text-decoration: none;
  padding: 30px;
  margin: 0 auto;
  text-align: center;
  transition: .25s ease;
}

i:hover{
  color: red;
  transition: .25s ease;
}

i p{
  font-weight: bolder;
}

.pfp{
  width:400px;
  padding:20px;
  border: 2px solid black;
  margin: 15px auto;
  display: flex;
}

footer{
  background-color: #222222;
  color: white;
  font-family: 'Josefin Sans', sans-serif;
  padding: 20px;
  text-align: center;
  margin: 0 auto;
  margin-top: 20px;
  margin-bottom: 20px;
}

#video{
  display: flex;
  justify-content: center;
  margin: 0 auto;
  margin-top: 20px;
  margin-bottom: 20px;
  width:100%;
}

iframe{
  padding:15px;
}

/* Gallery Page Styles */

figure{
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(100px, 900px));
}

.container1{
  position: relative;
  width: 100%;
}

.imga{
  padding: 0;
}

.images{
  max-width:100%;
  margin: 0 auto;
  height: auto;
  padding: 0px;
  justify-content: space-around;
}

.overlay{
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(80, 80, 80, .7);
  overflow: hidden;
  width: 100%;
  height: 0;
  transition: .5s ease;
}

.container1:hover .overlay {
  height: 100%;
}

.text {
  color: white;
  font-family: 'Josefin Sans', sans-serif;
  font-size: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}

/* Projects Page Styles */

.playlists{
  width: 25%;
  margin: 0 auto;
  display: inline-block;
  padding:20px;
  border: 2px solid black;
  margin: 15px auto;
  transition: .25s ease;
}

.playlists:hover{
  border: 2px solid red;
  transition: .25s ease;
}


/* LightBox Styles */

.lightbox {
  /* Default to hidden */
  display: none;

  /* Overlay entire screen */
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-decoration: none;
  color: red;

  /* A bit of padding around image */
  padding: 1em;

  /* Translucent background */
  background: rgba(0, 0, 0, 0.9);
}

/* Unhide the lightbox when it's the target */
.lightbox:target {
  display: block;
}

.lightbox span {
  /* Full width and height */
  display: block;
  width: 100%;
  height: 95%;

  /* Size and position background image */
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.disc{
  text-decoration: none;
  cursor: default;
}

/* Mobile Styles */
@media(max-width:930px) {

  .nav a{
    font-size: 100%;
    padding: 20px;
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 0;
    padding-top: 10px;
  }

  .nav1 a{
    font-size: 100%;
    padding: 20px;
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 0;
    padding-top: 10px;
  }

  .headings{
    font-size: 200%;
  }

  .title{
    font-size: 300%;
    padding: 20px;
  }

  .header{
    height: auto;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  figure{
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(1, minmax(100px, 800px));
  }

  .pfp{
    width: 50%;
  }

  .container{
    width: 75%;
    font-size: 100%;
    display: block;
    margin: 0 auto;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  a{
    font-size: 1em;
  }

  #video{
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
    margin-top: 20px;
    margin-bottom: 20px;
    width: 100%;
  }

  iframe{
    width: 75%;
    margin: 0 auto;
  }

}
