.about-page { background: #fff; }
.about-page .about-hero { position: relative; display: grid; isolation: isolate; min-height: 590px; grid-template-columns: 1fr; overflow: hidden; background: #eef1ed; }
.about-page .about-media { position: absolute; inset: 0; z-index: -2; background: #e1e6df; }
.about-page .about-media img { width: 100%; height: 100%; object-fit: cover; object-position: center 48%; }
.about-page .about-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 31%, rgba(255,255,255,.72) 48%, rgba(255,255,255,0) 72%); }
.about-page .about-copy { width: min(1240px, calc(100% - 64px)); margin-inline: auto; padding: 72px 0; min-height: 590px; }
.about-page .about-copy .display-title { max-width: 590px; font-size: 54px; line-height: 1.1; text-wrap: balance; }
.about-page .about-copy .section-copy { max-width: 505px; color: #374c43; font-size: 17px; line-height: 1.65; }
.about-page .about-copy .rule { margin-top: 22px; }
.about-page .value-strip { border-bottom: 1px solid var(--line); background: #fff; }
.about-page .value-card { min-height: 150px; padding: 28px 32px; display: grid; grid-template-columns: 36px minmax(0,1fr); column-gap: 18px; align-content: center; }
.about-page .value-card .icon { grid-row: 1 / 3; width: 32px; height: 32px; margin: 2px 0 0; }
.about-page .value-card h3 { font-size: 15px; margin-bottom: 6px; }
.about-page .value-card p { font-size: 14px; line-height: 1.6; }
.about-page #quality { width: min(1240px, calc(100% - 64px)); margin-inline: auto; padding: 80px 0; min-height: 0; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 64px; align-items: center; }
.about-page #quality .partner-copy, .about-page .sustainability-band .partner-copy { padding: 0; min-width: 0; }
.about-page #quality .section-title, .about-page .sustainability-band .section-title { font-size: 38px; line-height: 1.15; max-width: 560px; }
.about-page #quality .partner-media, .about-page .sustainability-band .partner-media { background: transparent; }
.about-page #quality .partner-media img, .about-page .sustainability-band .partner-media img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; }
.about-page #quality .check-list { gap: 16px; margin: 24px 0 28px; }
.about-page #quality .check-list li { display: grid; grid-template-columns: 20px minmax(0,1fr); gap: 12px; font-size: 15px; line-height: 1.7; }
.about-page #quality .check-list li::before { margin-top: 3px; }
.about-page #quality .check-list li > span { min-width: 0; }
.about-page #quality .check-list strong { display: inline; }
.about-page #process { padding: 56px 0 64px; background: #f3f6f3; }
.about-page #process .section-title { max-width: 680px; margin-inline: auto; font-size: 40px; line-height: 1.15; }
.about-page #process .narrow-head { margin-bottom: 36px; }
.about-page .sustainability-band { display: block; min-height: 0; padding: 72px 0; background: #fff; }
.about-page .about-sustainability-inner { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 72px; align-items: center; }
.about-page .sustainability-band .check-list { font-size: 15px; line-height: 1.65; gap: 14px; margin: 24px 0; }
.about-page .sustainability-band .check-list li::before { margin-top: 2px; }
.about-page #quality { row-gap: 32px; }
.about-page .quality-marks { grid-column: 1 / -1; display: flex; align-items: center; justify-content: center; gap: 48px; padding-top: 24px; border-top: 1px solid var(--line); }
.about-page .quality-marks img { flex: none; width: 80px; height: 80px; object-fit: contain; }
@media (min-width: 1800px) {
  .about-page .about-hero, .about-page .about-copy { min-height: 620px; }
}
@media (max-width: 1060px) {
  .about-page .about-copy { padding-block: 56px; }
  .about-page .about-copy .display-title { max-width: 500px; font-size: 48px; }
  .about-page #quality, .about-page .about-sustainability-inner { gap: 36px; }
  .about-page #quality .section-title, .about-page .sustainability-band .section-title { font-size: 34px; }
  .about-page .value-card { padding: 24px 20px; grid-template-columns: 1fr; }
  .about-page .value-card .icon { grid-row: auto; margin-bottom: 14px; }
}
@media (max-width: 960px) {
  .about-page .about-hero { display: flex; flex-direction: column; min-height: 0; }
  .about-page .about-hero::after { display: none; }
  .about-page .about-media { position: relative; inset: auto; z-index: auto; order: -1; aspect-ratio: 16 / 9; max-height: 300px; flex: none; }
  .about-page .about-media img { position: absolute; inset: 0; object-position: center; }
  .about-page .about-copy { min-height: 0; width: calc(100% - 40px); padding: 32px 0 40px; }
  .about-page .about-copy .display-title { font-size: 38px; max-width: 560px; }
  .about-page .about-copy .section-copy { font-size: 16px; }
  .about-page .about-copy .eyebrow { margin-bottom: 12px; }
  .about-page .about-copy .rule { margin-top: 20px; }
  .about-page .value-grid { grid-template-columns: 1fr; padding-block: 8px; }
  .about-page .value-card { grid-template-columns: 32px minmax(0,1fr); min-height: 0; padding: 20px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .about-page .value-card:last-child { border-bottom: 0; }
  .about-page .value-card .icon { grid-row: 1 / 3; margin: 2px 0 0; }
  .about-page #quality { width: calc(100% - 40px); padding: 48px 0; grid-template-columns: 1fr; gap: 32px; }
  .about-page #quality .section-title, .about-page .sustainability-band .section-title { font-size: 32px; }
  .about-page #quality .section-copy, .about-page .sustainability-band .section-copy { font-size: 16px; }
  .about-page #quality .check-list { margin-bottom: 24px; }
  .about-page #process { padding: 44px 0; }
  .about-page #process .section-title { font-size: 32px; }
  .about-page .sustainability-band { padding: 48px 0; }
  .about-page .about-sustainability-inner { width: calc(100% - 40px); grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 600px) {
  .about-page .quality-marks { gap: 16px; }
  .about-page .quality-marks img { width: 60px; height: 60px; }
}
