/* Fixes on top of the archived Bricks CSS, plus styles for parts whose CSS was not archived. */
html.no-scroll { overflow: hidden; }
img { max-width: 100%; height: auto; }

.tnz-noimg { display: block; width: 100%; aspect-ratio: 3 / 2; background: #e9e4dc; }
.brxe-blbvty .tnz-noimg { aspect-ratio: 2 / 3; }
.tnz-empty { padding: 2rem 0; opacity: .7; }
.tnz-price { margin-top: .4em; font-weight: 600; }
.tnz-when { margin: .3em 0; font-size: 1.15em; }
.tnz-perf-link { margin-top: 2em; }
.tnz-lead-image { margin: 0 0 1.5em; }
.tnz-lead-image img { width: 100%; }
.tnz-shows { list-style: none; padding: 0; display: grid; gap: .8em; }
.tnz-shows li { display: flex; flex-wrap: wrap; align-items: center; gap: 1em; }
a.tnz-ticket, button[data-tc-event] { cursor: pointer; }

/* Single person (template post-1034 was not archived) */
.tnz-person { padding-top: 40px; padding-bottom: 60px; }
#brxe-xlbrpl { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 48px; align-items: start; }
#brxe-tjajct { margin: 0; }
#brxe-tjajct img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; }
#brxe-sdzyhe { font-family: Merriweather, serif; font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.1; text-transform: uppercase; }
#brxe-ffctbn { font-family: Merriweather, serif; font-size: clamp(1.3rem, 2.4vw, 1.8rem); margin-top: .2em; }
#brxe-jisiie .brxe-divider { margin: 1.2em 0; width: 100%; }
#brxe-jisiie .brxe-divider .line { border-top: 1px solid currentColor; opacity: .25; width: 100%; }
#brxe-jisiie .tnz-role { font-size: 1.1em; }
@media (max-width: 767px) { #brxe-xlbrpl { grid-template-columns: 1fr; gap: 24px; } }

/* Core galleries */
.gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; margin: 1.5em 0; }
.gallery-item { margin: 0; }
.gallery-item img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; }
.gallery-caption { font-size: .85em; opacity: .75; margin-top: .3em; }

/* Lightbox */
.tnz-lightbox { position: fixed; inset: 0; z-index: 100000; background: rgba(0, 0, 0, .9); display: none; align-items: center; justify-content: center; }
.tnz-lightbox.open { display: flex; }
.tnz-lightbox img { max-width: 92vw; max-height: 88vh; object-fit: contain; }
.tnz-lightbox button { position: absolute; background: none; border: 0; color: #fff; font-size: 48px; line-height: 1; cursor: pointer; padding: 12px 18px; }
.tnz-lb-close { top: 8px; right: 8px; }
.tnz-lb-prev { left: 8px; top: 50%; transform: translateY(-50%); }
.tnz-lb-next { right: 8px; top: 50%; transform: translateY(-50%); }

/* Comments */
.comment-list { list-style: none; padding: 0; }
.comment-list .comment { margin-bottom: 1.5em; }
.comment-form input[type=text], .comment-form input[type=email], .comment-form textarea { width: 100%; padding: .6em; border: 1px solid #ccc; }
.comment-form .submit { padding: .7em 1.6em; cursor: pointer; }
