@import url('./invitation.css');
.walk video{object-position:center}.welcome-inner{max-width:1100px}.welcome-copy{max-width:500px}.welcome-footnote{font-size:11px;line-height:1.9;color:#d7e1cb;margin-top:28px}.welcome h1{font-size:clamp(66px,7.1vw,105px)}.host-welcome{position:absolute;right:65px;bottom:137px;width:205px;margin:0;transform:rotate(2deg);background:var(--paper);color:var(--ink);padding:9px 9px 17px;box-shadow:0 10px 35px #0002}.host-welcome img{width:100%;height:auto;aspect-ratio:1.03;object-fit:cover;object-position:center 25%;display:block}.host-welcome figcaption{padding:11px 7px 0}.host-welcome strong{font:italic 30px var(--serif);font-weight:400;display:block}.host-welcome figcaption span{display:block;font-size:9px;margin-top:4px;color:var(--muted)}.masthead nav{gap:20px}.offer-nav{border:0;border-radius:3px;background:#e0e8ca;color:#263e30;padding:14px 19px;min-height:46px;font-size:11px}.offer-nav:hover{background:#f0f4e1}.guide{width:355px;padding:17px 20px 14px;bottom:154px}.guide-heading{gap:11px}.guide-avatar{width:49px;height:49px;object-fit:cover;object-position:center 18%;border-radius:50%;flex-shrink:0}.guide-heading>span{display:flex;flex-direction:column;gap:4px}.guide-heading strong{font:500 22px/.95 var(--serif);color:var(--ink)}.guide-heading small{font-size:8px;letter-spacing:.025em}.guide-heading button{padding-left:2px}.guide-words h2{font-size:29px}.guide-words p{margin-bottom:12px}.scene-details{border:0;background:transparent;color:var(--ink);font-size:10px;padding:7px 0 10px;text-align:left;text-decoration:underline;text-underline-offset:4px;line-height:1.6;max-width:100%}.guide.collapsed{width:286px;padding-block:10px}.guide.collapsed .guide-avatar{width:36px;height:36px}.guide.collapsed .guide-heading strong{font-size:21px}.journey{width:580px}.route-stop{width:33px;height:35px}.route-stop::before{width:22px;height:22px}.stop-tooltip{z-index:5}.journey-caption button{font-size:10px}.hotspot-layer{position:absolute;inset:0;pointer-events:none;z-index:3}.detail-hotspot{position:absolute;transform:translate(-22px,-50%);pointer-events:auto;display:flex;align-items:center;padding:0;border:0;background:none;filter:drop-shadow(0 2px 8px #0006)}.detail-hotspot:active{transform:translate(-22px,-50%) scale(.97)}.hotspot-plus{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:#284130;background:#f3f4e8;font-size:22px;border:1px solid #fff9;box-shadow:0 0 0 8px #fff2}.hotspot-label{margin-left:17px;padding:10px 13px;border-radius:3px;background:#f5f2e9;color:#243b2e;font-size:11px;white-space:nowrap}.detail-photo{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:3px;display:block;margin-top:21px}.details-dialog{width:min(630px,calc(100% - 32px))}.details-dialog h2{font-size:39px}.detail-included{padding:19px 20px;background:color-mix(in srgb,var(--ink) 5%,var(--paper));border-radius:4px}.detail-included>span{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.detail-included p{font-size:12px;line-height:1.8;margin:9px 0 0}.detail-actions{display:flex;gap:18px;align-items:center;margin-top:22px;flex-wrap:wrap}.detail-actions .primary-button{font-size:11px;padding:14px 19px;min-height:50px}.underlined-button,.back-to-walk{font-size:11px;background:none;border:0;padding:12px 0;text-decoration:underline;text-underline-offset:5px;color:var(--muted)}.back-to-walk{display:block;margin:16px auto 0}.offers-dialog{width:min(800px,calc(100% - 32px))}.offer-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.offer-card{border:1px solid var(--border);padding:22px 23px;border-radius:4px;display:flex;flex-direction:column}.offer-days{font-size:10px;color:var(--muted);margin:0}.offer-card h3{font:400 31px/1.08 var(--serif);margin:13px 0 17px}.offer-price{font:400 42px/.95 var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0 0 9px}.offer-guests{font-size:11px;margin:0 0 18px;color:var(--muted)}.offer-card ul{padding-left:17px;font-size:12px;line-height:1.9;margin:0 0 20px}.offer-note{font-size:10px;color:var(--muted);line-height:1.7;margin:auto 0 15px}.offer-until{font-size:10px;color:var(--muted);margin:0 0 18px}.offer-card .primary-button{font-size:11px;padding:14px;min-height:48px;justify-content:center;gap:0}.offer-empty{font-size:13px;line-height:1.9;grid-column:1/-1}.offer-list>.primary-button{grid-column:1/-1;justify-content:center}#offer-source{font-size:10px}.messenger-link{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:3px;padding:15px 18px;text-decoration:none;font-size:12px;margin-bottom:9px}.messenger-link svg{width:17px;height:17px}.manager-note{font-size:11px;line-height:1.8;color:var(--muted);margin:16px 0 22px}.guide .scene-details:focus-visible{outline-offset:2px}.invitation.moving .guide:not(:hover):not(:focus-within){opacity:.15}
@media(max-width:1100px) and (min-width:851px){.host-welcome{right:35px;width:170px}.guide{width:300px}.welcome h1{font-size:75px}.journey{left:auto;right:25px;transform:none;width:calc(100% - 390px)}.journey-arrow{display:none}.gesture-hint{right:50px}}
@media(max-width:850px){.masthead{padding:17px 20px;gap:10px}.masthead nav{gap:10px}.masthead .contact-button{display:none}.offer-nav{font-size:10px;min-height:44px;padding:10px 14px}.brand img{width:105px}.welcome-inner{padding-top:7vh}.welcome h1{font-size:58px}.welcome-copy{font-size:12px;margin:20px 0 23px}.welcome-actions .primary-button{padding:16px 20px;gap:20px;font-size:11px}.pace-note{display:none}.welcome-footnote{margin-top:23px;font-size:10px;max-width:185px}.host-welcome{right:24px;bottom:110px;width:120px;padding:5px 5px 10px}.host-welcome figcaption{padding:7px 5px 0}.host-welcome strong{font-size:22px}.host-welcome figcaption span{font-size:7px}.welcome-footer{margin-inline:22px;min-height:73px}.guide{left:18px;right:18px;width:auto;bottom:142px;padding:14px 18px 12px}.guide-avatar{width:45px;height:45px}.guide-heading>span{gap:4px}.guide-heading small{font-size:8px}.guide-heading strong{font-size:24px}.guide-words h2{font-size:28px}.guide-words p{font-size:11px;line-height:1.75;margin-bottom:5px}.scene-details{font-size:10px;min-height:36px}.guide.collapsed{width:auto}.journey{width:calc(100% - 40px);max-width:none;bottom:max(24px,env(safe-area-inset-bottom));display:block}.route-stops{display:none}.journey-middle{width:100%}#position{height:34px}.journey-caption{font-size:11px}.journey-caption button{min-height:44px;font-size:10px}.journey-caption::before{content:'Маршрут';color:#d8e2c8;font-size:9px;margin-right:10px}.journey-caption #route-caption{margin-right:auto}.detail-hotspot{filter:drop-shadow(0 1px 6px #0008)}.hotspot-plus{width:44px;height:44px}.hotspot-label{display:none}.details-dialog,.offers-dialog{padding:23px;max-height:90svh}.details-dialog h2{font-size:34px}.detail-actions{display:block}.detail-actions .primary-button{width:100%;justify-content:center}.underlined-button{width:100%;text-align:center;min-height:44px}.offer-list{grid-template-columns:1fr}.offer-card{padding:22px}.offer-price{font-size:40px}.offer-card h3{font-size:31px}.scene-marker{max-width:calc(100% - 140px);left:21px;gap:7px}.frame-button{right:20px;top:96px}.scene-marker #scene-name{max-width:155px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-marker #scene-count{display:none}.gesture-hint{top:156px}.finish{padding-top:100px}.finish h2{font-size:68px}}
@media(max-height:760px) and (max-width:850px){.welcome-inner{padding-top:4vh}.welcome h1{font-size:53px}.welcome-copy{font-size:12px}.host-welcome{width:92px;bottom:99px;right:22px}.host-welcome strong{font-size:20px}.welcome-footnote{max-width:190px}.guide{bottom:115px}.journey{bottom:16px}.guide-words h2{font-size:25px}.guide-words p{font-size:10px;line-height:1.6}.scene-details{min-height:30px}.guide-next{min-height:32px}}

.detail-hotspot.label-left .hotspot-label{position:absolute;right:61px;margin-left:0}.detail-hotspot.label-left{width:44px}
.visit-request{grid-column:1/-1;font-size:12px;line-height:1.8;background:color-mix(in srgb,var(--ink) 6%,var(--paper));padding:16px 18px;margin:0;border-radius:3px}.offer-card.selected-offer{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.invitation.film-ready .cover-photo{visibility:visible}.walk .cover-photo{object-position:center}.walk.whole-frame .cover-photo{object-fit:contain}

/* The presenter is a person-sized picture beside one line of direct speech.
   Its white surface remains white independently of the optional dialog theme. */
:root:not([data-theme=dark]){--paper:#fff;--ink:#24382d;--muted:#657166;--border:#e4e8e1;--accent:#e7eddc}
.invitation.entered .vignette{background:linear-gradient(0deg,rgba(12,27,18,.52),transparent 34%,transparent 82%,rgba(12,27,18,.24))}
.guide.presenter{--paper:#fff;--ink:#24382d;--muted:#657166;--border:#e4e8e1;display:grid;grid-template-columns:150px minmax(0,1fr);width:450px;min-height:224px;left:44px;bottom:150px;padding:0;overflow:hidden;background:#fff;color:#24382d;border:1px solid #fff;border-radius:8px;box-shadow:0 3px 8px #162c1712,0 14px 42px #15291621;opacity:1}
.presenter-picture{position:relative;min-height:224px;background:#f7f5ef;overflow:hidden}
.presenter-picture>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block;border-radius:0;user-select:none;-webkit-user-drag:none}
.presenter-signature{position:absolute;left:0;right:0;bottom:0;padding:34px 14px 13px;background:linear-gradient(transparent,rgba(255,255,255,.95) 60%);color:#23382a}
.presenter-signature strong{display:block;font:600 14px/1.5 var(--sans);letter-spacing:0}
.presenter-signature span{display:block;font:9px/1.6 var(--sans);color:#687366}
.presenter-dialogue{position:relative;display:flex;align-items:center;padding:40px 24px 25px;min-width:0}
.presenter .guide-words p{font:400 20px/1.43 var(--sans);letter-spacing:-.025em;margin:0;color:#24382d;text-wrap:pretty}
.presenter .guide-words p::before{content:'«'}
.presenter .guide-words p::after{content:'»'}
.presenter-toggle{position:absolute;top:6px;right:7px;width:38px;height:38px;display:grid;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:#879184;z-index:2}
.presenter-toggle svg{width:18px;height:18px;stroke-width:1.5}
.presenter-toggle:focus-visible{outline-offset:-2px}
.presenter-collapsed-name{display:none}
.guide.presenter.collapsed{width:215px;min-height:76px;height:76px;grid-template-columns:64px minmax(0,1fr);padding:0}
.guide.presenter.collapsed .presenter-picture{min-height:76px}
.guide.presenter.collapsed .presenter-picture>img{object-position:center 32%}
.guide.presenter.collapsed .presenter-signature{display:none}
.guide.presenter.collapsed .presenter-dialogue{padding:0 45px 0 15px;min-height:76px}
.guide.presenter.collapsed .presenter-toggle{top:19px;right:4px}
.guide.presenter.collapsed .presenter-collapsed-name{display:block;font:500 15px var(--sans)}
.invitation.moving .guide.presenter:not(:hover):not(:focus-within){opacity:1}
.scene-details.scene-info{position:absolute;top:126px;right:190px;width:44px;height:44px;min-height:44px;padding:0;display:grid;place-items:center;border:1px solid #e4e8e1;border-radius:5px;background:#fff;color:#344a39;box-shadow:0 2px 9px #13291e12;text-decoration:none;z-index:3}
.scene-info svg{width:20px;height:20px}
.frame-button{background:#fff;border-color:#e4e8e1;border-radius:5px;color:#344a39;min-height:44px;box-shadow:0 2px 9px #13291e12}
.host-welcome{background:#fff;color:#263d30;transform:none;padding:0;border:1px solid #fff;border-radius:8px;overflow:hidden;box-shadow:0 8px 28px #13251c24}
.host-welcome img{aspect-ratio:.94;object-position:center 36%;border-radius:0}
.host-welcome figcaption{padding:12px 15px 15px;background:#fff}
.host-welcome figcaption strong{font:500 22px/1.15 var(--serif);font-style:normal;color:#24382d}
.host-welcome figcaption span{color:#687366}
@media(hover:hover) and (pointer:fine){.presenter-toggle:hover{background:#f3f5ef;color:#344a39}.scene-details.scene-info:hover,.frame-button:hover{background:#f3f5ef;opacity:1}}
@media(max-height:800px) and (min-width:851px){.guide.presenter{bottom:133px;min-height:204px}.presenter-picture{min-height:204px}.presenter .guide-words p{font-size:19px}.scene-details.scene-info{top:103px}}
@media(max-width:1100px) and (min-width:851px){.guide.presenter{left:28px;width:410px;grid-template-columns:130px minmax(0,1fr)}.presenter-dialogue{padding-inline:21px}.presenter .guide-words p{font-size:19px}.scene-details.scene-info{right:164px}.gesture-hint{right:40px;left:auto;transform:none}}
@media(max-width:850px){.guide.presenter{left:16px;right:16px;bottom:max(130px,calc(env(safe-area-inset-bottom) + 110px));width:auto;min-height:205px;grid-template-columns:112px minmax(0,1fr);border-radius:7px}.presenter-picture{min-height:205px}.presenter-dialogue{padding:39px 18px 23px}.presenter .guide-words p{font-size:17px;line-height:1.47;letter-spacing:-.02em}.presenter-signature{padding:34px 11px 12px}.presenter-signature strong{font-size:13px}.presenter-signature span{font-size:8px}.presenter-toggle{width:44px;height:44px;top:2px;right:1px}.guide.presenter.collapsed{left:16px;right:auto;width:205px;min-height:74px;height:74px;grid-template-columns:62px minmax(0,1fr)}.guide.presenter.collapsed .presenter-picture,.guide.presenter.collapsed .presenter-dialogue{min-height:74px}.guide.presenter.collapsed .presenter-toggle{top:15px;right:1px}.scene-details.scene-info{top:96px;right:142px;width:44px;height:44px}.scene-marker{max-width:calc(100% - 217px)}.scene-marker #scene-name{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.frame-button{right:20px;min-height:44px}.host-welcome{padding:0;width:116px;right:22px;bottom:108px}.host-welcome img{aspect-ratio:.94}.host-welcome figcaption{padding:9px 11px 11px}.host-welcome figcaption strong{font-size:21px}}
@media(max-width:365px){.guide.presenter{grid-template-columns:92px minmax(0,1fr);min-height:213px}.presenter-picture{min-height:213px}.presenter-dialogue{padding:40px 14px 19px}.presenter .guide-words p{font-size:16px;line-height:1.43}.presenter-signature{padding-inline:9px}.host-welcome{width:90px}.host-welcome figcaption{padding:7px 9px}.host-welcome figcaption strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.guide.presenter{transition:none}}
