/* Shared layout for About / Contact / Editorial Policy / Cookie Policy */

.page-hero {
  padding: clamp(3rem, 6vw, 4.5rem) 0 clamp(2rem, 4vw, 3rem);
  border-bottom: 1px solid var(--indigo-line);
}
.page-hero h1 { max-width: 22ch; }
.page-hero p { max-width: 60ch; color: var(--mist); font-size: 1.05rem; }

.prose { padding: clamp(2.5rem, 5vw, 4rem) 0; }
.prose .container { max-width: 760px; }
.prose h2 { margin-top: 2.2rem; font-size: 1.4rem; }
.prose h2:first-child { margin-top: 0; }
.prose h3 { font-size: 1.05rem; margin-top: 1.6rem; }
.prose p { color: var(--mist); }
.prose ul, .prose ol { color: var(--mist); padding-left: 1.3rem; }
.prose li { margin-bottom: 0.5rem; }
.prose a { color: var(--marigold); text-decoration: underline; text-decoration-color: rgba(242,169,59,0.4); }

.contact-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.1rem;
  margin: 1.6rem 0 2rem;
}
.contact-cards .stub { --stub-notch: var(--indigo-950); padding: 1.4rem 1.5rem; }
.contact-cards .stub h3 { color: var(--ink); margin: 0 0 0.35rem; font-size: 1rem; }
.contact-cards .stub p { color: var(--ink-soft); margin: 0; font-size: 0.94rem; }
