/* Blog index and posts. Chrome comes from the shared homepage and service styles. */

.blog-index {
  padding: 28px 0 88px;
}

.blog-index h1 {
  margin: 0 0 12px;
  max-width: 16em;
  font-size: clamp(40px, 4.8vw, 56px);
  font-weight: 700;
  letter-spacing: -0.036em;
  line-height: 1.08;
}

.blog-index > .shell > p {
  max-width: 42rem;
  margin: 0 0 36px;
  color: var(--t-ink-soft);
  font-size: 17.5px;
  line-height: 1.62;
}

.post-list {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.post-list a {
  display: block;
  padding: 26px 28px;
  background: #fff;
  border: 1px solid var(--t-border);
  border-radius: 16px;
  color: inherit;
  text-decoration: none;
}

.post-list a:hover {
  border-color: #b8c0cc;
}

.post-list time {
  display: block;
  margin-bottom: 8px;
  color: var(--t-ink-mute);
  font-size: 13px;
  letter-spacing: 0.02em;
}

.post-list h2 {
  margin: 0 0 10px;
  color: var(--t-ink);
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.03em;
  line-height: 1.25;
}

.post-list p {
  margin: 0;
  max-width: 68ch;
  color: var(--t-ink-soft);
  font-size: 16px;
  line-height: 1.6;
}

.blog-post .byline {
  margin: 14px 0 0;
  color: var(--t-ink-mute);
  font-size: 14px;
}

.blog-post .service-content h2 {
  margin-top: 48px;
}
