/* v3 — real footage: seated hero (gesture → choices on palms) + walk-through listings */
.nav{background:linear-gradient(180deg,rgba(17,17,17,.55),transparent)}
.nav.solid{background:rgba(24,25,24,.92)}

/* ---------- HERO ---------- */
.h3{position:relative;height:100svh;min-height:560px;background:var(--stage)}
.h3-stick{position:relative;height:100%;overflow:hidden}
.h3-stage{position:absolute;inset:0 0 auto 0;height:min(100%,62vw);overflow:hidden;background:var(--stage) url(assets/video/vb-stand-poster.jpg) center/cover no-repeat}
.gest{position:absolute;inset:0;width:100%;height:100%}
.gest:not(.rise){opacity:0}.gest.on{opacity:1}
.h3-stage::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,var(--stage) 0,rgba(24,25,24,.66) 22%,transparent 46%)}
.palm{position:absolute;left:0;top:0;z-index:2;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(205,176,121,.55) 0,rgba(205,176,121,.18) 35%,transparent 68%);opacity:0;transition:opacity .6s}
.palm.show{opacity:1;animation:palmPulse 2.6s ease-in-out infinite}
@keyframes palmPulse{50%{filter:brightness(1.35)}}
.ch{position:absolute;left:0;top:0;z-index:3;width:228px;color:var(--ink);text-decoration:none;pointer-events:none}
.ch:hover{color:var(--ink)}
.ch-in{position:relative;background:var(--cream);border-radius:12px;padding:15px 18px 14px;box-shadow:0 18px 50px rgba(0,0,0,.45),0 0 0 1px rgba(184,153,91,.35);opacity:0;transform:translateY(16px) scale(.72);transform-origin:var(--cx,50%) 100%;transition:opacity .45s var(--ease),transform .6s var(--ease),box-shadow .3s,background .3s}
.ch.show{pointer-events:auto}
.ch.show .ch-in{opacity:1;transform:none}
.ch.show.dim .ch-in{opacity:.62;transform:scale(.94)}
.ch.show.on .ch-in{transform:translateY(-6px) scale(1.05);box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 0 2px var(--gold)}
.ch-in::after{content:"";position:absolute;left:var(--cx,50%);bottom:-7px;width:14px;height:14px;margin-left:-7px;background:var(--cream);transform:rotate(45deg);border-radius:0 0 3px 0}
.ch .eyebrow{font-size:10.5px}
.ch h3{font-size:21px;margin-top:6px}
.ch p{font-size:13px;color:var(--mut);margin-top:5px;line-height:1.4}
.ch .go{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:10px;border-top:1px solid var(--line);font-family:'Montserrat',sans-serif;font-weight:800;font-size:12px;color:var(--gold-d)}
.h3-c{position:absolute;z-index:4;left:50%;bottom:clamp(24px,5svh,56px);transform:translateX(-50%);width:min(760px,calc(100% - 32px));text-align:center;color:#fff}
.h3-c h1{font-size:clamp(34px,4.4vw,60px);color:#fff;margin-top:12px}
.h3-c h1 span{color:var(--gold-l)}
.h3-c .eyebrow{color:var(--gold-l)}
.h3 .dock{position:relative;left:auto;bottom:auto;transform:none;width:100%;margin:22px auto 0}
.h3-hint{position:absolute;z-index:4;right:clamp(16px,3vw,36px);bottom:clamp(24px,5svh,56px);display:flex;align-items:center;gap:10px;font-family:'Montserrat',sans-serif;font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(246,241,232,.6);transition:opacity .4s}
.h3-hint i{width:1.5px;height:26px;background:linear-gradient(var(--gold-l),transparent);animation:hintDrop 1.8s ease-in-out infinite}
.h3-hint.lr i{width:26px;height:1.5px;background:linear-gradient(90deg,transparent,var(--gold-l),transparent);animation:hintSway 2.4s ease-in-out infinite}
.h3-hint.off{opacity:0}
@keyframes hintDrop{0%{transform:translateY(-6px);opacity:0}50%{opacity:1}100%{transform:translateY(8px);opacity:0}}
@keyframes hintSway{0%,100%{transform:translateX(-6px)}50%{transform:translateX(6px)}}
@media(max-width:1100px){.h3-hint{display:none}}
@media(max-width:760px){
.h3{height:auto;min-height:0}.h3-stick{padding-top:56px}
.h3-stage{position:relative;inset:auto;height:auto;aspect-ratio:16/10}
.h3-stage::after{background:linear-gradient(0deg,var(--stage) 0,transparent 22%)}
.ch{width:136px}.ch-in{padding:10px 12px 10px;border-radius:10px}.ch h3{font-size:15px;margin-top:3px}.ch p,.ch .go{display:none}.ch .eyebrow{font-size:9px;letter-spacing:.16em}
.palm{width:70px;height:70px;margin:-35px 0 0 -35px}
.h3-c{position:relative;left:auto;bottom:auto;transform:none;width:auto;padding:10px 20px 40px;text-align:left}
}

/* ---------- WALK THE LISTINGS ---------- */
.walk{position:relative;height:640vh;background:#232423}
.walk-stick{position:sticky;top:0;height:100svh;overflow:hidden;background:radial-gradient(ellipse 52% 78% at 50% 56%,#3b3b3b 0,#303130 42%,#212221 100%)}
.hall{position:absolute;inset:0;perspective:1000px;perspective-origin:50% 44%;z-index:1}
.wp{position:absolute;left:50%;top:44%;width:min(520px,38vw);aspect-ratio:4/3;margin:0;padding:0;border:0;background:#111;cursor:pointer;transform-origin:50% 50%;box-shadow:0 30px 80px rgba(0,0,0,.55);outline:2px solid transparent;outline-offset:6px;transition:filter .5s,outline-color .5s;will-change:transform,opacity}
.wp img{width:100%;height:100%;object-fit:cover;display:block}
.wp span{position:absolute;left:12px;bottom:12px;background:rgba(17,17,17,.82);color:#fff;font-family:'Montserrat',sans-serif;font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:7px 11px;border-radius:30px}
.wp.on{outline-color:var(--gold-l)}
.walker{position:absolute;z-index:3;left:50%;bottom:0;height:100%;aspect-ratio:9/16;transform:translateX(-50%);pointer-events:none;background:#303130;--mw:46%;-webkit-mask-image:linear-gradient(90deg,transparent calc(50% - var(--mw)),#000 calc(50% - var(--mw) + 12%),#000 calc(50% + var(--mw) - 12%),transparent calc(50% + var(--mw)));mask-image:linear-gradient(90deg,transparent calc(50% - var(--mw)),#000 calc(50% - var(--mw) + 12%),#000 calc(50% + var(--mw) - 12%),transparent calc(50% + var(--mw)))}
.walk-stick::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(90deg,rgba(17,17,17,.7) 0,transparent 34%),linear-gradient(0deg,rgba(17,17,17,.55),transparent 30%)}
.w-head{position:absolute;z-index:5;left:clamp(20px,5vw,72px);top:clamp(92px,14svh,140px);max-width:400px;color:#fff;transition:opacity .5s,transform .6s var(--ease)}
.w-head h2{font-size:clamp(30px,3.8vw,50px);margin-top:12px}
.w-head p{margin-top:14px;color:rgba(246,241,232,.68);font-size:15px}
.w-head.off{opacity:0;transform:translateY(-14px);pointer-events:none}
.walk .bubble{left:calc(50% + 16svh);top:15svh;z-index:5}
.walk .bubble.off{opacity:0;transform:translateY(6px)}
.winfo{position:absolute;z-index:5;left:clamp(20px,5vw,72px);bottom:clamp(28px,7svh,72px);width:min(400px,calc(100% - 40px));color:#fff;opacity:0;transform:translateY(16px);transition:opacity .5s,transform .6s var(--ease)}
.winfo.on{opacity:1;transform:none}
.winfo.swap .wi-b{opacity:0;transform:translateY(8px)}
.wi-b{transition:opacity .25s,transform .3s var(--ease)}
.wi-n{font-family:'Montserrat',sans-serif;font-weight:800;font-size:12px;letter-spacing:.2em;color:var(--gold-l)}
.winfo .eyebrow{margin-top:14px;color:rgba(246,241,232,.6)}
.winfo .pr{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(32px,3.6vw,46px);letter-spacing:-.03em;color:var(--gold-l);margin-top:8px;line-height:1}
.winfo h3{font-size:clamp(20px,2vw,26px);margin-top:8px;color:#fff}
.winfo .ct{font-size:13.5px;color:rgba(246,241,232,.6);margin-top:4px}
.winfo .hk{font-size:15px;color:rgba(246,241,232,.82);margin-top:12px}
.wi-acts{display:flex;align-items:center;gap:10px;margin-top:20px;flex-wrap:wrap}
.wi-nav{display:flex;gap:8px}
.wi-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(246,241,232,.4);background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;transition:.2s}
.wi-nav button:hover{background:#fff;color:var(--ink)}
.wticks{position:absolute;z-index:5;right:clamp(20px,4vw,48px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px}
.wticks button{width:44px;height:28px;border:0;background:transparent;display:flex;align-items:center;justify-content:flex-end;gap:8px;color:rgba(246,241,232,.45);font-family:'Montserrat',sans-serif;font-weight:800;font-size:11px;padding:0}
.wticks button i{width:14px;height:2px;background:currentColor;transition:width .3s}
.wticks button.on{color:var(--gold-l)}.wticks button.on i{width:26px}
.whint{position:absolute;z-index:5;left:50%;bottom:16px;transform:translateX(-50%);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(246,241,232,.45);white-space:nowrap}
@media(max-width:860px){
.wp{width:44vw}
.walk .bubble{left:auto;right:16px;top:auto;bottom:46svh;max-width:200px;font-size:13.5px}
.walker{height:72%}
.walk-stick::after{background:linear-gradient(0deg,rgba(17,17,17,.92) 0,rgba(17,17,17,.5) 34%,transparent 56%)}
.winfo{bottom:20px}.winfo .hk{display:none}
.wticks,.whint{display:none}
.w-head{top:84px;right:20px}
}
@media(prefers-reduced-motion:reduce){.walk{height:auto}.walk-stick{position:relative}}

/* ---------- live-site additions (not in the design file) ---------- */
/* Testimonials come from real ClosedBase reviews; the design's image-slot
   photo picker is an editor component, so reviewers get a gold monogram. */
.tq .ph.mono{display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--gold-l);font-family:'Montserrat',sans-serif;font-weight:800;font-size:18px;letter-spacing:.02em}
.proof[hidden]{display:none}
