/* Homepage introduction and three routes into the services page. */
#services-connect {
  --overview-inset:32px;
}
#services-connect .service-overview-heading {
  max-width:none;
  margin-bottom:32px;
}
#services-connect .service-overview {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
#services-connect .service-overview-card {
  justify-content:flex-start;
  min-width:0;
  min-height:0;
  height:auto;
  padding:var(--overview-inset);
}
#services-connect .service-overview-card h3 {
  position:static;
  z-index:auto;
  max-width:none;
  min-height:0;
  padding:0;
  margin:0;
}
#services-connect .service-route-price {
  min-height:0;
  margin:12px 0 0;
  color:var(--blue-dark);
  font-family:var(--type-family);
  font-size:var(--type-caption);
  font-weight:var(--type-emphasis);
  line-height:1.5;
}
#services-connect .service-overview-card-blue .service-route-price,
#services-connect .service-overview-card-blue .service-route-link svg {
  color:var(--white);
}
#services-connect .service-overview-card-cream .service-route-price,
#services-connect .service-overview-card-cream .service-route-link svg {
  color:var(--brass-dark);
}
#services-connect .service-card-desc {
  max-width:none;
  margin:var(--space-heading-item) 0 0;
}
.page-home .service-route-link {
  position:static;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0;
  padding:0;
  color:inherit;
  font:inherit;
  letter-spacing:inherit;
}
#services-connect .service-route-link::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
}
.page-home .service-route-link svg {
  flex:0 0 20px;
  color:var(--blue-dark);
}
/* Shared content-sized rows keep the three desktop routes aligned. */
@media (width>980px) {
  #services-connect .service-overview {
    grid-template-rows:repeat(3,auto);
    row-gap:0;
  }
  #services-connect .service-overview-card {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:subgrid;
    grid-row:span 3;
    justify-content:stretch;
    row-gap:0;
  }
}
@media (width<=980px) {
  #services-connect {
    --overview-inset:24px;
  }
  #services-connect .service-overview {
    grid-template-columns:minmax(0,1fr);
  }
  #services-connect .service-overview-card h3,
  #services-connect .service-route-price {
    min-height:0;
  }
}
