.video-journey [hidden]{display:none!important}
/* The shared base stylesheet already has scroll padding; avoid adding a second
   section offset when the bedroom hands off to the embedded tenant page. */
html:has(body[data-short-journey]){scroll-padding-top:100px}
body[data-short-journey] #tenant-page [id]{scroll-margin-top:0}
/* V2 door choice is a fixed decision screen; the tenant page starts at the bedroom. */
html.choice-locked{overflow:hidden;overscroll-behavior:none}
.choice-locked body{position:fixed;inset:0;overflow:hidden}
.choice-locked .ftr{display:none!important}
.choice-locked .track{height:100dvh!important;min-height:0}
.video-journey[data-portrait="true"] .journey-media{width:max(100%,57.143dvh);aspect-ratio:4/7;top:50%}
.video-journey[data-portrait="true"] .door{top:28.2%;height:37%;width:23.5%}
.video-journey[data-portrait="true"] .door.tenant{left:21.1%}
.video-journey[data-portrait="true"] .door.landlord{left:55.7%}
.video-journey[data-portrait="true"] .door-label{top:27%;padding:10px 5px 5px;width:94%;gap:4px;border-radius:6px}
.video-journey[data-portrait="true"] .door-label>span:not(.door-action){display:none}
.video-journey[data-portrait="true"] .door-label .door-action{font-size:10px;gap:7px;min-height:32px;margin-top:2px}
.video-journey[data-portrait="true"] .door-label strong{font-size:clamp(13px,3.7vw,20px)}
.video-journey[data-portrait="true"] .stage::after{background:linear-gradient(180deg,#081416c9,transparent 24%,transparent 61%,#081416f5 91%)!important}
.video-journey[data-portrait="true"][data-stop="1"] .stage::after{background:linear-gradient(180deg,#081416c9,transparent 22%,transparent 68%,#081416f5 96%)!important}
.journey-media{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100%,177.69dvh);aspect-ratio:1672/941}
.journey-media>picture,.journey-media>picture>img,.journey-media>video{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block}
.journey-media>video{z-index:1}
.video-journey .stage::after{z-index:2}
.video-journey .pnl{opacity:1;max-width:390px}
.video-journey .panels{z-index:3}
.video-journey .walk-controls{z-index:7}
.video-journey .journey-doors{position:absolute;inset:0;z-index:5}
.video-journey .door{position:absolute;top:22.8%;height:64.1%;width:14.7%;border:0;padding:0;background:transparent;backdrop-filter:none;display:flex;align-items:center;justify-content:center;transition:background .2s;transform:none}
.video-journey .door.tenant{left:31.3%}.video-journey .door.landlord{left:53.2%}
.door-label{position:absolute;top:23%;display:grid;text-align:center;gap:6px;padding:15px 10px 10px;width:92%;background:#fffaf4fa;color:var(--rose);border:2px solid var(--rose);border-radius:8px;box-shadow:0 3px 0 #0002,0 6px 18px #0003}
.landlord .door-label{color:var(--marine);border-color:var(--marine)}
.door-label strong{font-family:var(--display);font-size:clamp(18px,1.7vw,28px)}
.door-label>span{font-family:var(--mono);font-size:clamp(10px,.8vw,13px)}
.door-label .door-action{display:flex;align-items:center;justify-content:center;gap:14px;min-height:38px;margin-top:4px;border-top:1px solid currentColor;font-family:var(--ui);font-weight:700;font-size:12px}
.door-label .door-action b{font-size:20px;font-weight:400}
.video-journey .door{outline:3px solid var(--rose);outline-offset:-3px;border-radius:2px}
.video-journey .door.landlord{outline-color:var(--marine)}
.video-journey .door:hover{background:#ffffff18;transform:none}
.video-journey .door:focus-visible .door-label{box-shadow:0 0 0 4px white,0 0 0 7px #152d31}
.tenant:hover .door-label{background:var(--rose);color:white}
.landlord:hover .door-label{background:var(--marine);color:white}
.video-journey[data-stop="1"] .stage::after{background:linear-gradient(180deg,#081416ba,transparent 24%,transparent 78%,#081416d9)}
.video-journey[data-stop="1"] .walk-controls{left:50%;transform:translateX(-50%);text-align:center;justify-content:center;bottom:28px;max-width:90%;width:max-content}
.video-journey.is-playing .stage::after{background:linear-gradient(180deg,#08141680,transparent 20%,transparent 80%,#08141688)}
.video-journey.is-playing .panels{visibility:hidden}
.video-journey.is-playing .walk-controls{display:flex!important}
.video-journey .aidisc{z-index:4;pointer-events:none;font-size:10px}
.video-journey .btn:disabled{opacity:.5;cursor:wait}
/* High-contrast, fixed navigation dock. Primary action never competes with the photograph. */
.video-journey .walk-controls,.video-journey[data-stop="1"] .walk-controls{left:50%;bottom:28px;transform:translateX(-50%);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 40px);padding:16px 20px;border:1px solid #ffffff45;border-radius:12px;background:#0c1416f5;box-shadow:0 8px 32px #0005;text-align:center}
.video-journey .walk-status{font-size:13px;color:#fff;flex-basis:100%}
.video-journey .walk-controls .btn{min-height:56px;padding:14px 22px;font-size:15px;letter-spacing:.025em;border-radius:6px;justify-content:center}
.video-journey #walk-next,.video-journey #walk-finish{background:var(--rose);border-color:var(--rose);color:white}
.video-journey #walk-next:hover,.video-journey #walk-finish:hover{background:var(--marine);border-color:var(--teal-hi)}
.video-journey #walk-back,.video-journey #walk-skip-animation{background:#fff;color:#123338;border-color:#fff}
.video-journey #walk-back:hover,.video-journey #walk-skip-animation:hover{background:var(--marine);color:#fff;border-color:var(--teal-hi)}
.video-journey .walk-skip{font-size:13px;min-height:44px;display:flex;align-items:center;padding:0 8px}
.video-journey .pnl:not([data-i="0"]){bottom:215px}
.video-journey.is-playing .walk-controls{display:flex!important}
/* Portrait: crop around the shared camera axis, retaining BOTH door faces.
   Copy and navigation live below the image rather than over tiny landscape media. */
@media(max-aspect-ratio:1/1){
 .video-journey{--picture-height:clamp(260px,calc(100dvh - 380px),540px)}
 .video-journey .journey-media{width:calc(var(--picture-height)*1.7769);top:calc(105px + var(--picture-height)/2)}
 .video-journey .stage::after{background:linear-gradient(180deg,#0c1416 80px,transparent 150px,transparent calc(80px + var(--picture-height)),#0c1416 calc(120px + var(--picture-height)))!important}
 .video-journey .pnl,.video-journey .pnl[data-i="0"],.video-journey .pnl:not([data-i="0"]){left:20px;right:20px;top:auto!important;bottom:195px;max-width:none}
 .video-journey .pnl h1,.video-journey .pnl h2{font-size:28px;line-height:1.05}
 .video-journey .pnl p{font-size:13px;line-height:1.4;margin-top:8px;max-width:none}
 .video-journey .pnl .kick{font-size:10px;margin-bottom:7px}
 .video-journey[data-stop="0"] .pnl{bottom:28px}
 .video-journey[data-stop="0"] .pnl>p,.video-journey[data-stop="0"] .pnl>.kick{display:none}
 .video-journey[data-stop="0"] .pnl h1 br{display:none}
 .video-journey .door-label{padding:12px 4px;width:100%;gap:6px;border-radius:3px}
 .video-journey .door-label strong{font-size:clamp(15px,4vw,19px)}
 .video-journey .door-label>span{font-size:10px;line-height:1.3}
 .video-journey .entrance-actions{margin-top:14px;gap:8px;max-width:none}
 .video-journey .entrance-actions #knock{min-height:58px}
 .video-journey .walk-controls,.video-journey[data-stop="1"] .walk-controls{bottom:22px;left:12px;right:12px;transform:none;width:auto;max-width:none;padding:12px;display:grid;grid-template-columns:auto 1fr;gap:8px}
 .video-journey .walk-status{grid-column:1/-1;font-size:11px;line-height:1.4;white-space:normal}
 .video-journey .walk-controls .btn{min-height:52px;font-size:12px;letter-spacing:0;padding:12px 14px}
 .video-journey .walk-skip{grid-column:1/-1;min-height:44px;justify-content:center;font-size:12px}
 .video-journey[data-stop="1"] #walk-back{grid-column:1/-1}
 .video-journey .aidisc{bottom:4px;left:12px;right:12px;text-align:center;font-size:8px;letter-spacing:0}
}
@media(max-aspect-ratio:1/1) and (max-height:740px){.video-journey .pnl:not([data-i="0"]) p{display:none}.video-journey .pnl:not([data-i="0"]){bottom:195px}.video-journey .pnl h2{font-size:24px}.video-journey .pnl:not([data-i="0"]) .kick{display:none}}
@media(max-height:550px) and (min-aspect-ratio:1/1){.video-journey .walk-controls{bottom:12px;padding:10px 14px;gap:8px}.video-journey .walk-controls .btn{min-height:44px;font-size:12px;padding:10px 14px}.video-journey .walk-status{font-size:11px}.video-journey .pnl:not([data-i="0"]){top:85px!important;bottom:auto;max-width:30%}.video-journey .pnl p{display:none}.video-journey .pnl h2{font-size:24px}}
