
:root{--blue:#173a63;--gold:#c59b49;--ink:#1d2733;--muted:#667383;--bg:#f5f7fa}*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}
header{background:linear-gradient(120deg,#102c4c,#1e5683);color:#fff;padding:22px 5%}header a{color:#fff;text-decoration:none}
.brand{font-family:Georgia,serif;font-size:30px}.tag{opacity:.85}.wrap{max-width:1180px;margin:auto;padding:28px 20px}
.notice{background:#fff4d8;border-left:5px solid var(--gold);padding:14px 18px;margin:0 0 24px;border-radius:4px}
.hero{background:#fff;padding:42px;border-radius:10px;margin-bottom:24px;box-shadow:0 4px 20px #173a6312}.hero h1{font:42px Georgia,serif;margin:0 0 10px;color:var(--blue)}
.tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;background:#fff;padding:18px;border-radius:8px;margin-bottom:20px}.tools input,.tools select{width:100%;font:inherit;padding:12px;border:1px solid #ccd4dc;border-radius:5px}.results{color:var(--muted);margin:0 0 16px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}.card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 3px 14px #173a6315}
.card img{width:100%;height:210px;object-fit:cover;background:#dfe6ed}.card-body{padding:18px}.card h2{font:23px Georgia,serif;margin:0 0 8px}.card a{color:var(--blue);text-decoration:none}.price{color:#8a6423;font-size:20px;font-weight:bold}.address{color:var(--muted)}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px;margin:20px 0}.gallery img{width:100%;height:230px;object-fit:cover;border-radius:5px;background:#dfe6ed}.gallery img:first-child{height:468px;grid-row:span 2}
.detail{background:#fff;padding:28px;border-radius:8px}.detail h1{font:38px Georgia,serif;color:var(--blue);margin:0}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1px;background:#dfe6ed;margin:24px 0;border:1px solid #dfe6ed}.fact{background:#fff;padding:13px}.fact strong{display:block;color:var(--muted);font-size:13px}.desc{white-space:pre-line;font-size:18px}.contact{display:inline-block;background:var(--gold);color:#142b42;text-decoration:none;font-weight:bold;padding:12px 20px;border-radius:4px;margin-top:16px}footer{padding:35px 5%;background:#102c4c;color:#fff;margin-top:40px}
@media(max-width:700px){.hero{padding:25px}.hero h1,.detail h1{font-size:31px}.tools{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery img,.gallery img:first-child{height:210px;grid-row:auto}.gallery img:first-child{grid-column:span 2}.detail{padding:20px}}
