/* Shared twelve-column page geometry. */
:root { --max: 1560px; --grid-gap: 24px; --page-edge: 48px; }
#ghostc { right: calc(-3vw - (min(var(--max), calc(100vw - 2 * var(--page-edge))) + var(--grid-gap)) / 12); }
.light-room { --rule: rgba(8,15,19,.22); }
.dark-room { --rule: rgba(246,242,234,.25); }
.roomwrap, .page-hero .inner, .endband .inner {
  width: 100%;
  max-width: var(--max);
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--grid-gap);
}
section.room, section.room.compact { padding-inline: var(--page-edge); }
.roomwrap > *, .page-hero .inner > *, .endband .inner > * { grid-column: 1 / -1; min-width: 0; }
.page-hero .inner > h1 { grid-column: 1 / 10; }
.page-hero .inner > p.lead { grid-column: 4 / 11; }
section.room { min-height: 85dvh; padding: 100px var(--page-edge) 130px; border-top: 0; }
.page-hero, .endband { padding-left: var(--page-edge); padding-right: var(--page-edge); }
.endband { border-top: 0; }
.endband .inner > :first-child { grid-column: 1 / 8; }
.endband .inner > .acts { grid-column: 9 / -1; align-self: end; }
.card, .gapcard, .btn, .voices span { border-radius: 2px; }
.card, .gapcard, .light-room .card, .dark-room .gapcard { box-shadow: none; }
.card { padding: 36px 0; border: 0; border-top: 0; }
.light-room .card { border: 0; border-top: 0; }
.eyebrow, figcaption { font-family: 'IBM Plex Mono', monospace; font-variant-numeric: tabular-nums; }
.eyebrow { text-transform: uppercase; font-size: 10px; letter-spacing: .2em; }
h1, h2, h3 { text-wrap: balance; }
.page-hero { padding-top: 110px; }
@media (max-width: 900px) {
  :root { --page-edge: 22px; --grid-gap: 16px; }
  .page-hero { padding-top: 92px; }
  .page-hero .inner > *, .endband .inner > :first-child, .endband .inner > .acts { grid-column: 1 / -1; }
  .endband .inner { row-gap: 28px; }
}
