/* Core hubs: the same enamel signboard, with the working routes first. */
.core-nav {
  max-width: 74rem;
  margin-inline: auto;
  padding: .65rem max(16px, 3vw);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .5rem 2rem;
  border-bottom: 2px solid var(--steel-ink);
}
.core-nav a { color: inherit; text-underline-offset: .2em; }
.core-nav__brand { font-family: var(--font-sign); text-decoration: none; }
.core-nav ul { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; list-style: none; padding: 0; margin: 0; }
.core-nav li { margin: 0; }
.core-nav li a { display: inline-block; padding-block: .55rem; font-weight: 700; }
.core-nav [aria-current] { text-decoration-thickness: 3px; }
.core-nav--footer { border-top: 2px solid var(--steel-ink); border-bottom: 0; padding-block: 1.5rem 2.5rem; }
.core-nav--footer li a { font-size: .95rem; font-weight: 500; }
body .article { padding-top: clamp(24px, 4vw, 48px); }
body .article p, body .article li { max-width: 70ch; }
body .article .core-topics { padding-left: 0; }
body .article .core-topics li + li { margin-top: 0; }
body .article p + p { margin-top: 1rem; }
body .article .crumb { margin-bottom: 1.2rem; }
.core-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-block: 1.25rem; }
.core-actions a { display: inline-block; padding: .65rem 1rem; border: 2px solid currentColor; font-weight: 800; text-decoration: none; }
.core-actions a:hover { text-decoration: underline; }
.core-actions a:focus-visible, .core-nav a:focus-visible { outline-color: currentColor; }
.core-topics { display: flex; flex-wrap: wrap; gap: .6rem 1.3rem; padding: 0; list-style: none; margin: 1.4rem 0 2rem; }
.core-topics a { display: inline-block; padding-block: .35rem; }
.core-detail { margin-block: 2rem; border-block: 2px solid var(--steel-ink); padding-block: 1rem; }
.core-detail summary { cursor: pointer; font-weight: 800; }
.core-detail[open] summary { margin-bottom: 1.5rem; }
.core-detail summary:focus-visible { outline-color: currentColor; }
.article .scan a:not(.btn) { color: var(--route-on-enamel); }
.board__face { grid-template-areas: "name routes" "sub routes" "call routes"; }
.board__sub a { color: var(--route-on-enamel); }
.board__sub .core-actions { margin-bottom: 0; }
.board__sub .core-actions a:focus-visible { outline-color: var(--ink-on-enamel); }
.board__routes a { grid-template-columns: minmax(0, 1fr); grid-template-areas: "name" "kind"; gap: .35rem; }
.board__routes .route-kind { justify-self: start; text-align: left; }
.board__routes .route-name { font-size: clamp(1.25rem, 2.2vw, 1.8rem); }
@media (max-width: 900px) {
  .board__face { grid-template-areas: "name" "sub" "call" "routes"; }
}
@media (max-width: 560px) {
  .core-nav { gap: .15rem .8rem; }
  .core-nav ul { gap: 0 1rem; }
  .core-nav li a { font-size: .9rem; }
  .list--hub a { grid-template-columns: minmax(0, 1fr); }
  .list--hub .sev { grid-column: 1; grid-row: auto; justify-self: start; margin-top: .5rem; }
  .list--hub .lead { overflow-wrap: anywhere; }
}
