.bg-black-60 {
  background-color: transparent;
}

.bg-top h1 {
  text-shadow: 2px 1px 5px rgba(0, 0, 0, 0.6);
}

footer {
  color: #bbb;
}

header {
  margin-bottom: 2rem;
}

header .mv4 {
  margin-top: 0;
  margin-bottom: 0;
}

header.cover:not(.site-header) {
  position: relative;
  overflow: visible;
}

header.cover cite {
  position: absolute;
  bottom: -1.6em;
  right: 0.3em;

  color: #777;
  font-size: 0.8em;
  font-style: normal;
}

header.cover cite a {
  color: inherit;
}

header .assumed-audience {
  display: block;
  margin-top: 2rem;
}

figure cite {
  color: #777;
  display: block;
  font-size: 0.8em;
  font-style: normal;
  line-height: 1;
  text-align: right;
}

figure cite ~ figcaption {
  margin-top: 0.7em;
}

figure figcaption {
  line-height: 1;
}

figure audio {
  width: 100%;
}

blockquote {
  border-left: solid 4px #999;
  margin-left: 0;
  margin-right: 0;
  padding-left: 1em;
  padding-right: 1em;
}

.footnotes {
  font-size: 0.8em;
  margin-top: 5em;
}

@media (min-width: 601px) and (max-width: 960px) {
  .pull-figure {
    float: right;

    width: 50%;
  }
}

/* viewport: tablet portrait */
@media (min-width: 961px) {
  .pull-figure {
    position: relative;
    left: 100%;

    width: 50%;
    height: 0;
  }
}

/* viewport: desktop (default) (min-width: 1201px) and (max-width: 1800px) */
.site-header {
  background-image: url('/site/bridge-1800.jpg');
  background-position: center center;
}

/* viewport: phone */
@media (max-width: 600px) {
  .site-header {
    background-image: url('/site/bridge-0600.jpg');
  }
}

/* viewport: tablet portrait */
@media (min-width: 601px) and (max-width: 900px) {
  .site-header {
    background-image: url('/site/bridge-0900.jpg');
  }
}

/* viewport: tablet landscape */
@media (min-width: 901px) and (max-width: 1200px) {
  .site-header {
    background-image: url('/site/bridge-1200.jpg');
  }
}

/* viewport: large desktop */
@media (min-width: 1801px) {
  .site-header {
    background-image: url('/site/bridge-3000.jpg');
  }
}
