/* About page body. The accepted graphite fold stays unchanged. */
body:not(.home) .about-page#main-content { padding: 0; }

.about-page__intro {
  position: relative;
  overflow: clip;
}

.about-page__intro-content {
  position: relative;
  z-index: 1;
}

.about-page__intro-art {
  display: none;
}


@media (min-width: 60.001rem) {
  .about-page__intro .inner-page-intro__title,
  .about-page__intro .inner-page-intro__lead {
    max-width: 53%;
  }

  .about-page__intro-art {
    position: absolute;
    top: 50%;
    right: calc(max(var(--gutter), (100% - var(--container-wide)) / 2) - 4rem);
    display: block;
    width: min(58vw, 64rem);
    aspect-ratio: 4 / 3;
    transform: translateY(-43%);
    pointer-events: none;
  }

  .about-page__intro-art img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    -webkit-mask-image: linear-gradient(
      90deg,
      transparent 0%,
      rgb(37 37 40 / 55%) 3%,
      rgb(37 37 40) 9%,
      rgb(37 37 40) 86%,
      rgb(37 37 40 / 55%) 95%,
      transparent 100%
    );
    mask-image: linear-gradient(
      90deg,
      transparent 0%,
      rgb(37 37 40 / 55%) 3%,
      rgb(37 37 40) 9%,
      rgb(37 37 40) 86%,
      rgb(37 37 40 / 55%) 95%,
      transparent 100%
    );
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
}


/* New editorial body; typography uses the shared h1–h6 scale. */
.about-page__body { padding-block: var(--section-space); color: var(--color-text); background: var(--color-bg); }
.about-page__body :is(p, figure, ul, ol) { margin: 0; }
.about-page__body > .container-wide { display: grid; gap: var(--section-space); }
.about-page__body h2 { max-width: 16ch; }
.about-page__body h2 em { color: var(--color-accent); font-family: var(--font-serif); font-weight: 500; }
.about-page__label { color: var(--color-accent); font-size: var(--text-xs); font-weight: 700; letter-spacing: .14em; line-height: var(--leading-ui); text-transform: uppercase; }
.about-page__body :is(header, .about-team__intro) { display: grid; align-content: start; gap: var(--space-md); }
.about-page__copy { display: grid; align-content: start; justify-items: start; gap: var(--space-md); color: var(--color-body); font-size: var(--text-body); line-height: var(--leading-relaxed); }
.about-page__copy p { max-width: 64ch; }
.about-page__lead { color: var(--color-text); font-size: var(--text-lead); line-height: var(--leading-body); }
.about-page__section-head { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: var(--space-xl); align-items: start; }
.about-page__text-link { display: inline-flex; align-items: center; gap: var(--space-sm); min-height: 2.75rem; margin-top: var(--space-xs); padding-block: .55rem; border-bottom: 1px solid var(--color-accent); color: var(--color-text); font-size: var(--text-sm); font-weight: 600; line-height: var(--leading-ui); text-decoration: none; }
.about-page__text-link:hover { color: var(--color-accent); }
.about-page__text-link span { color: var(--color-accent); font-size: 1.3em; }
.about-page__body a:focus-visible { outline-color: var(--color-accent); }

.about-story { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: var(--space-2xl) var(--space-xl); }
.about-story__year { align-self: end; color: var(--color-accent); }
.about-story__year > span { display: block; font-family: var(--font-serif); font-size: clamp(5rem, 11vw, 11rem); font-weight: 500; letter-spacing: -.04em; line-height: .85; }
.about-story__year p { margin-top: var(--space-md); color: var(--color-muted); font-size: var(--text-xs); }
.about-story__milestones { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-lg); padding: 0; list-style: none; }
.about-story__milestones > li { padding-top: var(--space-md); border-top: 1px solid var(--color-border-strong); }
.about-story__milestones h3 { margin-bottom: var(--space-sm); color: var(--color-accent); }
.about-story__milestones p { color: var(--color-body); font-size: var(--text-sm); line-height: var(--leading-relaxed); }

.about-principles { display: grid; gap: var(--space-xl); padding-block: var(--space-2xl); border-block: 1px solid var(--color-border-strong); }
.about-principles__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 var(--space-xl); padding: 0; list-style: none; }
.about-principles__list > li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: var(--space-md); padding-block: var(--space-lg); border-bottom: 1px solid var(--color-border); }
.about-principles__list > li[data-dg-motion-sequence] { --dg-sequence-row-size: 3; }
.about-principles__number { color: var(--color-accent); font-family: var(--font-serif); font-size: var(--text-h4); font-style: italic; line-height: 1; }
.about-principles__list .h5 { max-width: 21ch; line-height: var(--leading-body); }
.about-principles__closing { max-width: 74ch; padding-left: var(--space-lg); border-left: 2px solid var(--color-accent); color: var(--color-body); font-size: var(--text-body); line-height: var(--leading-relaxed); }

.about-presence { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.1fr); align-items: center; gap: var(--space-xl); }
.about-presence__content { display: grid; gap: var(--space-lg); }
.about-presence__reach { display: flex; align-items: stretch; gap: var(--space-lg); }
.about-presence__reach-item { display: grid; gap: var(--space-sm); }
.about-presence__reach-item + .about-presence__reach-item { padding-inline-start: var(--space-lg); border-inline-start: 1px solid var(--color-border-strong); }
.about-presence__reach strong { color: var(--color-accent); font-family: var(--font-serif); font-size: clamp(4.5rem, 6vw, 7rem); font-weight: 500; line-height: .9; }
.about-presence__reach strong span { font-size: .5em; vertical-align: top; }
.about-presence__reach-item p { margin: 0; color: var(--color-muted); font-size: var(--text-sm); line-height: var(--leading-body); }
.about-presence__office { min-width: 0; overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-panel); background: var(--color-surface); }
.about-presence__office picture, .about-presence__office img { display: block; width: 100%; }
.about-presence__office img { height: auto; }
.about-presence__office figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-xs) var(--space-md); padding: var(--space-md) var(--space-lg); color: var(--color-body); font-size: var(--text-xs); line-height: var(--leading-body); }
.about-presence__office figcaption strong { color: var(--color-text); font-weight: 600; }

.about-team { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.1fr); gap: var(--space-xl); padding-top: var(--space-2xl); border-top: 1px solid var(--color-border-strong); }
.about-page__body .about-team__intro { gap: var(--space-lg); }
.about-team__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: var(--space-lg); }
.about-person { min-width: 0; }
.about-person__portrait { position: relative; overflow: hidden; border-radius: var(--radius-card); background: var(--color-surface); }
.about-person__portrait img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; }
.about-person__identity { display: grid; gap: var(--space-xs); padding-block: var(--space-md); }
.about-person__identity p { max-width: 30ch; color: var(--color-body); font-size: var(--text-sm); line-height: var(--leading-body); }

@media (max-width: 80rem) {
  .about-story__milestones { grid-template-columns: minmax(0, 1fr); gap: var(--space-md); }
  .about-story__year { align-self: center; }
}

@media (max-width: 60rem) {
  .about-page__section-head, .about-presence, .about-team { grid-template-columns: minmax(0, 1fr); }
  .about-story { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); }
  .about-story__heading { grid-column: 1 / -1; }
  .about-story__year { grid-column: 1; grid-row: 2; align-self: start; }
  .about-story__copy { grid-column: 2; grid-row: 2; }
  .about-story__milestones { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-lg); }
  .about-principles__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-principles__list > li[data-dg-motion-sequence] { --dg-sequence-row-size: 2; }
  .about-presence__content { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-lg); }
  .about-presence__copy { grid-column: 2; grid-row: 1 / span 2; }
  .about-presence__office { margin-top: var(--space-md); }
  .about-page__body .about-team__intro { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: var(--space-xl); }
}

@media (max-width: 40rem) {
  .about-story, .about-presence__content, .about-page__body .about-team__intro { grid-template-columns: minmax(0, 1fr); }
  .about-story { gap: var(--space-xl); }
  .about-story__heading, .about-story__copy, .about-story__year, .about-story__milestones, .about-presence__copy { grid-column: auto; grid-row: auto; }
  .about-story__year { padding-top: var(--space-lg); border-top: 1px solid var(--color-border-strong); }
  .about-story__milestones { grid-template-columns: minmax(0, 1fr); gap: var(--space-md); }
  .about-principles__list { grid-template-columns: minmax(0, 1fr); }
  .about-principles__list > li[data-dg-motion-sequence] { --dg-sequence-row-size: 1; }
  .about-principles__list > li { padding-block: var(--space-md); }
  .about-principles__closing { padding-left: var(--space-md); }
}

@media (max-width: 35rem) {
  .about-team__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-xl); }
  .about-person { width: 100%; max-width: 28rem; }
}
