:root{--bg:#f7f5f1;--text:#1c1917;--text-soft:#57534e;--text-mute:#a8a29e;--border:#1c19171a;--accent:#25d366;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--serif:"Cormorant Garamond", "Times New Roman", serif;font-family:var(--sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px;line-height:1.55}*{box-sizing:border-box}html,body,#root{background:var(--bg);margin:0;padding:0}#root{width:100%;min-height:100vh}h1,h2,h3{letter-spacing:-.02em;color:var(--text);margin:0;font-weight:400}p{margin:0}a{color:inherit;text-decoration:none}::selection{background:#1c191726}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#1c191733;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#1c191759}.bg-canvas{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.canvas-wrap{width:100%;height:100%;position:absolute;inset:0}.canvas-wrap>div{width:100%!important;height:100%!important}.canvas-wrap canvas{width:100%!important;height:100%!important;display:block!important}.canvas-error{font-family:var(--mono,monospace);color:#b91c1c;z-index:10;background:#fee2e2;flex-direction:column;justify-content:center;align-items:center;padding:24px;font-size:13px;display:flex;position:absolute;inset:0}.canvas-error pre{white-space:pre-wrap;text-align:center;max-width:80vw;margin-top:12px}.bg-fallback{background:linear-gradient(#cfd8ff 0%,#f7f5f1 100%);position:absolute;inset:0}.bg-veil{background:radial-gradient(ellipse 60% 80% at 28% 55%, #00000052 0%, transparent 60%), linear-gradient(180deg, #0000001a 0%, #0000 25%, #f7f5f100 70%, #f7f5f173 92%, var(--bg) 100%);pointer-events:none;position:absolute;inset:0}.page{z-index:1;position:relative}.topnav{z-index:50;-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);background:#f7f5f1c7;justify-content:space-between;align-items:center;padding:18px 5vw;display:flex;position:fixed;top:0;left:0;right:0}.topnav .brand{font-family:var(--serif);letter-spacing:-.01em;font-size:22px;font-weight:500;line-height:1}.topnav .brand small{font-family:var(--sans);letter-spacing:4px;color:var(--text-mute);text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:500;display:block}.topnav nav{color:var(--text-soft);gap:36px;font-size:14px;display:flex}.topnav nav a:hover{color:var(--text)}.topnav .cta{background:var(--accent);color:#fff;letter-spacing:.02em;border-radius:999px;padding:10px 22px;font-size:13px;font-weight:500;transition:transform .18s,box-shadow .18s}.topnav .cta:hover{transform:translateY(-1px);box-shadow:0 12px 28px -10px #25d36680}@media (width<=768px){.topnav nav{display:none}.topnav{padding:14px 5vw}}.hero{z-index:2;align-items:center;min-height:100vh;padding:0 8vw;display:flex;position:relative}.hero-line{pointer-events:auto;max-width:760px}.hero-kicker{letter-spacing:6px;text-transform:uppercase;color:#ffffffeb;text-shadow:0 2px 16px #0000008c,0 1px 2px #00000059;margin-bottom:26px;font-size:11px;font-weight:600;display:inline-block}.hero h1{font-family:var(--serif);color:#fff;text-shadow:0 4px 40px #0000008c,0 2px 8px #00000073,0 1px 2px #0006;margin:0 0 36px;font-size:clamp(48px,7vw,102px);font-weight:500;line-height:1.02}.hero h1 em{color:#ffffffd9;font-style:italic;font-weight:400}.hero-cta{color:#0f1a3c;letter-spacing:.04em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border-radius:999px;align-items:center;gap:10px;padding:14px 30px;font-size:14px;font-weight:600;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.hero-cta:hover{background:#fff;transform:translateY(-1px);box-shadow:0 14px 32px -10px #0006}.search-bar{-webkit-backdrop-filter:blur(20px)saturate(140%);z-index:2;background:#ffffff6b;border-top:1px solid #ffffff80;border-bottom:1px solid #fff6;padding:40px 5vw;position:relative}.search-inner{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:20px;max-width:1200px;margin:0 auto;display:grid}.search-field{flex-direction:column;gap:8px;display:flex}.search-field label{color:#0f1a3c;letter-spacing:2.5px;text-transform:uppercase;text-shadow:0 1px 4px #fff9;font-size:11px;font-weight:600}.search-field select{appearance:none;color:var(--text);cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23475569' d='M6 8L0 0h12z'/%3E%3C/svg%3E") right 14px center no-repeat;border:none;border-radius:3px;padding:14px 36px 14px 16px;font-family:inherit;font-size:14px}.search-actions{flex-direction:column;gap:10px;display:flex}.btn-search{color:#fff;letter-spacing:.04em;cursor:pointer;background:#c9a961;border:none;border-radius:3px;padding:14px 32px;font-family:inherit;font-size:14px;font-weight:500;transition:background .18s}.btn-search:hover{background:#b89651}.btn-advanced{color:#0f1a3c;cursor:pointer;background:#fffffff2;border:1px solid #0f1a3c26;border-radius:3px;padding:12px 32px;font-family:inherit;font-size:13px;font-weight:500;transition:background .18s,border-color .18s}.btn-advanced:hover{background:#f1f5f9;border-color:#0f1a3c66}@media (width<=1024px){.search-inner{grid-template-columns:1fr 1fr}.search-actions{flex-direction:row;grid-column:span 2}.search-actions button{flex:1}}@media (width<=600px){.search-inner{grid-template-columns:1fr}.search-actions{flex-direction:column;grid-column:span 1}}.listings{z-index:2;-webkit-backdrop-filter:blur(6px)saturate(110%);background:#f7f5f1c7;padding:12vh 8vw;position:relative}.listings-header{max-width:1200px;margin:0 auto 64px}.listings-header .label{letter-spacing:6px;text-transform:uppercase;color:var(--text-mute);font-size:11px;font-weight:500}.listings-header h2{font-family:var(--serif);letter-spacing:-.02em;margin:14px 0 18px;font-size:clamp(36px,4.5vw,60px);font-weight:500;line-height:1.05}.listings-header h2 em{color:var(--text-soft);font-style:italic;font-weight:400}.listings-header h2{text-shadow:0 2px 14px #f7f5f1e6}.listings-header p{color:var(--text);text-shadow:0 1px 8px #f7f5f1e6;max-width:60ch;font-size:17px;font-weight:400;line-height:1.65}.listings-header .label{text-shadow:0 1px 6px #f7f5f1f2}.listings-grid{grid-template-columns:repeat(3,1fr);gap:28px;max-width:1200px;margin:0 auto;display:grid}@media (width<=980px){.listings-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.listings-grid{grid-template-columns:1fr}}.listing-card{border:1px solid var(--border);background:#fff;border-radius:6px;transition:transform .25s,box-shadow .25s;overflow:hidden}.listing-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -20px #0f1a3c40}.listing-img{background:#1f2937;height:220px;overflow:hidden}.listing-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.listing-card:hover .listing-img img{transform:scale(1.04)}.listing-body{padding:22px 24px 26px}.listing-tag{letter-spacing:3.5px;text-transform:uppercase;color:var(--text-mute);margin-bottom:10px;font-size:10px;font-weight:500}.listing-card h3{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:8px;font-size:24px;font-weight:500}.listing-detail{color:var(--text-soft);margin-bottom:18px;font-size:14px;font-weight:300}.listing-price{color:#0f1a3c;font-size:18px;font-weight:500}.listings-cta{text-align:center;max-width:1200px;margin:56px auto 0}.listings-cta a.ghost{color:var(--text);border-bottom:1px solid var(--text);padding-bottom:4px;font-size:14px;font-weight:500;transition:opacity .18s;display:inline-block}.listings-cta a.ghost:hover{opacity:.6}.cta-band{z-index:2;-webkit-backdrop-filter:blur(14px);text-align:center;color:#fff;background:#0f1a3cc7;padding:14vh 8vw;position:relative}.cta-band h2{font-family:var(--serif);letter-spacing:-.02em;color:#fff;margin-bottom:18px;font-size:clamp(36px,5vw,64px);font-weight:500}.cta-band h2 em{color:#c9a961;font-style:italic;font-weight:400}.cta-band p{color:#ffffffb3;margin-bottom:36px;font-size:17px;font-weight:300}.cta-band a.primary{background:var(--accent);color:#fff;letter-spacing:.02em;border-radius:999px;padding:16px 36px;font-size:15px;font-weight:500;transition:transform .18s,box-shadow .18s;display:inline-block}.cta-band a.primary:hover{transform:translateY(-1px);box-shadow:0 14px 32px -10px #25d36699}.site-footer{z-index:2;background:var(--bg);border-top:1px solid var(--border);color:var(--text-mute);flex-wrap:wrap;justify-content:space-between;gap:16px;padding:32px 8vw;font-size:13px;display:flex;position:relative}
