Realestate Property Card Template
Preview
Edit
Download
Run
Download Options
HTML File
Download as .html file
CSS File
Download as .css file
JavaScript File
Download as .js file
Combined HTML
All code in one HTML file
Project ZIP
All files in a ZIP archive
Cancel
HTML
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Elite Properties | Premium Real Estate</title> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> </head> <body> <div class="container"> <!-- Hero Section --> <section class="hero"> <h1>Discover <span class="highlight">Exclusive</span> Real Estate Opportunities</h1> </section> <!-- Projects Grid --> <div class="projects-grid"> <!-- Project Card 1 --> <div class="project-card"> <div class="image-container"> <img src="https://images.unsplash.com/photo-1613977257363-707ba9348227?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1200&q=80" alt="Azure Towers Luxury Condominiums" class="project-image"> <div class="project-badge">Luxury</div> </div> <div class="card-content"> <h2 class="project-name">Azure Towers</h2> <p class="project-description">Waterfront luxury condominiums with panoramic ocean views, premium amenities, and 24/7 concierge service.</p> <div class="location"> <i class="fas fa-map-marker-alt location-icon"></i> <span>Miami Beach, Florida</span> </div> <div class="features"> <div class="feature"> <i class="fas fa-bed feature-icon"></i> <span class="feature-value">3-5</span> <span class="feature-label">Bedrooms</span> </div> <div class="feature"> <i class="fas fa-bath feature-icon"></i> <span class="feature-value">3-4</span> <span class="feature-label">Bathrooms</span> </div> <div class="feature"> <i class="fas fa-expand-arrows-alt feature-icon"></i> <span class="feature-value">3,200+</span> <span class="feature-label">Sq. Ft.</span> </div> </div> <a href="#" class="cta-button"> Explore Property <i class="fas fa-arrow-right button-icon"></i> </a> </div> </div> <!-- Project Card 2 --> <div class="project-card"> <div class="image-container"> <img src="https://plus.unsplash.com/premium_photo-1680721445448-33ed9d682c3a?w=500&auto=format&fit=crop&q=60&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxzZWFyY2h8OXx8ZXN0YXRlfGVufDB8fDB8fHww" alt="Verde Residences Eco-Living" class="project-image"> <div class="project-badge">Eco Living</div> </div> <div class="card-content"> <h2 class="project-name">Verde Residences</h2> <p class="project-description">Sustainable urban living with green spaces, renewable energy, smart home technology, and LEED Platinum certification.</p> <div class="location"> <i class="fas fa-map-marker-alt location-icon"></i> <span>Portland, Oregon</span> </div> <div class="features"> <div class="feature"> <i class="fas fa-bed feature-icon"></i> <span class="feature-value">2-4</span> <span class="feature-label">Bedrooms</span> </div> <div class="feature"> <i class="fas fa-bath feature-icon"></i> <span class="feature-value">2-3</span> <span class="feature-label">Bathrooms</span> </div> <div class="feature"> <i class="fas fa-expand-arrows-alt feature-icon"></i> <span class="feature-value">1,800+</span> <span class="feature-label">Sq. Ft.</span> </div> </div> <a href="#" class="cta-button"> Explore Property <i class="fas fa-arrow-right button-icon"></i> </a> </div> </div> <!-- Project Card 3 --> <div class="project-card"> <div class="image-container"> <img src="https://images.unsplash.com/photo-1580587771525-78b9dba3b914?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1200&q=80" alt="Summit Peak Luxury Villas" class="project-image"> <div class="project-badge">Premium</div> </div> <div class="card-content"> <h2 class="project-name">Summit Peak Villas</h2> <p class="project-description">Exclusive mountain retreat villas with private amenities, breathtaking alpine views, and ski-in/ski-out access.</p> <div class="location"> <i class="fas fa-map-marker-alt location-icon"></i> <span>Aspen, Colorado</span> </div> <div class="features"> <div class="feature"> <i class="fas fa-bed feature-icon"></i> <span class="feature-value">4-6</span> <span class="feature-label">Bedrooms</span> </div> <div class="feature"> <i class="fas fa-bath feature-icon"></i> <span class="feature-value">4-5</span> <span class="feature-label">Bathrooms</span> </div> <div class="feature"> <i class="fas fa-expand-arrows-alt feature-icon"></i> <span class="feature-value">4,500+</span> <span class="feature-label">Sq. Ft.</span> </div> </div> <a href="#" class="cta-button"> Explore Property <i class="fas fa-arrow-right button-icon"></i> </a> </div> </div> </div> </div> </body> </html>
CSS
:root { --primary-dark: #0F172A; --primary-light: #F8FAFC; --accent-gold: #C7A25E; --accent-gold-light: #E8D9B5; --gray-800: #1E293B; --gray-600: #475569; --gray-400: #94A3B8; --gray-200: #E2E8F0; --transition-smooth: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.1); --shadow-subtle: 0 4px 20px rgba(15, 23, 42, 0.05); --shadow-elevated: 0 12px 40px rgba(15, 23, 42, 0.1); --border-radius: 20px; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Inter', sans-serif; background: linear-gradient(135deg, #F8FAFC 0%, #F1F5F9 100%); color: var(--gray-800); line-height: 1.6; min-height: 100vh; padding: 40px 20px; position: relative; overflow-x: hidden; } body::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%2394a3b8' fill-opacity='0.03' fill-rule='evenodd'/%3E%3C/svg%3E"); opacity: 0.5; z-index: -1; } .container { max-width: 1280px; width: 100%; margin: 0 auto; position: relative; } /* Header */ .header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 70px; padding-top: 20px; } .logo { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 28px; font-weight: 700; color: var(--primary-dark); display: flex; align-items: center; gap: 10px; } .logo-icon { color: var(--accent-gold); font-size: 24px; } .nav-links { display: flex; gap: 40px; } .nav-link { text-decoration: none; color: var(--gray-600); font-weight: 500; font-size: 15px; transition: var(--transition-smooth); position: relative; } .nav-link:hover { color: var(--primary-dark); } .nav-link.active { color: var(--primary-dark); font-weight: 600; } .nav-link.active::after { content: ''; position: absolute; width: 6px; height: 6px; background: var(--accent-gold); border-radius: 50%; bottom: -10px; left: 50%; transform: translateX(-50%); } /* Hero Section */ .hero { text-align: center; max-width: 800px; margin: 0 auto 80px; } .hero h1 { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 3.5rem; font-weight: 700; line-height: 1.1; margin-bottom: 20px; color: var(--primary-dark); letter-spacing: -0.5px; } .hero h1 .highlight { color: var(--accent-gold); position: relative; } .hero h1 .highlight::after { content: ''; position: absolute; width: 100%; height: 8px; background-color: rgba(199, 162, 94, 0.15); bottom: 5px; left: 0; z-index: -1; border-radius: 4px; } .hero p { font-size: 1.125rem; color: var(--gray-600); max-width: 600px; margin: 0 auto; } /* Cards Grid */ .projects-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); gap: 40px; margin-bottom: 80px; } /* Project Card */ .project-card { background: white; border-radius: var(--border-radius); overflow: hidden; box-shadow: var(--shadow-subtle); transition: var(--transition-smooth); position: relative; height: 100%; display: flex; flex-direction: column; } .project-card::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, transparent 60%, rgba(15, 23, 42, 0.7)); z-index: 1; opacity: 0; transition: var(--transition-smooth); } .project-card:hover { transform: translateY(-12px); box-shadow: var(--shadow-elevated); } .project-card:hover::before { opacity: 1; } /* Image Container */ .image-container { height: 260px; overflow: hidden; position: relative; } .project-image { width: 100%; height: 100%; object-fit: cover; transition: var(--transition-smooth); } .project-card:hover .project-image { transform: scale(1.08); } .project-badge { position: absolute; top: 20px; right: 20px; background: var(--accent-gold); color: white; padding: 6px 14px; border-radius: 50px; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.5px; text-transform: uppercase; z-index: 2; } /* Card Content */ .card-content { padding: 28px; flex-grow: 1; display: flex; flex-direction: column; position: relative; z-index: 2; background: white; } .project-name { font-family: 'Plus Jakarta Sans', sans-serif; font-size: 1.75rem; font-weight: 700; margin-bottom: 12px; color: var(--primary-dark); line-height: 1.3; } .project-description { font-size: 1rem; color: var(--gray-600); margin-bottom: 20px; line-height: 1.6; flex-grow: 1; } /* Location */ .location { display: flex; align-items: center; margin-bottom: 28px; color: var(--gray-600); font-size: 0.95rem; } .location-icon { margin-right: 10px; color: var(--accent-gold); font-size: 1.1rem; } /* Features */ .features { display: flex; justify-content: space-between; margin-bottom: 28px; padding: 20px 0; border-top: 1px solid var(--gray-200); border-bottom: 1px solid var(--gray-200); } .feature { display: flex; flex-direction: column; align-items: center; text-align: center; } .feature-icon { color: var(--accent-gold); font-size: 1.25rem; margin-bottom: 8px; } .feature-value { font-weight: 700; font-size: 1.1rem; color: var(--primary-dark); } .feature-label { font-size: 0.85rem; color: var(--gray-600); margin-top: 2px; } /* CTA Button */ .cta-button { display: inline-flex; align-items: center; justify-content: center; background: var(--primary-dark); color: white; text-decoration: none; padding: 16px 32px; border-radius: 12px; font-weight: 600; font-size: 0.95rem; transition: var(--transition-smooth); border: 2px solid var(--primary-dark); position: relative; overflow: hidden; z-index: 1; } .cta-button::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: var(--accent-gold); transition: left 0.4s ease; z-index: -1; } .cta-button:hover::before { left: 0; } .cta-button:hover { border-color: var(--accent-gold); transform: translateY(-2px); } .button-icon { margin-left: 10px; font-size: 0.9rem; transition: transform 0.3s ease; } .cta-button:hover .button-icon { transform: translateX(4px); } /* Footer */ .footer { text-align: center; padding-top: 60px; border-top: 1px solid var(--gray-200); color: var(--gray-600); font-size: 0.9rem; } .footer-links { display: flex; justify-content: center; gap: 30px; margin-bottom: 20px; } .footer-link { color: var(--gray-600); text-decoration: none; transition: color 0.2s ease; } .footer-link:hover { color: var(--accent-gold); } /* Responsive */ @media (max-width: 1100px) { .hero h1 { font-size: 3rem; } .projects-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 768px) { .header { flex-direction: column; gap: 25px; margin-bottom: 50px; } .nav-links { gap: 25px; } .hero { margin-bottom: 60px; } .hero h1 { font-size: 2.5rem; } .projects-grid { grid-template-columns: 1fr; gap: 30px; } .project-card { max-width: 500px; margin: 0 auto; } } @media (max-width: 480px) { .hero h1 { font-size: 2rem; } .features { flex-wrap: wrap; gap: 15px; } .feature { width: calc(50% - 15px); } .card-content { padding: 24px; } }
JavaScript
Output Preview
Desktop
Mobile
Fullscreen