.about-page { background: var(--white); }
.about-page main { max-width: 780px; margin: 0 auto; padding: 56px var(--page-pad) 80px; }
.about-page main:focus { outline: none; }
.about-page-header h1 { font-size: clamp(28px, 2.5vw, 32px); line-height: 1.4; letter-spacing: normal; }
.about-page-positioning { font-size: 18px; line-height: 1.6; margin-top: 20px; }
.about-page-header > p:last-child { margin-top: 12px; color: var(--ink-soft); }
.about-page-toc { display: flex; gap: 12px 28px; flex-wrap: wrap; margin: 28px 0 8px; }
.about-page-toc a { display: inline-flex; align-items: center; min-height: 44px; color: var(--brand-dark); }
.about-page main > section { padding-top: 40px; scroll-margin-top: 28px; }
.about-page main h2 { font-size: var(--lead); line-height: 1.5; font-weight: 600; margin-bottom: 20px; }
.about-page main > section > p { margin-top: 16px; }
.about-page main > section > p:first-of-type { margin-top: 0; }
.about-page main p, .about-page main dd { overflow-wrap: anywhere; }
.about-page-rules { list-style: none; padding: 0; margin: 0; display: grid; gap: 24px; }
.about-page-rules strong { display: block; font-weight: 600; }
.about-page-rules p { margin-top: 6px; }
.about-page main > section a { color: var(--brand-dark); text-decoration: underline; text-underline-offset: 4px; }
.about-page-facts { display: grid; gap: 16px; margin: 0; padding: 28px; background: var(--surface); border-radius: var(--radius); }
.about-page-facts > div { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 24px; align-items: start; }
.about-page-facts dt { color: var(--ink-soft); }
.about-page-facts dd { margin: 0; }
.about-page .about-page-back { display: inline-flex; align-items: center; gap: 24px; min-height: 44px; margin-top: 20px; text-decoration: none; font-weight: 600; }
.about-page-back span { transition: transform 220ms var(--ease); }
.about-page-back:hover span { transform: translate(3px, -3px); }
.about-page footer { background: var(--surface); }
@media (max-width: 600px) {
  .about-page main { padding-top: 32px; padding-bottom: 56px; }
  .about-page-positioning { font-size: 16px; }
  .about-page-toc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 16px; margin-top: 24px; }
  .about-page main > section { padding-top: 32px; }
  .about-page-facts { padding: 24px 20px; }
  .about-page-facts > div { grid-template-columns: 72px minmax(0, 1fr); gap: 12px; }
}
