/* ImmoEgypte - CSS personnalisé */

/* Police */
* { font-family: 'Inter', system-ui, sans-serif; }
.font-arabic { font-family: 'Cairo', sans-serif; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #c9a227; border-radius: 10px; }

/* Transitions smooth */
html { scroll-behavior: smooth; }

/* Line clamp */
.line-clamp-1 { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* Image hover */
.img-zoom { overflow: hidden; }
.img-zoom img { transition: transform 0.5s ease; }
.img-zoom:hover img { transform: scale(1.08); }

/* Animations */
@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to   { opacity: 1; transform: translateY(0); }
}
.animate-fade-in { animation: fadeInUp 0.6s ease-out both; }

/* Input field commun */
.input-field {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    font-size: 0.875rem;
    outline: none;
    background-color: white;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.input-field:focus {
    border-color: #c9a227;
    box-shadow: 0 0 0 3px rgba(201, 162, 39, 0.15);
}

/* Bouton principal */
.btn-gold {
    background: linear-gradient(135deg, #c9a227, #e8b030);
    color: white;
    font-weight: 600;
    padding: 0.75rem 1.5rem;
    border-radius: 0.75rem;
    border: none;
    cursor: pointer;
    transition: opacity 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}
.btn-gold:hover { opacity: 0.9; }

/* Navy gradient */
.navy-gradient {
    background: linear-gradient(135deg, #0f1c2e 0%, #1e3a5f 100%);
}

/* Badge statut */
.badge { display: inline-flex; align-items: center; padding: 0.25rem 0.625rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 600; }

/* Card propriété hover */
.prop-card { transition: box-shadow 0.3s, transform 0.2s; }
.prop-card:hover { box-shadow: 0 20px 40px rgba(0,0,0,0.12); transform: translateY(-2px); }

/* Placeholder image */
img[src=""], img:not([src]) {
    background: #f3f4f6;
}

/* Tailwind custom */
.text-gold-400 { color: #e8b030; }
.text-gold-500 { color: #c9a227; }
.text-gold-600 { color: #b8902e; }
.text-navy-900 { color: #0f1c2e; }
.bg-gold-500  { background-color: #c9a227; }
.bg-navy-900  { background-color: #0f1c2e; }
.border-gold-500 { border-color: #c9a227; }
