/* Shared by homepage, solution, and product pages. */
.testimonial-banner {
  padding-block: 48px;
  background: var(--palette-white);
}
.testimonial-banner__band {
  padding: 48px;
  background: var(--palette-gray);
  border: 1px solid #e6e6e6;
  border-radius: 8px;
}
.testimonial-banner__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 240px);
  align-items: center;
  column-gap: 64px;
  row-gap: 24px;
  margin: 0;
}
#top main .testimonial-banner__label {
  grid-column: 1 / -1;
  margin: 0;
  height: auto;
  text-box-trim: none;
  font-size: var(--type-caption);
  line-height: 16px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #52657e;
}
#top main .testimonial-banner .testimonial-banner__quote {
  position: relative;
  margin: 0;
  padding-left: 48px;
  height: auto;
  text-box-trim: none;
}
.testimonial-banner__mark {
  position: absolute;
  top: -8px;
  left: 0;
  color: var(--palette-blue);
  font-family: Georgia, serif;
  font-size: 72px;
  line-height: 1;
}
/* Keep quote typography independent of the shared body-text baseline rules. */
#top :is(main,#patrol6-product,#report6-product) .testimonial-banner .testimonial-banner__text {
  margin: 0;
  height: auto;
  text-box-trim: none;
  font-family: var(--font-body);
  font-size: 28px;
  font-weight: 500;
  line-height: 40px;
  letter-spacing: var(--tracking-heading);
  overflow-wrap: anywhere;
}
.testimonial-banner__attribution {
  display: grid;
  gap: 8px;
  padding: 8px 0 8px 32px;
  border-left: 1px solid #b9cbe1;
  overflow-wrap: anywhere;
}
.testimonial-banner__name { font-weight: var(--weight-semibold); line-height: 24px; }
.testimonial-banner__company { font-size: var(--type-small); line-height: 24px; color: #52657e; }
@media (max-width: 800px) {
  .testimonial-banner { padding-block: 32px; }
  .testimonial-banner__band { padding: 32px 24px; }
  .testimonial-banner__inner { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  #top main .testimonial-banner .testimonial-banner__quote { padding-left: 32px; }
  .testimonial-banner__mark { font-size: 56px; top: -4px; }
  #top :is(main,#patrol6-product,#report6-product) .testimonial-banner .testimonial-banner__text { font-size: 24px; line-height: 32px; }
  .testimonial-banner__attribution { margin-left: 32px; padding: 0; border: 0; gap: 4px; }
}
