/* About's editorial layout uses the shared public shell, type and brand tokens. */
.about-page { color:var(--text); background:var(--surface); }
.about-page *, .about-page *::before, .about-page *::after { box-sizing:border-box; }
.about-wrap { width:min(1180px,calc(100% - 64px)); margin-inline:auto; }
.about-page :is(h1,h2,h3,p,figure,ol) { margin:0; }
.about-page :is(a,button):focus-visible { outline:2px solid var(--brand-deep-purple); outline-offset:4px; }
body.public-design #main-content .about-page h2 { font-size:22px; line-height:1.4; font-weight:600; text-wrap:balance; }
body.public-design #main-content .about-page h3 { font-size:18px; line-height:1.5; font-weight:600; }
body.public-design #main-content .about-page p { line-height:1.65; }
body.public-design #main-content .about-page .about-eyebrow { margin-bottom:16px; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--brand-deep-purple); }
.about-hero { padding-block:64px; background:linear-gradient(180deg,var(--pastel-purple),var(--surface) 90%); }
.about-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
.about-hero h1 { max-width:19ch; }
.about-lead { margin-top:24px!important; max-width:37ch; color:var(--text-secondary); }
.about-hero-description { margin-top:16px!important; max-width:45ch; color:var(--text-muted); }
.about-art { min-width:0; }
.about-art img { display:block; width:100%; height:auto; }
.about-button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; max-width:100%; padding:12px 22px; margin-top:28px; border:1px solid transparent; border-radius:6px; background:var(--btn-primary-bg); color:var(--btn-primary-fg); font:600 14px/1.5 "Open Sans",Arial,sans-serif; text-align:center; text-decoration:none; box-shadow:none; transition:color .4s ease,background-color .4s ease,border-color .4s ease; }
.about-button:not(.about-button-secondary) { --btn-primary-hover-fg:#1B1C1A; }
.about-button:is(:hover,:focus-visible) { color:var(--btn-primary-hover-fg); border-radius:6px; }
.about-section { padding-block:56px; border-top:1px solid var(--border-hairline); }
.about-story-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:80px; }
.about-copy { max-width:65ch; color:var(--text-secondary); }
.about-copy p + p { margin-top:16px; }
.about-audience { background:var(--surface-canvas); }
.about-section-heading { margin-bottom:28px; }
.about-audience-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.about-audience-grid article { padding-top:20px; border-top:2px solid var(--border); }
.about-audience-grid p { margin-top:12px; color:var(--text-muted); }
.about-text-link { display:inline-flex; align-items:center; min-height:44px; color:var(--link-ink); font-size:14px; font-weight:600; text-decoration:underline; text-underline-offset:4px; }
.about-audience-grid .about-text-link { margin-top:8px; }
.about-workflow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; padding:0; list-style:none; }
.about-workflow li { display:flex; flex-direction:column; align-items:flex-start; border-top:1px solid var(--border); padding-top:20px; }
.about-step { display:block; margin-bottom:16px; color:var(--brand-deep-purple); font-size:14px; font-weight:600; }
.about-workflow p { margin-block:10px 8px!important; color:var(--text-muted); }
.about-workflow .about-text-link { margin-top:auto; }
.about-principles { background:var(--pastel-purple); }
.about-principles-intro { max-width:34ch; margin-top:16px!important; color:var(--text-muted); }
.about-values { padding:0; list-style:none; }
.about-values li + li { border-top:1px solid var(--border); margin-top:20px; padding-top:20px; }
.about-values p { margin-top:8px; color:var(--text-secondary); }
.about-values .about-text-link { margin-top:4px; }
.about-inline-link { display:inline; min-height:0; }
.about-closing { padding-block:36px; background:var(--surface-command); color:var(--text-on-dark); }
.about-closing-row { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.about-closing p { margin-top:12px; color:var(--text-on-dark-muted); }
.about-button-secondary { margin:0; flex-shrink:0; background:var(--surface); color:var(--text); border-color:var(--btn-secondary-border,var(--border)); }
.about-button-secondary:is(:hover,:focus-visible) { color:var(--brand-deep-purple); border-color:var(--brand-deep-purple); }
.about-more { display:flex; flex-wrap:wrap; gap:8px 32px; padding-block:20px; }
@media(max-width:900px) {
  .about-hero-grid { gap:28px; }
  .about-story-grid { gap:40px; }
  .about-workflow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 32px; }
}
@media(max-width:640px) {
  .about-wrap { width:calc(100% - 40px); }
  .about-hero { padding-block:36px; }
  .about-hero-grid,.about-story-grid,.about-audience-grid { grid-template-columns:1fr; gap:28px; }
  .about-art { max-width:480px; margin-inline:auto!important; }
  .about-section { padding-block:36px; }
  .about-closing-row { flex-direction:column; align-items:flex-start; gap:24px; }
  .about-more { gap:4px 24px; }
}
@media(max-width:380px) {
  .about-workflow { grid-template-columns:1fr; gap:24px; }
}
@media(prefers-reduced-motion:reduce) {
  .about-button { transition:none; }
}
