:root{--bg:#f3f6fc;--panel:rgba(255,255,255,.7);--line:rgba(255,255,255,.78);--text:#202d5c;--muted:#72809b;--accent:#078e89;--shadow:0 18px 50px rgba(32,55,100,.10);color-scheme:light}html[data-theme=dark]{--bg:#0a1222;--panel:rgba(27,42,66,.7);--line:rgba(195,220,255,.14);--text:#edf4ff;--muted:#adbbd0;--accent:#52ddd0;--shadow:0 18px 50px rgba(0,0,0,.30);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.6 system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--bg);color:var(--text)}body:before{content:'';position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 10% 5%,rgba(85,143,255,.2),transparent 50%),radial-gradient(ellipse at 90% 12%,rgba(39,208,180,.19),transparent 45%);pointer-events:none}button,input,select{font:inherit}button{cursor:pointer}.site{max-width:1240px;margin:auto;padding:24px}.glass{background:var(--panel);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px}.brand{display:flex;align-items:center;color:var(--text);text-decoration:none}.brand img{width:210px;max-width:55vw;display:block;background:white;border-radius:12px;padding:6px}.brand strong{font-size:22px}#themeToggle{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:11px 20px;border-radius:99px}.hero{padding:85px 16px 65px;text-align:center}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:800;color:var(--accent)}.hero h1{font-size:clamp(40px,6vw,76px);line-height:1.08;letter-spacing:-2px;margin:20px 0}.hero h1 em{color:var(--accent);font-style:normal}.hero p{max-width:650px;margin:auto;color:var(--muted);font-size:17px}.filters{padding:18px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px}.filters input,.filters select{width:100%;min-width:0;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--panel);color:var(--text);outline:none}.filters input:focus,.filters select:focus{border-color:var(--accent)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:46px 0 22px}.section-heading h2{margin:4px 0 0;font-size:27px}#count{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{overflow:hidden;min-width:0}.photo{height:240px;background:rgba(120,150,175,.15);position:relative}.photo img{width:100%;height:100%;object-fit:cover;display:block}.badge{position:absolute;top:16px;left:16px;background:rgba(255,255,255,.92);color:#1d3450;padding:5px 14px;border-radius:99px;font-weight:750;font-size:12px}.card-body{padding:22px}.card h3{margin:0;font-size:20px}.location,.description{color:var(--muted)}.price{color:var(--accent);font-size:23px;font-weight:850;margin:12px 0}.specs{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;margin:12px 0}.description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:48px}.btn{display:inline-block;border:0;border-radius:13px;padding:12px 19px;background:#078e89;color:white;font-weight:750;text-decoration:none}.btn:hover{filter:brightness(1.1)}.empty{grid-column:1/-1;text-align:center;padding:45px;color:var(--muted)}footer{text-align:center;padding:75px 0 30px;color:var(--muted)}footer strong{color:var(--text)}footer p{margin:3px 0}.detail-dialog{width:min(850px,94vw);max-height:90vh;padding:26px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:24px;box-shadow:0 25px 80px rgba(0,0,0,.3)}.detail-dialog::backdrop{background:rgba(0,0,0,.6);backdrop-filter:blur(8px)}.close-btn{float:right;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:50%;width:38px;height:38px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.gallery img{width:100%;height:160px;object-fit:cover;border-radius:12px}.detail-description{white-space:pre-wrap}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}}@media(max-width:600px){.site{padding:12px}.grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.hero{padding:65px 12px 45px}.header{padding:12px}.brand img{width:165px}.photo{height:260px}.gallery{grid-template-columns:1fr 1fr}.gallery img{height:125px}}