.responsible-materials {
  margin: 80px 0 12px;
  padding: clamp(26px, 4.5vw, 58px);
  border: 1px solid rgba(4,57,39,.16);
  border-radius: 28px;
  background: #f5f1e7;
  color: var(--green);
  scroll-margin-top: 120px;
}
.responsible-materials__intro { max-width: 730px; margin: 0 auto 42px; text-align: center; }
.responsible-materials__intro h2 {
  font-family: var(--serif);
  font-size: clamp(38px, 5vw, 64px);
  font-style: italic;
  font-weight: 400;
  line-height: 1.05;
  margin: 14px 0 22px;
}
.responsible-materials p { font-size: 14px; line-height: 1.85; }
.responsible-materials .eyebrow { font-size: 10px; line-height: 1.6; }
.responsible-materials__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.responsible-materials__card { border-top: 1px solid rgba(4,57,39,.22); padding-top: 22px; }
.responsible-materials__number { font-family: var(--serif); font-style: italic; font-size: 24px; opacity: .48; }
.responsible-materials h3 { font-family: var(--serif); font-size: 29px; font-weight: 400; line-height: 1.12; margin: 15px 0; }
.responsible-materials__traceability { display: grid; grid-template-columns: 1fr 2fr; gap: 32px; border-top: 1px solid rgba(4,57,39,.18); margin-top: 30px; padding-top: 28px; }
.responsible-materials .responsible-materials__sources { font-size: 11px; opacity: .7; margin-top: 24px; }
.responsible-materials__sources a { text-decoration: underline; text-underline-offset: 3px; }
.materials-note { margin-top: 22px; font-size: 12px; line-height: 1.6; }
@media (max-width: 760px) {
  .responsible-materials__grid, .responsible-materials__traceability { grid-template-columns: 1fr; }
  .responsible-materials { margin-top: 46px; padding: 28px 22px; border-radius: 20px; }
  .responsible-materials__grid { gap: 18px; }
  .responsible-materials__intro { margin-bottom: 28px; }
  .responsible-materials__traceability { gap: 0; }
}
