.chase-case .article-header { padding-top: clamp(2rem, 4vw, 4rem); padding-bottom: 2rem; }
.chase-case .article-header h1 { max-width: 26ch; font-size: clamp(2.25rem, 4vw, 3.5rem); line-height: 1.12; }
.chase-case .article-aside h2 { font-size: 1.4rem; line-height: 1.3; }
.chase-case h2[id] { scroll-margin-top: 8rem; }
.chase-case .project-spec { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.chase-case .project-spec strong, .chase-case .project-spec span { display: block; }
.chase-case .project-spec strong { margin-bottom: .5rem; }
.chase-case .design-sequence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 2rem 0; }
.chase-case .design-sequence figure { margin: 0; min-width: 0; }
.chase-case .design-sequence img { display: block; width: 100%; height: auto; aspect-ratio: 689 / 764; object-fit: contain; background: #fff; border: 1px solid var(--line); }
.chase-case .design-sequence figure img { filter: none; }
.chase-case .design-sequence figcaption { font-size: .9375rem; line-height: 1.6; }
.chase-case .design-sequence figcaption strong { display: block; margin-bottom: .4rem; color: var(--ink); }
.chase-case .design-sequence a:focus-visible { outline: 3px solid var(--oak-dark); outline-offset: 4px; }
.chase-case .boiler-detail { max-width: 25rem; }
.chase-case .boiler-detail img { width: 100%; height: auto; }
.chase-case .article-body > figure img { height: auto; }
@media (max-width: 640px) {
  .chase-case .project-spec { grid-template-columns: 1fr; }
  .chase-case .design-sequence { grid-template-columns: 1fr; gap: 2rem; }
  .chase-case .design-sequence img { max-height: 32rem; }
}
