/* One photographic landscape carries the arrival, map and approach. */
.view-world{overflow:hidden;background:#192a1c;color:#faf5e8}.view-world #app{position:relative;z-index:2;pointer-events:none}.view-world a,.view-world button,.view-world dialog{pointer-events:auto}.world-host{position:fixed;inset:0;z-index:0;overflow:hidden;background:#223521}.world-host[hidden]{display:none}.photo-underlay{position:absolute;inset:-30px;background:linear-gradient(#182c2055,#182c2070),url('/assets/maenam-bank-1m-underlay.webp') center/cover;filter:blur(18px)}.photo-stage{position:absolute;width:1672px;height:941px;transform-origin:0 0;will-change:transform;touch-action:none}.estate-image{position:absolute;width:100%;height:100%;display:block;max-width:none;user-select:none}.roof-map{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.roof-map polygon{fill:#fff0;stroke:#f0e7bb;stroke-width:1.3;stroke-opacity:0;vector-effect:non-scaling-stroke;transition:fill .3s,stroke-opacity .3s;cursor:pointer}.world-host[data-view=map] .roof-map polygon{pointer-events:all}.roof-map polygon.is-highlighted{fill:#fbebae33;stroke-opacity:.85}.world-moving .roof-map polygon{pointer-events:none!important}.atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;transition:opacity 1.8s}.world-host[data-view=villa] .atmosphere{opacity:.28}.mist{position:absolute;max-width:none;mix-blend-mode:screen;will-change:transform;user-select:none;opacity:.66}.mist-one{width:95vw;left:-23%;top:-43%;animation:cloud-one 62s linear infinite alternate}.mist-two{width:80vw;left:49%;top:19%;opacity:.5;animation:cloud-two 78s linear infinite alternate}.mist-three{width:60vw;left:-20%;bottom:-39%;opacity:.44;animation:cloud-three 72s linear infinite alternate}.world-host[data-view=map] .mist{opacity:.26;transition:opacity 2s}.bird-flight{position:absolute;width:24px;opacity:0;will-change:transform;animation:bird-pass 40s linear infinite}.bird-flight img{width:100%;height:auto;filter:drop-shadow(10px 20px 3px #0b160b30);animation:bird-glide 5.5s ease-in-out infinite}.bird-one{left:-5%;top:28%;animation-delay:-12s}.bird-two{width:17px;left:-8%;top:32%;animation-delay:-11.3s}.bird-two img{animation-delay:-2s}.motion-paused .atmosphere *{animation-play-state:paused!important}.world-screen{position:relative;height:100svh;min-height:500px;isolation:isolate;overflow:hidden;pointer-events:none}.world-screen:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#06171085,transparent 27%,transparent 68%,#061810ba);pointer-events:none}.world-screen[data-view=arrival]:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 48%,#10251c65,transparent 75%);pointer-events:none}.view-world .site-header{height:130px;padding:28px 3.5%;align-items:flex-start}.view-world .site-header .brand{position:absolute;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:7px;text-align:center}.view-world .brand-symbol{width:32px;height:31px}.view-world .brand-name{font-size:25px;letter-spacing:.15em}.view-world .brand-sub{font-family:'DM Sans',sans-serif;font-size:11px;letter-spacing:.34em;margin-top:3px}.view-world .header-links{margin-left:auto;padding-top:9px;gap:28px}.view-world .header-links a{font-size:14px}.view-world .menu-button{width:34px;height:32px}.sound-control{display:flex;align-items:center;gap:12px;background:none;font-size:14px;padding:17px 0}.sound-bars{display:flex;align-items:center;gap:3px;height:19px}.sound-bars i{width:1px;height:6px;background:currentColor}.sound-bars i:nth-child(2n){height:13px}.sound-bars i:nth-child(3n){height:19px}.sound-control[aria-pressed=true] .sound-bars i{animation:sound-wave 1.3s ease-in-out infinite alternate}.sound-control[aria-pressed=true] .sound-bars i:nth-child(2n){animation-delay:-.7s}.entry-copy{position:absolute;left:50%;top:50%;width:92%;transform:translate(-50%,-47%);text-align:center;text-shadow:0 2px 25px #10220d65;animation:copy-in 1.8s ease both}.entry-copy .eyebrow{font-size:14px;font-weight:400;letter-spacing:.23em}.entry-copy h1{font-family:'DM Sans',sans-serif;font-size:clamp(48px,5.6vw,92px);font-weight:400;letter-spacing:.14em;line-height:1.17;margin:26px 0 23px}.entry-copy>p{font:400 19px/1.6 Georgia,serif;margin:0 0 31px}.explore-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:58px;background:#f4f1df;color:#2e4836;padding:18px 25px;font-size:14px;letter-spacing:.08em;text-transform:uppercase;text-shadow:none;transition:background .35s,translate .35s}.explore-button svg{width:19px;height:19px}.explore-button:hover{background:#fffdf2;translate:0 -3px}.entry-coordinate{position:absolute;left:50%;bottom:40px;transform:translateX(-50%);font-size:12px;letter-spacing:.11em;white-space:nowrap;opacity:.85}.world-footer{position:absolute;bottom:25px;left:3.5%;right:3.5%;display:flex;justify-content:space-between;align-items:flex-end;gap:25px}.geo-caption{display:grid;gap:6px;font-size:14px;line-height:1.4}.geo-caption span{font-size:12px;color:#fffdf2ba}.scene-disclaimer{display:flex;align-items:center;gap:15px;font-size:11px;line-height:1.65;color:#faf5e8c7;text-align:right}.world-pause{flex:none;border:1px solid #f6f4de65;border-radius:50%;width:38px;height:38px;background:#152d2040;font-size:15px;backdrop-filter:blur(10px)}.map-intro{position:absolute;left:4%;top:28%;max-width:285px;animation:copy-in 1.2s both}.map-intro .eyebrow{font-size:13px;letter-spacing:.17em}.map-intro h1{font:400 clamp(40px,4vw,60px)/1.1 'Italiana',Georgia,serif;margin:22px 0}.map-intro h1 em{font-family:Georgia,serif;font-size:.78em}.map-intro p{font-size:16px;line-height:1.75;color:#fffbea}.map-instruction{display:block;margin-top:32px;padding-top:20px;border-top:1px solid #fff4;font-size:13px;line-height:1.7;color:#f3eed8c9}.world-screen[data-view=map]:before{background:linear-gradient(90deg,#071d12a6,transparent 43%),linear-gradient(180deg,#0617109c,transparent 30%,transparent 65%,#061810c4)}.world-pins{position:absolute;inset:0;pointer-events:none;transition:opacity .55s}.world-pin{position:absolute;left:0;top:0;display:grid;place-items:center;border:1px solid #fff6;border-radius:50%;width:37px;height:37px;padding:0;background:#faf3dde8;color:#243829;box-shadow:0 0 0 5px #f7f3da26,0 5px 17px #081b1640;font-size:14px;transition:background .25s,box-shadow .25s;pointer-events:auto;will-change:transform}.world-pin:before{content:'';position:absolute;inset:-6px}.world-pin:hover,.world-pin:focus-visible,.world-pin.is-highlighted{background:#fff8dc;box-shadow:0 0 0 9px #f8edbd4f;z-index:3}.world-pin>span{position:absolute;left:47px;top:0;white-space:nowrap;font-size:13px;padding:10px 12px;background:#f6efddf5;opacity:0;pointer-events:none;transition:opacity .2s}.world-pin:hover>span,.world-pin:focus-visible>span{opacity:1}.map-dock{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;padding:9px 12px;border:1px solid #ffedbc55;background:#122d21b8;backdrop-filter:blur(15px);white-space:nowrap;pointer-events:auto}.map-dock>span{font-size:13px;padding:0 17px 0 5px}.map-dock a{width:38px;height:38px;display:grid;place-items:center;font-size:14px;border-radius:50%;transition:color .25s,background .25s}.map-dock a:hover,.map-dock a:focus-visible{background:#f7efda;color:#1c3e2c}.map-reference-note{position:absolute;left:50%;transform:translateX(-50%);bottom:77px;white-space:nowrap;font-size:11px;letter-spacing:.025em;color:#fbf4dfb0}.world-tools{position:absolute;right:3.5%;bottom:155px;display:grid;gap:9px}.world-tools button{width:40px;height:40px;border:1px solid #fff7;border-radius:50%;background:#15382478;backdrop-filter:blur(10px);font-size:22px}.world-tools button:hover{background:#f5eddb;color:#183c28}.world-back{position:absolute;top:153px;left:3.5%;display:flex;align-items:center;gap:12px;font-size:14px}.world-back svg{width:20px;height:20px}.villa-render{position:absolute;inset:0;z-index:-2;pointer-events:none}.villa-strips{display:flex;position:absolute;inset:0;overflow:hidden;perspective:1400px}.villa-strip{width:20%;height:100%;background-image:linear-gradient(#09261514,#0a1d1125),url('/assets/facade.webp');background-size:500% 100%;background-position:var(--position) center;opacity:1;transform:translateY(0) rotateX(0);transition:transform 1.45s cubic-bezier(.16,1,.3,1),opacity 1.05s;transition-delay:calc(var(--i)*70ms);backface-visibility:hidden}.world-moving .villa-strip{opacity:0;transform:translateY(calc(var(--direction)*70px)) rotateX(calc(var(--direction)*5deg));transition-duration:.25s;transition-delay:0s}.world-screen[data-view=villa]:before{background:linear-gradient(180deg,#061d166e,transparent 35%,transparent 63%,#071d12b3)}.villa-view-caption{position:absolute;left:4%;bottom:115px;text-shadow:0 2px 14px #09251899;transition:opacity 1s .4s}.villa-view-caption .eyebrow{font-size:12px;letter-spacing:.2em}.villa-view-caption p{font:400 38px/1.15 'Italiana',Georgia,serif;margin:15px 0}.villa-view-caption p em{font-family:Georgia,serif;font-size:.8em}.villa-view-caption>span:last-child{font-size:12px}.villa-pearl{position:absolute;right:4%;top:50%;transform:translateY(-43%);width:362px;background:#f4f0e5f5;backdrop-filter:blur(16px);color:#263c2b;padding:29px 28px;box-shadow:0 15px 60px #0e201a33;transition:opacity .85s .65s,translate 1.1s .45s;pointer-events:auto}.villa-overline{display:flex;justify-content:space-between;align-items:center;gap:12px}.villa-pearl .eyebrow{font-size:11px;letter-spacing:.13em}.villa-counter{font-size:12px;color:#75806c}.villa-pearl h1{font:400 64px/1 'Italiana',Georgia,serif;letter-spacing:-.04em;margin:20px 0 13px}.villa-pearl h1 em{font-family:Georgia,serif;font-weight:400;font-size:.85em}.villa-pearl .location{font-size:13px;color:#606e5f;margin:0 0 24px;line-height:1.6}.pearl-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px 16px;margin:0;padding:23px 0;border-top:1px solid #253e252e;border-bottom:1px solid #253e252e}.pearl-facts div{display:flex;flex-direction:column;gap:8px}.pearl-facts dd{order:0;margin:0;font:400 30px/1 'Italiana',Georgia,serif}.pearl-facts dt{order:1;font-size:12px;color:#606e5f}.pearl-facts small{font:12px 'DM Sans',sans-serif}.pearl-phase{display:flex;flex-direction:column;gap:7px;padding:20px 0;font-size:12px}.pearl-phase strong{font-size:17px;font-weight:400}.pearl-phase>span:before{content:'';display:inline-block;width:6px;height:6px;background:#799065;border-radius:50%;margin-right:8px}.pearl-link{display:flex;align-items:center;justify-content:space-between;background:#2b4634;color:#f6eedb;padding:17px 15px;font-size:14px;gap:15px}.pearl-link:hover{background:#173b2c}.pearl-link svg{width:19px;height:19px}.pearl-nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px;font-size:14px}.pearl-nav a{padding:5px}.pearl-nav button{padding:5px 0;background:none;font-size:12px;color:#64745b;text-decoration:underline;text-underline-offset:4px}.world-moving .villa-pearl,.world-moving .villa-view-caption{opacity:0;translate:0 20px;pointer-events:none;transition-delay:0s;transition-duration:.2s}.world-moving .villa-pearl *{pointer-events:none}.world-moving .world-pins{opacity:0;pointer-events:none}.world-moving .world-pins button{pointer-events:none}.journey-progress{position:absolute;bottom:90px;left:50%;transform:translateX(-50%);opacity:0;transition:opacity .4s;text-align:center;font-size:12px;letter-spacing:.13em}.journey-progress i{display:block;width:160px;height:1px;background:#fff5;overflow:hidden;margin:15px auto}.journey-progress i:after{content:'';display:block;background:#f9f1d8;width:33%;height:1px;animation:travel-line 1.5s infinite}.world-moving .journey-progress{opacity:1}.world-moving .map-dock,.world-moving .map-reference-note{opacity:0}.world-moving .world-tools{opacity:0;pointer-events:none}.world-moving .world-tools button{pointer-events:none}.view-world .menu-dialog,.view-world .skip-link{pointer-events:auto}
@keyframes copy-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}@keyframes sound-wave{to{height:3px}}@keyframes travel-line{from{transform:translateX(-120%)}to{transform:translateX(410%)}}@keyframes cloud-one{from{transform:translate3d(-12%,6%,0) scale(1)}to{transform:translate3d(26%,19%,0) scale(1.12)}}@keyframes cloud-two{from{transform:translate3d(12%,20%,0) scale(1.08)}to{transform:translate3d(-24%,-9%,0) scale(.94)}}@keyframes cloud-three{from{transform:translate3d(-10%,0,0)}to{transform:translate3d(40%,-28%,0)}}@keyframes bird-pass{0%{transform:translate3d(0,0,0) rotate(-10deg);opacity:0}6%{opacity:.8}50%{transform:translate3d(60vw,-10vh,0) rotate(3deg);opacity:.9}90%{opacity:.8}100%{transform:translate3d(120vw,-18vh,0) rotate(-6deg);opacity:0}}@keyframes bird-glide{0%,100%{transform:scaleY(1) rotate(0deg)}50%{transform:scaleY(.84) rotate(6deg)}}
@media(min-width:1700px){.villa-pearl{right:6%;width:390px;padding:34px}.entry-copy h1{font-size:96px}}
@media(max-width:1000px) and (min-width:760px){.map-intro{max-width:210px}.map-intro h1{font-size:39px}.map-intro p{font-size:14px}.villa-pearl{right:3%;width:320px;padding:24px}.villa-pearl h1{font-size:54px}.villa-view-caption p{font-size:33px}.view-world .header-links a{display:none}.entry-coordinate{display:none}}
@media(max-width:759px){.view-world .site-header{height:110px;padding:19px 20px}.view-world .brand-name{font-size:21px}.view-world .brand-symbol{width:28px;height:27px}.view-world .brand-sub{font-size:10px}.view-world .header-links{padding-top:7px}.sound-control{padding-top:13px;min-width:42px;min-height:44px}.sound-control>span:last-child{display:none}.view-world .header-links a{display:none}.entry-copy{width:94%;top:46%;transform:translate(-50%,-45%)}.entry-copy .eyebrow{font-size:11px;letter-spacing:.16em}.entry-copy h1{font-size:clamp(37px,9.7vw,66px);letter-spacing:.07em;line-height:1.25;margin:25px 0 21px}.entry-copy>p{font-size:17px;max-width:290px;margin:0 auto 28px;line-height:1.7}.explore-button{font-size:13px;gap:22px;padding:17px 22px;min-height:57px}.entry-coordinate{bottom:124px;font-size:11px}.world-footer{left:20px;right:20px;bottom:20px;gap:14px}.geo-caption{font-size:12px;gap:5px;max-width:146px}.geo-caption span{font-size:10px}.scene-disclaimer{font-size:9px;gap:9px;max-width:185px}.world-pause{width:34px;height:34px}.mist-one{width:190vw;top:-10%;left:-75%}.mist-two{width:160vw;left:40%;top:44%}.mist-three{width:170vw;bottom:-8%;left:-95%}.bird-flight{width:20px}.bird-two{width:15px}.map-intro{top:137px;left:24px;right:24px;max-width:none}.map-intro .eyebrow{font-size:11px}.map-intro h1{font-size:33px;margin:12px 0;line-height:1.1}.map-intro h1 br{display:none}.map-intro h1 em{font-size:.8em}.map-intro p{display:none}.map-instruction{border:0;padding:0;margin:0;font-size:12px}.map-instruction br{display:none}.world-screen[data-view=map]:before{background:linear-gradient(180deg,#061b128c,transparent 32%,transparent 66%,#081e139c)}.world-pin{width:32px;height:32px;font-size:12px;box-shadow:0 0 0 4px #f7f3da26,0 4px 12px #09251766}.world-pin>span{display:none}.map-dock{bottom:108px;max-width:calc(100% - 28px);gap:0;padding:7px 4px}.map-dock>span{display:none}.map-dock a{width:32px;height:37px;font-size:13px}.map-reference-note{bottom:85px;font-size:10px}.world-tools{right:18px;bottom:174px;gap:7px}.world-tools button{width:36px;height:36px;font-size:21px}.world-back{top:125px;left:20px;font-size:13px;gap:8px}.villa-render{bottom:29%}.villa-strip{background-size:500% 100%;background-position:var(--position) center}.villa-view-caption{display:none}.villa-pearl{top:auto;bottom:78px;left:16px;right:16px;width:auto;transform:none;padding:21px 22px}.villa-overline .eyebrow{font-size:10px}.villa-pearl h1{font-size:42px;margin:12px 0 15px}.villa-pearl .location{display:none}.pearl-facts{grid-template-columns:repeat(4,1fr);gap:12px;padding:15px 0}.pearl-facts dd{font-size:23px;white-space:nowrap}.pearl-facts dt{font-size:10px;line-height:1.5}.pearl-facts small{font-size:9px}.pearl-phase{flex-direction:row;justify-content:space-between;align-items:center;padding:15px 0;font-size:10px;gap:5px}.pearl-phase strong{font-size:13px}.pearl-link{font-size:13px;padding:15px 13px}.pearl-nav{margin-top:13px;font-size:13px}.pearl-nav button{font-size:11px}.world-screen[data-view=villa]:before{background:linear-gradient(#0a24163d,transparent 40%,#0c22155c 60%,#0b2118)}.world-screen[data-view=villa] .scene-disclaimer{max-width:177px}.journey-progress{bottom:44%;font-size:11px}}
@media(max-height:820px) and (min-width:760px){.villa-pearl{top:54%;width:335px;padding:20px 24px}.villa-pearl h1{font-size:48px;margin:12px 0}.villa-pearl .location{margin-bottom:13px}.pearl-facts{gap:15px;padding:15px 0}.pearl-facts dd{font-size:26px}.pearl-phase{padding:13px 0;flex-direction:row;justify-content:space-between}.pearl-phase strong{font-size:14px}.pearl-nav{margin-top:12px}.world-back{top:128px}}
@media(max-height:710px) and (max-width:759px){.view-world .site-header{padding-top:12px}.view-world .brand-symbol{height:20px}.entry-copy{top:47%}.entry-copy h1{font-size:37px;margin:19px 0}.entry-copy>p{font-size:15px;margin-bottom:22px}.entry-coordinate{display:none}.map-intro{top:106px}.map-intro h1{font-size:28px}.map-intro .eyebrow{display:none}.villa-pearl{bottom:69px;padding:15px 18px}.villa-pearl h1{font-size:34px;margin:9px 0}.pearl-facts{padding:11px 0;gap:8px}.pearl-facts dd{font-size:21px}.pearl-phase{padding:11px 0}.pearl-link{padding:12px}.pearl-nav{margin-top:8px}.world-back{top:105px}.world-footer{bottom:15px}.scene-disclaimer{font-size:8px}.map-dock{bottom:96px}.map-reference-note{bottom:75px}}
@media(prefers-reduced-motion:reduce){.atmosphere *{animation:none!important}.journey-progress{display:none}.villa-strip,.villa-pearl{transition:none!important}.entry-copy{animation:none}}
.villa-strip{position:absolute;inset:0;width:100%;background-size:cover;background-position:38% center;clip-path:polygon(calc(var(--i)*20%) 0,calc((var(--i) + 1)*20% + .1%) 0,calc((var(--i) + 1)*20% + .1%) 100%,calc(var(--i)*20%) 100%)}
@media(min-width:760px){.map-dock{left:4%;bottom:100px;transform:none;width:238px;flex-wrap:wrap;gap:3px;padding:11px}.map-dock>span{width:100%;padding:0 4px 5px;font-size:12px}.map-dock a{width:40px;height:34px}.map-reference-note{left:4%;bottom:79px;transform:none;font-size:10px}.map-instruction{margin-top:20px;padding-top:15px}.map-intro{top:25%}.world-screen[data-view=map] .journey-progress{left:62%}}
@media(max-width:759px){.world-host[data-view=map] .photo-stage{mask-image:linear-gradient(transparent,#000 9%,#000 88%,transparent)}.world-host[data-view=map] .photo-underlay{filter:blur(24px) brightness(.65)}}
.world-host.photo-framed .photo-stage{mask-image:linear-gradient(transparent,#000 9%,#000 88%,transparent)}.world-host.photo-framed .photo-underlay{filter:blur(24px) brightness(.65)}

@media(max-height:690px) and (min-width:760px){.entry-copy h1{font-size:54px}.entry-copy>p{font-size:17px}.entry-copy .eyebrow{font-size:12px}.entry-coordinate{display:none}}
.world-host{overflow:clip}
/* Continuous villa selection: the aerial remains on screen throughout. */
.photo-underlay{background-image:linear-gradient(#182c2025,#182c2045),url('/assets/maenam-bank-1m-aerial.webp')}
.estate-focus{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 1.8s;background:radial-gradient(ellipse var(--focus-rx,360px) var(--focus-ry,300px) at var(--focus-x,40%) var(--focus-y,45%),transparent 38%,#081b1024 70%,#081b1047 100%)}
.world-host[data-view=villa] .estate-focus{opacity:1}
.world-host[data-view=villa] .roof-map polygon{pointer-events:all}
.roof-map polygon.is-selected{fill:transparent;stroke-opacity:.46;stroke-width:1.2;stroke-dasharray:0}
.roof-map polygon.is-selected.is-highlighted{fill:#fbebae0c;stroke-opacity:.8}
.world-screen[data-view=villa]:before{background:linear-gradient(180deg,#0b211969,transparent 25%,transparent 76%,#092116a8)}
.selected-villa-label{position:absolute;transform:translateX(-50%);color:#fff8e7;display:grid;justify-items:center;gap:10px;white-space:nowrap;font-size:14px;text-shadow:0 2px 9px #0a2814;transition:opacity .8s;pointer-events:none}
.selected-villa-label span{background:#18392299;backdrop-filter:blur(10px);padding:10px 17px;border:1px solid #f5eedb4d}
.selected-villa-label i{height:25px;width:1px;background:#fff8e777;order:-1}
.world-moving .selected-villa-label{opacity:0}
.villa-pearl{transition:opacity 1.2s .1s,translate 1.6s cubic-bezier(.16,1,.3,1)}
.world-moving .villa-pearl{translate:26px 0;opacity:0;transition-duration:.25s;transition-delay:0s}
.world-moving.world-arriving .villa-pearl{translate:0 0;opacity:1;transition-duration:1.25s;transition-delay:0s}
.pearl-map-return{font-size:12px;color:#627059;text-decoration:underline;text-underline-offset:4px}
.world-moving .journey-progress{opacity:0}
.atmosphere{transition:opacity 1.5s}
.mist-one{width:68vw;left:-25%;top:-24%;opacity:.48;animation:cloud-one 95s linear infinite alternate}
.mist-two{width:58vw;left:72%;top:40%;opacity:.40;animation:cloud-two 115s linear infinite alternate}
.world-host[data-view=map] .mist{opacity:.32}
.world-host[data-view=villa] .atmosphere{opacity:.7}
.bird-one{left:-8%;top:25%;animation-duration:38s;animation-delay:-9s}
.bird-two{left:-11%;top:29%;animation-duration:43s;animation-delay:-8.4s}
.bird-flight img{animation:bird-glide 2.6s ease-in-out infinite;transform-origin:center}
.bird-two img{animation-delay:-1.4s}
@keyframes cloud-one{from{transform:translate3d(-8%,-6%,0)}to{transform:translate3d(32%,8%,0)}}
@keyframes cloud-two{from{transform:translate3d(12%,12%,0)}to{transform:translate3d(-28%,-13%,0)}}
@keyframes bird-pass{0%{transform:translate3d(-3vw,0,0) rotate(-12deg);opacity:0}5%{opacity:.88}30%{transform:translate3d(33vw,-3vh,0) rotate(-4deg)}60%{transform:translate3d(69vw,1vh,0) rotate(5deg)}95%{opacity:.8}100%{transform:translate3d(122vw,-5vh,0) rotate(-8deg);opacity:0}}
@keyframes bird-glide{0%,100%{transform:scaleY(.96) rotate(-2deg)}38%{transform:scaleY(.65) rotate(3deg)}62%{transform:scaleY(1) rotate(-1deg)}}
@media(max-width:759px){.mist-one{width:150vw;left:-105%;top:-16%}.mist-two{width:140vw;left:68%;top:70%}.world-host[data-view=map] .mist{opacity:.23}.world-host[data-view=villa] .atmosphere{opacity:.4}.selected-villa-label{display:none}.world-moving .villa-pearl{translate:0 18px}.world-moving.world-arriving .villa-pearl{translate:0 0}.world-screen[data-view=villa]:before{background:linear-gradient(#0b211955,transparent 25%,transparent 53%,#0b2116bd)}.pearl-map-return{font-size:12px}}
@media(prefers-reduced-motion:reduce){.estate-focus,.villa-pearl{transition:none!important}}
.focus-pin{pointer-events:none!important;box-shadow:0 0 0 7px #f7f3da26,0 4px 18px #09251766}
@media(max-width:759px){.map-intro h1 em{margin-left:.18em}}

/* Final presentation: readable controls and reliable small-screen layouts. */
.view-world .menu-button,.menu-button{width:44px;height:44px;padding:10px 7px;align-content:center;gap:7px}
.menu-button span{max-width:100%}
.view-world .header-links{padding-top:0}
.world-screen{height:100svh;min-height:0}
.world-pin>span{max-width:200px}
.world-pin:focus-visible>span{display:none}
.pearl-nav a{min-height:44px;display:flex;align-items:center}
.world-pause,.world-tools button{min-width:44px;min-height:44px}
.scene-disclaimer{font-size:12px}
.geo-caption span{font-size:12px}
@media(max-width:759px){
 .view-world .brand-sub{font-size:12px;letter-spacing:.24em}
 .world-footer{left:16px;right:16px;gap:10px}
 .geo-caption{max-width:125px;font-size:12px}.geo-caption span{font-size:11px}
 .scene-disclaimer{font-size:10px;max-width:195px;gap:8px}
 .villa-pearl{padding:18px 20px;bottom:88px}
 .pearl-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;padding:14px 0}
 .pearl-facts div{gap:5px}.pearl-facts dt{font-size:12px}.pearl-facts dd{font-size:25px}.pearl-facts small{font-size:12px}
 .villa-overline .eyebrow{font-size:12px;letter-spacing:.07em}
 .villa-pearl h1{font-size:38px;margin:10px 0 12px}
 .pearl-phase{font-size:12px;flex-wrap:wrap;padding:12px 0}
 .pearl-link{font-size:14px;min-height:48px;padding:13px}
 .pearl-nav{margin-top:6px;font-size:14px}.pearl-map-return{font-size:13px}
 .map-dock{width:calc(100% - 32px);max-width:390px;padding:5px;justify-content:space-between;bottom:116px}
 .map-dock a{width:auto;flex:1;min-width:0;height:42px}
 .map-reference-note{bottom:91px;font-size:11px}
 .world-tools{bottom:186px}
}
@media(max-width:759px) and (max-height:740px){
 .villa-pearl{padding:12px 16px;bottom:82px}.pearl-facts{gap:9px 18px;padding:10px 0}
 .villa-pearl h1{font-size:32px;margin:8px 0}.pearl-facts dd{font-size:23px}
 .pearl-phase{padding:9px 0}.pearl-link{padding:10px}.pearl-nav{margin-top:1px}
}
@media(min-width:760px) and (max-height:700px){
 .map-intro{top:135px}.map-intro h1{font-size:38px;margin:16px 0}.map-intro p{font-size:14px;line-height:1.5}
 .map-instruction{margin-top:12px;padding-top:10px}.map-dock{bottom:98px}
 .villa-pearl{top:125px;bottom:85px;transform:none;overflow-y:auto;padding:18px 22px;overscroll-behavior:contain}
}
@media(max-height:540px){
 .view-world .site-header{height:82px;padding:13px 24px}.view-world .brand-symbol{display:none}
 .view-world .brand-name{font-size:23px}.view-world .brand-sub{font-size:11px}
 .entry-copy{top:49%;width:85%}.entry-copy .eyebrow{font-size:12px}
 .entry-copy h1{font-size:clamp(30px,6vw,46px);margin:12px 0;line-height:1.12}
 .entry-copy>p{font-size:15px;margin-bottom:16px}.explore-button{min-height:46px;padding:12px 20px}
 .entry-coordinate{display:none}.world-footer{bottom:12px}.geo-caption span{display:none}
 .map-intro{top:88px;left:24px;max-width:210px}.map-intro .eyebrow,.map-intro p,.map-instruction{display:none}
 .map-intro h1{font-size:28px;margin:8px 0}
 .map-dock{left:24px;bottom:80px;transform:none;width:225px;flex-wrap:wrap;justify-content:flex-start;padding:7px}
 .map-dock>span{display:none}.map-dock a{width:40px;flex:none;height:34px}
 .map-reference-note{left:24px;bottom:62px;transform:none;font-size:10px}
 .world-tools{right:18px;bottom:76px;gap:4px}.world-tools button{min-width:40px;min-height:40px}
 .world-back{top:83px;left:24px}
 .villa-pearl{top:84px;bottom:65px;left:auto;right:22px;width:min(330px,45vw);transform:none;padding:14px 18px;overflow:auto;overscroll-behavior:contain}
 .villa-pearl h1{font-size:34px;margin:8px 0}.villa-pearl .location{display:none}
 .pearl-facts{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 0;gap:10px}
 .pearl-facts dd{font-size:24px}.pearl-facts dt{font-size:12px}
 .pearl-phase{padding:10px 0;flex-wrap:wrap}.pearl-nav{margin-top:4px}
 .world-screen[data-view=villa] .world-footer{pointer-events:none}.world-footer a,.world-footer button{pointer-events:auto}
}

@media(min-width:760px) and (max-height:660px){.map-intro p{display:none}.map-instruction{margin-top:18px}}
@media(max-width:359px){.villa-pearl{bottom:100px}.geo-caption span{display:none}.geo-caption{min-width:95px}.scene-disclaimer{font-size:10px}.villa-overline .eyebrow{font-size:11px}}
.audio-status{position:fixed;top:95px;left:24px;z-index:60;padding:12px 16px;background:#f4f0e5;color:#263c2b;font-size:14px;max-width:calc(100vw - 48px)}
.audio-status:empty{display:none}.on-paper .sound-control{padding:8px}.on-paper .sound-control>span:last-child{display:none}

@media(max-height:540px){.map-dock{width:236px}}

/* Release the composited camera surface after travel for a sharper resting frame. */
.photo-stage{will-change:auto}.world-moving .photo-stage{will-change:transform}

@media(min-width:360px) and (max-width:759px){.geo-caption{width:145px;min-width:145px;max-width:145px}.scene-disclaimer{flex:1}}

/* An invitation suspended over the landscape, with a quiet compass-like orbit. */
.explore-button{position:relative;background:transparent;color:#fff9e7;display:inline-flex;gap:18px;padding:8px 22px 8px 6px;min-height:84px;text-align:left;text-shadow:0 2px 20px #081b15;font-size:13px;letter-spacing:.17em;text-transform:uppercase;border-radius:60px;isolation:isolate;transition:color .5s,transform .7s}
.explore-button:before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(100deg,#09281945,#09281920);backdrop-filter:blur(4px);border:1px solid #fff9e719;z-index:-1;transition:background .5s,border-color .5s}
.explore-button:after{content:'';position:absolute;height:1px;left:103px;right:24px;bottom:22px;transform:scaleX(0);transform-origin:left;background:#fff7d9a6;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.explore-button:hover{background:transparent;translate:none;color:#fffdf2;transform:translateY(-2px)}.explore-button:hover:before{border-color:#fff9e742;background:linear-gradient(100deg,#29493866,#09281933)}.explore-button:hover:after{transform:scaleX(1)}
.explore-orbit{width:70px;height:70px;flex:none;display:block}.explore-button .explore-orbit svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.1;overflow:visible}.orbit-track{opacity:.3}.orbit-arc{stroke-dasharray:61 153;transform-origin:40px 40px;animation:invitation-orbit 20s linear infinite}.explore-orbit path{transition:transform .6s}.explore-button:hover .explore-orbit path{transform:translateX(3px)}.explore-label{line-height:1.7}
@keyframes invitation-orbit{to{transform:rotate(360deg)}}
@media(max-width:759px){.explore-button{padding:4px 18px 4px 3px;gap:12px;min-height:72px;font-size:12px;letter-spacing:.12em;max-width:90%}.explore-orbit{width:62px;height:62px}.explore-button:after{left:78px;right:20px;bottom:18px}}
@media(max-height:540px){.explore-button{min-height:58px;padding-top:0;padding-bottom:0}.explore-orbit{width:54px;height:54px}}
@media(prefers-reduced-motion:reduce){.orbit-arc{animation:none}.explore-button,.explore-button:after,.explore-orbit path{transition:none}}

/* The photograph supplies the water texture; the inset mask keeps banks still.
   Static refraction avoids animating noise across the full scene. */
.river-motion{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
.river-texture{opacity:.88}
.water-surface{animation:water-current 4.8s linear infinite;will-change:transform,opacity}.water-surface-one{animation-delay:-1.2s}.water-surface-two{animation-delay:-3.6s}
.river-glints use,.river-fine-glints use,.river-ripple-shadows use{animation:river-drift var(--duration,15s) linear infinite;animation-delay:var(--phase,-3s);opacity:var(--alpha,.36)}
.river-glints use{stroke:#e2e3bd;stroke-width:1.25;stroke-dasharray:5 21 2 38 8 29 3 41;--drift:-147}
.river-fine-glints use{stroke:#f4edcb;stroke-width:.7;stroke-dasharray:1.4 13 3.6 34 1 23;--drift:-76;--duration:12s;--alpha:.25}
.river-ripple-shadows use{stroke:#183f36;stroke-width:2.8;stroke-dasharray:7 25 3 44 12 36;--drift:-127;--duration:16s;--alpha:.17}
@keyframes water-current{0%{transform:translate(-4px,-1.4px);opacity:0}24%{opacity:.93}76%{opacity:.93}100%{transform:translate(4px,1.4px);opacity:0}}
@keyframes river-drift{to{stroke-dashoffset:var(--drift)}}
.motion-paused .river-motion *{animation-play-state:paused!important}
.bird-facing-reverse{display:block;transform:scaleX(-1)}
.bird-three,.bird-four{left:auto;right:-8%;animation-name:bird-pass-reverse;animation-timing-function:linear}
.bird-three{top:58%;width:24px;animation-duration:47s;animation-delay:-17s}
.bird-four{top:64%;width:19px;right:-11%;animation-duration:51s;animation-delay:-16.2s}.bird-four img{animation-delay:-1.6s}
@keyframes bird-pass-reverse{0%{transform:translate3d(3vw,0,0) rotate(8deg);opacity:0}7%{opacity:.73}30%{transform:translate3d(-34vw,3vh,0) rotate(2deg)}60%{transform:translate3d(-71vw,-1vh,0) rotate(-5deg)}93%{opacity:.67}100%{transform:translate3d(-122vw,4vh,0) rotate(6deg);opacity:0}}
@media(max-width:759px){.bird-three{width:20px}.bird-four{width:16px}}
@media(prefers-reduced-motion:reduce){.river-motion{display:none}}
