.app-endorsement {
  --endorsement-ink: #17221d;
  --endorsement-muted: #5e6c64;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) minmax(150px, 220px);
  align-items: center;
  gap: 20px;
  max-width: 1080px;
  margin: 42px auto;
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid #dce5de;
  border-radius: 20px;
  background: #f4f7f3;
  color: var(--endorsement-ink);
  font: 16px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: left;
}
.app-endorsement__icon { display: block; width: 64px; height: 64px; border-radius: 15px; object-fit: cover; }
.app-endorsement__copy { min-width: 0; }
.app-endorsement__eyebrow { margin: 0 0 5px !important; color: #52655a; font-size: 11px !important; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.app-endorsement h2 { margin: 0 0 7px !important; color: var(--endorsement-ink); font-size: clamp(20px, 3vw, 27px) !important; line-height: 1.15; }
.app-endorsement__copy > p:not(.app-endorsement__eyebrow) { margin: 0 0 14px !important; color: var(--endorsement-muted); font-size: 14px !important; }
.app-endorsement__button { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 9px 15px; border-radius: 999px; background: #176b55; color: #fff !important; font-size: 14px; font-weight: 750; text-decoration: none !important; }
.app-endorsement__button:hover { background: #10533f; }
.app-endorsement__secondary { display: inline-block; margin: 0 0 0 12px; color: #40574a !important; font-size: 14px; font-weight: 700; }
.app-endorsement__visual { display: block; width: 100%; max-height: 150px; border-radius: 13px; object-fit: cover; object-position: center; }
.app-endorsement--no-visual { grid-template-columns: 64px minmax(0, 1fr); }
@media (max-width: 620px) {
  .app-endorsement { grid-template-columns: 52px minmax(0, 1fr); gap: 13px; margin: 28px 14px; padding: 17px; }
  .app-endorsement__icon { width: 52px; height: 52px; border-radius: 13px; }
  .app-endorsement__visual { grid-column: 1 / -1; width: 100%; max-height: 190px; aspect-ratio: 16 / 7; }
}
