.sre-wrap{max-width:900px;margin:0 auto;padding:16px}
.sre{--sre-accent:#1a73e8;--sre-bg:#f5f7fa;--sre-bd:#e2e6ea;font-size:16px;line-height:1.6}
.sre img{max-width:100%;height:auto}
.sre-main img{width:100%;max-height:520px;object-fit:cover;border-radius:12px;display:block}
.sre-gallery .sre-thumbs{display:flex;gap:8px;margin-top:8px;overflow-x:auto}
.sre-gallery .sre-thumbs img{width:80px;height:60px;object-fit:cover;border-radius:6px;cursor:pointer;opacity:.6;flex:none}
.sre-gallery .sre-thumbs img.on,.sre-gallery .sre-thumbs img:hover{opacity:1}
.sre-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:20px 0 12px;flex-wrap:wrap}
.sre-head h1{margin:6px 0 0;font-size:1.8rem;line-height:1.25}
.sre-price{font-size:1.6rem;font-weight:700;color:var(--sre-accent)}
.sre-badge{display:inline-block;padding:2px 10px;border-radius:99px;font-size:.8rem;font-weight:600;color:#fff;background:#2e9d5b}
.sre-badge.sre-for-rent{background:#f39c12}
.sre-badge.sre-sold{background:#c0392b}
.sre-type{font-size:.85rem;color:#666;margin-left:4px}
.sre-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:10px;margin:12px 0 20px}
.sre-d{background:var(--sre-bg);border:1px solid var(--sre-bd);border-radius:10px;padding:10px 6px;text-align:center;display:flex;flex-direction:column}
.sre-i{font-size:1.4rem}
.sre-d small{color:#666}
.sre-box{background:var(--sre-bg);border:1px solid var(--sre-bd);border-radius:12px;padding:6px 16px;margin:20px 0}
.sre-phone{font-weight:600;letter-spacing:.5px}
.sre-btn{display:inline-block;background:var(--sre-accent);color:#fff!important;border:0;border-radius:8px;padding:8px 16px;cursor:pointer;text-decoration:none;font-size:.95rem}
.sre-btn:disabled{opacity:.6}
.sre-map{width:100%;height:320px;border:0;border-radius:12px}
.sre-grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}
.sre-card{display:block;border:1px solid #e2e6ea;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;background:#fff}
.sre-card img{width:100%;height:180px;object-fit:cover;display:block}
.sre-noimg{height:180px;background:#e9edf1}
.sre-card-b{padding:12px 14px}
.sre-card h3{margin:4px 0 8px;font-size:1.05rem}
.sre-card-d{display:flex;gap:10px;flex-wrap:wrap;font-size:.85rem}
.sre-card-d .sre-d{background:none;border:0;padding:0;flex-direction:row;gap:4px;align-items:center}
.sre-card-d .sre-i{font-size:1rem}
.sre-card-d small{display:none}
@media(max-width:600px){.sre-head h1{font-size:1.4rem}}

/* ---- Home / search / sections ---- */
.sre-home{max-width:1200px;margin:0 auto;padding:16px;box-sizing:border-box}
.sre-hero{background:linear-gradient(135deg,#0f3d6e,#1a73e8);color:#fff;border-radius:16px;padding:48px 20px;text-align:center;margin-bottom:32px}
.sre-hero h1{color:#fff;font-size:2.2rem;margin:0 0 20px}
.sre-hero-sm{padding:20px}
.sre-search{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;max-width:1000px;margin:0 auto;background:#fff;padding:14px;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.2)}
.sre-search input,.sre-search select{width:100%;padding:10px;border:1px solid #d5dae0;border-radius:8px;font-size:.95rem;box-sizing:border-box;color:#222;background:#fff}
.sre-search button{background:#e8590c;color:#fff;border:0;border-radius:8px;padding:10px 16px;font-size:1rem;font-weight:600;cursor:pointer}
.sre-search button:hover{background:#cf4f0a}
.sre-section{margin:40px 0}
.sre-sec-h{display:flex;justify-content:space-between;align-items:baseline;border-bottom:2px solid #e2e6ea;margin-bottom:18px;padding-bottom:6px}
.sre-sec-h h2{margin:0;font-size:1.5rem}
.sre-sec-h a{font-weight:600;text-decoration:none;color:#1a73e8}
.sre-card-img{position:relative}
.sre-card-img .sre-badge{position:absolute;top:10px;left:10px}
.sre-feat{position:absolute;top:10px;right:10px;background:#f1c40f;color:#222;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:99px}
.sre-loc{color:#666;font-size:.88rem;margin-bottom:6px}
.sre-card{transition:box-shadow .2s,transform .2s}
.sre-card:hover{box-shadow:0 8px 22px rgba(0,0,0,.12);transform:translateY(-2px)}
.sre-arch-title{margin:10px 0 20px}
.sre-pager{margin:30px 0;text-align:center}
@media(max-width:600px){.sre-hero h1{font-size:1.5rem}.sre-hero{padding:28px 12px}}
