/* V6 race lineup: distance-led typography and two clear provincial columns. */
.road{padding-bottom:140px}
.road .race-table-wrap{margin-top:60px;padding:0;background:transparent;overflow:visible}
.road .race-table{min-width:0;border:0;table-layout:fixed}
.road .race-table thead{background:var(--navy);color:#fff}
.road .race-table thead tr{border:0}
.road .race-table thead th{padding:20px 27px;color:#fff;font:600 11px/1.3 var(--body);letter-spacing:.12em;text-transform:uppercase}
.road .race-table thead th:first-child{width:22%;color:#d4d9e8}
.road .race-table tbody tr{border:0;border-bottom:1px solid #cbd0dc;background:#fff}
.road .race-table tbody th{padding:30px 20px 29px 26px;background:#e9edee;vertical-align:top;font-family:var(--body);letter-spacing:normal}
.race-distance-number{display:block;color:var(--red);font:700 40px/1.05 var(--display);letter-spacing:-.055em}
.race-distance-unit{display:block;margin-top:7px;color:var(--red);font:600 10px/1 var(--body);letter-spacing:.18em}
.race-distance-label{display:block;margin-top:20px;color:var(--navy);font:600 13px/1.3 var(--body)}
.road .race-table td{position:relative;padding:30px 27px 80px;vertical-align:top;transition:background .2s}
.road .race-table td:last-child{border-left:1px solid #e2e5eb}
.road .race-table td:hover,.road .race-table td:focus-within{background:#f8fafb}
.race-province{display:none}
.road .race-name{font:700 24px/1.14 var(--body);letter-spacing:-.035em;margin:0;max-width:100%;overflow-wrap:break-word;text-wrap:balance;color:var(--navy)}
.road .race-meta{font:400 13px/1.4 var(--body);color:var(--muted);margin:12px 0 0}
.road .race-action{position:absolute;left:27px;right:27px;bottom:25px;display:inline-flex;align-items:center;justify-content:space-between;gap:18px;width:auto;min-height:36px;padding:0;border:0;background:none;color:var(--red-ink);font:600 13px/1.3 var(--body);text-align:left;text-decoration:none}
.race-action-arrow{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border:1px solid #e2b8be;border-radius:50%;transition:background .2s,border-color .2s,color .2s}
.race-action-arrow svg{width:13px;height:13px}
.road .race-action:hover .race-action-arrow{background:var(--red);border-color:var(--red);color:#fff}
.road .race-action:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1100px){.race-distance-number{font-size:34px}.road .race-table thead th{padding-inline:22px}.road .race-table td{padding-inline:22px}.road .race-action{left:22px;right:22px}.road .race-name{font-size:22px}}
@media(max-width:760px){
  .road{padding-bottom:100px}
  .road .race-table-wrap{margin-top:42px;overflow:visible}
  .road .race-table{display:block;width:100%;border-top:2px solid var(--navy)}
  .road .race-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .road .race-table tbody{display:block}
  .road .race-table tbody tr{display:grid;grid-template-columns:100px minmax(0,1fr);border-bottom:1px solid #bfc6d2}
  .road .race-table tbody th{display:block;width:auto;grid-column:1;grid-row:1 / span 2;padding:26px 12px;background:#e9edee;border-right:1px solid #d9dfe5;text-align:left}
  .race-distance-number{font-size:24px;letter-spacing:-.06em}
  .race-distance-unit{font-size:9px;margin-top:6px}
  .race-distance-label{font-size:12px;margin-top:18px}
  .road .race-table td{display:block;grid-column:2;min-width:0;padding:24px 22px 22px}
  .road .race-table td:last-child{border-left:0;border-top:1px solid #e2e5eb}
  .race-province{display:block;margin-bottom:15px;color:var(--muted);font:600 10px/1.3 var(--body);letter-spacing:.1em;text-transform:uppercase}
  .road .race-name{font-size:23px;line-height:1.12}
  .road .race-meta{margin:10px 0 20px;font-size:13px}
  .road .race-action{position:static;width:100%;font-size:12px;gap:8px;min-height:36px}
  .race-action-arrow{width:28px;height:28px}
}
@media(max-width:430px){.road .race-table tbody tr{grid-template-columns:86px minmax(0,1fr)}.road .race-table tbody th{padding:25px 10px}.race-distance-number{font-size:21px}.race-distance-label{font-size:11px}.road .race-table td{padding:23px 17px 21px}.road .race-name{font-size:21px}}
@media(max-width:360px){.road .race-table tbody tr{grid-template-columns:70px minmax(0,1fr)}.road .race-table tbody th{padding-inline:8px}.race-distance-number{font-size:17px}.race-distance-label{font-size:10px}.road .race-table td{padding-inline:14px}.road .race-name{font-size:19px}.road .race-meta{font-size:12px}.road .race-action{font-size:11px}.race-action-arrow{width:25px;height:25px}}
