@-webkit-keyframes fadeIn {
  0% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  50% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  100% {
    -moz-opacity: 1;
    -webkit-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
    -moz-transform: none;
    -webkit-transform: none;
    -o-transform: none;
    transform: none; } }

@-moz-keyframes fadeIn {
  0% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  50% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  100% {
    -moz-opacity: 1;
    -webkit-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
    -moz-transform: none;
    -webkit-transform: none;
    -o-transform: none;
    transform: none; } }

@-o-keyframes fadeIn {
  0% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  50% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  100% {
    -moz-opacity: 1;
    -webkit-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
    -moz-transform: none;
    -webkit-transform: none;
    -o-transform: none;
    transform: none; } }

@keyframes fadeIn {
  0% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  50% {
    -moz-opacity: 0;
    -webkit-opacity: 0;
    -o-opacity: 0;
    opacity: 0;
    -moz-transform: translate(0, 10vh);
    -webkit-transform: translate(0, 10vh);
    -o-transform: translate(0, 10vh);
    transform: translate(0, 10vh); }
  100% {
    -moz-opacity: 1;
    -webkit-opacity: 1;
    -o-opacity: 1;
    opacity: 1;
    -moz-transform: none;
    -webkit-transform: none;
    -o-transform: none;
    transform: none; } }

.reset, body, .slide, .slide .project .details h2, .slide .project .details p, .slide .project .details .award div p {
  padding: 0;
  margin: 0;
  text-indent: 0; }

.widthCenter, .slide, .slide p,
.slide h1,
.slide h2,
.slide h3,
.slide h4 {
  max-width: 800px;
  margin: auto; }

/*
 * Covers for projects section
 */
#sierra {
  background-image: url("../images/ChuckNew.jpg"); }

#virtualKeyality {
  background-image: url("../images/keyality.jpg"); }

#ohack16 {
  background-image: url("../images/ohackscreenshot.png");
  background-size: contain; }

/*
 * sections
 */
body {
  font-family: "Playfair Display", serif;
  line-height: 2; }

#top {
  padding-top: 10px;
  width: 100%;
  position: fixed;
  z-index: 999; }
  #top div {
    margin: auto;
    max-width: 800px; }
  #top h2 {
    font-weight: normal; }

#mast {
  margin-top: 10px;
  background: none;
  line-height: 1.2;
  color: white; }
  #mast a {
    color: white;
    font-style: inherit; }
  #mast a:hover {
    color: #ff429a; }
  #mast .sub {
    font-style: italic;
    color: #ccc; }
  #mast h1 {
    font-size: 2.8em;
    font-style: italic;
    font-weight: normal;
    color: #ff429a;
    transition-property: size;
    transition-duration: 0.2s;
    margin: -18px 0 0 0; }
  #mast h2 {
    transition-property: size;
    transition-duration: 0.2s;
    color: #91efff;
    margin: 0; }

#spaceTakerUpper {
  height: 100vh;
  background: #202020; }

.small {
  background: #202020; }
  .small .hideable {
    display: none;
    opacity: 0; }
  .small img {
    max-width: 200px; }
  .small h2 {
    font-size: 1.2em;
    margin: 5px; }
  .small p {
    margin: 5px; }

.large img {
  width: 100%;
  max-width: 380px; }

.large .hideable {
  opacity: 1; }

.large h2 {
  font-size: 1.3em; }

.nojs body {
  background: white; }

.nojs #mast {
  background: #202020; }

/*
 * standalone elements
 */
.slide {
  padding: 0px;
  width: 100%;
  margin-top: 50px;
  /* Project bits */ }
  .slide .project {
    width: 390px;
    padding: 0 0 1em 0;
    border: 1px solid #eee;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 1px 1px 3px #ddd;
    background: white;
    margin-bottom: 20px; }
    .slide .project .cover {
      height: 14em;
      background-position: center center;
      background-size: cover;
      background-repeat: no-repeat;
      margin: 0px;
      padding: 1em; }
      .slide .project .cover video {
        height: 100%;
        width: 100%; }
      @media (max-width: 800px) {
        .slide .project .cover {
          height: 45vw; } }
    .slide .project .details {
      padding: 1em 1em 0 1em; }
      .slide .project .details h2 {
        line-height: 1;
        margin: 0 0 0.5em 0; }
      .slide .project .details p {
        margin: 0 0 0.5em 0; }
      .slide .project .details .tag {
        float: left;
        padding: 0 0.3em 0 0.3em;
        background: #f3f3f3;
        border: 1px solid #ddd;
        margin: 0.2em;
        border-radius: 5px; }
      .slide .project .details .cat {
        background: #b7eeff;
        border: 1px solid #8ac9dd; }
      .slide .project .details .award {
        float: right;
        background: none;
        border: none;
        margin: 0 0 0.5em 0.5em; }
        .slide .project .details .award div {
          display: inline-block;
          text-align: center;
          vertical-align: middle;
          padding: 0; }
          .slide .project .details .award div h3 {
            margin: 0;
            padding: 0;
            font-size: 1.4em;
            line-height: 1;
            font-weight: normal;
            font-style: italic; }
          .slide .project .details .award div p {
            font-size: 0.8em; }
      .slide .project .details .award::before,
      .slide .project .details .award::after {
        vertical-align: middle;
        background-image: url(../images/laurelleft.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center center;
        display: inline-block;
        content: "";
        width: 1.6em;
        height: 3em;
        position: relative; }
      .slide .project .details .award::before {
        background-image: url(../images/laurelleft.png);
        left: 0.09em; }
      .slide .project .details .award::after {
        background-image: url(../images/laurelright.png);
        right: 0.11em; }
  .slide table {
    line-height: 1.3;
    margin: 0;
    padding: 2px;
    border-spacing: 0;
    border-collapse: collapse;
    vertical-align: text-top; }
  .slide ul {
    margin: 5px; }
  .slide p {
    text-indent: 2em; }
  .slide h1 {
    font-size: 2em;
    font-style: italic; }
  @media (max-width: 800px) {
    .slide .widthCenter, .slide .slide, .slide p, .slide h1, .slide h2, .slide h3, .slide h4 {
      margin-left: 12px;
      margin-right: 12px; }
    .slide div .project {
      width: 90%;
      float: none;
      display: block;
      margin: 0 0 0.5em 5%; } }

#skilltablebutton {
  text-decoration: underline;
  font-size: 1.1em;
  font-style: italic;
  font-weight: normal; }

#scrollprompt {
  -moz-animation: 3s ease fadeIn;
  -webkit-animation: 3s ease fadeIn;
  -o-animation: 3s ease fadeIn;
  animation: 3s ease fadeIn;
  color: #91efff; }

@media (max-width: 800px) {
  #mast {
    padding-left: 1em; } }

h2 {
  font-style: italic; }

a {
  transition-duration: 0.2s; }

#picOfMe {
  background-image: url("../images/ChuckNew.jpg");
  width: 300px;
  height: 300px;
  float: right;
  background-size: cover;
  margin: 40px 10px;
  border-radius: 150px;
  background-position: center center; }
  @media (max-width: 600px) {
    #picOfMe {
      height: 150px;
      width: 150px;
      border-radius: 75px;
      margin: 30px 8px 8px 8px; } }