.roboto-thin {
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.roboto-light {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-medium {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.roboto-black {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.roboto-thin-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.roboto-light-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.roboto-regular-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.roboto-medium-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.roboto-bold-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.roboto-black-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-style: italic;
}

* {
  box-sizing: border-box;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.0625rem;
}

body {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 0rem;
  margin: 0rem;
}
body nav {
  width: 12.5vw;
  background-color: lightgray;
  padding: 0.5rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  position: fixed;
  height: 100vh;
}
body nav img.logo {
  max-width: 6vw;
  margin: 1rem auto;
}
body nav ul {
  list-style-type: none;
  padding: 0;
  margin: 1rem auto;
  width: 100%;
}
body nav ul li {
  width: calc(100% - 0.5rem);
  padding: 0rem;
  margin: 0.25rem;
  text-align: center;
  background-color: lightgray;
  border-radius: 0.25rem;
}
body nav ul li a {
  color: black;
  text-decoration: none;
  padding: 0.25rem;
  min-width: 100% !important;
  display: block;
}
body nav ul li:hover {
  background-color: gray;
}
body main {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  min-height: 95vh;
  width: 95vw;
  max-width: 840px;
  margin: 2.5vh auto;
  gap: 0.5rem;
}
body main figure {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
body main figure figcaption {
  font-size: 0.75rem;
  color: dimgray;
  margin: 0.25rem;
}
body main img,
body main video {
  max-width: 100%;
  border-radius: 0.5rem;
  margin: 1rem auto;
}
body main code {
  font-family: "Roboto Mono", monospace;
  font-size: 0.75rem;
  background-color: lightgray;
  padding: 0.25rem;
  border-radius: 0.25rem;
}
body main h2 {
  margin-bottom: 0rem;
}
body main p {
  width: 100%;
  text-align: justify;
  margin: 0.125rem;
  line-height: 1.5rem;
}
body main p strong {
  color: navy;
}
body main div.teammember {
  width: 100%;
  margin-top: 1rem;
}
body main div.teammember h2,
body main div.teammember h3,
body main div.teammember p {
  margin: 0.25rem;
}
body main div.teammember h2 a,
body main div.teammember h3 a,
body main div.teammember p a {
  color: #000;
}
body main div.publication {
  display: flex;
  flex-flow: row nowrap;
  gap: 0.5rem;
}
body main div.publication p.yearlabel {
  width: 4rem;
  color: gray;
  font-weight: bold;
  margin: 0.25rem;
  margin-top: 0rem;
  padding: 0.25rem;
  text-align: right;
}
body main div.publication div.publink {
  text-decoration: none;
  color: #000;
  text-align: justify;
}
body main div.publication div.publink h2,
body main div.publication div.publink h3,
body main div.publication div.publink p {
  margin: 0.25rem;
}
body main div.publication div.publink h2 a,
body main div.publication div.publink h3 a,
body main div.publication div.publink p a {
  color: #000;
  text-decoration: none;
  font-weight: bold;
}
body main div.publication div.publink h2 {
  font-size: 1.25rem;
}
body main div.publication div.publink h3 {
  font-size: 1rem;
}
body main div.publication div.publink p {
  font-size: 0.75rem;
  line-height: 1rem;
}

@media (max-width: 768px) {
  body {
    flex-flow: column nowrap;
  }
  body nav {
    width: 100vw;
    height: auto;
    position: relative;
    padding: 0rem;
  }
  body nav img.logo {
    max-width: 20vw;
    margin: 0.5rem auto;
  }
  body nav ul {
    width: 100%;
    margin: 0rem auto;
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  body nav ul li {
    font-size: 0.75rem;
  }
  body main {
    width: 95vw;
    max-width: 95vw;
    margin: 2.5vw;
  }
  body main img {
    max-width: 100%;
  }
}/*# sourceMappingURL=main.css.map */