
/* ===== Premium blog card styling (post grid / query loop cards) ===== */
.wp-block-post {
  background: #ffffff;
  border: 1px solid #e6ede8;
  border-radius: 18px;
  padding-bottom: 26px;
  overflow: hidden;
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}
.wp-block-post:hover {
  box-shadow: 0 16px 32px rgba(16,58,24,0.09), 0 4px 10px rgba(16,58,24,0.06);
  border-color: #cfe8d3;
  transform: translateY(-3px);
}
.wp-block-post .wp-block-post-featured-image {
  margin: 0 0 22px;
  border-radius: 0;
}
.wp-block-post .wp-block-post-featured-image img {
  display: block;
  width: 100%;
  height: auto;
}
.wp-block-post > .wp-block-post-terms,
.wp-block-post > .wp-block-post-title,
.wp-block-post > .wp-block-post-excerpt,
.wp-block-post > .wp-block-post-date,
.wp-block-post > .wp-block-group {
  margin-left: 26px;
  margin-right: 26px;
}
.wp-block-post-terms {
  display: inline-block;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: 1.1px;
  color: #0a8a1f !important;
  background: #eaf9ea;
  padding: 6px 13px;
  border-radius: 999px;
  margin-bottom: 14px !important;
}
.wp-block-post-terms a { text-decoration: none !important; color: inherit; }
.wp-block-post-title {
  font-size: 22px !important;
  line-height: 1.32 !important;
  font-weight: 700;
  color: #16281c !important;
  margin-bottom: 13px !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wp-block-post-title a { text-decoration: none; transition: color .18s ease; }
.wp-block-post-title a:hover { color: #0a8a1f !important; }
.wp-block-post-excerpt {
  font-size: 15.5px !important;
  line-height: 1.62 !important;
  color: #5c6b64 !important;
  margin-bottom: 18px !important;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wp-block-post-excerpt__more-link {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #0a8a1f !important;
  text-decoration: none !important;
  border-bottom: 1.5px solid rgba(10,138,31,0.35);
  padding-bottom: 1px;
  transition: border-color .2s ease, gap .2s ease;
}
.wp-block-post-excerpt__more-link:hover {
  border-color: #0a8a1f;
  gap: 10px;
}
.wp-block-post-date {
  display: block !important;
  margin-top: 16px !important;
  padding-top: 14px;
  border-top: 1px solid #eef2ef;
  font-size: 12px !important;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: #99a7a0 !important;
}
@media (max-width: 782px) {
  .wp-block-post-title { -webkit-line-clamp: 3; }
}
