/* Keep the coaching story within its card, including intrinsic grid widths. */
.marco-card,
.marco-card > *,
.marco-benefits,
.marco-benefits article,
.marco-benefits article > div,
.marco-actions,
.marco-action {
  min-width: 0;
}
.marco-copy { max-width: 100%; }
.marco-copy h2 {
  max-width: 100%;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.marco-copy > p {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.marco-benefits article { grid-template-columns: 42px minmax(0, 1fr); }
.marco-benefits h3,
.marco-benefits p { overflow-wrap: anywhere; }
.marco-action { max-width: 100%; white-space: normal; text-align: center; }
@media (max-width: 760px) {
  .marco-card { grid-template-columns: minmax(0, 1fr); }
  .marco-copy { padding: 34px 22px 38px; }
  .marco-copy h2 {
    font-size: clamp(30px, 8.5vw, 42px);
    line-height: 1.08;
    letter-spacing: -.045em;
  }
  .marco-copy h2 > span { display: block; }
  .marco-copy > p { margin-top: 22px; font-size: 16px; line-height: 1.7; }
  .marco-benefits { grid-template-columns: minmax(0, 1fr); margin-top: 26px; }
  .marco-benefits h3 { font-size: 15px; line-height: 1.3; }
  .marco-benefits p { font-size: 12px; line-height: 1.5; }
}
@media (max-width: 350px) {
  .marco-copy { padding-inline: 18px; }
  .marco-benefits article { grid-template-columns: 36px minmax(0, 1fr); gap: 10px; padding: 12px; }
  .marco-benefit-icon { width: 36px; height: 36px; }
}
