.article-hero > picture { position: absolute; inset: 0; display: block; }
.article-hero > picture img { width: 100%; height: 100%; object-fit: cover; }
.insight-answer { margin: 0 0 3rem; padding: clamp(1.5rem, 3vw, 2.5rem); background: #f1ece5; border-left: 3px solid #ad7d42; }
.insight-answer span,
.insight-stat span,
.insight-service span,
.insight-project-copy span,
.insight-figure figcaption { display: block; margin-bottom: .65rem; color: #8b6538; font-size: .72rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; }
.insight-answer h2 { margin: 0 0 1rem; font-family: "Libre Caslon Display", Georgia, serif; font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 400; line-height: 1.06; }
.insight-answer p:last-child,
.insight-service p:last-child,
.insight-project-copy p:last-child { margin-bottom: 0; }
.insight-stat-grid,
.insight-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 2rem 0 3rem; background: rgba(36, 27, 23, .16); }
.insight-stat,
.insight-service { padding: clamp(1.35rem, 3vw, 2rem); background: #faf8f4; }
.insight-stat strong { display: block; margin-bottom: .7rem; color: #241b17; font-family: "Libre Caslon Display", Georgia, serif; font-size: clamp(1.65rem, 3.5vw, 2.7rem); font-weight: 400; line-height: 1; }
.insight-stat p,
.insight-service p { font-size: .95rem; line-height: 1.65; }
.insight-service h3 { margin: 0 0 .75rem; font-size: 1.05rem; font-weight: 500; }
.insight-figure { margin: 2.5rem 0 3.5rem; }
.insight-figure img { display: block; width: 100%; height: auto; }
.insight-figure figcaption { margin-top: .9rem; line-height: 1.5; text-transform: none; }
.insight-project { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(15rem, .75fr); margin: 3rem 0; background: #241b17; color: #f8f3ed; }
.insight-project picture,
.insight-project img { display: block; width: 100%; height: 100%; }
.insight-project img { min-height: 22rem; object-fit: cover; }
.insight-project-copy { align-self: center; padding: clamp(1.5rem, 4vw, 3rem); }
.insight-project-copy h2 { margin-top: 0; color: inherit; }
.insight-project-copy a { color: #d8b070; }
.insight-faq details { padding: 1.2rem 0; border-top: 1px solid rgba(36, 27, 23, .18); }
.insight-faq details:last-child { border-bottom: 1px solid rgba(36, 27, 23, .18); }
.insight-faq summary { cursor: pointer; font-weight: 500; }
.insight-faq details p { margin: .8rem 0 0; }

@media (max-width: 760px) {
  .insight-stat-grid,
  .insight-service-grid,
  .insight-project { grid-template-columns: 1fr; }
  .insight-project img { min-height: 16rem; }
}
