/* Field notes — the host page for the Soro-managed blog.
   Shares the About page's editorial register (base.css + about.css).

   Everything under #soro-blog is rendered by a third party at runtime, so
   the rules below are deliberately LOW specificity (single class / element
   selectors, no !important): they set a sane measure and inherit our faces
   when Soro ships unstyled markup, and they lose to Soro's own CSS when it
   ships styled markup. Do not tighten them into a fight with the embed. */

.tb-blog { padding: clamp(3rem, 7vw, 5rem) 0 clamp(4rem, 8vw, 6rem); }
.tb-blog > .tb-wrap { max-width: 46rem; }

.tb-blog h1 {
  font-family: var(--tb-display);
  font-weight: 600;
  font-size: clamp(2rem, 4.6vw, 3rem);
  line-height: 1.12;
  letter-spacing: -0.015em;
  margin: 1rem 0 1.25rem;
  max-width: 18em;
}

.tb-blog-lede {
  max-width: var(--tb-measure);
  font-size: 1.125rem;
  line-height: 1.6;
  margin-bottom: clamp(2.5rem, 6vw, 3.5rem);
  padding-bottom: clamp(2rem, 5vw, 2.75rem);
  border-bottom: 1px solid var(--tb-hairline);
}

.tb-blog-noscript {
  max-width: var(--tb-measure);
  line-height: 1.6;
  margin-top: 1.5rem;
}
.tb-blog-noscript a { color: var(--tb-forest); }

/* Embed container: reserve height so the page doesn't jump when posts land. */
#soro-blog {
  min-height: 24rem;
  font-size: 1rem;
  line-height: 1.65;
}
#soro-blog h2,
#soro-blog h3,
#soro-blog h4 {
  font-family: var(--tb-display);
  font-weight: 600;
  color: var(--tb-deep);
  line-height: 1.22;
  letter-spacing: -0.01em;
}
#soro-blog p,
#soro-blog li { max-width: var(--tb-measure); }
#soro-blog a { color: var(--tb-forest); }
#soro-blog img { max-width: 100%; height: auto; }

.tb-blog-cta {
  margin-top: clamp(3rem, 7vw, 4.5rem);
  padding-top: clamp(2rem, 5vw, 2.75rem);
}
.tb-blog-cta .tb-wrap { max-width: 46rem; }
.tb-blog-cta p {
  font-family: var(--tb-display);
  font-size: clamp(1.25rem, 3vw, 1.6rem);
  line-height: 1.3;
  margin-bottom: 0.75rem;
  max-width: 20em;
}

@media (max-width: 30rem) {
  .tb-blog-lede { font-size: 1.0625rem; }
  #soro-blog { min-height: 18rem; }
}
