.page-home .site-header{position:absolute;top:0;left:0;width:100%;z-index:30;background:transparent;border-bottom:1px solid #252b2a25;color:#26302e;height:96px}.page-home .brand,.page-home .site-header nav a,.page-home .header-cta{color:inherit}.page-home .header-cta{border-color:#26302e55}.villa-tour{height:850svh;position:relative;background:#dce2df}.villa-stage{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;background:#dce2df;color:white}.villa-stage canvas{width:100%;height:100%;display:block}#villa-canvas{position:absolute;inset:0}.villa-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(18,29,26,.83),rgba(18,29,26,.35) 16%,transparent 42%)}.villa-topline{position:absolute;left:4.5%;right:4.5%;top:124px;display:flex;justify-content:space-between;font-size:11px;font-weight:600;letter-spacing:.2em;color:#35463e;pointer-events:none}.villa-intro{position:absolute;left:5%;top:23%;max-width:460px;color:#243c34;transition:opacity .3s,transform .3s;pointer-events:none}.villa-intro p{font-size:10px;letter-spacing:.2em;margin-bottom:16px}.villa-intro h1{font-size:clamp(42px,4.8vw,74px);line-height:1.08;font-weight:400;margin:0;letter-spacing:-.055em;text-shadow:0 2px 25px #e9eddf66}.villa-intro h1 em{font-weight:400}.villa-intro button{pointer-events:auto;border:0;border-bottom:1px solid #344a3d80;padding:16px 0;margin-top:26px;background:transparent;color:#263e33;display:flex;gap:65px;align-items:center;font:500 14px inherit;cursor:pointer}.villa-intro button span{font-size:22px}.room-caption{position:absolute;left:5%;bottom:145px;pointer-events:none;max-width:530px}.room-caption>span{font-size:11px;letter-spacing:.2em;color:#dfd7bd}.room-caption h2{font-size:clamp(32px,3.7vw,54px);line-height:1.1;font-weight:400;letter-spacing:-.025em;margin:12px 0}.room-caption p{font-size:14px;margin:0;color:#f2eee4;line-height:1.6}.tour-actions{position:absolute;right:5%;top:125px;display:flex;gap:12px;opacity:0;pointer-events:none;transition:opacity .3s}.is-inside .tour-actions{opacity:1;pointer-events:auto}.tour-actions a{padding:11px 15px;background:#fcfaf2e8;color:#253a30;backdrop-filter:blur(12px);font-size:13px;border:1px solid #ffffff70}.villa-map{position:absolute;right:5%;bottom:155px;width:112px;color:#fff9e7}.villa-map>span{font-size:9px;letter-spacing:.18em}.villa-map svg{width:105px;height:142px;display:block;margin:13px 0 9px}.villa-map path{fill:#2c37292b;stroke:#fffee6b0;stroke-width:1}.villa-map text{fill:#fffee6a0;font:5px sans-serif;text-anchor:middle;letter-spacing:.4px}.villa-map circle{fill:#e8c489;stroke:#fff;stroke-width:1.5;filter:drop-shadow(0 0 3px #e8c489)}.villa-map small{display:block;font-size:9px;line-height:1.5;opacity:.7}.villa-controls{position:absolute;bottom:18px;left:5%;right:5%}.tour-progress{height:1px;background:#ffffff45;margin-bottom:20px}.tour-progress span{display:block;height:2px;width:100%;transform:scaleX(0);transform-origin:left;background:#e4c797}.villa-rooms{display:flex;justify-content:space-between;gap:10px}.villa-rooms button{border:0;background:none;color:#eee9df95;padding:7px 0;display:flex;gap:10px;align-items:center;font-size:10px;cursor:pointer;white-space:nowrap}.villa-rooms button span{font-size:13px}.villa-rooms button[aria-pressed=true]{color:#fff}.villa-rooms button[aria-pressed=true] span{border-bottom:1px solid #e4c797;padding-bottom:4px}.tour-secondary{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.tour-secondary span{font-size:9px;letter-spacing:.16em;color:#eee9dfb0}.tour-secondary a{font-size:12px;color:#eee9df}.villa-loader{position:absolute;z-index:20;inset:0;background:#eef0e7;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;color:#30443a;transition:opacity .6s,visibility .6s}.villa-loader.loaded{opacity:0;visibility:hidden;pointer-events:none}.loader-mark{font-size:46px;letter-spacing:-.08em}.villa-loader>span:nth-child(2){font-size:12px;letter-spacing:.08em}.villa-loader i{height:1px;width:100px;background:#b2b8a6;position:relative;overflow:hidden}.villa-loader i:after{content:'';position:absolute;left:-30%;width:30%;height:1px;background:#30443a;animation:load 1.2s infinite}@keyframes load{to{left:110%}}.villa-nojs{position:absolute;z-index:22;inset:35% 10%;background:#fff;padding:40px;color:#26392f}.villa-tour.tour-static{height:100svh}.tour-static .villa-stage{position:relative}.villa-tour.tour-error{height:100svh}.tour-error .villa-loader{background:#eef0e7}.tour-error .villa-loader i{display:none}.tour-error .villa-loader a{color:#253a30;text-decoration:underline}.villa-rooms button:focus-visible,.villa-stage a:focus-visible,.villa-stage button:focus-visible{outline:2px solid #d9b775;outline-offset:5px}
@media(max-width:800px){.page-home .site-header{height:80px}.page-home .menu-toggle{color:#263e33}.page-home .site-header nav{background:#f8f8f0}.villa-tour{height:780svh}.villa-stage{min-height:600px}.villa-topline{top:105px;font-size:9px;left:6%;right:6%}.villa-topline span:last-child{display:none}.villa-intro{left:6%;top:20%;max-width:310px}.villa-intro h1{font-size:45px}.villa-intro p{font-size:9px}.villa-intro button{margin-top:16px;padding:10px 0}.room-caption{left:6%;bottom:159px;max-width:74%}.room-caption h2{font-size:33px}.room-caption p{font-size:12px;max-width:260px}.room-caption>span{font-size:10px}.villa-map{right:5%;bottom:176px;width:60px}.villa-map>span,.villa-map small{display:none}.villa-map svg{width:60px;height:85px}.villa-controls{left:6%;right:6%;bottom:22px}.villa-rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:5px 10px}.villa-rooms button{gap:5px;font-size:9px}.villa-rooms button span{font-size:11px}.tour-progress{margin-bottom:12px}.tour-secondary{margin-top:10px}.tour-actions{top:100px;right:6%;gap:6px}.tour-actions a{padding:9px;font-size:11px}.is-inside .villa-topline{display:none}}
@media(prefers-reduced-motion:reduce){.villa-loader,.villa-intro,.tour-actions{transition:none}.villa-loader i:after{animation:none}}

.is-inside .villa-topline span:last-child{visibility:hidden}.villa-map{filter:drop-shadow(0 1px 5px #16251d70)}

/* Single static exterior hero, followed by normal page scrolling. */
.villa-tour{height:auto}.villa-stage{position:relative}.room-caption{bottom:45px}.hero-explore{pointer-events:auto;border-bottom:1px solid #344a3d80;padding:16px 0;margin-top:26px;color:#263e33;display:inline-flex;gap:65px;align-items:center;font-size:14px}.hero-explore span{font-size:22px}@media(max-width:800px){.villa-tour{height:auto}.room-caption{bottom:30px;max-width:88%}.hero-explore{margin-top:16px;padding:10px 0}}
