* { margin:0; padding:0; box-sizing:border-box; font-family:Arial, sans-serif; }
body { background:#f4f4f4; color:#333; }
.container { max-width:1200px; margin:auto; padding:20px; }
.hero { background:linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('https://images.unsplash.com/photo-1493238792200-83f8a2d76f3b') center/cover; color:white; text-align:center; padding:100px 20px; }
.hero h1 { font-size:3rem; }
.btn { background:#ff1a1a; color:white; padding:12px 24px; border:none; border-radius:8px; cursor:pointer; text-decoration:none; display:inline-block; margin:10px; }
.filters { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:20px; }
.filters input, .filters select { padding:10px; border-radius:8px; border:1px solid #ccc; flex:1; min-width:150px; }
.grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:20px; }
.card { background:white; border-radius:15px; overflow:hidden; box-shadow:0 4px 12px rgba(0,0,0,0.1); cursor:pointer; transition:0.3s; }
.card:hover { transform:translateY(-5px); box-shadow:0 8px 20px rgba(0,0,0,0.2); }
.card img { width:100%; height:200px; object-fit:cover; }
.card-content { padding:15px; }
.sold-badge { background:#ccc; color:#666; padding:4px 8px; border-radius:4px; font-size:0.8rem; }
.featured-badge { background:#ffd700; color:#b8860b; padding:4px 8px; border-radius:4px; font-size:0.8rem; }