/* Scroll-driven forward movement toward the photographed corridor's vanishing point. */
.hall-journey{position:relative;--hall-scale:1;--hall-rise:0px}
.hall-journey .premier-hero-photo img{animation:none;transform-origin:57% 49%;transform:translate3d(0,var(--hall-rise),0) scale(var(--hall-scale))}
.hall-journey.is-moving .premier-hero-photo img{will-change:transform}
.hall-journey.is-pinned>.premier-hero{position:sticky;top:var(--header-height,112px)}
.hall-scroll-note{display:flex;align-items:center;gap:10px;margin-top:23px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#e9d3b4}
.hall-scroll-note>span{display:inline-block;width:19px;height:30px;border:1px solid #e9d3b49c;border-radius:12px;position:relative}
.hall-scroll-note>span:after{content:'';position:absolute;left:8px;top:6px;width:1px;height:9px;background:#e9d3b4;transform:translateY(calc(var(--hall-progress,0)*7px))}
@media(max-width:640px){.hall-journey .premier-hero-photo img{transform-origin:54% 48%}.hall-scroll-note{margin-top:19px;font-size:12px}}
@media(prefers-reduced-motion:reduce){
 .hall-journey{height:auto!important}
 .hall-journey.is-pinned>.premier-hero{position:relative;top:auto}
 .hall-journey .premier-hero-photo img{transform:none!important;animation:none!important;will-change:auto}
 .hall-scroll-note{display:none}
}
.hall-journey .premier-hero-photo img{object-position:50% 48%;transform-origin:50% 52%}

/* Full-screen composition: one centered message and one aligned lower edge. */
.hall-journey .premier-hero{display:flex;flex-direction:column;min-height:max(650px,calc(100svh - var(--header-height,112px)))}
.hall-journey .premier-hero-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:64px 58px}
.hall-journey .premier-hero h1{font-size:clamp(84px,8.4vw,132px);margin:24px 0;line-height:.96}
.hall-journey .premier-hero-intro{margin:0}
.hall-journey .premier-hero-actions{margin-top:30px}
.hero-lower{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;padding-block:22px 26px;border-top:1px solid #e6bf8538}
.hall-journey .hero-addresses{margin:0;gap:12px;font-size:12px;letter-spacing:.09em;flex-wrap:wrap}
.hero-addresses a{display:inline-flex;align-items:center;min-height:44px}
.hero-addresses a:hover{color:#fff7e8;text-decoration:underline;text-underline-offset:5px}
.hall-journey .hall-scroll-note{margin:0;white-space:nowrap}
.hall-journey .hero-people-note{position:static;justify-self:end;display:flex;gap:14px;padding:0;background:none;border:0;backdrop-filter:none;max-width:none}
.hall-journey .hero-people-note strong{font-size:21px;white-space:nowrap}
.hall-journey .hero-photo-credit{top:28px;bottom:auto;font-size:12px}
.hall-journey+.discovery-dock{margin-top:32px}
@media(max-width:1100px){
 .hero-lower{grid-template-columns:1fr auto;gap:18px}
 .hall-journey .hero-people-note{display:none}
}
@media(max-width:640px){
 .hall-journey .premier-hero{min-height:max(610px,calc(100svh - var(--header-height,72px)))}
 .hall-journey .premier-hero-content{padding-block:48px 42px}
 .home .hall-journey .premier-hero h1{font-size:clamp(64px,19.5vw,104px);margin:26px 0 22px;line-height:.98}
 .hall-journey .premier-hero:before{background:linear-gradient(90deg,#201713c9,#20171325),linear-gradient(0deg,#201713e8,transparent 72%)}
 .hall-journey .premier-hero-actions{width:100%;gap:20px;flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:27px}
 .hall-journey .premier-hero-actions .button{padding:15px 17px;font-size:12px}
 .hall-journey .hero-secondary{gap:12px;font-size:12px;min-height:44px}
 .hero-lower{grid-template-columns:1fr;gap:13px;padding-block:12px 23px}
 .hall-journey .hero-addresses{justify-content:space-between;gap:5px;font-size:12px;letter-spacing:.06em}
 .hall-journey .hall-scroll-note{font-size:12px;justify-content:center}
 .hall-scroll-note>span{width:15px;height:24px}.hall-scroll-note>span:after{left:6px;top:4px;height:7px}
 .hall-journey .hero-photo-credit{display:none}
 .hall-journey+.discovery-dock{margin-top:20px}
}
@media(max-width:360px){.hall-journey .premier-hero-actions{gap:12px}.hall-journey .premier-hero-actions .button{padding-inline:12px;font-size:12px}.hall-journey .hero-secondary{font-size:12px;gap:7px}}

/* Larger labels need breathing room on narrow screens. */
.hall-journey .hero-addresses{font-size:12px;letter-spacing:.02em}
.hall-journey .hall-scroll-note{font-size:12px}
.hall-journey .premier-hero-actions .button,.hall-journey .hero-secondary{font-size:14px}
@media(max-width:640px){
 .home .hall-journey .hero-overline{font-size:12px;line-height:1.6;letter-spacing:.03em}
 .hall-journey .premier-hero-actions{gap:12px 20px}
 .hall-journey .hero-addresses{gap:6px;font-size:12px;letter-spacing:0}
 .hall-journey .hero-addresses i{display:none}
 .hall-journey .hero-people-note{display:none}
}
/* Stable contrast behind hero copy as the hallway photograph moves. */
.hall-journey .premier-hero:before{background:linear-gradient(90deg,#211a16ed 0%,#211a16db 35%,#211a1666 68%,#211a1626 100%),linear-gradient(0deg,#211a16ed,transparent 32%)}
@media(max-width:640px){.hall-journey .premier-hero:before{background:linear-gradient(90deg,#211a16d9 0%,#211a16cc 85%,#211a1699 100%),linear-gradient(0deg,#211a16ed,transparent 40%)}}
.home .hall-journey .hero-overline,.hall-journey .hero-people-note .eyebrow{color:#fff7e8}
