/* Shared hero quick links */
.hero-quicklinks {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  padding:0 1px 1px;
  border-bottom:1px solid var(--ink);
  background:var(--ink);
}
.hero-quicklinks a {
  display:flex;
  min-width:0;
  min-height:68px;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:5px;
  padding:10px 9px;
  border:0;
  background:var(--paper);
  color:var(--ink);
  text-decoration:none;
}
.hero-quicklinks a[hidden] { display:none; }
.hero-quicklinks span {
  color:var(--coral);
  font:500 .625rem 'DM Mono',monospace;
  letter-spacing:.08em;
}
.hero-quicklinks b {
  max-width:100%;
  font-size:clamp(.6875rem,2.8vw,.8125rem);
  line-height:1.15;
  letter-spacing:-.04em;
  overflow-wrap:anywhere;
}
.hero-quicklinks a:focus-visible {
  position:relative;
  z-index:1;
  outline:2px solid var(--ink);
  outline-offset:-3px;
}
.sonic-quicklinks { grid-template-columns:repeat(6,minmax(0,1fr)); }
.sonic-quicklinks a {
  position:relative;
  grid-column:span 2;
  min-height:60px;
}
.sonic-quicklinks a:nth-of-type(-n+2) {
  grid-column:span 3;
  min-height:66px;
}
.sonic-quicklinks a.is-external {
  background:color-mix(in srgb,var(--yellow) 24%,var(--paper));
}
.sonic-quicklinks a.is-external::after {
  content:'↗';
  position:absolute;
  top:9px;
  right:9px;
  font:500 .6875rem 'DM Mono',monospace;
}
.sonic-quicklinks a.is-official-home { background:var(--coral); }
.sonic-quicklinks a.is-official-home span { color:var(--ink); }
#timetable-title,#stage-map-title,
#overview,#details,#tripMap,#stay,#flights,
#travelCountdown,#timeline-title,#addExpense,#expenseTotalsSection,#expenseLogSection,
#tripStatus,#timeline,#crew,#timetable,#stageMap,#restaurants {
  scroll-margin-top:18px;
}
@media (hover:hover) and (pointer:fine) {
  .hero-quicklinks a:hover { background:var(--yellow); }
}
.hero-quicklinks a:active { background:var(--yellow); }

