.single-post main > .wp-block-group:first-child {
  padding-top: 88px;
}

.single-post .wp-block-post-title {
  margin-bottom: 64px;
}

.single-post .wp-block-post-title + .wp-block-group {
  display: none;
}

.single-post .entry-content {
  color: var(--text);
}

.single-post .entry-content > * {
  max-width: var(--content-width);
  margin-right: auto;
  margin-left: auto;
}

.single-post .entry-content h2:first-child {
  margin-top: 0;
}

.single-post .entry-content figure.wp-block-image {
  max-width: var(--content-width);
}

.single-post .entry-content .wp-block-image figcaption {
  margin-top: 14px;
}

.single-post .wp-block-comments,
.single-post .wp-block-post-navigation-link,
.single-post .wp-block-post-content + .wp-block-group,
.single-post .wp-block-post-content ~ .wp-block-group {
  display: none !important;
}

.blog main,
.home main {
  padding-top: 92px;
}

.blog main h1,
.home main h1 {
  max-width: var(--content-width);
  margin-bottom: 72px;
  color: transparent;
  font-size: 0;
  line-height: 0;
}

.home main h1::before,
.blog main h1::before {
  display: block;
  margin-bottom: 24px;
  color: var(--text);
  content: "AIで編集部を作る。";
  font-size: 46px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
}

.home main h1::after,
.blog main h1::after {
  display: block;
  color: var(--muted);
  content: "制作、検証、公開までを記録するAI時代のメディア研究所。";
  font-size: 18px;
  font-weight: 400;
  line-height: 1.8;
}

.blog .wp-block-post-title,
.home .wp-block-post-title {
  font-size: 28px;
  line-height: 1.32;
}

/* Japanese reading rhythm tuned against the first published AI Media article. */
.single-post {
  --font-size-body: 17px;
  --line-height-body: 1.82;
}

.single-post .entry-content {
  margin-top: 0 !important;
}

.single-post .entry-content p,
.single-post .entry-content li {
  font-size: 17px !important;
  line-height: 1.82 !important;
  letter-spacing: 0.002em;
}

.single-post .entry-content p {
  margin-top: 0 !important;
  margin-bottom: 1.32em !important;
}

.single-post .entry-content ul,
.single-post .entry-content ol {
  margin-top: 0.95em !important;
  margin-bottom: 1.45em !important;
  padding-left: 1.35em;
}

.single-post .entry-content li + li {
  margin-top: 0.32em !important;
}

.single-post .wp-block-post-title {
  margin-bottom: 52px;
  line-height: 1.16;
}

.single-post .entry-content > h2:not(.ai-article-card h2):not(.ai-production-log h2) {
  margin-top: 76px !important;
  margin-bottom: 18px !important;
  line-height: 1.32;
}

.single-post .entry-content > .ai-article-card + h2 {
  margin-top: 54px !important;
}

.single-post .entry-content > h3 {
  margin-top: 48px !important;
  margin-bottom: 14px !important;
}

.single-post .entry-content strong {
  line-height: inherit;
}

.single-post .entry-content figure.wp-block-image {
  margin-top: 40px !important;
  margin-bottom: 44px !important;
}

.single-post .entry-content .wp-block-image figcaption {
  margin-top: 10px;
  line-height: 1.55;
}

.single-post .ai-article-card,
.single-post .ai-production-log {
  margin-top: 0;
  margin-bottom: 52px;
  padding-top: 24px;
  padding-bottom: 24px;
  line-height: 1.62;
}

.single-post .ai-production-log {
  margin-top: 48px;
}

.single-post .ai-card-grid {
  gap: 11px 22px;
}

.single-post .ai-card-grid dd {
  line-height: 1.62;
}

@media (max-width: 780px) {
  .single-post {
    --font-size-body: 16px;
    --line-height-body: 1.78;
  }

  .single-post .entry-content,
  .single-post .entry-content > *,
  .single-post .wp-block-post-title {
    max-width: calc(100vw - 44px);
  }

  .single-post .entry-content {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .single-post .entry-content > * {
    margin-left: auto;
    margin-right: auto;
  }

  .single-post .entry-content p,
  .single-post .entry-content li {
    font-size: 16px !important;
    line-height: 1.78 !important;
    letter-spacing: 0;
  }

  .single-post .entry-content p {
    margin-bottom: 1.28em !important;
  }

  .single-post .wp-block-post-title {
    margin-bottom: 36px;
    font-size: 32px;
    line-height: 1.18;
  }

  .single-post .entry-content > h2:not(.ai-article-card h2):not(.ai-production-log h2) {
    margin-top: 58px !important;
    margin-bottom: 14px !important;
    font-size: 25px;
    line-height: 1.34;
  }

  .single-post .entry-content > .ai-article-card + h2 {
    margin-top: 44px !important;
  }

  .single-post .entry-content ul,
  .single-post .entry-content ol {
    margin-top: 0.75em !important;
    margin-bottom: 1.25em !important;
  }

  .single-post .entry-content li + li {
    margin-top: 0.24em !important;
  }

  .single-post .entry-content figure.wp-block-image {
    margin-top: 34px !important;
    margin-bottom: 38px !important;
  }

  .single-post .ai-article-card,
  .single-post .ai-production-log {
    max-width: calc(100vw - 44px);
    margin-bottom: 42px;
    padding: 20px 18px;
    line-height: 1.56;
  }

  .single-post .ai-card-grid {
    gap: 5px;
  }

  .single-post .ai-card-grid dd {
    line-height: 1.56;
  }
}
