     body, html {
            margin: 0;
            padding: 0;
            font-family: 'Poppins', sans-serif;
            background-color: #f4f4f4;
        }
        .carrusel-container {
            width: 80%;
            max-width: 1200px;
            height: 60vh;
            margin: 20px auto 0; /* Centrado superior con margen */
            overflow: hidden;
            border-radius: 15px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
            position: relative;
        }
        .carousel-inner img {
            width: 100%;
            height: 60vh;
            object-fit: cover;
            object-position: center;
            /*filter: brightness(80%); /* Oscurece ligeramente para mejor legibilidad */
        }
        .carousel-item {
            position: relative;
        }
        .carousel-caption {
            background: rgba(0, 0, 0, 0.6); /* Fondo semi-transparente */
            border-radius: 10px;
            padding: 15px;
            bottom: 20px;
            text-align: center;
        }
        .carousel-caption h5 {
            font-size: 1.5rem;
            font-weight: 700;
            color: #fff;
        }
        .carousel-caption p {
            font-size: 1rem;
            color: #ddd;
        }
        .carousel-control-prev, .carousel-control-next {
            width: 5%;
            opacity: 0;
            transition: opacity 0.3s ease;
        }
        .carrusel-container:hover .carousel-control-prev,
        .carrusel-container:hover .carousel-control-next {
            opacity: 0.8;
        }
        .carousel-control-prev-icon,
        .carousel-control-next-icon {
            background-color: rgba(0, 0, 0, 0.5);
            border-radius: 50%;
            padding: 10px;
        }
        .carousel-indicators {
            bottom: 10px;
        }
        .carousel-indicators button {
            background-color: #fff;
            opacity: 0.5;
            width: 12px;
            height: 12px;
            border-radius: 100%;
        }
        .carousel-indicators .active {
            opacity: 1;
            background-color: #000000;
        }
       .programa-card {
    display: flex;
    border-radius: 15px;
    overflow: hidden; /* importante para que la imagen no sobresalga */
    max-width: 800px;
    width: 90%;
    margin: 20px auto;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
    background-color: #fff;
}

.programa-img {
    flex: 0 0 220px; /* ancho fijo de la columna de la imagen */
    height: 100%;    /* ocupa toda la altura del card */
}

.programa-img img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* rellena la columna sin deformar */
}

.programa-info {
    flex: 1; /* ocupa el resto del espacio */
    padding: 15px;
}

.programa-info h2 {
    font-size: 1.3rem;
    margin-bottom: 5px;
}

.programa-info p {
    font-size: 0.9rem;
    margin-bottom: 5px;
}



        @keyframes fadeInUp {
            0% { opacity: 0; transform: translateY(30px); }
            100% { opacity: 1; transform: translateY(0); }
        }
        @media (max-width: 767.98px) {
            .carrusel-container {
                width: 95%;
                height: 40vh;
            }
            .carousel-inner img {
                height: 40vh;
                object-fit: cover;
            }
            .carousel-caption h5 {
                font-size: 1.2rem;
            }
            .carousel-caption p {
                font-size: 0.9rem;
            }
        .programa-card {
        flex-direction: column; /* imagen arriba, info abajo */
        align-items: stretch;
        text-align: left;
    }

    .programa-img {
        flex: none;
        width: 100%;
        height: 175px; /* altura de la banda */
        overflow: hidden;
    }

    .programa-img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        object-position: center;
    }

    .programa-info {
        padding: 10px;
    }

    .programa-info h2 {
        font-size: 1.2rem;
    }

    .programa-info p {
        font-size: 0.85rem;
    }
        }