@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,400;9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--bg:#0b0b0d;--panel:#16161a;--panel-2:#1d1d22;--border:#2b2b31;--gold:#c7a05c;--gold-light:#e7cd8e;--gold-dim:#8a7038;--text:#edeae2;--text-dim:#a5a29a;--text-muted:#6e6c66;--danger:#b9583f}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Manrope,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4{font-family:Fraunces,serif;font-weight:500;letter-spacing:-.01em}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.hidden{display:none!important}::selection{background:var(--gold-dim);color:#000}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--panel-2);border-radius:6px}header{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:22px 5%;background:linear-gradient(180deg,rgba(11,11,13,.9),rgba(11,11,13,0));transition:background .3s,padding .3s,border-color .3s;border-bottom:1px solid transparent}header.scrolled{background:rgba(11,11,13,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:14px 5%;border-bottom:1px solid var(--border)}.logo{display:flex;flex-direction:column;line-height:1}.logo .mark{font-family:Fraunces,serif;font-size:1.6rem;color:var(--gold-light);letter-spacing:.04em}.logo .sub{font-size:.62rem;letter-spacing:.28em;color:var(--text-muted);margin-top:4px}nav.links{display:flex;gap:38px;align-items:center}nav.links a{font-size:.9rem;color:var(--text-dim);transition:color .2s;position:relative}nav.links a:hover{color:var(--gold-light)}nav.links a.admin-link{color:var(--text-muted);font-size:.78rem;border:1px solid var(--border);padding:8px 16px;border-radius:2px}nav.links a.admin-link:hover{border-color:var(--gold-dim);color:var(--gold-light)}.burger{display:none;flex-direction:column;gap:5px;background:none;border:none}.burger span{width:24px;height:1.5px;background:var(--text)}.hero{position:relative;height:100vh;min-height:640px;display:flex;align-items:center;justify-content:center;overflow:hidden}#bg-canvas{width:100%;height:100%;z-index:0}#bg-canvas,.hero:after{position:absolute;inset:0}.hero:after{content:"";background:radial-gradient(ellipse at 50% 40%,rgba(11,11,13,0) 0,rgba(11,11,13,.55) 60%,rgba(11,11,13,.95) 100%);z-index:1;pointer-events:none}.hero-content{position:relative;z-index:2;text-align:center;max-width:760px;padding:0 24px}.hero-content .line{width:64px;height:1px;background:var(--gold);margin:0 auto 28px}.hero-content h1{font-size:clamp(2.4rem,6vw,4.6rem);color:var(--text);font-weight:400}.hero-content h1 em{font-style:italic;color:var(--gold-light)}.hero-content p{margin-top:22px;font-size:1.05rem;color:var(--text-dim);max-width:520px;margin-left:auto;margin-right:auto}.hero-cta{margin-top:40px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.btn{padding:15px 32px;border-radius:2px;font-size:.88rem;letter-spacing:.03em;transition:all .25s;display:inline-block;border:1px solid transparent}.btn-primary{background:var(--gold);color:#100d06;font-weight:600}.btn-primary:hover{background:var(--gold-light);transform:translateY(-2px)}.btn-ghost{border-color:var(--border);color:var(--text-dim)}.btn-ghost:hover{border-color:var(--gold-dim);color:var(--gold-light)}.scroll-cue{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:2;text-align:center}.scroll-cue .dash{width:1px;height:36px;background:linear-gradient(var(--gold),transparent);margin:0 auto 8px;animation:pulse-dash 2s ease-in-out infinite}.scroll-cue span{font-size:.68rem;letter-spacing:.2em;color:var(--text-muted)}@keyframes pulse-dash{0%,to{opacity:.3}50%{opacity:1}}section{padding:90px 5%}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:44px;flex-wrap:wrap}.section-head h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:400}.section-head p{color:var(--text-dim);max-width:420px;font-size:.94rem}.filter-bar{display:flex;gap:14px;flex-wrap:wrap;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:3px;padding:18px 22px;margin-bottom:48px}.filter-bar input,.filter-bar select{background:var(--panel-2);border:1px solid var(--border);color:var(--text);padding:12px 14px;border-radius:2px;font-family:inherit;font-size:.86rem}.filter-bar input:focus,.filter-bar select:focus{outline:none;border-color:var(--gold-dim)}.filter-bar input#search{flex:1 1;min-width:180px}.filter-count{margin-left:auto;font-size:.82rem;color:var(--text-muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:28px;gap:28px}.card{background:var(--panel);border:1px solid var(--border);border-radius:3px;overflow:hidden;transition:transform .25s,border-color .25s;cursor:pointer;display:flex;flex-direction:column}.card:hover{transform:translateY(-4px);border-color:var(--gold-dim)}.card-photo{position:relative;height:220px;background:var(--panel-2);overflow:hidden}.card-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.card:hover .card-photo img{transform:scale(1.06)}.card-photo .no-photo{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:.8rem;letter-spacing:.08em}.badges{position:absolute;top:12px;left:12px;display:flex;gap:8px}.badge{font-size:.68rem;letter-spacing:.05em;padding:5px 11px;border-radius:2px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.badge-type-sale{background:rgba(199,160,92,.9);color:#100d06}.badge-type-rent{background:rgba(29,29,34,.85);color:var(--gold-light);border:1px solid var(--gold-dim)}.card-body{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1 1}.card-body .cat{font-size:.72rem;letter-spacing:.08em;color:var(--gold-dim)}.card-body h3{font-size:1.2rem;font-weight:500;color:var(--text)}.card-body .loc{font-size:.84rem;color:var(--text-dim);gap:6px}.card-body .loc,.card-foot{display:flex;align-items:center}.card-foot{margin-top:auto;justify-content:space-between;padding-top:14px;border-top:1px solid var(--border)}.card-foot .price{font-family:Fraunces,serif;font-size:1.3rem;color:var(--gold-light)}.card-foot .meta{font-size:.78rem;color:var(--text-muted)}.empty-state{grid-column:1/-1;text-align:center;padding:70px 20px;color:var(--text-muted)}.empty-state h3{color:var(--text-dim);font-weight:400;margin-bottom:10px}.contact-section{background:var(--panel);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;grid-gap:60px;gap:60px;align-items:center}.contact-wrap h2{font-size:clamp(1.8rem,3vw,2.4rem);margin-bottom:16px}.contact-wrap p{color:var(--text-dim);margin-bottom:26px;max-width:440px}.contact-info{display:flex;flex-direction:column;gap:16px}.contact-info div{font-size:.92rem;color:var(--text-dim)}.contact-info span{color:var(--gold-light);display:block;font-size:.72rem;letter-spacing:.1em;margin-bottom:3px}.contact-form{display:flex;flex-direction:column;gap:14px}.contact-form input,.contact-form textarea{background:var(--panel-2);border:1px solid var(--border);color:var(--text);padding:14px;border-radius:2px;font-family:inherit;font-size:.88rem;width:100%}.contact-form textarea{resize:vertical;min-height:100px}footer{padding:44px 5% 30px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}footer .fmark{font-family:Fraunces,serif;color:var(--gold-light);font-size:1.1rem}footer .fmeta{font-size:.78rem;color:var(--text-muted)}footer .flinks{display:flex;gap:20px;font-size:.8rem;color:var(--text-muted)}footer .flinks a:hover{color:var(--gold-light)}.overlay{position:fixed;inset:0;background:rgba(6,6,7,.86);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}.modal{background:var(--panel);border:1px solid var(--border);border-radius:4px;max-width:920px;width:100%;max-height:88vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:16px;right:16px;z-index:5;width:38px;height:38px;background:rgba(11,11,13,.7);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);font-size:1.1rem}.modal-gallery{position:relative;height:380px;background:var(--panel-2)}.modal-gallery img{width:100%;height:100%;object-fit:cover;display:block}.gallery-dots{position:absolute;bottom:16px;left:0;right:0;display:flex;justify-content:center;gap:8px}.gallery-dots span{width:7px;height:7px;border-radius:50%;background:hsla(0,0%,100%,.35);cursor:pointer}.gallery-dots span.active{background:var(--gold)}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;background:rgba(11,11,13,.55);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);font-size:1rem}.gallery-nav.prev{left:14px}.gallery-nav.next{right:14px}.modal-body{padding:32px 34px 38px}.modal-body .badges-row{display:flex;gap:10px;margin-bottom:16px}.modal-body h2{font-size:1.7rem;margin-bottom:8px;font-weight:500}.modal-body .loc{color:var(--text-dim);font-size:.92rem;margin-bottom:20px}.modal-body .price-row{display:flex;align-items:baseline;gap:20px;margin-bottom:22px;flex-wrap:wrap}.modal-body .price{font-family:Fraunces,serif;font-size:2rem;color:var(--gold-light)}.spec-row{display:flex;gap:28px;flex-wrap:wrap;margin-bottom:24px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.spec-row div{font-size:.85rem;color:var(--text-dim)}.spec-row span{display:block;color:var(--text);font-size:1rem;margin-top:3px;font-family:Fraunces,serif}.modal-body .desc{color:var(--text-dim);font-size:.95rem;line-height:1.75}@media (max-width:860px){nav.links{position:fixed;top:0;right:0;bottom:0;width:78%;max-width:320px;background:var(--panel);flex-direction:column;align-items:flex-start;padding:100px 30px;gap:26px;transform:translateX(100%);transition:transform .3s;border-left:1px solid var(--border)}nav.links.open{transform:translateX(0)}.burger{display:flex;z-index:60}}#admin-view{min-height:100vh;padding-top:100px}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:0 5% 30px;flex-wrap:wrap;gap:16px}.admin-header h1{font-size:1.9rem;font-weight:400}.admin-header .tag{font-size:.72rem;color:var(--gold-dim);letter-spacing:.12em;display:block;margin-bottom:6px}.admin-wrap{padding:0 5% 80px;display:grid;grid-template-columns:400px 1fr;grid-gap:32px;gap:32px;align-items:flex-start}.admin-panel{background:var(--panel);border:1px solid var(--border);border-radius:3px;padding:26px;position:-webkit-sticky;position:sticky;top:100px}.admin-panel h3{font-size:1.1rem;margin-bottom:18px;font-weight:500}.field{margin-bottom:16px}.field label{display:block;font-size:.78rem;color:var(--text-dim);margin-bottom:7px;letter-spacing:.02em}.field input,.field select,.field textarea{width:100%;background:var(--panel-2);border:1px solid var(--border);color:var(--text);padding:12px 14px;border-radius:2px;font-family:inherit;font-size:.88rem}.field textarea{min-height:90px;resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.photo-drop{border:1.5px dashed var(--border);border-radius:3px;padding:24px;text-align:center;cursor:pointer;transition:border-color .2s;color:var(--text-muted);font-size:.82rem}.photo-drop:hover{border-color:var(--gold-dim)}.photo-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.photo-preview .thumb{position:relative;width:60px;height:60px;border-radius:2px;overflow:hidden}.photo-preview .thumb img{width:100%;height:100%;object-fit:cover}.photo-preview .thumb button{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:50%;background:rgba(0,0,0,.7);color:#fff;border:none;font-size:.6rem;line-height:1}.admin-submit{width:100%;margin-top:8px;padding:14px;background:var(--gold);color:#100d06;border:none;border-radius:2px;font-weight:600;font-size:.9rem}.admin-submit:hover{background:var(--gold-light)}.admin-cancel{width:100%;margin-top:8px;padding:12px;background:transparent;border:1px solid var(--border);color:var(--text-dim);border-radius:2px;font-size:.85rem}.admin-list{display:flex;flex-direction:column;gap:12px}.admin-row{background:var(--panel);border:1px solid var(--border);border-radius:3px;padding:14px 18px;display:flex;align-items:center;gap:16px}.admin-row .thumb{width:64px;height:64px;border-radius:2px;overflow:hidden;background:var(--panel-2);flex-shrink:0}.admin-row .thumb img{width:100%;height:100%;object-fit:cover}.admin-row .info{flex:1 1;min-width:0}.admin-row .info h4{font-size:.98rem;font-weight:500;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-row .info .meta{font-size:.78rem;color:var(--text-muted)}.admin-row .price{font-family:Fraunces,serif;color:var(--gold-light);font-size:1rem;white-space:nowrap}.admin-row .actions{display:flex;gap:8px}.icon-btn{width:34px;height:34px;border-radius:2px;border:1px solid var(--border);background:var(--panel-2);color:var(--text-dim);display:flex;align-items:center;justify-content:center;font-size:.85rem}.icon-btn:hover{border-color:var(--gold-dim);color:var(--gold-light)}.icon-btn.del:hover{border-color:var(--danger);color:var(--danger)}.login-box{background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:40px;width:100%;max-width:380px}.login-box h3{font-size:1.4rem;margin-bottom:6px;font-weight:500}.login-box p.hint{font-size:.8rem;color:var(--text-muted);margin-bottom:24px}.login-err{color:var(--danger);font-size:.8rem;margin-top:4px;min-height:16px}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);background:var(--panel-2);border:1px solid var(--gold-dim);color:var(--gold-light);padding:14px 26px;border-radius:3px;font-size:.85rem;z-index:200;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}