.programs-page .page-hero > p + p { margin-top: 16px; }
.programs-page .program-work { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); align-items: start; gap: 42px; padding-block: 36px; border-bottom: 1px solid var(--line); }
.programs-page .program-work figure { min-width: 0; }
.programs-page .program-work img { width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 4px; }
.programs-page .program-work figcaption { font-size: 11px; margin-top: 9px; }
.programs-page .program-work figcaption a { text-decoration: underline; text-underline-offset: 3px; }
.programs-page .program-meta { color: var(--muted); font-size: 12px; line-height: 1.5; margin-bottom: 12px; }
.programs-page .program-work h2 { font-size: 32px; margin-bottom: 18px; }
.programs-page .program-work p:not(.program-meta) { font-size: 15px; line-height: 1.7; }
.programs-page .program-work p + p { margin-top: 14px; }
.programs-page .program-work .text-link { margin-top: 14px; }
.programs-page .program-related { display: flex; flex-wrap: wrap; gap: 16px 38px; padding-block: 26px; }
@media (max-width: 760px) {
  .programs-page .program-work { grid-template-columns: 1fr; gap: 22px; padding-block: 28px; }
  .programs-page .program-work h2 { font-size: 28px; }
  .programs-page .program-related { gap: 8px 24px; }
}
