.hd {
      display: flex;
      flex-direction: column;
      gap: var(--sp-2);
    }

    .eyebrow {
      font-family: var(--f-mono);
      font-size: var(--fs-micro);
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--ink-3);
    }

    h1 {
      font-family: var(--f-mono);
      font-size: var(--fs-display);
      font-weight: 600;
      letter-spacing: -0.02em;
      margin: 0;
      line-height: 1.12;
    }

    .lede {
      font-size: var(--fs-lead);
      color: var(--ink-2);
      margin: 0;
      max-width: 62ch;
    }

    h2 {
      font-family: var(--f-mono);
      font-size: var(--fs-h2);
      font-weight: 600;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--ink-2);
      margin: 0 0 var(--sp-4);
      display: flex;
      align-items: center;
      gap: var(--sp-3);
    }

    h2::after {
      content: '';
      flex: 1;
      height: 1px;
      background: var(--rule);
    }

    .tscroll {
      overflow-x: auto;
      border: 1px solid var(--rule-2);
      background: var(--sheet);
    }

    table {
      border-collapse: collapse;
      width: 100%;
      font-size: var(--fs-sm);
    }

    th,
    td {
      text-align: left;
      padding: 12px 14px;
      border-bottom: 1px solid var(--rule);
      vertical-align: top;
    }

    thead th {
      font-family: var(--f-mono);
      font-size: var(--fs-micro);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--ink-3);
      font-weight: 600;
      background: var(--sheet-2);
    }

    tbody tr:last-child td {
      border-bottom: none;
    }

    .town {
      font-weight: 600;
      white-space: nowrap;
    }

    .num {
      font-family: var(--f-mono);
      font-variant-numeric: tabular-nums;
      white-space: nowrap;
    }

    .measure {
      font-size: var(--fs-xs);
      color: var(--ink-2);
    }

    .barcell {
      width: 34%;
      min-width: 150px;
    }

    .bartrack {
      display: block;
      width: 100%;
      height: 13px;
      padding: 0;
      background: var(--sheet-2);
      border: 1px solid var(--rule);
    }

    .bar {
      display: block;
      height: 11px;
      min-width: 3px;
      background: var(--accent);
      border-radius: 0 3px 3px 0;
    }

    .gapbox {
      font-size: var(--fs-sm);
      color: var(--flag-ink);
      background: var(--flag-bg);
      border: 1px solid var(--flag-bd);
      padding: 12px 14px;
      margin-top: var(--sp-4);
    }

    .gapbox b {
      font-weight: 600;
    }

    .yes {
      font-weight: 600;
    }

    .no {
      color: var(--ink-3);
    }

    footer {
      border-top: 1px solid var(--rule);
      padding-top: var(--sp-4);
      font-size: var(--fs-xs);
      color: var(--ink-3);
      display: flex;
      flex-direction: column;
      gap: var(--sp-2);
    }

    footer a {
      color: var(--accent);
    }

    @media (max-width: 700px) {
      .tscroll {
        overflow-x: visible;
        border: none;
        background: none;
      }

      table.stack,
      table.stack tbody,
      table.stack tr,
      table.stack td {
        display: block;
        width: 100%;
      }

      table.stack thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0 0 0 0);
      }

      table.stack tr[hidden] {
        display: none;
      }

      table.stack td {
        border: none;
        white-space: normal;
        padding: var(--sp-1) var(--sp-4);
      }

      table.stack td[data-label] {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: var(--sp-4);
        text-align: left;
        font-size: var(--fs-sm);
      }

      table.stack td[data-label]::before {
        content: attr(data-label);
        font-family: var(--f-sans);
        font-size: var(--fs-xs);
        color: var(--ink-3);
        font-weight: 400;
        flex: none;
      }

      table.stack td.hd {
        font-size: var(--fs-body);
        font-weight: 600;
        padding: var(--sp-3) var(--sp-4) var(--sp-2);
        border-bottom: 1px solid var(--rule);
      }
    }

    @media (max-width: 700px) {
      table.stack td[data-label] {
        display: flex;
        justify-content: space-between;
        gap: var(--sp-4);
        align-items: center;
      }

      table.stack tr {
        border: 1px solid var(--rule-2);
        margin-bottom: var(--sp-3);
        background: var(--sheet);
      }

      .barcell {
        width: auto;
      }

      .barcell .bartrack {
        flex: 1 1 auto;
        min-width: 120px;
      }
    }