/* R47 draft. Scoped to the two existing homepage chapters. */
.problem-opening { padding-top: 84px; padding-bottom: 76px; }
.problem-opening .opening-title { max-width: 980px; font-size: clamp(44px, 5.4vw, 72px); }
.problem-opening .growth-situations { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 48px; row-gap: 0; margin-top: 52px; }
.problem-opening .growth-situations article { padding-top: 0; border: 0; }
.problem-opening .growth-situations h3 { max-width: 330px; font-size: 25px; line-height: 1.23; letter-spacing: -.035em; }
.problem-opening .growth-situations p { max-width: 370px; margin-top: 18px; font-size: 15px; line-height: 1.85; color: #d0ddd1; }
.problem-opening .opening-bottom { margin-top: 48px; gap: 56px; }
.problem-opening .opening-bottom > p { font-size: 14px; line-height: 1.85; max-width: 520px; }
.problem-opening .opening-bottom > p strong { display: block; margin-bottom: 6px; }
.trust-people .trust-heading { display: grid; grid-template-columns: 1.05fr 1fr; gap: 96px; align-items: start; text-align: left; }
.trust-heading .trust-lead .eyebrow { margin-bottom: 24px; }
.trust-heading .trust-lead h2 { font-size: clamp(38px, 4.35vw, 60px); max-width: 600px; line-height: 1.08; }
.trust-heading .trust-intro { margin-top: 28px; max-width: 445px; font-size: 16px; line-height: 1.85; color: var(--forest); }
.trust-heading .trust-principles { display: grid; gap: 32px; padding-top: 2px; }
.trust-heading .trust-principles article { padding: 0; border: 0; }
.trust-heading .trust-principles h3 { font-size: 24px; letter-spacing: -.035em; line-height: 1.25; color: var(--forest); }
.trust-heading .trust-principles p { font-size: 14px; line-height: 1.85; color: #4c5f52; margin-top: 12px; max-width: 490px; }
.trust-people .trust-responsibility { max-width: 720px; margin: 64px auto 0; text-align: center; color: var(--forest); font-size: 15px; line-height: 1.85; }
.trust-people .people-grid { margin-top: 32px; }
@media (max-width: 1000px) and (min-width: 761px) {
  .problem-opening .growth-situations { gap: 28px; }
  .problem-opening .growth-situations h3 { font-size: 22px; }
  .trust-people .trust-heading { gap: 44px; grid-template-columns: 1fr 1.05fr; }
}
@media (max-width: 760px) {
  .problem-opening { padding-top: 56px; padding-bottom: 52px; }
  .problem-opening .opening-title { font-size: clamp(36px, 9.7vw, 48px); }
  .problem-opening .growth-situations { grid-template-columns: 1fr; gap: 30px; margin-top: 36px; }
  .problem-opening .growth-situations article { display: block; grid-row: auto; }
  .problem-opening .growth-situations h3 { max-width: 360px; font-size: 23px; }
  .problem-opening .growth-situations p { max-width: 460px; margin-top: 12px; font-size: 14px; line-height: 1.8; }
  .problem-opening .opening-bottom { margin-top: 36px; gap: 28px; }
  .problem-opening .opening-bottom > p { font-size: 14px; line-height: 1.8; }
  .trust-people .trust-heading { grid-template-columns: 1fr; gap: 36px; }
  .trust-heading .trust-lead .eyebrow { margin-bottom: 20px; }
  .trust-heading .trust-lead h2 { font-size: clamp(36px, 9.7vw, 48px); }
  .trust-heading .trust-intro { font-size: 15px; line-height: 1.8; margin-top: 24px; }
  .trust-heading .trust-principles { gap: 28px; }
  .trust-heading .trust-principles h3 { font-size: 23px; }
  .trust-heading .trust-principles p { font-size: 14px; line-height: 1.8; }
  .trust-people .trust-responsibility { margin-top: 40px; font-size: 14px; line-height: 1.8; text-align: left; }
  .trust-people .people-grid { margin-top: 28px; }
}
