.s-intro.s-blog-intro { padding-block: clamp(32px, 5vw, 64px); }
.s-page .s-blog-intro .s-lead { max-width: 58ch; margin-bottom: 0; }
.s-blog-topics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); }
.s-blog-topic { display: flex; flex-direction: column; gap: 14px; }
.s-page .s-blog-topic h2 { font-size: clamp(1.4rem, 2.1vw, 2rem); }
.s-blog-feature { display: flex; flex: 1; flex-direction: column; overflow: hidden; border: 1px solid var(--s-line); border-radius: 14px; background: var(--s-cream); }
.s-blog-feature:hover { border-color: var(--s-moss); }
.s-blog-feature img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.s-blog-feature > div { display: flex; flex: 1; flex-direction: column; align-items: start; gap: 10px; padding: clamp(15px, 2vw, 24px); }
.s-page .s-blog-feature h3 { font-size: clamp(1.35rem, 2vw, 1.8rem); }
.s-blog-feature .s-text-link { margin-top: auto; }
.s-blog-reading { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px 26px; margin-top: 30px; }
.s-page .s-blog-reading h2 { font-size: 1.4rem; }
.s-blog-related { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 0; padding: 0; list-style: none; }
.s-blog-related a, .s-editorial-content a:not(.s-button) { text-decoration: underline; text-underline-offset: 3px; }
.s-blog-related a:hover, .s-editorial-content a:hover { color: var(--s-moss); }
.s-blog-archive { padding-bottom: clamp(42px, 6vw, 80px); }
.s-blog-archive__access { margin-top: 14px; }
.s-blog-archive-page { display: grid; gap: clamp(28px, 4vw, 52px); }
.s-page .s-blog-archive-page h2 { font-size: clamp(1.45rem, 2.6vw, 2rem); }
.s-blog-archive details { border: 1px solid var(--s-line); border-radius: 12px; background: var(--s-cream); }
.s-blog-archive summary { padding: 18px 22px; font-weight: 700; cursor: pointer; }
.s-blog-archive__content { padding: 0 22px 22px; }
.s-blog-search label { display: block; margin-bottom: 5px; font-weight: 700; }
.s-blog-search input { width: min(100%, 32rem); padding: 10px 12px; color: var(--s-ink); background: var(--s-paper); border: 1px solid var(--s-line); border-radius: 7px; min-height: 44px; }
.s-blog-search p { margin-top: 7px; font-size: .9rem; }
.s-blog-archive__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; margin: 18px 0 0; padding: 0; list-style: none; }
.s-blog-archive__links a { display: block; padding: 9px 0; border-top: 1px solid var(--s-line); }
.s-blog-archive__links a:hover { text-decoration: underline; text-underline-offset: 3px; }

.s-page .s-editorial-intro h1 { font-size: clamp(2.55rem, 5.5vw, 5rem); max-width: 19ch; overflow-wrap: break-word; }
.s-page .s-editorial-intro .s-lead { max-width: 65ch; }
.s-editorial-intro .s-editorial-date { margin-top: 12px; font-size: .92rem; }
.s-editorial-content { width: min(calc(100% - 36px), 860px); margin: 0 auto; padding-block: clamp(30px, 5vw, 64px); }
.s-page .s-editorial-content h2 { margin: 32px 0 12px; font-size: clamp(1.55rem, 3vw, 2.45rem); }
.s-editorial-content h2:first-child { margin-top: 0; }
.s-editorial-content p + p, .s-editorial-content p + ul, .s-editorial-content p + ol { margin-top: 12px; }
.s-editorial-content ul, .s-editorial-content ol { padding-inline-start: 1.35rem; }
.s-editorial-content li + li { margin-top: 8px; }
.s-editorial-content figure { margin-bottom: 25px; }
.s-editorial-content figure img { width: 100%; border-radius: 12px; }
.s-editorial-content figcaption { color: var(--s-text); font-size: .9rem; margin-top: 8px; }
.s-editorial-content .s-editorial-note { padding: 15px 18px; margin-top: 22px; border-left: 3px solid var(--s-moss); background: var(--s-cream); }
.s-editorial-content .s-editorial-cta { margin-top: 28px; }
.s-editorial-content .s-calendar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 16px 0 0; padding: 0; list-style: none; }
.s-calendar li { margin: 0; padding: 14px; background: var(--s-cream); border: 1px solid var(--s-line); border-radius: 10px; }
.s-editorial-content .s-calendar li + li { margin-top: 0; }
.s-page .s-calendar h3 { margin-bottom: 7px; font-size: 1.3rem; }
.s-calendar p + p { margin-top: 5px; }
@media (max-width: 780px) {
  .s-blog-topics { grid-template-columns: 1fr; gap: 27px; }
  .s-blog-feature img { aspect-ratio: 16 / 8; }
}
@media (max-width: 520px) {
  .s-blog-archive__links, .s-editorial-content .s-calendar { grid-template-columns: 1fr; }
}
@media print {
  .s-checklist-print :is(.s-header, .s-top, .s-footer, .s-skip, .s-breadcrumb, .s-editorial-cta) { display: none; }
  .s-checklist-print .s-intro, .s-checklist-print .s-editorial-note { background: white !important; }
  .s-checklist-print :is(h1, h2, p, li, a) { color: black !important; }
  .s-checklist-print .s-intro, .s-checklist-print .s-editorial-content { padding-block: 12px; }
  .s-checklist-print h2 { break-after: avoid; }
}
