.elderly-page .detail-hero > img { object-position: center 15%; }
.photo-watermark { position: absolute; right: .8rem; bottom: .8rem; z-index: 2; display: inline-flex; align-items: center; gap: .48rem; max-width: calc(100% - 1.6rem); padding: .38rem .65rem .38rem .42rem; border: 1px solid rgba(255,255,255,.38); border-radius: 999px; background: rgba(5,24,39,.72); color: #fff; box-shadow: 0 4px 18px rgba(0,0,0,.18); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); pointer-events: none; }
.photo-watermark > img { position: static; inset: auto; flex: 0 0 26px; width: 26px; height: 26px; object-fit: contain; transform: none; }
.photo-watermark strong { font-size: .64rem; font-weight: 700; letter-spacing: .07em; line-height: 1; text-transform: uppercase; white-space: nowrap; }
.hero-watermark { right: max(1.25rem, calc((100% - 1060px) / 2)); bottom: 1.25rem; }
.future-status { display: inline-flex; margin-top: 1.4rem; padding: .65rem 1rem; border: 1px solid rgba(255,255,255,.45); border-radius: 999px; color: #fff4cf; font-size: .82rem; font-weight: 700; letter-spacing: .04em; }
.elderly-intro { margin-bottom: 4.5rem; }
.elderly-callout { margin: 0 0 4.5rem; padding: clamp(2rem, 5vw, 4.5rem); border-radius: 24px; background: var(--navy); color: white; }
.elderly-callout .eyebrow { color: #edc778; }
.elderly-callout blockquote { max-width: 800px; margin: .6rem 0 1.25rem; font: 600 clamp(2.3rem, 5vw, 4.8rem)/1.08 "Playfair Display",serif; }
.elderly-callout > p:last-child { max-width: 720px; margin: 0; color: #dce5e8; font-size: 1.08rem; line-height: 1.75; }
.elderly-priorities { margin: 0 0 5rem; }
.elderly-gallery { margin: 0 0 5rem; }
.elderly-gallery-heading { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 7vw, 6rem); align-items: end; margin-bottom: 2rem; }
.elderly-gallery-heading h2 { max-width: 560px; margin: .4rem 0 0; color: var(--navy); font: 600 clamp(2.2rem, 4vw, 4rem)/1.08 "Playfair Display",serif; }
.elderly-gallery-heading > p { margin: 0; color: var(--muted); font-size: 1.03rem; line-height: 1.75; }
.elderly-photo-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); grid-auto-flow: dense; gap: 1rem; }
.elderly-photo { position: relative; grid-column: span 4; min-height: 420px; margin: 0; overflow: hidden; border-radius: 20px; background: #dce5e8; box-shadow: 0 18px 45px rgba(7,27,45,.11); }
.elderly-photo-wide { grid-column: span 8; min-height: 390px; }
.elderly-photo > img { display: block; width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; transition: transform .45s ease; }
.elderly-photo-wide > img { object-position: center; }
.elderly-photo:hover > img { transform: scale(1.018); }
.elderly-gallery-note { margin: 1rem 0 0; color: #6b7377; font-size: .78rem; font-style: italic; text-align: right; }
.elderly-vision { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 7vw, 6rem); padding: clamp(2rem, 5vw, 4.5rem); border: 1px solid rgba(7,27,45,.13); border-radius: 24px; background: #fff; }
.elderly-vision h2 { margin: .4rem 0 0; color: var(--navy); font: 600 clamp(2.2rem, 4vw, 4rem)/1.08 "Playfair Display",serif; }
.elderly-vision p { margin: 0 0 1.5rem; color: var(--muted); font-size: 1.08rem; line-height: 1.75; }
@media (max-width:900px) { .elderly-photo { grid-column: span 6; } .elderly-photo-wide { grid-column: span 12; } }
@media (max-width:760px) { .elderly-gallery-heading, .elderly-vision { grid-template-columns: 1fr; } .elderly-page .detail-hero > img { object-position: 52% 18%; } .hero-watermark { right: 1.25rem; } .elderly-photo, .elderly-photo-wide { grid-column: span 12; min-height: 0; aspect-ratio: 4/5; } .elderly-photo-wide { aspect-ratio: 4/3; } .photo-watermark strong { font-size: .58rem; } }
@media (prefers-reduced-motion:reduce) { .elderly-photo > img { transition: none; } }
