.extended-page h1 { margin: 0; max-width: 20ch; color: var(--purple); font-size: clamp(35px, 4.8vw, 68px); font-weight: 900; line-height: 1.04; letter-spacing: -.045em; overflow-wrap: break-word; }
.page-breadcrumb { margin-bottom: 24px; color: var(--purple); font-size: 13px; font-weight: 700; }
.page-breadcrumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 0; margin: 0; list-style: none; }
.page-breadcrumb li { display: inline-flex; align-items: center; }
.page-breadcrumb li + li::before { content: '/'; margin-right: 6px; color: var(--muted); }
.page-breadcrumb a { display: inline-flex; min-height: 44px; align-items: center; text-underline-offset: 4px; }
.program-card h3 a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.program-card h3 a:hover { text-decoration: underline; text-underline-offset: 4px; }
.program-card__body .more-way-link { margin-top: 14px; }
.program-detail-hero { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(24px, 5vw, 68px); align-items: center; }
.program-detail-hero p:not(.eyebrow) { max-width: 56ch; color: var(--muted); margin-top: 24px; }
.program-detail-photo { margin: 0; height: clamp(280px, 36vw, 460px); overflow: hidden; border-radius: 28px 28px 90px 28px; background: var(--lavender-mid); }
.program-detail-photo img { width: 100%; height: 100%; object-fit: cover; }
.program-detail-photo img[src*='program-college'] { object-position: center 15%; }
.program-detail-photo img[src*='program-ensemble'] { object-position: center 27%; }
.program-detail-copy, .page-context { max-width: 850px; margin-top: 45px; }
.program-detail-copy > p { font-size: 18px; color: var(--purple); }
.program-detail-copy h2, .page-context h2, .related-programs h2 { color: var(--purple); font-size: clamp(24px, 2.7vw, 35px); line-height: 1.12; font-weight: 800; margin: 32px 0 14px; }
.program-detail-copy p, .page-context p { color: var(--muted); margin: 14px 0; }
.program-detail-benefits { color: var(--muted); margin: 14px 0; padding-left: 24px; }
.program-detail-benefits li { margin: 12px 0; }
.program-detail-photo.program-detail-photo--uncropped { height: auto; }
.program-detail-photo--uncropped img { display: block; height: auto; object-fit: contain; }
.program-detail-copy--ensembles { max-width: none; }
.program-detail-copy--ensembles > p { max-width: 850px; }
.program-ensemble-section { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(24px, 4vw, 56px); align-items: center; margin: 56px 0; }
.program-ensemble-section h2 { margin-top: 0; }
.program-ensemble-section figure { display: flex; justify-content: center; margin: 0; }
.program-ensemble-section img { display: block; width: auto; height: auto; max-width: 100%; max-height: 480px; object-fit: contain; border-radius: 28px; }
@media (max-width: 860px) { .program-ensemble-section { grid-template-columns: 1fr; gap: 24px; } }
.related-programs { margin-top: 42px; padding: 24px 28px; border-radius: 24px; border: 1px solid #ded6ef; background: var(--lavender); }
.related-programs h2 { margin-top: 0; }
.related-programs ul { list-style: none; padding: 0; margin: 0; }
.related-programs a { display: inline-flex; min-height: 44px; align-items: center; color: var(--purple); margin-right: 22px; font-weight: 800; text-underline-offset: 4px; }
.impact-source-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 24px 0; }
.impact-source-card { padding: 22px; border-radius: 22px; background: var(--lavender); border: 1px solid #ded6ef; }
.impact-source-card h3 { color: var(--purple); margin: 0; font-size: 18px; }
.impact-source-card p { margin: 12px 0 0; font-size: 13px; overflow-wrap: anywhere; }
.sponsor-review { margin-top: 16px; padding: 14px 18px; border-left: 4px solid var(--purple); color: var(--purple-deep); background: var(--lavender); font-size: 14px; }
@media (max-width: 960px) { .header-row { gap: 12px; } .nav-links { gap: 13px; } }
@media (max-width: 860px) { .program-detail-hero { grid-template-columns: 1fr; } .program-detail-photo { height: 340px; } }
@media (max-width: 620px) { .program-detail-photo { height: 290px; } .impact-source-grid { grid-template-columns: 1fr; } .related-programs { padding: 22px; } }
