* {
  box-sizing: border-box; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

html, body {
  height: 100%; }

a img {
  border: none; }

blockquote {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

html {
  font-size: 75%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }
  @media screen and (min-width: 40em) {
    html {
      font-size: 87.5%; } }
  @media screen and (min-width: 50em) {
    html {
      font-size: 93.75%; } }
  @media screen and (min-width: 64em) {
    html {
      font-size: 106.25%; } }
  @media screen and (min-width: 100em) {
    html {
      font-size: 118.75%; } }

body {
  font-size: 1.33333rem;
  font-family: Roboto Slab, serif;
  font-style: normal;
  font-weight: 400;
  line-height: 2rem; }
  @media screen and (min-width: 40em) {
    body {
      font-size: 1.21429rem; } }
  @media screen and (min-width: 50em) {
    body {
      font-size: 1.2rem; } }
  @media screen and (min-width: 64em) {
    body {
      font-size: 1.17647rem; } }
  @media screen and (min-width: 100em) {
    body {
      font-size: 1.15789rem; } }

a {
  color: #3F940E;
  text-decoration: none;
  transition: color .1s, background-color .1s; }
  a:hover, a:active, a:focus {
    color: #61b630;
    text-decoration: none; }

.typeset p a, .typeset li a {
  background-image: linear-gradient(to bottom, transparent 50%, #69ea1e 50%);
  background-position: 0 93%;
  background-repeat: repeat-x;
  background-size: 100% 0.15rem;
  text-shadow: 0.1rem 0 #F1F1F1, 0.15rem 0 #F1F1F1, -0.1rem 0 #F1F1F1, -0.15rem 0 #F1F1F1; }
  .typeset p a:hover, .typeset p a:active, .typeset p a:focus, .typeset li a:hover, .typeset li a:active, .typeset li a:focus {
    background-image: linear-gradient(to bottom, transparent 50%, #98da72 50%); }

.typeset p {
  line-height: 2rem;
  margin-bottom: 1.43999rem;
  padding-top: 0.56001rem;
  font-feature-settings: 'kern', 'onum', 'liga'; }
  @media screen and (min-width: 40em) {
    .typeset p {
      margin-bottom: 1.4007rem;
      padding-top: 0.5993rem; } }
  @media screen and (min-width: 50em) {
    .typeset p {
      margin-bottom: 1.39599rem;
      padding-top: 0.60401rem; } }
  @media screen and (min-width: 64em) {
    .typeset p {
      margin-bottom: 1.38823rem;
      padding-top: 0.61177rem; } }
  @media screen and (min-width: 100em) {
    .typeset p {
      margin-bottom: 1.3821rem;
      padding-top: 0.6179rem; } }

.typeset h1, .typeset h2, .typeset h3, .typeset h4, .typeset h5, .typeset h6 {
  color: #2E2E2E;
  font-family: Hammersmith One, sans-serif;
  font-feature-settings: 'dlig', 'liga', 'lnum', 'kern';
  font-style: normal;
  font-weight: 400; }

.typeset h1, .typeset .alpha {
  line-height: 3rem;
  font-size: 2.33333rem;
  margin-bottom: 0.26999rem;
  padding-top: 0.73001rem; }
  @media screen and (min-width: 40em) {
    .typeset h1, .typeset .alpha {
      font-size: 2.14286rem;
      margin-bottom: 0.20713rem;
      padding-top: 0.79287rem; } }
  @media screen and (min-width: 50em) {
    .typeset h1, .typeset .alpha {
      font-size: 2.13333rem;
      margin-bottom: 0.20399rem;
      padding-top: 0.79601rem; } }
  @media screen and (min-width: 64em) {
    .typeset h1, .typeset .alpha {
      font-size: 2.35294rem;
      margin-bottom: 0.27646rem;
      padding-top: 0.72354rem; } }
  @media screen and (min-width: 100em) {
    .typeset h1, .typeset .alpha {
      font-size: 2.63158rem;
      margin-bottom: 0.36841rem;
      padding-top: 0.63159rem; } }

.typeset h2, .typeset .beta {
  line-height: 3rem;
  font-size: 2.08333rem;
  margin-bottom: 0.18749rem;
  padding-top: 0.81251rem; }
  @media screen and (min-width: 40em) {
    .typeset h2, .typeset .beta {
      font-size: 1.9rem;
      margin-bottom: 0.12699rem;
      padding-top: 0.87301rem; } }
  @media screen and (min-width: 50em) {
    .typeset h2, .typeset .beta {
      font-size: 1.87333rem;
      margin-bottom: 0.11819rem;
      padding-top: 0.88181rem; } }
  @media screen and (min-width: 64em) {
    .typeset h2, .typeset .beta {
      font-size: 2.08824rem;
      margin-bottom: 0.18911rem;
      padding-top: 0.81089rem; } }
  @media screen and (min-width: 100em) {
    .typeset h2, .typeset .beta {
      font-size: 2.31053rem;
      margin-bottom: 0.26246rem;
      padding-top: 0.73754rem; } }

.typeset h3, .typeset .gamma {
  line-height: 3rem;
  font-size: 1.86667rem;
  margin-bottom: 0.11599rem;
  padding-top: 0.88401rem; }
  @media screen and (min-width: 40em) {
    .typeset h3, .typeset .gamma {
      font-size: 1.71429rem;
      margin-bottom: 0.0657rem;
      padding-top: 0.9343rem; } }
  @media screen and (min-width: 50em) {
    .typeset h3, .typeset .gamma {
      font-size: 1.70667rem;
      margin-bottom: 0.06319rem;
      padding-top: 0.93681rem; } }
  @media screen and (min-width: 64em) {
    .typeset h3, .typeset .gamma {
      font-size: 1.76471rem;
      margin-bottom: 0.08234rem;
      padding-top: 0.91766rem; } }
  @media screen and (min-width: 100em) {
    .typeset h3, .typeset .gamma {
      font-size: 1.85789rem;
      margin-bottom: 0.1131rem;
      padding-top: 0.8869rem; } }

.typeset h4, .typeset .delta {
  line-height: 2rem;
  font-size: 1.66667rem;
  margin-bottom: -0.45001rem;
  padding-top: 0.45001rem; }
  @media screen and (min-width: 40em) {
    .typeset h4, .typeset .delta {
      font-size: 1.52143rem;
      margin-bottom: -0.49794rem;
      padding-top: 0.49794rem; } }
  @media screen and (min-width: 50em) {
    .typeset h4, .typeset .delta {
      font-size: 1.5rem;
      margin-bottom: -0.50501rem;
      padding-top: 0.50501rem; } }
  @media screen and (min-width: 64em) {
    .typeset h4, .typeset .delta {
      font-size: 1.57059rem;
      margin-bottom: -0.48172rem;
      padding-top: 0.48172rem; } }
  @media screen and (min-width: 100em) {
    .typeset h4, .typeset .delta {
      font-size: 1.63684rem;
      margin-bottom: -0.45985rem;
      padding-top: 0.45985rem; } }

.typeset h5, .typeset .epsilon {
  line-height: 2rem;
  font-size: 1.49167rem;
  margin-bottom: -0.50776rem;
  padding-top: 0.50776rem; }
  @media screen and (min-width: 40em) {
    .typeset h5, .typeset .epsilon {
      font-size: 1.37143rem;
      margin-bottom: -0.54744rem;
      padding-top: 0.54744rem; } }
  @media screen and (min-width: 50em) {
    .typeset h5, .typeset .epsilon {
      font-size: 1.36667rem;
      margin-bottom: -0.54901rem;
      padding-top: 0.54901rem; } }
  @media screen and (min-width: 64em) {
    .typeset h5, .typeset .epsilon {
      font-size: 1.32353rem;
      margin-bottom: -0.56325rem;
      padding-top: 0.56325rem; } }
  @media screen and (min-width: 100em) {
    .typeset h5, .typeset .epsilon {
      font-size: 1.31579rem;
      margin-bottom: -0.5658rem;
      padding-top: 0.5658rem; } }

.typeset h6, .typeset .zeta {
  line-height: 2rem;
  font-size: 1.33333rem;
  margin-bottom: -0.56001rem;
  padding-top: 0.56001rem; }
  @media screen and (min-width: 40em) {
    .typeset h6, .typeset .zeta {
      font-size: 1.21429rem;
      margin-bottom: -0.5993rem;
      padding-top: 0.5993rem; } }
  @media screen and (min-width: 50em) {
    .typeset h6, .typeset .zeta {
      font-size: 1.2rem;
      margin-bottom: -0.60401rem;
      padding-top: 0.60401rem; } }
  @media screen and (min-width: 64em) {
    .typeset h6, .typeset .zeta {
      font-size: 1.17647rem;
      margin-bottom: -0.61177rem;
      padding-top: 0.61177rem; } }
  @media screen and (min-width: 100em) {
    .typeset h6, .typeset .zeta {
      font-size: 1.15789rem;
      margin-bottom: -0.6179rem;
      padding-top: 0.6179rem; } }

.typeset ul, .typeset ol {
  line-height: 2rem;
  margin-bottom: 1.43999rem;
  padding-top: 0.56001rem; }
  @media screen and (min-width: 40em) {
    .typeset ul, .typeset ol {
      margin-bottom: 1.4007rem;
      padding-top: 0.5993rem; } }
  @media screen and (min-width: 50em) {
    .typeset ul, .typeset ol {
      margin-bottom: 1.39599rem;
      padding-top: 0.60401rem; } }
  @media screen and (min-width: 64em) {
    .typeset ul, .typeset ol {
      margin-bottom: 1.38823rem;
      padding-top: 0.61177rem; } }
  @media screen and (min-width: 100em) {
    .typeset ul, .typeset ol {
      margin-bottom: 1.3821rem;
      padding-top: 0.6179rem; } }
  .typeset ul li, .typeset ol li {
    font-feature-settings: 'kern', 'onum', 'liga';
    margin-left: 2rem; }
    @media screen and (min-width: 40em) {
      .typeset ul li, .typeset ol li {
        margin-left: 0; } }
    .typeset ul li ol, .typeset ul li ul, .typeset ol li ol, .typeset ol li ul {
      padding-top: 1rem;
      margin-bottom: 1rem;
      margin-left: 2rem; }

.typeset ol {
  list-style-type: none; }
  .typeset ol li {
    counter-increment: top-level; }
    .typeset ol li:before {
      content: counter(top-level) ".";
      font-feature-settings: 'lnum', 'tnum';
      margin-left: -3rem;
      position: absolute;
      text-align: right;
      width: 2em; }
    .typeset ol li ul li:before {
      content: ''; }
    .typeset ol li ul li ol li {
      counter-increment: alt-level; }
      .typeset ol li ul li ol li:before {
        content: counter(alt-level) "."; }
    .typeset ol li ol li {
      counter-increment: sub-level; }
      .typeset ol li ol li:before {
        content: counter(top-level) "." counter(sub-level); }
      .typeset ol li ol li ul li:before {
        content: ''; }
      .typeset ol li ol li ol li {
        counter-increment: sub-sub-level; }
        .typeset ol li ol li ol li:before {
          content: counter(top-level) "." counter(sub-level) "." counter(sub-sub-level); }

.typeset dl {
  line-height: 2rem;
  margin-bottom: 1.43999rem;
  padding-top: 0.56001rem; }
  @media screen and (min-width: 40em) {
    .typeset dl {
      margin-bottom: 1.4007rem;
      padding-top: 0.5993rem; } }
  @media screen and (min-width: 50em) {
    .typeset dl {
      margin-bottom: 1.39599rem;
      padding-top: 0.60401rem; } }
  @media screen and (min-width: 64em) {
    .typeset dl {
      margin-bottom: 1.38823rem;
      padding-top: 0.61177rem; } }
  @media screen and (min-width: 100em) {
    .typeset dl {
      margin-bottom: 1.3821rem;
      padding-top: 0.6179rem; } }
  .typeset dl dt, .typeset dl dd {
    font-feature-settings: 'kern', 'onum', 'liga';
    margin-left: 2rem; }
    @media screen and (min-width: 40em) {
      .typeset dl dt, .typeset dl dd {
        margin-left: 0; } }
  .typeset dl dt {
    font-weight: 700; }
  .typeset dl dd + dt {
    padding-top: 1rem; }

.typeset table {
  line-height: 2rem;
  font-size: 1.19167rem;
  margin-bottom: -0.60676rem;
  padding-top: 0.60676rem;
  font-family: Hammersmith One, sans-serif;
  font-feature-settings: 'liga', 'lnum', 'tnum', 'kern';
  font-style: normal;
  font-weight: 400;
  width: 100%; }
  @media screen and (min-width: 40em) {
    .typeset table {
      font-size: 1.09286rem;
      margin-bottom: -0.63937rem;
      padding-top: 0.63937rem; } }
  @media screen and (min-width: 50em) {
    .typeset table {
      font-size: 1.08667rem;
      margin-bottom: -0.64141rem;
      padding-top: 0.64141rem; } }
  @media screen and (min-width: 64em) {
    .typeset table {
      font-size: 0.99412rem;
      margin-bottom: -0.67195rem;
      padding-top: 0.67195rem; } }
  @media screen and (min-width: 100em) {
    .typeset table {
      font-size: 0.92632rem;
      margin-bottom: -0.69433rem;
      padding-top: 0.69433rem; } }
  .typeset table thead th {
    line-height: 2rem;
    font-size: 1.33333rem;
    margin-bottom: -0.56001rem;
    padding-top: 0.56001rem;
    padding-bottom: 1px; }
    @media screen and (min-width: 40em) {
      .typeset table thead th {
        font-size: 1.21429rem;
        margin-bottom: -0.5993rem;
        padding-top: 0.5993rem; } }
    @media screen and (min-width: 50em) {
      .typeset table thead th {
        font-size: 1.2rem;
        margin-bottom: -0.60401rem;
        padding-top: 0.60401rem; } }
    @media screen and (min-width: 64em) {
      .typeset table thead th {
        font-size: 1.17647rem;
        margin-bottom: -0.61177rem;
        padding-top: 0.61177rem; } }
    @media screen and (min-width: 100em) {
      .typeset table thead th {
        font-size: 1.15789rem;
        margin-bottom: -0.6179rem;
        padding-top: 0.6179rem; } }

.typeset b, .typeset strong, .typeset .bold {
  font-weight: 700; }

.typeset em, .typeset i, .typeset .italic {
  font-style: italic; }

.typeset small, .typeset .caption {
  font-size: 1.06667rem;
  font-family: Hammersmith One, sans-serif;
  font-style: normal;
  font-weight: 400; }
  @media screen and (min-width: 40em) {
    .typeset small, .typeset .caption {
      font-size: 0.97143rem; } }
  @media screen and (min-width: 50em) {
    .typeset small, .typeset .caption {
      font-size: 0.96rem; } }
  @media screen and (min-width: 64em) {
    .typeset small, .typeset .caption {
      font-size: 0.88235rem; } }
  @media screen and (min-width: 100em) {
    .typeset small, .typeset .caption {
      font-size: 0.82105rem; } }

.typeset small {
  line-height: 1rem; }

.typeset .caption {
  line-height: 2rem;
  margin-bottom: 1.35199rem;
  padding-top: 0.64801rem;
  color: #A0ABAF; }
  @media screen and (min-width: 40em) {
    .typeset .caption {
      margin-bottom: 1.32056rem;
      padding-top: 0.67944rem; } }
  @media screen and (min-width: 50em) {
    .typeset .caption {
      margin-bottom: 1.31679rem;
      padding-top: 0.68321rem; } }
  @media screen and (min-width: 64em) {
    .typeset .caption {
      margin-bottom: 1.29117rem;
      padding-top: 0.70883rem; } }
  @media screen and (min-width: 100em) {
    .typeset .caption {
      margin-bottom: 1.27094rem;
      padding-top: 0.72906rem; } }

.typeset h1 + .caption, .typeset .alpha + .caption, .typeset h2 + .caption, .typeset .beta + .caption, .typeset h3 + .caption, .typeset .gamma + .caption {
  margin-top: -1rem; }

.typeset .delta + .caption, .typeset .epsilon + .caption, .typeset .zeta + .caption {
  margin-top: 0rem; }

.typeset blockquote p {
  border-left: 0.15rem solid #3F940E;
  font-style: italic;
  padding-left: 1rem;
  margin-bottom: 1.87999rem;
  padding-bottom: 0.56001rem; }
  @media screen and (min-width: 40em) {
    .typeset blockquote p {
      margin-bottom: 1.80142rem;
      padding-bottom: 0.5993rem; } }
  @media screen and (min-width: 50em) {
    .typeset blockquote p {
      margin-bottom: 1.79199rem;
      padding-bottom: 0.60401rem; } }
  @media screen and (min-width: 64em) {
    .typeset blockquote p {
      margin-bottom: 1.77646rem;
      padding-bottom: 0.61177rem; } }
  @media screen and (min-width: 100em) {
    .typeset blockquote p {
      margin-bottom: 1.7642rem;
      padding-bottom: 0.6179rem; } }

@media screen and (min-width: 40em) {
  .typeset blockquote {
    margin-left: -1rem; } }

.typeset hr {
  background-image: linear-gradient(to bottom, transparent 50%, #A0ABAF 50%);
  background-position: 0 50%;
  background-repeat: repeat-x;
  background-size: 100% 0.15rem;
  border: 0;
  margin: 0;
  padding-bottom: 3rem;
  padding-top: 3rem; }

.typeset code, .typeset pre {
  background-color: #FFFFFF;
  font-family: Menlo, monospace; }

.typeset pre {
  display: block;
  margin-bottom: 2rem;
  padding: 1rem;
  white-space: pre;
  white-space: pre-wrap;
  word-break: break-all;
  word-wrap: break-word; }

.typeset code {
  font-size: 1.06667rem;
  line-height: 1rem; }
  @media screen and (min-width: 40em) {
    .typeset code {
      font-size: 0.97143rem; } }
  @media screen and (min-width: 50em) {
    .typeset code {
      font-size: 0.96rem; } }
  @media screen and (min-width: 64em) {
    .typeset code {
      font-size: 0.88235rem; } }
  @media screen and (min-width: 100em) {
    .typeset code {
      font-size: 0.82105rem; } }

.typeset .upper {
  font-kerning: normal;
  letter-spacing: 0.1rem;
  text-transform: uppercase; }

.typeset .small-caps {
  font-feature-settings: 'smcp', 'kern';
  font-kerning: normal;
  letter-spacing: 0.1rem; }

.typeset .lining-numerals {
  font-feature-settings: 'lnum', 'kern'; }

.typeset .oldstyle-numerals {
  font-feature-settings: 'onum', 'kern'; }

.section {
  margin: 0 auto;
  position: relative;
  width: 94%; }
  .section:before, .section:after {
    display: table;
    content: ""; }
  .section:after {
    clear: both; }
  @media screen and (min-width: 64em) {
    .section {
      max-width: 64.70588rem; } }
  @media screen and (min-width: 100em) {
    .section {
      max-width: 68.42105rem; } }

.single-measure {
  max-width: 41.66667rem;
  margin: 0 auto; }
  @media screen and (min-width: 40em) {
    .single-measure {
      max-width: 39.28571rem; } }
  @media screen and (min-width: 50em) {
    .single-measure {
      max-width: 40rem; } }
  @media screen and (min-width: 64em) {
    .single-measure {
      max-width: 40rem; } }
  @media screen and (min-width: 100em) {
    .single-measure {
      max-width: 39.47368rem; } }

.column {
  max-width: 41.66667rem;
  margin: 0 auto;
  width: 100%; }
  @media screen and (min-width: 40em) {
    .column {
      float: left;
      margin: initial;
      max-width: initial;
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media screen and (min-width: 64em) {
    .column {
      padding-left: 2rem;
      padding-right: 2rem; } }

@media screen and (min-width: 40em) {
  .column--duo {
    width: 50%; }
    .column--duo:nth-of-type(2n+3) {
      clear: left; }
    .column--duo:nth-of-type(n+3) {
      margin-top: 3rem; } }

@media screen and (min-width: 40em) {
  .column--trio {
    width: 33.333%; }
    .column--trio:nth-of-type(3n+4) {
      clear: left; }
    .column--trio:nth-of-type(n+4) {
      margin-top: 3rem; } }

@media screen and (min-width: 40em) {
  .column--quad {
    width: 50%; } }

@media screen and (min-width: 50em) {
  .column--quad {
    width: 25%; } }

@media screen and (min-width: 40em) {
  .column--main {
    max-width: 65%; } }

@media screen and (min-width: 50em) {
  .column--main {
    max-width: 65%; } }

@media screen and (min-width: 64em) {
  .column--main {
    max-width: 65%; } }

@media screen and (min-width: 100em) {
  .column--main {
    max-width: 63.53846%; } }

@media screen and (min-width: 40em) {
  .column--sidebar {
    max-width: 35%;
    padding-right: 2rem; } }

@media screen and (min-width: 50em) {
  .column--sidebar {
    max-width: 35%; } }

@media screen and (min-width: 64em) {
  .column--sidebar {
    max-width: 35%;
    padding-right: 4rem; } }

@media screen and (min-width: 100em) {
  .column--sidebar {
    max-width: 36.46154%; } }

@media screen and (min-width: 40em) {
  .column--main + .column--sidebar {
    padding-left: 2rem;
    padding-right: 1rem; } }

@media screen and (min-width: 64em) {
  .column--main + .column--sidebar {
    padding-left: 4rem;
    padding-right: 2rem; } }

@media screen and (min-width: 64em) {
  .column--trio p,
  .column--quad p,
  .column--sidebar p {
    line-height: 2rem;
    font-size: 0.99412rem;
    margin-bottom: 1.32805rem;
    padding-top: 0.67195rem; }
  .column--trio li,
  .column--quad li,
  .column--sidebar li {
    font-size: 0.99412rem; } }

@media screen and (min-width: 100em) {
  .column--trio p,
  .column--quad p,
  .column--sidebar p {
    line-height: 2rem;
    font-size: 0.92632rem;
    margin-bottom: 1.30567rem;
    padding-top: 0.69433rem; }
  .column--trio li,
  .column--quad li,
  .column--sidebar li {
    font-size: 0.92632rem; } }

@media screen and (min-width: 40em) {
  .column--right {
    max-width: 65%;
    margin-left: 35%; } }

@media screen and (min-width: 50em) {
  .column--right {
    max-width: 65%;
    margin-left: 35%; } }

@media screen and (min-width: 64em) {
  .column--right {
    max-width: 65%;
    margin-left: 35%; } }

@media screen and (min-width: 100em) {
  .column--right {
    max-width: 63.53846%;
    margin-left: 36.46154%; } }

@media screen and (min-width: 40em) {
  .column--right .sidenote {
    max-width: 35%;
    left: 0;
    padding-left: 1rem;
    padding-right: 2rem;
    position: absolute; } }

@media screen and (min-width: 50em) {
  .column--right .sidenote {
    max-width: 35%; } }

@media screen and (min-width: 64em) {
  .column--right .sidenote {
    max-width: 35%;
    padding-right: 4rem; } }

@media screen and (min-width: 100em) {
  .column--right .sidenote {
    max-width: 36.46154%;
    padding-left: 2rem; } }

@media screen and (min-width: 40em) {
  .column--left {
    max-width: 65%; } }

@media screen and (min-width: 50em) {
  .column--left {
    max-width: 65%; } }

@media screen and (min-width: 64em) {
  .column--left {
    max-width: 65%; } }

@media screen and (min-width: 100em) {
  .column--left {
    max-width: 63.53846%; } }

@media screen and (min-width: 40em) {
  .column--left .sidenote {
    max-width: 35%;
    left: 65%;
    padding-left: 2rem;
    padding-right: 1rem;
    position: absolute; } }

@media screen and (min-width: 50em) {
  .column--left .sidenote {
    max-width: 35%;
    left: 65%; } }

@media screen and (min-width: 64em) {
  .column--left .sidenote {
    max-width: 35%;
    left: 65%;
    padding-left: 4rem; } }

@media screen and (min-width: 100em) {
  .column--left .sidenote {
    max-width: 36.46154%;
    left: 63.53846%;
    padding-right: 2rem; } }

a {
  transition: 0.2s ease color; }

.button {
  background-color: #3F940E;
  color: white;
  border-radius: 0.25rem;
  cursor: pointer;
  padding: 0.75rem 1.25rem;
  font-size: 1.25rem;
  font-weight: bold;
  display: inline-block;
  font-family: Hammersmith One, sans-serif; }
  .button:hover, .button:focus {
    background-color: #277c00;
    color: white; }
  .button:active {
    background-color: #1d7200; }
  .button + .button {
    margin-left: 1rem; }
  .button.expand {
    width: 100%;
    padding-left: 0;
    padding-right: 0; }
  .button.icon-button {
    font-size: 1.5rem;
    background-image: none;
    text-align: center;
    text-shadow: none; }
    .button.icon-button:hover, .button.icon-button:active, .button.icon-button:focus {
      background-image: none; }

.typeset code {
  padding: 0.25em 0.5em;
  border-radius: 0.25em; }

.typeset pre {
  overflow-x: auto;
  overflow-y: hidden;
  white-space: pre; }

body,
.page-scoper {
  background-color: #F1F1F1;
  color: #333333; }

body,
.page-scoper,
.page-header {
  min-width: 320px; }

.bg-cave, .bg-woods {
  background-size: cover; }

.bg-cave {
  background-image: url("//res.cloudinary.com/dslky0gsj/image/upload/v1466049961/cave_cc2mvp.jpg");
  background-position: bottom center; }

.bg-woods {
  background-image: url("//res.cloudinary.com/dslky0gsj/image/upload/v1466563020/woods_g23e36.jpg");
  background-position: center center; }

.page-scoper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  transition: padding-top 1s ease; }
  .disable-transition .page-scoper {
    transition: none; }
  .nav-active .page-scoper {
    transition: padding-top 0.2s ease;
    padding-top: 60px; }
    @media screen and (min-width: 40em) {
      .nav-active .page-scoper {
        padding-top: 70px; } }
    @media screen and (min-width: 50em) {
      .nav-active .page-scoper {
        padding-top: 75px; } }

.page-module {
  padding: 3rem 1rem; }
  @media screen and (min-width: 40em) {
    .page-module {
      padding: 5rem 2rem; } }
  @media screen and (min-width: 50em) {
    .page-module {
      padding: 7rem 3rem; } }

.page-header {
  position: fixed;
  top: -60px;
  left: 0;
  width: 100%;
  padding: 0.5rem 1.5rem;
  background-color: white;
  text-align: left;
  z-index: 100;
  transition: top 1s ease; }
  .disable-transition .page-header {
    transition: none; }
  @media screen and (min-width: 40em) {
    .page-header {
      text-align: left;
      top: -70px; } }
  @media screen and (min-width: 50em) {
    .page-header {
      top: -75px; } }
  @media screen and (min-width: 64em) {
    .page-header {
      top: -85px; } }
  @media screen and (min-width: 100em) {
    .page-header {
      top: -95px; } }
  .nav-active .page-header {
    top: 0 !important;
    transition: top 0.2s ease; }

nav li {
  display: inline-block;
  padding: 1rem 1.5rem 1rem 0;
  font-size: 0.9375rem;
  font-weight: bold; }

nav ul:last-child li:last-child {
  padding-right: 0; }

.social-list {
  float: left; }
  @media screen and (min-width: 40em) {
    .social-list {
      float: right; } }

.trigger {
  position: fixed;
  top: 1rem;
  right: 1rem;
  padding: 1rem;
  border-radius: 0.25rem;
  display: inline-block;
  width: 3rem;
  text-align: center;
  cursor: pointer;
  z-index: 2000;
  line-height: 0.75rem;
  transition: background-color 0.2s linear;
  opacity: 0;
  visibility: hidden;
  cursor: auto;
  pointer-events: none;
  background-color: rgba(255, 255, 255, 0.4);
  transition: visibility 0.3s, opacity 0.3s ease, background-color 0.2s linear; }
  .trigger:hover {
    background-color: rgba(255, 255, 255, 0.7); }
  .trigger:active {
    background-color: #c8c8c8;
    transition: none; }
  .show-trigger .trigger,
  .nav-active .trigger {
    cursor: pointer;
    visibility: visible;
    opacity: 1;
    pointer-events: auto; }
  @media screen and (min-width: 40em) {
    .trigger {
      cursor: pointer;
      left: 1rem;
      pointer-events: auto; }
      .trigger:hover {
        right: auto; }
      .trigger:active {
        transition: none; } }

.hero {
  height: 22rem; }
  @media screen and (min-width: 40em) {
    .hero {
      height: 32rem; } }

.plain-hero {
  height: 22rem; }

.hero-nav {
  width: 100%;
  position: absolute;
  top: 0;
  padding: 0.5rem 1rem 0;
  opacity: 1;
  visibility: visible;
  transition: visibility 0s, opacity 0.2s ease; }
  .hero-nav.ghost a {
    color: rgba(255, 255, 255, 0.75); }
    .hero-nav.ghost a:hover {
      color: #FFF; }
    .hero-nav.ghost a:active {
      color: rgba(255, 255, 255, 0.75); }
  @media screen and (min-width: 40em) {
    .hero-nav {
      padding-left: 0;
      padding-right: 0; } }
  .nav-active .hero-nav {
    visibility: hidden;
    opacity: 0; }

.page-footer {
  font-size: 75%; }
  .page-footer .typeset p a {
    text-shadow: none; }

.blog-post {
  font-size: 87.5%; }

.ghost * {
  color: white !important; }

h1 {
  font-size: 3rem; }

.vert-center,
.vert-center-parent:before {
  display: inline-block;
  vertical-align: middle;
  max-width: 97.5%; }

.vert-center-parent:before {
  height: 100%;
  content: " "; }

.grid-container {
  display: block;
  width: auto;
  max-width: 70rem; }

.row {
  width: auto;
  display: block;
  margin-left: -0.5rem;
  margin-right: -0.5rem; }
  .row:after {
    content: ' ';
    clear: both;
    display: block; }

.col {
  box-sizing: border-box;
  display: block;
  float: left;
  padding-left: 0.5rem;
  padding-right: 0.5rem; }

.small-1 {
  width: 8.33333%; }

.small-2 {
  width: 16.66667%; }

.small-3 {
  width: 25%; }

.small-4 {
  width: 33.33333%; }

.small-5 {
  width: 41.66667%; }

.small-6 {
  width: 50%; }

.small-7 {
  width: 58.33333%; }

.small-8 {
  width: 66.66667%; }

.small-9 {
  width: 75%; }

.small-10 {
  width: 83.33333%; }

.small-11 {
  width: 91.66667%; }

.small-12 {
  width: 100%; }

@media screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-3 {
    width: 25%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-6 {
    width: 50%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-9 {
    width: 75%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-12 {
    width: 100%; } }

@media screen and (min-width: 50em) {
  .large-1 {
    width: 8.33333%; }
  .large-2 {
    width: 16.66667%; }
  .large-3 {
    width: 25%; }
  .large-4 {
    width: 33.33333%; }
  .large-5 {
    width: 41.66667%; }
  .large-6 {
    width: 50%; }
  .large-7 {
    width: 58.33333%; }
  .large-8 {
    width: 66.66667%; }
  .large-9 {
    width: 75%; }
  .large-10 {
    width: 83.33333%; }
  .large-11 {
    width: 91.66667%; }
  .large-12 {
    width: 100%; } }

.end {
  float: right; }

.clearfix:before, .clearfix:after {
  display: table;
  content: ""; }

.clearfix:after {
  clear: both; }

.left {
  float: left; }

.right {
  float: right; }

.inline-block {
  display: inline-block; }

.inline {
  display: inline; }

.block {
  display: block; }

.rel {
  position: relative; }

.abs {
  position: absolute; }

.reset-list {
  padding-left: 0;
  margin-bottom: 0;
  list-style-type: none; }
  .reset-list li {
    margin-left: 0 !important; }

.reset-child-margins > *:first-child {
  margin-top: 0; }

.reset-child-margins > *:last-child {
  margin-bottom: 0; }

.margin-top-none {
  margin-top: 0; }

.padding-top-none {
  padding-top: 0 !important; }

.margin-top-tiny {
  margin-top: 0.5rem; }

.margin-left-small {
  margin-left: 0.75rem; }

.margin-right-small {
  margin-right: 0.75rem; }

.margin-bottom-large {
  margin-bottom: 3rem; }

.text-center {
  text-align: center; }

.height-full {
  height: 100%; }

.fa.icon-med {
  font-size: 0.75em; }

.fa.icon-small {
  font-size: 0.5em; }

.bg-white {
  background-color: white; }

.bg-grey {
  background-color: #999; }

/*

Orginal Style from ethanschoonover.com/solarized (c) Jeremy Hull <sourdrums@gmail.com>

*/
.hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  background: #fdf6e3;
  color: #657b83; }

.hljs-comment,
.hljs-quote {
  color: #93a1a1; }

/* Solarized Green */
.hljs-keyword,
.hljs-selector-tag,
.hljs-addition {
  color: #859900; }

/* Solarized Cyan */
.hljs-number,
.hljs-string,
.hljs-meta .hljs-meta-string,
.hljs-literal,
.hljs-doctag,
.hljs-regexp {
  color: #2aa198; }

/* Solarized Blue */
.hljs-title,
.hljs-section,
.hljs-name,
.hljs-selector-id,
.hljs-selector-class {
  color: #268bd2; }

/* Solarized Yellow */
.hljs-attribute,
.hljs-attr,
.hljs-variable,
.hljs-template-variable,
.hljs-class .hljs-title,
.hljs-type {
  color: #b58900; }

/* Solarized Orange */
.hljs-symbol,
.hljs-bullet,
.hljs-subst,
.hljs-meta,
.hljs-meta .hljs-keyword,
.hljs-selector-attr,
.hljs-selector-pseudo,
.hljs-link {
  color: #cb4b16; }

/* Solarized Red */
.hljs-built_in,
.hljs-deletion {
  color: #dc322f; }

.hljs-formula {
  background: #eee8d5; }

.hljs-emphasis {
  font-style: italic; }

.hljs-strong {
  font-weight: bold; }
