/* =========================================================
   Static pages (About, Contact, Legal, 404). Reuses tokens
   + shared components from style.css / archive.css.
   ========================================================= */

/* ---- Page header + content (generic + legal) ---- */
.page-header { max-width: var(--reading); margin-bottom: var(--sp-4); }
.page-header__title { margin: var(--sp-1) 0; }
.page-content > h2 { margin-top: var(--sp-6); }
.page-content > h3 { margin-top: var(--sp-4); }
.page-content > p, .page-content > ul, .page-content > ol { margin-bottom: var(--sp-3); }

/* ---- Contact ---- */
.contact-grid { display: grid; grid-template-columns: 1.4fr .9fr; gap: var(--sp-6); align-items: start; }
.contact-aside { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-md); padding: var(--sp-4); }
.contact-aside h2 { font-size: var(--fs-h4); margin-bottom: var(--sp-2); }
.contact-aside ul { list-style: none; padding: 0; margin: 0 0 var(--sp-3); display: grid; gap: 8px; }
.contact-note { font-size: var(--fs-small); color: var(--muted); margin: 0; }
@media (max-width: 860px) { .contact-grid { grid-template-columns: 1fr; } }

/* ---- 404 ---- */
.error-404 { text-align: center; max-width: 640px; margin: 0 auto var(--sp-6); }
.error-404 .search-form { max-width: 480px; margin: var(--sp-3) auto; }
.error-404 .no-results__topics { margin-top: var(--sp-4); }
.error-404 .chips { justify-content: center; }
