.orgsite-source-page .composed-page { color: #213536; }
.orgsite-source-page .composed-section {
    display: grid;
    grid-template-columns: 220px minmax(0,1fr);
    gap: 36px;
    border-top: 1px solid #d4dfdd;
    padding: 32px 0;
}
.orgsite-source-page .composed-section:first-child { border-top: 0; padding-top: 0; }
.orgsite-source-page .composed-label :is(h2,h3,h4,h5,h6) {
    margin: 0;
    font-size: 21px;
    line-height: 1.55;
    color: #275a51;
    font-weight: 700;
}
.orgsite-source-page .composed-body p { margin: 0 0 18px; font-size: 17px; line-height: 1.85; }
.orgsite-source-page .composed-body > :last-child { margin-bottom: 0; }
.orgsite-source-page .composed-full { display: block; }
.orgsite-source-page .composed-full .composed-label { display: none; }
.orgsite-source-page .composed-heading-only { display: block; padding-bottom: 16px; }
.orgsite-source-page .composed-heading-only + .composed-section { border-top: 0; padding-top: 0; }
.orgsite-source-page .composed-illustration img { max-height: 600px; object-fit: contain; }
.orgsite-source-page .composed-letter { max-width: 820px; margin-inline: auto; }
.orgsite-source-page .composed-letter .composed-letter-lead { font-size: 20px; line-height: 1.85; margin-bottom: 28px; }
.orgsite-source-page .composed-letter-point { border-top: 1px solid #d4dfdd; padding-top: 24px; margin-top: 24px; }
.orgsite-source-page .composed-person-group { margin-bottom: 24px; }
.orgsite-source-page .composed-person-group .view-person-role { margin: 0 0 10px; font-size: 16px; }
.orgsite-source-page .composed-person-group .view-person { margin-bottom: 8px; }
.orgsite-source-page .composed-support { max-width: 820px; margin-inline: auto; }
.orgsite-source-page .composed-support .composed-heading-only { padding: 24px 0; }
.orgsite-source-page .composed-support .composed-heading-only h2 { font-size: clamp(22px,3vw,30px); }
.orgsite-source-page .composed-page .view-gallery-heading { margin-bottom: 24px; }
:root body:has(.orgsite-source-page) .page-title { text-shadow: none; }
@media(max-width:640px) {
    .orgsite-source-page .composed-section { grid-template-columns: 1fr; gap: 16px; padding: 24px 0; }
    .orgsite-source-page .composed-label :is(h2,h3,h4,h5,h6) { font-size: 20px; }
    .orgsite-source-page .composed-body p { font-size: 16px; }
    .orgsite-source-page .composed-letter .composed-letter-lead { font-size: 18px; }
}
