.page-section{padding-block:var(--space-6)}
.page-section--tight{padding-block:var(--space-5)}
.page-section--soft{background:var(--color-light);color:var(--color-ink)}
.page-section--dark{background:var(--color-ink);color:#effff9}
.page-section--accent{background:var(--color-accent);color:var(--color-ink)}
.page-section__head{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(16rem,.55fr);align-items:end;gap:var(--space-4);margin-bottom:var(--space-4)}
.page-section__head p{color:var(--color-muted)}
.page-section--dark .page-section__head p{color:#a7bcb6}
.page-kicker{
  display:flex;
  align-items:center;
  gap:.65rem;
  width:fit-content;
  margin-bottom:var(--space-2);
  color:var(--color-primary);
  font-family:var(--font-mono);
  font-size:var(--fs-0);
  font-weight:800;
  line-height:1.3;
  letter-spacing:.11em;
  text-transform:uppercase
}
.page-kicker::before{content:"";width:.55rem;height:.55rem;background:var(--color-accent)}
.page-section--dark .page-kicker{color:var(--color-accent)}
.page-section--accent .page-kicker{color:var(--color-ink)}
.page-section--accent .page-kicker::before{background:var(--color-ink)}
.page-kicker[class*="kicker--dark"]::before,
.page-kicker[class*="kicker--endcap"]::before,
.page-kicker[class*="dark-kicker"]::before,
.page-kicker[class*="endcap__kicker"]::before{background:var(--color-ink)}
.page-kicker[class*="kicker--accent"]::before{background:var(--color-accent)}
.page-section--dark .page-kicker[class*="kicker--dark"],
.page-section--dark .page-kicker[class*="dark-kicker"],
.page-section--dark .page-kicker[class*="kicker--accent"],
.page-section--dark .page-kicker[class*="endcap__kicker"]{
  color:var(--color-ink)
}
.page-section--accent .page-kicker[class*="kicker--accent"],
.page-section--accent .page-kicker[class*="endcap__kicker"]{
  color:#fff
}
.page-hero{
  position:relative;
  min-height:0;
  padding-top:var(--space-5);
  padding-bottom:clamp(4rem,8vw,7rem);
  background:#fff;
  color:var(--color-ink)
}
.page-hero__grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(22rem,.98fr);align-items:start;gap:clamp(2rem,5vw,4rem)}
.page-hero:has(.c-breadcrumb) .page-hero__grid{align-items:start}
.page-hero__copy{display:grid;justify-items:start;align-items:start;gap:var(--space-3);min-width:0}
.page-hero__copy>p{max-width:39rem;color:var(--color-muted);font-size:var(--fs-4)}
.page-hero__stage{position:relative;min-width:0;height:clamp(25rem,40vw,32rem);overflow:hidden;border-radius:var(--radius-md);background:var(--color-ink);color:#effff9}
.page-hero__stage>:where([class*="run-sheet"],[class*="ticket"]){width:100%;max-width:none}
.page-hero__stage>:where([class*="run-sheet"],[class*="ticket"]):only-child{height:100%;min-height:100%;border-radius:0}
.page-hero__stage[class*="ticket"],
.page-hero__stage[class*="run-sheet"]{height:auto;min-height:clamp(25rem,40vw,32rem);overflow:visible}
.page-hero__scene{width:100%;height:100%;object-fit:cover}
.page-hero__stage-copy{position:absolute;inset:auto 1.25rem 1.25rem;display:grid;grid-template-columns:1fr auto;align-items:end;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:rgba(7,27,25,.91);color:#effff9}
.page-hero__stage-copy p{color:#a7bcb6;font-size:var(--fs-2)}
[data-hero-form="right-graphic"] .page-hero__grid{grid-template-columns:minmax(0,1.02fr) minmax(22rem,.98fr)}
.doc-hero{padding-block:var(--space-5)}
.doc-hero h1{font-size:var(--fs-6)}
.doc-hero p{max-width:48rem;color:var(--color-muted)}
@media (max-width:64rem){
  .page-hero__stage:has(> img),.page-hero__stage:has(.page-hero__scene){height:clamp(22rem,66vw,30rem)}
  .page-hero__stage:not(:has(> img)):not(:has(.page-hero__scene)){height:auto;max-height:none;min-height:0;overflow:visible}
  .page-hero__stage:not(:has(> img)):not(:has(.page-hero__scene))>*{height:auto;max-height:none;min-height:0;overflow:visible}
  .page-hero__stage:has([class*="__map"]):has(> [class*="ticket"]),
  .page-hero__stage:has(.page-hero__scene):has(> [class*="ticket"]){height:auto;max-height:none;min-height:0;overflow:visible}
  .page-hero__stage:has([class*="__map"]):has(> [class*="ticket"])>* ,
  .page-hero__stage:has(.page-hero__scene):has(> [class*="ticket"])>*{height:auto;max-height:none;min-height:0}
}
@media (max-width:56rem){
  .page-hero__grid,[data-hero-form="right-graphic"] .page-hero__grid,.page-section__head{grid-template-columns:1fr}
  .page-hero__stage:has(> img),.page-hero__stage:has(.page-hero__scene){height:clamp(22rem,66vw,30rem)}
  .page-hero__stage:has([class*="__map"]):has(> [class*="ticket"]),
  .page-hero__stage:has(.page-hero__scene):has(> [class*="ticket"]){height:auto;max-height:none;min-height:0;overflow:visible}
}
@media (max-width:42rem){
  .page-hero{padding-block:var(--space-5)}
  .page-hero__copy>p{font-size:var(--fs-3)}
  .page-hero__stage:has(> img),.page-hero__stage:has(.page-hero__scene){height:24rem}
  .page-hero__stage:has([class*="__map"]):has(> [class*="ticket"]),
  .page-hero__stage:has(.page-hero__scene):has(> [class*="ticket"]){height:auto;max-height:none;min-height:0;overflow:visible}
  .page-hero__stage-copy{grid-template-columns:1fr}
}
