Spaces:
Running
Running
| <html lang="fr"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Catalogue | ÉléganCiel Immobilier</title> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <script src="https://unpkg.com/lucide@latest"></script> | |
| <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=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Montserrat:wght@300;400;500;600&display=swap" rel="stylesheet"> | |
| <link rel="stylesheet" href="styles.css"> | |
| <script> | |
| tailwind.config = { | |
| theme: { | |
| extend: { | |
| colors: { | |
| primary: '#002349', | |
| gold: '#957C3D', | |
| 'gold-light': '#B8A05F', | |
| }, | |
| fontFamily: { | |
| serif: ['Cormorant Garamond', 'serif'], | |
| sans: ['Montserrat', 'sans-serif'], | |
| } | |
| } | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body class="font-sans text-gray-800 bg-white"> | |
| <!-- Navigation --> | |
| <nav id="navbar" class="fixed w-full z-50 transition-all duration-500 py-6 px-6 lg:px-12 bg-primary/95 backdrop-blur-xl"> | |
| <div class="max-w-7xl mx-auto flex justify-between items-center"> | |
| <a href="index.html" class="flex items-center space-x-3 group"> | |
| <div class="relative w-12 h-12"> | |
| <svg viewBox="0 0 60 60" class="w-full h-full fill-current text-white group-hover:text-gold transition-colors duration-300"> | |
| <path d="M10 25 L30 10 L50 25 L50 50 L10 50 Z" fill="none" stroke="currentColor" stroke-width="2"/> | |
| <path d="M20 50 L20 35 L30 28 L40 35 L40 50" fill="none" stroke="currentColor" stroke-width="2"/> | |
| <text x="18" y="48" font-size="14" font-family="serif" fill="currentColor">EC</text> | |
| </svg> | |
| </div> | |
| <div class="text-white group-hover:text-gold transition-colors duration-300"> | |
| <span class="font-serif text-2xl font-semibold tracking-wide block">ÉLÉGANCIEL</span> | |
| <span class="text-xs tracking-[0.3em] uppercase opacity-80">Immobilier</span> | |
| </div> | |
| </a> | |
| <div class="hidden lg:flex items-center space-x-8"> | |
| <a href="index.html" class="text-white/70 hover:text-gold transition-colors text-sm tracking-widest uppercase font-medium">Accueil</a> | |
| <a href="catalogue.html" class="text-gold text-sm tracking-widest uppercase font-medium">Catalogue</a> | |
| <a href="estimation.html" class="text-white/70 hover:text-gold transition-colors text-sm tracking-widest uppercase font-medium">Estimation</a> | |
| <a href="conciergerie.html" class="text-white/70 hover:text-gold transition-colors text-sm tracking-widest uppercase font-medium">Conciergerie</a> | |
| <a href="about.html" class="text-white/70 hover:text-gold transition-colors text-sm tracking-widest uppercase font-medium">À Propos</a> | |
| <a href="contact.html" class="bg-gold hover:bg-gold-light text-white px-8 py-3 transition-all duration-300 text-sm tracking-widest uppercase font-medium">Contact</a> | |
| </div> | |
| <button id="mobile-menu-btn" class="lg:hidden text-white hover:text-gold transition-colors"> | |
| <i data-lucide="menu" class="w-8 h-8"></i> | |
| </button> | |
| </div> | |
| <div id="mobile-menu" class="lg:hidden hidden absolute top-full left-0 w-full bg-primary/95 backdrop-blur-xl border-t border-gold/30 py-6 px-6"> | |
| <div class="flex flex-col space-y-4 text-center"> | |
| <a href="index.html" class="text-white hover:text-gold py-2 text-sm tracking-widest uppercase">Accueil</a> | |
| <a href="catalogue.html" class="text-gold py-2 text-sm tracking-widest uppercase">Catalogue</a> | |
| <a href="estimation.html" class="text-white hover:text-gold py-2 text-sm tracking-widest uppercase">Estimation</a> | |
| <a href="conciergerie.html" class="text-white hover:text-gold py-2 text-sm tracking-widest uppercase">Conciergerie</a> | |
| <a href="contact.html" class="text-gold font-semibold py-2 text-sm tracking-widest uppercase">Contact</a> | |
| </div> | |
| </div> | |
| </nav> | |
| <!-- Header --> | |
| <section class="pt-32 pb-12 px-6 lg:px-12 bg-gradient-to-b from-primary to-primary/90"> | |
| <div class="max-w-7xl mx-auto"> | |
| <span class="text-gold text-sm tracking-[0.3em] uppercase font-medium mb-2 block">Collections Exclusives</span> | |
| <h1 class="font-serif text-5xl lg:text-6xl text-white font-light mb-4">Nos Propriétés</h1> | |
| <p class="text-white/70 max-w-2xl">Découvrez notre sélection rigoureuse des plus belles demeures, du penthouse parisien au château provençal.</p> | |
| </div> | |
| </section> | |
| <!-- Filters --> | |
| <section class="sticky top-20 z-40 bg-white border-b border-gray-100 shadow-sm"> | |
| <div class="max-w-7xl mx-auto px-6 lg:px-12 py-4"> | |
| <div class="flex flex-wrap gap-4 items-center justify-between"> | |
| <div class="flex flex-wrap gap-2"> | |
| <button class="filter-btn active px-4 py-2 border border-gold bg-gold/10 text-primary text-sm tracking-wider transition-all" data-filter="all">Tout</button> | |
| <button class="filter-btn px-4 py-2 border border-gray-200 text-gray-600 hover:border-gold hover:text-gold text-sm tracking-wider transition-all" data-filter="chateau">Châteaux</button> | |
| <button class="filter-btn px-4 py-2 border border-gray-200 text-gray-600 hover:border-gold hover:text-gold text-sm tracking-wider transition-all" data-filter="appartement">Appartements</button> | |
| <button class="filter-btn px-4 py-2 border border-gray-200 text-gray-600 hover:border-gold hover:text-gold text-sm tracking-wider transition-all" data-filter="villa">Villas</button> | |
| <button class="filter-btn px-4 py-2 border border-gray-200 text-gray-600 hover:border-gold hover:text-gold text-sm tracking-wider transition-all" data-filter="maison">Maisons</button> | |
| </div> | |
| <div class="flex items-center space-x-4 text-sm text-gray-500"> | |
| <span>12 propriétés</span> | |
| <select class="bg-transparent border border-gray-200 px-3 py-2 focus:outline-none focus:border-gold"> | |
| <option>Prix croissant</option> | |
| <option>Prix décroissant</option> | |
| <option>Surface</option> | |
| <option>Nouveautés</option> | |
| </select> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Properties Grid --> | |
| <section class="py-12 px-6 lg:px-12 bg-gray-50 min-h-screen"> | |
| <div class="max-w-7xl mx-auto"> | |
| <div class="grid md:grid-cols-2 lg:grid-cols-3 gap-8" id="properties-grid"> | |
| <!-- Property 1 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="chateau"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/estate/800x600/10" alt="Château" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <div class="absolute top-4 left-4 bg-gold text-white px-3 py-1 text-xs tracking-widest uppercase">Exclusive</div> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">12 500 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Château des Lumières</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Provence, France | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 12 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 8 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 850 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| <!-- Property 2 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="appartement"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/cityscape/800x600/11" alt="Appartement" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <div class="absolute top-4 left-4 bg-primary text-white px-3 py-1 text-xs tracking-widest uppercase">Coup de cœur</div> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">8 900 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Penthouse Panoramique</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Tour Eiffel, Paris 16ème | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 4 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 3 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 320 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| <!-- Property 3 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="villa"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/nature/800x600/12" alt="Villa" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">6 750 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Villa Bella Vista</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Cap d'Antibes, Côte d'Azur | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 6 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 4 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 450 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| <!-- Property 4 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="maison"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/architecture/800x600/13" alt="Maison" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <div class="absolute top-4 left-4 bg-gold text-white px-3 py-1 text-xs tracking-widest uppercase">Nouveauté</div> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">4 200 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Maison de Maître</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Bordeaux, Gironde | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 5 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 3 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 380 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| <!-- Property 5 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="appartement"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/workspace/800x600/14" alt="Loft" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">3 850 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Loft d'Architecte</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Canal Saint-Martin, Paris | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 3 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 2 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 280 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| <!-- Property 6 --> | |
| <article class="property-card group bg-white shadow-sm hover:shadow-xl transition-all duration-500" data-category="chateau"> | |
| <div class="relative overflow-hidden aspect-[4/3]"> | |
| <img src="https://static.photos/aerial/800x600/15" alt="Domaine" class="w-full h-full object-cover transition-transform duration-700 group-hover:scale-110"> | |
| <div class="absolute top-4 left-4 bg-gold text-white px-3 py-1 text-xs tracking-widest uppercase">Exclusive</div> | |
| <button class="absolute top-4 right-4 w-8 h-8 bg-white/90 rounded-full flex items-center justify-center hover:bg-gold hover:text-white transition-all"> | |
| <i data-lucide="heart" class="w-4 h-4"></i> | |
| </button> | |
| <div class="absolute bottom-0 left-0 right-0 p-4 bg-gradient-to-t from-primary/90 to-transparent"> | |
| <p class="text-white font-serif text-2xl">15 900 000 €</p> | |
| </div> | |
| </div> | |
| <div class="p-6"> | |
| <h3 class="font-serif text-xl text-primary mb-2">Domaine Viticole</h3> | |
| <p class="text-gray-500 text-sm mb-3 flex items-center"> | |
| <i data-lucide="map-pin" class="w-3 h-3 mr-1"></i> | |
| Saint-Émilion, Bordeaux | |
| </p> | |
| <div class="flex items-center space-x-4 text-sm text-gray-600 border-t border-gray-100 pt-4"> | |
| <span class="flex items-center"><i data-lucide="bed" class="w-4 h-4 mr-1 text-gold"></i> 8 ch.</span> | |
| <span class="flex items-center"><i data-lucide="bath" class="w-4 h-4 mr-1 text-gold"></i> 6 sdb</span> | |
| <span class="flex items-center"><i data-lucide="maximize" class="w-4 h-4 mr-1 text-gold"></i> 1200 m²</span> | |
| </div> | |
| </div> | |
| </article> | |
| </div> | |
| <div class="mt-12 text-center"> | |
| <button class="border border-primary text-primary hover:bg-primary hover:text-white px-8 py-3 transition-all duration-300 text-sm tracking-widest uppercase font-medium"> | |
| Charger plus de propriétés | |
| </button> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Newsletter --> | |
| <section class="py-16 px-6 lg:px-12 bg-primary"> | |
| <div class="max-w-4xl mx-auto text-center"> | |
| <h3 class="font-serif text-3xl text-white mb-4">Soyez informé en exclusivité</h3> | |
| <p class="text-white/70 mb-6">Recevez nos nouveautés et coup de cœur avant tout le monde.</p> | |
| <form class="flex flex-col sm:flex-row gap-4 max-w-md mx-auto"> | |
| <input type="email" placeholder="Votre adresse email" class="flex-1 px-4 py-3 bg-white/10 border border-white/20 text-white placeholder-white/50 focus:outline-none focus:border-gold"> | |
| <button type="submit" class="bg-gold hover:bg-gold-light text-white px-6 py-3 transition-colors text-sm tracking-widest uppercase font-medium"> | |
| S'inscrire | |
| </button> | |
| </form> | |
| </div> | |
| </section> | |
| <!-- Footer --> | |
| <footer class="bg-primary text-white py-16 px-6 lg:px-12 border-t border-white/10"> | |
| <div class="max-w-7xl mx-auto text-center"> | |
| <div class="flex items-center justify-center space-x-3 mb-6"> | |
| <svg viewBox="0 0 60 60" class="w-12 h-12 fill-current text-gold"> | |
| <path d="M10 25 L30 10 L50 25 L50 50 L10 50 Z" fill="none" stroke="currentColor" stroke-width="2"/> | |
| <text x="18" y="48" font-size="14" font-family="serif" fill="currentColor">EC</text> | |
| </svg> | |
| </div> | |
| <p class="text-white/60 text-sm">© 2024 ÉléganCiel Immobilier. L'Excellence à votre service.</p> | |
| </div> | |
| </footer> | |
| <script src="script.js"></script> | |
| <script> | |
| lucide.createIcons(); | |
| // Filter functionality | |
| const filterBtns = document.querySelectorAll('.filter-btn'); | |
| const properties = document.querySelectorAll('.property-card'); | |
| filterBtns.forEach(btn => { | |
| btn.addEventListener('click', () => { | |
| filterBtns.forEach(b => { | |
| b.classList.remove('bg-gold/10', 'border-gold', 'text-primary'); | |
| b.classList.add('border-gray-200', 'text-gray-600'); | |
| }); | |
| btn.classList.remove('border-gray-200', 'text-gray-600'); | |
| btn.classList.add('bg-gold/10', 'border-gold', 'text-primary'); | |
| const filter = btn.getAttribute('data-filter'); | |
| properties.forEach(prop => { | |
| if (filter === 'all' || prop.getAttribute('data-category') === filter) { | |
| prop.style.display = 'block'; | |
| setTimeout(() => prop.style.opacity = '1', 10); | |
| } else { | |
| prop.style.opacity = '0'; | |
| setTimeout(() => prop.style.display = 'none', 300); | |
| } | |
| }); | |
| }); | |
| }); | |
| </script> | |
| </body> | |
| </html> |