/* Estilos Generales */
body {
    font-family: 'Arial', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f9f9f9;
    color: #333;
}

/* Contenedor Principal */
.anuncios {
    padding: 40px 20px;
    text-align: center;
}

.anuncios h1 {
    font-size: 2.5rem;
    color: #6D1624;
    margin-bottom: 10px;
}

.anuncios p {
    font-size: 1.2rem;
    color: #555;
    margin-bottom: 40px;
}

/* Sección de Anuncios */
.seccion-anuncios {
    margin-bottom: 40px;
}

.seccion-anuncios h2 {
    font-size: 2rem;
    color: #333;
    margin-bottom: 20px;
    text-align: left;
}

.anuncios-contenedor {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.anuncio {
    background-color: #ffffff;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 20px;
    max-width: 300px;
    text-align: left;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.anuncio img {
    width: 100%;
    border-radius: 10px 10px 0 0;
    object-fit: cover;
    max-height: 140px;
    margin-bottom: 10px;
}

.anuncio h3 {
    font-size: 1.5rem;
    color: #6D1624;
    margin-bottom: 10px;
}

.anuncio p {
    font-size: 1rem;
    color: #555;
    line-height: 1.5;
}

.anuncio:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.2);
}

/* Calendario */
.calendario {
    margin: 20px auto;
    padding: 10px;
    max-width: 90%; /* Ajuste automático para pantallas pequeñas */
    border: 1px solid #ccc;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    background-color: #f9f9f9;
}

#titulo-mes {
    text-align: center;
    margin-bottom: 15px;
    font-size: 1.2em;
    color: #333;
}

.calendario .navegacion {
    display: flex;
    justify-content: space-between;
    margin: 15px 0;
}

.calendario .navegacion button {
    background-color: #6D1624;
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 1em;
    border-radius: 5px;
    transition: all 0.3s;
}

.calendario .navegacion button:hover {
    background-color: #8B2333;
}

#calendario-simple {
    display: grid;
    grid-template-columns: repeat(7, 1fr); /* Siete columnas */
    gap: 5px;
    margin-top: 10px;
}

#calendario-simple div {
    text-align: center;
    padding: 10px;
    border-radius: 5px;
    font-size: 0.9em;
}

#calendario-simple .header {
    font-weight: bold;
    color: #6D1624;
    background-color: #f0f0f0;
}

#calendario-simple .feriado {
    background-color: #6D1624;
    color: white;
    font-weight: bold;
}

/* Responsividad */
@media (max-width: 768px) {
    .anuncios-contenedor {
        flex-direction: column;
        align-items: center;
    }
    .seccion-anuncios h2{
        text-align: center;
    }

    /* Calendario */
    #titulo-mes {
        font-size: 1.1em;
    }

    .calendario .navegacion button {
        padding: 8px 12px;
        font-size: 0.9em;
    }

    #calendario-simple {
        grid-template-columns: repeat(7, 1fr); /* Mantén las 7 columnas */
    }

    #calendario-simple div {
        font-size: 0.8em; /* Texto más pequeño */
        padding: 8px;
    }
}

@media (max-width: 480px) {
    #calendario-simple {
        grid-template-columns: repeat(7, 1fr); /* Mantén la estructura */
        gap: 3px;
    }

    .calendario .navegacion {
        flex-direction: column;
        gap: 10px;
    }

    .calendario .navegacion button {
        width: 100%; /* Botones al 100% en pantallas pequeñas */
    }

    #calendario-simple div {
        font-size: 0.7em; /* Texto aún más compacto */
        padding: 6px;
    }
}