:root{color-scheme:dark;--bg: #08121b;--bg-elevated: rgba(10, 24, 36, .82);--bg-soft: rgba(19, 36, 52, .82);--stroke: rgba(180, 221, 255, .12);--text: #eaf6ff;--muted: #8eb3c8;--accent: #67d1ff;--accent-strong: #b6ff8a;--danger: #ff8e8e;--shadow: 0 24px 80px rgba(0, 0, 0, .35);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 999px;--ease-out: cubic-bezier(.22, 1, .36, 1);--surface-dim: rgba(255, 255, 255, .04);--surface-base: rgba(255, 255, 255, .06);--surface-hover: rgba(255, 255, 255, .1);--surface-active: rgba(255, 255, 255, .14);--glass: rgba(7, 17, 27, .72);--glass-strong: rgba(7, 17, 27, .88);--min-target: 44px}*{box-sizing:border-box}html{background:radial-gradient(circle at top left,rgba(78,157,255,.18),transparent 32%),radial-gradient(circle at top right,rgba(97,255,187,.12),transparent 28%),linear-gradient(180deg,#08121b,#0d1823);min-height:100%}body{margin:0;color:var(--text);font-family:Inter,Segoe UI,sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app-shell{margin:0 auto;max-width:1480px;padding:24px}.site-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07111bb8;border:1px solid var(--stroke);border-radius:24px;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 20px;position:sticky;top:16px;z-index:30}.brand{align-items:center;display:inline-flex;gap:14px}.brand strong,.brand small{display:block}.brand small{color:var(--muted)}.brand-mark{align-items:center;background:linear-gradient(135deg,#75d8ff,#b2ff9c);border-radius:var(--radius-lg);color:#051017;display:inline-flex;font-weight:900;height:48px;justify-content:center;width:48px}.header-nav{display:inline-flex;gap:12px}.header-nav a{border-radius:var(--radius-full);color:var(--muted);padding:10px 14px;transition:background-color .12s ease,color .12s ease}.header-nav a.is-active,.header-nav a:hover{background:#ffffff14;color:var(--text)}.site-main,.page-stack{display:grid;gap:24px}.panel,.hero-panel,.stat-card,.listing-card{background:var(--bg-elevated);border:1px solid var(--stroke);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.panel,.hero-panel{overflow:hidden;padding:28px;position:relative}.hero-panel{min-height:360px}.hero-copy{max-width:740px;position:relative;z-index:1}.hero-copy h1{font-size:clamp(2.4rem,5vw,5rem);letter-spacing:-.04em;line-height:.95;margin:0 0 20px;max-width:12ch}.hero-text{color:var(--muted);font-size:1.1rem;line-height:1.7;margin:0 0 24px;max-width:62ch}.hero-actions,.pill-row,.chip-grid,.stats-grid,.two-column,.listing-grid,.pagination-actions{display:flex;gap:16px}.hero-actions,.pill-row,.pagination-actions{flex-wrap:wrap}.button-primary,.button-secondary{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-weight:700;justify-content:center;min-height:48px;padding:0 20px}.button-primary{background:linear-gradient(135deg,#67d1ff,#b6ff8a);color:#041017}.button-secondary{background:#ffffff0f;border:1px solid var(--stroke);color:var(--text)}.button-primary.is-small,.button-secondary.is-small{min-height:40px;padding:0 16px}.hero-glow{background:radial-gradient(circle at center,rgba(103,209,255,.3),transparent 45%),radial-gradient(circle at center,rgba(182,255,138,.18),transparent 38%);height:460px;position:absolute;right:-40px;top:-60px;width:460px}.eyebrow{color:var(--accent-strong);font-size:.8rem;font-weight:800;letter-spacing:.16em;margin:0 0 12px;text-transform:uppercase}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{display:grid;gap:8px;padding:24px}.stat-card strong{font-size:clamp(1.8rem,4vw,3rem);letter-spacing:-.04em}.stat-card span,.result-count,.location-tag,.listing-footer,.detail-description,.feature-list,.facet-row,.notice{color:var(--muted)}.panel-header{align-items:end;display:flex;justify-content:space-between;gap:16px;margin-bottom:20px}.panel-header h1,.panel-header h2{margin:0}.text-link{color:var(--accent)}.chip-grid{flex-wrap:wrap}.city-chip,.facet-row{align-items:center;background:#ffffff0a;border:1px solid var(--stroke);border-radius:22px;display:flex;justify-content:space-between;min-height:62px;padding:14px 18px}.city-chip{flex:1 1 210px}.two-column{display:grid;grid-template-columns:1.1fr .9fr}.facet-list{display:grid;gap:12px}.accent-panel{background:linear-gradient(160deg,#67d1ff1f,#b6ff8a14),var(--bg-elevated)}.feature-list{display:grid;gap:14px;line-height:1.6;margin:0;padding-left:18px}.filters-shell{display:grid;gap:16px}.search-field{display:grid;gap:8px}.filters-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.filters-grid input,.filters-grid select,.search-field input{background:#ffffff0d;border:1px solid var(--stroke);border-radius:var(--radius-lg);color:var(--text);min-height:48px;padding:0 14px}.filters-grid input::placeholder,.search-field input::placeholder{color:#a0bfcf}.listing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.listing-card{contain-intrinsic-size:460px;content-visibility:auto;overflow:hidden;position:relative}.listing-card-link{display:grid;height:100%}.listing-media{aspect-ratio:4 / 3;overflow:hidden;position:relative}.listing-image{display:block;height:100%;object-fit:cover;transition:transform .22s ease;width:100%}.listing-card:hover .listing-image{transform:scale(1.04)}.placeholder-gradient{align-items:center;background:linear-gradient(135deg,#4c8bff33,#67d1ff26),linear-gradient(180deg,#ffffff08,#ffffff03);color:var(--muted);display:flex;justify-content:center}.placeholder-gradient.is-large{min-height:280px}.listing-badges{display:flex;gap:8px;left:14px;position:absolute;top:14px}.listing-badges span,.pill-row span,.source-chip{background:#041017b8;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-full);color:var(--text);font-size:.78rem;padding:8px 12px}.listing-copy{display:grid;gap:18px;padding:20px}.listing-heading{display:grid;gap:12px}.listing-heading h3,.detail-heading h1{letter-spacing:-.03em;margin:0}.price-tag,.detail-price-block strong{color:var(--accent-strong);font-size:1.35rem;font-weight:800;letter-spacing:-.04em;margin:0}.listing-meta{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.listing-meta div,.detail-meta-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:12px 14px}.listing-meta dt,.detail-meta dt{color:#8ca8bc;font-size:.78rem;margin-bottom:6px;text-transform:uppercase}.listing-meta dd,.detail-meta dd{margin:0}.listing-footer{align-items:center;display:flex;justify-content:space-between}.source-chip{color:var(--muted)}.freshness-label{color:var(--muted);font-size:.78rem}.pagination-bar,.slim-panel{align-items:center;display:flex;justify-content:space-between}.notice{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:14px 16px}.notice.error{background:#ff535314;border-color:#ff535333;color:#ffd8d8}.skeleton-block,.skeleton-line{animation:pulse 1.4s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0f,#ffffff1f,#ffffff0f);background-size:200% 100%;border-radius:var(--radius-lg)}.skeleton-block{min-height:240px}.skeleton-line{height:14px}.skeleton-line.is-wide{width:80%}.skeleton-line.is-medium{width:56%}.skeleton-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.route-fallback{align-content:start;display:grid;gap:18px;min-height:48vh}.route-fallback-grid{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.detail-panel{display:grid;gap:24px}.detail-heading{align-items:start;display:flex;justify-content:space-between;gap:24px}.detail-price-block{display:grid;gap:12px;justify-items:end}.property-gallery{display:grid;gap:14px}.gallery-stage-shell{position:relative}.gallery-stage{background:#ffffff08;border:1px solid var(--stroke);border-radius:var(--radius-xl);cursor:zoom-in;display:block;overflow:hidden;padding:0;position:relative;touch-action:pan-y;width:100%}.gallery-photo{aspect-ratio:16 / 10;animation:mediaFrameIn .32s var(--ease-out);display:block;object-fit:cover;transform:scale(1);transition:transform .26s var(--ease-out);width:100%}.gallery-stage:hover .gallery-photo{transform:scale(1.015);will-change:transform}.gallery-stage-hud{align-items:center;background:linear-gradient(180deg,transparent,rgba(5,12,18,.82));bottom:0;display:flex;font-size:.92rem;justify-content:space-between;left:0;padding:24px 22px 18px;position:absolute;right:0}.gallery-thumb-strip,.lightbox-thumbs{display:grid;gap:10px;grid-auto-columns:minmax(88px,112px);grid-auto-flow:column;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.gallery-thumb{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);overflow:hidden;padding:0;position:relative;width:100%}.gallery-thumb:after{border:2px solid transparent;border-radius:var(--radius-lg);content:"";top:0;right:0;bottom:0;left:0;position:absolute}.gallery-thumb.is-active:after{border-color:var(--accent-strong)}.gallery-thumb img{aspect-ratio:4 / 3;display:block;object-fit:cover;width:100%}.gallery-nav,.lightbox-nav{align-items:center;background:#061018d9;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full);color:var(--text);display:inline-flex;font-size:2rem;height:52px;justify-content:center;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:52px}.gallery-nav.is-prev,.lightbox-nav.is-prev{left:18px}.gallery-nav.is-next,.lightbox-nav.is-next{right:18px}.lightbox-backdrop{animation:lightboxFadeIn .18s ease-out;align-items:stretch;background:#03080eeb;display:grid;top:0;right:0;bottom:0;left:0;padding:24px;position:fixed;z-index:90}.lightbox-shell{animation:lightboxShellIn .24s var(--ease-out);background:linear-gradient(180deg,#1a32441f,#07101814),#040b11fa;border:1px solid rgba(255,255,255,.08);border-radius:32px;display:grid;gap:18px;grid-template-rows:auto 1fr auto;min-height:0;padding:20px}.lightbox-toolbar{align-items:center;display:flex;gap:16px;justify-content:space-between}.lightbox-meta{display:grid;gap:4px}.lightbox-meta span{color:var(--muted);font-size:.92rem}.lightbox-actions{display:inline-flex;flex-wrap:wrap;gap:10px}.lightbox-viewer{align-items:center;display:grid;gap:16px;grid-template-columns:auto 1fr auto;min-height:0}.lightbox-stage{align-items:center;background:radial-gradient(circle at top,rgba(103,209,255,.08),transparent 40%),#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:26px;cursor:zoom-in;display:grid;min-height:0;overflow:hidden;touch-action:none}.lightbox-stage.is-zoomed{cursor:grab}.lightbox-stage-track{display:grid;height:100%;place-items:center;transition:transform .18s var(--ease-out);width:100%}.lightbox-image{animation:mediaFrameIn .26s var(--ease-out);display:block;max-height:min(74vh,980px);max-width:100%;object-fit:contain;transform-origin:center center;transition:transform .22s var(--ease-out);-webkit-user-select:none;user-select:none}.detail-grid{display:grid;gap:24px;grid-template-columns:1.2fr .8fr}.detail-copy,.detail-sidebar{display:grid;gap:18px}.detail-description{line-height:1.8;margin:0;white-space:pre-wrap}.detail-meta{display:grid;gap:12px;margin:0}.detail-loading{display:grid;gap:20px}.detail-map-panel{display:grid;gap:16px}.detail-map-copy{align-items:end;display:flex;gap:16px;justify-content:space-between}.detail-map-copy h2{margin:0}.detail-map-actions{display:inline-flex;gap:10px}.listing-map-preview,.listing-map-shell{background:#ffffff08;border:1px solid var(--stroke);border-radius:var(--radius-xl);overflow:hidden;position:relative}.listing-map-preview{cursor:pointer;padding:0;width:100%}.listing-map-preview img,.listing-map-live{aspect-ratio:16 / 8;display:block;width:100%}.listing-map-live{min-height:360px}.listing-map-overlay{align-items:start;background:linear-gradient(180deg,transparent,rgba(5,12,18,.88));bottom:0;color:var(--text);display:grid;gap:4px;left:0;padding:28px 24px 22px;position:absolute;right:0}.listing-map-overlay span,.listing-map-status{color:var(--muted)}.listing-map-status{background:#03080ebd;border-radius:var(--radius-full);left:16px;padding:10px 14px;position:absolute;top:16px}.listing-map-status.is-error{color:var(--danger)}.listing-map-pin{pointer-events:none;position:absolute;transform:translate(-50%,-100%)}.listing-map-pin:before{background:#04101852;border-radius:var(--radius-full);content:"";filter:blur(8px);height:14px;left:50%;position:absolute;top:18px;transform:translate(-50%);width:22px}.listing-map-pin-dot{background:linear-gradient(180deg,#7bdcff,#2fa5ff);border:3px solid #04121c;border-radius:999px 999px 999px 0;box-shadow:0 10px 24px #1279ff3d;display:block;height:24px;transform:rotate(-45deg);width:24px}.map-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20}.map-page-map{position:absolute;top:0;right:0;bottom:0;left:0}.map-page-loading{align-items:center;background:var(--bg);color:var(--muted);display:flex;height:100%;justify-content:center}.map-toolbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07111ba6;display:grid;gap:6px;left:0;padding:6px 10px;position:absolute;right:0;top:0;z-index:10}.map-toolbar-row{align-items:center;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.map-toolbar-row::-webkit-scrollbar{display:none}.map-nav-link{background:#ffffff14;border-radius:8px;color:var(--muted);font-size:.78rem;font-weight:700;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;white-space:nowrap;transition:color .12s}.map-nav-link:hover{color:var(--text)}.map-toolbar-sep{background:var(--stroke);height:18px;width:1px;flex-shrink:0}.map-input{background:#ffffff12;border:1px solid var(--stroke);border-radius:8px;color:var(--text);flex:1 1 100px;font-size:.8rem;min-height:44px;min-width:80px;padding:0 10px}.map-input::placeholder{color:#a0bfcf}.map-select{background:#ffffff12;border:1px solid var(--stroke);border-radius:8px;color:var(--text);font-size:.8rem;min-height:44px;padding:0 8px}.map-toolbar-btn{background:#ffffff0f;border:1px solid var(--stroke);border-radius:8px;color:var(--muted);cursor:pointer;font-size:.85rem;min-height:44px;padding:0 10px}.map-result-count{color:var(--muted);font-size:.78rem;font-weight:700;white-space:nowrap}.map-card-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07111ba6;border-right:1px solid var(--stroke);bottom:0;display:flex;flex-direction:column;left:0;position:absolute;top:0;transition:width .2s ease;width:380px;z-index:5}.map-card-panel.is-collapsed{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-right:none;width:0}.map-card-panel.is-collapsed .map-card-list,.map-card-panel.is-collapsed .map-card-pagination{display:none}.map-panel-toggle{align-items:center;background:#07111be6;border:1px solid var(--stroke);border-radius:0 12px 12px 0;color:var(--text);cursor:pointer;display:flex;font-size:1rem;height:48px;justify-content:center;left:100%;position:absolute;top:50%;transform:translateY(-50%);width:36px;z-index:6;transition:background .12s}.map-panel-toggle:hover{background:#07111be6}.map-card-list{display:flex;flex-direction:column;flex:1;gap:10px;overflow-y:auto;padding:46px 10px 10px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.map-card-item{border-radius:20px;position:relative;transition:outline-color .2s;outline:2px solid transparent;outline-offset:-2px}.map-card-item.is-highlighted{outline-color:var(--accent)}.map-card-item .listing-card{border-radius:20px}.map-card-pagination{align-items:center;background:var(--glass-strong);border-top:1px solid var(--stroke);display:flex;gap:12px;justify-content:center;padding:10px}.map-page-btn{background:#ffffff14;border:1px solid var(--stroke);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;font-size:.8rem;font-weight:600;min-height:var(--min-target);padding:0 14px;transition:background .12s ease}.map-page-btn:hover{background:#ffffff24}.map-notice{margin:var(--space-2) 0}.map-empty-state{color:var(--muted);padding:var(--space-4);text-align:center}.map-page-label{color:var(--muted);font-size:.8rem}.map-panel{height:100%;min-height:100%;position:relative}.map-container{height:100%;width:100%;border-radius:0;overflow:hidden}.map-price-pin{background:#16a34ae6;color:#fff;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;border:2px solid rgba(255,255,255,.3);box-shadow:0 2px 8px #0000004d;transition:transform .12s}.map-price-pin[data-deal=rent]{background:#3b82f6e6}.map-price-pin.is-highlighted{transform:scale(1.5);z-index:10!important;border-color:#fff;box-shadow:0 0 0 3px #ffffffb3,0 0 20px #67d1ffcc,0 4px 16px #00000080;animation:pin-pulse 1s ease-in-out infinite}@keyframes pin-pulse{0%,to{box-shadow:0 0 0 3px #ffffffb3,0 0 20px #67d1ffcc,0 4px 16px #00000080}50%{box-shadow:0 0 0 6px #fff6,0 0 32px #67d1ff,0 4px 16px #00000080}}.map-pin-overflow{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;padding:6px 12px;border-radius:8px;font-size:13px;z-index:5;pointer-events:none}.split-view{display:grid;gap:24px;grid-template-columns:1fr 1fr;min-height:calc(100vh - 140px)}.split-list{display:grid;align-content:start;gap:16px;max-height:calc(100vh - 140px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.split-list .listing-grid,.listing-grid--split{grid-template-columns:repeat(2,minmax(0,1fr))}.listing-card-highlighted{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-xl)}.split-map{position:sticky;top:100px;height:calc(100vh - 140px);border-radius:24px;overflow:hidden;border:1px solid var(--stroke)}.view-toggle{display:inline-flex;background:#ffffff0a;border:1px solid var(--stroke);border-radius:14px;overflow:hidden}.view-toggle button{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:.85rem;font-weight:600;min-height:40px;padding:0 16px;transition:background .12s,color .12s}.view-toggle button.is-active{background:#ffffff1a;color:var(--text)}.category-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.category-tabs::-webkit-scrollbar{display:none}.category-tab{background:#ffffff0a;border:1px solid var(--stroke);border-radius:12px;color:var(--muted);cursor:pointer;font-size:.85rem;font-weight:600;min-height:40px;padding:0 16px;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.category-tab.is-active{background:#67d1ff1f;border-color:var(--accent);color:var(--accent)}.filter-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px}.filter-chips::-webkit-scrollbar{display:none}.filter-chip{align-items:center;background:#ffffff0a;border:1px solid var(--stroke);border-radius:var(--radius-full);color:var(--muted);cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:6px;min-height:44px;padding:0 14px;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.filter-chip.is-active{background:#67d1ff26;border-color:var(--accent);color:var(--accent)}.filter-chip .chip-count{font-size:.78rem;opacity:.6}.applied-bar{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.applied-pill{align-items:center;background:#b6ff8a1a;border:1px solid rgba(182,255,138,.2);border-radius:var(--radius-full);color:var(--accent-strong);cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:600;gap:6px;min-height:36px;padding:0 12px;transition:background .12s}.applied-pill:hover{background:#b6ff8a2e}.applied-pill .pill-close{font-size:1rem;line-height:1;opacity:.7}.clear-all-link{color:var(--muted);cursor:pointer;font-size:.78rem;text-decoration:underline;text-underline-offset:2px}.zero-results{align-items:center;display:grid;gap:20px;justify-items:center;padding:48px 24px;text-align:center}.zero-results h2{margin:0}.zero-results p{color:var(--muted);margin:0}.zero-suggestions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.zero-suggestion{background:#67d1ff14;border:1px solid rgba(103,209,255,.2);border-radius:12px;color:var(--accent);cursor:pointer;font-size:.85rem;min-height:44px;padding:8px 16px;transition:background .12s}.zero-suggestion:hover{background:#67d1ff26}.bottom-sheet{background:#07111bf5;border-radius:24px 24px 0 0;border-top:1px solid var(--stroke);bottom:0;left:0;position:fixed;right:0;transition:height .3s var(--ease-out);z-index:50}.bottom-sheet.is-dragging{transition:none}.bottom-sheet-handle{align-items:center;cursor:grab;display:flex;justify-content:center;padding:12px 0 8px;touch-action:none}.bottom-sheet-grabber{background:#ffffff3d;border-radius:4px;height:5px;width:40px}.bottom-sheet-content{height:calc(100% - 36px);overflow-y:auto;padding:0 16px 16px;scrollbar-width:thin}.sticky-cta{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07111be0;border-top:1px solid var(--stroke);bottom:0;display:none;gap:12px;justify-content:space-between;left:0;padding:12px 20px calc(12px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:40}.sticky-cta-price{color:var(--accent-strong);font-size:1.2rem;font-weight:800}.sticky-cta-actions{display:flex;gap:8px}.key-facts{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none}.key-facts::-webkit-scrollbar{display:none}.key-fact{background:#ffffff0a;border:1px solid var(--stroke);border-radius:var(--radius-lg);display:grid;gap:4px;min-width:100px;padding:14px 16px;text-align:center}.key-fact strong{font-size:1.1rem}.key-fact span{color:var(--muted);font-size:.78rem;text-transform:uppercase}.trust-row{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.82rem;gap:12px}.trust-badge{align-items:center;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:8px;display:inline-flex;gap:6px;padding:4px 10px}.trust-badge.is-fresh{border-color:#b6ff8a33;color:var(--accent-strong)}.trust-badge.is-stale{border-color:#ff8e8e33;color:var(--danger)}.favorite-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1.2rem;padding:6px;transition:color .12s,transform .12s}.favorite-btn:hover{color:var(--danger)}.favorite-btn.is-saved{color:#ff6b8a;transform:scale(1.1)}.card-fav-btn{position:absolute;right:12px;top:12px;z-index:5;background:#04101799;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.photo-count-badge{background:#041017b8;border-radius:8px;bottom:10px;color:var(--text);font-size:.78rem;font-weight:600;padding:4px 8px;position:absolute;right:10px}.card-photo-nav{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:32px;justify-content:center;opacity:0;position:absolute;top:50%;transform:translateY(-50%);transition:opacity .15s;width:32px;z-index:3}.listing-card:hover .card-photo-nav,.listing-card.is-browsing .card-photo-nav{opacity:1}.card-photo-prev{left:8px}.card-photo-next{right:8px}.card-photo-dots{bottom:8px;display:flex;gap:4px;justify-content:center;left:50%;position:absolute;transform:translate(-50%);z-index:3}.card-photo-dot{background:#fff6;border-radius:50%;height:6px;width:6px;transition:background .15s}.card-photo-dot.is-active{background:#fff}.card-photo-counter{color:#fff;font-size:.78rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.6)}.listing-card.is-browsing{z-index:2}.mobile-nav{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07111beb;border-top:1px solid var(--stroke);bottom:0;display:none;left:0;padding:8px 0 calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:60}.mobile-nav-items{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.mobile-nav-item{align-items:center;background:none;border:none;color:var(--muted);cursor:pointer;display:grid;font-size:.78rem;gap:4px;justify-items:center;padding:8px 0;text-decoration:none;transition:color .12s}.mobile-nav-item.is-active{color:var(--accent)}.mobile-nav-icon{font-size:1.3rem}.price-history{border-top:1px solid var(--stroke);padding-top:16px}.price-history h3{font-size:.9rem;margin:0 0 12px}.price-history ul{display:grid;gap:8px;list-style:none;margin:0;padding:0}.price-history li{color:var(--muted);font-size:.85rem}.price-history-date{color:var(--muted)}.price-history-change{font-size:.78rem;opacity:.7}.cta-row{align-items:center;display:flex;gap:12px;flex-wrap:wrap}.button-primary.is-outline{background:transparent;border:1px solid var(--accent);color:var(--accent)}.back-link{font-size:.9rem}.empty-state{color:var(--muted);line-height:1.7;padding:24px 0}.empty-state p{margin:0 0 8px}.skip-link{background:var(--accent);border-radius:8px;color:#041017;font-weight:700;left:50%;padding:12px 20px;position:fixed;top:-100px;transform:translate(-50%);z-index:999}.skip-link:focus{top:16px}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}*:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.filter-bar{display:grid;gap:12px}.filter-bar-row{align-items:center;display:flex;gap:12px;flex-wrap:wrap}.result-label{color:var(--muted);font-size:.9rem;white-space:nowrap}@keyframes pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes mediaFrameIn{0%{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes lightboxShellIn{0%{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1200px){.stats-grid,.listing-grid,.route-fallback-grid,.filters-grid,.two-column,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-view{grid-template-columns:1fr}.split-map{display:none}.split-list{max-height:none;overflow:visible}.split-list .listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 800px){.app-shell{padding:16px 16px 80px}.site-header,.panel-header,.detail-heading,.detail-map-copy,.pagination-bar,.slim-panel{align-items:start;flex-direction:column}.stats-grid,.filters-grid,.listing-grid,.route-fallback-grid,.two-column,.detail-grid,.split-list .listing-grid{grid-template-columns:1fr}.hero-copy h1{max-width:100%}.gallery-nav{display:none}.lightbox-nav{height:44px;width:44px}.gallery-stage-hud{align-items:start;flex-direction:column;gap:6px}.lightbox-backdrop{padding:12px}.lightbox-shell{border-radius:24px;padding:14px}.lightbox-toolbar{align-items:start;flex-direction:column}.lightbox-image{max-height:56vh}.mobile-nav,.sticky-cta{display:flex}.header-nav{display:none}.map-card-panel{bottom:0;left:0;right:0;top:auto;width:100%;height:45vh;border-right:none;border-top:1px solid var(--stroke);border-radius:20px 20px 0 0;transition:height .2s ease}.map-card-panel.is-collapsed{height:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:none}.map-panel-toggle{border-radius:12px 12px 0 0;height:36px;left:50%;top:auto;bottom:100%;transform:translate(-50%);width:56px}.map-card-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:12px;scroll-snap-type:x mandatory}.map-card-item{flex:0 0 280px;scroll-snap-align:start}.map-filter-bar{padding:8px 12px}.map-filter-row{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.map-filter-row::-webkit-scrollbar{display:none}.brand small{display:none}.site-header{border-radius:var(--radius-lg);padding:12px 16px;top:8px}.key-facts{gap:8px}.key-fact{min-width:80px;padding:10px 12px}}.listing-card-wrap{position:relative}.compare-toggle-btn{align-items:center;background:#07111bd9;border:1px solid var(--stroke);border-radius:var(--radius-md);color:var(--muted);cursor:pointer;display:flex;font-size:1rem;height:44px;justify-content:center;opacity:0;position:absolute;right:12px;bottom:12px;transition:opacity .15s ease,background .15s ease,color .15s ease;width:44px;z-index:2}.listing-card-wrap:hover .compare-toggle-btn,.listing-card-wrap:focus-within .compare-toggle-btn,.compare-toggle-btn.is-active{opacity:1}.compare-toggle-btn.is-active{background:#67d1ff2e;border-color:var(--accent);color:var(--accent)}.compare-toggle-btn:hover{background:#67d1ff1f;color:var(--accent)}.compare-cta-btn.is-active{background:#67d1ff24;border-color:var(--accent);color:var(--accent)}.compare-fab{align-items:center;background:linear-gradient(135deg,#67d1ff,#b6ff8a);border:none;border-radius:var(--radius-full);bottom:80px;box-shadow:0 8px 32px #0006;color:#041017;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;gap:8px;left:50%;padding:12px 24px;position:fixed;transform:translate(-50%);transition:box-shadow .15s ease,transform .15s ease;z-index:45}.compare-fab:hover{box-shadow:0 12px 40px #00000080;transform:translate(-50%) scale(1.04)}.compare-fab-icon{font-size:1.1rem}.compare-backdrop{background:#03080e99;top:0;right:0;bottom:0;left:0;position:fixed;z-index:44}.compare-drawer{background:#07111bf5;border-radius:28px 28px 0 0;border-top:1px solid var(--stroke);bottom:0;left:0;max-height:70vh;overflow:hidden;position:fixed;right:0;transform:translateY(100%);transition:transform .32s var(--ease-out);z-index:45}.compare-drawer.is-open{transform:translateY(0)}.compare-drawer-header{align-items:center;border-bottom:1px solid var(--stroke);display:flex;justify-content:space-between;padding:20px 24px 16px}.compare-drawer-header h2{font-size:1.15rem;margin:0}.compare-count{color:var(--muted);font-weight:400}.compare-drawer-actions{align-items:center;display:flex;gap:12px}.compare-close-btn{align-items:center;background:#ffffff0f;border:1px solid var(--stroke);border-radius:12px;color:var(--text);cursor:pointer;display:flex;font-size:1.3rem;height:40px;justify-content:center;transition:background .12s ease;width:40px}.compare-close-btn:hover{background:#ffffff1f}.compare-table-scroll{max-height:calc(70vh - 72px);overflow:auto;scrollbar-width:thin}.compare-table{border-collapse:collapse;min-width:100%;table-layout:fixed;width:max-content}.compare-table th,.compare-table td{padding:10px 16px;text-align:left;vertical-align:middle;white-space:nowrap}.compare-table tbody tr:nth-child(odd){background:#ffffff08}.compare-table tbody tr:nth-child(2n){background:transparent}.compare-label-col{background:#07111bf5;color:var(--muted);font-size:.82rem;font-weight:600;left:0;min-width:100px;position:sticky;text-transform:uppercase;letter-spacing:.04em;z-index:2}.compare-item-col{min-width:180px;vertical-align:top}.compare-cell{color:var(--text);font-size:.92rem;min-width:180px}.compare-item-header{display:flex;flex-direction:column;gap:8px;padding-bottom:8px}.compare-thumb{border-radius:12px;height:100px;object-fit:cover;width:100%}.compare-thumb--empty{align-items:center;background:var(--bg-soft);color:var(--muted);display:flex;font-size:.78rem;justify-content:center}.compare-item-title{color:var(--text);font-size:.82rem;font-weight:600;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-remove-btn{align-self:flex-start;background:#ff8e8e1a;border:1px solid rgba(255,142,142,.2);border-radius:8px;color:var(--danger);cursor:pointer;font-size:1rem;line-height:1;padding:4px 10px;transition:background .12s ease}.compare-remove-btn:hover{background:#ff8e8e33}.compare-actions-row td{border-top:1px solid var(--stroke);padding-top:14px}.compare-view-link{background:#ffffff0f;border:1px solid var(--stroke);border-radius:var(--radius-full);color:var(--text);display:inline-block;font-size:.82rem;font-weight:600;padding:8px 16px;text-decoration:none;transition:background .12s ease,color .12s ease}.compare-view-link:hover{background:#67d1ff1f;color:var(--accent)}@media (max-width: 800px){.compare-fab{bottom:72px}.compare-toggle-btn{opacity:1}.compare-table{min-width:auto}.compare-item-col,.compare-cell{min-width:150px}.compare-drawer-header{padding:16px 16px 12px}.compare-table th,.compare-table td{padding:8px 12px}}.graph-page{display:flex;flex-direction:column;height:calc(100vh - 60px);background:#0f172a;color:#e2e8f0}.graph-controls{padding:12px 16px;background:#1e293b;border-bottom:1px solid #334155}.graph-controls h2{margin:0 0 8px;font-size:18px;font-weight:600}.graph-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:13px}.graph-filters label{display:flex;align-items:center;gap:6px}.graph-filters input[type=range]{width:100px;accent-color:#3b82f6}.graph-filters input[type=text],.graph-filters select{background:#0f172a;border:1px solid #475569;border-radius:4px;color:#e2e8f0;padding:2px 6px;font-size:13px}.graph-stats{margin-top:6px;font-size:12px;color:#94a3b8}.graph-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:11px;color:#94a3b8}.legend-item{display:flex;align-items:center;gap:4px}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.graph-canvas-wrap{position:relative;flex:1;overflow:hidden}.graph-canvas-wrap canvas{display:block;width:100%;height:100%}.graph-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;color:#64748b}.graph-tooltip{position:absolute;background:#1e293b;border:1px solid #475569;border-radius:6px;padding:8px 10px;font-size:12px;line-height:1.4;pointer-events:none;z-index:10;max-width:260px;box-shadow:0 4px 12px #0006}.graph-tooltip strong{color:#f1f5f9}.tooltip-hint{margin-top:4px;color:#64748b;font-size:11px}:root{--color-green: #22c55e;--color-amber: #f59e0b;--color-red: #ef4444;--color-blue: #3b82f6}.geo-context{margin-top:1rem}.geo-context h3{margin:0 0 .75rem;font-size:1.1rem}.geo-scores-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin-bottom:.75rem}.geo-score-row{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.geo-score-label{min-width:80px;color:var(--text-muted, #888)}.geo-score-bar{flex:1;height:6px;background:var(--bg-muted, #2a2a2a);border-radius:3px;overflow:hidden}.geo-score-fill{height:100%;border-radius:3px;transition:width .3s ease}.geo-score-value{min-width:36px;text-align:right;font-weight:600;font-size:.8rem}.geo-risk-badge{display:inline-block;padding:.25rem .6rem;border-radius:4px;font-size:.8rem;margin:.25rem .25rem .25rem 0}.geo-risk-badge.is-warning{background:#f59e0b26;color:var(--color-amber)}.geo-risk-badge.is-good{background:#22c55e26;color:var(--color-green)}.geo-risk-badge.is-info{background:#3b82f626;color:var(--color-blue)}.geo-pois{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.75rem}.geo-poi-group{display:flex;flex-direction:column;gap:.15rem;font-size:.8rem}.geo-poi-group strong{font-size:.75rem;text-transform:uppercase;color:var(--text-muted, #888)}.geo-poi-count{color:var(--text-muted, #888);font-size:.75rem}.geo-poi-item{font-size:.78rem}.duplicates-panel{margin-top:1rem}.duplicates-panel h3{margin:0 0 .5rem;font-size:1rem}.duplicates-list{display:flex;flex-wrap:wrap;gap:.5rem}.duplicate-card{display:flex;gap:.5rem;align-items:center;padding:.4rem .75rem;background:var(--bg-muted, #1e1e1e);border-radius:6px;font-size:.82rem;text-decoration:none;color:inherit;transition:background .15s}.duplicate-card:hover{background:var(--bg-hover, #2a2a2a)}.duplicate-source{font-weight:600;text-transform:uppercase;font-size:.7rem;padding:.15rem .4rem;border-radius:3px;background:#3b82f626;color:var(--color-blue)}.duplicate-match{color:var(--text-muted, #888);font-size:.75rem}.enrichment-panel{margin-top:1rem}.enrichment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.enrichment-header h3{margin:0;font-size:1.1rem}.enrichment-running{font-size:.85rem;color:var(--color-blue);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.enrich-cards{display:flex;flex-direction:column;gap:.5rem}.enrich-card{border:1px solid var(--border, #333);border-radius:8px;overflow:hidden}.enrich-card-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.6rem .75rem;background:var(--bg-muted, #1e1e1e);border:none;color:inherit;cursor:pointer;font-size:.9rem;text-align:left}.enrich-card-header:hover{background:var(--bg-hover, #2a2a2a)}.enrich-card-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:#3b82f626;color:var(--color-blue);font-weight:700;font-size:.75rem}.enrich-card-title{flex:1;font-weight:500}.enrich-card-toggle{font-size:.7rem;color:var(--text-muted, #888)}.enrich-card-body{padding:.75rem;font-size:.85rem;line-height:1.5}.enrich-investment{display:flex;align-items:flex-start;gap:1rem}.enrich-score-circle{min-width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;background:#22c55e26;color:var(--color-green)}.enrich-score-circle[data-score="1"],.enrich-score-circle[data-score="2"],.enrich-score-circle[data-score="3"]{background:#ef444426;color:var(--color-red)}.enrich-score-circle[data-score="4"],.enrich-score-circle[data-score="5"],.enrich-score-circle[data-score="6"]{background:#f59e0b26;color:var(--color-amber)}.enrich-factors{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.enrich-factor{padding:.15rem .5rem;border-radius:3px;background:var(--bg-muted, #1e1e1e);font-size:.75rem}.enrich-price{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.enrich-price-badge{padding:.2rem .6rem;border-radius:4px;font-weight:600;font-size:.8rem;text-transform:uppercase}.enrich-price.is-good .enrich-price-badge{background:#22c55e26;color:var(--color-green)}.enrich-price.is-neutral .enrich-price-badge{background:#3b82f626;color:var(--color-blue)}.enrich-price.is-warning .enrich-price-badge{background:#ef444426;color:var(--color-red)}.enrich-price-confidence{font-size:.75rem;color:var(--text-muted, #888)}.enrich-price-range{font-weight:500}.enrich-price p{width:100%;margin:.25rem 0 0}.enrich-proscons{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.enrich-pros h4{color:var(--color-green);margin:0 0 .35rem;font-size:.85rem}.enrich-cons h4{color:var(--color-red);margin:0 0 .35rem;font-size:.85rem}.enrich-proscons ul{margin:0;padding-left:1.2rem}.enrich-proscons li{margin-bottom:.25rem;font-size:.82rem}.enrich-swot-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.enrich-swot-cell{padding:.5rem;border-radius:6px;font-size:.82rem}.enrich-swot-cell.is-green{background:#22c55e14}.enrich-swot-cell.is-red{background:#ef444414}.enrich-swot-cell.is-blue{background:#3b82f614}.enrich-swot-cell.is-amber{background:#f59e0b14}.enrich-swot-cell h4{margin:0 0 .35rem;font-size:.8rem;text-transform:uppercase}.enrich-swot-cell ul{margin:0;padding-left:1rem}.enrich-swot-cell li{margin-bottom:.25rem}.enrich-verdict{margin-top:.5rem;font-weight:500;font-style:italic}.enrich-risk-badge{display:inline-block;padding:.25rem .6rem;border-radius:4px;font-weight:600;font-size:.8rem;margin-bottom:.5rem}.enrich-risk-badge.is-good{background:#22c55e26;color:var(--color-green)}.enrich-risk-badge.is-warning{background:#f59e0b26;color:var(--color-amber)}.enrich-risk-badge.is-danger{background:#ef444426;color:var(--color-red)}.enrich-checklist{display:flex;flex-direction:column;gap:.4rem}.enrich-check-item{padding:.4rem .6rem;border-left:3px solid var(--border, #333);font-size:.82rem}.enrich-check-item.is-critical{border-color:var(--color-red)}.enrich-check-item.is-important{border-color:var(--color-amber)}.enrich-check-item.is-nice_to_have{border-color:var(--color-green)}.enrich-check-priority{font-size:.7rem;font-weight:600;text-transform:uppercase;margin-right:.5rem}.enrich-check-cat{font-size:.7rem;color:var(--text-muted, #888)}.enrich-check-item p{margin:.2rem 0 0}.enrich-check-item small{color:var(--text-muted, #888)}.enrich-tips{display:flex;flex-direction:column;gap:.4rem}.enrich-tip{padding:.4rem .6rem;border-left:3px solid var(--border, #333)}.enrich-tip.is-high{border-color:var(--color-red)}.enrich-tip.is-medium{border-color:var(--color-amber)}.enrich-tip.is-low{border-color:var(--color-green)}.enrich-tip strong{font-size:.85rem}.enrich-tip-cat{font-size:.7rem;color:var(--text-muted, #888);margin-left:.5rem}.enrich-tip p{margin:.15rem 0 0;font-size:.82rem}.enrich-vf-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.5rem}.enrich-quality-badge{padding:.2rem .6rem;border-radius:4px;font-weight:600;font-size:.8rem;text-transform:uppercase;white-space:nowrap}.enrich-quality-badge.is-luxury{background:#8b5cf626;color:#8b5cf6}.enrich-quality-badge.is-premium{background:#22c55e26;color:var(--color-green)}.enrich-quality-badge.is-standard{background:#3b82f626;color:var(--color-blue)}.enrich-quality-badge.is-economy{background:#f59e0b26;color:var(--color-amber)}.enrich-vf-flags ul{margin:0;padding-left:1rem}.enrich-vf-flags li{color:var(--color-red);margin-bottom:.2rem}.enrich-vf-section{margin-top:.35rem}.enrich-vf-section summary{cursor:pointer;font-size:.82rem;color:var(--text-muted, #888)}.enrich-vf-section ul{margin:.25rem 0 0;padding-left:1rem;font-size:.8rem}.enrich-raw{font-size:.75rem;background:var(--bg-muted, #1e1e1e);padding:.5rem;border-radius:4px;overflow-x:auto;max-height:300px}@media (max-width: 640px){.geo-scores-grid,.geo-pois,.enrich-proscons,.enrich-swot-grid{grid-template-columns:1fr}}
