/* Owner-supplied canvas mockups, always shown whole. */
.hero:has(.photo-wall) .hero-inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:48px;padding-block:55px}
.photo-wall{min-width:0;max-width:620px;justify-self:end;width:100%}
.photo-wall-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:center}
.photo-wall-frame{margin:0;min-width:0;overflow:hidden;background:#30332e;border:1px solid #ffffff25;box-shadow:0 7px 16px #0003}
.photo-wall-frame img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain}
.photo-wall-wedding{grid-column:span 2}
.photo-wall-wedding img{aspect-ratio:3/2}
.photo-wall-nature{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:12px;align-items:center}
.photo-wall-nature .photo-wall-frame img{aspect-ratio:1/1;object-fit:contain}
.photo-wall-caption{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #ffffff35;padding-top:15px;margin-top:18px;font-size:.7rem;line-height:1.5;color:#ccd1c3}
.photo-wall-caption>span:first-child{font-weight:700;letter-spacing:.1em;color:var(--lime)}
@media(min-width:1500px){.hero:has(.photo-wall) .hero-inner{gap:65px}.photo-wall{max-width:570px}}
@media(max-width:1050px) and (min-width:801px){.hero:has(.photo-wall) .hero-inner{gap:25px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.photo-wall-people,.photo-wall-nature{gap:8px}.photo-wall-nature{margin-top:8px}.photo-wall-caption{flex-direction:column;gap:4px}}
@media(max-width:800px){.hero:has(.photo-wall) .hero-inner{grid-template-columns:1fr;gap:36px;padding-block:42px}.photo-wall{max-width:550px;justify-self:center}.hero:has(.photo-wall) .hero-copy{max-width:570px}.photo-wall-caption{font-size:.72rem}}
@media(max-width:600px){.photo-wall{margin:0;max-width:100%}.photo-wall-people,.photo-wall-nature{gap:8px}.photo-wall-nature{margin-top:8px}.photo-wall-caption{font-size:.64rem;gap:10px}.hero:has(.photo-wall) .hero-inner{padding-block:40px;gap:30px}}
