#hot {
  display: inline-block;
  margin-bottom: 2vw;
  font-size: 12pt;
  line-height: 1.6;
}

.blink {
  animation: blink 1s step-end infinite;
}

@keyframes blink {
  67% { opacity: 0 }
}

#exhibition {
  display: none;
  margin-bottom: 2vw;
  line-height: 1.6;
  color: red;
}

body {
  margin: 8vw;
}

header {
  font-size: 3vw;
  margin-bottom: 16vw;
}

  header h1 {
    font-size: 8vw;
    padding-bottom: 2vw;
    margin-bottom: 2vw;
    border-bottom: solid;
    border-width: thin;
  }

  header a, header span {
    font-size: 4vw;
    margin-right: 2vw;
  }

#gallery {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}

figure {
  padding: .8em;
  margin: auto;
}

figcaption {
  font-size: 10pt;
  font-family: monospace;
  min-width: 100%;
  width: 0;
  word-wrap: break-word;
}

#info {
  max-width: 720px;
  margin: 0 auto;
}

  #references {
    list-style-type: disc;
  }

  #info h1 {
    font-size: 4vw;
    padding: 8vw 0 2vw 0;
  }

  #info p, #info a, #info li {
    font-size: 3.2vw;
    line-height: 1.6;
  }

@media only screen and (min-width: 512px) {
  body {
    margin: 3.2em;
  }

  header {
    font-size: 12pt;
    margin-bottom: 6.4em;
  }

  header h1 {
    font-size: 32pt;
    padding-bottom: .4em;
    margin-bottom: .4em;
  }

  header a, header span {
    font-size: 16pt;
    margin-right: .4em;
  }

  #info h1 {
    font-size: 16pt;
    padding: 1.6em 0 .4em 0;
  }

  #info p, #info a, #info li {
    font-size: 12pt;
    line-height: 1.6;
  }
}
