/* ============================================
   Pages — page-specific layouts
   ============================================ */

/* Prose (interior copy: FVSP page, event details, thank-you post) */
.prose { max-width: var(--max-width-narrow); margin: 0 auto; font-size: var(--text-lg); line-height: var(--leading-relaxed); color: var(--text-secondary); }
.prose h2 { font-size: var(--text-3xl); color: var(--text-primary); margin: var(--space-2xl) 0 var(--space-md); }
.prose p { margin-bottom: var(--space-lg); }
.prose a { color: var(--brand); text-decoration: underline; }
.prose img { border-radius: var(--radius-md); margin: var(--space-xl) auto; box-shadow: var(--shadow-md); }
.prose strong { color: var(--text-primary); }

/* Contact details */
.contact-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: var(--space-xl); max-width: 760px; margin: 0 auto; }
.contact-item { text-align: center; }
.contact-item h3 { font-size: var(--text-lg); margin-bottom: var(--space-xs); }
/* Contact actions are the primary thing to DO on a phone (tap to call, jump to the
   form), so they get real 44px targets instead of being inline text in a paragraph. */
.contact-item__links { display: flex; flex-direction: column; align-items: center; gap: var(--space-xs); margin-top: var(--space-xs); }
.tap-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 var(--space-sm); }
