#hero {
    height: 600px;
}

#hero .carousel-item {
    height: 100vh;
    position: relative;
}

#hero img {
    height: 100%;
    object-fit: cover;
}

/* overlay sombre */
#hero .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
}

/* texte */


#hero .carousel-caption {
    top: 25%;
    transform: translateY(-50%);
    bottom: auto;
    text-align: left;
    max-width: 600px;
}

#hero h1 {
    font-size: 3rem;
    font-weight: bold;
    color: #fff;
}

#hero p {
    color: #ddd;
}


/* Articles*/


/* Conteneur principal */
.course-item {
    display: flex;
    border: 1px solid #eee;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    transition: 0.3s;
}

/* Effet hover */
.course-item:hover {
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* Image à gauche */
.course-img {
    width: 250px;
    flex-shrink: 0;
}

.course-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Contenu à droite */
.course-content {
    flex: 1;
    padding: 20px;
}

/* Catégorie (BONUS) */
.category {
    font-size: 12px;
    color: #0d6efd;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 5px;
}

/* Titre */
.course-content h3 {
    font-size: 20px;
    margin-bottom: 10px;
}

.course-content h3 a {
    text-decoration: none;
    color: #333;
}

.course-content h3 a:hover {
    color: #0d6efd;
}

/* Description */
.description {
    color: #555;
    font-size: 14px;
}

/* Limite description */
.description-limit-text {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Limite titre */
.title-limit-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Bouton lire plus */
.read-more {
    display: inline-flex;
    align-items: center;
    color: #0d6efd;
    text-decoration: none;
    margin-top: 10px;
    font-weight: 500;
}

.read-more i {
    margin-left: 5px;
}

/* Date */
.text-muted {
    font-size: 13px;
}

/* Responsive */
@media (max-width: 768px) {
    .course-item {
        flex-direction: column;
    }

    .course-img {
        width: 100%;
        height: 200px;
    }
}


/* Image verticle*/

.custom-img {
    max-width: 100%;  /* pas plus large que le parent */
    max-height: 300px; /* limite la hauteur */
    object-fit: contain; /* garde la totalité de l’image visible */
}
