/* Folk and carnival files retain the shared archive colours and typography. */
html.folk-carnival-page { min-width: 0; }
.folk-carnival-page body { box-sizing: border-box; width: min(750px, 100%); margin: 8px auto 30px; }
.folk-carnival-page .archive-gallery img { max-width: 100%; max-height: 600px; }
.folk-carnival-page .folk-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: #ffffcc; }
.folk-carnival-page .folk-pair figure { min-width: 0; margin: 0; padding: 8px; border-bottom: 1px solid #000; }
.folk-carnival-page .folk-pair figure + figure { border-left: 1px solid #000; }
.folk-carnival-page .folk-pair img { display: block; width: auto; height: auto; max-width: 100%; max-height: 480px; margin: auto; }
.folk-carnival-page figcaption { padding: 6px 4px; text-align: left; }
.folk-carnival-page .folk-register { table-layout: fixed; }
.folk-carnival-page .folk-register caption { padding: 7px; background: #ffffcc; border-bottom: 1px solid #000; font-size: 15px; text-align: left; }
.folk-carnival-page .folk-register th:first-child { width: 25%; }
.folk-carnival-page .folk-register th:last-child { width: 24%; }
.folk-carnival-page .folk-register tbody th { background: #ffffcc; text-align: left; font-size: 16px; }
.folk-carnival-page .folk-register tr:nth-child(even) td { background: #ffffcc; }
.folk-carnival-page td, .folk-carnival-page th { overflow-wrap: anywhere; }
@media (max-width: 520px) {
  .folk-carnival-page body { margin-top: 0; }
  .folk-carnival-page body::before { font-size: 30px; }
  .folk-carnival-page h1 { font-size: 28px; }
  .folk-carnival-page .folk-pair { grid-template-columns: 1fr; }
  .folk-carnival-page .folk-pair figure + figure { border-left: 0; }
  .folk-carnival-page .folk-register { font-size: 15px; }
}
