.module-blog .grid-blog {
  gap: var(--digifox-blog-gap, 20px);
  padding: var(--digifox-blog-pad, 0px);
}

/* Slider mode: simulate visual gap via per-slide padding.
 * Theme slider sets slide widths via percent math and doesn't account for CSS gap.
 * Using padding avoids breaking its translation/rounding. */
.module-blog .digifox-blog-slider .digifox-blog-slide {
  padding: 0 calc(var(--digifox-blog-gap, 20px) / 2) !important;
  margin: 0;
  box-sizing: border-box;
}
.module-blog .digifox-blog-slider .digifox-blog-track {
  margin: 0 calc(-1 * (var(--digifox-blog-gap, 20px) / 2)) !important;
}

.module-blog .digifox-blog-card {
  display: flex;
  flex-direction: column;
}

.module-blog.module-blog--card-radius .digifox-blog-card {
  border-radius: var(--digifox-blog-card-radius) !important;
}

.module-blog .digifox-blog-card__image {
  display: block;
  overflow: hidden;
  border-radius: var(--digifox-blog-radius, 0%);
  flex: 0 0 auto;
}

.module-blog .digifox-blog-card__image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: inherit;
}

/* Optional crop: set by --digifox-blog-aspect (e.g. 4 / 3, 1 / 1) */
.module-blog .digifox-blog-card__image {
  aspect-ratio: var(--digifox-blog-aspect, auto);
}
.module-blog.module-blog--cropped .digifox-blog-card__image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.module-blog .digifox-blog-card__body {
  text-align: left;
  position: static;
  inset: auto;
  width: auto;
  background: transparent;
  flex: 1 1 auto;
}

.module-blog .digifox-blog-card__title {
  margin: 0 0 0.35rem 0;
  text-align: left;
}

.module-blog .digifox-blog-card__title a {
  text-decoration: none;
}

.module-blog .digifox-blog-card__meta {
  font-size: 0.9em;
  opacity: 0.75;
  margin-bottom: 0.75rem;
}

.module-blog .digifox-blog-card__excerpt p {
  margin: 0 0 1rem 0;
}

.module-blog .digifox-blog-card__footer {
  margin-top: 0.5rem;
}

@media (max-width: 820px) {
  .module-blog .grid-blog {
    grid-template-columns: 1fr !important;
  }
}

