/* Full congregation photo, kept uncropped at every screen size. */
.hero{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:42px;align-items:center;padding-top:60px;padding-bottom:60px}
.hero h1{font-size:clamp(4rem,7.5vw,6.6rem);line-height:.95}
.hero-side{position:relative;z-index:1;align-self:center;min-width:0}
.portrait-frame{margin:0 0 22px;position:relative;border:1px solid #24467a;background:#07090d;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.portrait-frame img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
.portrait-frame figcaption{position:static;border-top:4px solid var(--primary);padding:15px 20px;display:flex;flex-direction:column;gap:4px;background:#07090d}
.portrait-frame figcaption strong{font-family:"Barlow Condensed",sans-serif;font-size:1.4rem;letter-spacing:.04em}
.portrait-frame figcaption span{color:#c4ccd8;font-size:.875rem}
.hero-side .hero-panel{background:rgba(12,16,23,.94)}
.hero-side .hero-panel a{padding:12px 18px;font-size:1.08rem}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:30px}.hero-side{max-width:720px;width:100%;justify-self:center}.hero-side .hero-panel{max-width:none}.hero h1{font-size:clamp(4rem,12vw,6rem)}}
@media(max-width:560px){.hero{padding:40px 18px}.portrait-frame figcaption{padding:14px}.hero h1{font-size:clamp(3.6rem,14vw,5rem)}}
