:root{--ink:#1d2b28;--brand:#0f6b5c;--accent:#f2a93b;--bg:#f6f5f1;--line:#ddd8cc}
*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg);padding-bottom:70px}
.wrap{max-width:1140px;margin:0 auto;padding:0 16px}img{max-width:100%;height:auto;display:block}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.top{background:var(--brand);color:#fff;position:sticky;top:0;z-index:5}.top .wrap{display:flex;justify-content:space-between;align-items:center;height:56px}
.brand{color:#fff;text-decoration:none;font-weight:800;font-size:1.1rem}.brand span{color:var(--accent)}.brand small{font-weight:400;opacity:.8}
.btn{display:inline-block;background:var(--accent);color:#1d2b28;font-weight:700;border:0;border-radius:8px;padding:12px 20px;text-decoration:none;cursor:pointer;font-size:1rem}.btn.sm{padding:8px 12px;font-size:.9rem}
.btn:focus-visible,button:focus-visible,a:focus-visible,input:focus,select:focus,textarea:focus{outline:3px solid var(--accent);outline-offset:2px}
.gallery{margin:16px 0}.hero{position:relative;padding:0;border:0;width:100%;cursor:zoom-in;background:none}.hero img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px}
.count{position:absolute;right:10px;bottom:10px;background:#000a;color:#fff;padding:3px 10px;border-radius:20px;font-size:.85rem}
.thumbs{display:flex;gap:8px;overflow-x:auto;margin-top:8px}.thumbs button{flex:0 0 96px;padding:0;border:3px solid transparent;border-radius:6px;background:none;cursor:pointer}.thumbs button[aria-current=true]{border-color:var(--brand)}
.layout{display:grid;gap:24px}section{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:16px}
.headline{border-top:5px solid var(--brand)}.price{font-size:2rem;font-weight:800;margin:0;color:var(--brand)}.price small{font-size:.9rem;color:#555;font-weight:400}
h1{font-size:1.4rem;margin:.3em 0}h2{font-size:1.25rem;margin-top:0}.addr{margin:0;color:#444}
.facts{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 0}.facts li{background:var(--bg);border-radius:6px;padding:8px;font-size:.95rem}.facts b{display:block;font-size:.75rem;text-transform:uppercase;color:#555}
.features{columns:2;padding-left:20px}.features li{break-inside:avoid;margin-bottom:4px}
.rooms{width:100%;border-collapse:collapse}.rooms th,.rooms td{text-align:left;padding:8px 4px;border-bottom:1px solid var(--line);vertical-align:top}.rooms th{width:45%}
.note{font-size:.85rem;color:#555}.investor{background:#eef6f3}.steps li{margin-bottom:8px}
.map{width:100%;height:300px;border:0;border-radius:8px}video{width:100%;height:auto}
.card form{display:grid;gap:12px}label{display:grid;gap:4px;font-weight:600;font-size:.95rem}
input,select,textarea{font:inherit;padding:10px;border:1px solid #aaa;border-radius:6px;width:100%}.hp{display:none}
.foot{background:var(--ink);color:#ddd;font-size:.85rem;padding:16px 0}
.mobilecta{position:fixed;left:16px;right:16px;bottom:12px;text-align:center;z-index:6;box-shadow:0 4px 14px #0004}
dialog{border:0;padding:0;background:#000;max-width:96vw;max-height:94vh;color:#fff}dialog::backdrop{background:#000d}dialog img{max-height:86vh;margin:auto}#lbCap{text-align:center;margin:6px}
dialog button{position:absolute;background:#0008;color:#fff;border:0;font-size:2.4rem;width:48px;height:48px;cursor:pointer;border-radius:50%}.x{top:8px;right:8px}.prev{left:8px;top:45%}.next{right:8px;top:45%}
@media(min-width:900px){body{padding-bottom:0}.mobilecta{display:none}.layout{grid-template-columns:1fr 360px}.side .card{position:sticky;top:72px}h1{font-size:1.8rem}.facts{grid-template-columns:repeat(4,1fr)}
.gallery{display:grid;grid-template-columns:1fr 200px;gap:8px}.thumbs{flex-direction:column;margin:0;max-height:560px;overflow-y:auto}.thumbs button{flex:0 0 auto}}
@media(max-width:480px){.features{columns:1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}html{scroll-behavior:smooth}

.calc{border-top:5px solid var(--accent)}.calcgrid{display:grid;gap:12px;grid-template-columns:1fr}
.dep{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}
.seg{display:flex;border:1px solid #aaa;border-radius:6px;overflow:hidden}.seg label{display:flex;align-items:center;justify-content:center;padding:10px 14px;cursor:pointer;font-weight:600;flex:1}
.seg input{position:absolute;opacity:0;width:1px}.seg label:has(input:checked){background:var(--brand);color:#fff}.seg label:has(input:focus-visible){outline:3px solid var(--accent)}
input[type=range]{padding:0;accent-color:var(--brand)}
.results{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.results div{background:var(--bg);border-radius:6px;padding:10px}.results b{display:block;font-size:.75rem;text-transform:uppercase;color:#555}.results span{font-weight:700;font-size:1.1rem}.results .big{font-size:1.6rem;color:var(--brand)}
.rent{font-weight:700;padding:10px;border-radius:6px;background:#eef6f3;margin:12px 0}.rent.more{background:#fdf1df}
@media(min-width:600px){.calcgrid{grid-template-columns:1fr 1fr}.results{grid-template-columns:repeat(4,1fr)}}
.wide{grid-column:1/-1}.lbl{display:block;font-weight:600;font-size:.95rem;margin-bottom:4px}.seg.deals{flex-wrap:wrap}.seg.deals label{flex:1 1 30%;font-size:.9rem;padding:9px 6px}.dealinfo{font-size:.85rem;background:var(--bg);border-radius:6px;padding:8px;margin:8px 0 0}
.borrow{margin:0;font-size:1.05rem}.results.one{grid-template-columns:1fr}
[hidden]{display:none!important}
