.room-tour{border:1px solid var(--line);background:radial-gradient(ellipse at 45% 28%, var(--white), var(--tint) 78%);isolation:isolate;border-radius:4px;margin-top:32px;overflow:hidden}.tour-toolbar{border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:20px;min-height:70px;padding:14px 25px;display:flex}.tour-toolbar button{background:var(--white);border:1px solid var(--line);align-items:center;gap:8px;min-height:44px;padding:8px 14px;font-size:14px;display:inline-flex}.tour-toolbar p{font-size:14px}.tour-content{transform-origin:50%;min-height:450px;transition:opacity .4s,transform .4s}.is-transitioning .tour-content{opacity:0;pointer-events:none;transform:scale(1.45)}.tour-overview{padding:26px 30px 22px}.tour-plan{width:100%;max-width:1240px;margin-inline:auto;position:relative}.tour-plan>img{width:100%;height:auto;display:block}.tour-plan>svg{width:100%;height:100%;position:absolute;inset:0}.tour-room{cursor:pointer}.tour-room:focus{outline:none}.tour-room-hit{fill:#0000;stroke:#0000;stroke-width:2px;vector-effect:non-scaling-stroke;transition:fill .25s,stroke .25s}.tour-room:hover .tour-room-hit,.tour-room:focus .tour-room-hit{fill:#eaa66835;stroke:var(--orange)}.tour-room-label{background:color-mix(in srgb, var(--white) 94%, transparent);border:1px solid var(--line);white-space:nowrap;pointer-events:none;border-radius:3px;align-items:center;gap:5px;padding:5px 9px;font-size:14px;display:inline-flex;position:absolute;transform:translate(-50%,-50%)}.tour-room-label .arrow-icon{width:14px;height:14px;color:var(--orange-text);flex-basis:14px}.tour-room-view{grid-template-columns:minmax(0,1fr);animation:.6s tour-enter;display:grid;position:relative}.tour-perspective{aspect-ratio:1000/620;min-width:0;max-height:590px;position:relative;overflow:hidden}.interior-art{width:100%;height:100%;display:block}.tour-caption{background:var(--paper);border-left:2px solid var(--orange);max-width:390px;padding:18px 24px;position:absolute;bottom:20px;left:24px}.tour-caption h3{font:500 24px var(--font-serif);margin-bottom:10px}.tour-caption p{color:var(--muted);font-size:13px}.tour-point{z-index:1;background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.tour-point i{border:3px solid var(--orange);background:var(--paper);border-radius:50%;width:26px;height:26px;animation:2.6s ease-in-out infinite point-breathe;box-shadow:0 0 0 7px #f8f5ee85}.tour-point span{white-space:nowrap;background:var(--paper);border:1px solid var(--line);padding:5px 10px;font-size:12px;position:absolute;top:50%;left:42px;transform:translateY(-50%)}.tour-point.label-left span{left:auto;right:42px}.has-point{grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);min-height:470px}.has-point .tour-perspective{aspect-ratio:auto;min-height:470px}.has-point .interior-art{animation:.7s detail-zoom;position:absolute;inset:0}.tour-explanation{background:var(--white);flex-direction:column;justify-content:center;padding:30px;animation:.6s tour-enter;display:flex}.tour-explanation h3{font:500 32px/1.5 var(--font-serif);margin-bottom:14px}.tour-explanation>p:not(.eyebrow):not(.tour-condition){color:var(--muted);font-size:15px}.tour-explanation h4{color:var(--orange-text);margin:23px 0 11px;font-size:13px;font-weight:500}.tour-explanation ul{gap:10px;margin:0;padding-left:18px;font-size:14px;display:grid}.tour-explanation li::marker{color:var(--orange)}.tour-explanation .tour-condition{color:var(--muted);border-top:1px solid var(--line);margin-top:22px;padding-top:15px;font-size:12px}@keyframes detail-zoom{0%{opacity:.3;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes tour-enter{0%{opacity:0}to{opacity:1}}@keyframes point-breathe{50%{box-shadow:0 0 0 12px #f8f5ee22}}@media (width<=1050px){.has-point{grid-template-columns:1.15fr 1fr}.tour-explanation{padding:26px 24px}.tour-explanation h3{font-size:28px}}@media (width<=700px){.tour-content{min-height:0}.tour-toolbar{flex-wrap:wrap;gap:12px;padding:10px 14px}.tour-toolbar p{font-size:13px}.tour-overview{padding:18px 0;overflow:hidden}.tour-plan{width:145%;max-width:none;margin-left:-22.5%}.tour-room-label{gap:3px;padding:4px 5px;font-size:12px}.tour-caption{max-width:none;padding:20px;position:static}.tour-point span{display:none}.tour-point i{width:22px;height:22px}.has-point{grid-template-columns:1fr;min-height:0}.has-point .tour-perspective{height:clamp(210px,64vw,330px);min-height:0}.tour-explanation{padding:24px 20px}.tour-explanation h3{font-size:27px}}
