/* === CEAMIB DIGITAL COURSES - ESTILOS PARA EL CATÁLOGO === */

.ceamib-dc-catalogue-list {
    /* --- CAMBIOS PRINCIPALES AQUÍ --- */
    display: flex;          /* 1. Cambiamos de Grid a Flexbox */
    flex-wrap: wrap;        /* 2. Permitimos que las tarjetas pasen a la siguiente línea */
    justify-content: center;/* 3. AHORA SÍ, esto centrará las tarjetas en cada fila */
    
    gap: 25px;
    margin: 2em 0;
}

.course-card {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    
    /* --- AÑADIDO IMPORTANTE AQUÍ --- */
    /* 4. Le damos un tamaño base y flexibilidad a cada tarjeta */
    /* flex: flex-grow | flex-shrink | flex-basis */
    /* No crecerá (0), se encogerá si es necesario (1), y tendrá un tamaño base de 320px */
    flex: 0 1 320px;
}

.course-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 15px rgba(0,0,0,0.1);
}

.course-card-thumbnail a {
    display: block;
    line-height: 0;
}

.course-card-thumbnail img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    object-fit: cover;
}

.thumbnail-placeholder {
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    background-color: #f0f0f1;
    border-bottom: 1px solid #e0e0e0;
}

.course-card-content {
    padding: 20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.course-card-title {
    margin: 0 0 10px 0;
    font-size: 1.4em;
    line-height: 1.3;
}

.course-card-title a {
    text-decoration: none;
    color: #333;
}

.course-card-title a:hover {
    color: #04BED4; /* Color de acento Ceamib */
}

.course-card-excerpt {
    color: #555;
    margin-bottom: 20px;
    flex-grow: 1;
}

.course-card-button {
    margin-top: auto; /* Empuja el botón al final */
    align-self: flex-start; /* Se alinea a la izquierda */
    background-color: #04BED4; /* Color de acento Ceamib */
    color: #fff !important; /* Importante para sobreescribir estilos del tema */
    padding: 10px 20px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.course-card-button:hover {
    background-color: #03a0b3;
}

/* --- Estilos para Precios en Tarjetas --- */
.ceamib-card-price-container {
    margin-bottom: 15px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 5px;
}

.ceamib-card-price-container .price-label {
    font-size: 0.9em;
    color: #666;
    text-transform: uppercase;
    font-weight: 600;
    margin-right: 5px;
}

/* Precio tachado (cuando hay oferta) */
.ceamib-card-price-container .price-original {
    text-decoration: line-through;
    color: #999;
    font-size: 0.95em;
    margin-right: 5px;
}

/* Precio final con oferta (destacado) */
.ceamib-card-price-container .price-final {
    color: #dc3545; /* Rojo de oferta */
    font-weight: bold;
    font-size: 1.2em;
}

/* Precio regular sin oferta */
.ceamib-card-price-container .price-regular {
    color: #333;
    font-weight: bold;
    font-size: 1.1em;
}