html {
  font-size: 16px;
  padding: 0; }

* {
  box-sizing: border-box; }

::selection {
  background-color: #d53e0e;
  color: white; }

header {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  @media only screen and (max-width: 900px) {
    header #nav-container {
      position: absolute;
      top: 0;
      left: 100%;
      width: 100vw;
      height: 100vh;
      background-color: #d53e0e;
      color: white;
      opacity: 0;
      -webkit-transition: 0.5s opacity;
      -o-transition: 0.5s opacity;
      transition: 0.5s opacity;
      -webkit-transform: scale(0);
      -ms-transform: scale(0);
      transform: scale(0); }
      header #nav-container.showing {
        left: 0;
        z-index: 100;
        opacity: 1;
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
        display: -webkit-box;
        display: -moz-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-box-align: center;
        -moz-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center; } }
  header nav.links {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    header nav.links .nav-item {
      margin-bottom: 0.5em; }
      header nav.links .nav-item:last-child {
        margin-bottom: 0; }
      header nav.links .nav-item a:hover {
        color: #d53e0e; }
    @media only screen and (max-width: 900px) {
      header nav.links {
        font-family: futura-pt-bold, sans-serif;
        font-weight: 700;
        font-style: normal;
        text-transform: uppercase; }
        header nav.links .nav-item {
          margin-bottom: 2em; }
          header nav.links .nav-item a {
            color: white;
            font-size: 8vw; }
            header nav.links .nav-item a:hover {
              color: #fac6b5; } }

@media only screen and (max-width: 900px) {
  .title-tagline {
    max-width: calc(85vw - 3em); } }

#menu-toggle {
  cursor: pointer;
  font-size: 1.7rem;
  display: none;
  z-index: 1000;
  height: 1.7rem;
  line-height: 1; }
  #menu-toggle.showing {
    color: white; }
  @media only screen and (max-width: 900px) {
    #menu-toggle {
      display: block; } }

h1, h2, h3, h4, h5, h6 {
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  letter-spacing: 0.2em; }

h1 {
  font-size: 3em;
  margin-top: 0;
  line-height: 1; }
  @media only screen and (max-width: 900px) {
    h1 {
      font-size: 8vw; } }

h2 {
  font-size: 1.5em; }

h3 {
  line-height: 1.2; }

p {
  line-height: 1.3; }

.centered {
  text-align: center;
  border-left: 5px solid black; }

header h1 a:hover {
  border: none;
  color: #d53e0e;
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease; }

body {
  font-family: adobe-caslon-pro, serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.1em;
  padding: 3vw;
  margin: 0; }
  @media only screen and (max-width: 900px) {
    body {
      padding: 9vw 7vw; } }
  body.no-scroll {
    overflow: hidden; }

footer {
  margin-top: 7rem; }
  @media only screen and (max-width: 900px) {
    footer {
      margin-top: 10vw; } }

#portfolio {
  margin-top: 50vh; }
  @media only screen and (max-width: 900px) {
    #portfolio {
      margin-top: 45vh; } }

a {
  color: black;
  text-decoration: none;
  padding-bottom: 0.05em;
  line-height: 1; }

img {
  max-width: 100%;
  display: block; }

.grid-sizer {
  width: 32%; }

.grid-item {
  width: 32%;
  margin-bottom: 2vw;
  position: relative; }
  .grid-item:hover .content {
    opacity: 1; }
  .grid-item .content {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-direction: normal;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: #d53e0e;
    color: white;
    cursor: pointer;
    opacity: 0;
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s; }
    .grid-item .content .info {
      width: 80%; }
    @media only screen and (max-width: 900px) {
      .grid-item .content {
        position: relative;
        display: block;
        color: black;
        opacity: 1;
        height: auto;
        background-color: transparent; }
        .grid-item .content .info {
          width: 100%; } }
  .grid-item .admin-options {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0.5em;
    background-color: #f2f2f2;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.2em; }
    .grid-item .admin-options a {
      margin-right: 0.5em; }
      .grid-item .admin-options a:hover {
        color: #d53e0e; }
    .grid-item .admin-options form {
      height: 1.4em; }
      .grid-item .admin-options form:last-child button {
        margin-right: 0; }
    .grid-item .admin-options button {
      outline: none;
      border: none;
      background: none;
      color: black;
      font-size: 1em;
      line-height: 1;
      cursor: pointer;
      padding: 0;
      margin-right: 0.5em; }
      .grid-item .admin-options button:hover {
        color: #d53e0e; }
  @media only screen and (max-width: 900px) {
    .grid-item {
      margin-bottom: 10vw; }
      .grid-item a {
        cursor: default; } }

.gutter-sizer {
  width: 2%; }

#lightboxOverlay:focus {
  outline: none !important; }

.lb-outerContainer {
  border-radius: 0 !important; }

.lb-data .lb-close {
  display: block;
  float: right;
  background-image: none !important;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  color: white;
  opacity: 1 !important;
  position: relative; }
  .lb-data .lb-close:after {
    content: 'X';
    position: absolute;
    right: 0; }

.lb-nav a.lb-next {
  right: 0 !important;
  background-image: none !important;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  opacity: 1 !important;
  position: relative;
  color: white; }
  .lb-nav a.lb-next:after {
    content: 'next';
    position: absolute;
    left: calc(100% +  2em);
    top: 50%; }
    @media only screen and (max-width: 900px) {
      .lb-nav a.lb-next:after {
        right: 2em;
        left: auto; } }

.lb-nav a.lb-prev {
  right: 0 !important;
  background-image: none !important;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  opacity: 1 !important;
  position: relative;
  color: white; }
  .lb-nav a.lb-prev:after {
    content: 'prev';
    position: absolute;
    right: calc(100% + 2em);
    top: 50%; }
    @media only screen and (max-width: 900px) {
      .lb-nav a.lb-prev:after {
        right: 2em; } }

.lb-data {
  padding-top: 0.5em !important; }
  .lb-data .lb-caption {
    font-weight: normal !important; }

form.admin {
  width: 60vw; }

form .field-wrapper {
  margin-bottom: 2em; }

form input {
  border-radius: 0;
  outline: none;
  border: 2px solid black;
  padding: 1em;
  width: 100%;
  font-family: adobe-caslon-pro, serif; }
  form input[type=submit] {
    background-color: black;
    border: none;
    color: white;
    font-family: futura-pt-bold, sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 1em;
    width: auto; }

form textarea {
  font-family: adobe-caslon-pro, serif;
  outline: none;
  border: 2px solid black;
  padding: 1em;
  width: 100%; }

form p.help {
  font-size: 0.8em; }

ul.messages, ul.errorlist {
  background-color: black;
  color: white;
  padding: 1rem;
  position: relative;
  display: inline-block; }
  ul.messages li:last-child, ul.errorlist li:last-child {
    margin-bottom: 0; }
  ul.messages.errorlist, ul.errorlist.errorlist {
    padding-left: 2rem; }
    ul.messages.errorlist:after, ul.errorlist.errorlist:after {
      content: '';
      position: absolute;
      top: 100%;
      left: 2em;
      margin-left: -0.75em;
      width: 0;
      height: 0;
      border-top: solid 0.75em  black;
      border-left: solid 0.75em transparent;
      border-right: solid 0.75em transparent; }

#admin-options {
  position: fixed;
  bottom: 7em;
  right: 0;
  background-color: #d53e0e;
  padding: 1em; }
  #admin-options a {
    color: white; }

#logout {
  position: fixed;
  bottom: 3em;
  right: 0;
  background-color: black;
  color: white;
  font-family: futura-pt-bold, sans-serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.05em;
  padding: 1em;
  text-transform: uppercase; }
  #logout a {
    color: white; }

@media only screen and (max-width: 900px) {
  .grid-sizer, .grid-item {
    width: 100%; }
    .grid-sizer img, .grid-item img {
      width: 100%; } }

/*# sourceMappingURL=styles.css.map */