/* Keep all four booking stages on a shared baseline. */
.booking-main .customer-progress {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:24px;
  margin:0 0 28px;
  padding:18px 0;
  border-top:1px solid #c9cdc7;
  border-bottom:1px solid #c9cdc7;
}
.booking-main .customer-progress > div {
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  min-width:0;
  min-height:40px;
  margin:0;
  padding:0;
  font-size:14px;
  font-weight:650;
  line-height:1.4;
}
.booking-main .customer-progress > div > span {
  display:grid;
  place-items:center;
  flex:0 0 40px;
  width:40px;
  height:40px;
  box-sizing:border-box;
  margin:0;
  padding:0;
  font-size:12px;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
@media(max-width:760px) {
  .booking-main .customer-progress {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px 20px;
    padding:16px 0;
    margin-bottom:24px;
  }
  .booking-main .customer-progress > div {font-size:13px;gap:10px;min-height:34px;}
  .booking-main .customer-progress > div > span {flex-basis:34px;width:34px;height:34px;font-size:11px;}
}
@media(max-width:360px) {
  .booking-main .customer-progress {gap:14px 12px;}
  .booking-main .customer-progress > div {font-size:12px;gap:8px;}
}

/* Put the requirement directly below the first row of passenger quantities. */
.numbers-grid > .wheelchair-requirement {
 grid-column:1/-1; grid-row:2; display:block; box-sizing:border-box;
 text-transform:none; letter-spacing:0; font-size:13px; font-weight:500;
 line-height:1.6; margin:0; color:#185284; background:#edf5ff;
 border-left:3px solid #337db5; border-right:1px solid #d1d4cf;
 border-bottom:1px solid #d1d4cf; padding:12px 16px;
}
