body {
  background-color: white;
  background-image: url("BG_img.jpeg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: 100vw 100vh;
  background-attachment: fixed;
  font-family: Arial, Helvetica, Verdana, sans-serif;
  /*position: absolute;*/
}

img.profile {
  position: absolute;
  right: 3vw;
  top: 80px;
  border: 3px solid #000000bd;
  width: 20vw;
  max-width: 350px;
  height: auto;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border-radius: 200px;
}

div.bio {
  position: absolute;
  right: calc(3vw - 2px);
  top: min(calc(80px + 3*3px + 711/528 * 20vw + 2vh), calc(80px + 3*3px + 711/528 * 350px + 2vh));
  /* top of img + img and bio border + img height (pixel ratio times width) + nice margin */
  background-color: #ffffffbd;
  border: 3px solid #000000bd;
  width: min(calc(20vw - 4px), calc(350px - 4px));
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border-radius: 30px;
  padding: 4px;
  z-index: 1;
  text-align: center;
  font-size: 1.2em;
}

/*height: calc(100vh - 80px - 50px - 3*3px - 4630/3704 * 20vw - 2vh);*/
/* 100% page - top of img - bottom margin - img and bio border - img height (pixel ratio times width) - nice margin */

div.header {
  position: absolute;
  top: 10px;
  left: 8vw;
  width: 60vw;
  /*background-color: #c4ffd0bd;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border: 3px solid #c4ffd077;*/
  z-index: 1;
  border-radius: 20px;
  padding: 4px;
  font-weight: bold;
  font-size: 40px;
  text-align: center;
}

#subheaderScience {
  position: absolute;
  top: min(calc(25px + 10px + 30vw * 66/377), calc(25px + 10px + 420px * 66/377));
  left: 8vw;
  width: 60vw;
  background-color: #c4ffd0bd;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border: 3px solid #c4ffd077;
  z-index: 1;
  border-radius: 20px;
  padding: 4px;
  font-weight: bold;
  font-size: 24px;
  text-align: center;
  visibility: hidden;
  overflow-x: scroll;
  text-wrap: nowrap;
}

#subheaderArt {
  position: absolute;
  top: min(calc(25px + 10px + 30vw * 66/377), calc(25px + 10px + 420px * 66/377));
  left: 8vw;
  width: 60vw;
  background-color: #c4ffd0bd;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border: 3px solid #c4ffd077;
  z-index: 1;
  border-radius: 20px;
  padding: 4px;
  font-weight: bold;
  font-size: 24px;
  text-align: center;
  visibility: hidden;
  overflow-x: scroll;
  text-wrap: nowrap;
}

#ImgHeaderScience {
  width: 30vw;
  max-width: 420px;
  height: auto;
}

#ImgHeaderArt {
  width: 30vw;
  max-width: 420px;
  height: auto;
}

div.language {
  position: fixed;
  bottom: 5px;
  right: 5px;
  z-index: 2;
}

div.Main {
  position: absolute;
  top: min(calc(90px + 30vw * 66/377), 180px);;
  left: 5vw;
  width: 66vw;
  background-color: #ffffffbd;
  border: 3px solid #ffffff77;
  padding: 4px;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border-radius: 20px;
  font-size: 1.2em;
  margin-bottom: 25px;
  overflow-x: scroll;
}


table, th, td {
  border:0px;
}

img.preview {
  border: 3px solid #000000bd;
  width: 20vw;
  max-width: 350px;
  height: auto;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  border-radius: 20px;
}

div.description {
  padding: 10px;
  margin-bottom: 30px;

}

div.subtitle {
  font-size: 1.5em;
  font-weight: bold;
}

a:link, a:visited {
  text-decoration: none;
  color: black;
}

a:hover {
  text-decoration: none;
  color: purple;
  cursor: pointer;
}

a:active {
  text-decoration: none;
  color: purple;
  cursor: progress;
}

div.vert {
  border-left: 2px solid black;
  height: 24px;
  position: relative;
  margin-left: 1vw;
  margin-right: 1vw;
}

div.Clarification {
  font-size: 1em;
  background-color: #aaaaaabd;
  border-radius: 5px;
  padding: 2px;
  margin: 15px;
  width: 40vw;
  max-width: 800px;
}


a.HighVis:link, a.HighVis:visited {
  text-decoration: underline;
  color: blue;
}


a.PaperTitle:link, a.PaperTitle:visited {
  font-size: 1.2em;
  font-weight: bold;
}

div.PaperTitle {
  font-size: 1.2em;
  font-weight: bold;
}

a.PaperTitle:hover, a.PaperTitle:active {
  font-size: 1.2em;
  font-weight: bold;
  color: black;
  cursor: pointer;
  text-decoration: underline;
}


table.TableList {
  border-collapse: collapse;
  width: 100%;
  text-align: center;
}

th.TableList, td.TableList {
  padding: 8px;
  border-bottom: 1px solid #bbbbbb;
}

th.TableListStudent, td.TableListStudent {
  padding: 8px;
  border-bottom: 1px solid #bbbbbb;
  width: 300px;
}
th.TableListTitle, td.TableListTitle {
  padding: 8px;
  border-bottom: 1px solid #bbbbbb;
  width: 500px;
}

div.SubHeadFloat {
  margin: 5px;
  float: left;
}

img.galleryH {
  border: 3px solid #00000000;
  float: left;
  width: 40vw;
  max-width: 500px;
  height: auto;
  border-radius: 20px;
}

img.galleryH:hover {
  border: 3px solid #000000;
  opacity: 0.7;
}

img.galleryV {
  border: 3px solid #00000000;
  float: left;
  width: 20vw;
  max-width: 300px;
  height: auto;
  border-radius: 20px;
}

img.galleryV:hover {
  border: 3px solid #000000;
  opacity: 0.7;
}

video.gallery {
  border: 3px solid #00000000;
  float: left;
  width: 40vw;
  max-width: 500px;
  height: auto;
  border-radius: 20px;
}

video.galleryV {
  border: 3px solid #00000000;
  float: left;
  width: 20vw;
  max-width: 300px;
  height: auto;
  border-radius: 20px;
}

table.Misc {
  margin-bottom: 150px;
}