/* sitemap/sitemap.css · the sitemap as a directory on kit/rf.css.
   One band per menu: the menu's name held left, its groups right as
   columns of plain links, a hairline over each group. */
.rf .sm-hero { padding-block: clamp(56px, 7vw, 112px) clamp(40px, 4vw, 64px); }
.rf .sm-h1 { font-size: clamp(48px, 6vw, 92px); }
.rf .sm-jump { justify-content: center; margin-top: 36px; }
.rf .sm-sec { padding-block: clamp(56px, 6vw, 96px); scroll-margin-top: var(--ph-nav-h, 44px); }
.rf .sm-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2.6fr); gap: 32px clamp(32px, 5vw, 96px); align-items: start; }
.rf .sm-head { position: sticky; top: calc(var(--ph-nav-h, 44px) + 40px); display: grid; gap: 12px; }
.rf .sm-n { font-size: 16px; font-weight: 600; color: var(--rf-accent); font-variant-numeric: tabular-nums; }
.rf .sm-head .rf-solid { font-size: clamp(30px, 2.8vw, 44px); }
.rf .sm-groups { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 40px clamp(24px, 3vw, 48px); }
.rf .sm-group { padding-top: 18px; border-top: 1px solid var(--rf-rule); }
.rf .sm-gt { margin: 0 0 14px; font-size: 17px; line-height: 1.3; font-weight: 600; color: var(--rf-ink); }
.rf .sm-gt a { color: inherit; text-decoration: none; }
.rf .sm-gt a::after { content: " \2192"; color: var(--rf-accent); }
.rf .sm-group ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 4px; }
.rf .sm-group li a {
  display: inline-block; padding: 5px 0; font-size: 17px; line-height: 1.4; color: var(--rf-ink-2); text-decoration: none;
  transition: color .25s;
}
.rf .sm-group li a:hover, .rf .sm-gt a:hover { color: var(--rf-navy); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--rf-rule); }
.rf .sm-group li.is-more a { font-weight: 600; color: var(--rf-navy); }
/* an item with no page of its own: a quiet line, not a link */
@media (max-width: 1023px) {
  .rf .sm-grid { grid-template-columns: minmax(0, 1fr); }
  .rf .sm-head { position: static; }
}
@media (max-width: 560px) {
  .rf .sm-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 20px; }
}
