/* Natural portrait proportions; address stays below the photograph. */
.hero-visual--natural { align-self: center; width: 100%; }
.hero-portrait-wrap--natural { width: 100%; max-width: 440px; overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 24px; background: #fff; box-shadow: 0 22px 55px rgba(0,0,0,.14); }
.hero-portrait-wrap--natural::before { display: none; }
.hero-portrait-wrap--natural .hero-portrait { display: block; width: 100%; height: auto; min-height: 0; max-height: none; aspect-ratio: auto; object-fit: contain; object-position: center; border-radius: 0; filter: none; }
.hero-portrait-wrap--natural .hero-address-card { position: static; width: 100%; max-width: none; margin: 0; padding: 20px 24px; border: 0; border-radius: 0; background: #fff; box-shadow: none; backdrop-filter: none; }
@media (max-width: 1100px) {
 .hero-visual--natural { width: min(380px, 100%); margin: 30px auto 36px; }
 .hero-portrait-wrap--natural { width: 100%; margin: 0; }
}
@media (max-width: 620px) {
 .hero-visual--natural { width: min(340px, 100%); }
 .hero-portrait-wrap--natural .hero-address-card { padding: 18px 20px; }
}
