/* Hero correction layers. The scene and DOM copy remain stationary. */
.environment{position:absolute;inset:0}.environment .architecture,.background-repair{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill;mask-image:none}.right-opening{position:absolute;inset:0;clip-path:polygon(100% 0,100% 100%,92.94% 100%,92.94% 18%,93.4% 12%,94.7% 7%,97% 3%);z-index:1}.background-repair{z-index:0}.breeze-layer{position:absolute;pointer-events:none}.breeze-layer>img,.breeze-layer>canvas{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.breeze-layer>canvas{visibility:hidden}.breeze-layer.mesh-ready>canvas{visibility:visible}.breeze-layer.mesh-ready>img{visibility:hidden}.right-foliage{inset:0;clip-path:inset(0 0 38% 90%);z-index:1}.tree{width:18%;height:22%;left:-5%;top:auto;bottom:25.2%;transform:none;animation:none;z-index:4}.textile-depth{left:52.25%;top:7.8%;width:28.5%;transform:none;transition:none;z-index:3}.textile{transform-origin:50% .6%;animation:textile-corrected var(--breeze-period,10000ms) ease-in-out infinite;filter:drop-shadow(7px 10px 7px #39251930)}@keyframes textile-corrected{0%,100%{transform:rotate(0deg)}25%{transform:rotate(.16deg)}75%{transform:rotate(-.16deg)}}.foreground-rope{inset:0;z-index:5;opacity:1;filter:drop-shadow(0 2px 1px #60472d26)}.wall-shadow{inset:0;width:auto;height:auto;overflow:visible;z-index:2;clip-path:polygon(6% 9%,46.7% 9%,46.7% 77.5%,21.5% 77.5%,21.5% 71%,6% 71%);mask-image:linear-gradient(to bottom,transparent 20%,#000 42%,#000 79%,transparent 90%);mix-blend-mode:multiply;opacity:.26;filter:blur(4px)}.shadow-foliage{left:31%;top:29%;width:26%;height:59%;transform:rotate(-28deg) skewX(-10deg);transform-origin:50% 100%;filter:brightness(0) saturate(0);animation:none}.exterior-shadow{position:absolute;inset:0;z-index:2;clip-path:polygon(93% 43%,100% 37%,100% 64%,93% 67%);opacity:.12;filter:blur(2px);mix-blend-mode:multiply;pointer-events:none}.exterior-shadow .breeze-layer{inset:0;transform:translate(2%,20%) skewY(-14deg);filter:brightness(0);clip-path:inset(0 0 38% 90%)}.hero-actions{gap:0}.motion-paused .textile{animation-play-state:paused}.scene:after{display:none}
@media(min-width:1600px){.textile-depth{width:27%;left:53%;top:7.8%}}
@media(max-width:1100px) and (min-width:641px){.textile-depth{width:28.5%;left:52.25%;top:9%}}
@media(max-width:640px){.hero{height:880px}.environment{inset:auto;top:450px;left:calc(100% - 764px);width:764px;height:430px;mask-image:linear-gradient(to bottom,transparent,#000 65px)}.environment .architecture{inset:0;width:100%;height:100%;mask-image:none}.textile-depth{left:52.25%;top:7.8%;width:28.5%}.tree{width:160px;height:110px;left:-55px;bottom:108px}.foreground-rope{inset:auto;top:450px;left:0;width:100%;height:430px}.wall-shadow{inset:0;width:auto;height:auto}.hero-actions{gap:0}.motion-control{z-index:6}}
@media(prefers-reduced-motion:reduce){.textile{animation:none!important;transform:rotate(0deg)}.textile-depth{transform:none!important}}
/* Keep the suspension below the navigation and the rope below the primary action. */
@media(min-width:641px){.textile-depth{top:9.8%}}
@media(max-width:640px){.wall-shadow{clip-path:polygon(49% 20%,60% 20%,60% 76%,49% 76%);opacity:.20}.shadow-foliage{left:48%;top:27%;width:24%;height:59%}}
