div.clear  { clear: both; }
div.clear_1  { clear: both; padding-top: 15px;}
div.clear_2  { clear: both; padding-top: 30px;}
div.clear_3  { clear: both; padding-top: 40px;}
div.clear_4  { clear: both; padding-top: 10px;}
div.clear_5  { clear: both; padding-top: 50px;}
div.clear_barra_top  { clear: both; padding-top: 90px;}
div.clear_esp_1  { clear: both; padding-top: 70px;}
div.clear_resp  { clear: both; padding-top: 0px;}
div.clear_resp_2  { clear: both; padding-top: 15px;}
.clear_movil  { clear: none;}




body {
    background-color: #f8f9fa; /* Fondo general claro */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
main.container {
     flex: 1; /* Empuja el footer hacia abajo */
}
.bg-primary-dark {
    background-color: #283593 !important; /* Azul oscuro primario */
}
.bg-secondary-dark {
     background-color: #3949ab !important; /* Azul secundario */
}
.section-title { /* Si necesitas títulos de sección como en prueba.html */
    color: #283593;
    border-bottom: 2px solid #ffb300; /* Amarillo/Naranja para subrayado */
    padding-bottom: 0.3rem;
    margin-bottom: 1rem;
}
 /* Ajustes para el header superior si es necesario */
.top-header a {
    color: inherit; /* Hereda color para enlaces de contacto */
    text-decoration: none;
}
.top-header a:hover {
    text-decoration: underline;
}
.footer-main {
    background-color: #343a40; /* Color oscuro para el footer */
    color: #f8f9fa; /* Texto claro en el footer */
    padding: 2rem 0;
    font-size: 0.9rem;
}
.footer-main a {
    color: #adb5bd; /* Color más suave para enlaces en footer */
}
.footer-main a:hover {
    color: #fff; /* Blanco al pasar el mouse */
}
.footer-main .social-icons a {
    font-size: 1.5rem; /* Tamaño iconos sociales */
    margin: 0 0.5rem;
}
.footer-bottom {
     background-color: #212529; /* Más oscuro para la línea de copyright */
     color: #6c757d; /* Texto grisáceo */
     padding: 0.5rem 0;
     font-size: 0.8rem;
     text-align: center;
}
.footer-bottom a {
    color: #adb5bd;
}




calendario.ul {list-style-type: none;}

/* Month header */
.month {
    padding: 15px 10px;
    width: 100%;
    /*background: #ffcb01;*/
}

/* Month list */
.month ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.month ul li {
    font-size: 20px;
    text-transform: uppercase;
    letter-spacing: 3px;
}

/* Previous button inside month header */
.month .prev {
    float: left;
    padding-top: 10px;
}

/* Next button */
.month .next {
    float: right;
    padding-top: 10px;
    color: #cc0000;
}

.month .prev a, .month .next a {
    color: #666666;
}

/* Next button */
.month .prev a:hover, .month .next a:hover {
    text-decoration: none;
}

/* Weekdays (Mon-Sun) */
.weekdays {
    padding: 10px 0;
    margin: 0;
    background-color:#f8f8f8;
}

.weekdays li {
    display: inline-block;
    width: 13%;
}

/* Days (1-31) */
.days {
    padding: 10px 0;
    margin: 0;
    /*border: 1px solid #f8f8f8;*/
}

.days li {
    /*list-style-type: none;*/
    display: inline-block;
    width: 13.8%;
    text-align: center;
    margin-bottom: 5px;
    color: #777;
    border: 1px solid #f0f0f0;
}

/* Para los tipos de días */
.tipo_curso {
    background: #ffcb01;
}
.tipo_curso li {
    background: #ffcb01;
    color: #ffffff;
    font-weight: bold;
}

.tipo_sesion_reglamentaria {
    background: #0088ff;
}

.tipo_sesion_reglamentaria li {
    background: #0088ff;
    color: #ffffff;
    font-weight: bold;
}

.tipo_combinada {
    background: #ff7700;
}

.tipo_combinada li {
    background: #ff7700;
    color: #ffffff;
    font-weight: bold;
}

.tipo_combinada_2 {
    background: #aa007f;
}

.tipo_combinada_2 li {
    background: #aa007f;
    color: #ffffff;
    font-weight: bold;
}

.days li a {
    text-decoration: none;
}

/* Highlight the "current" day */
.days li .active {
    padding: 5px;
    background: #ffcb01;
    color: white !important
}
