@font-face {
  font-family: "MDSystem";
  src: url("../css/fonts/MDSystem-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "MDSystemItalic";
  src: url("../css/fonts/MDSystem-Italic.woff2") format("woff2");
}
@font-face {
  font-family: "MDSystemMedium";
  src: url("../css/fonts/MDSystem-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "MDSystemBold";
  src: url("../css/fonts/MDSystem-Bold.woff2") format("woff2");
}
:root {
  --color-bg: white;
  --color-text: black;
  --color-text-muted: rgb(40, 40, 40);
  --color-rule: black;
  --color-surface: whitesmoke;
  --color-surface-strong: lightgray;
  --color-accent: salmon;
  --color-accent-strong: darksalmon;
  --color-on-accent: black;
  --color-pill-upcoming: rgb(255, 215, 215);
  --color-inverse-bg: black;
  --color-inverse-text: white;
  --color-wall-bg: silver;
  --color-wall-text: white;
  --color-veil: rgba(255, 255, 255, 0.4);
  --color-scrollbar: gray;
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme=light]) {
    --color-bg: rgb(36, 36, 36);
    --color-text: rgb(222, 222, 222);
    --color-text-muted: rgb(180, 180, 180);
    --color-rule: rgb(120, 120, 120);
    --color-surface: rgb(48, 48, 48);
    --color-surface-strong: rgb(72, 72, 72);
    --color-accent: salmon;
    --color-accent-strong: darksalmon;
    --color-on-accent: black;
    --color-pill-upcoming: rgb(122, 64, 64);
    --color-inverse-bg: rgb(222, 222, 222);
    --color-inverse-text: rgb(36, 36, 36);
    --color-wall-bg: rgb(46, 46, 46);
    --color-wall-text: rgb(74, 74, 74);
    --color-veil: rgba(0, 0, 0, 0.4);
    --color-scrollbar: rgb(120, 120, 120);
    color-scheme: dark;
  }
}
:root[data-theme=dark] {
  --color-bg: rgb(36, 36, 36);
  --color-text: rgb(222, 222, 222);
  --color-text-muted: rgb(180, 180, 180);
  --color-rule: rgb(120, 120, 120);
  --color-surface: rgb(48, 48, 48);
  --color-surface-strong: rgb(72, 72, 72);
  --color-accent: salmon;
  --color-accent-strong: darksalmon;
  --color-on-accent: black;
  --color-pill-upcoming: rgb(122, 64, 64);
  --color-inverse-bg: rgb(222, 222, 222);
  --color-inverse-text: rgb(36, 36, 36);
  --color-wall-bg: rgb(46, 46, 46);
  --color-wall-text: rgb(74, 74, 74);
  --color-veil: rgba(0, 0, 0, 0.4);
  --color-scrollbar: rgb(120, 120, 120);
  color-scheme: dark;
}

body {
  font-family: "MDSystem", sans-serif;
  background-color: var(--color-bg);
  color: var(--color-text);
}

input[type=text],
input[type=email],
input[type=search],
input[type=url],
input[type=password],
textarea,
select {
  background-color: var(--color-bg);
  color: var(--color-text);
  border-color: var(--color-rule);
}

.theme-toggle,
.support-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem 0.5rem;
  border: 1px solid var(--color-rule);
  border-radius: 4px;
  background-color: var(--color-bg);
  color: var(--color-text);
  font: inherit;
  font-size: 0.9rem;
  cursor: pointer;
  transition: background-color 0.2s ease;
  position: fixed;
  bottom: 1rem;
  z-index: 1002;
  writing-mode: vertical-rl;
  transform: rotate(180deg);
}
.theme-toggle:hover,
.support-toggle:hover {
  background-color: var(--color-accent-strong);
  color: var(--color-on-accent);
}
.theme-toggle .material-symbols-outlined,
.support-toggle .material-symbols-outlined {
  font-size: 1.2rem;
}
@media screen and (max-width: 600px) {
  .theme-toggle,
  .support-toggle {
    bottom: 0;
    width: 50%;
    justify-content: center;
    padding: 0.75rem 1rem;
    border-width: 1px 0 0;
    border-radius: 0;
    writing-mode: horizontal-tb;
    transform: none;
  }
}

.theme-toggle {
  right: 1rem;
}
@media screen and (max-width: 600px) {
  .theme-toggle {
    right: 0;
    border-left-width: 1px;
  }
}

.support-toggle {
  left: 1rem;
}
@media screen and (max-width: 600px) {
  .support-toggle {
    left: 0;
  }
}

.support-modal {
  box-sizing: border-box;
  width: min(40rem, 100% - 2rem);
  max-height: calc(100dvh - 2rem);
  padding: 2rem;
  overflow: auto;
  border: 1px solid var(--color-rule);
  border-radius: 4px;
  background-color: var(--color-bg);
  color: var(--color-text);
  line-height: 1.6;
  opacity: 0;
  transform: translateY(-100%);
  transition: transform 0.6s ease, opacity 0.6s ease, display 0.6s allow-discrete, overlay 0.6s allow-discrete;
}
.support-modal[open] {
  opacity: 1;
  transform: none;
}
@starting-style {
  .support-modal[open] {
    opacity: 0;
    transform: translateY(-100%);
  }
}
.support-modal > :not(.support-modal-close) {
  transition: transform 0.6s ease, opacity 0.6s ease;
}
@starting-style {
  .support-modal > :not(.support-modal-close) {
    opacity: 0;
    transform: translateY(-1rem);
  }
}
.support-modal > :nth-child(2) {
  transition-delay: 100ms;
}
.support-modal > :nth-child(3) {
  transition-delay: 170ms;
}
.support-modal > :nth-child(4) {
  transition-delay: 240ms;
}
.support-modal > :nth-child(5) {
  transition-delay: 310ms;
}
.support-modal > :nth-child(6) {
  transition-delay: 380ms;
}
.support-modal::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.6s ease, display 0.6s allow-discrete, overlay 0.6s allow-discrete;
}
.support-modal[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.6);
}
@starting-style {
  .support-modal[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .support-modal, .support-modal::backdrop,
  .support-modal > * {
    transition: none;
  }
  .support-modal {
    transform: none;
  }
}
.support-modal h2 {
  font-size: 1.4rem;
  margin: 0 2rem 1rem 0;
}
.support-modal p {
  max-width: none;
}
.support-modal p + p {
  text-indent: 0;
  margin-top: 1rem;
}
.support-modal p a {
  color: var(--color-accent);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.support-modal .support-modal-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.5rem;
}
.support-modal .support-modal-buttons .button {
  margin: 0;
  text-decoration: none;
}
.support-modal .support-modal-close {
  position: absolute;
  top: 0.75rem;
  right: 1rem;
  padding: 0.25rem;
  border: none;
  background: none;
  color: var(--color-text);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

a {
  color: var(--color-text);
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-title {
  font-family: "MDSystemBold", sans-serif;
  margin: 0 0 1rem 0;
  font-weight: normal;
  font-optical-sizing: 100;
}

b {
  font-family: "MDSystemBold", sans-serif;
  font-weight: normal;
}

p {
  line-height: 1.6;
  margin: 0;
  max-width: 65ch;
}
p + p {
  text-indent: 2rem;
}

i {
  font-family: "MDSystemItalic", sans-serif;
}

.site {
  min-height: 100dvh;
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: minmax(0, 1fr);
}

.site-header,
.site-main,
.site-footer {
  padding: 1rem 0;
}
@media screen and (max-width: 800px) {
  .site-header,
  .site-main,
  .site-footer {
    padding: 1rem;
  }
}

.site-header {
  display: grid;
  grid-template-columns: 1fr auto;
  justify-content: end;
  align-items: center;
  font-family: "MDSystemBold", sans-serif;
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
}
.site-header .site-title {
  font-size: 1.8rem;
  margin: 0;
}
.site-header {
  margin-bottom: 2rem;
}
.site-header .menu-toggle {
  background-color: var(--color-surface-strong);
  color: var(--color-text);
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  gap: 0.5rem;
  font-size: 0.9rem;
}
.site-header .nav-menu {
  gap: 1rem;
}
.site-header .nav-menu .current-menu-item {
  text-decoration: underline;
  text-underline-offset: 4px;
  color: var(--color-accent);
}

.site-footer {
  background-color: var(--color-surface);
  margin: 2rem 0 0;
  position: relative;
  z-index: 1001;
  display: grid;
  padding: 1rem;
  grid-template-columns: 1fr auto;
}
@media screen and (max-width: 600px) {
  .site-footer {
    padding-bottom: 10rem;
  }
}
.site-footer address {
  font-style: normal;
}
.site-footer .site-info {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
}
.site-footer .site-info .protected-email {
  display: inline-block;
  margin-top: 0.5rem;
}

.site-main {
  gap: 1rem;
}
.site-main.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

body.page-template-home-template {
  background-color: var(--color-wall-bg);
}

.site-main.home {
  padding: unset;
}
.site-main.home .grid-2 {
  display: grid;
  grid-template-columns: 1fr;
  min-height: 100dvh;
  row-gap: 0;
}
.site-main.home .grid-2 > .site-title,
.site-main.home .grid-2 > .site-title-repeat {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.site-main.home .grid-2 > .site-title {
  margin-top: 1rem;
}
.site-main.home .grid-2 > .site-title-repeat {
  height: 100dvh;
  contain: size;
}
.site-main.home .grid-2 > .issue {
  grid-column: 1;
  justify-self: center;
  width: 100%;
  max-width: 1200px;
  margin-top: calc(var(--wall-title, 25dvh) + var(--wall-row, 25dvh) + 4rem);
  margin-bottom: calc(var(--wall-row, 25dvh) + 4rem);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 600px) {
  .site-main.home .grid-2 > .issue {
    width: 100%;
    margin-top: calc(var(--wall-title, 10dvh) + 2 * var(--wall-row, 10dvh));
  }
}
.site-main.home .site-title,
.site-main.home .site-title-repeat .wall-row {
  color: var(--color-wall-text);
  display: block;
  width: 100%;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  line-height: 0.8;
}
.site-main.home .site-title-repeat {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}
.site-main.home .site-title-repeat .wall-row {
  font-family: "MDSystemBold", sans-serif;
  flex-shrink: 0;
}
.site-main.home .site-title-repeat .wall-row h1 {
  color: transparent;
  outline: var(--color-wall-text) 1px solid;
}

html.js-anim .site-main.home .site-title,
html.js-anim .site-main.home .site-title-repeat .wall-row {
  transition: transform 0.6s ease, opacity 0.6s ease;
  opacity: 0;
  transform: translateY(-100%);
}
html.js-anim .site-main.home .site-title.is-visible,
html.js-anim .site-main.home .site-title-repeat .wall-row.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  html.js-anim .site-main.home .site-title,
  html.js-anim .site-main.home .site-title-repeat .wall-row {
    transition: none;
    opacity: 1;
    transform: none;
  }
}
.article-card {
  border-bottom: 1px solid var(--color-rule);
  display: grid;
  flex: 1;
  padding: 1rem;
  transition: 0.2s ease;
  text-align: left !important;
}
.article-card header {
  display: flex;
  gap: 4rem;
  margin-bottom: 0;
}
.article-card h1 {
  margin: 0;
  font-size: 1.4rem;
  width: 100%;
  text-align: left !important;
}
.article-card .article-card-title {
  flex-direction: column;
  gap: 0rem;
  margin-bottom: 0.5rem;
}
.article-card .article-card-title h2,
.article-card .article-card-title h3 {
  margin: 0;
}
.article-card .article-subtitle {
  margin: 0;
  font-size: 1.1rem;
}
@media screen and (max-width: 600px) {
  .article-card {
    gap: 0.5rem;
  }
  .article-card h1 {
    font-size: 1.2rem;
  }
}
.article-card:hover {
  color: var(--color-accent);
  background-color: var(--color-surface);
}
.article-card:hover a {
  color: var(--color-accent);
}

.issue.is-coming-soon {
  overflow: clip;
}
.issue.is-coming-soon > .issue-header {
  filter: blur(5px);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.issue.is-coming-soon .coming-soon-label {
  position: sticky;
  top: 40dvh;
  z-index: 101;
  height: 0;
  width: 100%;
  max-width: none;
  margin: 0;
}
.issue.is-coming-soon .sep {
  display: inline-flex;
  width: 2rem;
}
.issue.is-coming-soon .coming-soon-badge {
  position: absolute;
  left: -15%;
  top: 3rem;
  rotate: 5deg;
  display: flex;
  overflow: hidden;
  padding: 1rem 0;
  width: 130%;
  border-radius: 4px;
  background-color: var(--color-text);
  color: var(--color-bg);
  border: 1px solid var(--color-inverse-text);
  font-family: "MDSystemBold", sans-serif;
  font-size: 1.4rem;
  line-height: 1.2;
  white-space: nowrap;
}
.issue.is-coming-soon .coming-soon-badge:nth-child(2) {
  top: 15rem;
  rotate: -4deg;
}
.issue.is-coming-soon .coming-soon-badge:nth-child(2) .coming-soon-ticker {
  animation-direction: reverse;
  animation-duration: 13s;
}
.issue.is-coming-soon .coming-soon-badge:nth-child(3) {
  top: 23rem;
  rotate: 1deg;
}
.issue.is-coming-soon .coming-soon-badge:nth-child(3) .coming-soon-ticker {
  animation-duration: 8s;
}
.issue.is-coming-soon .coming-soon-ticker {
  flex: none;
  padding-right: 1em;
  animation: coming-soon-ticker 10s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .issue.is-coming-soon .coming-soon-ticker {
    animation: none;
  }
}
.issue.is-coming-soon .coming-soon-date {
  font-family: "MDSystem", sans-serif;
  font-size: 0.9rem;
}

@keyframes coming-soon-ticker {
  to {
    transform: translateX(-100%);
  }
}
.issue-ribbon h1,
.sticky-header h1 {
  font-size: 1.2rem;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.issue-ribbon,
.sticky-header {
  background-color: var(--color-bg);
  color: var(--color-text);
  padding: 1rem;
  z-index: 100;
  border-bottom: 1px solid var(--color-rule);
  display: grid;
  grid-template-columns: 1fr auto;
  position: sticky;
  top: 0;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (max-width: 600px) {
  .issue-ribbon,
  .sticky-header {
    gap: 0.5rem;
  }
}
@media screen and (max-width: 400px) {
  .issue-ribbon,
  .sticky-header {
    display: flex;
    flex-direction: column;
  }
}
.issue-ribbon .issue-year,
.sticky-header .issue-year {
  display: block;
  font-size: 1rem;
}

.articles {
  display: grid;
  background-color: var(--color-bg);
  width: 100%;
  max-width: 1200px;
}

.description {
  grid-row: 1;
  background-color: var(--color-surface);
  padding: 1rem;
  border-bottom: 1px solid var(--color-rule);
}
@media screen and (max-width: 600px) {
  .description {
    grid-column: 1;
    grid-row: 1;
    padding: 0.5rem;
    font-size: 0.9rem;
  }
}
.description .button {
  background-color: var(--color-inverse-bg);
  color: var(--color-inverse-text);
  padding: 0.5rem 1rem;
  border-radius: 4px;
  align-items: center;
  justify-self: end;
  gap: 0.5rem;
  display: block;
  margin-top: 1rem;
  font-size: 0.9rem;
  width: -moz-fit-content;
  width: fit-content;
}

.page-header {
  max-width: 1200px;
  margin: 0 auto 4rem;
}
.page-header h1,
.page-header h2,
.page-header p {
  margin: 0;
}

.page-content {
  display: grid;
  grid-template-columns: 2fr 1fr;
  margin: 0 auto;
  gap: 1rem;
  max-width: 1200px;
}
@media screen and (max-width: 600px) {
  .page-content {
    grid-template-columns: 1fr;
  }
}
.page-content blockquote {
  margin: 0 0 1rem 2rem;
}
.page-content figure figcaption {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: var(--color-text-muted);
}
.page-content figure figcaption .smallcaps {
  margin-right: 1rem;
}
.page-content sup {
  font-weight: 800;
}
.page-content .footnotes {
  position: sticky;
  top: 0;
  padding: 1rem 1rem 4rem;
  margin: 0;
  font-size: 0.8rem;
  overflow: auto;
  max-height: 80dvh;
  height: -moz-fit-content;
  height: fit-content;
  scrollbar-width: thin;
  scrollbar-color: var(--color-scrollbar) var(--color-surface);
}
@media screen and (max-width: 600px) {
  .page-content .footnotes {
    position: static;
    border-left: none;
    border-top: 1px solid var(--color-rule);
    padding: 1rem 0;
    max-height: none;
  }
}
.page-content .footnotes ol {
  padding: 0;
  margin: 0;
}
.page-content .footnotes ol li {
  margin-bottom: 0rem;
  max-width: 400px;
  border: 1px solid var(--color-surface);
  padding: 0.5rem;
  color: var(--color-text-muted);
  list-style: none;
  counter-increment: footnote;
}
.page-content .footnotes ol li a {
  color: var(--color-accent);
}
.page-content .footnotes ol li:before {
  content: counter(footnote);
  color: var(--color-text);
  font-family: "MDSystemBold", sans-serif;
  display: inline-block;
  font-weight: normal;
  margin-right: 1rem;
}
.page-content .footnotes.sidenotes {
  position: relative;
  top: auto;
  padding: 0 0 0 1rem;
  max-height: none;
  overflow: visible;
}
.page-content .footnotes.sidenotes h2,
.page-content .footnotes.sidenotes a[href^="#fnref"] {
  display: none;
}
.page-content .footnotes.sidenotes ol li {
  position: absolute;
  left: 1rem;
  right: 0;
  line-height: 1.4;
}
.page-content .footnotes.sidenotes ol li:target {
  color: var(--color-text);
}
.page-content .footnotes.popup-notes {
  display: none;
}
.page-content .footnotes::-webkit-scrollbar {
  width: 8px;
}
.page-content .footnotes::-webkit-scrollbar-track {
  background: var(--color-surface);
}
.page-content .footnotes::-webkit-scrollbar-thumb {
  background: var(--color-scrollbar);
  border-radius: 4px;
}
.page-content .footnotes::-webkit-scrollbar-thumb:hover {
  background: darkgray;
}

.footnote-popup {
  inset: auto 1rem 1rem;
  width: auto;
  max-height: 50dvh;
  margin: 0;
  padding: 1rem 2.5rem 1rem 1rem;
  overflow: auto;
  border: 1px solid var(--color-rule);
  background-color: var(--color-bg);
  color: var(--color-text-muted);
  font-size: 0.9rem;
  line-height: 1.5;
}
.footnote-popup a {
  color: var(--color-accent);
}
.footnote-popup::backdrop {
  background-color: rgba(0, 0, 0, 0.2);
}
.footnote-popup .footnote-popup-number {
  color: var(--color-text);
  font-family: "MDSystemBold", sans-serif;
  margin-right: 1rem;
}
.footnote-popup .footnote-popup-close {
  position: absolute;
  top: 0.25rem;
  right: 0.5rem;
  padding: 0.25rem;
  border: none;
  background: none;
  color: var(--color-text);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.nav-links {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid var(--color-rule);
  padding: 1rem 0;
  max-width: 1200px;
  margin: 2rem auto;
}
@media screen and (max-width: 600px) {
  .nav-links {
    flex-direction: column;
    gap: 0.5rem;
  }
}
.nav-links .nav-subtitle {
  display: block;
}

.button,
.read-more {
  background-color: var(--color-surface);
  display: flex;
  place-content: center;
  color: var(--color-text);
  padding: 0.5rem 1rem;
  border-radius: 4px;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9rem;
  width: -moz-fit-content;
  width: fit-content;
  justify-self: end;
  transition: background-color 0.2s ease;
}
.button:hover,
.read-more:hover {
  background-color: var(--color-accent-strong);
  text-decoration: none;
  color: var(--color-on-accent);
}

.events {
  z-index: 1001;
  position: relative;
  max-width: 1200px;
  margin: 0 auto 4rem;
  width: 100%;
}
.events .events-grid {
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto 2rem;
}
.events .events-grid .event-card {
  background-color: var(--color-bg);
  padding: 1rem;
}

:root {
  --tec-font-family-sans-serif: "MDSystem", sans-serif;
  --tec-font-family-base: "MDSystem", sans-serif;
  --tec-color-text-primary: var(--color-text);
  --tec-color-accent-primary: var(--color-text);
  --tec-color-accent-primary-hover: var(--color-text-muted);
  --tec-color-accent-primary-active: var(--color-text);
  --tec-color-accent-primary-background: var(--color-surface);
  --tec-color-link-accent-hover: var(--color-accent-strong);
  --tec-color-border-default: var(--color-rule);
  --tec-color-border-secondary: var(--color-rule);
  --tec-color-border-active: var(--color-rule);
  --tec-color-background: var(--color-bg);
  --tec-color-background-secondary: var(--color-surface);
  --tec-color-background-secondary-hover: var(--color-surface-strong);
  --tec-color-text-secondary: var(--color-text-muted);
  --tec-color-icon-primary: var(--color-text);
  --tec-color-icon-primary-alt: var(--color-text-muted);
  --tec-color-icon-active: var(--color-text);
  --tec-color-icon-focus: var(--color-accent);
}

.tribe-common .tribe-common-h1,
.tribe-common .tribe-common-h2,
.tribe-common .tribe-common-h3,
.tribe-common .tribe-common-h4,
.tribe-common .tribe-common-h5,
.tribe-common .tribe-common-h6,
.tribe-common .tribe-common-h7,
.tribe-common .tribe-common-h8,
.tribe-common .tribe-common-b1--bold,
.tribe-common .tribe-common-b2--bold,
.tribe-common .tribe-common-b3--bold,
.tribe-common .tribe-common-c-btn,
.tribe-common .tribe-common-c-btn-border {
  font-family: "MDSystemBold", sans-serif;
  font-weight: normal;
}

.event-list-item .event-card {
  display: flex;
  padding: 1rem 0;
}

#tribe-events-pg-template {
  width: 100%;
  max-width: 1200px;
}

.event-layout {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 2rem;
  max-width: 1200px;
  margin: 0 auto 4rem;
}
@media screen and (max-width: 600px) {
  .event-layout {
    grid-template-columns: 1fr;
  }
}
.event-layout .event-copy img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 2rem;
}
.event-layout .event-info {
  position: sticky;
  top: 1rem;
  height: -moz-fit-content;
  height: fit-content;
  border-top: 1px solid var(--color-rule);
  padding-top: 1rem;
  font-size: 0.9rem;
}
@media screen and (max-width: 600px) {
  .event-layout .event-info {
    position: static;
    order: -1;
  }
}
.event-layout .event-info .event-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.event-layout .event-info .event-pills span {
  padding: 0.25rem 1rem;
  border-radius: 4px;
  color: var(--color-text-muted);
}
.event-layout .event-info .event-pills span.upcoming {
  background-color: var(--color-pill-upcoming);
}
.event-layout .event-info .event-pills span.past {
  background-color: var(--color-surface);
  border: 1px solid var(--color-rule);
  color: var(--color-text);
}
.event-layout .event-info dl {
  margin: 1rem 0 0;
}
.event-layout .event-info dt {
  font-family: "MDSystemBold", sans-serif;
  padding-top: 1rem;
  border-top: 1px solid var(--color-rule);
}
.event-layout .event-info dd {
  margin: 0.25rem 0 1rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}
.event-layout .event-info address {
  font-style: normal;
}
.event-layout .event-info .event-calendar-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

#tribe-events-footer {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem 0;
  border-top: 1px solid var(--color-rule);
}
#tribe-events-footer .tribe-events-sub-nav {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
#tribe-events-footer .tribe-events-nav-next {
  text-align: right;
}
#tribe-events-footer a {
  font-family: "MDSystemBold", sans-serif;
}

.single-event .page-header .page-title {
  line-height: 1.1;
}

.about {
  z-index: 1001;
  position: relative;
  max-width: 1200px;
  margin: 0 auto var(--wall-title, 25dvh);
  width: 100%;
}
.about .inner {
  padding: 2rem 1rem;
  background-color: var(--color-surface);
  width: 100%;
}
.about .read-more {
  margin-top: 1rem;
}

.read-more,
.button {
  color: var(--color-inverse-text);
  text-decoration: none;
  padding: 0.5rem 1rem;
  background-color: var(--color-inverse-bg);
}

.event-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-bottom: 1px solid var(--color-rule);
  max-width: 100%;
  flex: 1;
  padding: 1rem 0;
  gap: 1rem;
  transition: 0.2s ease;
}
@media screen and (max-width: 600px) {
  .event-card {
    grid-template-columns: 1fr;
  }
}
.event-card .event-status,
.event-card .event-date,
.event-card .event-time {
  padding: 0.25rem 1rem;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 4px;
}
.event-card .event-status.upcoming,
.event-card .event-date.upcoming,
.event-card .event-time.upcoming {
  background-color: var(--color-pill-upcoming);
}
.event-card .event-status.past,
.event-card .event-date.past,
.event-card .event-time.past {
  background-color: var(--color-surface);
  border: 1px solid var(--color-rule);
  color: var(--color-text);
}
.event-card header {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 0;
  width: 100%;
  padding-right: 1rem;
}
@media screen and (max-width: 600px) {
  .event-card header {
    border-right: none;
    padding-right: 0;
  }
}
.event-card header span {
  display: block;
  font-size: 0.9rem;
  color: var(--color-text-muted);
}
.event-card h1 {
  margin: 0;
  font-size: 1.4rem;
}
.event-card .entry-content {
  padding: 0;
  margin: 0;
}
.event-card .entry-content p {
  margin: 0;
}
.event-card .button {
  margin-top: auto;
}

.flex {
  display: flex;
  gap: 1rem;
}
.flex.space-between {
  justify-content: space-between;
}

.card-artist {
  padding: 1rem;
  background-color: var(--color-surface);
  z-index: 0;
  font-family: "MDSystemMedium", sans-serif;
  font-weight: normal;
  font-size: 0.9rem;
  display: grid;
  border-bottom: 1px solid var(--color-rule);
  place-content: center;
  cursor: zoom-in;
}
.card-artist .featured-image {
  grid-row: 1;
  grid-column: 1;
  max-width: 100%;
  height: auto;
  z-index: 1;
  filter: grayscale(1);
}
.card-artist header {
  display: grid;
  place-content: flex-end;
  transition: 0.2s ease;
}
.card-artist:hover header {
  opacity: 1;
  background-color: var(--color-veil);
}
@media screen and (max-width: 600px) {
  .card-artist {
    grid-column: span 1;
    grid-row: span 1;
    place-content: start;
  }
}

.image-modal {
  max-width: calc(100vw - 2rem);
  max-height: calc(100dvh - 2rem);
  padding: 0;
  border: none;
  background: none;
  overflow: visible;
}
.image-modal img {
  display: block;
  max-width: calc(100vw - 2rem);
  max-height: calc(100dvh - 2rem);
  width: auto;
  height: auto;
}
.image-modal::backdrop {
  background-color: rgba(0, 0, 0, 0.8);
}
.image-modal .image-modal-close {
  position: absolute;
  top: 0.25rem;
  right: 0.5rem;
  padding: 0.25rem;
  border: none;
  background: none;
  color: white;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.6);
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
}

.entry-content p {
  text-wrap: pretty;
  hyphens: auto;
}

.entry-content p + p {
  text-indent: 1.5em;
  margin-top: 0;
}

.entry-content :is(h2, h3, hr, blockquote) + p {
  text-indent: 0;
}

.page-content h2,
.page-content h3,
.page-content hr {
  margin-top: 1em;
  margin-bottom: 0.5em;
}
.page-content blockquote {
  font-style: normal !important;
  margin-top: 1em;
  margin-bottom: 0.5em;
}

.standfirst {
  font-size: 1.25em;
}

.byline,
.bio {
  font-size: 0.875em;
}

.pull-quote {
  font-size: 1.5em;
}

.question {
  font-weight: 600;
}

.verse {
  white-space: pre-line;
}

.smallcaps {
  font-variant-caps: all-small-caps;
  letter-spacing: 0.03em;
}

cite,
.work-title {
  font-style: italic;
}

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

hr {
  border: 0;
  text-align: center;
}

hr::after {
  content: "* * *";
}

.wp-block-verse {
  font-family: "MDSystemRegular", sans-serif;
  background-color: var(--color-bg);
  padding: 0;
}

.archive .issue-section {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.archive .issue-section .description {
  grid-column: 1;
  grid-row: 2;
}
.archive .issue-section .article-card,
.archive .issue-section .card-artist {
  grid-column: 2;
}
.archive .issue-section .issue-ribbon {
  grid-column: 1/-1;
  grid-row: 1;
}

#tribe-events-pg-template {
  width: calc(100% - 2 * clamp(1rem, 5vw, 8rem));
  max-width: 1200px;
  padding: 0 !important;
}

.entry-header,
.entry-content {
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}/*# sourceMappingURL=styles.css.map */