/* ---- Repair events summary table ---- */
.repair-grid{
  container-type:inline-size;   /* lets the font size follow the container */
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.repair-grid table{
  table-layout:fixed;
  width:100%;
  min-width:56em;               /* em, not px — scales with the font */
  border-collapse:collapse;
  font-size:clamp(12px, 6.6px + 1.12vw, 18px);      /* fallback for old browsers */
  font-size:clamp(12px, calc(100cqw / 56), 18px);   /* 56 must match the 56em above */
  line-height:1.3;
}

.repair-grid td,
.repair-grid th{
  padding:0.35em 0.4em;
  word-break:normal;         /* override the theme's break-word */
  overflow-wrap:normal;      /* never split a word, at any width */
  hyphens:none;
  vertical-align:middle;
}

/* column proportions — venue needs room, ticks need more than you'd think */
.repair-grid tr > *:nth-child(1){ width:18%; text-align:left; font-weight:600; }
.repair-grid tr > *:nth-child(2){ width:11%; }
.repair-grid tr > *:nth-child(3){ width:10%; }
.repair-grid tr > *:nth-child(n+4){ width:12.2%; text-align:center; }

/* header row sits on the baseline so wrapped labels line up */
.repair-grid tr:first-child > *{
  font-weight:600;
  vertical-align:bottom;
  line-height:1.2;
}


/* ---- Homepage: three service boxes, equal height, buttons aligned ---- */
.service-cards .wp-block-column{
  display:flex;                 /* let the inner grid stretch */
}

.service-cards .wp-block-jetpack-layout-grid{
  flex:1;                       /* fill the full column height */
}

.service-cards .wp-block-jetpack-layout-grid-column{
  height:100%;
  display:flex;
  flex-direction:column;        /* stack heading, text, button vertically */
}

.service-cards .wp-block-jetpack-layout-grid-column > .wp-block-buttons{
  margin-top:auto;              /* push the button to the bottom */
}

.service-cards .wp-block-jetpack-layout-grid .wp-block-jetpack-layout-grid-column.has-background{
  padding-top:0px;
  padding-bottom:21px;
}

.service-cards .wp-block-jetpack-layout-grid-column > h2{
  min-height:2.2em;
}

/* ---- Repair page: venue cards ---- */
.venue-cards .wp-block-column{
  background:#E7FCFF;
  padding:26px 28px;
}

.venue-cards .wp-block-column > *:last-child{ margin-bottom:0; }

.venue-cards figure.wp-block-image{ margin:0 0 16px; }
.venue-cards figure.wp-block-image img{
  width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
}

.venue-cards h3{ margin:0 0 10px; }

.venue-cards .venue-when{
  font-family:"Inter var",-apple-system,system-ui,sans-serif;
  font-size:16px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.5px;
  color:#2C6076;
  margin:0 0 12px;
}

.venue-cards .venue-tag{
  display:inline-block;
  font-family:"Inter var",-apple-system,system-ui,sans-serif;
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.6px;
  background:#046D8B;
  color:#fff;
  padding:6px 12px;
  margin:0 0 14px;
}

.venue-cards .venue-tag.is-dropin{
  background:#fff;
  color:#046D8B;
  box-shadow:inset 0 0 0 2px #046D8B;
}

.venue-cards p{ font-size:19px; margin:0 0 10px; }

.venue-cards .venue-tag a { color: inherit }