@font-face{font-family:Jakarta;src:url(assets/jakarta.woff2)}
:root{font-family:Jakarta,Arial,sans-serif;color:#172b36;--ink:#164056;--line:#dfe4e6;--glass:#fffffff0}*{box-sizing:border-box}body{margin:0;background:#eef3f3;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #42c6ec;outline-offset:3px}button{border:1px solid #ddd;background:#fff}a{color:var(--ink)}[hidden]{display:none!important}#app{position:relative;height:100dvh;min-height:500px;overflow:hidden}#scene,#visual{position:absolute;inset:0}#scene{overflow:hidden}#visual{transition:transform .35s;transform-origin:center}#backdrop{width:100%;height:100%;object-fit:cover;display:block}body.intro #backdrop{filter:blur(13px);transform:scale(1.04)}.toolbar{position:absolute;z-index:20;top:16px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}.toolbar>*{pointer-events:auto}.left,.right{display:flex;gap:16px;align-items:center}.pill,.circle{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;min-height:40px;box-shadow:inset 0 0 0 2px #ffffff1f,0 2px 4px #00000017}.pill{gap:8px;padding:8px 16px;font-weight:650}.circle{width:40px;height:40px;font-size:24px;flex-shrink:0}.dark{background:#164056ed;color:#fff;border:1px solid #7c9fac88}.black{background:#000;color:#fff;border:1px solid #555}.white{background:#ffffffef;color:#111}.icon{font-size:21px;line-height:1}.toggle{background:#17405555;border:1px solid #ffffff50;font-size:12px;padding:3px;min-height:46px;gap:0}.toggle span{padding:10px 12px;border-radius:30px;color:#ffffff9e}.toggle .active{background:#fff;color:#161b20}#search{position:absolute;left:50%;transform:translateX(-50%)}#proaco{position:absolute;left:28px;top:94px;z-index:5;width:96px;max-height:30px;object-fit:contain}#intro{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:90px;padding:60px 20px 10px;background:#18384c1a}#intro>img{width:400px;max-width:70vw;max-height:340px;object-fit:contain}.enter{background:#fff;border:2px solid #ddd;border-radius:40px;padding:15px 30px;width:240px;font-size:17px;box-shadow:0 6px 30px #0002;color:#171717}#rail{position:absolute;z-index:10;top:80px;right:8px;background:#ffffffd9;backdrop-filter:blur(12px);border-radius:18px;padding:8px;display:flex;flex-direction:column;gap:5px;max-height:calc(100% - 210px);overflow:auto;scrollbar-width:thin;width:116px;box-shadow:0 4px 12px #0001}#rail:empty{display:none}#rail button{border-radius:14px;min-height:40px;padding:7px;font-size:12px;background:#f6f6f6;box-shadow:0 1px 3px #0001}#rail .active{background:var(--ink);color:#fff}#rail.floor{width:100px}.previous,.next{position:absolute;z-index:8;top:50%;transform:translateY(-50%);font-size:30px}.previous{left:16px}.next{right:16px}#zoom{position:absolute;z-index:10;bottom:60px;left:16px;display:grid;gap:8px}#whatsapp{position:absolute;z-index:10;bottom:16px;right:16px}#caption{position:absolute;top:145px;left:16px;z-index:5;background:#164056c9;color:white;padding:4px 8px;font-size:12px}#caption:empty{display:none}.study{position:absolute;z-index:12;bottom:14px;left:50%;transform:translateX(-50%);background:#ffffffed;border:1px solid #ffffff9e;border-radius:30px;box-shadow:0 2px 10px #0001;padding:7px 12px;display:flex;gap:12px;align-items:center;white-space:nowrap;font-size:10px}.study span{color:#60717b}.study button{font-size:11px;padding:0;border:none;background:transparent;color:var(--ink);font-weight:650}.pin{position:absolute;transform:translate(-50%,-50%);background:#fff;border:none;padding:7px 10px;border-radius:7px;white-space:nowrap;box-shadow:0 2px 7px #0003;font-size:13px;color:#171717}.pin:before{content:'';display:inline-block;width:13px;height:13px;border-radius:50%;background:var(--ink);margin-right:5px;vertical-align:-1px}.pin.available:before{background:#00c665}.pin.sold:before{background:#ff3851}.pin:hover{transform:translate(-50%,-50%) scale(1.08)}#hotspots{position:absolute;inset:0;pointer-events:none}#hotspots button{pointer-events:auto}.glass{background:var(--glass);backdrop-filter:blur(14px);box-shadow:0 10px 45px #0002;border:1px solid #ffffffc0;border-radius:18px}#veil{position:fixed;inset:0;background:#0005;backdrop-filter:blur(5px);z-index:30}#drawer{position:fixed;left:0;top:0;bottom:0;z-index:40;width:330px;max-width:92vw;background:#fff;padding:26px 23px;overflow:auto;box-shadow:10px 0 30px #0002}#drawer h2{font-size:22px;margin:38px 0 5px}#drawer .address{font-size:12px;color:#7e8a90;line-height:1.7}#drawer nav{display:grid;gap:3px;margin-top:24px}#drawer nav button{border:0;background:transparent;text-align:left;padding:12px;border-radius:10px;font-size:14px}#drawer nav button:hover{background:#edf3f5}#drawer nav .active{background:#eaf1f3;font-weight:700}#drawer .contacts{display:grid;gap:12px;border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:12px}#drawer .contacts a{text-decoration:none}.muted{color:#6b7c85;font-size:12px;line-height:1.7}.close{position:absolute;right:16px;top:14px;font-size:24px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f8fafb}.drawerbrand{font-size:13px;letter-spacing:4px;color:var(--ink);font-weight:700}.sectionHead{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--line)}.sectionHead h2{font-size:16px;margin:0;font-weight:600}#searchpanel{position:fixed;top:64px;left:24px;right:24px;z-index:35;max-height:calc(100dvh - 100px);overflow:hidden;display:flex;flex-direction:column}#searchpanel .close{position:static}.filters{padding:12px;max-height:40vh;overflow:auto}.searchrow{display:flex;gap:8px}.searchrow input{flex:1;min-width:80px}.searchrow input,.searchrow select,.searchrow button{border:1px solid var(--line);border-radius:30px;background:#fff;padding:10px 13px}.searchrow select{max-width:240px}.chips{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:10px}.chips .label{width:100%;font-size:12px}.chip{border-radius:100px;width:40px;height:40px;box-shadow:0 2px 4px #0001}.chip.active{background:var(--ink);color:#fff}.morefilters{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:12px 0}.morefilters label{font-size:12px;display:grid;gap:5px}.morefilters input,.morefilters select{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px}.resultbar{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 14px;background:#fff;font-size:12px}.viewtools{display:flex;align-items:center;gap:8px}.viewtools button{border-radius:16px;padding:4px 10px}.resultlist{overflow:auto;padding:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-height:50vh}.unitcard{text-align:left;border:1px solid #e3e8eb;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 1px 3px #0001;position:relative;cursor:pointer}.unitcard img{width:100%;height:128px;object-fit:contain;background:#eee}.unitcard .text{padding:12px}.unitcard .topline{display:flex;justify-content:space-between;gap:4px;align-items:center}.unitcard h3{font-size:16px;margin:0}.badge{background:#24ac58;border-radius:30px;color:#fff;font-size:10px;padding:5px 10px;white-space:nowrap}.price{font-size:19px;font-weight:650;margin:10px 0}.unitcard p{margin:5px 0;font-size:12px;color:#647680}.unitcard input{position:absolute;top:8px;left:8px;width:18px;height:18px}.resultlist.list{display:flex;flex-direction:column}.resultlist.list .unitcard{display:flex;min-height:112px}.resultlist.list img{width:120px;height:110px}.resultlist.list .text{flex:1}.comparebar{background:#fff;padding:10px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:12px}.primary{background:var(--ink);color:#fff;border:1px solid #517581;border-radius:30px;padding:12px 20px;box-shadow:inset 0 0 0 2px #ffffff16;font-weight:600}.secondary{background:#f8fafb;border:1px solid #d8dfe3;border-radius:30px;padding:11px 16px;color:var(--ink)}#detail{position:absolute;z-index:15;top:80px;left:10px;width:325px;max-height:calc(100% - 140px);overflow:auto;border-radius:17px}#detail:not(:empty){background:#fff;box-shadow:0 8px 30px #0004;border:3px solid #fff}#detail .unitphoto{width:100%;height:175px;object-fit:contain;background:#eee}#detail .body{padding:16px}#detail h2{font-size:20px;margin:2px 0}.facts{margin:14px 0}.facts>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e5e5e5;padding:10px 0;font-size:12px}.actionrow{display:flex;gap:8px}.actionrow>*{flex:1}dialog{padding:0;border:1px solid #fff;border-radius:20px;max-width:min(1060px,94vw);max-height:90dvh;box-shadow:0 10px 100px #0006;color:#1c313c}dialog::backdrop{background:#0c253a66;backdrop-filter:blur(7px)}.modalbody{padding:30px;overflow:auto;max-height:83dvh}.modalbody h2{font-size:23px}.modalbody .close{position:sticky;float:right;top:0;right:0;z-index:3}.modalbody>h2:first-of-type{padding-right:40px}.qr{width:240px;display:block;margin:20px auto}.ficha{display:grid;grid-template-columns:1.3fr 1fr;gap:30px}.ficha>img{width:100%;max-height:65vh;object-fit:contain}.ficha h3{font-size:14px;margin-top:24px}.empty{grid-column:1/-1;padding:40px;text-align:center}.contentpage{position:absolute;z-index:6;inset:80px 24px 60px;overflow:auto;background:#fffffff5;border-radius:18px;padding:32px}#content:empty{display:none}.contentpage h1{font-size:28px;margin:8px 0}.contentpage h2{font-size:20px}.workgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.workgrid button{padding:0;border-radius:12px;overflow:hidden;text-align:left;background:#fff}.workgrid img{width:100%;height:200px;object-fit:cover;display:block}.workgrid span{padding:10px;display:block}.contactlayout{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:1000px;margin:auto}.contactlayout .cover{width:100%;height:350px;object-fit:cover;border-radius:12px}.contactlinks{display:flex;gap:15px;flex-wrap:wrap;margin:20px 0}form{display:grid;gap:10px}form label{display:grid;gap:6px;font-size:12px}form input,form textarea,form select{border:1px solid #d4dfe3;padding:12px;border-radius:9px;width:100%;background:white}form textarea{min-height:100px}form .check{display:flex;align-items:center}form .check input{width:auto}.report{max-width:900px;margin:auto;line-height:1.85}.report h1{font-size:36px;line-height:1.15}.report h2{font-size:21px;margin:36px 0 10px}.report h3{font-size:15px;margin-bottom:5px}.report table,.comparetable{width:100%;border-collapse:collapse;font-size:12px}.report th,.report td,.comparetable td,.comparetable th{text-align:left;border-bottom:1px solid #dce4e7;padding:12px 8px;vertical-align:top}.report .eyebrow{font-size:11px;letter-spacing:2px;color:#6b7c85}.notice{background:#edf4f6;border-left:3px solid var(--ink);padding:12px 16px;border-radius:0 8px 8px 0;font-size:12px;line-height:1.8}.report details{border-bottom:1px solid var(--line);padding:12px 0}.report summary{cursor:pointer;font-weight:600}.report ul{padding-left:22px}.report .links{display:flex;gap:12px;flex-wrap:wrap}#liveview{position:fixed;inset:0;z-index:60;background:#fff;display:flex;flex-direction:column}#liveview header{padding:8px 12px;display:flex;gap:20px;align-items:center;font-size:12px;min-height:58px;border-bottom:1px solid var(--line)}#liveview iframe{border:0;width:100%;flex:1}#toast{position:fixed;z-index:99;bottom:30px;left:50%;transform:translateX(-50%);background:#153f55;color:white;border-radius:20px;padding:12px 20px;max-width:85vw;font-size:13px}.maplayout{display:grid;grid-template-columns:300px 1fr;height:100%;gap:24px}.maplayout iframe{width:100%;height:100%;border:0;border-radius:12px}.poi{display:block;width:100%;border:0;border-bottom:1px solid var(--line);padding:12px;background:transparent;text-align:left}.gallery-note{position:absolute;z-index:8;top:145px;left:16px;background:#fffffff0;border-radius:8px;padding:7px 10px;font-size:11px}#caption:not(:empty)+.gallery-note{top:180px}
@media(max-width:760px){.toolbar{left:10px;right:10px;top:10px;gap:5px}.left,.right{gap:7px}.circle{width:36px;height:36px;font-size:21px}.pill{min-height:36px;padding:7px 12px;font-size:12px}#search{top:46px}#toggle{font-size:10px;padding:2px}.toggle span{padding:9px}#proaco{top:103px;left:17px;width:80px}#rail{top:100px;width:91px;max-height:calc(100% - 210px)}#rail.floor{width:74px}.study{bottom:14px;gap:10px;max-width:calc(100% - 110px);padding:8px 10px;flex-wrap:wrap;justify-content:center;white-space:normal;border-radius:15px}.study span{display:none}.study button{font-size:9px}#intro{gap:60px}#intro>img{width:320px}#searchpanel{left:8px;right:8px;top:97px;max-height:calc(100dvh - 112px)}.searchrow{flex-wrap:wrap}.searchrow input{flex-basis:100%}.searchrow select{flex:1;font-size:11px}.resultlist{grid-template-columns:repeat(2,1fr);padding:8px;gap:8px;max-height:45vh}.unitcard img{height:85px}.unitcard .text{padding:10px}.unitcard h3{font-size:14px}.unitcard .price{font-size:15px}.badge{font-size:8px;padding:4px 6px}.morefilters{grid-template-columns:repeat(2,1fr)}.resultbar{font-size:10px;padding:7px}.viewtools{gap:4px}.viewtools button{padding:4px 7px;font-size:10px}#detail{width:270px;top:99px;max-height:calc(100% - 165px)}#detail .unitphoto{height:130px}#detail .body{padding:12px}.ficha{grid-template-columns:1fr}.ficha>img{max-height:35vh}.modalbody{padding:22px}.workgrid{grid-template-columns:repeat(2,1fr)}.workgrid img{height:125px}.contactlayout{grid-template-columns:1fr}.contactlayout .cover{height:170px}.contentpage{inset:98px 8px 70px;padding:20px}.maplayout{grid-template-columns:1fr;height:auto}.maplayout iframe{height:400px}.report h1{font-size:28px}.report table{font-size:10px}.report td,.report th{padding:8px 5px}#liveview strong{display:none}#liveview header{gap:10px;justify-content:space-between}.previous{left:10px}.next{right:10px}.pin{font-size:11px;padding:5px 7px}#caption{top:142px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
#scene{background:white}.unitcard:has(input) .text{padding-top:34px}
