/**
 * Reset some basic elements
 */
body, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, hr,
dl, dd, ol, ul, figure {
  margin: 0;
  padding: 0; }

/**
 * Basic styling
 */
body {
  font: 300 22px/1.5 "EB Garamond", "Georgia", serif;
  color: #303030;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-font-feature-settings: "kern" 1;
  -moz-font-feature-settings: "kern" 1;
  -o-font-feature-settings: "kern" 1;
  font-feature-settings: "kern" 1;
  font-kerning: normal;
  display: flex;
  min-height: 100vh;
  flex-direction: column; }

/**
 * Set `margin-bottom` to maintain vertical rhythm
 */
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
ul, ol, dl, figure {
  margin-bottom: 16px; }

/**
 * `main` element
 */
main {
  display: block;
  /* Default value of `display` of `main` element is 'inline' in IE 11. */ }

/**
 * Images
 */
img {
  max-width: 100%;
  vertical-align: middle; }

/**
 * Figures
 */
figure > img {
  display: block; }

figcaption {
  font-size: 18px; }

/**
 * Lists
 */
ul, ol {
  margin-left: 8px; }

li > ul,
li > ol {
  margin-bottom: 0; }

/**
 * Headings
 */
h1, h2, h3, h4, h5, h6 {
  font-weight: 300; }

/**
 * Links
 */
a {
  color: #303030;
  text-decoration: none;
  font-style: italic;
  border-bottom: 0.2em solid #E5E5E5; }
  a:visited {
    color: #303030; }
  a:hover {
    color: #303030;
    border-bottom: 0.2em solid #C4C4C4; }

/**
 * Blockquotes
 */
blockquote {
  color: #303030;
  border-left: 4px solid #C4C4C4;
  padding-left: 4px;
  font-size: 24.75px;
  letter-spacing: -1px;
  font-style: italic; }
  blockquote > :last-child {
    margin-bottom: 0; }

.full-page {
  min-height: 500px;
  min-height: 100vh;
  position: relative; }
  .full-page.title-page {
    background-color: #000;
    color: #fff; }
  .full-page.about {
    background-color: #fff; }
  .full-page.entries {
    background-color: #F7F7F7; }

.full-page.title-page h1 {
  font-size: 7vw;
  position: absolute;
  left: 6vw;
  top: 6vw;
  right: 6vw; }
.full-page.title-page .title-page-attribution {
  position: absolute;
  left: 6vw;
  bottom: 6vw;
  right: 6vw;
  color: #C4C4C4; }
  .full-page.title-page .title-page-attribution strong {
    color: #fff;
    font-weight: 600; }

@media screen and (max-width: 600px) {
  .full-page.title-page h1 {
    text-align: center;
    font-weight: 600;
    top: 12vw; }
  .full-page.title-page .title-page-attribution {
    font-size: 18px;
    text-align: center;
    bottom: 12vw; }
    .full-page.title-page .title-page-attribution strong {
      display: block; } }
.full-page.about {
  display: grid;
  grid-template-columns: 6vw 1fr 6vw;
  grid-template-rows: 6vw 1fr 6vw;
  align-items: center; }
  .full-page.about .about-container {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 2;
    grid-row-end: 3;
    display: flex;
    flex-direction: row;
    justify-content: space-between; }
  .full-page.about .about-title {
    width: 20%;
    font-weight: 900; }
  .full-page.about .about-content {
    width: 60%; }

@media screen and (max-width: 700px) {
  .full-page.about .about-container {
    flex-direction: column; }
  .full-page.about .about-title {
    width: 100%; }
  .full-page.about .about-content {
    width: 100%; } }
.full-page.entries .entry {
  display: grid;
  grid-template-columns: 6vw 1fr 1fr 1fr 1fr 1fr 6vw;
  border-top: 1px solid #C4C4C4;
  padding: 6vw 0; }
  .full-page.entries .entry .entry-meta {
    grid-column-start: 2;
    grid-column-end: 7;
    font-family: "Rubik", "Arial", sans-serif;
    font-size: 16px;
    margin-bottom: 8px; }
    .full-page.entries .entry .entry-meta .entry-date {
      font-weight: 400; }
  .full-page.entries .entry .entry-title {
    grid-column-start: 2;
    grid-column-end: 7;
    font-weight: 900;
    font-size: 44px;
    letter-spacing: -0.015em;
    line-height: 1.3;
    margin-bottom: 32px; }
  .full-page.entries .entry .entry-content {
    grid-column-start: 2;
    grid-column-end: 5; }
  .full-page.entries .entry .entry-sidebar {
    padding-left: 48px;
    font-size: 18px;
    grid-column-start: 5;
    grid-column-end: 7; }
    .full-page.entries .entry .entry-sidebar p {
      margin-bottom: 8px; }
  .full-page.entries .entry .entry-sidebar-group {
    margin-bottom: 48px; }
    .full-page.entries .entry .entry-sidebar-group:last-child {
      margin-bottom: 0; }
  .full-page.entries .entry .entry-sidebar-title {
    text-transform: uppercase;
    font-family: "Rubik", "Arial", sans-serif;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1.2px;
    margin-bottom: 8px; }

@media screen and (max-width: 600px) {
  .full-page.entries .entry .entry-title {
    font-size: 37.4px; }
  .full-page.entries .entry .entry-content {
    grid-column-start: 2;
    grid-column-end: 7; }
  .full-page.entries .entry .entry-sidebar {
    grid-column-start: 2;
    grid-column-end: 7;
    padding-left: 0;
    font-size: 22px; }
  .full-page.entries .entry .entry-sidebar-group {
    margin: 32px 0; } }
@media screen and (max-width: 500px) {
  .full-page.entries .entry .entry-meta {
    font-size: 14px; }
  .full-page.entries .entry .entry-title {
    font-size: 33px;
    margin-bottom: 16px; }
  .full-page.entries .entry .entry-content {
    font-size: 18px; }
  .full-page.entries .entry .entry-sidebar {
    font-size: 18px; } }
.page-about .about-navigation {
  border-top: 3px solid #303030; }
  .page-about .about-navigation .about-navigation-title {
    font-weight: 900;
    font-size: 44px;
    letter-spacing: -0.015em;
    line-height: 1.3; }

@media screen and (max-width: 700px) {
  .about-container {
    padding: 6vw; } }
@media screen and (max-width: 450px) {
  .page-about .about-navigation .about-navigation-title {
    font-size: 30.8px; }
  .page-about .about-navigation .about-navigation-return {
    font-size: 18px; }
  .page-about .about-content {
    font-size: 18px; } }
@media screen and (min-width: 700px) {
  .page-about .about-navigation {
    width: 35vw;
    position: fixed;
    left: 6vw;
    top: 6vw;
    bottom: 6vw; }
    .page-about .about-navigation .about-navigation-title {
      position: absolute;
      top: 16px;
      left: 0; }
    .page-about .about-navigation .about-navigation-return {
      position: absolute;
      left: 0;
      bottom: 0; }
  .page-about .about-content {
    position: absolute;
    right: 6vw;
    top: 6vw;
    padding-bottom: 6vw;
    left: 46vw; }

  .mobile-only {
    display: none; } }
@media screen and (min-width: 700px) and (max-width: 900px) {
  .page-about .about-navigation .about-navigation-title {
    font-size: 30.8px; }
  .page-about .about-navigation .about-navigation-return {
    font-size: 18px; }
  .page-about .about-content {
    font-size: 18px; } }
