:root{--bg:#091a1d;--ink:#f0eee5;--muted:#9ea9a4;--gold:#cfb58a;--line:rgba(202,188,158,.18);--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif;--pad:clamp(28px,3.8vw,84px)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:13px}button,a,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:6px}button{touch-action:manipulation}button svg,svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}a{color:inherit;text-decoration:none}button:disabled{opacity:.35;cursor:default}[hidden]{display:none!important}
#scene{position:fixed;inset:0;background:radial-gradient(ellipse at 64% 35%,#243d3b,#0a2025 60%,#07171b)}#scene canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}#scene canvas:active{cursor:grabbing}.scene-shade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,#091a1d 0%,rgba(9,26,29,.99) 12%,rgba(9,26,29,.92) 25%,rgba(9,26,29,.40) 43%,transparent 63%),linear-gradient(0deg,rgba(5,20,23,.90),transparent 24%,transparent 80%,rgba(5,20,23,.55));z-index:2}.grain{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:30;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.5' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
header{position:absolute;left:var(--pad);right:var(--pad);top:30px;display:flex;align-items:center;justify-content:space-between;z-index:40;height:52px}.brand{display:flex;align-items:center;gap:12px;color:var(--gold)}.brand>svg{height:40px;width:40px;fill:none;stroke:currentColor;stroke-width:1.4}.brand>span{font-size:25px;letter-spacing:6px;font-weight:500;line-height:1.15}.brand small{display:block;font-size:6px;letter-spacing:3.2px;margin-top:6px;color:#c5c4b7}.header-caption{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:2.6px;color:#bcc3b9;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}.tiny-orbit{width:15px;height:15px;border:1px solid var(--gold);border-radius:50%;position:relative}.tiny-orbit:before{content:'';width:3px;height:3px;border-radius:50%;background:var(--gold);position:absolute;right:-2px;top:4px}.header-actions{display:flex;align-items:center;gap:22px}.text-button{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.3px;color:#ced0c5;transition:color .2s}.text-button:hover{color:var(--gold)}.text-button svg{width:16px;height:18px}.icon-button{width:32px;height:32px;display:grid;place-items:center}.icon-button:hover{color:var(--gold)}.separator{height:16px;width:1px;background:var(--line)}
main{position:relative;width:100%;height:100%;pointer-events:none}#journey{position:absolute;left:var(--pad);top:clamp(123px,18vh,230px);width:clamp(335px,28vw,560px);z-index:10;pointer-events:auto;transition:opacity .35s,transform .35s}.eyebrow{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:12px}.gold-line{width:27px;height:1px;background:var(--gold)}h1{font-family:var(--serif);font-size:clamp(49px,4.8vw,90px);font-weight:400;line-height:.99;letter-spacing:-1.6px;margin:24px 0 22px}h1 em{color:var(--gold);font-weight:400}p.intro{font-size:12px;line-height:1.9;color:#a7b1aa;max-width:340px;margin:0 0 28px}.region-list{display:flex;flex-direction:column;gap:0}.region-option{display:flex;align-items:center;width:100%;padding:12px 0;text-align:left;border-bottom:1px solid var(--line);position:relative;transition:padding .35s,color .3s}.region-option .region-number{font-size:9px;color:#647873;width:28px;letter-spacing:1px}.region-option .region-name{font-size:13px;font-weight:400;transition:color .3s}.region-option .region-sub{font-size:9px;color:#82958e;margin-left:auto;margin-right:17px}.region-option .region-check{height:17px;width:17px;border:1px solid #4d625d;border-radius:50%;display:grid;place-items:center;color:transparent;font-size:10px;transition:.3s}.region-option:hover{padding-left:8px}.region-option:hover .region-name,.region-option.active .region-name{color:var(--gold)}.region-option.active .region-check{border-color:var(--gold);color:var(--bg);background:var(--gold)}.region-option.active .region-number{color:var(--gold)}.region-option.all{padding-bottom:15px}.region-option.all .region-name{font-size:12px}.region-caption{font-size:9px;color:#6f827b;margin-top:11px;line-height:1.6}.journey-actions{display:flex;gap:12px;align-items:center;margin-top:26px}.primary{background:var(--gold);color:#192825;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 21px;min-width:235px;font-size:11px;font-weight:600;transition:background .3s,transform .3s}.primary:hover{background:#e0c69d;transform:translateY(-2px)}.primary .arrow{font-size:20px;font-weight:400;line-height:15px}.back-button{display:grid;place-items:center;width:44px;height:48px;border:1px solid var(--line);font-size:19px;color:var(--gold)}.live-count{display:flex;gap:8px;align-items:center;font-size:9px;color:#80948a;margin-top:15px;letter-spacing:.3px}.live-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px #cfb58a55;flex-shrink:0}
.type-list{display:flex;flex-direction:column;gap:9px}.type-option{display:flex;gap:17px;align-items:center;text-align:left;border:1px solid var(--line);padding:16px 17px;background:#0c222333;transition:.3s}.type-option:hover,.type-option.active{border-color:#c6ac7870;background:#c6ac780b}.type-option>svg{width:32px;height:32px;color:var(--gold);flex-shrink:0}.type-option strong{font-size:14px;font-weight:400;display:block;margin-bottom:6px}.type-option small{font-size:10px;color:var(--muted);line-height:1.6}.type-option.active strong{color:var(--gold)}.type-option .choice{margin-left:auto;border:1px solid #61716b;width:14px;height:14px;border-radius:50%;flex-shrink:0}.type-option.active .choice{border:4px solid var(--gold)}.subtle-button{font-size:10px;color:var(--muted);margin-top:16px;padding:0;border-bottom:1px solid #64716a;padding-bottom:4px}.subtle-button:hover{color:var(--gold)}.lifestyle-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.lifestyle-option{padding:16px 14px 15px;border:1px solid var(--line);text-align:left;min-height:100px;position:relative;transition:.3s}.lifestyle-option svg{display:block;color:var(--gold);margin-bottom:14px;width:25px;height:25px}.lifestyle-option span{font-size:11px}.lifestyle-option.active{background:#cfb58a0d;border-color:#cbb18488}.lifestyle-option.active:after{content:'✓';position:absolute;right:12px;top:12px;color:var(--gold);font-size:11px}.lifestyle-option:hover{border-color:#cfb58a66}.filter-field{margin-bottom:22px}.filter-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#aab5ac;margin-bottom:13px}.filter-label output{font-size:13px;color:var(--gold)}input[type=range]{width:100%;appearance:none;height:2px;background:#43564d;accent-color:var(--gold);cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;background:var(--gold);border:3px solid var(--bg);outline:1px solid var(--gold);border-radius:50%}.range-ends{display:flex;justify-content:space-between;margin-top:10px;font-size:8px;color:#698078}.segmented{display:flex;border:1px solid var(--line)}.segmented button{flex:1;font-size:10px;padding:10px 8px;color:#9aa99f;border-right:1px solid var(--line)}.segmented button:last-child{border:0}.segmented button.active{background:#cfb58a1f;color:var(--gold)}.residency{display:flex;align-items:flex-start;gap:12px;padding-top:14px;border-top:1px solid var(--line);font-size:10px;color:#bbc4b9;cursor:pointer;line-height:1.6}.residency input{accent-color:var(--gold);margin:2px 0 0}.residency small{display:block;color:#71857a;font-size:8px;margin-top:3px}
#mapLabels{position:absolute;inset:0;pointer-events:none;z-index:6;overflow:hidden}.map-marker{position:absolute;pointer-events:auto;white-space:nowrap;transform:translate(-9px,-100%);display:flex;align-items:flex-end;gap:9px;transition:opacity .5s;cursor:pointer;border:0;padding:0;text-align:left}.marker-stem{position:relative;width:17px;height:58px;border-left:1px solid #cfb58a88;margin-left:8px;transform-origin:bottom}.marker-stem:before{content:'';position:absolute;left:-4px;bottom:-4px;width:7px;height:7px;background:#ead8ae;border-radius:50%;box-shadow:0 0 14px 4px #b2945255}.marker-stem:after{content:'';position:absolute;left:-10px;bottom:-10px;width:19px;height:19px;border:1px solid #cfb58a44;border-radius:50%;animation:ping 4s infinite}.marker-text{position:absolute;bottom:41px;left:12px;display:block;transition:transform .3s}.marker-text strong{display:block;font-size:10px;font-weight:500;letter-spacing:.3px;text-shadow:0 2px 10px #071b19,0 1px 3px #071b19}.marker-text small{display:block;color:#cbb78e;font-size:8px;margin-top:4px;text-shadow:0 2px 6px #061613}.map-marker:hover .marker-text{transform:translateY(-4px)}.map-marker.dimmed{opacity:.18;filter:grayscale(1)}.map-marker.selected .marker-text strong{color:#ffe7af}.map-marker.selected .marker-stem:before{box-shadow:0 0 25px 8px #d6b76b77}.map-marker.approx .marker-stem{border-left-style:dashed}.place-label{position:absolute;font-size:9px;letter-spacing:2px;color:#a7b9a6aa;text-transform:uppercase;transform:translate(-50%,-50%);white-space:nowrap;text-shadow:0 1px 8px #001410}.place-label.major{font-size:15px;letter-spacing:5px;color:#c9d0ba99}.map-heading{position:absolute;right:var(--pad);top:135px;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:2.4px;color:#b8c4b8;z-index:4}.map-heading .live-dot{background:#b1c7af}.sea-label{position:absolute;left:43%;top:51%;font-family:var(--serif);font-size:13px;color:#71918a88;text-align:center;transform:rotate(-30deg);z-index:3;letter-spacing:2px;pointer-events:none}.sea-label span{display:block;font-size:11px;margin-top:12px}.compass{position:absolute;right:var(--pad);top:195px;text-align:center;z-index:4;color:#c0c7b8;display:flex;flex-direction:column;align-items:center;gap:8px}.compass>span{font-size:8px;letter-spacing:1px}.compass svg{width:52px;height:52px;fill:none;stroke:#abb5a677;stroke-width:.6}.compass svg path{fill:#c6b185;stroke:#c6b185}.compass small{font-size:7px;letter-spacing:1px;writing-mode:vertical-rl;margin-top:15px;color:#85988c}.map-note{position:absolute;left:50%;top:155px;font-size:9px;color:var(--gold);z-index:12;max-width:300px;line-height:1.6}.map-note:empty{display:none}#mapTools{position:absolute;right:var(--pad);bottom:345px;display:flex;gap:8px;z-index:12;pointer-events:auto}.map-tool{padding:11px 14px;border:1px solid #cbb78e33;background:#0a2424bb;backdrop-filter:blur(14px);display:flex;align-items:center;gap:9px;font-size:9px;color:#cad0c0;transition:.3s}.map-tool svg{width:15px;height:15px}.map-tool:hover,.map-tool.active{border-color:var(--gold);color:var(--gold)}.map-tool.icon-only{width:38px;padding:0;justify-content:center}#featured{position:absolute;right:var(--pad);bottom:130px;width:330px;z-index:12;pointer-events:auto}.feature-card{display:grid;grid-template-columns:112px 1fr;background:rgba(10,31,31,.85);border:1px solid #c9b58933;backdrop-filter:blur(18px);text-align:left;width:100%;padding:0;transition:.35s}.feature-card:hover{border-color:#c9b58999;transform:translateY(-3px)}.feature-card>img{width:112px;height:140px;object-fit:cover;opacity:.9}.feature-info{padding:17px 16px}.feature-info .overline{font-size:7px;letter-spacing:1.5px;color:var(--gold)}.feature-info h3{font-family:var(--serif);font-size:24px;font-weight:400;margin:9px 0 7px;line-height:1}.feature-info .feature-region{font-size:8px;color:#879c90}.feature-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:9px;color:#d6c4a0}.feature-bottom b{font-size:18px;font-weight:400}.feature-above{font-size:8px;letter-spacing:1.7px;color:#93a69a;margin-bottom:11px;display:flex;align-items:center;gap:8px}.feature-above .gold-line{width:16px}.feature-below{font-size:7px;color:#617e73;letter-spacing:.3px;margin-top:9px;text-align:right}#mapHint{position:absolute;bottom:115px;left:53%;transform:translateX(-50%);display:flex;gap:10px;align-items:center;font-size:8px;color:#7d9589;z-index:4;white-space:nowrap}#mapHint svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1}.selection-count{font-size:9px;color:var(--gold);letter-spacing:1px}
footer{position:absolute;bottom:0;left:var(--pad);right:var(--pad);height:86px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;z-index:20;gap:25px;background:linear-gradient(0deg,#091a1d77,transparent)}.footer-caption{font-size:8px;letter-spacing:2.8px;color:#9ba99d;display:flex;align-items:center;gap:9px;white-space:nowrap}.footer-caption .live-dot{width:4px;height:4px}#steps{display:flex;gap:32px}.step-button{display:flex;align-items:center;gap:9px;font-size:9px;color:#667f73;position:relative;padding:15px 0;transition:.3s;white-space:nowrap}.step-button .step-number{font-size:8px;letter-spacing:1px}.step-button.active{color:var(--gold)}.step-button:after{content:'';position:absolute;left:0;right:0;top:-19px;height:1px;background:var(--gold);opacity:0;transition:.4s}.step-button.active:after{opacity:1}.step-button.complete .step-number{color:#b9c5af}.restart{font-size:8px;color:#7e9588;letter-spacing:.5px;white-space:nowrap}
#drawing{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:7;overflow:visible}#drawPath{fill:#d8bd7b18;stroke:#dbc18d;stroke-width:1.5;stroke-dasharray:5 5}body.drawing #scene canvas{cursor:crosshair}body.drawing #mapLabels{pointer-events:none}body.drawing .map-marker{pointer-events:none}body.drawing .scene-shade{opacity:.7}.draw-instruction{position:absolute;left:55%;top:48%;text-align:center;background:#092224dd;border:1px solid var(--gold);padding:20px;color:var(--gold);pointer-events:none;z-index:20}
#results{position:absolute;inset:115px var(--pad) 105px;z-index:15;pointer-events:auto;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#7a7962 transparent;padding-right:8px}.result-header{display:flex;align-items:flex-end;justify-content:space-between;margin:10px 0 24px;gap:30px}.result-header h1{font-size:clamp(40px,4.3vw,77px);margin:15px 0 0}.result-header p{font-size:11px;line-height:1.9;color:#9cae9f;max-width:330px;margin:0}.result-summary{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:23px}.summary-chip{display:flex;gap:7px;align-items:center;font-size:9px;border:1px solid var(--line);padding:8px 12px;color:#c4c7b6}.summary-chip b{font-weight:400;color:var(--gold);margin-right:4px}.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.property-card{border:1px solid #bda97f33;background:#0b2222df;position:relative}.property-image{height:clamp(160px,22vh,290px);position:relative;overflow:hidden;cursor:pointer}.property-image>img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s}.property-image:hover>img{transform:scale(1.05)}.property-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b222277,transparent 50%);pointer-events:none}.match-badge{position:absolute;left:15px;top:15px;padding:7px 10px;background:#0b2829df;backdrop-filter:blur(9px);font-size:8px;letter-spacing:.7px;color:#e2d1a7}.save-property{position:absolute;right:12px;top:12px;width:32px;height:32px;border:1px solid #e0dcc355;display:grid;place-items:center;background:#102a2b99;z-index:2}.save-property svg{width:15px;height:17px}.save-property.saved{background:var(--gold);color:#132c29}.property-body{padding:20px}.property-location{font-size:8px;letter-spacing:1.7px;text-transform:uppercase;color:#8ba492}.property-body h2{font-family:var(--serif);font-size:31px;line-height:1.1;font-weight:400;margin:11px 0 13px}.property-specs{display:flex;gap:12px;font-size:9px;color:#a7b6a6;flex-wrap:wrap}.property-price{display:flex;align-items:center;justify-content:space-between;margin:21px 0 16px;padding-bottom:16px;border-bottom:1px solid var(--line);font-size:12px;color:var(--gold)}.property-price span small{font-size:8px;color:#8b9d8d;display:block;margin-bottom:5px}.property-price button{font-size:20px}.reason-list{font-size:9px;line-height:1.9;color:#9cbaa3;min-height:35px}.reason-list .miss{color:#c8a67f}.reason-list .unknown{color:#a7ada0}.compare-label{font-size:9px;display:flex;align-items:center;gap:8px;color:#8ea58f;margin-top:14px;cursor:pointer}.compare-label input{accent-color:var(--gold)}.result-note{font-size:8px;color:#718979;line-height:1.9;margin:18px 0 6px;max-width:800px}.alternative-title{font-size:12px;font-weight:400;margin:25px 0 16px;color:#b8bfae}.no-exact{border-left:1px solid var(--gold);padding:12px 18px;background:#cfb58a08;color:#bac1ad;line-height:1.9;font-size:11px;margin-bottom:20px}.result-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:15px}.small-outline{border:1px solid var(--line);padding:11px 14px;font-size:9px;color:#c6cbb8}.small-outline:hover{border-color:var(--gold);color:var(--gold)}body.results-mode .scene-shade{background:linear-gradient(0deg,#091a1df5 0%,#091a1dd9 60%,#091a1d99)}body.results-mode #journey,body.results-mode #featured,body.results-mode #mapTools,body.results-mode #mapHint,body.results-mode .compass,body.results-mode .sea-label,body.results-mode .map-heading,body.results-mode #mapLabels{visibility:hidden}
dialog{background:#102727;color:var(--ink);border:1px solid #bda97f44;padding:0;max-height:88vh;max-width:1200px;width:88vw;overflow:auto;scrollbar-width:thin;scrollbar-color:#7a7962 transparent;box-shadow:0 40px 180px #000a}dialog::backdrop{background:#031618c9;backdrop-filter:blur(12px)}.dialog-close{position:absolute;right:17px;top:17px;z-index:5;width:36px;height:36px;border:1px solid #ffffff55;background:#0d2527b0;font-size:23px;font-weight:300;display:grid;place-items:center}.detail-layout{display:grid;grid-template-columns:1.12fr 1fr}.detail-visual{position:relative;background:#0a1c20;min-height:480px}.detail-visual>img{width:100%;height:100%;min-height:480px;position:absolute;inset:0;object-fit:cover;transition:opacity .3s}.gallery-nav{position:absolute;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:center;z-index:2}.gallery-nav button{width:38px;height:38px;border:1px solid #ffffff77;background:#10262499;font-size:18px}.gallery-nav span{font-size:9px;color:white;background:#10262477;padding:8px 12px;letter-spacing:2px}.detail-info{padding:48px 35px 30px}.detail-info h2{font-family:var(--serif);font-size:45px;line-height:1;margin:13px 0 20px;font-weight:400}.detail-description{font-size:11px;line-height:1.9;color:#b0bdad}.detail-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:22px 0}.detail-stats b{font-family:var(--serif);font-size:29px;font-weight:400;color:var(--gold);display:block}.detail-stats small{font-size:8px;color:#7f9b85;display:block;margin-top:5px}.detail-tags{font-size:10px;line-height:2;color:#b7c7ad}.detail-price{font-size:19px;color:var(--gold);margin:23px 0}.detail-price small{display:block;font-size:8px;color:#7f9b85;margin-top:7px;line-height:1.7}.detail-actions{display:flex;gap:9px;flex-wrap:wrap}.detail-actions a,.detail-actions button{display:flex;align-items:center;justify-content:center;gap:12px;padding:13px 16px;font-size:9px;border:1px solid var(--line)}.detail-actions .filled{background:var(--gold);color:#132925;border-color:var(--gold)}.detail-source{font-size:8px;line-height:1.8;color:#6f8c77;margin-top:20px}.units-section{padding:25px 35px;border-top:1px solid var(--line)}.units-section h3{font-size:12px;font-weight:400;margin:0 0 17px;color:var(--gold)}table{width:100%;border-collapse:collapse;font-size:10px;text-align:left}th,td{padding:10px;border-bottom:1px solid var(--line);font-weight:400}th{font-size:8px;color:#77977d}tr.unit-match{background:#cfb58a08}td:last-child{color:var(--gold)}.collection-inner{padding:38px}.collection-inner h2{font-family:var(--serif);font-size:40px;font-weight:400;margin:0 0 25px}.collection-empty{font-size:12px;line-height:1.8;color:#98ae99}.compare-table{font-size:11px;min-width:580px}.compare-table td,.compare-table th{padding:15px;max-width:250px}.compare-table img{width:100%;height:120px;object-fit:cover;display:block;margin-bottom:12px}.compare-table .compare-name{font-family:var(--serif);font-size:24px;color:var(--ink)}.compare-table td:first-child{color:#8eaa92;width:160px}.compare-table td small{font-size:8px;color:#7d9880}.collection-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}#toast{position:fixed;left:50%;bottom:110px;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:#173a32;border:1px solid #cfb58a77;padding:14px 24px;font-size:11px;color:var(--gold);z-index:100;transition:.35s;max-width:85vw;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}#curtain{position:fixed;inset:0;background:#091a1d;display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:200;transition:opacity 1s,visibility 1s}.loader-brand{font-size:24px;letter-spacing:10px;color:var(--gold)}.loader-line{height:1px;width:140px;background:#cfb58a22;margin-top:35px;overflow:hidden}.loader-line i{height:1px;background:var(--gold);display:block;animation:load 1.8s ease-in-out infinite}#curtain p{font-family:var(--serif);font-size:21px;font-style:italic;color:#728c80;letter-spacing:1px;margin-top:24px}#curtain.loaded{opacity:0;visibility:hidden}#blackout{position:fixed;inset:0;z-index:999;background:#000}.webgl-fallback{position:absolute;inset:0;background:url('./assets/paphos-terrain.webp') 75% center/auto 125% no-repeat;opacity:.6}.fallback-message{position:absolute;top:95px;right:var(--pad);font-size:9px;color:var(--gold)}
@keyframes ping{0%,100%{transform:scale(.8);opacity:.3}50%{transform:scale(1.45);opacity:.8}}@keyframes load{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}@keyframes enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.enter{animation:enter .55s both}
@media(min-width:1800px){html,body{font-size:16px}#journey{width:480px}.region-option{padding:18px 0}.region-option .region-name{font-size:17px}.region-option .region-sub{font-size:11px}p.intro{font-size:15px;max-width:430px}.eyebrow{font-size:11px}.primary{font-size:13px;padding:20px 25px;min-width:295px}.live-count{font-size:11px}.region-caption{font-size:11px}#featured{width:420px;bottom:155px}.feature-card{grid-template-columns:145px 1fr}.feature-card>img{width:145px;height:170px}.feature-info{padding:23px}.feature-info h3{font-size:31px}.feature-info .overline,.feature-info .feature-region{font-size:10px}.feature-bottom{font-size:12px}#mapTools{bottom:375px}.map-marker .marker-text strong{font-size:13px}.map-marker .marker-text small{font-size:10px}.type-option{padding:23px}.type-option strong{font-size:18px}.type-option small{font-size:12px}.lifestyle-option{min-height:125px;padding:22px}.lifestyle-option span{font-size:14px}.filter-label{font-size:13px}.filter-field{margin-bottom:28px}.segmented button{font-size:12px;padding:13px}.step-button{font-size:12px}#steps{gap:45px}.header-caption{font-size:11px}header{top:42px}footer{height:100px}.property-body h2{font-size:39px}.property-location{font-size:10px}.property-specs{font-size:12px}.property-price{font-size:16px}.reason-list{font-size:12px}}
@media(max-height:790px) and (min-width:901px){#journey{top:130px}h1{font-size:clamp(45px,4.4vw,70px);margin:18px 0 16px}p.intro{font-size:11px;line-height:1.7;margin-bottom:18px}.region-option{padding:10px 0}.journey-actions{margin-top:20px}.live-count{margin-top:10px}.filter-field{margin-bottom:17px}.lifestyle-option{min-height:88px;padding:12px}.lifestyle-option svg{margin-bottom:10px}.type-option{padding:13px}footer{height:70px}.step-button:after{top:-11px}.footer-caption{letter-spacing:1.5px}#featured{bottom:108px}#mapTools{bottom:315px}#mapHint{bottom:90px}.result-header{margin-top:0}}
@media(max-width:1100px) and (min-width:901px){:root{--pad:28px}#journey{width:310px}#steps{gap:20px}.footer-caption{display:none}#featured{width:285px}.feature-card{grid-template-columns:95px 1fr}.feature-card>img{width:95px}.header-caption{left:54%;font-size:8px}.feature-info h3{font-size:22px}.sea-label{left:40%}}
@media(max-width:900px){:root{--pad:24px}header{top:20px;height:40px}.brand>span{font-size:20px;letter-spacing:5px}.brand small{font-size:5px;letter-spacing:2px}.brand>svg{width:30px;height:30px}.header-actions{gap:13px}.header-caption,.separator,.footer-caption,.compass,.sea-label,#mapHint{display:none}.map-heading{top:90px;font-size:7px;right:24px;letter-spacing:1.3px}.scene-shade{background:linear-gradient(0deg,#091a1d 6%,#091a1dfa 32%,#091a1daa 48%,transparent 70%),linear-gradient(180deg,#091a1d99,transparent 25%)}#journey{top:auto;bottom:100px;left:24px;width:calc(100% - 48px);max-height:56vh;overflow:auto;scrollbar-width:none;padding-right:2px}h1{font-size:45px;line-height:.97;margin:16px 0 12px;letter-spacing:-1px}h1 br{display:none}p.intro{font-size:10px;max-width:90%;line-height:1.7;margin-bottom:14px}.eyebrow{font-size:8px;letter-spacing:1.8px}.region-list{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.region-option{padding:11px 0}.region-option .region-name{font-size:11px}.region-option .region-sub{display:none}.region-option .region-check{margin-left:auto;width:13px;height:13px;font-size:9px}.region-option .region-number{width:23px;font-size:8px}.region-option.all{padding-bottom:11px}.region-caption{font-size:8px;margin-top:8px}.journey-actions{margin-top:17px}.primary{padding:14px 19px;flex:1;font-size:10px;min-width:0}.back-button{height:43px}.live-count{font-size:8px;margin-top:9px}footer{height:73px;left:24px;right:24px;justify-content:center}#steps{gap:18px;width:100%;justify-content:space-between}.step-button{font-size:7px;gap:5px;padding:10px 0}.step-button .step-number{font-size:7px}.step-button:after{top:-17px}.restart{display:none}#mapTools{top:128px;bottom:auto;right:24px;gap:5px}.map-tool{padding:8px 10px;font-size:8px}.map-tool.icon-only{width:32px}#featured{right:auto;left:24px;bottom:auto;top:150px;width:210px}.feature-above,.feature-below{display:none}.feature-card{grid-template-columns:65px 1fr}.feature-card>img{width:65px;height:77px}.feature-info{padding:10px}.feature-info h3{font-size:19px;margin:3px 0}.feature-info .overline{font-size:6px}.feature-info .feature-region{font-size:6px}.feature-bottom{font-size:7px;margin-top:6px}.feature-bottom b{font-size:12px}.marker-text strong{font-size:8px}.marker-text small{font-size:6px}.marker-stem{height:35px}.marker-text{bottom:23px}.map-note{top:105px;left:24px;font-size:8px;max-width:70%}.type-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.type-option{padding:13px 10px;gap:9px}.type-option strong{font-size:11px}.type-option small{font-size:8px}.type-option>svg{width:24px;height:24px}.type-option:last-child{grid-column:1/-1}.type-option .choice{width:11px;height:11px}.lifestyle-grid{grid-template-columns:repeat(3,1fr);gap:7px}.lifestyle-option{min-height:76px;padding:11px 9px}.lifestyle-option svg{width:21px;height:21px;margin-bottom:10px}.lifestyle-option span{font-size:9px}.lifestyle-option.active:after{right:7px;top:7px}.filter-field{margin-bottom:15px}.filter-label{font-size:9px;margin-bottom:10px}.filter-label output{font-size:11px}.segmented button{font-size:9px;padding:8px 4px}.residency{padding-top:10px;font-size:9px}.residency small{font-size:7px}.range-ends{font-size:7px;margin-top:8px}#results{inset:95px 24px 88px;padding-right:0}.result-header{display:block;margin-top:0}.result-header h1{font-size:42px;line-height:1.05}.result-header p{font-size:10px;margin-top:15px}.results-grid{grid-template-columns:1fr}.property-image{height:220px}.property-body h2{font-size:30px}.result-summary{gap:5px}.summary-chip{font-size:8px;padding:7px 8px}.result-toolbar{flex-wrap:wrap}.small-outline{font-size:8px;padding:9px 11px}.detail-layout{grid-template-columns:1fr}.detail-visual{min-height:260px}.detail-visual>img{min-height:260px}.detail-info{padding:25px}.detail-info h2{font-size:37px}.units-section{padding:20px}.collection-inner{padding:25px}.collection-list{grid-template-columns:1fr}dialog{max-height:90vh;width:93vw}.result-note{font-size:8px}.header-actions .text-button{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body{overflow:visible!important;background:white;color:#122924;height:auto}header,footer,#scene,.scene-shade,.grain,#mapLabels,#journey,#mapTools,#mapHint,#featured,.sea-label,.compass,.map-heading,.map-note,.result-toolbar,.save-property,.compare-label,#curtain{display:none!important}main{height:auto}#results{position:static!important;overflow:visible;padding:30px}.results-grid{grid-template-columns:repeat(2,1fr)}.property-card{background:#f5f5f0;color:#132925;break-inside:avoid}.property-location,.property-specs,.reason-list,.result-header p,.result-note{color:#45634d}.property-body h2{font-size:26px}.property-price{color:#76613c}.summary-chip{color:#45634d}.result-header h1{color:#132925}.property-image{height:160px}}
/* Presentation mode keeps the buyer inside the place they chose. */
.map-credit{position:absolute;bottom:91px;left:50%;transform:translateX(-50%);font-size:6px;color:#648177;letter-spacing:.3px;z-index:4;white-space:nowrap;pointer-events:none}.tour-start{color:var(--gold);border-color:#cfb58a88}.tour-start:hover{background:#cfb58a14}#tour{position:absolute;inset:0;z-index:16;pointer-events:none}.tour-visual{position:absolute;left:0;top:0;width:48%;height:100%;overflow:hidden}.tour-visual img{width:100%;height:100%;object-fit:cover;opacity:.38;animation:tour-image 1.4s ease both}.tour-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#091a1d22,#091a1d33 55%,#091a1d),linear-gradient(0deg,#091a1d 3%,transparent 55%,#091a1d88)}.tour-info{position:absolute;left:var(--pad);top:34%;width:37%;pointer-events:auto}.tour-info h1{font-size:clamp(55px,5.5vw,110px);line-height:.95;margin:23px 0}.tour-info p{max-width:350px;font-size:12px;line-height:1.9;color:#b8c5b9}.tour-meta{font-size:10px;color:var(--gold);margin:25px 0}.tour-info .primary{display:inline-flex;min-width:230px}.tour-controls{margin-top:35px;display:flex;align-items:center;gap:18px}.tour-controls>button{width:39px;height:39px;border:1px solid var(--line);color:var(--gold);font-size:18px}.tour-controls>span{font-family:var(--serif);font-size:17px;font-style:italic;color:#90a799}.tour-exit{position:absolute;right:var(--pad);bottom:45px;pointer-events:auto}.tour-exit small{font-size:7px;color:#6e8d7d;margin-left:20px}body.tour-mode #journey,body.tour-mode #featured,body.tour-mode #results,body.tour-mode footer,body.tour-mode #mapTools,body.tour-mode #mapHint,body.tour-mode .map-credit,body.tour-mode .sea-label{display:none!important}body.tour-mode .scene-shade{background:linear-gradient(0deg,#091a1dbb,transparent 45%)}body.results-mode .map-credit{display:none}body.tour-mode .map-heading{visibility:visible}.property-card:has(.match-badge):hover{border-color:#cbb18466}.property-body h2 button{text-align:left;padding:0}.detail-visual{min-height:515px}@keyframes tour-image{from{transform:scale(1.06);opacity:0}to{transform:scale(1);opacity:.38}}
@media(min-width:1800px){.map-credit{bottom:103px;font-size:7px}.tour-info p{font-size:16px;max-width:450px}.tour-meta{font-size:13px}.tour-controls>span{font-size:21px}.tour-controls>button{width:48px;height:48px}.tour-info .primary{min-width:290px}dialog{max-width:1550px}.detail-info{padding:60px 45px 40px}.detail-info h2{font-size:62px}.detail-description,.detail-tags{font-size:15px}.detail-stats b{font-size:38px}.detail-stats small,.detail-actions a,.detail-actions button{font-size:11px}.detail-price{font-size:24px}.detail-source,.detail-price small{font-size:10px}.units-section h3{font-size:15px}table{font-size:13px}th{font-size:10px}}
@media(max-height:790px) and (min-width:901px){.map-credit{bottom:75px}.tour-info{top:29%}}
@media(max-width:900px){.map-credit{bottom:80px;font-size:5px;max-width:92%;overflow:hidden;text-overflow:ellipsis}.tour-visual{width:100%;height:65%;top:auto;bottom:0}.tour-visual img{opacity:.25}.tour-visual:after{background:linear-gradient(0deg,#091a1d 0%,#091a1d77 50%,#091a1d)}.tour-info{top:auto;bottom:110px;width:calc(100% - 48px)}.tour-info h1{font-size:49px}.tour-info p{font-size:11px;max-width:95%;line-height:1.7}.tour-meta{font-size:9px;margin:16px 0}.tour-controls{margin-top:25px;gap:15px}.tour-controls>span{font-size:16px}.tour-exit{right:auto;left:24px;bottom:25px}.tour-info .primary{min-width:230px}.detail-visual{min-height:280px}}
/* Keep navigation within shorter presentation displays. */
@media(min-width:901px){#journey{top:clamp(118px,15vh,210px);max-height:calc(100vh - clamp(118px,15vh,210px) - 116px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#526451 transparent;padding-right:3px}}
@media(max-height:790px) and (min-width:901px){#journey{top:112px;max-height:calc(100vh - 202px)}h1{font-size:54px}.region-option{padding:8px 0}.region-option .region-name{font-size:12px}.region-caption{font-size:8px}.journey-actions{margin-top:17px}.type-option{padding:11px 14px}}
@media(max-width:900px){h1 br{display:initial}#mapLabels{mask-image:linear-gradient(180deg,transparent 5%,#000 13%,#000 32%,transparent 48%)}.scene-shade{background:linear-gradient(0deg,#091a1d 6%,#091a1dfa 38%,#091a1daa 54%,transparent 77%),linear-gradient(180deg,#091a1d99,transparent 25%)}body.tour-mode #mapLabels{mask-image:linear-gradient(180deg,transparent 5%,#000 13%,#000 27%,transparent 44%)}}
@media(min-width:1800px){#journey{width:clamp(480px,25vw,580px)}}
@media(max-height:790px) and (min-width:901px){
 #journey{top:105px;max-height:calc(100vh - 195px)}
 #journey h1{font-size:42px;margin:12px 0;line-height:.99}
 #journey .eyebrow{font-size:8px}
 #journey p.intro{font-size:10px;line-height:1.5;margin-bottom:10px}
 .region-option,.region-option.all{padding:6px 0}.region-option .region-name{font-size:11px}.region-option .region-sub{font-size:8px}.region-caption{font-size:8px;margin-top:8px;line-height:1.4}
 .journey-actions{margin-top:14px}.primary{padding:14px 18px;font-size:10px}.back-button{height:43px}.live-count{font-size:8px;margin-top:8px}
 .type-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.type-option{padding:11px 10px;gap:9px}.type-option:last-child{grid-column:1/-1}.type-option>svg{width:24px;height:24px}.type-option strong{font-size:12px}.type-option small{font-size:8px;line-height:1.5}.type-option .choice{width:11px;height:11px}.subtle-button{font-size:9px;margin-top:11px}
 .lifestyle-grid{grid-template-columns:repeat(3,1fr);gap:8px}.lifestyle-option{min-height:77px;padding:11px 9px}.lifestyle-option svg{width:22px;height:22px;margin-bottom:10px}.lifestyle-option span{font-size:9px}
 #journey[data-stage="3"] .intro{display:none}#journey[data-stage="3"] #stepContent{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}#journey[data-stage="3"] .filter-field:nth-child(-n+2),#journey[data-stage="3"] .residency{grid-column:1/-1}
 .filter-field{margin-bottom:12px}.filter-label{font-size:9px;margin-bottom:9px}.filter-label output{font-size:11px}.segmented button{font-size:8px;padding:8px 3px}.residency{font-size:9px;padding-top:10px}.residency small{font-size:7px}
}
.share-field{display:block;font-size:10px;color:#99ad9b;margin:25px 0 18px}.share-field input{display:block;width:100%;margin-top:12px;padding:13px 15px;background:#081e20;border:1px solid var(--line);color:#c9b993;font-size:11px;min-width:0}.share-field input:focus{border-color:var(--gold);outline:none}
@media(max-width:900px){
 body[data-stage="3"] #featured{display:none}
 #journey[data-stage="3"]{max-height:64vh}
 #journey[data-stage="3"] h1{font-size:38px;line-height:1.02}
 #journey[data-stage="3"] .intro{display:none}
 #journey[data-stage="3"] #stepContent{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
 #journey[data-stage="3"] .filter-field:nth-child(-n+2),#journey[data-stage="3"] .residency{grid-column:1/-1}
 #journey[data-stage="3"] .filter-field{margin-bottom:12px}
 #journey[data-stage="3"] .filter-label{font-size:9px;margin-bottom:8px}
 #journey[data-stage="3"] .segmented button{font-size:8px}
}
