.noematrix-case .work-detail__film { width: 100%; }
.noematrix-case .nm-subtitle { margin-top: 20px; font-size: 18px; }
.nm-section { margin: 80px 0; }
.nm-heading { margin-bottom: 32px; }
.nm-heading h2,
.nm-statement { font-family: var(--spring-serif); font-weight: 400; font-size: clamp(28px, 3vw, 46px); line-height: 1.2; }
.nm-heading p { max-width: 680px; margin-top: 18px; font-size: 16px; line-height: 1.7; }
.nm-statement { max-width: 1000px; margin: 72px 0; }
.nm-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 32px; }
.nm-grid img,
.nm-grid video { display: block; width: 100%; height: auto; background: #f3f3f3; }
.nm-grid figcaption { margin-top: 12px; font-size: 13px; line-height: 1.5; }
.nm-grid h3 { margin-top: 20px; margin-bottom: 8px; font-size: 20px; font-weight: 400; }
.nm-grid p { max-width: 600px; font-size: 15px; line-height: 1.7; }
.nm-notes { margin: 80px 0; padding: 24px 0; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.nm-notes summary { cursor: pointer; font-size: 17px; }
.nm-notes summary:focus-visible { outline: 2px solid #111; outline-offset: 6px; }
.nm-notes .work-detail__notes { margin: 36px 0 0; }
.nm-notes p + p { margin-top: 16px; }
.nm-credits { display: grid; grid-template-columns: 1fr 1fr; gap: 28px 32px; margin: 64px 0; font-size: 14px; }
.nm-credits dt { color: #666; margin-bottom: 6px; }

@media (max-width: 760px) {
  .nm-section { margin: 48px 0; }
  .nm-grid { grid-template-columns: 1fr; gap: 32px; }
  .nm-statement { margin: 48px 0; }
  .nm-credits { grid-template-columns: 1fr; }
  .nm-notes { margin: 48px 0; }
}
