/* The property scene is isolated from the approved entrance. */
.scene.entered .grove-home{padding:0;background:#223523;overflow:hidden}
.scene.entered .grove-home> :not(.property-world){display:none!important}
.property-world{position:absolute;inset:0;overflow:hidden;touch-action:none;outline:none;cursor:grab;background:#526d47;--travel:0;--tree-x:0%;--tree-scale:1;--ground-x:0%;--koso-opacity:0;--object-x:0vw}
.property-world:active{cursor:grabbing}
.property-camera{position:absolute;inset:0;overflow:hidden;isolation:isolate}
.property-ground{position:absolute;width:125%;height:110%;left:0;top:-5%;object-fit:cover;transform:translateX(var(--ground-x));will-change:transform}
.property-tree{position:absolute;z-index:6;left:-3%;top:-4%;width:110%;height:110%;object-fit:fill;transform-origin:15% 60%;transform:translateX(var(--tree-x)) scale(var(--tree-scale));pointer-events:none;will-change:transform}
.property-object{position:absolute;overflow:hidden;pointer-events:none;transform:translateX(var(--object-x));will-change:transform}
.property-object img{position:absolute;top:0;height:100%;width:300%;max-width:none;object-fit:fill}
.kitchen-table{z-index:4;left:56%;top:54%;width:32%;height:33%}.kitchen-table img{left:0}
.greenhouse{z-index:2;left:70%;top:31%;width:27%;height:31%}.greenhouse img{left:-100%}
.koso-building{z-index:3;left:111%;top:24%;width:41%;height:43%;opacity:var(--koso-opacity)}.koso-building img{left:-200%}
@media(max-aspect-ratio:1/1){.property-tree{width:140%;left:-8%}.kitchen-table{width:42%;left:62%}.greenhouse{width:35%;left:83%}.koso-building{width:54%;left:115%}}
/* Independent viewports follow the actual asset bounds. */
.kitchen-table img{width:312.5%;left:0}
.greenhouse img{width:370.37%;left:-122.22%}
.koso-building img{width:256.41%;left:-156.41%}
.koso-building{left:98%}
@media(max-aspect-ratio:1/1){.koso-building{left:88%}}
/* The real property sits behind the existing opening leaves from the click onward. */
.scene.property-passing{background:transparent}
.scene.property-passing .grove-home{display:block;padding:0;background:#223523;z-index:0;animation:none;transform:none}
.scene.property-passing .grove-home> :not(.property-world){display:none!important}
.scene.property-passing #grove{z-index:1;pointer-events:none}
.scene.property-passing .property-world{pointer-events:auto}
.scene.entered .grove-home{animation:none;transform:none}
.scene.entered #grove{visibility:hidden}
.property-world,.property-camera,.property-camera *{animation:none!important;transition:none!important}
/* Paint containment and native drag suppression, with unchanged image geometry. */
.property-world{user-select:none;-webkit-user-select:none;contain:layout paint}
.property-world img{-webkit-user-drag:none}
.property-world.dragging{cursor:grabbing}
.property-object[data-destination],.property-object a,.property-object button{pointer-events:auto}
