/* Preserve the ticket's portrait proportions when the outer card grows. */
@media (min-width:1001px){
 .ticket-graphite .study-drift .review-sheet.dossier{
  width:100%;
  max-width:320px;
  align-self:center;
  margin-left:auto;
  margin-right:auto;
 }
}

/* A second headline completes the story as the same fireflies form Rally. */
.hero-gathered{position:absolute;top:var(--gathered-top,16%);left:var(--edge);right:var(--edge);z-index:5;text-align:center;color:var(--ivory);font-size:clamp(27px,3.4vw,48px);font-weight:300;line-height:1.07;letter-spacing:-.045em;opacity:var(--gathered-opacity,0);transform:translateY(var(--gathered-y,12px));pointer-events:none;will-change:opacity,transform;text-wrap:balance}
.hero-gathered span,.hero-gathered em{display:block}
.hero-gathered em{font:italic 400 1.12em/1.12 var(--serif);letter-spacing:-.06em;margin-top:5px}
@media(max-width:767px){.hero-gathered{font-size:clamp(26px,6.8vw,40px);line-height:1.08}.hero-gathered em{margin-top:4px}}
@media(max-height:520px) and (orientation:landscape){.hero-gathered{font-size:clamp(22px,3.2vw,32px)}}
@media(prefers-reduced-motion:reduce){.hero-gathered{transform:none;will-change:auto}}

/* Keep link hit areas fixed, including labels, portraits and arrow artwork. */
a[href],button,summary{cursor:pointer}
.application{display:block;position:relative;cursor:pointer}
.application>*,.benny-contact>*,.action-pill>*{pointer-events:none}
.application-action>span{transition:background .25s,border-color .25s,color .25s}
.application:hover .application-action>span,
.application:focus-visible .application-action>span{background:var(--red);border-color:var(--red);color:var(--ivory)}
.application-action:hover>span{transform:none}
.benny-contact{transition:background .25s,box-shadow .25s}
.benny-contact:hover,.benny-contact:focus-visible{transform:none;background:#fffaf1;box-shadow:0 0 0 2px var(--red)}
.action-pill:hover{transform:none}
@media(max-width:767px){.application-action:hover>span{transform:translateY(-50%)}}

/* Draw directional icons as vectors so iOS cannot substitute emoji. */
.link-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;overflow:visible;pointer-events:none}
