/* ==========================================================================
   IMMOPLATEFORME — surcharges de marque par-dessus Bootstrap 5
   Bootstrap 5.3 expose ses tokens en variables CSS : on les redéfinit ici,
   sans recompiler Sass. Reste du site = classes Bootstrap standard.
   ========================================================================== */

:root, [data-bs-theme=light] {
    --bs-primary: #C1502E;
    --bs-primary-rgb: 193, 80, 46;
    --bs-secondary: #2E4057;
    --bs-secondary-rgb: 46, 64, 87;
    --bs-success: #3E7C4A;
    --bs-link-color: #C1502E;
    --bs-link-color-rgb: 193, 80, 46;
    --bs-link-hover-color: #9c3f24;
    --bs-link-hover-color-rgb: 156, 63, 36;
    --bs-body-font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
    --bs-body-bg: #FBFAF8;
}

h1, h2, h3, h4, .navbar-brand, .display-1, .display-2, .display-3, .display-4, .display-5 {
    font-family: 'Bricolage Grotesque', 'Inter', system-ui, sans-serif;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.navbar-brand { font-size: 1.35rem; }

.brand-mark {
    display: inline-block; width: 22px; height: 22px;
    background: linear-gradient(135deg, var(--bs-primary), #E0A548);
    clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
    border-radius: 3px;
}

.btn { font-weight: 600; }
.btn-primary { --bs-btn-color: #fff; }

.font-monetaire { font-family: 'JetBrains Mono', 'Courier New', monospace; }

/* --- Héros --- */
.hero-section {
    background: linear-gradient(180deg, #FFF7F0 0%, var(--bs-body-bg) 100%);
    border-bottom: 1px solid var(--bs-border-color);
}
.hero-eyebrow {
    font-family: 'JetBrains Mono', monospace; font-size: .78rem; letter-spacing: .1em;
    text-transform: uppercase; color: var(--bs-primary); font-weight: 600;
}
.motif-heros { max-width: 420px; height: auto; }
.motif-horizon { display: block; width: 100%; height: 34px; color: var(--bs-primary); opacity: .18; }

/* --- Cartes bien --- */
.carte-bien-image { aspect-ratio: 4/3; object-fit: cover; background: #EFEAE2; }
.card-bien { transition: box-shadow .15s ease, transform .15s ease; }
.card-bien:hover { box-shadow: 0 .75rem 1.75rem rgba(27,22,17,.12); transform: translateY(-3px); }
.card-bien .card-title a { color: inherit; text-decoration: none; }
.card-bien .card-title a:hover { color: var(--bs-primary); }

/* --- Tableaux de bord --- */
.sidebar-dashboard { background: #fff; min-height: calc(100vh - 73px); border-right: 1px solid var(--bs-border-color); }
.sidebar-dashboard .nav-link { color: var(--bs-secondary-color); border-radius: .5rem; }
.sidebar-dashboard .nav-link.active, .sidebar-dashboard .nav-link:hover { background: #F3ECE5; color: var(--bs-primary); }

/* --- Divers --- */
.carte-stat .display-value { font-family: 'JetBrains Mono', monospace; font-weight: 700; color: var(--bs-primary); }
.badge-vente { background: var(--bs-primary) !important; }
.badge-location { background: var(--bs-secondary) !important; }
.link-opacity-100-hover:hover { --bs-link-opacity: 1; }
