.calendario-cursos {
    margin-block: var(--espacio-sm);
    min-width: var(--lh-md);
}
.calendario-cursos .calendario-titulo h3 {
    font-weight: var(--fw-medium);
    margin-bottom: var(--espacio-sm);
}
.calendario-cursos table {
    width: 100%;
    margin: 0;
}
.calendario-cursos th {
    padding: var(--espacio-xxs) var(--espacio-xxxs);
    text-align: center;
    background: var(--c-softgray);
    color: var(--c-azul);
    border: 0 none;
    border-bottom: 3px solid var(--c-acento1);
    font-weight: var(--fw-medium);
}
.calendario-cursos td {
    text-align: center;
    border: 0 none;
    padding-block: var(--espacio-xxs);
}
.calendario-cursos thead td {
    padding-block: var(--espacio-xxxs);
}
.calendario-cursos td:first-child, .calendario-cursos th:first-child {
    text-align: left;
    padding-left: 0;
}
.calendario-cursos td:last-child, .calendario-cursos th:last-child {
    padding-right: 0;
}
.calendario-cursos .btn.btn22 {
    padding: 3px 6px;
    font-weight: var(--fw-regular);
    letter-spacing: normal;
}
.calendario-cursos .comentario {
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
    font-weight: var(--fw-light);
    padding: var(--espacio-xxs);
}
.calendario-cursos .modalidad {
    display: inline-block;
    width: 1em;
    height: 1em;
}
.calendario-cursos table td a:not(.btn) {
    color: var(--c-azul);
    text-decoration: none;
}
.calendario-cursos .col_curso > a > span.cuso-info {
    font-weight: var(--fw-bold);
    display: inline-block;
    padding-right: var(--espacio-xxxs);
    color: var(--c-azul);
}
.calendario-cursos .col_curso {
    --ancho-curso: 29ch;
    min-width: var(--ancho-curso) !important;
    max-width: var(--ancho-curso) !important;
    width: var(--ancho-curso) !important;
}
.calendario-cursos .col_cta {
    --ancho-cta: 9ch;
    min-width: var(--ancho-cta) !important;
    max-width: var(--ancho-cta) !important;
    width: var(--ancho-cta) !important;
}
.calendario-cursos .col_fecha {
    --ancho-fecha: 12ch;
    min-width: var(--ancho-fecha);
    max-width: var(--ancho-fecha);
    width: var(--ancho-fecha);
}
.calendario-cursos .col_presencial, .calendario-cursos .col_remoto, .calendario-cursos .col_elearning, .calendario-cursos .col_vacia {
    text-align: center;
    --ancho-modalidad: var(--ancho-columna);
    min-width: var(--ancho-modalidad) !important;
    max-width: var(--ancho-modalidad) !important;
    width: var(--ancho-modalidad) !important;
}
.tnf_calendar_tag.tnf_tag_bold {
    display: inline-block;
    padding: 1px var(--espacio-xxxs);
    background-color: var(--c-amarillo);
    color: var(--c-blanco);
    font-weight: var(--fw-bold);
}
.tnf_calendar_tag.tnf_tag_mini {
    display: inline-block;
    padding: 0px var(--espacio-xxxs);
    background-color: var(--c-amarillo);
    color: var(--c-blanco);
    font-weight: var(--fw-bold);
    font-size: 85%;
}
.tnf_calendar_tag.tnf_tag_strike {
    display: inline-block;
    opacity: 0.5;
    text-decoration: line-through;
    font-size: 95%;
    line-height: 95%;
}

.accordion-style2 .calendario-cursos a.btn {
    color: var(--c-blanco);
}

@media only screen and (min-width:977px) and (max-width: 1200px) {
    .calendario-cursos {
        --fs-md: 16px;
        --lh-md: 22px;
        font-size: var(--fs-md);
        line-height: var(--lh-md);
    }
}
@media only screen and (min-width:761px) and (max-width: 976px) {
    .calendario-cursos {
        --fs-md: 15px;
        --lh-md: 21px;
        font-size: var(--fs-md);
        line-height: var(--lh-md);
    }
}
@media only screen and (max-width: 1199px)  {
    .calendario-cursos {
        --ancho-columna: clamp(35ch, 50%, 50ch);
        --ancho-fecha: var(--ancho-columna);
        --ancho-modalidad: var(--ancho-columna);
    }
    .calendario-cursos table, .calendario-cursos thead, .calendario-cursos tbody, .calendario-cursos th, .calendario-cursos td, .calendario-cursos tr {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
    }
    /* Hide headers */
    .calendario-cursos thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .calendario-cursos tr {
        margin-bottom: var(--espacio-md);
    }
    .calendario-cursos td {
        position: relative;
        padding-left: 22ch;
        text-align: left;
    }
    .calendario-cursos thead td {
        white-space: nowrap;
    }
    .calendario-cursos tbody td {
        padding: var(--espacio-xxxs) var(--espacio-md) var(--espacio-xxxs) 6px;
        min-height: var(--lh-md);
        display: flex;
        flex-wrap: nowrap;
        width: var(--ancho-columna);
        white-space: nowrap;
        min-width: var(--ancho-columna);
        align-items: baseline;
        gap: var(--espacio-xxxs);
    }
    .calendario-cursos td.col_vacia {
        display: none;
        height: 0;
    }
    .calendario-cursos .col_curso > a > span.cuso-info {
        color: var(--c-amarillo);
    }
    .calendario-cursos td.col_curso, .calendario-cursos td.col_cta {
        padding-left: var(--espacio-xxs);
        --ancho-curso: 100%;
        --ancho-cta: 100%;
        text-align: left;
    }
    .calendario-cursos .col_fecha {
        --ancho-fecha: var(--ancho-columna);
    }
    .calendario-cursos td.col_curso {
        background: var(--c-azul);
        color: var(--c-blanco);
        padding-block: var(--espacio-xxs);
    }
    .calendario-cursos td.col_curso a:not(.btn) {
        color: var(--c-blanco);
        white-space: normal;
    }
    .calendario-cursos td.col_cta a.btn {
        width: 100%;
        padding-block: 4px;
    }
    .calendario-cursos td:before {
        position: relative;
        /*top: var(--espacio-xxxs);*/
        /*left: 6px;*/
        width: auto;
        padding-right: 10px;
        white-space: nowrap;
        content: attr(data-col);
        text-align: left;
        min-width: 12ch;
        display: flex;
        /*flex-wrap: wrap;*/
    }
    .calendario-cursos td.col_curso:before, .calendario-cursos td.col_cta:before {
        content: none;
    }
}
@media only screen and (max-width: 480px) {
    .calendario-cursos td {
        padding-left: 15ch;
    }
    .calendario-cursos td:before {
        /*width: 12ch;*/
    }
}
.calendario-cursos .tooltipe .tooltiptexte {
    left: -6.5ch;
    width: 15ch;
    margin-left: 0;
    bottom: 100%;
    padding: 3px 0;
    font-size: var(--fs-sm);
}
.calendario-cursos .btn.btn22 {
    font-size: calc(var(--fs-md) * 0.9);
    line-height: calc(var(--lh-md) * 0.8);
}
.calendario-cursos.small h3 {
    font-size: var(--fs-lg);
    line-height: var(--lh-lg);
    background-size: var(--lh-lg);
}
.calendario-cursos.small .col_cta {
    --ancho-cta: 11ch;
}
.calendario-cursos.small .btn.btn22 {
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
}
.calendario-cursos.small {
    font-size: var(--fs-sm);
    line-height: var(--lh-sm);
}
.calendario-cursos.small .comentario, .calendario-cursos.small .tooltipe .tooltiptexte {
    font-size: var(--fs-xs);
    line-height: var(--lh-xs);
}

@media only screen and (max-width: 1199px) and (min-resolution: 2dppx) {
    .calendario-cursos td.col_cta {
         padding-left: 0;
    }
    .calendario-cursos td.col_cta a.btn {
        width: var(--ancho-columna);
    }
}

.listado-calendario-cursos ul {
    padding: 0;
}
.listado-calendario-cursos li {
    list-style-type: none;
    margin-bottom: var(--espacio-xxs);
}
section.brand22 .listado-calendario-cursos a:not(.btn) {
    color: inherit;
    text-decoration: none;
}
section.brand22 .listado-calendario-cursos a:not(.btn):hover {
    color: var(--c-amarillo);
}