/* styles.css 
   Project: 
   Author: 
   Date: 
	
*/

/*google font*/

@import url('https://fonts.googleapis.com/css2?family=Lato&family=Montserrat&family=Open+Sans&family=Raleway&family=Roboto&display=swap');

/*main css*/

* {
  box-sizing: border-box;
}

img, video {
  width: 100%;
  display: block;
}

audio {
  display: block;
}

/*link style*/

a {
  text-decoration: none;
  color: darkred;
}

a:visited {
  color: darkslateblue;
}

a:hover, a:active {
  color: darkgray;
} 

body, html {
  font-family: 'Baskerville', serif; 
}

h1, h2, h3, .pullquote {
  font-family: 'Baskerville', serif;

}


.headlines {
  width: 100%;
/*  height: 100vh;*/
  background-color: black;
  display: grid;
  align-content: center;
}

.headlines img {
  width: 100%;
  margin: auto;
}

header {
  width: 100%;
  position: sticky;
  top: 0;
  z-index: -1;
  background-color: black;
  /*max-height: 600px;*/
}

header img {
  /* this opacity makes the header image dark so you can read the headline text more easily. remove the opacity if you do not have your headline on top of the image.*/
  opacity: 0.6;
}

.headlines {
  z-index: -1;
}

.headlines img {
  position: relative;
}

.four {
  animation: zoom 2s, shiftone 4s;
  animation-fill-mode: forwards;
}

.five {
  animation: zoom 2s, shifttwo 4s;
  animation-delay: 1s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.six {
  animation: zoom 2s, shiftthree 4s;
  animation-delay: 2s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.seven {
  animation: zoom 2s, shiftfour 4s;
  animation-delay: 3s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.five {
  animation: zoom 2s, shiftfive 4s;
  animation-delay: 4s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.eighteen {
  animation: zoom 2s, shiftfive 4s;
  animation-delay: 6s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

/*.six {
  animation: zoom 2s, shiftsix 4s;
  animation-delay: 5s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.seven {
  animation: zoom 2s, shiftseven 4s;
  animation-delay: 6s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.eight {
  animation: zoom 2s, shifteight 4s;
  animation-delay: 7s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.nine {
  animation: zoom 2s, shiftnine 4s;
  animation-delay: 8s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.ten {
  animation: zoom 2s, shiftten 4s;
  animation-delay: 9s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.eleven {
  animation: zoom 2s, shifteleven 4s;
  animation-delay: 10s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.twelve {
  animation: zoom 2s, shifttwelve 4s;
  animation-delay: 11s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.thirteen {
  animation: zoom 2s, shiftthirteen 4s;
  animation-delay: 12s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.fourteen {
  animation: zoom 2s, shiftfourteen 4s;
  animation-delay: 13s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.fifteen {
  animation: zoom 2s, shiftfifteen 4s;
  animation-delay: 14s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.sixteen {
  animation: zoom 2s, shiftsixteen 4s;
  animation-delay: 15s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.seventeen {
  animation: zoom 2s, shiftseventeen 4s;
  animation-delay: 16s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.eighteen {
  animation: zoom 2s, shifteighteen 4s;
  animation-delay: 17s;
  transform: scale(0);
  animation-fill-mode: forwards;
}

.nineteen {
  animation: zoom 2s, shiftnineteen 4s;
  animation-delay: 18s;
  transform: scale(0);
  animation-fill-mode: forwards;
}*/


@keyframes zoom {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);   
  }
}

/*@keyframes shiftone {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 0vw;
    top: 0vh;
  }
}

@keyframes shifttwo {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    right: 0vw;
    top: 0vh;
  }
}

@keyframes shiftthree {
  0%{
    left: 25vw;
    top: 25vh;
  }

  100% {
    left: 0vw;
    bottom: 0vh;
  }
}

@keyframes shiftfour {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 45px;
    top: -120px;
  }
}

@keyframes shiftfive {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 25px;
    top: -180px;
  }
}

@keyframes shiftsix {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 45px;
    top: -120px;
  }
}

@keyframes shiftseven {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 25px;
    top: -180px;
  }
}

@keyframes shifteight {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: -50px;
    top: -180px;
  }
}

@keyframes shiftnine {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 30px;
    top: -150px;
  }
}

@keyframes shiftten {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 70px;
    top: -200px;
  }
}

@keyframes shifteleven {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 80px;
    top: -140px;
  }
}
@keyframes shifttwelve {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 45px;
    top: -120px;
  }
}

@keyframes shiftthirteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: -50px;
    top: -180px;
  }
}

@keyframes shiftfourteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 30px;
    top: -150px;
  }
}

@keyframes shiftfifteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 70px;
    top: -200px;
  }
}

@keyframes shiftsixteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 80px;
    top: -140px;
  }
}

@keyframes shiftseventeen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 45px;
    top: -120px;
  }
}

@keyframes shifteighteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: -50px;
    top: -180px;
  }
}

@keyframes shiftnineteen {
  0%{
    left: 25vw;
    top: 25vh;
  }
  100% {
    left: 30px;
    top: -150px;
  }
}

*/
.title1 {
  position: absolute;
  width: 100%;
  top: 20%;
  color: white;
  text-align: center;
  padding: 3%;
}

.title1 h1 {
  font-size: 5.1em;
  margin-bottom: -4px;
}

.title1 h2 {
  font-size: 5.1em;
}

.title1 h3 {
  margin-top: 10%;
  font-size: 1.2em;
  font-style: italic;
}

.title2 {
  width: 100%;
  color: black;
  text-align: center;
  padding: 3% 10%;
}

.title2 h1 {
  font-size: 4.7em;
  margin-bottom: -4px;
}

.title2 h2 {
  font-size: 3em;
}

.title2 h3 {
  margin-top: 10%;
  margin-bottom: 0;
  font-size: 1.5em;
  font-style: italic;
}

.content {
  width: 100%;
  background-color: white;
  overflow-x: hidden;
}

.maintext {
  max-width: 640px;
  margin: auto;
  color: black;
  font-size: 1.3em;
  line-height: 1.7em;
  text-align: justify;
/*  font-size: 1.4em;
  font-weight: 300;
  line-height: 1.8em*/;
  padding: 1%;
}

.pullquote {
  width: 50%;
  font-size: 1.4em;
  line-height: 1.6em;
  font-style: italic;
  text-align: left;
}

.name {
  font-size: 0.7em;
  text-align: center;
  line-height: 0.1em;
  padding-bottom: 30px;
}

.left {
  float: left;
  padding-right: 20px;
  margin-left: -40px;
}

.right {
  float: right;
  padding-left: 20px;
  margin-right: -40px;
}

.sidepic {
  width: 50%;
}

.sidepic audio {
  width: 100%;
  margin-top: 5px;
}

.sidecap {
  margin-top: 0px;
  font-size:  0.8em;
  text-align: center;
}

.sectionhead {
  text-align: center;
  color: darkslategray;
}

.bigphoto {
  position: relative;
  height: 530px;
}

.bigphoto img {
  object-fit: cover;
  height: 100%;
}

.photocaption {
/*  position: absolute;*/
  bottom: 0px;
/*  width: 100%;*/
  padding-left: 1%;
  color: black;
/*  background-color: rgba(0,0,0,0.4);*/
}

.photogrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 5px;
}

.gridpic {
  position: relative;
}

.gridpic .photocaption {
  display: none;
}

.cycle-slideshow {
  max-width: 700px;
  margin: auto;
}

.knightlab {
  max-width: 700px;
  margin: auto;
}

.googlemap {
  overflow:hidden;
  padding-bottom:56.25%;
  position:relative;
  height:0;
  max-width: 700px;
  margin: auto;
}

.googlemap iframe {
  left:0;
  top:0;
  height:100%;
  width:100%;
  position:absolute;
}

.youtube {
  max-width: 700px;
  margin: auto;
}

.responsivecontainer {
  position: relative; 
  padding-bottom: 56.25%; 
  padding-top: 30px; 
  height: 0; 
  overflow: hidden;
}

.responsivecontainer iframe, .responsivecontainer object, .responsivecontainer embed { 
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%;
}

.clickhere {
  font-style: italic;
  font-size: 0.7em;
  text-align: right;
  padding-right: 1%;
}

.voxpop {
  max-width: 700px;
  margin: auto;
}

.voxgrid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-gap: 10px;
}

.person {
  border-radius: 5px;
  box-shadow: 3px 3px 3px lightslategrey;
  overflow: hidden;
}

.person audio {
  width: 100%;
  display: block;
}

.headshot {
  position: relative;
  text-align: center;

}

.popup {
  cursor: pointer;
}

.infographic {
  max-width: 700px;
  margin: auto;
}

/* Slideshow container */
.slideshow-container {
  max-width: 1000px;
  position: relative;
  margin: auto;
}

/* Hide the images by default */
.mySlides {
    display: none;
}

.mySlides img {
    width: 100%;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}

/* Caption text */
.slidetext {
  color: #f2f2f2;
  font-size: 15px;
  padding: 12px;
  position: absolute;
  bottom: 0px;
  width: 100%;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.7);
}

/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dots {
  margin-top: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
}

.dot {
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
  text-align: center;
}

.active, .dot:hover {
  background-color: #717171;
}

 
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}


/*footer */

footer {
  background-color: black;
  color: white;
  padding: 1%;
  text-align: right;
}

/*popup modal*/

.overlay {
  position: fixed;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  overflow-y: scroll;
  display: none;
  z-index:  10;
}

.modal {
  width: 70%;
  margin: 2% auto;
}

.closer {
  position: absolute;
  right: 1vh;
  top:  1vh;
  width: 10%;
  cursor: pointer;
}

/*media query for responsive design */

@media only screen and (max-width: 900px) {

  .title1 {
    top: 5%;
  }

  .title1 h1 {
    font-size: 3.5em;
  }

  .title1 h2 {
    font-size: 1.5em
  }

  .title1 h3 {
    font-size: 1.1em;
  }

}


@media only screen and (max-width: 800px) {

  .pullquote {
    width: 100%;
    margin: 0px;
    padding: 0px;
    text-align: center;
    display: none; /* remove this line if you want the pullquotes to display on mobile*/ 
  }

  .left, .right {
    margin: 0px;
    padding: 10px;
  }

  .sidepic {
    width:  100%;
    margin: 0px;
    padding:  0px;
  }

  .popup {
    margin-bottom: 15px;
  }

  .popup .sidecap {
    display: none;
  }  

}


@media only screen and (max-width: 640px) {

  .title1 {
    top: 1%;
  }

  .title1 h1 {
    font-size: 3em;
  }

  .title1 h2 {
    display: none;
  }

  .title1 h3 {
    font-size: 0.9em;
  }

  .title2 h1 {
    font-size: 2em;
  }

  .title2 h2 {
    font-size: 1.3em;
  }

  .title2 h3 {
    font-size: 1em;
  }

  .maintext {
    font-size: 1.4em;
    line-height: 1.6em;
    text-align: left;
    margin: 0px 15px;
  }

  .voxgrid {
    grid-template-columns: 1fr 1fr;
  }

  .person audio {
    background-color: black;  
  }

  .modal {
    width: 97%;
    margin: 10% auto;
  }

}











