/* Phone layout for /roads index (loaded at (max-width: 760px)). */
/* On a phone the 40-odd country chips and 30-odd region chips wrapped into
   two full screens before the first road. They become three-row strips
   that swipe sideways (biggest first, so the likely pick is in view), and
   the ~660 roads become grouped lists with dividers instead of separate
   cards, which cuts the page by about a third. */

.road-wrap { padding: 22px 16px 16px; }
.section-label { font-size: 12px; margin-bottom: 12px; }
.road-wrap h1 { font-size: 1.85rem; line-height: 1.12; margin: 6px 0 10px; }
.road-lede { font-size: 15.5px; margin-bottom: 8px; }
/* The inline link in the lede is the page's only build CTA: give it room. */
.road-lede a { display: inline-block; padding: 4px 0; margin: -4px 0; }

/* Chip strips: three rows, scrolling sideways edge to edge. */
.dir-jump {
  display: grid; grid-auto-flow: column; grid-template-rows: repeat(3, auto);
  justify-content: start; gap: 8px; margin: 18px -16px 4px; padding: 0 16px 4px;
  overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none;
  scroll-padding: 0 16px;
}
.dir-jump::-webkit-scrollbar { display: none; }
.dir-jump a { display: inline-flex; align-items: center; min-height: 40px;
  padding: 0 13px; font-size: 12.5px; white-space: nowrap; }
.dir-regions h2 { font-size: 1.1rem; margin: 26px 0 0; }
.dir-regions .dir-jump { margin-top: 10px; }

/* Country sections: the sticky header is 104px tall on phones (brand.css),
   so a chip jump lands with the heading in view, not under the bar. */
.dir-country { scroll-margin-top: 112px; }
.dir-country h2 { font-size: 1.15rem; line-height: 1.25; margin: 30px 0 0; }

/* Road lists: one grouped list per country with hairline dividers. */
.dir-list { gap: 0; grid-template-columns: minmax(0, 1fr); margin-top: 12px;
  border: 1px solid var(--contour); border-radius: var(--radius);
  overflow: hidden; background: var(--basalt); }
.dir-list li + li a { border-top: 1px solid var(--contour); }
.dir-list li a { border: 0; border-radius: 0; min-height: 48px;
  align-items: center; padding: 11px 14px; font-size: 15px; line-height: 1.3; }
.dir-list .meta { font-size: 12px; }
/* A long unbroken road name wraps instead of widening the list. */
.dir-list li a > span:first-child { min-width: 0; overflow-wrap: anywhere; }

.foot { margin-top: 48px; padding: 30px 0 calc(36px + env(safe-area-inset-bottom)); }
.foot .legal { font-size: 12.5px; }
