/* ===== BLOCK: blog (listing) ===== */
.blog {
  padding: 3rem 1.5rem;
}

.blog__inner {
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
}

.blog__title {
  font-weight: 400;
  font-size: 27px;
  margin-bottom: 2rem;
}

.blog__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}

.blog__column {
  flex: 1 1 100%;
}

.blog__card {
  padding: 1.5rem;
  border-left: 2px solid var(--color-primary);
}

.blog__card-image {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 1rem;
}

.blog__date {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
  opacity: 0.7;
}

.blog__card-title {
  font-weight: 400;
  font-size: 1.25rem;
  margin-bottom: 0.75rem;
}

.blog__card-title a {
  color: var(--color-primary);
}

.blog__excerpt {
  margin-bottom: 1rem;
}

.blog__readmore {
  color: var(--color-primary);
}

/* ===== BLOCK: article (detail) ===== */
.article {
  padding: 3rem 1.5rem;
}

.article__inner {
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
}

.article__back {
  display: inline-block;
  color: var(--color-primary);
  margin-bottom: 2rem;
}

.article__date {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
  opacity: 0.7;
}

.article__title {
  font-weight: 400;
  font-size: 27px;
  margin-bottom: 2rem;
}

.article__image {
  display: block;
  max-width: 600px;
  width: 100%;
  height: auto;
  margin-bottom: 2rem;
}

@media (min-width: 769px) {
  .blog__column {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .blog__title,
  .article__title {
    font-size: 35px;
  }
}

@media (min-width: 769px) {
  .blog__column {
    flex: 0 0 calc(50% - 0.75rem);
    max-width: calc(50% - 0.75rem);
  }
}

@media (min-width: 1024px) {
  .blog__column {
    flex: 0 0 calc(33.3333% - 1rem);
    max-width: calc(33.3333% - 1rem);
  }
}
