/* Author page: a centred profile over the photo, with the bio in a narrow card. */
.ap-center-hero { background: var(--brand-secondary); color: #fff; }
.ap-center-shade { background: linear-gradient(180deg, color-mix(in srgb, var(--brand-secondary) 88%, transparent), color-mix(in srgb, var(--brand-secondary) 96%, transparent)); }
.ap-center-inner { display: flex; flex-direction: column; align-items: center; padding-block: 2.5rem 6.5rem; text-align: center; }
.ap-center-inner nav, .ap-center-inner > :first-child { align-self: flex-start; }
.ap-center-inner .ap-avatar { margin-top: 1.5rem; box-shadow: 0 0 0 4px var(--brand-accent), 0 18px 40px -12px rgb(0 0 0 / .6); }
.ap-center-inner h1 { margin-top: 1.25rem; font-size: clamp(2.25rem, 5vw, 3.5rem); font-weight: 700; line-height: 1.1; }
.ap-role { margin-top: .375rem; color: rgb(255 255 255 / .85); font-size: 1.125rem; }
.ap-pill { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1rem; padding: .375rem .875rem; border-radius: 999px; background: rgb(255 255 255 / .12); font-size: .875rem; font-weight: 600; box-shadow: inset 0 0 0 1px rgb(255 255 255 / .2); }
.ap-center-inner .ap-social { margin-top: 1rem; }
.ap-center-bio { position: relative; z-index: 1; max-width: 52rem; margin: -4rem auto 0; padding: 1.75rem; border: 1px solid var(--color-line, #e2e8f0); border-radius: 1.5rem; background: #fff; text-align: center; box-shadow: 0 24px 50px -28px rgb(15 23 42 / .45); }
.ap-center-bio h2 { color: var(--brand-secondary); font-size: 1.5rem; font-weight: 700; }
.ap-lead { margin-top: .875rem; color: var(--brand-secondary); font-size: 1.25rem; font-weight: 500; line-height: 1.6; }
.ap-rest { margin-top: 1rem; color: color-mix(in srgb, var(--brand-text) 85%, white); line-height: 1.8; }
@media (min-width: 1024px) { .ap-center-bio { padding: 2.75rem 3.5rem; } }
