.post-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.post-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.08);
}

/* Blog listing + single post: plain background (no section-cta-panel photo) */
.blog-content-section {
  position: relative;
  isolation: isolate;
  background-color: transparent;
  background-image: none;
}

.blog-content-section::before {
  display: none;
  content: none;
}

body.blog-post-page {
  --blog-header-clearance: 9rem;
}

@media (min-width: 641px) {
  body.blog-post-page {
    --blog-header-clearance: 10rem;
  }
}

body.blog-post-page .blog-content-section--main {
  padding-top: var(--blog-header-clearance);
}

/* base.css mobile sets section { padding-top: 2.5rem !important } — restore header clearance */
@media (max-width: 640px) {
  body.blog-post-page .blog-content-section--main {
    padding-top: 10.5rem !important;
    padding-bottom: 2rem !important;
  }

  body.blog-post-page .blog-post-layout {
    padding-top: 0.25rem;
  }

  body.blog-post-page .site-breadcrumb {
    margin-bottom: 1.25rem !important;
  }
}

body.blog-post-page .blog-post-grid {
  align-items: start;
}

body.blog-post-page .blog-post-grid > article,
body.blog-post-page .blog-post-grid > aside {
  align-self: start;
}

body.blog-post-page .blog-sidebar {
  top: var(--blog-header-clearance);
}

body.blog-page .blog-post-grid,
body.blog-page .grid.lg\:grid-cols-3 {
  align-items: start;
}

body.blog-page .blog-sidebar {
  top: 1.5rem;
}
