@charset "UTF-8";
:root{--forest:#1a2b25;--anthracite:#232629;--anthracite-2:#303438;--deep:#15191b;--cream:#f4f3ee;--paper:#fff;--gold:#c6a15b;--gold-dark:#80642e;--gold-wash:#f1eadc;--ink:#272b2d;--muted:#68706c;--line:#d6d9d2;--sans:'Segoe UI Variable Text','Segoe UI',system-ui,Arial,sans-serif}
body{font-family:var(--sans);line-height:1.68}p{line-height:1.68}h1,h2,h3{letter-spacing:-.035em}h2{font-size:clamp(2.35rem,3.6vw,4.25rem)}.hero h1{font-size:clamp(3.5rem,6vw,6.75rem)}.eyebrow{color:var(--gold-dark);margin-bottom:20px}.section{padding-top:clamp(72px,7vw,92px);padding-bottom:clamp(72px,7vw,92px)}
.header{transition:background .25s,padding .25s,box-shadow .25s}.header.scrolled{position:fixed;background:rgba(29,32,34,.94);padding-top:16px;padding-bottom:16px;box-shadow:0 10px 30px #0003;backdrop-filter:blur(12px);border-bottom-color:#c6a15b44}.header.scrolled .brand small{display:none}.header.scrolled .brand>span{color:var(--gold)}
.hero{background:var(--anthracite)}.hero .eyebrow,.tour .eyebrow,.contact-section .eyebrow,footer .eyebrow{color:#d5bd8c}.hero h1 em{color:#e5d2a9}.button.dark{background:var(--anthracite);box-shadow:inset 0 2px 0 var(--gold)}.button.dark:hover{background:var(--anthracite-2)}.button.light{box-shadow:inset 0 2px 0 var(--gold)}
.intro{padding-bottom:clamp(62px,6vw,76px)}.intro h2{font-size:clamp(2.35rem,3.5vw,4rem)}.experience-image{height:clamp(410px,42vw,520px)}.feature-list span:before{color:var(--gold-dark)}
.tour{background:var(--anthracite);padding-top:clamp(68px,6vw,82px)}.tour-stage{height:clamp(470px,52vw,610px);background:#171a1b}.tour-controls button{background:#232629aa}.tour-controls button:hover{background:var(--gold-wash);color:var(--anthracite)}.scene-tabs{scrollbar-width:none;scroll-snap-type:x proximity}.scene-tabs::-webkit-scrollbar{display:none}.scene-tabs button{scroll-snap-align:start}.scene-tabs button.active{border-color:var(--gold)}
.filters button.active{background:var(--anthracite);border-color:var(--anthracite);box-shadow:inset 0 2px 0 var(--gold)}.villa-detail{border-top-color:var(--gold);box-shadow:0 18px 45px #2224}.villa-chip.active{border-color:var(--gold-dark);background:var(--gold-wash)}.hotspot{background:var(--anthracite)}.hotspot.active{background:var(--gold-wash);color:var(--anthracite);border-color:var(--gold);box-shadow:0 0 0 3px #232629cc,0 3px 12px #0006}.map-legend .subtle{white-space:nowrap;flex:none}
.unit-1{left:43.5%;top:63%}.unit-2{left:54.2%;top:66.5%}.unit-3{left:64.5%;top:67%}.unit-4{left:74.7%;top:67%}.unit-5{left:85.4%;top:69%}.unit-6{left:85.6%;top:42.2%}.unit-7{left:74.7%;top:39.1%}.unit-8{left:64.5%;top:37.4%}.unit-9{left:54.4%;top:34.9%}.unit-10{left:43.3%;top:32.5%}.unit-11{left:24.5%;top:24.3%}.unit-12{left:31.1%;top:24.3%}.unit-13{left:24.2%;top:45.5%}.unit-14{left:30.9%;top:45.5%}.unit-15{left:24%;top:70.4%}.unit-16{left:31.1%;top:70.4%}
.interior{padding-top:0}.interior>img{height:clamp(400px,40vw,500px)}.location{background:#e7e9e4}.location-card{background:var(--anthracite);min-height:430px}.location-card h3 em{color:var(--gold)}.details{background:#faf9f5}.contact-section{height:clamp(500px,43vw,550px)}.contact-shade{background:linear-gradient(90deg,#202326d9,#16211db8)}footer{background:var(--deep)}dialog::backdrop{background:#17191bd9}.image-dialog{background:var(--anthracite)}#toast{background:var(--anthracite);box-shadow:inset 0 2px 0 var(--gold),0 8px 28px #0005}
.hotspot:after{content:'';position:absolute;inset:-5px;border-radius:50%}
@media(max-width:920px){.selector-layout{grid-template-columns:1fr}.villa-detail{min-height:0}.villa-detail .button{max-width:380px}.details{grid-template-columns:1fr;gap:32px}}
@media(max-width:800px){.section{padding-top:58px;padding-bottom:58px}.intro{padding-bottom:55px}.tour{padding-top:58px}.tour-top>p br,.section-head>p br{display:block}.tour-stage{height:clamp(420px,115vw,520px)}.scene-tabs{margin-right:-6vw;padding-right:20vw}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.stats strong{font-size:clamp(1.8rem,6vw,2.35rem)}.mobile-cta{padding-bottom:calc(10px + env(safe-area-inset-bottom))}footer{padding-bottom:calc(95px + env(safe-area-inset-bottom))}.header.scrolled{padding-top:13px;padding-bottom:13px}}
@media(max-width:420px){.section{padding-top:52px;padding-bottom:52px}.hotspot{width:30px;height:30px}.hotspot:after{inset:-7px}.filters button,.villa-chip{min-height:42px}.stats{grid-template-columns:1fr 1fr}.stats>div:last-child{grid-column:1/-1}.experience-image{height:340px}.map-legend{align-items:flex-start}.location-card{min-height:370px}.contact-section{height:500px}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
.villa-detail .plan-link{display:flex;margin:14px 0 10px;background:var(--gold-wash);color:var(--anthracite);border:1px solid var(--gold);text-decoration:none;justify-content:space-between}.villa-detail .plan-link:hover{background:#e8ddc8}
