.blog-article-image {
  margin-top: 36px;
  overflow: hidden;
  border-radius: 28px;
  background: #e2e8f0;
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.14);
}

.blog-article-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.blog-article-image + .blog-article-layout {
  padding-top: 42px;
}

.blog-prose p:has(> img:only-child) {
  margin: 2.25rem 0;
}

.blog-prose p > img:only-child {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 22px;
  background: #e2e8f0;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
}

.blog-inline-visual {
  margin: 2.25rem 0;
  overflow: hidden;
  border: 1px solid rgba(99, 102, 241, 0.12);
  border-radius: 22px;
  background: #f8fafc;
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
}

.blog-inline-visual img {
  display: block;
  width: 100%;
  height: auto;
}

.blog-inline-visual--infographic {
  max-width: 680px;
  margin-right: auto;
  margin-left: auto;
  background: #fff;
}

.blog-inline-visual--photo img {
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

@media (max-width: 640px) {
  .blog-article-image {
    width: 100%;
    margin-top: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .blog-prose p:has(> img:only-child) {
    margin-inline: -16px;
  }

  .blog-prose p > img:only-child {
    border-radius: 0;
  }

  .blog-inline-visual {
    margin-right: -16px;
    margin-left: -16px;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }
}
