.single-post-layout .entry-subheading,
.single-post-layout .isp-quick-answer,
.single-post-layout .isp-quick-action,
.single-post-layout .isp-article-conclusion {
  width: min(calc(100% - 32px), 820px);
  margin-inline: auto;
}

.single-post-layout .entry-subheading {
  max-width: 720px;
  margin-top: 18px;
  margin-left: 0;
  color: #686568;
  font-size: clamp(1.08rem, 2vw, 1.28rem);
  line-height: 1.65;
}

.single-post-layout .entry-meta__reading-time {
  white-space: nowrap;
}

/*
 * Standard article introduction.
 *
 * New content should use the isp-post-intro class on a Group block containing
 * normal Paragraph blocks. The first Quote block remains supported as a
 * compatibility path for existing posts that used Quote as the introduction.
 * The visual treatment is intentionally editorial rather than callout-like.
 */
.single-post-layout .entry-content > .isp-post-intro,
.single-post-layout .entry-content > .wp-block-quote:first-child,
.single-post-layout .entry-content > blockquote:first-child {
  width: min(100%, var(--isp-article-width-reading, 760px));
  max-width: var(--isp-article-width-reading, 760px);
  margin: var(--isp-article-space-6, 3rem) 0 var(--isp-article-space-5, 2rem);
  padding: 0 0 0 var(--isp-article-space-4, 1.5rem);
  border: 0;
  border-left: 3px solid color-mix(in srgb, var(--isp-secondary, #ed73a4) 72%, transparent);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--isp-article-color-body, #4f4c4e);
  font-size: var(--isp-article-font-body, 1.125rem);
  font-style: normal;
  line-height: var(--isp-article-line-body, 1.7);
}

.single-post-layout .entry-content > .isp-post-intro > :first-child,
.single-post-layout .entry-content > .wp-block-quote:first-child > :first-child,
.single-post-layout .entry-content > blockquote:first-child > :first-child {
  margin-top: 0;
}

.single-post-layout .entry-content > .isp-post-intro > :last-child,
.single-post-layout .entry-content > .wp-block-quote:first-child > :last-child,
.single-post-layout .entry-content > blockquote:first-child > :last-child {
  margin-bottom: 0;
}

.single-post-layout .entry-content > .isp-post-intro > p,
.single-post-layout .entry-content > .wp-block-quote:first-child > p,
.single-post-layout .entry-content > blockquote:first-child > p {
  margin-bottom: var(--isp-article-space-4, 1.5rem);
  color: inherit;
  font: inherit;
}

.single-post-layout .entry-content > .isp-post-intro > p:first-child,
.single-post-layout .entry-content > .wp-block-quote:first-child > p:first-child,
.single-post-layout .entry-content > blockquote:first-child > p:first-child {
  font-size: var(--isp-article-font-lead, clamp(1.16rem, 1.06rem + 0.34vw, 1.4rem));
  font-weight: 500;
  line-height: 1.6;
}

.single-post-layout .entry-content > .wp-block-quote:first-child cite,
.single-post-layout .entry-content > blockquote:first-child cite {
  display: none;
}

.single-post-layout .isp-quick-answer,
.single-post-layout .isp-quick-action,
.single-post-layout .isp-article-conclusion {
  margin-top: clamp(32px, 5vw, 48px);
}

.single-post-layout .isp-quick-answer {
  padding: clamp(22px, 4vw, 30px);
  border: 1px solid #cfe8f6;
  border-radius: 20px;
  background: #f5fbfe;
  box-shadow: 0 10px 28px rgba(68, 68, 68, .045);
}

.single-post-layout .isp-quick-answer__label,
.single-post-layout .isp-quick-action__label {
  margin: 0 0 9px;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.single-post-layout .isp-quick-answer__label {
  color: #31769f;
}

.single-post-layout .isp-quick-answer__text,
.single-post-layout .isp-quick-action__text {
  color: #4f4c4e;
  font-size: 1.02rem;
  line-height: 1.7;
}

.single-post-layout .isp-quick-action {
  --isp-quick-action-accent: #31769f;
  --isp-quick-action-bg: #f7fbfe;
  padding: clamp(20px, 4vw, 28px);
  border: 1px solid var(--isp-border);
  border-left: 4px solid var(--isp-quick-action-accent);
  border-radius: 16px;
  background: var(--isp-quick-action-bg);
}

.single-post-layout .isp-quick-action__label {
  color: var(--isp-quick-action-accent);
}

.single-post-layout .isp-quick-action--try-this {
  --isp-quick-action-accent: #357457;
  --isp-quick-action-bg: #f5faf7;
}

.single-post-layout .isp-quick-action--say-this {
  --isp-quick-action-accent: #6d568f;
  --isp-quick-action-bg: #faf8fd;
}

.single-post-layout .isp-quick-action--watch-for {
  --isp-quick-action-accent: #8a651d;
  --isp-quick-action-bg: #fffaf1;
}

.single-post-layout .isp-quick-action--avoid-this {
  --isp-quick-action-accent: #9a4d58;
  --isp-quick-action-bg: #fff7f8;
}

.single-post-layout .isp-quick-action--remember {
  --isp-quick-action-accent: #5d6586;
  --isp-quick-action-bg: #f7f8fc;
}

.single-post-layout .isp-quick-action--next-step {
  --isp-quick-action-accent: #2e7471;
  --isp-quick-action-bg: #f4faf9;
}

.single-post-layout .isp-quick-action--when-to-get-help {
  --isp-quick-action-accent: #87506f;
  --isp-quick-action-bg: #fff8fb;
}

.single-post-layout .isp-quick-answer__text > *:first-child,
.single-post-layout .isp-quick-action__text > *:first-child,
.single-post-layout .isp-article-conclusion__text > *:first-child {
  margin-top: 0;
}

.single-post-layout .isp-quick-answer__text > *:last-child,
.single-post-layout .isp-quick-action__text > *:last-child,
.single-post-layout .isp-article-conclusion__text > *:last-child {
  margin-bottom: 0;
}

.single-post-layout .isp-article-conclusion {
  padding-top: clamp(28px, 4vw, 38px);
  border-top: 1px solid var(--isp-border);
}

.single-post-layout .isp-article-conclusion h2 {
  margin: 0 0 14px;
  color: var(--isp-ink);
  font-size: clamp(1.7rem, 3.2vw, 2.35rem);
  letter-spacing: -.035em;
  line-height: 1.15;
}

.single-post-layout .isp-article-conclusion__text {
  color: #555255;
  font-size: 1.04rem;
  line-height: 1.75;
}

@media (max-width: 620px) {
  .single-post-layout .entry-subheading,
  .single-post-layout .isp-quick-answer,
  .single-post-layout .isp-quick-action,
  .single-post-layout .isp-article-conclusion {
    width: min(calc(100% - 28px), 820px);
  }

  .single-post-layout .entry-content > .isp-post-intro,
  .single-post-layout .entry-content > .wp-block-quote:first-child,
  .single-post-layout .entry-content > blockquote:first-child {
    margin-top: var(--isp-article-space-5, 2rem);
    padding-left: var(--isp-article-space-3, 1rem);
    border-left-width: 3px;
  }

  .single-post-layout .entry-meta {
    gap: 6px 12px;
  }

  .single-post-layout .entry-meta__separator {
    display: none;
  }

  .single-post-layout .isp-quick-answer,
  .single-post-layout .isp-quick-action {
    padding: 20px;
    border-radius: 17px;
  }
}
