@font-face {
  font-family: "Blonde";
  src: url("../fonts/blonde_regular-webfont-f6c95369443500620fe0840d4243cadc.woff") format('woff');
}
body,
html {
  height: 100%;
  font-family: "Blonde", Helvetica, sans;
}
body {
  margin: 0;
  padding: 0;
  font-size: 16px;
}
@media only screen and (max-width: 64em) {
  body {
    font-size: 13px;
  }
}
#backstory {
  height: 100%;
  overflow: hidden;
  overflow-y: scroll;
}
#backstory #backstory_container {
  position: relative;
}
#backstory ul#vis {
  /* 		font-family: "Times New Roman", times, serif; */

  margin: 0;
  padding: 0 5%;
  height: 100%;
  /* 		cursor: none; */

}
#backstory ul#vis ul {
  margin: 0;
  padding: 0;
}
#backstory ul#vis > li {
  list-style: none;
  width: 3%;
  display: inline-block;
  position: relative;
  word-break: break-word;
  height: 100%;
}
#backstory ul#vis > li ul {
  position: relative;
  width: 100%;
}
#backstory ul#vis > li ul li {
  font-size: 4px;
  display: inline-block;
  overflow: hidden;
  pointer-events: none;
}
#backstory ul#vis > li ul li::before {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  content: ".";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 100%);
  /* FF3.6+ */

  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0)), color-stop(100%, #ffffff));
  /* Chrome,Safari4+ */

  background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 100%);
  /* Chrome10+,Safari5.1+ */

  background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 100%);
  /* Opera 11.10+ */

  background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 100%);
  /* IE10+ */

  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #ffffff 100%);
  /* W3C */

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@from', endColorstr='@to', GradientType=0);
  /* IE6-9 */

}
#backstory ul#vis > li.active {
  background: #f69296;
}
#backstory ul#vis > li.active li::before {
  background: -moz-linear-gradient(top, rgba(246, 146, 150, 0) 0%, rgba(246, 146, 150, 0) 50%, #f69296 100%);
  /* FF3.6+ */

  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(246, 146, 150, 0)), color-stop(50%, rgba(246, 146, 150, 0)), color-stop(100%, #f69296));
  /* Chrome,Safari4+ */

  background: -webkit-linear-gradient(top, rgba(246, 146, 150, 0) 0%, rgba(246, 146, 150, 0) 50%, #f69296 100%);
  /* Chrome10+,Safari5.1+ */

  background: -o-linear-gradient(top, rgba(246, 146, 150, 0) 0%, rgba(246, 146, 150, 0) 50%, #f69296 100%);
  /* Opera 11.10+ */

  background: -ms-linear-gradient(top, rgba(246, 146, 150, 0) 0%, rgba(246, 146, 150, 0) 50%, #f69296 100%);
  /* IE10+ */

  background: linear-gradient(to bottom, rgba(246, 146, 150, 0) 0%, rgba(246, 146, 150, 0) 50%, #f69296 100%);
  /* W3C */

  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='@from', endColorstr='@to', GradientType=0);
  /* IE6-9 */

}
#backstory ul#vis > li.active .current {
  background: #ed1c24;
}
#backstory #time_indicator {
  position: absolute;
  left: 0;
  height: 1px;
  width: 100%;
  background: rgba(0, 0, 0, 0.2);
  z-index: 100;
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
}
#backstory #time_indicator .time {
  float: right;
  position: relative;
  top: -1em;
  margin-right: 1em;
}
#backstory #viewer_container {
  position: fixed;
  width: 100%;
  height: 100%;
  display: table;
  pointer-events: none;
  -ms-touch-action: none;
  z-index: 20;
  top: 0;
  left: 0;
}
#backstory #viewer_container #viewer {
  /* 			font-family: "Times New Roman", times, serif; */

  pointer-events: none;
  display: table-cell;
  vertical-align: middle;
  max-width: 800px;
  padding: 20px;
}
#backstory #viewer_container #viewer span {
  transition: all 1s;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
}
#backstory #viewer_container #viewer .added {
  font-size: 2em;
}
#backstory #viewer_container #viewer .removing {
  font-size: 10em;
  opacity: 0;
  text-align: center;
}
#backstory #viewer_container #viewer_content {
  margin: auto;
  max-width: 1200px;
}
#backstory #viewer_container #viewer_content em {
  font-style: normal;
  color: #ed1c24;
}
#backstory_topics {
  list-style: none;
  padding: 0;
  overflow: hidden;
  margin: 2em 5%;
  padding-bottom: 2em;
  border-bottom: 3px solid black;
}
#backstory_topics li {
  font-size: 1.5em;
  float: left;
  margin-right: 2em;
}
#backstory_topics li a {
  color: black;
  text-decoration: none;
}
#backstory_topics li a.selected {
  color: #ed1c24;
}
#instructions {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 100;
  text-align: center;
}
#instructions #close_button {
  cursor: pointer;
  font-size: 2em;
  margin: auto;
  color: black;
  padding-bottom: 2em;
}
#instructions #close_button:hover {
  color: #ed1c24;
}
#instructions ul,
#instructions li {
  list-style: none;
  padding: 0;
  margin: 0;
}
#instructions .container {
  border: 3px solid #1e1e1e;
  margin: 24px;
  margin-top: 48px;
  text-align: left;
}
#instructions .column {
  float: left;
  width: 31%;
  margin-right: 2%;
}
#instructions .row {
  overflow: hidden;
  margin: 1em 5%;
}
#instructions .row.intro {
  font-size: 1.12em;
}
#instructions .row:last-child {
  margin-bottom: 2em;
}
#instructions h2.topic {
  float: left;
  margin: 0;
  margin-right: 2em;
}
/* --- Mixins --- */
.hideText {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
