.blog-page .blog-heading { max-width: 900px; margin-inline: auto; }
.blog-page .blog-grid { grid-template-columns: minmax(0, 1fr); max-width: 900px; margin-inline: auto; }
.blog-page .blog-card { display: grid; grid-template-columns: minmax(0, 25%) minmax(0, 1fr); align-items: stretch; padding: 0; }
.blog-page .blog-card--mint { background: #fff; border-color: #dce8e2; }
.blog-page .blog-card-photo { width: 100%; height: auto; align-self: center; aspect-ratio: 1 / 1; border-radius: 21px 0 0 21px; background: #fff; }
.blog-page .blog-card-photo img { display: block; width: 100%; height: 100%; aspect-ratio: 1 / 1; object-fit: cover; object-position: center; }
.blog-page .blog-card-content { padding: clamp(22px, 4vw, 32px); }
.blog-page .blog-card h2 { max-width: 650px; }
.blog-page .blog-card h2 a { color: #123b2b; }
.blog-page .blog-card h2 a::after { border-radius: 22px; }
.blog-page .blog-card p { max-width: 650px; }
.blog-page .blog-invitation { max-width: 900px; margin: 42px auto 0; padding: 24px 28px; border-radius: 18px; }
@media (max-width: 600px) {
  .blog-page .blog-card { grid-template-columns: minmax(90px, 27%) minmax(0, 1fr); }
  .blog-page .blog-card-content { padding: 18px 16px; }
  .blog-page .blog-card h2 { margin: 12px 0 10px; font-size: 19px; line-height: 1.25; }
  .blog-page .blog-card p { margin-bottom: 14px; font-size: 14px; line-height: 1.45; }
  .blog-page .blog-invitation { margin-top: 28px; padding: 20px; }
}

/* Keep the subject in frame in the square blog thumbnails. */
.blog-page .blog-card-photo img[src*="odinochestvo"] { object-position: 56% 50%; }
.blog-page .blog-card-photo img[src*="oleg-moseev"] { object-position: 50% 20%; }
