/* Quiet, consistent property tools across the masterplan and floor explorer. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header{gap:18px;padding-inline:25px}.nav{gap:25px}.header-tools{display:flex;align-items:center;gap:8px}
.collection-trigger{display:flex;align-items:center;gap:7px;border:1px solid #79938a66;border-radius:8px;min-height:44px;padding:8px 11px;background:#103337;color:#eef4e9;font-size:14px;white-space:nowrap}
.collection-trigger:hover{border-color:#e0d2aa;background:#19483f}.collection-trigger svg{width:19px;height:19px}.collection-trigger strong{font-size:12px;min-width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#d7c69e;color:#15372e;font-variant-numeric:tabular-nums}
.header-action{padding:10px;gap:0}.header-action>span{display:none}
.map-image-status{display:block}
.property-actions{display:flex;gap:7px;flex-wrap:wrap;padding:0;margin-top:15px;color:#234f40}
.property-action{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 12px;font-size:14px;border:1px solid #bbcebf;border-radius:7px;background:#f7f9f4;color:#23513f;transition:background 180ms,border-color 180ms}
.property-action svg{width:18px;height:18px;flex-shrink:0}.property-action:hover{background:#e4eddf;border-color:#7b9d83}.property-action[aria-pressed=true]{background:#dcebdc;border-color:#568365;color:#164d32}.property-action[aria-pressed=true][data-property-action=save] svg{fill:#45795a;stroke:#45795a}
.detail-title>.property-actions{margin-top:19px}.property-actions.compact{margin:0;border-top:1px solid #7796853d;padding:9px 12px;gap:6px;flex-wrap:nowrap}
.property-actions.compact .property-action{flex:1;padding:8px 4px;font-size:13px;gap:5px;background:transparent;border-color:transparent;color:inherit}.property-actions.compact .property-action:hover,.property-actions.compact .property-action[aria-pressed=true]{background:#93b19726;border-color:#8eac9459}
.property-facts{margin:20px 0}.property-facts>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #d8e2d5;padding:12px 0;font-size:14px;line-height:1.5}.property-facts dt{color:#607565}.property-facts dd{margin:0;text-align:right;color:#244a37;font-weight:500}
.property-card-facts{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:0 18px 14px;font-size:13px;line-height:1.45;color:#b5c9b9}.property-card-facts span:last-child{color:#e0d2b1}
.villa-card,.apartment-card{display:flex;flex-direction:column}.villa-card-open,.apartment-card-main{display:block;background:transparent;color:inherit;width:100%;padding:0;text-align:left}.villa-card .card-content{padding-bottom:13px}.villa-card .property-actions{margin-top:auto}.villa-card .property-action{color:#dfeadd}
.apartment-card .property-actions{padding-inline:12px;margin-top:auto;color:#2c5b43}.apartment-card .property-card-facts{color:#4a6d55}.apartment-card .property-card-facts span:last-child{color:#4a6d55}
.enquiry-caption{font-size:12px;line-height:1.5;text-align:center;color:#62785f;margin-top:9px}.whatsapp-enquiry{background:#17563f;color:white!important}.whatsapp-enquiry:hover{background:#21694d}
.apt-info-column>.property-actions{margin-bottom:22px}
.collection-dialog,.share-dialog{background:#f7f8f3;color:#173b2e;padding:0;border:1px solid #b2c5b1;border-radius:16px;box-shadow:0 30px 100px #00191c70}
.collection-dialog{width:min(1120px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);overflow:hidden}
.collection-dialog[open]{display:flex;flex-direction:column}.collection-dialog::backdrop,.share-dialog::backdrop{background:#041e21b8;backdrop-filter:blur(8px)}
.collection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:27px 30px 22px;flex-shrink:0}.collection-heading .eyebrow,.share-dialog .eyebrow{color:#6d7957;font-size:12px;letter-spacing:1.6px}.collection-heading h2,.share-dialog h2{font:normal 37px/1.12 Georgia,serif;margin:9px 0 10px;letter-spacing:-.7px}.collection-heading p{font-size:14px;line-height:1.5;color:#64785e}
.collection-close{width:44px;height:44px;min-width:44px;border:1px solid #bdcdb6;background:#eef3e8;border-radius:50%;color:#36583f;font-size:28px;line-height:1;display:grid;place-items:center}.collection-close:hover{background:#dce7d4}
.collection-tabs{display:flex;gap:5px;padding:0 30px 17px;flex-shrink:0;border-bottom:1px solid #d5dfcc}.collection-tabs button{min-height:44px;padding:10px 19px;border:1px solid transparent;border-radius:7px;background:transparent;color:#647860;font-size:14px}.collection-tabs button[aria-pressed=true]{background:#e3ebdb;border-color:#bdcdb1;color:#254b32}
#collectionContent{overflow:auto;overscroll-behavior:contain;padding:24px 30px 30px;min-height:0}
.saved-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.saved-card{border:1px solid #d3dfcb;border-radius:10px;overflow:hidden;background:#fff;min-width:0}.saved-card-open{display:block;width:100%;text-align:left;background:transparent;color:#1c4532;padding:0}.saved-card-open>img,.saved-card-open>.property-artwork{display:block;width:100%;height:180px;object-fit:cover;background:#e9eee2;padding:0}.saved-card-open>.property-artwork{padding:10px;object-fit:contain}.saved-card-open>span{display:block;padding:17px}.saved-card-open small{display:block;font-size:12px;color:#6b7d61;margin-bottom:7px}.saved-card-open strong{display:block;font:normal 26px Georgia,serif}.saved-card .property-actions{padding:0 12px 14px;gap:6px;margin:0}.saved-card .property-action{flex:1;font-size:13px;padding:8px 5px;gap:5px}.saved-card .property-card-facts{color:#4b7055}.saved-card .property-card-facts span:last-child{color:#667a53}
.collection-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;border-top:1px solid #d5dfcd;margin-top:25px;padding-top:20px}.collection-footer .primary-button{width:auto;margin:0}.collection-footer .secondary-button{color:#3f6046;background:#f7f9f2}
.collection-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:40px 20px 50px}.collection-empty>svg{width:44px;height:44px;fill:none;stroke:#6d8a59;stroke-width:1.1}.collection-empty h3{font:normal 29px Georgia,serif;margin:23px 0 13px}.collection-empty p{font-size:16px;line-height:1.6;color:#65785f}.collection-empty .primary-button{width:auto;padding-inline:25px;margin-top:26px}
.comparison-scroll{overflow-x:auto;border:1px solid #d5dfcd;border-radius:9px;background:#fff;scrollbar-width:thin}.comparison-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.comparison-table th,.comparison-table td{padding:14px 17px;border-right:1px solid #dce5d6;border-bottom:1px solid #dce5d6;text-align:left;font-size:14px;line-height:1.5;vertical-align:top;word-wrap:break-word}.comparison-table th:last-child,.comparison-table td:last-child{border-right:0}.comparison-table tr:last-child>*{border-bottom:0}.comparison-table th:first-child{width:135px;background:#eef3e8;color:#5b7053;font-weight:500}.comparison-table thead th{position:relative;padding:38px 15px 18px;background:#fff}.comparison-table tbody th{position:sticky;left:0;z-index:1}.comparison-table td{color:#284e35}.comparison-table tbody tr:nth-child(even) td{background:#f9fbf5}.compare-remove{position:absolute;top:6px;right:7px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #d1ddc8;border-radius:50%;background:#f3f7ed;color:#587149;font-size:22px}.compare-property{display:block;padding:0;background:transparent;text-align:left;color:#204931;width:100%}.compare-property>img,.compare-property>.property-artwork{width:100%;height:125px;object-fit:cover;background:#eef2e6;border-radius:6px}.compare-property>.property-artwork{padding:8px}.compare-property small{display:block;font-size:12px;color:#6e8061;margin-top:12px}.compare-property strong{display:block;font:normal 24px Georgia,serif;margin-top:5px}.comparison-plan{padding:0;width:100%;text-align:left;background:transparent;color:#42613c}.comparison-plan img,.comparison-plan svg{width:100%;height:130px;object-fit:contain;background:#edf2e5}.comparison-plan span{display:block;font-size:12px;margin-top:9px}.comparison-table .primary-button{margin:0;font-size:13px;padding:11px 9px}.comparison-table .enquiry-caption{display:none}.comparison-note{font-size:12px;line-height:1.6;color:#64775b;margin-top:13px}
.share-dialog{width:min(480px,calc(100vw - 28px));padding:32px;max-width:none}.share-dialog>.collection-close{position:absolute;right:18px;top:18px}.share-dialog>.eyebrow{padding-right:42px}.share-dialog h2{font-size:32px;margin-top:17px;padding-right:26px}.share-dialog>p{font-size:16px;line-height:1.6;color:#5b755b}.share-dialog label{display:block;font-size:13px;margin:24px 0 9px;color:#557050}.share-dialog input{width:100%;min-height:46px;border:1px solid #b4c7ac;background:#fff;color:#42603c;padding:10px 12px;font:inherit;font-size:13px;border-radius:6px}.share-buttons{display:grid;gap:10px;margin-top:17px}.share-buttons .primary-button{margin:0}.share-dialog .share-access{font-size:12px;margin-top:17px}.share-dialog #shareStatus{display:block;font-size:14px;min-height:22px;margin-top:12px;color:#286a42}
.mobile-property-preview{display:none}.map-image-status{font-size:12px;color:#a9c9b7}.map-control-text#presentationMode{width:auto;padding-inline:12px;gap:7px;display:flex}.map-control-text#presentationMode>span{min-width:0}
.presentation-controls{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:40;display:flex;gap:10px;padding:7px;border:1px solid #abc3ab77;background:#082b2eee;backdrop-filter:blur(14px);border-radius:12px;box-shadow:0 6px 30px #00191c55;transition:opacity 200ms}.presentation-controls button{display:flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #adc5ae55;border-radius:7px;background:#143f3b;color:#f3f0d9;font-size:14px}.presentation-controls.is-idle{opacity:0;pointer-events:none}
body.presenting .header,body.presenting .map-topbar,body.presenting .map-bottom-bar,body.presenting .map-footer,body.presenting #hotspots,body.presenting .hover-card,body.presenting .mobile-property-preview{display:none!important}body.presenting .workspace{height:100dvh!important}body.presenting .explorer{background:#051d20}body.presenting .map-shade{display:none}
@media(max-width:1100px){.header{padding-inline:20px;gap:12px}.nav{gap:16px}.brand>span{font-size:23px}.brand svg{width:38px}.collection-trigger{gap:5px;padding-inline:8px}.collection-trigger>.trigger-label{display:none}.map-bottom-bar .map-help{max-width:22ch}.saved-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:900px){.header{height:124px;display:grid;grid-template-columns:1fr auto;grid-template-rows:67px 44px;padding:0 24px 13px;gap:0 20px}.brand{grid-column:1;grid-row:1}.header-tools{grid-column:2;grid-row:1}.nav{grid-column:1/-1;grid-row:2;justify-content:center;gap:42px;margin:0}.workspace{height:calc(100dvh - 124px)}.collection-trigger>.trigger-label{display:inline}.header-action{display:flex}}
@media(max-width:700px){
 .header{height:112px;padding:10px 16px 0;display:grid;grid-template-columns:1fr auto;grid-template-rows:48px 44px;gap:0 12px}.brand{grid-column:1;grid-row:1}.brand>span{font-size:23px}.brand small{font-size:9px}.brand svg{height:36px;width:32px}.header-tools{grid-column:2;grid-row:1;gap:7px}.collection-trigger{min-height:39px;padding:7px 8px}.collection-trigger svg{width:17px}.header-action{display:none}.nav{grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;gap:13px;margin:0;height:44px}.nav-button{font-size:14px}.workspace{height:calc(100dvh - 112px)}
 .map-topbar{padding:12px 15px}.map-topbar .map-heading h1{font-size:23px}.map-topbar .map-heading .eyebrow{font-size:12px}.map-actions{margin-top:10px;gap:8px}.map-bottom-bar{padding:8px;gap:6px}.map-bottom-bar .map-help{max-width:none}.map-bottom-bar .map-controls{max-width:100%;width:100%;padding:2px;gap:0;justify-content:space-evenly}.map-bottom-bar .map-controls button{width:36px;min-width:36px;height:40px}.map-bottom-bar .map-controls span:not(.control-divider){min-width:33px;font-size:12px}.map-controls .control-label,.map-controls #presentationMode>span{display:none!important}.map-control-text#presentationMode{padding:0;width:38px}.map-controls #fullscreen{display:none}.explorer .map-footer{height:36px;padding:7px 15px}.map-footer p{font-size:10px}.list-view{bottom:36px}
 .mobile-property-preview:not([hidden]){display:flex;position:relative;flex-shrink:0;align-items:center;gap:12px;background:#f5f7ef;color:#1b4935;border-top:1px solid #c6d2bb;padding:14px 42px 14px 15px;min-height:132px;max-height:175px;overflow:auto}.mobile-property-preview>img{width:94px;height:94px;object-fit:cover;border-radius:8px;flex-shrink:0}.mobile-preview-content{min-width:0;flex:1}.mobile-preview-content small{font-size:12px;color:#6b7f60}.mobile-preview-content h2{font:normal 25px Georgia,serif;margin:4px 0 5px}.mobile-preview-content p{font-size:12px;line-height:1.4;color:#54704a}.mobile-preview-buttons{display:flex;gap:6px;margin-top:10px;align-items:center}.mobile-preview-buttons .primary-button{margin:0;width:auto;min-height:40px;padding:9px 12px;font-size:13px}.mobile-preview-buttons .property-actions{margin:0}.mobile-preview-buttons .property-action{min-height:40px;padding:8px}.mobile-preview-buttons .property-action span,.mobile-preview-buttons [data-property-action=compare]{display:none}.mobile-preview-close{position:absolute;top:11px;right:7px;width:32px;height:32px;background:transparent;border:1px solid #c2d0b4;border-radius:50%;color:#4b6a3f;font-size:23px}.mobile-preview-open .map-topbar .map-heading{display:none}.mobile-preview-open .map-actions{margin-top:0}
 .detail-panel{top:112px}.property-actions{gap:6px}.property-action{font-size:13px;padding:9px 10px}.property-actions.compact{padding:7px 8px}.property-actions.compact .property-action{font-size:12px}.property-actions.compact .property-action svg{width:16px}.property-card-facts{padding-inline:12px;font-size:12px}.property-facts>div{font-size:14px;gap:12px}.villa-card .card-content{padding:13px 12px 10px}.apartment-card .property-actions.compact .property-action{font-size:12px}
 .collection-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 18px);border-radius:12px}.collection-heading{padding:22px 18px 18px;gap:10px}.collection-heading h2{font-size:29px}.collection-heading p{font-size:14px}.collection-heading .eyebrow{font-size:12px;letter-spacing:1px}.collection-tabs{padding:0 18px 14px}.collection-tabs button{padding-inline:13px;font-size:14px}#collectionContent{padding:18px 15px 22px}.saved-grid{grid-template-columns:1fr;gap:14px}.saved-card-open{display:flex;align-items:center}.saved-card-open>img,.saved-card-open>.property-artwork{width:115px;height:113px;border-radius:0;flex-shrink:0}.saved-card-open strong{font-size:25px}.saved-card-open>span{padding:14px}.saved-card .property-card-facts{padding:12px 16px}.saved-card .property-actions{padding-inline:14px}.collection-footer{align-items:stretch;flex-direction:column;gap:10px}.collection-footer .primary-button{width:100%}.comparison-table{min-width:730px;table-layout:fixed}.comparison-table th:first-child{width:110px}.comparison-table th,.comparison-table td{padding:12px;font-size:13px}.compare-property strong{font-size:22px}.comparison-table thead th:first-child{position:sticky;left:0;z-index:2;background:#edf2e6}.comparison-table .primary-button{font-size:13px}.share-dialog{padding:27px 22px}.share-dialog h2{font-size:29px}.presentation-controls{bottom:max(14px,env(safe-area-inset-bottom));white-space:nowrap}.presentation-controls button{font-size:13px;padding-inline:12px}
}
@media(max-width:360px){.brand>span{font-size:20px}.brand svg{width:28px}.header{padding-inline:12px}.header-tools{gap:5px}.collection-trigger{padding:6px;gap:4px}.villa-grid,.apartment-grid{grid-template-columns:1fr}.mobile-property-preview>img{width:78px;height:90px}.mobile-property-preview{gap:10px}.mobile-preview-content h2{font-size:23px}.mobile-preview-buttons .primary-button{padding-inline:10px}.map-topbar .map-heading h1{font-size:22px}}
@media(max-height:550px) and (orientation:landscape){.header{height:62px;display:flex;padding:0 16px}.header .nav{height:62px;gap:18px}.header .brand small{display:none}.workspace{height:calc(100dvh - 62px)}.map-topbar .map-heading{display:none}.map-topbar{padding:6px 14px}.map-actions{margin:0}.map-bottom-bar{padding:4px 12px}.map-bottom-bar .map-help,.explorer .map-footer{display:none}.mobile-property-preview:not([hidden]){min-height:105px;max-height:120px;padding-block:8px}.mobile-property-preview>img{height:80px}.detail-panel{top:62px}.list-view{bottom:0}}
