.about-hero > img {
  position: relative;
  inset: auto;
  width: 100%;
  height: auto;
  aspect-ratio: 1295 / 870;
  object-fit: contain;
}

.about-hero::after {
  background: linear-gradient(180deg, transparent 35%, rgba(15, 37, 24, .25) 58%, rgba(15, 37, 24, .94) 100%);
  pointer-events: none;
}

.about-hero .hero-inner {
  position: absolute;
  inset: auto 0 0;
  width: 100%;
  padding-top: 36px;
  padding-bottom: 48px;
}

.about-hero h1 { max-width: 920px; font-size: 48px; line-height: 1.15; overflow-wrap: break-word; text-wrap: balance; }
.about-story { padding-top: 56px; }
.about-story-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: 72px; align-items: center; }
.about-prose { min-width: 0; }
.about-prose > * + * { margin-top: 22px; }
.about-prose p { font-size: 17px; line-height: 1.8; color: var(--ink-2); overflow-wrap: break-word; }
.about-prose .h2 { font-size: 34px; line-height: 1.25; }
.about-prose h3 { font-size: 20px; line-height: 1.4; color: var(--leaf-dark); }
.about-partners { width: 100%; height: auto; aspect-ratio: 1122 / 1402; object-fit: contain; border-radius: 6px; }
.about-editorial { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 72px; }
.about-editorial > .h2 { font-size: 32px; line-height: 1.3; }
.about-source-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 80px; }
.about-text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--leaf); font-weight: 700; text-decoration: underline; text-underline-offset: 5px; }
.about-text-link svg { flex: 0 0 18px; }
.about-section-title { margin-bottom: 40px; font-size: 34px; }
.about-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.about-principles > div { border-top: 2px solid var(--leaf); padding-top: 24px; }
.about-faq > div + div { border-top: 1px solid var(--line); padding-top: 28px; margin-top: 28px; }
.about-faq .about-prose > * + * { margin-top: 12px; }
.about-closing-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 72px; align-items: center; }
.about-closing-grid > img { width: 100%; height: auto; object-fit: contain; border-radius: 6px; }
.about-prose .about-tagline { font-family: var(--serif); font-size: 23px; color: var(--leaf-dark); }
.about-closing .btn { white-space: normal; text-align: center; }

@media (max-width: 980px) {
  .about-story-grid, .about-editorial, .about-source-grid, .about-closing-grid { gap: 36px; }
  .about-principles { gap: 24px; }
}

@media (max-width: 760px) {
  .about-hero h1 { font-size: 34px; }
  .about-story-grid, .about-editorial, .about-source-grid, .about-closing-grid, .about-principles { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .about-prose .h2, .about-editorial > .h2, .about-section-title { font-size: 28px; }
  .about-partners { max-width: 440px; justify-self: center; }
  .about-closing-grid > img { max-width: 440px; justify-self: center; }
  .about-prose p { font-size: 16px; line-height: 1.75; }
  .about-hero::after { display: none; }
  .about-hero .hero-inner {
    position: relative;
    inset: auto;
    padding-top: 28px;
    padding-bottom: 32px;
  }
}
