/* ==========================================================================
   Page À propos — composition uniquement (préfixe ap-)
   ========================================================================== */

/* ---- 01 Le dirigeant ----------------------------------------------------- */
.ap-founder { align-items: start; row-gap: 32px; }
.ap-founder__lede { font-size: clamp(1.3125rem, 1rem + .85vw, 1.875rem); font-weight: 500; line-height: 1.3; letter-spacing: -.018em; text-wrap: pretty; max-width: 30ch; }
.ap-why { margin-top: clamp(28px, 3vw, 40px); border-top: 1px solid var(--line-strong); counter-reset: why; }
.ap-why > li { display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: 8px; padding: 18px 0 20px; border-bottom: 1px solid var(--line); counter-increment: why; }
.ap-why > li::before { content: counter(why, decimal-leading-zero); grid-row: 1 / 3; padding-top: .3em; font-size: var(--fs-xs); font-weight: 600; color: var(--fg-3); font-variant-numeric: tabular-nums; }
.ap-why__title { font-size: var(--fs-h4); line-height: 1.2; letter-spacing: -.02em; }
.ap-why p { margin-top: 6px; font-size: var(--fs-sm); color: var(--fg-2); max-width: 56ch; }
.ap-founder__sign { margin-top: 28px; }

@media (min-width: 1101px) {
  .ap-founder__portrait { grid-column: 1 / 6; }
  .ap-founder__body { grid-column: 7 / 13; }
}
@media (min-width: 861px) and (max-width: 1100px) {
  .ap-founder__portrait { grid-column: 1 / 6; }
  .ap-founder__body { grid-column: 6 / 13; padding-left: var(--gap); }
}
@media (max-width: 860px) {
  .ap-founder__portrait { aspect-ratio: 3 / 2; }
  .ap-founder__portrait .portrait__initials { font-size: 5.5rem; }
}

/* Fiche courte (4 faits) + renvois, sous la liste « pourquoi » */
.ap-facts { border-top: 0; }  /* prolonge les filets de la liste au-dessus */
.ap-links { display: flex; flex-wrap: wrap; gap: 4px 32px; margin-top: 16px; }

/* ---- 02 Engagements / liens --------------------------------------------- */
.ap-link { margin-top: 20px; }

/* ---- 03 Documents -------------------------------------------------------- */
@media (min-width: 641px) {
  .ap-docs th:first-child { width: 30%; }
  .ap-docs td:last-child { width: 22%; }
}

/* ---- 04–05 Limites et continuité ---------------------------------------- */
.ap-limits__grid { row-gap: clamp(56px, 7vw, 96px); align-items: start; }
.ap-no { border-top: 1px solid var(--line-strong); }
.ap-no > li { padding: 18px 0 20px; border-bottom: 1px solid var(--line); }
.ap-no__title { font-size: var(--fs-h4); line-height: 1.2; letter-spacing: -.02em; }
.ap-no p { margin-top: 6px; font-size: var(--fs-sm); color: var(--fg-2); max-width: 52ch; }
.ap-absence { border-top-color: var(--line-strong); }
@media (min-width: 861px) {
  .ap-limits__col:first-child { grid-column: 1 / 7; }
  .ap-limits__col:last-child { grid-column: 7 / 13; padding-left: var(--gap); }
}

@media (max-width: 600px) {
  .ap-facts { grid-template-columns: minmax(0, 1fr); }
  .ap-facts > div:nth-child(even) { padding-left: 0; border-left: 0; }
}
