/* BerryListingTours: the guided tour page (/listing/<id>/tour). Colours are the site's tokens (public/style.css), written out here because
   this page loads only this file. Text pairs: ink #f5f5f5 and muted #bdbdbd on #0b0b0b / black@0.6 bands; gold-hi #e4c57c focus rings. */
:root{--bg:#0b0b0b;--surface:#121212;--ink:#f5f5f5;--muted:#bdbdbd;--gold:#cfa54a;--gold-hi:#e4c57c;--line-ui:#8a8a8a;
--sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--sans)}
a{color:var(--gold-hi)}
a:focus-visible,button:focus-visible,video:focus-visible{outline:3px solid var(--gold-hi);outline-offset:2px}
.small{font-size:.875rem}
.tl{max-width:1100px;margin:0 auto;padding:12px 16px 24px}
.tl-skip{position:absolute;left:-999px;top:0;z-index:100;padding:12px;background:#cfa54a;color:#121212;font-weight:700}.tl-skip:focus{left:0} /* BerryReWalkRemaining B23 */
.tl-top{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.tl-back{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.tl-h{font:600 1.15rem/1.3 var(--serif);margin:0}
.tl-h span{color:var(--muted);font-weight:400}
.tl-note{color:var(--muted);margin:12px 0 0}
.tl-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:16px}
.tl-shot img{width:100%;height:auto;display:block;border-radius:6px}
.tl-shot p{margin:6px 0 0}
.tl-foot{max-width:1100px;margin:0 auto;padding:16px 16px calc(24px + env(safe-area-inset-bottom));border-top:1px solid var(--line-ui);color:var(--muted);font-size:.875rem}.tl-foot p{margin:0 0 6px}.tl-foot a{display:inline-flex;align-items:center;min-height:44px} /* BerryPublicFixes1: the standard footer's licence line, phone and Privacy */
.tl-videos figure{margin:0 0 16px}
.tl-videos video{width:100%;max-height:80vh;background:#000}

/* the player fills the screen under the top line */
.tp-on .tl{max-width:none;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:8px 12px calc(8px + env(safe-area-inset-bottom))}
.tp-on .tl-note{display:none}
.tp{flex:1;display:flex;flex-direction:column;min-height:0;margin-top:6px}
.tp:fullscreen{background:var(--bg);padding:8px}
.tp-stage{position:relative;flex:1;min-height:0;overflow:hidden;border-radius:8px;background:#000;touch-action:pan-y;user-select:none}
.tp-frame{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.tp-frame.on{opacity:1}
.tp-frame.now{transition:none}
.tp-frame img{width:100%;height:100%;object-fit:cover;display:block;will-change:transform}
@media (orientation:portrait){.tp-frame img{object-fit:contain}}
.tp-cap{position:absolute;left:0;right:0;bottom:0;padding:18px 20px 16px;background:linear-gradient(to top,rgba(0,0,0,.78),rgba(0,0,0,.6) 70%,rgba(0,0,0,0));max-height:60%;overflow:auto}
.tp-cap p{margin:0 0 4px;max-width:62ch;text-shadow:0 1px 2px #000}
.tp-eyebrow{color:var(--gold-hi);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;font-weight:700}
.tp-headline{font:600 1.15rem/1.35 var(--serif)}
.tp-facts{font-weight:600}
.tp-card{position:absolute;inset:0;padding:clamp(16px,5vw,48px);overflow:auto;background:var(--bg)}
.tp-card p{margin:0 0 8px}
.tp-addr{font:600 clamp(1.2rem,3vw,1.7rem)/1.25 var(--serif)}
.tp-k{color:var(--gold-hi);font-weight:700;margin-top:16px!important}
.tp-price{font:700 clamp(1.4rem,4vw,2.2rem)/1.2 var(--sans);margin:4px 0 16px!important}
.tp-agent{font-weight:700;margin:12px 0 0!important}
.tp-phone a{display:inline-flex;align-items:center;min-height:44px}
.tp-opens{margin:4px 0 12px;padding-left:20px}
.tp-row{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px!important}
.tp-link{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.tp-small{color:var(--muted);font-size:.875rem}
.tp-video{position:absolute;inset:0;width:100%;height:100%;background:#000}
.tp-bar{display:flex;gap:3px;height:6px;margin:8px 0 4px}
.tp-seg{flex:1 1 0;background:#2a2a2a;border-radius:3px;overflow:hidden}
.tp-fill{display:block;height:100%;width:0;background:var(--gold)}
.tp-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.tp-btn{min-height:44px;min-width:44px;padding:0 14px;border:1px solid var(--line-ui);border-radius:22px;background:var(--surface);color:var(--ink);font:600 1rem var(--sans);cursor:pointer}
.tp-btn:hover{border-color:var(--gold-hi)}
.tp-btn:disabled{opacity:.45;cursor:default}
.tp-btn[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:#0b0b0b}
.tp-prev,.tp-next{font-size:1.5rem;line-height:1;padding:0}
.tp-play{min-width:92px}
.tp-count{color:var(--muted);font-size:.875rem;min-width:64px}
.tp-lens{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}
.tp-len{font-size:.875rem;padding:0 12px}
@media (max-width:560px){.tp-lens{margin-left:0;width:100%}.tp-len{flex:1}.tp-cap{padding:14px 14px 12px}.tp-cap p{font-size:.95rem}}
@media (prefers-reduced-motion:reduce){.tp-frame{transition:none}.tp-frame img{transform:none!important}}
