@media screen and (min-width:768px){.blog-posts-section .content-grid.content-grid--desktop-grid.content-grid--gap{row-gap:2em;column-gap:var(--grid-spacing-loose)}.blog-posts-section .content-grid.content-grid--desktop-grid.content-grid--gap .content-grid-item{width:calc((100% - var(--grid-spacing-loose) * (var(--columns-desktop) - 1))/ var(--columns-desktop))}}@media screen and (max-width:767px){.blog-posts-section .content-grid.content-grid--mobile-grid.content-grid--gap{row-gap:2em}}.blog-posts-section .custom-badge{color:var(--badge-font-color)!important}

/* Boxed card style */
.blog-posts-section .blog-post-card--boxed{background-color:var(--card-background,transparent);border-radius:var(--card-radius,18px);padding:var(--card-padding,16px);display:flex;flex-direction:column;height:100%;box-sizing:border-box;transition:box-shadow .25s ease,transform .25s ease}
.blog-posts-section .blog-post-card--boxed:hover{box-shadow:0 4px 18px rgba(0,0,0,.06)}
.blog-posts-section .blog-post-card--boxed .blog-post-card__image-wrap{margin-bottom:18px}
.blog-posts-section .blog-post-card .blog-post-card__image,
.blog-posts-section .blog-post-card .blog-post-card__image.block-radius-clip{border-radius:var(--card-image-radius,12px);overflow:hidden}
.blog-posts-section .blog-post-card--boxed .blog-post-card__header{display:flex;flex-direction:column;gap:14px}
.blog-posts-section .blog-post-card--boxed .blog-post-card__title{margin:0;line-height:1.25;font-weight:600;word-break:break-word;overflow-wrap:anywhere}
.blog-posts-section .blog-post-card--boxed .blog-post-card__title a{color:inherit;text-decoration:none}
.blog-posts-section .blog-post-card--boxed .blog-post-card__title a:hover{text-decoration:underline}

/* 2-line title clamp (CSS fallback; activated via section setting) */
.blog-posts-section .blog-post-card__title.blog-post-card__title--clamp-2,
.blog-posts-section .blog-post-card__title.blog-post-card__title--clamp-2 a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Pill tags */
.blog-posts-section .blog-post-card__tags--filled-pill{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.blog-posts-section .blog-post-card__tags--filled-pill .blog-post-card__tag.custom-badge.badge {
  background-color: var(--card-tag-background, #fff) !important;
  color: var(--card-tag-text-color, #1f3b2d) !important;
  border-radius: 999px;
  padding: 10px 14px;
  font-size: 14px;
  text-transform: uppercase;
  line-height: 14px;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  font-weight: 500;
}
.blog-posts-section .blog-post-card--boxed .blog-post-card__tags-over-image{position:static;padding:0}
.blog-posts-section .blog-post-card--boxed .blog-post-card__tags-block{margin-bottom:0}

/* Equal-height cards: stretch grid/slider items and make cards fill the row */
.blog-posts-section .content-grid-item{display:flex;flex-direction:column;height:auto;align-self:stretch}
.blog-posts-section .content-grid-item > .blog-post-card,
.blog-posts-section .swiper-slide.content-grid-item > .blog-post-card{flex:1 1 auto;display:flex;flex-direction:column;height:100%}
.blog-posts-section .swiper-wrapper{align-items:stretch}
.blog-posts-section .swiper-slide{height:auto}

/* Split meta footer (pinned to bottom of card) */
.blog-posts-section .blog-post-card__meta--split{display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 14px;
  padding-top: 20px;
  margin: 0;
  opacity: 1;
  margin-top: auto;}
.blog-posts-section .blog-post-card__meta--split .blog-post-card__meta-left,
.blog-posts-section .blog-post-card__meta--split .blog-post-card__meta-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.blog-posts-section .blog-post-card__meta--split .blog-post-card__meta-right{margin-left:auto;text-align:right;justify-content:flex-end}

/* Header expands to push the footer/excerpt/button to the bottom */
.blog-posts-section .blog-post-card .blog-post-card__header{flex:1 1 auto;display:flex;flex-direction:column;gap:14px}
.blog-posts-section .blog-post-card--boxed .blog-post-card__header{flex:1 1 auto}

/* Inline meta also sticks to the bottom when split layout is not used */
.blog-posts-section .blog-post-card--meta-inline .blog-post-card__header > .blog-post-card__meta{margin-top:auto}

@media screen and (max-width:767px){
  .blog-posts-section .blog-post-card--boxed{padding:calc(var(--card-padding,16px) - 2px)}
  .blog-posts-section .blog-post-card__meta--split{font-size:12px}
}
