/* V8.3: approved Why Choose assets, aligned testimonials and Journey title breathing room. */
.service-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  background: transparent;
}

.service-card {
  min-height: 0;
  padding: 0 0 30px;
  overflow: hidden;
  border: 1px solid #dbe8eb;
  background: #f9fcfc;
}

.service-image {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #eaf4f7;
}

.service-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.service-card-copy {
  display: flex;
  flex: 1;
  width: 100%;
  flex-direction: column;
  align-items: center;
  padding: 22px 25px 0;
}

.service-card > .service-card-copy > b {
  color: #4c99bb;
  font: 500 13px 'DM Mono', monospace;
  letter-spacing: 1.2px;
  opacity: .68;
}

.service-card h3 { margin: 15px 0 11px; font-size: 21px; }
.service-card p { max-width: 305px; font-size: 15.5px; line-height: 1.62; }
.service-card:hover { border-top: 1px solid #dbe8eb; }

.testimonial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.testimonial-grid article { display: flex; flex-direction: column; min-height: 270px; }
.testimonial-grid blockquote { flex: 1; }

/* Keep the stage’s two-line heading clear of the viewport’s right interior edge. */
.v6-copy { width: min(330px, 38vw); padding-right: 30px; }
.v6-copy h3 { overflow-wrap: normal; }

@media (max-width: 1000px) {
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 800px) {
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .testimonial-grid { grid-template-columns: 1fr; }
  .service-card { padding-bottom: 27px; }
  .service-card-copy { padding: 20px 23px 0; }
  .service-card h3 { font-size: 20px; }
  .service-card p { max-width: 350px; font-size: 15px; }
  .v6-copy { width: min(328px, 82vw); padding-right: 28px; }
}

@media (max-width: 600px) {
  .service-grid { grid-template-columns: 1fr; }
}
