/* Blog pages only. Reuses the booking page's palette and fonts from styles.css. */
.blog-header { background: var(--hero-bg); border-bottom: 1px solid var(--line); }
.blog-header .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding-top: 16px; padding-bottom: 16px; }
.blog-home { font-family: var(--font-display); font-size: 1.5rem; color: var(--ink); text-decoration: none; }
.blog-home span { display: block; font-family: var(--font-body); font-size: .85rem; color: var(--muted); }
.blog-header nav { display: flex; align-items: center; gap: 16px; }
.blog-main { padding-top: 40px; padding-bottom: var(--space-section); max-width: 760px; }
.blog-main h1 { font-family: var(--font-display); }
.post-list { list-style: none; padding: 0; display: grid; gap: 28px; }
.post-list a { color: var(--ink); text-decoration: none; }
.post-list a:hover h2 { text-decoration: underline; }
.post-list h2 { margin-bottom: 4px; }
.post-meta { color: var(--muted); font-size: .9rem; margin-top: 0; }
.post img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius); margin: 8px 0 24px; }
.post { line-height: 1.65; }
.post h2 { font-family: var(--font-display); margin-top: 2em; }
.post-cta { margin-top: 40px; }
footer a { color: inherit; }
