/* ===== PAGE BIENS ===== */
body {
    font-family: "Mulish", sans-serif;
    color: #222;
}

.page-title {
    text-align: center !important;
    margin: -19px 0 30px 0 !important
}

.page-title h1 {
  font-size: 2.3rem !important;
  color: #02048d !important;
  font-weight: 100;
}

.page-title p {
    font-size: 1.2rem !important;
}

/* Conteneur des biens */
.bien-container {
    max-width: 1400px !important;
    margin: 0 auto 50px auto !important;
    padding: 0 15px !important;
}

.bien-item {
    border: 2px solid #2a2ba3 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-bottom: 30px !important;
    position: relative !important;
    transition: transform 0.3s, box-shadow 0.3s !important;
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    height: 457px !important;
    width: 100% !important; /* Force largeur */
}

.bien-item:hover {
    transform: scale(1.02) !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.25) !important;
}

/* Carousel images */
.bien-carousel img {
    width: 100% !important;
    height: 280px !important;
    object-fit: cover !important;
}

/* Détails en dessous de l'image */
.bien-details {
    padding: 20px !important;
    background: #f9f9f9 !important;
    flex-grow: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 4px;
}

.bien-details h5 {
    font-size: 19pxs !important;
    color: #160e6b   !important;
    margin-bottom: 10px !important;
}

.bien-details p {
    margin: 0 !important;
    font-size: 1rem !important;
}

.bien-details .price {
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: #160e6b !important;
    margin-top: 10px !important;
}

/* Hover overlay */
.hover-details {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,0.8) !important;
    color: #fff !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease-in-out !important;
}

.bien-item:hover .hover-details,
.hover-details:hover {
    opacity: 1 !important;
    pointer-events: auto !important;
}

.hover-details button {
    background-color: #15326b !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 25px !important;
    border-radius: 6px !important;
    font-size: 1.1rem !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
}

.hover-details button:hover {
    background-color: #181d7b !important;
}

/* Carousel controls */
.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-color: rgba(2,4,141,0.8) !important;
    border-radius: 50% !important;
    width: 40px !important;
    height: 40px !important;
}

/* Responsive */
@media (max-width: 1200px) {
    .bien-item {
        height: 480px !important;
    }
}

@media (max-width: 992px) {
    .bien-item {
        height: 460px !important;
    }
}

@media (max-width: 768px) {
    .bien-item {
        height: auto !important;
    }
    .bien-details h5 {
        font-size: 1.2rem !important;
    }
    .bien-details .price {
        font-size: 1.3rem !important;
    }
}

@media (max-width: 576px) {
    .bien-details h5 {
        font-size: 1.1rem !important;
    }
    .bien-details .price {
        font-size: 1.2rem !important;
    }
}
