/* Photo-specific framing preserves the existing compositions. */
.family-story-photo>div{height:auto;aspect-ratio:4/3}
.family-story-photo img{object-position:center;transform:none!important;animation:none!important}
[data-card="0"] img{object-position:50% 42%}
[data-card="1"] img{object-position:50% 58%}
[data-card="3"] img{object-position:center 48%}
#residential-overview .program-portrait img{object-position:39% center}
#iop-overview .program-portrait img{object-position:29% center}
#iop-daily-life .program-daily-photo{aspect-ratio:1.2;align-self:center}
#iop-daily-life .program-daily-photo img{object-position:48% center}
.meal-support-photo{display:block;width:160px;height:106px;object-fit:cover;object-position:center;margin-top:22px;border:5px solid var(--warm-white);box-shadow:0 12px 24px #4c4e4e22;transform:rotate(3deg);border-radius:3px}
.community-intro-photo{width:min(520px,78%);margin:0 auto 46px;position:relative;transform:rotate(-2deg)}
.community-intro-photo::before{content:'';position:absolute;inset:-10px 10px 10px -10px;border:1px solid #b29987;border-radius:6px;z-index:-1}
.community-intro-photo img{display:block;width:100%;height:auto;border-radius:5px;box-shadow:0 22px 40px #4c4e4e20}
[data-community-photo="0"] img,[data-community-photo="4"] img,#community-service-0 img,#community-service-4 img{object-position:64% center}
[data-community-photo="3"] img,#community-service-3 img{object-position:30% center}
[data-community-photo="2"] img,#community-service-2 img{object-position:50% 43%}
@media(max-width:760px){.meal-support-photo{margin:20px auto 0}.community-intro-photo{width:min(440px,94%);margin-bottom:32px}.family-story-photo>div{height:auto;aspect-ratio:4/3}}
/* Each photograph belongs to one content location. Mobile variants and the exterior lightbox share that location. */
[data-card="0"] img{object-position:center}
[data-card="1"] img{object-position:center 38%}
[data-card="3"] img{object-position:center 44%}
.starting-photo{height:330px;background:#d9eef4}
.starting-photo img{object-fit:cover;object-position:40% center;transform:none!important;animation:none!important}
.starting-photo::after{display:none}
#residential-daily-life .program-daily-photo{aspect-ratio:.8;align-self:center;border-radius:50% 50% 0 0 / 46% 46% 0 0}
#residential-daily-life .program-daily-photo img{object-position:center}
#iop-overview .program-portrait img{object-position:48% center}
#iop-daily-life .program-daily-photo{aspect-ratio:1.4}
#iop-daily-life .program-daily-photo img{object-fit:contain;object-position:center;background:#79c8ce}
#community-living-overview .program-portrait img{object-position:48% center}
.living-notes-photo{object-fit:cover!important;object-position:center;background:#d9eef4}
[data-community-photo="1"] img,#community-service-1 img{object-position:50% center}
[data-community-photo="2"] img,#community-service-2 img{object-position:88% center}
[data-community-photo="4"] img,#community-service-4 img{object-position:43% center}
.program-preview-type{position:relative;display:flex;width:100%;height:100%;flex-direction:column;align-items:center;justify-content:flex-end;padding:50px 28px 40px;background:#d9eef4;overflow:hidden}
.program-preview-watermark{position:absolute;inset:4% 0 auto;text-align:center;font-family:'Fraunces',serif;font-style:italic;font-size:clamp(150px,23vw,330px);line-height:1;color:#fffaf5;pointer-events:none}
.program-preview-title{position:relative;font-family:'Fraunces',serif;font-size:clamp(28px,3vw,42px);line-height:1.1;text-align:center;color:var(--ink)}
.program-preview-explore{position:relative;margin-top:22px;font-size:13px;letter-spacing:.07em;color:#5b6668}
.program-preview-explore>span{margin-left:18px;color:#5e8991}
@media(max-width:760px){.starting-photo{height:300px}.program-preview-watermark{font-size:220px}.program-preview-type{padding-bottom:30px}.program-preview-title{font-size:30px}}

/* Light brand washes distinguish the three program choices. */
[data-program-preview="1"] .program-preview-type{background:#fbe2de}
[data-program-preview="2"] .program-preview-type{background:#e5f2f5}
.program-preview-type{transition:background-color .3s ease}
.program-preview>a:hover .program-preview-type,.program-preview>a:focus-visible .program-preview-type{background:#c7e6ec}
[data-program-preview="1"]>a:hover .program-preview-type,[data-program-preview="1"]>a:focus-visible .program-preview-type{background:#f7d2cc}
