body {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  letter-spacing: 1.9px;
  /* font-family: monospace; */
  font-size: 0.875rem;
  color: #222;
  padding: 1rem;
  margin: 0;
  font-variant-ligatures: none; /* override safari ugly 'fi' rendering */
  line-height: 1.5;

  display: flex;
  flex-direction: column;
  min-width: 100vw;
  min-height: 100vh;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;

}

header h1 { /* only there for pointless SEO lol */
  opacity: 0;
  font-size: 3px;
}

header h2 {
  margin-top: 3rem;
  font-size: 0.875rem;
  font-weight: normal;
  font-style: italic;
  text-align: center;
}

header img {
  width: 250px;
  max-width: 90vw;
}

table {
  margin: 3rem 0;
}

tr.tba {
  display: none; /* for now */
  opacity: 0.55;
}

td { padding: 0.5rem 1.75rem; }

td.date {
  text-align: center;
  padding-left: 0;
}

td.project {
  text-transform: uppercase;
}

td.ticket-link {
  transform: rotate(-11deg);
  padding-right: 0;
}

a {
  text-decoration: none;
  padding-bottom: 2px;
}

a:visited {
  color: blue;
}

a:hover,
a:visited:hover  {
  color: #2da357 !important;
  border-bottom: 1px solid #2da357;
}

p.more-coming {
  text-align: center;
}

td.location-and-venue {
  display: none;
}

footer img { /* same as front page */
  width: 28px;
  height: 56px;
  margin-top: 3rem;
}

/* SMALL SCREENS */

@media screen and (max-width: 768px) {
  body {
    font-size: 11px;
    justify-content: flex-start;
  }
  td {
    padding: 0.5rem;
  }
  td.ticket-link a:hover {
    color: blue;
    border-bottom: none;
  }
  td.location-and-venue {
    display: table-cell;
  }
  td.location, td.venue { display: none; }
}
